Quantcast
Channel: Appcelerator Developer Center Q&A Unanswered Questions 20
Viewing all articles
Browse latest Browse all 8068

Calendar createEvent not working: no errors, but no calendar entry either

$
0
0

3.4.1.GA on Windows targeting Android 4.4.4

Using the following code which gives no errors but doesn't produce a calendar entry either.

I have read and write permissions properly set in the manifest.

Any ideas?

var calendars = [];
var pickerData = [];
 
var settingSelectedCalendarName = Ti.App.Properties.getString('calendarName');
var settingSelectedCalendarId = Ti.App.Properties.getString('calendarId');
 
var selectedCalendarName;
var selectedCalendarId;
 
Ti.API.info(settingSelectedCalendarName + " / " + settingSelectedCalendarId);
 
var win = Ti.UI.createWindow({
  backgroundColor: 'white',
  exitOnClose: true,
  fullscreen: false,
  layout: 'vertical',
  title: 'Calendar Demo'
});
 
var selectableCalendars = Ti.Calendar.selectableCalendars;
 
for (var i = 0, ilen = selectableCalendars.length; i < ilen; i++) {
  calendars.push({ name: selectableCalendars[i].name, id: selectableCalendars[i].id });
  pickerData.push( Ti.UI.createPickerRow({ title: calendars[i].name }) );
  if(i === 0){
    selectedCalendarName = selectableCalendars[i].name;
    selectedCalendarId = selectableCalendars[i].id;
  }
}
var selectableCalendars = null;
 
picker = Ti.UI.createPicker({
    top:20,
    selectionIndicator: true,
    useSpinner: true
});
 
picker.add(pickerData);
win.add(picker);
 
if(settingSelectedCalendarId) {
    for (var i = 0 ; i < calendars.length ; i++) {
        if (calendars[i].id == settingSelectedCalendarId) {
            Ti.API.info('element ' + i);
            Ti.API.info(calendars[i].id);
            picker.setSelectedRow(0,i);
            break;
        }
    }
}
 
picker.addEventListener('change', function(e){
  for (var i = 0, ilen = calendars.length; i < ilen; i++) {
    if(calendars[i].name === e.row.title){
      selectedCalendarName = calendars[i].name;
      selectedCalendarId = calendars[i].id;
    }
  }
  Ti.App.Properties.setString('calendarId', selectedCalendarId);
  Ti.App.Properties.setString('calendarName', selectedCalendarName);
  Ti.API.info(selectedCalendarName + " / " + selectedCalendarId);
});
 
function AddCalendarEntry(calendarId) {
 
    Ti.API.info(calendarId);
    var localCalendar = Ti.Calendar.getCalendarById(calendarId);
 
    // Create the event
    var eventBegins = new Date(2014, 12, 15, 12, 0, 0);
    var eventEnds = new Date(2014, 12, 15, 14, 0, 0);
    var details = {
        title: 'Another Titanium Test',
        description: "I'm going to do some stuff at this time.",
        begin: eventBegins,
        end: eventEnds
    };
 
    var event = localCalendar.createEvent(details);
 
    // Now add a reminder via e-mail for 10 minutes before the event.
 
    var reminderDetails = {
        minutes: 10,
        method: Ti.Calendar.METHOD_EMAIL
    };
 
    event.createReminder(reminderDetails);
 
}
 
var button = Ti.UI.createButton({
    title: 'Make Entry',
    bottom: 20
});
 
button.addEventListener('click',function(e){
   AddCalendarEntry(selectedCalendarId);
});
 
win.add(button);
win.open();

Viewing all articles
Browse latest Browse all 8068

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>