Ejemplo n.º 1
0
 function view()
 {
     db::table('admin_log_actions');
     db::join('admin_users', 'admin_log_actions', 'user_id');
     db::order('log_date', 'DESC');
     db::limit(30);
     $res = db::select();
     while ($row = mysql_fetch_assoc($res)) {
         $row['log_date'] = dt::format('%d.%m.%Y %H:%M', $row['log_date']);
         s::roll('logs_list', $row);
     }
 }
Ejemplo n.º 2
0
 function start()
 {
     db::connect();
     if (!router::get(1)) {
         return true;
     }
     self::$map = array('mode' => router::get(0), 'app' => router::get(1), 'module' => 'main', 'action' => router::get(2), 'id' => router::get(4));
     s::set('SYS_PATH', 'http://' . SERVER . SYS_DIR);
     define('APP', APPS . self::get('app') . '/');
     s::set('APP', APP);
     define('MODULE', APP . self::get('module') . '/');
     s::set('MODULE', MODULE);
     if (stristr(self::$map['mode'], 'admin')) {
         self::$map['mode'] = 'admin';
     } else {
         self::$map['mode'] = 'web';
     }
     if (self::$map['mode'] == 'admin') {
         if (defined('ADMIN_USER_SITE_ID')) {
             admin::observer();
             define('ADMIN_SITE_ID', ADMIN_USER_SITE_ID);
             s::set('ADMIN_SITE_ID', ADMIN_USER_SITE_ID);
             db::table('admin_sites');
             db::where('site_id', ADMIN_USER_SITE_ID);
             db::limit(1);
             $row = db::select();
             define('ADMIN_SITE', db::get('site_domain'));
             s::set('ADMIN_SITE', ADMIN_SITE);
         }
     } else {
         web::getSite();
         $lang = lang::gets(LANG_INDEX, SITE_ID);
         /*
         	Authentification webUser
         */
         web::observer();
     }
     /*
     	Set params
     */
     params::send();
     if (router::get(0) == 'feed' || router::get(0) == 'rss') {
         self::$map['module'] = 'feed';
     }
     if (self::$map['mode'] == 'admin') {
         load::module(self::get('app'), self::get('module'), self::get('action'));
     } else {
         load::handler(self::get('app'), self::get('module'), self::get('action'));
     }
 }
Ejemplo n.º 3
0
 function show()
 {
     $list = params::get('list');
     $event = web::getEvent();
     if ($event === false) {
         $year = date('Y');
     } else {
         $year = $event;
     }
     s::set('news_date_select', htmlspecialchars($year));
     $sql = "SELECT DATE_FORMAT(`news_date`, '%Y') as date FROM `news` GROUP BY `date` ORDER BY `date` DESC";
     $res = db::query($sql);
     $rows = mysql_num_rows($res);
     if ($rows > 1) {
         s::add('news_date_selector', '<ul class="years">');
         while ($row = mysql_fetch_assoc($res)) {
             if ($row['date'] == $year) {
                 $row['date'] = '<li><span>' . $row['date'] . '</span></li>';
             } else {
                 $row['date'] = '<li><a href="' . web::get('page_folder') . '' . $row['date'] . '/">' . $row['date'] . '</a></li>';
             }
             s::add('news_date_selector', $row['date']);
         }
         s::add('news_date_selector', '</ul>');
     }
     db::table('news');
     db::where('news_pub', '1');
     db::where('news_date', $year . '-01-01 00:00:00', '>=');
     db::where('news_date', $year . '-12-31 23:59:59', '<=');
     db::order('news_date', 'DESC');
     if ($list !== false) {
         db::limit($list);
     }
     $res = db::select();
     if (db::rows() == 0) {
         web::error404();
     }
     while ($row = mysql_fetch_assoc($res)) {
         $row['news_date'] = dt::date2print('%d %F %Y', $row['news_date']);
         s::roll('news', $row);
     }
 }
