function showOverview() { global $_ARRAYLANG, $_CORELANG; $this->_objTpl->setTemplate($this->pageContent, true, true); $intCmdFormId = 0; $bolFormUseCategory = false; $bolFormUseLevel = false; //search existing category&level blocks $arrExistingBlocks = array(); for ($i = 1; $i <= 10; $i++) { if ($this->_objTpl->blockExists($this->moduleNameLC . 'CategoriesLevels_row_' . $i)) { array_push($arrExistingBlocks, $i); } } //get ids if (isset($_GET['cmd'])) { $arrIds = explode("-", $_GET['cmd']); } if ($this->arrSettings['settingsShowLevels'] == 1) { if (intval($arrIds[0]) != 0) { $intLevelId = intval($arrIds[0]); } else { $intLevelId = 0; } $intLevelId = isset($_GET['lid']) ? intval($_GET['lid']) : $intLevelId; if (!empty($arrIds[1])) { $intCategoryCmd = $arrIds[1]; } else { $intCategoryCmd = 0; } } else { $intLevelId = 0; if (intval($arrIds[0]) != 0) { $intCategoryCmd = $arrIds[0]; } else { $intCategoryCmd = 0; } } if ($intCategoryCmd != 0) { $intCategoryId = intval($intCategoryCmd); } else { $intCategoryId = 0; } $intCategoryId = isset($_GET['cid']) ? intval($_GET['cid']) : $intCategoryId; // show block {$this->moduleNameLC}Overview if (empty($intCategoryId) && empty($intLevelId) && $this->_objTpl->blockExists($this->moduleNameLC . 'Overview')) { $this->_objTpl->touchBlock($this->moduleNameLC . 'Overview'); } //get navtree if ($this->_objTpl->blockExists($this->moduleNameLC . 'Navtree') && ($intCategoryId != 0 || $intLevelId != 0)) { $this->getNavtree($intCategoryId, $intLevelId); } //get searchform if ($this->_objTpl->blockExists($this->moduleNameLC . 'Searchform')) { $objSearch = new MediaDirectorySearch($this->moduleName); $objSearch->getSearchform($this->_objTpl, 1); } //get level / category details if ($this->_objTpl->blockExists($this->moduleNameLC . 'CategoryLevelDetail')) { if ($intCategoryId == 0 && $intLevelId != 0 && $this->arrSettings['settingsShowLevels'] == 1) { $objLevel = new MediaDirectoryLevel($intLevelId, null, 0, $this->moduleName); $objLevel->listLevels($this->_objTpl, 5, $intLevelId); } if ($intCategoryId != 0) { $objCategory = new MediaDirectoryCategory($intCategoryId, null, 0, $this->moduleName); $objCategory->listCategories($this->_objTpl, 5, $intCategoryId); } } //check form cmd if (!empty($_GET['cmd']) && $arrIds[0] != 'search') { $arrFormCmd = array(); $objForms = new MediaDirectoryForm(null, $this->moduleName); foreach ($objForms->arrForms as $intFormId => $arrForm) { if (!empty($arrForm['formCmd'])) { $arrFormCmd[$arrForm['formCmd']] = intval($intFormId); } } if (!empty($arrFormCmd[$_GET['cmd']])) { $intCmdFormId = intval($arrFormCmd[$_GET['cmd']]); } } //list levels / categories if ($this->_objTpl->blockExists($this->moduleNameLC . 'CategoriesLevelsList')) { if ($intCmdFormId != 0) { $bolFormUseCategory = $objForms->arrForms[intval($intCmdFormId)]['formUseCategory']; $bolFormUseLevel = $objForms->arrForms[intval($intCmdFormId)]['formUseLevel']; } else { $bolFormUseCategory = true; $bolFormUseLevel = $this->arrSettings['settingsShowLevels']; } if ($this->arrSettings['settingsShowLevels'] == 1 && $intCategoryId == 0 && $bolFormUseLevel) { $objLevels = new MediaDirectoryLevel(null, $intLevelId, 1, $this->moduleName); $objCategories = new MediaDirectoryCategory(null, $intCategoryId, 1, $this->moduleName); $objLevels->listLevels($this->_objTpl, 2, null, null, null, $arrExistingBlocks); $this->_objTpl->clearVariables(); $this->_objTpl->parse($this->moduleNameLC . 'CategoriesLevelsList'); } if (isset($objLevel) && $objLevel->arrLevels[$intLevelId]['levelShowCategories'] == 1 || $intLevelId === 0 || $this->arrSettings['settingsShowLevels'] == 0 || $intCategoryId != 0 || $bolFormUseCategory && !$bolFormUseLevel) { $objCategories = new MediaDirectoryCategory(null, $intCategoryId, 1, $this->moduleName); $objCategories->listCategories($this->_objTpl, 2, null, null, null, $arrExistingBlocks); $this->_objTpl->clearVariables(); $this->_objTpl->parse($this->moduleNameLC . 'CategoriesLevelsList'); } if (empty($objLevel->arrLevels) && empty($objCategories->arrCategories)) { $this->_objTpl->hideBlock($this->moduleNameLC . 'CategoriesLevelsList'); $this->_objTpl->clearVariables(); } } //latest title if ($this->_objTpl->blockExists($this->moduleNameLC . 'LatestTitle') && $intCategoryId == 0 && $intLevelId == 0) { $this->_objTpl->touchBlock($this->moduleNameLC . 'LatestTitle'); } //list entries if ($this->_objTpl->blockExists($this->moduleNameLC . 'EntryList')) { $intLimitStart = isset($_GET['pos']) ? intval($_GET['pos']) : 0; //check category / level if ($intCategoryId == 0 && $bolFormUseCategory || $intLevelId == 0 && $bolFormUseLevel) { $bolLatest = true; $intLimitEnd = intval($this->arrSettings['settingsLatestNumOverview']); } else { $bolLatest = false; $intLimitEnd = intval($this->arrSettings['settingsPagingNumEntries']); if (!empty($intCmdFormId) && !empty($objForms->arrForms[$intCmdFormId]['formEntriesPerPage'])) { $intLimitEnd = $objForms->arrForms[$intCmdFormId]['formEntriesPerPage']; } } //check show entries if (isset($objLevel) && $objLevel->arrLevels[$intLevelId]['levelShowEntries'] == 1 || isset($objCategory) && $objCategory->arrCategories[$intCategoryId]['catShowEntries'] == 1 || $bolLatest == true || !$bolFormUseCategory && !$bolFormUseLevel) { $objEntries = new MediaDirectoryEntry($this->moduleName); $objEntries->getEntries(null, $intLevelId, $intCategoryId, null, $bolLatest, null, 1, $intLimitStart, $intLimitEnd, null, null, $intCmdFormId); $objEntries->listEntries($this->_objTpl, 2); if (!$bolLatest) { $intNumEntries = intval($objEntries->countEntries()); if ($intNumEntries > $intLimitEnd) { $objUrl = clone \Env::get('Resolver')->getUrl(); $currentUrlParams = $objUrl->getSuggestedParams(); $strPaging = getPaging($intNumEntries, $intLimitStart, $currentUrlParams, "<b>" . $_ARRAYLANG['TXT_MEDIADIR_ENTRIES'] . "</b>", true, $intLimitEnd); $this->_objTpl->setGlobalVariable(array($this->moduleLangVar . '_PAGING' => $strPaging)); } } } //no entries found if (empty($objEntries->arrEntries)) { $this->_objTpl->hideBlock($this->moduleNameLC . 'EntryList'); $this->_objTpl->clearVariables(); } } }
function manageEntries() { global $_ARRAYLANG, $_CORELANG, $objDatabase, $_LANGID; $this->_objTpl->loadTemplateFile('module_' . $this->moduleNameLC . '_manage_entries.html', true, true); $this->pageTitle = $_ARRAYLANG['TXT_MEDIADIR_MANAGE_ENTRIES']; $this->initFilterSession(); if (isset($_REQUEST['cat_id'])) { $_SESSION[$this->moduleName]['searchFilter']['cat_id'] = intval($_REQUEST['cat_id']); } if (isset($_REQUEST['level_id'])) { $_SESSION[$this->moduleName]['searchFilter']['level_id'] = intval($_REQUEST['level_id']); } if (isset($_REQUEST['form_id'])) { $_SESSION[$this->moduleName]['searchFilter']['form_id'] = intval($_REQUEST['form_id']); } if (isset($_REQUEST['term'])) { $_SESSION[$this->moduleName]['searchFilter']['term'] = $_REQUEST['term'] != $_ARRAYLANG['TXT_MEDIADIR_ID_OR_SEARCH_TERM'] ? $_REQUEST['term'] : null; } //assign the searchFilter session values to corresponding variables $intCategoryId = $_SESSION[$this->moduleName]['searchFilter']['cat_id']; $intLevelId = $_SESSION[$this->moduleName]['searchFilter']['level_id']; $intFormId = $_SESSION[$this->moduleName]['searchFilter']['form_id']; $strTerm = $_SESSION[$this->moduleName]['searchFilter']['term']; $objCategories = new MediaDirectoryCategory(null, null, 1, $this->moduleName); $catDropdown = $objCategories->listCategories(null, 3, $intCategoryId); $objLevels = new MediaDirectoryLevel(null, null, 1, $this->moduleName); $levelDropdown = $objLevels->listLevels(null, 3, $intLevelId); $objForms = new MediaDirectoryForm(null, $this->moduleName); $formDropdown = $objForms->listForms(null, 4, $intFormId); //parse global variables $this->_objTpl->setGlobalVariable(array('TXT_' . $this->moduleLangVar . '_PAGE_TITLE' => $this->pageTitle, 'TXT_' . $this->moduleLangVar . '_SUBMIT' => $_ARRAYLANG['TXT_' . $this->moduleLangVar . '_SUBMIT'], 'TXT_EDIT' => $_ARRAYLANG['TXT_MEDIADIR_EDIT'], 'TXT_SEARCH' => $_CORELANG['TXT_SEARCH'], 'TXT_MEDIADIR_STATUS' => $_CORELANG['TXT_STATUS'], 'TXT_SELECT_ALL' => $_CORELANG['TXT_SELECT_ALL'], 'TXT_DESELECT_ALL' => $_CORELANG['TXT_DESELECT_ALL'], 'TXT_SELECT_ACTION' => $_CORELANG['TXT_MULTISELECT_SELECT'], 'TXT_FUNCTIONS' => $_ARRAYLANG['TXT_MEDIADIR_FUNCTIONS'], 'TXT_DELETE' => $_ARRAYLANG['TXT_MEDIADIR_DELETE'], 'TXT_DELETE_ALL' => $_CORELANG['TXT_MULTISELECT_DELETE'], 'TXT_' . $this->moduleLangVar . '_VOTING' => $_ARRAYLANG['TXT_MEDIADIR_VOTING'], 'TXT_' . $this->moduleLangVar . '_COMMENTS' => $_ARRAYLANG['TXT_MEDIADIR_COMMENTS'], 'TXT_' . $this->moduleLangVar . '_NAME' => $_CORELANG['TXT_NAME'], 'TXT_' . $this->moduleLangVar . '_DATE' => $_CORELANG['TXT_DATE'], 'TXT_' . $this->moduleLangVar . '_AUTHOR' => $_ARRAYLANG['TXT_MEDIADIR_AUTHOR'], 'TXT_' . $this->moduleLangVar . '_HITS' => $_ARRAYLANG['TXT_MEDIADIR_HITS'], 'TXT_' . $this->moduleLangVar . '_ACTION' => $_CORELANG['TXT_HISTORY_ACTION'], $this->moduleLangVar . '_SEARCH_TERM' => $strTerm != null ? $strTerm : $_ARRAYLANG['TXT_MEDIADIR_ID_OR_SEARCH_TERM'], 'TXT_' . $this->moduleLangVar . '_ID_OR_SEARCH_TERM' => $_ARRAYLANG['TXT_MEDIADIR_ID_OR_SEARCH_TERM'], $this->moduleLangVar . '_SEARCH_CATEGORY_ID' => $intCategoryId, $this->moduleLangVar . '_SEARCH_LEVEL_ID' => $intLevelId, 'TXT_' . $this->moduleLangVar . '_MOVE_ALL' => $_ARRAYLANG['TXT_MEDIADIR_MOVE_ALL'], 'TXT_' . $this->moduleLangVar . '_RESTORE_VOTING_ALL' => $_ARRAYLANG['TXT_MEDIADIR_RESTORE_VOTING_ALL'], 'TXT_' . $this->moduleLangVar . '_RESTORE_COMMENTS_ALL' => $_ARRAYLANG['TXT_MEDIADIR_RESTORE_COMMENTS_ALL'], 'TXT_' . $this->moduleLangVar . '_CONFIRM_DELETE_DATA' => $_ARRAYLANG['TXT_MEDIADIR_CONFIRM_DELETE_DATA'], 'TXT_' . $this->moduleLangVar . '_ACTION_IS_IRREVERSIBLE' => $_ARRAYLANG['TXT_MEDIADIR_ACTION_IS_IRREVERSIBLE'], 'TXT_' . $this->moduleLangVar . '_MAKE_SELECTION' => $_ARRAYLANG['TXT_MEDIADIR_MAKE_SELECTION'], 'TXT_SELECT_ALL' => $_CORELANG['TXT_SELECT_ALL'], 'TXT_DESELECT_ALL' => $_CORELANG['TXT_DESELECT_ALL'], 'TXT_SELECT_ACTION' => $_CORELANG['TXT_MULTISELECT_SELECT'], 'TXT_DELETE_ALL' => $_CORELANG['TXT_MULTISELECT_DELETE'], 'TXT_' . $this->moduleLangVar . '_MOVE_ALL' => $_ARRAYLANG['TXT_MEDIADIR_MOVE_ALL'], 'TXT_' . $this->moduleLangVar . '_ALL_LEVELS' => $_ARRAYLANG['TXT_MEDIADIR_ALL_LEVELS'], 'TXT_' . $this->moduleLangVar . '_ALL_CATEGORIES' => $_ARRAYLANG['TXT_MEDIADIR_ALL_CATEGORIES'], 'TXT_' . $this->moduleLangVar . '_ALL_FORMS' => $_ARRAYLANG['TXT_MEDIADIR_ALL_FORMS'], $this->moduleLangVar . '_CATEGORIES_DROPDOWN_OPTIONS' => $catDropdown, $this->moduleLangVar . '_LEVELS_DROPDOWN_OPTIONS' => $levelDropdown, $this->moduleLangVar . '_FORMS_DROPDOWN_OPTIONS' => $formDropdown, 'TXT_' . $this->moduleLangVar . '_FORM' => $_ARRAYLANG['TXT_MEDIADIR_FORM'])); //get seting values parent::getSettings(); if ($this->arrSettings['settingsShowLevels'] == 1) { $this->_objTpl->touchBlock($this->moduleNameLC . 'LevelDropdown'); } else { $this->_objTpl->hideBlock($this->moduleNameLC . 'LevelDropdown'); } if (count($objForms->arrForms) > 1) { $this->_objTpl->touchBlock($this->moduleNameLC . 'FormDropdown'); } else { $this->_objTpl->hideBlock($this->moduleNameLC . 'FormDropdown'); } $objEntries = new MediaDirectoryEntry($this->moduleName); if (isset($_POST['submitEntriesOrderForm'])) { if ($objEntries->saveOrder($_POST)) { $this->strOkMessage = $_CORELANG['TXT_SETTINGS_UPDATED']; } else { $this->strErrMessage = $_CORELANG['TXT_DATABASE_QUERY_ERROR']; } } $objSettings = new MediaDirectorySettings($this->moduleName); if ($this->_objTpl->blockExists('mediadirTableHeaderComments')) { if ($objSettings->arrSettings['settingsAllowComments']) { $this->_objTpl->touchBlock('mediadirTableHeaderComments'); } } if ($this->_objTpl->blockExists('mediadirTableHeaderVotes')) { if ($objSettings->arrSettings['settingsAllowVotes']) { $this->_objTpl->touchBlock('mediadirTableHeaderVotes'); } } switch ($_GET['act']) { case 'move_entry': $this->strErrMessage = "Diese Funktion ist zurzeit noch nicht implementiert."; break; case 'delete_entry': \Permission::checkAccess(MediaDirectoryAccessIDs::ModifyEntry, 'static'); if (!isset($_GET['id'])) { foreach ($_POST["entriesFormSelected"] as $intEntryId) { $strStatus = $objEntries->deleteEntry(intval($intEntryId)); } } else { $strStatus = $objEntries->deleteEntry(intval($_GET['id'])); } if ($strStatus) { $this->strOkMessage = $_ARRAYLANG['TXT_MEDIADIR_ENTRY'] . " " . $_ARRAYLANG['TXT_MEDIADIR_SUCCESSFULLY_DELETED']; } else { $this->strErrMessage = $_ARRAYLANG['TXT_MEDIADIR_ENTRY'] . " " . $_ARRAYLANG['TXT_MEDIADIR_CORRUPT_DELETED']; } break; case 'restore_voting': \Permission::checkAccess(MediaDirectoryAccessIDs::ModifyEntry, 'static'); $objVotes = new MediaDirectoryVoting($this->moduleName); if (!isset($_GET['id'])) { foreach ($_POST["entriesFormSelected"] as $intEntryId) { $strStatus = $objVotes->restoreVoting(intval($intEntryId)); } } else { $strStatus = $objVotes->restoreVoting(intval($_GET['id'])); } if ($strStatus) { $this->strOkMessage = $_ARRAYLANG['TXT_MEDIADIR_VOTING'] . " " . $_ARRAYLANG['TXT_MEDIADIR_SUCCESSFULLY_DELETED']; } else { $this->strErrMessage = $_ARRAYLANG['TXT_MEDIADIR_VOTING'] . " " . $_ARRAYLANG['TXT_MEDIADIR_CORRUPT_DELETED']; } break; case 'restore_comments': \Permission::checkAccess(MediaDirectoryAccessIDs::ModifyEntry, 'static'); $objComments = new MediaDirectoryComment($this->moduleName); if (!isset($_GET['id'])) { foreach ($_POST["entriesFormSelected"] as $intEntryId) { $strStatus = $objComments->restoreComments(intval($intEntryId)); } } else { $strStatus = $objComments->restoreComments(intval($_GET['id'])); } if ($strStatus) { $this->strOkMessage = $_ARRAYLANG['TXT_MEDIADIR_COMMENTS'] . " " . $_ARRAYLANG['TXT_MEDIADIR_SUCCESSFULLY_DELETED']; } else { $this->strErrMessage = $_ARRAYLANG['TXT_MEDIADIR_COMMENTS'] . " " . $_ARRAYLANG['TXT_MEDIADIR_CORRUPT_DELETED']; } break; break; case 'confirm_entry': \Permission::checkAccess(MediaDirectoryAccessIDs::ModifyEntry, 'static'); if (!isset($_GET['id'])) { foreach ($_POST["entriesFormSelected"] as $intEntryId) { $strStatus = $objEntries->confirmEntry(intval($intEntryId)); } } else { $strStatus = $objEntries->confirmEntry(intval($_GET['id'])); } if ($strStatus) { $this->strOkMessage = $_ARRAYLANG['TXT_MEDIADIR_ENTRY'] . " " . $_ARRAYLANG['TXT_MEDIADIR_SUCCESSFULLY_CONFIRM']; } else { $this->strErrMessage = $_ARRAYLANG['TXT_MEDIADIR_ENTRY'] . " " . $_ARRAYLANG['TXT_MEDIADIR_CORRUPT_CONFIRM']; } break; } $objEntries->getEntries(null, $intLevelId, $intCategoryId, $strTerm, null, null, null, null, 'n', null, null, $intFormId, null, $this->limit, $this->offset); $objEntries->listEntries($this->_objTpl, 1); // Paging $count = $objEntries->countEntries(); $filter = (!empty($strTerm) ? '&term=' . $strTerm : '') . (!empty($intCategoryId) ? '&cat_id=' . $intCategoryId : '') . (!empty($intFormId) ? '&form_id=' . $intFormId : '') . (!empty($intLevelId) ? '&level_id=' . $intLevelId : ''); $term = !empty($strTerm) ? '&term=' . $strTerm : ''; $paging = getPaging($count, $this->offset, '&cmd=' . $this->moduleName . '&act=entries' . $filter, '', true); $this->_objTpl->setGlobalVariable($this->moduleLangVar . '_PAGING', $paging); if (!empty($strTerm)) { $this->_objTpl->setVariable($this->moduleLangVar . '_SEARCH_TERM_PARAMETER', '&term=' . $strTerm); } if (empty($objEntries->arrEntries)) { $this->_objTpl->hideBlock($this->moduleNameLC . 'EntriesSelectAction'); } else { $this->_objTpl->touchBlock($this->moduleNameLC . 'EntriesSelectAction'); } }