} if (is_array($field)) { $line .= '"' . str_replace(array("\n", "\r", '"'), array('\\n', '', '""'), join(',', $field)) . '";'; } else { $line .= '"' . str_replace(array("\n", "\r", '"'), array('\\n', '', '""'), $field) . '";'; } } if ($first === true) { echo trim($description, ';') . "\n"; $first = false; } echo trim($line, ';') . "\n"; } } else { // create ical array// $iCal = new File_iCal(); $cal = $iCal->getSkeletonCalendar(); foreach ($events as $event) { $ea = array(); $ea['Summary'] = $event['name']; $ea['dateStart'] = $event['start']; $ea['dateEnd'] = $event['end']; $ea['Description'] = preg_replace('/\\n/', "\\n", strip_tags(TikiLib::lib('parser')->parse_data($event['description'], array('is_html' => $prefs['calendar_description_is_html'] === 'y')))); if ($event['participants']) { $ea['Attendees'] = $event['participants']; } $ea['LastModified'] = $event['lastModif']; // re: Second character of duration value must be a 'P' ?? // jb for tiki 11 - feb 2013 // spec is at: https://tools.ietf.org/html/rfc5545#section-3.3.6, so i tried: // $durationSeconds = $event['end'] - $event['start'];
$smarty->assign('individual', $userlib->object_has_one_permission($_REQUEST["calendarId"], 'calendar')); } $sort_mode = "name_ASC"; $find = ""; $calendars = $calendarlib->list_calendars(0, -1, $sort_mode, $find); foreach (array_keys($calendars["data"]) as $i) { $calendars["data"][$i]["individual"] = $userlib->object_has_one_permission($i, 'calendar'); } $smarty->assign('calendars', $calendars["data"]); $smarty->assign('uses_jscalendar', 'y'); // export calendar // if (isset($_REQUEST["calendarId"]) && $_REQUEST["calendarId"] && $_REQUEST["export"] == 'y') { // get calendar events $events = $calendarlib->list_items(array($_REQUEST["calendarId"]), $user, $_REQUEST["tstart"], $_REQUEST["tstop"], -1, $maxRecords, $sort_mode = 'start_asc', $find = ''); // create ical array// $iCal = new File_iCal(); $cal = $iCal->getSkeletonCalendar(); foreach ($events as $day => $day_data) { for ($i = 0; $i < count($day_data); $i++) { //var_dump($day_data[$i]["result"]); $ea = array(); $ea["Summary"] = $day_data[$i]["result"]["name"]; $ea["dateStart"] = $day_data[$i]["result"]["start"]; $ea["dateEnd"] = $day_data[$i]["result"]["end"]; $ea["Description"] = preg_replace("/\n/", "\\n", $day_data[$i]["result"]["description"]); if ($day_data[$i]["result"]["participants"]) { $ea["Attendees"] = $day_data[$i]["result"]["participants"]; } $ea["LastModified"] = $day_data[$i]["result"]["lastModif"]; // Second character of duration value must be a 'P' ?? //$ea["Duration"]=($day_data[$i]["result"]["end"] - $day_data[$i]["result"]["start"]);