Ejemplo n.º 4
0
 function load($user_id)
 {
     if (self::$user) {
         return true;
     }
     db::table('admin_users');
     db::where('user_id', $user_id);
     db::where('user_pub', 1);
     db::limit(1);
     self::$user = db::assoc();
     if (db::rows() == 0) {
         admin::logout();
     }
     define("ADMIN_USER_ID", $user_id);
     define("ADMIN_USER_SITE_ID", self::get('site_id'));
     define("ADMIN_USER_GROUP_ID", self::get('group_id'));
     s::set('ADMIN_USER_LOGIN', self::get('user_login'));
     s::set('ADMIN_USER_ID', $user_id);
     return true;
 }
Ejemplo n.º 5
0
 function loadPage($page_id = false, $page_folder = false)
 {
     db::table('pages');
     db::join('templates', 'pages', 'tmpl_id');
     if ($page_id) {
         db::where('page_id', $page_id);
     }
     if ($page_folder) {
         db::where('page_folder', $page_folder);
     }
     db::where('site_id', SITE_ID, '=', 'pages');
     db::limit(1);
     $res = db::select();
     if (db::rows() == 1) {
         $row = mysql_fetch_assoc($res);
         $row = web::pageSettings($row);
         web::$page = $row;
         s::set($row);
     }
 }
Ejemplo n.º 6
0
Archivo: trash.php Proyecto: rigidus/ea
 function dump()
 {
     $tables = implode(', ', self::$tables);
     $conf = implode(', ', self::$conf);
     db::table('admin_log_trash');
     db::order('log_id', 'DESC');
     db::limit(31, 100);
     $res = db::select('log_id');
     if (db::rows() > 0) {
         while ($row = mysql_fetch_assoc($res)) {
             self::delete($row['log_id']);
         }
     }
     if (self::$files) {
         $log_tmpl = 1;
     } else {
         $log_tmpl = 0;
     }
     db::table('admin_log_trash');
     db::insert('', 'NOW()', '', $tables, $conf, '', $log_tmpl, ADMIN_USER_ID);
     $log_id = mysql_insert_id();
     dump::tables(self::$tables);
     dump::backup(SYS_ROOT . 'var/trash/' . $log_id . '_base.zip');
     if (self::$conf) {
         foreach (self::$conf as $v) {
             zipfile::add(SYS_ROOT . 'conf/web/' . $v . '.ini');
         }
         zipfile::create(SYS_ROOT . 'var/trash/' . $log_id . '_conf.zip');
     }
     if (self::$files) {
         foreach (self::$files as $v) {
             zipfile::add($v);
         }
         zipfile::create(SYS_ROOT . 'var/trash/' . $log_id . '_files.zip');
     }
 }
Ejemplo n.º 7
0
 function view()
 {
     db::table('admin_log_trash');
     db::limit(30);
     db::order('log_date', 'DESC');
     $res = db::select();
     while ($row = mysql_fetch_assoc($res)) {
         if ($row['log_restored'] != '0000-00-00 00:00:00') {
             $row['log_restored'] = dt::date2print('%H:%i:%s<br />%d %F %y', $row['log_restored']);
         } else {
             $row['log_restored'] = '';
         }
         $row['log_date'] = dt::date2print('%H:%i:%s<br />%d %F %y', $row['log_date']);
         $tables = '';
         $array = explode(",", $row['log_tables']);
         foreach ($array as $v) {
             if (!empty($v)) {
                 $tables .= T_ . $v . '<br />';
             }
         }
         $row['log_tables'] = $tables;
         s::roll('basket', $row);
     }
 }
Ejemplo n.º 8
0
 function saveVersion($app, $tmpl_file, $code)
 {
     db::table('templates_versions');
     db::where('app', $app);
     db::where('tmpl_file', $tmpl_file);
     db::where('version_code', $code);
     db::order('version_date', 'DESC');
     db::limit(1);
     db::select();
     if (db::rows() == 0) {
         /*
         	delete over 10
         */
         db::table('templates_versions');
         db::where('app', $app);
         db::where('tmpl_file', $tmpl_file);
         db::order('version_date', 'DESC');
         db::limit(10, 100);
         db::delete();
         db::table('templates_versions');
         db::insert('', 'NOW()', $code, $app, $tmpl_file, 0, ADMIN_SITE_ID);
     }
 }
