public function unsubscribeAction() { if (system::issetUrl(2) && system::issetUrl(3)) { if (($obj = ormObjects::get(system::url(2))) && $obj->isInheritor('subscription')) { mailingProcess::delEmailById(system::url(3), $obj->id); page::assign('name', $obj->name); return page::parse(lang::get('SUBSCRIPTION_MSG2')); } } return ormPages::get404(); }
public function link_counterAction() { if ($obj = ormPages::get(system::url(2))) { $value = $obj->__get(system::url(3)); if (!empty($value) && file_exists(ROOT_DIR . $value)) { // Увеличиваем счетчик скачиваний if (!isset($_SESSION['counter' . md5(system::url(2) . system::url(3))])) { $field_counter = system::url(3) . '_download'; $obj->__set($field_counter, $obj->__get($field_counter) + 1); $obj->save(); $_SESSION['counter' . md5(system::url(2) . system::url(3))] = 1; } system::redirect($value); } } return ormPages::get404(); }
public function defAction() { return ormPages::get404(); }
static function start() { header('Content-Type: text/html; charset=utf-8'); self::parseUrl(); // Опредяем текущий язык и домен (в случае необходимости обрезаем URL) languages::curLang(); // Устанавливаем в доступ языковые переменные if (file_exists(MODUL_DIR . '/core/sitelang-' . languages::curPrefix() . '.php')) { include MODUL_DIR . '/core/sitelang-' . languages::curPrefix() . '.php'; lang::setLang($LANG); } // Подключаем класс для работы с текущим пользователем user::init(); // активация шаблонной системы self::$defTemplate = '/structure/default.tpl'; page::init('%', '%'); page::globalVar('h1', ''); page::globalVar('title', ''); page::globalVar('site_name', domains::curDomain()->getSiteName()); page::globalVar('base_email', domains::curDomain()->getEmail()); page::globalVar('user_id', user::get('id')); page::globalVar('pre_lang', languages::pre()); page::globalVar('time', time()); page::globalVar('current_url', self::getCurrentUrl()); page::globalVar('current_url_pn', self::getCurrentUrlPN()); page::assign('current_url', self::getCurrentUrl()); page::assign('current_url_pn', self::getCurrentUrlPN()); // Заглушка для IE6 if (reg::getKey('/core/noIE6') && preg_match('/msie/i', $_SERVER['HTTP_USER_AGENT']) && !preg_match('/opera/i', $_SERVER['HTTP_USER_AGENT'])) { $val = explode(" ", stristr($_SERVER['HTTP_USER_AGENT'], 'msie')); if ($val[1] == '6.0;') { page::parseIt('/ieDie.tpl', false, true); system::stop(); } } // Заглушка для IE7 if (reg::getKey('/core/noIE7') && preg_match('/msie/i', $_SERVER['HTTP_USER_AGENT']) && !preg_match('/opera/i', $_SERVER['HTTP_USER_AGENT'])) { $val = explode(" ", stristr($_SERVER['HTTP_USER_AGENT'], 'msie')); if ($val[1] == '7.0;') { page::parseIt('/ieDie.tpl', false, true); system::stop(); } } // Заглушка для IE8 if (reg::getKey('/core/noIE8') && preg_match('/msie/i', $_SERVER['HTTP_USER_AGENT']) && !preg_match('/opera/i', $_SERVER['HTTP_USER_AGENT'])) { $val = explode(" ", stristr($_SERVER['HTTP_USER_AGENT'], 'msie')); if ($val[1] == '8.0;') { page::parseIt('/ieDie.tpl', false, true); system::stop(); } } // Оффлайн сообщение if (!domains::curDomain()->online() && !user::isAdmin() && !(self::issetUrl(0) && self::url(0) == 'mpanel')) { page::globalVar('content', domains::curDomain()->getOfflineMsg()); page::parseIt('/offline.tpl', false, true); system::stop(); } // Генерация файлов robots.txt и sitemap.xml ormPages::getContentFileRobots(); ormPages::getContentFileSiteMap(); // Проверяем, есть ли текущая страница в кэше page::checkCache(); // Вызов макроса через Ajax page::callAjaxMacros(); // Парсим мето-информацию "по умолчанию" page::globalVar('keywords', reg::getKey(ormPages::getPrefix() . '/keywords')); page::globalVar('description', reg::getKey(ormPages::getPrefix() . '/description')); // Загрузка необходимого функционала в зависимости от адреса $content = ''; // Пытаемся загрузить МОДУЛЬ if (self::issetUrl(0)) { $content = self::loadController('controller'); } // Пытаемся загрузить СТРАНИЦУ if (!self::issetUrl(0) || $content === false) { $content = self::loadController('controller', 1, 'structure'); } // Отображение сообщения "Страница не найдена" if (empty($content)) { $content = ormPages::get404(); } // Парсим контент на страницу page::fParse('content', $content); // Версия для печати $print_file = '/structure/_' . self::getCurrentNavVal() . '.tpl'; if (self::getCurrentNavVal() != '' && file_exists(TEMPL_DIR . $print_file)) { self::$defTemplate = $print_file; } if (!self::$isAdmin) { $title = str_replace('%text%', page::getGlobalVar('title'), reg::getKey(ormPages::getPrefix() . '/title_prefix')); page::globalVar('title', $title); if (file_exists(MODUL_DIR . '/core/template/minitext.tpl')) { include MODUL_DIR . '/core/template/minitext.tpl'; } // Мини-тексты, если есть $list = reg::getList(ormPages::getPrefix() . '/minitext'); while (list($id, $val) = each($list)) { //инлайн редактирование if (user::isAdmin() && user::issetRight('minitext_edit', 'structure')) { $val = str_replace('%val%', $val, str_replace('%id%', $id, $TEMPLATE['frame'])); } page::globalVar('text_' . $id, $val); } } // Выводим содержимое на экран page::parseIt(self::$defTemplate); // Завершение работы self::stop(); }
public function activateAction() { if (!reg::getKey('/users/reg') || !reg::getKey('/users/activation')) { system::redirect('/'); } if ($userKey = system::checkVar(system::url(2), isMD5)) { // Ищем нужного пользователя $sel = new ormSelect('user'); $sel->where('md5_flag', '=', $userKey); $sel->limit(1); if ($user = $sel->getObject()) { $key = md5(date('d.m.Y') . 'activate' . $user->id); if ($key == $userKey) { $user->active = 1; $user->md5_flag = ''; $user->save(); // Авторизуем пользователя user::authHim($user); page::globalVar('h1', lang::get('USERS_ADD_H1')); page::globalVar('title', lang::get('USERS_ADD_H1')); return lang::get('USERS_ADD_MSG2'); } } } return ormPages::get404(); }