function listDir($options = 0, $fullpath = true, $filter = ".*", $filterFalse = false, $nofilter = false) { $tabList = parent::listDir($options, $fullpath, $filter, $filterFalse, $nofilter); //order by menu order $tabOrdered = array(); foreach ($tabList as $aFile) { $oFileFilter = new PFile($this->path . SLASH . basename($aFile)); $iOrder = 100; if ($oFileFilter->is_page() || $oFileFilter->is_dircategory() || $oFileFilter->is_link()) { $oPage =& getFileObject($oFileFilter->path); $iOrder = $oPage->getMenuOrder(); } $strOrder = strlen('' + $iOrder) < 2 ? '0' . $iOrder : '' . $iOrder; $tabOrdered[$strOrder . '_' . basename($aFile)] = $aFile; } ksort($tabOrdered); $tabReturn = array(); foreach ($tabOrdered as $k => $aFile) { $tabReturn[] = $aFile; } return $tabReturn; }
function __getEditorFormItem($strParam, $strValue, $idForm) { $strType = $this->getParamDescr($strParam, "TYPE", "text"); $bEditable = $this->getParamDescr($strParam, "EDITABLE", "true") == "false" ? false : true; $strEditable = $bEditable ? "" : " style=\"display:none;\" "; $strReturn = '<div class="params"' . $strEditable . ' >' . "\n"; $strReturn .= '<label class="param" >' . _($this->getVarPrintName($strParam)) . ':</label>'; switch ($strType) { case 'boolean': $strChecked = $strValue == "true" ? 'checked' : ''; $strTpl = '<input class="paramvalue" {STYLE} type="checkbox" name="{PARAM_NAME}" id="field_{PARAM_NAME}" value="{PARAM_VALUE}" {CHECKED} onClick="javascript:if(this.checked){this.value=true;}else{this.value=false;} reloadFileConfigTextArea(\'{ID_FORM}\'); "/><br /> <div class="reset"></div> '; $strReturn .= str_replace(array('{CHECKED}', '{STYLE}', '{PARAM_NAME}', '{PARAM_VALUE}', '{ID_FORM}'), array($strChecked, $strEditable, $strParam, $strValue, $idForm), $strTpl); break; case 'list': $strTpl = '<select name="{PARAM_NAME}" class="paramvalue" {STYLE} id="field_{PARAM_NAME}" onChange="reloadFileConfigTextArea(\'{ID_FORM}\');"> {LIST_ITEMS} </select> <br /><div class="reset"></div> '; $strList = ''; $strListTpl = ' <option value="{PARAM_VALUE}" {SELECTED}>{PARAM_NAME}</option> '; $tabValues = explode(",", $this->getParamDescr($strParam, "LIST_VALUES", $strValue)); foreach ($tabValues as $val) { $strListVal = ''; $strListParam = ''; if (preg_match('/=>/', $val)) { $tabPV = explode('=>', $val); $strListVal = $tabPV[1]; $strListParam = $tabPV[0]; if ($strListParam == 'list_files') { //first search in theme dir then in medias path $strDirPath = is_dir($strListVal) ? $strListVal : SITE_PATH . THEME_DIR . $strListVal; $strDirPath = is_dir($strDirPath) ? $strDirPath : MEDIAS_PATH . SLASH . $strListVal; if (is_dir($strDirPath)) { $pDirList = new PDir($strDirPath); $tabListFiles = $pDirList->listDir($pDirList->ONLY_FILES, false); foreach ($tabListFiles as $strFile) { $oFile = new PFile($strFile); $strSelected = $strFile == $strValue ? 'SELECTED' : ''; $strList .= str_replace(array('{SELECTED}', '{PARAM_NAME}', '{PARAM_VALUE}'), array($strSelected, $oFile->getNameWithoutExt(), $strFile), $strListTpl); } } } else { $strSelected = $strListVal == $strValue ? 'SELECTED' : ''; $strList .= str_replace(array('{SELECTED}', '{PARAM_NAME}', '{PARAM_VALUE}'), array($strSelected, $strListParam, $strListVal), $strListTpl); } } else { $strListParam = $val; $strListVal = $val; $strSelected = $strListVal == $strValue ? 'SELECTED' : ''; $strList .= str_replace(array('{SELECTED}', '{PARAM_NAME}', '{PARAM_VALUE}'), array($strSelected, $strListParam, $strListVal), $strListTpl); } } $strReturn .= str_replace(array('{LIST_ITEMS}', '{STYLE}', '{PARAM_NAME}', '{PARAM_VALUE}', '{ID_FORM}'), array($strList, $strEditable, $strParam, $strValue, $idForm), $strTpl); break; case 'password': $strTpl = '<input class="paramvalueText paramvalue" {STYLE} onChange="reloadFileConfigTextArea(\'{ID_FORM}\');" type="password" name="{PARAM_NAME}" id="field_{PARAM_NAME}" value="{PARAM_VALUE}" /><br /> <div class="reset"></div> '; $strReturn .= str_replace(array('{STYLE}', '{PARAM_NAME}', '{PARAM_VALUE}', '{ID_FORM}'), array($strEditable, $strParam, $strValue, $idForm), $strTpl); break; case 'textarea': $strTpl = '<textarea name="{PARAM_NAME}" id="field_{PARAM_NAME}" class="paramvalue paramvalueTextArea" wrap="off" onChange="reloadFileConfigTextArea(\'{ID_FORM}\');" >{PARAM_VALUE}</textarea> <br /><div class="reset"></div> '; $strReturn .= str_replace(array('{STYLE}', '{PARAM_NAME}', '{PARAM_VALUE}', '{ID_FORM}'), array($strEditable, $strParam, $strValue, $idForm), $strTpl); break; case 'text': $strTpl = '<input class="paramvalueText paramvalue" {STYLE} onChange="reloadFileConfigTextArea(\'{ID_FORM}\');" type="text" name="{PARAM_NAME}" id="field_{PARAM_NAME}" value="{PARAM_VALUE}" /><br /> <div class="reset"></div> '; $strReturn .= str_replace(array('{STYLE}', '{PARAM_NAME}', '{PARAM_VALUE}', '{ID_FORM}'), array($strEditable, $strParam, $strValue, $idForm), $strTpl); break; } //end switch return $strReturn . "\n</div>\n"; }
function _deleteCache() { //find thumbnails and delete all $oDirThumb = new PDir(CACHE_DIR . "thumbnails"); $tabDirSize = $oDirThumb->listDir($oDirThumb->ONLY_DIR, $fullpath = true); $strRelativePath = $this->getRelativePath(); foreach ($tabDirSize as $strDirPath) { if (is_file($strThumbPath = $strDirPath . SLASH . $strRelativePath)) { $oFileThumb = new PFile($strThumbPath); if (!$oFileThumb->Delete()) { return false; } } } return true; }
function getHistoryList() { if (!is_file($this->path)) { return array(); } $oDirHistory = new PDir(CACHE_HIST_DIR . $this->getId()); $tabReturn = array(); //the current version, before editing $tabReturn[] = array('PATH' => $this->path, 'PRINTNAME' => _('Last Version')); if ($oDirHistory->isDir()) { $tabList = array_reverse($oDirHistory->listDir($oDirHistory->ONLY_DIR)); foreach ($tabList as $strDirHistoryVersion) { $pDirVersion = new PDir($strDirHistoryVersion); $listFiles = $pDirVersion->listDir($oDirHistory->ONLY_FILES, true, $filter = '\\.htm[l]?$'); if (sizeof($listFiles) > 0) { $iFileTime = basename($pDirVersion->path); $strDay = date('Y-m-d', time()) == date('Y-m-d', $iFileTime) ? _('today at') : date(_('Y-m-d'), $iFileTime); $strPrintName = $strDay . ' ' . date(_('H:i'), $iFileTime); $tabReturn[] = array('PATH' => $listFiles[0], 'PRINTNAME' => $strPrintName); } } } return $tabReturn; }
<button onClick="clickOnClearCache(this,\'' . _('Clearing cache ....') . '\',\'thumbs\');" class="ui-state-default ui-corner-all" type="button">' . _('clear thumbs cache') . '</button> <button onClick="clickOnClearCache(this,\'' . _('Clearing cache ....') . '\',\'history\');" class="ui-state-default ui-corner-all" type="button">' . _('clear history cache') . '</button> </div> '), array('FRAG_NAME' => 'site_file_config', 'TAB_NAME' => _('Config File'), 'TAB_CONTENT' => $oTextConfigFile->DisplayEditor())), 'tabConfiguratorLevel2')); /**Models **/ $strModelContent = ''; $strUrltabModels = 'admin_file_management.php?current_dir=' . urlencode(POFile::getPathRelativePath(PAGES_MODELS_PATH)); if (!is_dir(PAGES_MODELS_PATH)) { $oDirModels = new PDir(PAGES_MODELS_PATH); if (!$oDirModels->mkdir()) { $strModelContent .= getError(); } } if (is_dir(PAGES_MODELS_PATH)) { $oDirModels =& getFileObject(PAGES_MODELS_PATH); $tabListModels = $oDirModels->listDir($oDirModels->ONLY_FILES); foreach ($tabListModels as $filePath) { if (is_file($filePath)) { $oTemp =& getFileObject($filePath); //$strModelContent.=get_class($oTemp); $strModelContent .= $oTemp->Display(70, $url = false, $oDirModels); } } } $tabMainTabs[] = array('FRAG_NAME' => 'models_link', 'TAB_NAME' => _('Models Management'), 'TAB_CONTENT' => ' <form> <button onClick="myRelodPage(\'' . $strUrltabModels . '\')" class="ui-state-default ui-corner-all" type="button">' . _('Manage') . '</button> </form> <div id="listTypes">' . $strModelContent . '</div>'); /** TAB FCKEDITOR
function getFileObjectAndFind($strPath, $filter = 'findtype') { if (file_exists($strPath)) { return getFileObject($strPath); } //cut the file number $objFile = new PFile($strPath); $objParentDir = new PDir($objFile->getParentPath()); switch ($filter) { case 'file': $filter = $objParentDir->ONLY_FILES; break; case 'dir': $filter = $objParentDir->ONLY_DIR; break; case 'all': $filter = $objParentDir->ALL; break; case 'findtype': $filter = preg_match('/\\.[a-z]+$/i', $strPath) ? $objParentDir->ONLY_FILES : $objParentDir->ONLY_DIR; break; case false: $filter = $objParentDir->ONLY_FILES; break; default: $filter = $objParentDir->ONLY_FILES; break; } $strSimplePath = basename($strPath); if (!($tabFile = $objParentDir->listDir($filter, true, $strSimplePath . ($filter == $objParentDir->ONLY_DIR ? '$' : '')))) { return false; } foreach ($tabFile as $strPathFileFiltered) { $strFileName = basename($strPathFileFiltered); if ($strFileName == $strSimplePath) { return getFileObject($strPathFileFiltered); } } return setError(sprintf(_("Fatal Error, can not find the file %s"), $strSimplePath)); }