{ "id": "159533", "key": "TIMOB-23206", "fields": { "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [ { "id": "17608", "name": "Release 6.1.0", "archived": false, "released": true, "releaseDate": "2017-05-26" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2016-08-11T20:08:00.000+0000", "created": "2016-04-13T01:15:07.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [], "versions": [], "issuelinks": [ { "id": "52338", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "162467", "key": "TIMOB-23746", "fields": { "summary": "Android: Unable to Retrieve Detailed Calendar Information via Ti.Calendar.CalendarOS: Refactor default new app-projects", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "priority": { "name": "Medium", "id": "3" }, "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } } ], "assignee": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2016-11-23T17:20:46.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "We are attempting to display the user's local calendars in an organized list (arranged by which account syncs the data). Just like in the image below, we can retrieve the individual calendars, but we cannot retrieve the individually-descriptive sources where the Calendars are coming from.\r\n\r\nFor example, we'd like to show \"iCloud\", \"Facebook\", \"Google\", \"Other\", and others as the sources of data where calendars are coming from.\r\n\r\nNone of that data is available through the Titanium API, it seems, but it is certainly available through the native SDK on both Android and iOS.", "attachment": [ { "id": "58931", "filename": "iphone6-ios9-calendars-refresh.png", "author": { "name": "Yrkh8trnoy", "key": "yrkh8trnoy", "displayName": "Kiley Williams", "active": true, "timeZone": "America/Vancouver" }, "created": "2016-04-13T01:12:43.000+0000", "size": 98810, "mimeType": "image/png" } ], "flagged": false, "summary": "iOS: Unable to Retrieve Detailed Calendar Information via Ti.Calendar.CalendarOS: Refactor default new app-projects", "creator": { "name": "Yrkh8trnoy", "key": "yrkh8trnoy", "displayName": "Kiley Williams", "active": true, "timeZone": "America/Vancouver" }, "subtasks": [], "reporter": { "name": "Yrkh8trnoy", "key": "yrkh8trnoy", "displayName": "Kiley Williams", "active": true, "timeZone": "America/Vancouver" }, "environment": null, "comment": { "comments": [ { "id": "382603", "author": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "body": "Hello,\r\n\r\nThanks for creating the ticket. Our engineering team will look into it. Please understand that the processes is time-consuming and lots of variables in play. We will let you know if and when we will be including this feature in our platform.\r\n\r\nRegards,\r\nSharif.\r\n", "updateAuthor": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "created": "2016-04-13T15:36:12.000+0000", "updated": "2016-04-13T15:36:12.000+0000" }, { "id": "382706", "author": { "name": "Yrkh8trnoy", "key": "yrkh8trnoy", "displayName": "Kiley Williams", "active": true, "timeZone": "America/Vancouver" }, "body": "Hi @sdarda, thanks for the quick action on this.\r\n\r\nOne thing to note is that this is not only an Android issue, but it is also an iOS issue. Did you simply separate the Improvement tickets? I don't want this to get logged as only an Android issue. I think the two should be linked as well if there are two separate tickets for Android and iOS.\r\n\r\nLastly, this may also be an issue for Windows, but I am not entirely sure since I have not tested on Windows yet.\r\n\r\nThanks!", "updateAuthor": { "name": "Yrkh8trnoy", "key": "yrkh8trnoy", "displayName": "Kiley Williams", "active": true, "timeZone": "America/Vancouver" }, "created": "2016-04-14T08:09:46.000+0000", "updated": "2016-04-14T08:09:46.000+0000" }, { "id": "382908", "author": { "name": "melissa7mb", "key": "melissa7mb", "displayName": "Melissa Chan", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Hi @sdara, this is definitely something valuable that's missing and would help me greatly with my project. It would be great to see this as a feature in the platform.", "updateAuthor": { "name": "melissa7mb", "key": "melissa7mb", "displayName": "Melissa Chan", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-04-17T18:50:26.000+0000", "updated": "2016-04-17T18:50:26.000+0000" }, { "id": "383031", "author": { "name": "s_cerney", "key": "s_cerney", "displayName": "Sean Cerney", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Looking forward to seeing this improvement completed. I would agree with the Reporter that gathering more detailed calendar information through Ti.Calendar in this case would be a big help, especially since it is available in the iOS and Android native SDKs.\r\n", "updateAuthor": { "name": "s_cerney", "key": "s_cerney", "displayName": "Sean Cerney", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-04-18T23:01:45.000+0000", "updated": "2016-04-18T23:01:45.000+0000" }, { "id": "392676", "author": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~Yrkh8trnoy] Hello, I've made this ticket iOS only and also created a counterpart android ticket to go along side, hope you don't mind. All the sub-properties of the source property should now be exposed. \r\n\r\nPR: https://github.com/appcelerator/titanium_mobile/pull/8197/files\r\n\r\nDemo Code:\r\n\r\n{code:javascript}\r\nfunction showCalendars(calendars) {\r\n for (var i = 0; i < calendars.length; i++) {\r\n Ti.API.info(calendars[i].name);\r\n Ti.API.info(calendars[i].sourceTitle);\r\n Ti.API.info(calendars[i].sourceIdentifier);\r\n Ti.API.info(formatSourceType(calendars[i].sourceType)+ '\\n');\r\n }\r\n}\r\n\r\n function formatSourceType(type) {\r\n switch (type) {\r\n case Ti.Calendar.SOURCE_TYPE_LOCAL:\r\n return \"Ti.Calendar.SOURCE_TYPE_LOCAL\";\r\n \r\n case Ti.Calendar.SOURCE_TYPE_EXCHANGE:\r\n return \"Ti.Calendar.SOURCE_TYPE_EXCHANGE\";\r\n \r\n case Ti.Calendar.SOURCE_TYPE_CALDAV:\r\n return \"Ti.Calendar.SOURCE_TYPE_CALDAV\";\r\n \r\n case Ti.Calendar.SOURCE_TYPE_MOBILEME:\r\n return \"Ti.Calendar.SOURCE_TYPE_MOBILEME\";\r\n \r\n case Ti.Calendar.SOURCE_TYPE_SUBSCRIBED:\r\n return \"Ti.Calendar.SOURCE_TYPE_SUBSCRIBED\"; \r\n\r\n case Ti.Calendar.SOURCE_TYPE_BIRTHDAYS:\r\n return \"Ti.Calendar.SOURCE_TYPE_BIRTHDAYS\"; \r\n }\r\n \r\n return \"Unknown attendee role: \" + type;\r\n}\r\n\r\nTi.API.info('ALL CALENDARS:'+'\\n');\r\nif (Ti.Calendar.hasCalendarPermissions()) {\r\n showCalendars(Ti.Calendar.allCalendars);\r\n} else {\r\n Ti.Calendar.requestCalendarPermissions(function(e) {\r\n if (e.success) {\r\n showCalendars(Ti.Calendar.allCalendars);\r\n } else {\r\n Ti.API.error(e.error);\r\n alert('Access to calendar is not allowed');\r\n }\r\n });\r\n}\r\n{code}", "updateAuthor": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-08-08T21:55:31.000+0000", "updated": "2016-08-10T22:57:57.000+0000" }, { "id": "394607", "author": { "name": "Yrkh8trnoy", "key": "yrkh8trnoy", "displayName": "Kiley Williams", "active": true, "timeZone": "America/Vancouver" }, "body": "Angel, thanks a bunch for knocking this out. I will give it a test run this week!", "updateAuthor": { "name": "Yrkh8trnoy", "key": "yrkh8trnoy", "displayName": "Kiley Williams", "active": true, "timeZone": "America/Vancouver" }, "created": "2016-08-29T06:46:03.000+0000", "updated": "2016-08-29T06:46:03.000+0000" }, { "id": "394683", "author": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~Yrkh8trnoy] No problem, code strong! ", "updateAuthor": { "name": "apetkov", "key": "apetkov", "displayName": "Angel Petkov", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-08-29T19:47:26.000+0000", "updated": "2016-08-29T19:47:26.000+0000" }, { "id": "401763", "author": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I verified the fix with the following environment:\r\nNPM Version: 2.15.9\r\nNode Version: 4.5.0\r\nMac OS: 10.12.1\r\nAppc CLI: 6.0.0\r\nAppc CLI NPM: 4.2.8\r\nTitanium SDK version: 6.1.0.v20161122053743\r\nAppcelerator Studio, build: 4.8.0.201611121409\r\nXcode 8.1 GM\r\n\r\nI installed the app on a device first using SDK 6.0.0, and saw the console log this message for the local calendar case:\r\n{{[INFO] : Unknown attendee role: [object C4A00D65-D59D-4872-A586-B2C73ADEB2D4]}}\r\n\r\nI reran the app with SDK 6.1.0, and the message changed to:\r\n{{[INFO] : Ti.Calendar.SOURCE_TYPE_LOCAL}}\r\n\r\nBased on this behavior, it appears that detailed Calendar information is being retrieved. ", "updateAuthor": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-11-23T17:20:08.000+0000", "updated": "2016-11-23T17:20:08.000+0000" } ], "maxResults": 9, "total": 9, "startAt": 0 } } }