<?php

if (!isset($gCms)) {
    exit;
}
$url = $this->GetPreference('ical_holidays');
if (!$url) {
    return;
}
$minutes = 7 * 24 * 60;
// 7 DAYS
$cachedfile = new cge_cached_remote_file($url, $minutes);
if (!$cachedfile->size()) {
    return;
}
$ical = new \CGCalendar\IcalParser();
$ical->parseFile($cachedfile->get_dest());
$events = $ical->getSortedEvents();
if (count($events)) {
    $out = array();
    foreach ($events as $event) {
        $obj = array();
        $obj['start'] = $event['DTSTART']->format('Y-m-d');
        $obj['end'] = $event['DTEND']->format('Y-m-d');
        $obj['allDay'] = true;
        $obj['title'] = $event['SUMMARY'];
        $obj['type'] = 'holiday';
        $out[] = $obj;
    }
    \cge_utils::send_ajax_and_exit($out);
}