public function CheckLogin() { global $g_config; $query = strtolower(GetQuery()); if (!$this->IsAuth()) { if (SiteRoot($query) !== SiteRoot($g_config['admin_sector']['after_logout_page'])) { header("Location: " . SiteRoot($g_config['admin_sector']['after_logout_page'])); exit; } } }
function DetailTable($Param,$Show,$MaxLine,$MaskArray=array()) { global $ResultTable; $debug=false; $Ret=GetQuery($Param); $Header=$Ret[Basics][Header]; $MyQuery=$Ret[Stats][Query]; $Primary=$Ret[Basics][Prime]; $Order=$Ret[Basics][Ord]; if ($debug) { echo "Query created - about to run<BR>\n"; var_dump($Param);echo "<BR>MaskArray=";var_dump($MaskArray);echo "<HR>\n";var_dump($Ret); } $Div=$Param[CType].$Param[LCType]; ShowTable($Header,$MyQuery,$Div,$Show,$MaxLine,$Title,$Param,$MaskArray); //echo "DEBUG: ResultTable=<BR>\n";var_dump($ResultTable);echo "<HR>\n"; //echo "</body></html>\n"; return; }
<?php if (is_file(BASEPATH . 'core/init/db.php')) { require_once BASEPATH . 'core/init/db.php'; } if (is_file(BASEPATH . 'core/init/mongodb.php')) { require_once BASEPATH . 'core/init/mongodb.php'; } // Изначальная папка нам может понадобится для CKEditor $g_config['extrapacker']['non_admin_dir'] = $g_config['extrapacker']['dir']; // Проверяем вход в админку и авторизацию $isAdminSector = stripos(strtolower(GetQuery()), 'admin/') === 0 || GetQuery() === 'admin'; if ($isAdminSector) { // Меняем папку куда будут складироваться css/js админки $g_config['extrapacker']['dir'] = 'extrapacker_admin'; $g_config['extrapacker']['packCss'] = true; $g_config['mainTpl'] = 'admin/main_tpl'; $g_adminAuth = new AdminModel(); $g_adminAuth->CheckLogin(); define('IS_ADMIN_AUTH', $g_adminAuth->IsAuth()); } else { define('IS_ADMIN_AUTH', false); }
<strong>(<?php echo LANG; ?> )</strong></td> </tr> <tr> <td>current url</td> <td><?php echo GetCurUrl(); ?> </td> </tr> <tr> <td>query</td> <td><?php echo GetQuery(); ?> </td> </tr> <?php foreach ($g_config['phpIni'] as $k => $v) { ?> <tr> <td><?php echo $k; ?> </td> <td><?php echo VarDump($v); ?> </td>
/** * Получение текущей строки запроса к движку (удобно юзать в action для формы если это компоннет) */ function GetCurUrl($_pars = '') { $pars = ''; $all = $_GET; foreach (array_filter(explode('&', $_pars)) as $v) { if (strpos($v, '=') === false) { $all[$v] = NULL; } else { $t = explode('=', $v); list($id, $val) = $t; $all[$id] = urldecode($val); } } foreach ($all as $k => $v) { if ($k == 'q') { continue; } if ($v == M_DELETE_PARAM) { continue; } if (is_array($v)) { foreach ($v as $k1 => $v1) { $pars .= "{$k}[{$k1}]=" . urlencode($v1) . "&"; } } else { $pars .= "{$k}=" . urlencode($v) . "&"; } } $pars = substr($pars, 0, -1) ? '&' . substr($pars, 0, -1) : ''; return SiteRoot(GetQuery() . $pars); }
<?php require_once BASEPATH . 'core/config/admin_menu.php'; GetQuery(); // Чтобы фунция SiteRoot корректно заработала нужно проинициализировать LANG в функции GetQuery $g_config['admin_menu'][] = array('link' => 'javascript:void(0)', 'name' => 'Администраторы', 'label' => 'Управление администраторами', 'css' => '', 'list' => array(array('link' => SiteRoot('admin/admin'), 'name' => 'Новый администратор', 'label' => 'Зарегистрировать нового администратора'), array('link' => SiteRoot('admin/admins'), 'name' => 'Список администраторов', 'label' => 'Показать список администраторов')));
<?php /** * Входная точка в движок * * @author Zmi */ // Режим работы сайта (Debug || Production) define('DEBUG_MODE', (bool) (strpos($_SERVER["REMOTE_ADDR"], "127.0.0.") === 0 || strpos($_SERVER["REMOTE_ADDR"], "192.168.0.") === 0)); // Режим вывода ошибок по идёт инициализация движка, после перенастроится на параметр $g_config['phpIni']['display_errors'] ini_set('display_errors', DEBUG_MODE); define('BASEPATH', str_replace('\\', '/', dirname(__FILE__)) . '/'); require_once BASEPATH . 'core/core.php'; ob_start(); header(Php::Status(200)); $g_config['isControllerLoad'] = IncludeCom(GetQuery()); $content = ob_get_clean(); // Если страницы небыло то 404-ая if (!$g_config['isControllerLoad']) { ob_start(); IncludeCom('404'); $content = ob_get_clean(); } // Если страницу нужно загрузить в главном шаблоне if ($g_config['isLoadInMainTpl']) { ob_start(); IncludeCom($g_config['mainTpl'], array('content' => $content)); $content = ob_get_clean(); } echo PrepareContent($content);
$listFileLocal = realpath($listFile); if (CheckFile($listFileLocal)) { // if list file exists on the local system, use it right away return $listFileLocal; } else { $localTarget = XDWCTEMP . md5($listFile) . '.txt'; if (CheckFile($localTarget) && time() - filemtime($localTarget) < LISTFILECACHEPERIOD) { // cache hit: cached list file exists locally and is still valid return $localTarget; } else { return FetchRemoteListFile($listFile, $localTarget); } } } // main code $query = GetQuery(); // get the regular expression to search for $listFiles = GetListFiles(); // get an array of list files // get requested packs $packs = array(); foreach ($listFiles as $listFile) { if ($listFile = PrepareListFile($listFile)) { $handle = fopen($listFile, 'r'); if (fgets($handle) !== false && fgets($handle) !== false && ($line = fgets($handle)) !== false && preg_match("/\\/MSG (.+?) /", $line, $match)) { $botName = $match[1]; while (($line = fgets($handle)) !== false && preg_match("/^#(\\d+) +(\\d+)x +\\[ *(.+?)\\] +(.+)\$/", $line, $match)) { // ...and is another pack if ($query === null || preg_match($query, $match[4])) { // ...or if the file name matches what's being searched for array_push($packs, new Pack($botName, $match[1], $match[2], $match[3], $match[4]));