/** * Category overview * * @return null */ function showCategories() { global $objDatabase, $_ARRAYLANG, $_CORELANG; if (isset($_GET['tpl'])) { switch ($_GET['tpl']) { case 'modify_category': $this->modifyCategory(intval($_GET['id'])); break; } return; } if (isset($_POST['submitModifyCategory'])) { $objCategory = new \Cx\Modules\Calendar\Controller\CalendarCategory(intval($_POST['id'])); if ($objCategory->save($_POST)) { $this->okMessage = intval($_POST['id']) == 0 ? $_ARRAYLANG['TXT_CALENDAR_CATEGORY_SUCCESSFULLY_ADDED'] : $_ARRAYLANG['TXT_CALENDAR_CATEGORY_SUCCESSFULLY_EDITED']; } else { $this->errMessage = intval($_POST['id']) == 0 ? $_ARRAYLANG['TXT_CALENDAR_CATEGORY_CORRUPT_ADDED'] : $_ARRAYLANG['TXT_CALENDAR_CATEGORY_CORRUPT_EDITED']; } } if (isset($_GET['delete'])) { $objCategory = new \Cx\Modules\Calendar\Controller\CalendarCategory(intval($_GET['delete'])); if ($objCategory->delete()) { $this->okMessage = $_ARRAYLANG['TXT_CALENDAR_CATEGORY_SUCCESSFULLY_DELETED']; } else { $this->errMessage = $_ARRAYLANG['TXT_CALENDAR_CATEGORY_CORRUPT_DELETED']; } } if (isset($_GET['multi'])) { $status = true; $messageVar = 'EDITED'; foreach ($_POST['selectedCategoryId'] as $key => $catId) { $objCategory = new \Cx\Modules\Calendar\Controller\CalendarCategory(intval($catId)); switch ($_GET['multi']) { case 'delete': $status = $objCategory->delete() ? true : false; $messageVar = 'DELETED'; break; case 'activate': $objCategory->status = 0; $status = $objCategory->switchStatus() ? true : false; $messageVar = 'EDITED'; break; case 'deactivate': $objCategory->status = 1; $status = $objCategory->switchStatus() ? true : false; $messageVar = 'EDITED'; break; } } if ($status) { $this->okMessage = $_ARRAYLANG['TXT_CALENDAR_CATEGORY_SUCCESSFULLY_' . $messageVar]; } else { $this->errMessage = $_ARRAYLANG['TXT_CALENDAR_CATEGORY_CORRUPT_' . $messageVar]; } } if (isset($_GET['switch_status'])) { $objCategory = new \Cx\Modules\Calendar\Controller\CalendarCategory(intval($_GET['switch_status'])); if ($objCategory->switchStatus()) { $this->okMessage = $_ARRAYLANG['TXT_CALENDAR_CATEGORY_SUCCESSFULLY_EDITED']; } else { $this->errMessage = $_ARRAYLANG['TXT_CALENDAR_CATEGORY_CORRUPT_EDITED']; } } if (isset($_POST['submitCategoryList'])) { $status = true; foreach ($_POST['categoryOrder'] as $catId => $order) { $objCategory = new \Cx\Modules\Calendar\Controller\CalendarCategory(intval($catId)); if (!$objCategory->saveOrder(intval($order))) { $status = false; } } if ($status) { $this->okMessage = $_ARRAYLANG['TXT_CALENDAR_CATEGORY_SUCCESSFULLY_EDITED']; } else { $this->errMessage = $_ARRAYLANG['TXT_CALENDAR_CATEGORY_CORRUPT_EDITED']; } } $this->_objTpl->loadTemplateFile('module_calendar_categories.html'); $this->_pageTitle = $_ARRAYLANG['TXT_CALENDAR_CATEGORIES']; $this->_objTpl->setGlobalVariable(array('TXT_' . $this->moduleLangVar . '_CATEGORIES' => $this->_pageTitle, 'TXT_' . $this->moduleLangVar . '_STATUS' => $_ARRAYLANG['TXT_CALENDAR_STATUS'], 'TXT_' . $this->moduleLangVar . '_SORT' => $_ARRAYLANG['TXT_CALENDAR_SORTING'], 'TXT_' . $this->moduleLangVar . '_TITLE' => $_ARRAYLANG['TXT_CALENDAR_TITLE'], 'TXT_' . $this->moduleLangVar . '_EVENTS' => $_ARRAYLANG['TXT_CALENDAR_EVENTS'], 'TXT_' . $this->moduleLangVar . '_EDIT' => $_ARRAYLANG['TXT_CALENDAR_EDIT'], 'TXT_' . $this->moduleLangVar . '_SAVE' => $_ARRAYLANG['TXT_CALENDAR_SAVE'], 'TXT_' . $this->moduleLangVar . '_ACTION' => $_ARRAYLANG['TXT_CALENDAR_ACTION'], 'TXT_' . $this->moduleLangVar . '_EDIT' => $_ARRAYLANG['TXT_CALENDAR_EDIT'], 'TXT_' . $this->moduleLangVar . '_DELETE' => $_ARRAYLANG['TXT_CALENDAR_DELETE'], 'TXT_SELECT_ALL' => $_ARRAYLANG['TXT_CALENDAR_MARK_ALL'], 'TXT_DESELECT_ALL' => $_ARRAYLANG['TXT_CALENDAR_REMOVE_CHOICE'], 'TXT_SUBMIT_SELECT' => $_ARRAYLANG['TXT_SUBMIT_SELECT'], 'TXT_SUBMIT_ACTIVATE' => $_ARRAYLANG['TXT_SUBMIT_ACTIVATE'], 'TXT_SUBMIT_DEACTIVATE' => $_ARRAYLANG['TXT_SUBMIT_DEACTIVATE'], 'TXT_SUBMIT_DELETE' => $_ARRAYLANG['TXT_SUBMIT_DELETE'], 'TXT_' . $this->moduleLangVar . '_CONFIRM_DELETE_DATA' => $_ARRAYLANG['TXT_CALENDAR_CONFIRM_DELETE_DATA'], 'TXT_' . $this->moduleLangVar . '_ACTION_IS_IRREVERSIBLE' => $_ARRAYLANG['TXT_CALENDAR_ACTION_IS_IRREVERSIBLE'], 'TXT_' . $this->moduleLangVar . '_INSERT_CATEGORY' => $_ARRAYLANG['TXT_CALENDAR_INSERT_CATEGORY'], 'TXT_' . $this->moduleLangVar . '_MAKE_SELECTION' => $_ARRAYLANG['TXT_CALENDAR_MAKE_SELECTION'])); $objCategoryManager = new \Cx\Modules\Calendar\Controller\CalendarCategoryManager(); $objCategoryManager->getCategoryList(); $objCategoryManager->showCategoryList($this->_objTpl); }