Ejemplo n.º 9
0
Archivo: admin.php Proyecto: rigidus/ea
 function start()
 {
     self::observerLogout('adminlogoff');
     db::connect();
     define('LANG_INDEX', SYS_INDEX);
     $lang = lang::gets(LANG_INDEX);
     define('STYLE_PATH', SYS_DIR . 'gui/' . SYS_STYLE . '/');
     s::set('STYLE_PATH', 'http://' . SERVER . STYLE_PATH);
     define('GUI_PATH', SYS_DIR . 'gui/');
     s::set('GUI_PATH', 'http://' . SERVER . GUI_PATH);
     s::set('SERVER', SERVER);
     s::set('SYS_PATH', 'http://' . SERVER . SYS_DIR);
     s::set('SYS_DIR', SYS_DIR);
     /*
     	Authentification
     */
     $sys_tmpl = 'common';
     $sys_tmpl = 'common';
     if (!self::observer()) {
         $sys_tmpl = 'login';
         s::set('title', 'Legenda');
         self::display($sys_tmpl, $lang);
         return true;
     }
     self::groupRules();
     self::map();
     self::adapter();
     s::set('admin_title', self::$map['title']);
     s::set('admin_header', self::$map['title']);
     s::set('admin_mode', self::$map['mode']);
     define('APP', APPS . self::$map['app'] . '/');
     s::set('APP', APP);
     define('MODULE', APP . self::$map['module'] . '/');
     s::set('MODULE', MODULE);
     /*
     	Get sites list
     */
     db::table('admin_sites');
     $res = db::select();
     if (db::rows() > 1) {
         $str = '<div class="popup popupSimple" id="site_list_load_popup" style="display: none;"><ul>';
         while ($row = mysql_fetch_assoc($res)) {
             if (self::$sites_excl) {
                 if (!isset(self::$sites_excl[$row['site_id']])) {
                     continue;
                 }
             }
             if ($row['site_id'] == ADMIN_USER_SITE_ID) {
                 define('ADMIN_SITE', $row['site_domain']);
                 s::set('ADMIN_SITE', ADMIN_SITE);
                 s::set('admin_site_selector', '&nbsp;<a href="javascript:void(null);" class="ico ico11 ico_popup popupLoad" id="site_list_load">&nbsp;</a>');
             } else {
                 $str .= '<li><a class="popup_right" title="Перейти на сайт" href="http://' . $row['site_domain'] . '"></a><a href="javascript:void(null);"  title="Выбрать сайт" onclick="sysSetSite(' . $row['site_id'] . ');">' . $row['site_domain'] . '</a></li>';
             }
         }
         $str .= '</ul></div>';
         s::set('admin_site_list', $str);
     } else {
         $row = mysql_fetch_assoc($res);
         define('ADMIN_SITE', $row['site_domain']);
         s::set('ADMIN_SITE', ADMIN_SITE);
     }
     define('ADMIN_SITE_ID', ADMIN_USER_SITE_ID);
     s::set('ADMIN_SITE_ID', ADMIN_USER_SITE_ID);
     /*
     	Action tmpls
     */
     if (self::$map['rule'] == 'all') {
         $rule_folder = 'all/';
     } else {
         $rule_folder = RULE . '/';
     }
     // context_menu
     $context_tmpl = MODULE . $rule_folder . self::$map['action'] . '.context.html';
     s::set('admin_context_menu', files::get($context_tmpl));
     // area
     $area_tmpl = MODULE . $rule_folder . self::$map['action'] . '.html';
     s::set('admin_area', files::get($area_tmpl));
     // sidebar
     $sidebar_tmpl = MODULE . $rule_folder . self::$map['action'] . '.bar.html';
     s::set('admin_sidebar', files::get($sidebar_tmpl));
     /*
     	App CSS and JS
     */
     $app_css = 'apps/' . self::$map['app'] . '/' . self::$map['app'] . '.css';
     $app_js = 'apps/' . self::$map['app'] . '/' . self::$map['app'] . '.js';
     if (file_exists(SYS_ROOT . $app_css)) {
         self::insertCSS('http://' . SERVER . SYS_DIR . $app_css);
     }
     if (file_exists(SYS_ROOT . $app_js)) {
         self::insertJS('http://' . SERVER . SYS_DIR . $app_js);
     }
     /*
     	Module CSS and JS
     */
     $module_css = 'apps/' . self::$map['app'] . '/' . self::$map['module'] . '/' . self::$map['module'] . '.css';
     $module_js = 'apps/' . self::$map['app'] . '/' . self::$map['module'] . '/' . self::$map['module'] . '.js';
     if (file_exists(SYS_ROOT . $module_css)) {
         self::insertCSS('http://' . SERVER . SYS_DIR . $module_css);
     }
     if (file_exists(SYS_ROOT . $module_js)) {
         self::insertJS('http://' . SERVER . SYS_DIR . $module_js);
     }
     /*
     	Legenda app, module and action
     */
     load::appSetup(self::$map['app']);
     load::moduleSetup(self::$map['app'], self::$map['module']);
     load::module(self::$map['app'], self::$map['module'], self::$map['action']);
     /*
     	User log
     */
     adminUser::update('user_date_last', 'NOW()', ADMIN_USER_ID);
     /*
     	Action log
     */
     db::table('admin_log_actions');
     db::where('log_path', URI_SELF);
     db::where('user_id', ADMIN_USER_ID);
     db::order('log_date', 'DESC');
     db::limit(1);
     db::select('log_id');
     if (db::rows() == 0) {
         db::table('admin_log_actions');
         db::insert('', 'NOW()', self::get('app'), self::get('module'), self::get('action'), URI_SELF, self::get('title'), ADMIN_USER_ID);
     }
     /*
     	Legenda display
     */
     self::adminMenu();
     self::display($sys_tmpl, $lang);
 }
