/** * show calendar details * * @access protected * @return */ protected function details() { global $tpl; if (!$_GET['category_id']) { ilUtil::sendFailure($this->lng->txt('select_one'), true); $this->ctrl->returnToParent($this); } $this->readPermissions(); $this->checkVisible(); $category = new ilCalendarCategory((int) $_GET['category_id']); if (!in_array($category->getType(), array(ilCalendarCategory::TYPE_CH, ilCalendarCategory::TYPE_BOOK))) { include_once "./Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php"; $toolbar = new ilToolbarGui(); $toolbar->addButton($this->lng->txt("cal_add_appointment"), $this->ctrl->getLinkTargetByClass("ilcalendarappointmentgui", "add")); if (!in_array($category->getType(), array(ilCalendarCategory::TYPE_CH, ilCalendarCategory::TYPE_BOOK))) { $toolbar->addButton($this->lng->txt("cal_import_appointments"), $this->ctrl->getLinkTarget($this, "importAppointments")); } $toolbar = $toolbar->getHTML(); } // Non editable category include_once "./Services/InfoScreen/classes/class.ilInfoScreenGUI.php"; $info = new ilInfoScreenGUI($this); $info->setFormAction($this->ctrl->getFormAction($this)); $info->addSection($this->lng->txt('cal_cal_details')); // Calendar Name $info->addProperty($this->lng->txt('cal_calendar_name'), $category->getTitle()); switch ($category->getType()) { case ilCalendarCategory::TYPE_USR: $info->addProperty($this->lng->txt('cal_cal_type'), $this->lng->txt('cal_type_personal')); break; case ilCalendarCategory::TYPE_GLOBAL: $info->addProperty($this->lng->txt('cal_cal_type'), $this->lng->txt('cal_type_system')); break; case ilCalendarCategory::TYPE_OBJ: $info->addProperty($this->lng->txt('cal_cal_type'), $this->lng->txt('cal_type_' . $category->getObjType())); $info->addSection($this->lng->txt('additional_info')); $info->addProperty($this->lng->txt('perma_link'), $this->addReferenceLinks($category->getObjId())); break; case ilCalendarCategory::TYPE_CH: case ilCalendarCategory::TYPE_BOOK: // nothing to do break; } // Ical link $this->ctrl->setParameterByClass('ilcalendarsubscriptiongui', 'cal_id', (int) $_GET['category_id']); $info->addProperty($this->lng->txt('cal_ical_infoscreen'), '<img src="' . ilUtil::getImagePath('ical.png', 'Services/Calendar') . '" />', $this->ctrl->getLinkTargetByClass(array('ilcalendarpresentationgui', 'ilcalendarsubscriptiongui'))); $tpl->setContent($toolbar . $info->getHTML() . $this->showAssignedAppointments()); }