[TIMOB-3035] iOS: EventKit UI Framework Support
GitHub Issue | n/a |
---|---|
Type | New Feature |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2013-03-12T02:12:40.000+0000 |
Affected Version/s | n/a |
Fix Version/s | Release 3.1.0, 2013 Sprint 05 API, 2013 Sprint 05, Backlog |
Components | iOS |
Labels | api, calendar, feature, ios, qe-closed-3.1.1, release-note, request |
Reporter | Pedro Enrique |
Assignee | Sabil Rahim |
Created | 2011-04-15T03:35:12.000+0000 |
Updated | 2013-10-31T02:47:22.000+0000 |
Description
It would be really useful to be able to use the native calendar on a Titanium app. Also, to use the calendar's events, etc.
This is a feature request for a native calendar module.
LH ticket:
http://developer.appcelerator.com/helpdesk/view/70241">http://developer.appcelerator.com/helpdesk/view/70241
+1 vote
Perhaps incorporating a pre-existing open-source module would be a primer for this. Something like: https://github.com/tzmartin/TiEventKit would do for start. After that, I think it would be nice to merge Calendar & Events API's as a unique namespace inside Titanium, something like Ti.Calendar in which we could find Calendar / Events / Reminders manipulation features that works both for iPhone and Android (moving Ti.Android.Calendar to this new namespace). I think we could leave Calendar UI stuff for module developers like SaqCal.
Hello, I really think that a Calendar module in Titanium Appcelerator is very interesting, but if someone needs to use EventKit (iOS Calendar framework) today, here is a module that works with new iOS 6 APIs: https://github.com/Nyvra/TiEventKit. Thanks,
Just a quick note for those interested. iOS does not provide a calendar UI control, like seen in the Calendar app, therefore we do not provide one in Titanium. The good news is that there are a couple available in the Appcelerator marketplace created by independent developers, as well as in github. About the previous comment, made by Rafael, iOS does in fact provide a framework called EventKit. The EventKit framework is used to create calendar events, and although it is not part of the platform, it can easily be embedded into a module like seen in that github repository.
iOS have the EventKit UI framework, that provides some UI components to create, edit and see an Event details. Event Kit UI framework: http://developer.apple.com/library/ios/#documentation/EventKitUI/Reference/EventKitUIFrameworkRef/_index.html.
Pull request :https://github.com/appcelerator/titanium_mobile/pull/3951
Test case 1 [app.js](http://db.tt/vVXEq9hS) Test case 2 [app.js](http://db.tt/1ZtYfXWV)
I have tested the above two apps, Test case 2 app.js is running fine where as for Test case 2 app.js i have logged the bug TIMOB-13591 Environment used: Device: iPhone 4s, iPhone 5 iOS version : 5.1, 6 SDK: 3.1.0.v20130415184552 CLI version : 3.1.0-cr OS : MAC OSX 10.7.5 Titanium Studio, build: 3.1.0.201304151600 XCode : 4.5.1
Tested and verified fix with: Mac osx 10.8.3 Mountain Lion Appcelerator Studio, build: 3.1.1.201306012403 Titanium Studio, build: 3.1.1.201305312303 SDK, build: 3.1.1.v20130531163723 XCode 4.6.2 Device: iPhone 5 iOS 6.0
This method doesn't seem to exist on the calendar object getEventsBetweenDates( Date date1, Date date2 ) : Titanium.Calendar.Event[] Additionally, when creating new events, how can you check for duplicates? i.e. there should be a way to check if an event is a duplicate on a calendar before calling the .save() method. If not, theoretical, you can keep adding the same event over and over to the same calendar.