Ejemplo n.º 10
0
 function saveVersion($tmpl_id, $code)
 {
     db::table('templates_versions');
     db::where('tmpl_id', $tmpl_id);
     db::where('version_code', $code);
     db::order('version_date', 'DESC');
     db::limit(1);
     db::select();
     if (db::rows() == 0) {
         /*
         	delete over 20
         */
         db::table('templates_versions');
         db::where('tmpl_id', $tmpl_id);
         db::order('version_date', 'DESC');
         db::limit(20, 100);
         db::delete();
         db::table('templates_versions');
         db::insert('', 'NOW()', $code, '', '', $tmpl_id, ADMIN_USER_ID, ADMIN_SITE_ID);
     }
 }
Ejemplo n.º 11
0
 function get($name)
 {
     if (!self::$user) {
         db::table('users');
         db::where('user_id', $_SESSION['WEB_USER_ID']);
         db::where('user_pub', 1);
         db::limit(1);
         self::$user = db::assoc();
     }
     if (!isset(self::$user[$name])) {
         return false;
     }
     return self::$user[$name];
 }
Ejemplo n.º 12
0
Archivo: ajax.php Proyecto: rigidus/ea
 function start()
 {
     db::connect();
     if (!router::get(1)) {
         return true;
     }
     self::$map = array('mode' => router::get(0), 'app' => router::get(1), 'module' => 'main', 'action' => router::get(2));
     if (router::get(3)) {
         self::set('module', router::get(2));
         self::set('action', router::get(3));
     }
     s::set('SYS_PATH', 'http://' . SERVER . SYS_DIR);
     define('APP', APPS . self::get('app') . '/');
     s::set('APP', APP);
     define('MODULE', APP . self::get('module') . '/');
     s::set('MODULE', MODULE);
     /*
     	Lang items
     */
     if (self::get('mode') == 'webAjax') {
         web::getSite();
         $lang = lang::gets(LANG_INDEX, SITE_ID);
         /*
         	Authentification webUser
         */
         web::observer();
     } else {
         define('LANG_INDEX', SYS_INDEX);
         $lang = lang::gets(LANG_INDEX);
         admin::observer();
         if (defined('ADMIN_USER_SITE_ID')) {
             define('ADMIN_SITE_ID', ADMIN_USER_SITE_ID);
             s::set('ADMIN_SITE_ID', ADMIN_USER_SITE_ID);
             $group_rules = ini::parse(SYS_ROOT . 'conf/admin/groups.ini', ADMIN_USER_GROUP_ID);
             define('RULE', $group_rules['rule']);
             db::table('admin_sites');
             db::where('site_id', ADMIN_USER_SITE_ID);
             db::limit(1);
             define('ADMIN_SITE', db::get('site_domain'));
             s::set('ADMIN_SITE', ADMIN_SITE);
         }
     }
     /*
     	Set params
     */
     params::send();
     $tmpl = params::get('tmpl');
     $sys = false;
     if (self::get('mode') == 'adminAjax') {
         $sys = true;
     }
     buffer::init(0, self::get('app'), false, $tmpl);
     if (self::get('mode') == 'webAjax') {
         load::handler(self::get('app'), self::get('module'), self::get('action'));
     } else {
         load::module(self::get('app'), self::get('module'), self::get('action'));
     }
     /*
     	Get plugin action
     */
     ob_start();
     /*
     	запуск обработчика с возвратом данных
     	тут два варианта либо данные просто выводим если нет шаблона, а если есть то сначала обрабатываем шаблон
     
     	если буффер полный выводим информацию из него
     */
     $buffer = buffer::gets();
     if ($buffer[0]) {
         if ($sys) {
             buffer::$module = self::get('module');
         }
         $section = params::get('section');
         echo buffer::get($buffer[0]['app'], $buffer[0]['tmpl'], $buffer[0]['data'], $section, $sys);
     }
     $code = ob_get_contents();
     ob_clean();
     s::$mode = 'code';
     s::setTmpl($code, $lang);
     s::display();
 }
