$sql = mysql_query($sql); $sql = mysql_fetch_assoc($sql); if (!empty($sql)) { // 301 cStat::bSaveEvent(EVENT_301); $nat = current($sql); header('301 Moved Permanently'); header('Location: ' . $nat); die("<h1>301 Moved Permanently</h1>" . '<a href="' . $nat . '">http://' . HOST . $nat . '</a>'); } else { // 404 header('HTTP/1.1 404 Not Found'); $subject = $_SERVER['HTTP_HOST'] . ' ' . '404 Not Found'; $message = my_info(); my_mail($message, $subject); cStat::bSaveEvent(EVENT_404); //die('404 Not Found'); // Этот кусок зависит от корневого шаблона $BreadCrumbs = new cBreadCrumbs(); $BreadCrumbs->addBreadCrumbs('', 'Главная'); $_t = new KTemplate(FILE_MAIN_TEMPLATE); $sTitle = '404 Not Found - Страница не найдена'; $sText = 'Мы обыскали весь сервер, но не смогли найти запрошенной вами страницы. <br />'; $sText .= 'Проверьте адрес в адресной строке броузера. <br />'; $sModuleTpl = 'sitemap'; include_once FLGR_MODULES . '/sitemap.php'; if (LOCALHOST) { $_t->assign('AdSence', ''); $_t->assign('STATISTIC', ''); $_t->assign('mylinks', ''); } else {
$sql = "SELECT `key`, `title`, `annotation` \n\t\tFROM `" . DB_PREFIX . DB_TBL_PAGES . "` \n\t\tWHERE parent = " . $nId . " ORDER BY `order`"; $sql = mysql_query($sql); if (false == $sql) { my_die(); } while ($row = mysql_fetch_assoc($sql)) { $tpl_topmenu = $_t->fetchBlock('topmenu'); $tpl_topmenu->assign('topmenu_key', '/' . $sKey . '/' . $row['key']); $tpl_topmenu->assign('topmenu_title', $row['title']); $_t->assign('topmenu', $tpl_topmenu); $tpl_topmenu->reset(); } // PERMISSIONS if (!$Permissions->bIsAdmin()) { $_t->assign('content', "Доступ запрещен!"); $bFlagStop = true; cStat::bSaveEvent(EVENT_PERMDENIED); return; } if (defined('VERSION')) { $_t->assign('VERSION', VERSION); } else { $_t->assign('VERSION', '5.0'); } if (!$bFlagLastModule) { return; } // GET $_t->assign('BreadCrumbs', $BreadCrumbs->getBreadCrumbs()); $_t->assign('content', 'Добро пожаловать, Админ!'); return;
} // Выводим foreach ($aPage as $k => $v) { if ($v['draft'] == 0) { $tpl->assign('content', crbr('<div style="font-size: 90%; margin-bottom: 8px;"><a href="' . $sRequest . '/' . $v['key'] . '">' . $v['title'] . '</a><br />' . $v['annotation'] . '</div>')); } } include_once FLGR_COMMON . '/stemmers.php'; if (isset($_GET['q'])) { $tpl->assign('search_query', $q); $_t->assign('search_query', $q); // Разбиваем на слова $aWords = preg_split("/[\\s\\W]+/", $q, -1, PREG_SPLIT_NO_EMPTY); // Формируем прямой запрос $q = implode(' ', $aWords); cStat::bSaveEvent(EVENT_SEARCH, $q); // Ищем в страницах $aMatch = getMatch($q); // Ищем в новостях $aMatchNews = getMatchNews($q); // Сливаем результаты $aOutMatch = array_merge($aMatch, $aMatchNews); // Сортируем по релевантности uasort($aOutMatch, 'relcmp'); // Выводим foreach ($aOutMatch as $k => $v) { $tplSearchResults = $tpl->fetchBlock('SearchResults'); $tplSearchResults->assign($v); $tplSearchResults->assign('path', $k); $tpl->assign('SearchResults', $tplSearchResults); $tplSearchResults->reset();
$_t->assign('seo_description', $sSeoDescription); $bFlag404 = false; $bFlagLastModule = false; return; } if (isset($_POST['act']) && $_POST['act'] == 'add_comment' && isset($_SESSION['user'])) { $_POST['user'] = $_SESSION['user']['id']; $_POST['text'] = sFilter($_POST['text']); $_POST['post'] = $aRequest[$nLevel + 2]; $sql = 'INSERT INTO `' . DB_PREFIX . DB_TBL_COMMENTS . '` ( `id` , `post` , `parent` , `user` , `t` , `text` ) '; $sql .= "VALUES ('', '" . $_POST['post'] . "', '" . $_POST['parent'] . "', '" . $_POST['user'] . "', NOW( ) , '" . $_POST['text'] . "')"; $sql = mysql_query($sql); if (false == $sql) { my_die(); } cStat::bSaveEvent(EVENT_ADDCOMMENT, $aRequest[$nLevel + 2] . ' ' . ' ' . $_POST['text']); // notify $post = $_POST['post']; $aNotifyUsers = array(); $parent = $_POST['parent']; while ($parent != 0) { $sql = "SELECT * FROM `" . DB_PREFIX . DB_TBL_COMMENTS . "` WHERE ( (`post` = {$post}) AND ( `id` = {$parent}) )"; $sql = mysql_query($sql); if (false == $sql) { my_die(); } $aParentPost = mysql_fetch_assoc($sql); $aNotifyUsers[$aParentPost['user']] = array(); $parent = $aParentPost['parent']; } if (!empty($aNotifyUsers)) {
$tpl->assign('content', 'Спасибо за регистрацию. Вы вошли на сайт.'); break; case 'update': //dbg($metaForm->getFormMeta(), 'input array'); $aTmp = $metaForm->getFormMeta(); $aTmp = $aTmp['value']; unset($aTmp[$metaFormAction->process()]); // unser($act) unset($aTmp['kcaptcha']); unset($aTmp['password_confirm']); $sql = sqlGetUpdate(DB_PREFIX . DB_TBL_USERS, $aTmp, "`id` = '" . $Permissions->getLoggedUserId() . "'"); $sql = mysql_query($sql); if (false == $sql) { my_die(); } cStat::bSaveEvent(EVENT_UPDATEUSER, '(' . $Permissions->getLoggedUserId() . ')' . $aTmp['login']); $Permissions->login($aTmp['login'], $aTmp['password']); $BreadCrumbs->addBreadCrumbs($sKey, 'Профиль пользователя'); $tpl->assign('title', 'Профиль пользователя'); $tpl->assign('content', 'Профиль сохранен.'); break; default: //dbg($metaFormAction->getErrors(), 'Validator error:'); //dbg($metaForm->getFormMeta(), 'input array'); $tpl->assign('title', 'Ошибка!'); $tpl->assign('content', '<span style="color: #FF0000;">Не все поля заполнены правильно. Проверьте правильность заполнения полей!</span><br /><br />'); $tplForm = new KTemplate(FLGR_TEMPLATES . '/' . $sModuleTpl . '.htm'); // Act = имя последнего поля в форме $aValues = $metaForm->getFormMeta(); $aValues = $aValues['value']; end($aValues);
unset($aTmp[$metaFormAction->process()]); // unser($act) unset($aTmp['kcaptcha']); $to = EMAIL_CONTACTS; $subject = $_SERVER['HTTP_HOST'] . ' ' . 'contacts'; $message = 'Здравствуйте, ' . $_POST['name'] . "\r\n\r\n" . $_POST['message']; $message .= "\r\n\r\n" . my_info(); $from = $_POST['email']; my_mail(crbr($message), $subject, $to, $from); $tpl = $_t->fetchBlock('ContentBlock'); $tpl->assign('title', $sTitle); $tpl->assign('content', 'Ваше сообщение успешно отправлено.<br />'); $tpl->assign('content', 'Мы ответим вам на указанный e-mail.<br />'); $_t->assign('ContentBlock', $tpl); $tpl->reset(); cStat::bSaveEvent(EVENT_SENDMAIL, $_POST['name'] . ' < ' . $_POST['email'] . ' > ' . $_POST['message']); break; default: //dbg($metaFormAction->getErrors(), 'Validator error:'); //dbg($metaForm->getFormMeta(), 'input array'); $tpl = $_t->fetchBlock('ContentBlock'); $tpl->assign('title', 'Ошибка!'); $tpl->assign('content', '<span style="color: #FF0000;">Не все поля заполнены правильно. Проверьте правильность заполнения полей!</span><br /><br />'); $tplForm = new KTemplate(FLGR_TEMPLATES . '/' . $sModuleTpl . '.htm'); // Act = имя последнего поля в форме $aValues = $metaForm->getFormMeta(); $aValues = $aValues['value']; end($aValues); $tplForm->assign('act', key($aValues)); $tplForm->assign('submit', current($aValues)); // Очищаем places под сообщения валидаторов
/** * LogIn * * @param string $sLogin * @param string $sPassword * * @return boolean */ function login($sLogin, $sPassword) { $aUsers = $this->_Users->get("*"); $bFlagLogin = false; foreach ($aUsers as $v) { if ($v['login'] == $sLogin && $v['password'] == $sPassword) { $_SESSION['user'] = $v; $bFlagLogin = true; break; } } if ($bFlagLogin == false) { cStat::bSaveEvent(EVENT_LOGINFAILED, $sLogin . '=' . $sPassword); return false; } cStat::bSaveEvent(EVENT_LOGIN, $sLogin); // Cookies setcookie('login', $sLogin, mktime(1, 1, 1, 1, 1, 2010), '/'); setcookie('password', $sPassword, mktime(1, 1, 1, 1, 1, 2010), '/'); return true; }