generateICalWithExceptions: function (eventIn, childrenIn) { var future, event, children = []; event = extend({}, eventIn); if (!childrenIn) { childrenIn = []; } childrenIn.forEach(function (e) { var event = extend({}, e); removeHacks(event); children.push(event); }); removeHacks(event, children); future = Time.normalizeToEventTimezone([event].concat(children)); future.then(function tzManagerCB() { checkResult(future); var result = "BEGIN:VCALENDAR\r\nVERSION:2.0\r\nPRODID:WEBOS.0.3.7\r\nMETHOD:PUBLISH\r\n"; result += generateICalIntern(event); children.forEach(function (e) { result += "\r\n" + generateICalIntern(e); }); result += "\r\nEND:VCALENDAR"; future.result = { returnValue: true, result: result}; }); return future; },
generateICal: function (eventIn) { var future, event; event = extend({}, eventIn); removeHacks(event); future = Time.normalizeToEventTimezone([event]); future.then(this, function () { checkResult(future); var result = generateICalIntern(event); result = "BEGIN:VCALENDAR\r\nVERSION:2.0\r\nPRODID:WEBOS.0.3.7\r\nMETHOD:PUBLISH\r\n" + result + "\r\nEND:VCALENDAR"; future.result = { returnValue: true, result: result}; }); return future; },