'url' => "$_SERVER[SCRIPT_NAME]?addAdminEvent=1", 'icon' => 'fa-plus-circle', 'show' => $is_admin, 'button-class' => 'btn-success', 'level' => 'primary-label'), array('title' => $langiCalExport, 'url' => "icalendar.php", 'icon' => 'fa-calendar', 'level' => 'primary'), )); if (isset($_GET['id'])) { require_once 'modules/agenda/course_calendar.inc.php'; $id = intval($_GET['id']); if (isset($_GET['admin'])) { $personal_event = array('0' => Calendar_Events::get_admin_event($id)); $tool_content .= event_list($personal_event, 'ASC', 'admin'); } else { $personal_event = array('0' => Calendar_Events::get_event($id)); $tool_content .= event_list($personal_event, 'ASC', 'personal'); } } else { /* display events */ $day = (isset($_GET['day'])) ? intval($_GET['day']) : null; $month = (isset($_GET['month'])) ? intval($_GET['month']) : null; $year = (isset($_GET['year'])) ? intval($_GET['year']) : null; $tool_content .= '<div id="calendar_wrapper" class="row"> <div class="col-md-12"> <div class="row calendar-header"> <div class="col-md-12">
/** * Deletes an existing event and logs the action * @param int $eventid id in table personal_calendar * @param string $eventtype type of the event: personal|admin|course|deadline * @param boolean $recursivelly specifies if the update should be applied to all events of the group of recursive events or to the specific one */ public static function delete_event($eventid, $eventtype, $recursivelly = false) { global $uid, $is_admin, $langNotAllowed; if ($eventtype != 'personal' && $eventtype != 'admin') { return array('success' => false, 'message' => $langNotAllowed); } if ($eventtype == 'personal' && !($event = Calendar_Events::get_event($eventid))) { return array('success' => false, 'message' => $langNotAllowed); } if ($eventtype == 'admin' && (!is_admin || !($event = Calendar_Events::get_admin_event($eventid)))) { return array('success' => false, 'message' => $langNotAllowed); } $t = $eventtype == 'personal' ? 'personal_calendar' : 'admin_calendar'; $content = ellipsize_html(canonicalize_whitespace(strip_tags($event->content)), 50, '+'); $where_clause = $recursivelly ? "WHERE source_event_id = ?d" : "WHERE id = ?d"; $resp = Database::get()->query("DELETE FROM {$t} " . $where_clause, $eventid); $m = $eventtype == 'personal' ? MODULE_ID_PERSONALCALENDAR : MODULE_ID_ADMINCALENDAR; Log::record(0, $m, LOG_DELETE, array('user_id' => $uid, 'id' => $eventid, 'title' => $event->title, 'content' => $content)); return array('success' => true, 'message' => '', 'event' => $eventid); }
/* delete */ if (isset($_GET['delete']) && (isset($_GET['et']) && ($_GET['et'] == 'personal' || $_GET['et'] == 'admin'))) { $thisEventId = intval($_GET['delete']); $resp = Calendar_Events::delete_event($thisEventId, $_GET['et']); if ($resp['success']) { $message = "<div class='alert alert-success'>{$langEventDel}</div>"; } else { $message = "<div class='alert alert-danger'>{$resp['message']}</div>"; } } /* edit */ if (isset($_GET['modify'])) { $modify = intval($_GET['modify']); $displayForm = false; if (isset($_GET['admin']) && $_GET['admin'] == 1) { $event = Calendar_Events::get_admin_event($modify); if ($event) { $eventToModify = $event->id; $contentToModify = $event->content; $titleToModify = q($event->title); $startDate_obj = DateTime::createFromFormat('Y-m-d H:i:s', $event->start); $startdate = $startDate_obj->format('d-m-Y H:i'); $datetimeToModify = q($startdate); $durationToModify = q($event->duration); $visibility_level = $event->visibility_level; $displayForm = true; } } else { $event = Calendar_Events::get_event($modify); if ($event) { $eventToModify = $event->id;