Ejemplo n.º 13
0
 function delete($page_id = false, $dump = true)
 {
     if (!$page_id) {
         $page_id = params::get('page_id');
     }
     if ($page_id == 1) {
         return false;
     }
     db::table('pages');
     db::where('page_id', $page_id);
     db::limit(1);
     $page = db::assoc();
     if ($page['page_child'] == '1') {
         return false;
     }
     if ($dump) {
         trash::tables('pages', 'pages_content', 'pages_versions');
         trash::conf('pages', 'blocks', 'menus');
         trash::dump();
     }
     $parent = $page['page_parent'];
     if ($parent != 0) {
         db::table('pages');
         db::where('page_parent', $parent);
         db::select();
         if (db::rows() == 1) {
             db::table('pages');
             db::where('page_id', $parent);
             db::update('page_child', '0');
         }
     }
     db::table('menus_points');
     db::where('site_id', $page['site_id']);
     db::where('point_link', $page['page_folder']);
     db::delete();
     db::table('pages');
     db::where('page_id', $page_id);
     db::delete();
     db::table('pages_content');
     db::where('page_id', $page_id);
     db::delete();
     db::table('pages_versions');
     db::where('page_id', $page_id);
     db::delete();
     conf::delete('pages', $page_id);
     conf::deleteFrom('blocks', 'pages', $page_id);
     conf::deleteFrom('menus', 'pages', $page_id);
     db::table('pages_files');
     db::where('page_id', $page_id);
     $r = db::select();
     while ($a = mysql_fetch_assoc($r)) {
         self::deleteFilesFileForce($a);
     }
 }
Ejemplo n.º 14
0
Archivo: web.php Proyecto: rigidus/ea
 function getSite()
 {
     db::table('admin_sites');
     db::where('site_domain', parent::$site);
     db::where('site_pub', 1);
     db::limit(1);
     $site = db::assoc();
     if ($site) {
         define('SITE_ID', $site['site_id']);
         define('SITE_DOMAIN', $site['site_domain']);
         define('LANG_INDEX', $site['lang_index']);
     } else {
         define('SITE_ID', 0);
         define('SITE_DOMAIN', false);
         define('LANG_INDEX', 'ru');
     }
 }
Ejemplo n.º 15
0
Archivo: db.php Proyecto: rigidus/ea
 function pager($per_page)
 {
     self::$pager_per_page = $per_page;
     self::$pager_uri = '';
     if (isset($_GET['page'])) {
         self::$cur_page = $_GET['page'];
     }
     self::$pager_uri = strtok($_SERVER['REQUEST_URI'], "?") . "?";
     if (count($_GET)) {
         foreach ($_GET as $k => $v) {
             if (!is_array($v)) {
                 if ($k != "page") {
                     self::$pager_uri .= urlencode($k) . "=" . urlencode($v) . "&";
                 }
             }
         }
     }
     $start = abs((self::$cur_page - 1) * self::$pager_per_page);
     db::limit($start, self::$pager_per_page);
     self::$start = $start;
     self::$pager = true;
 }