error_reporting(0);
class Page
{
var $content;
var $pagename;
var $mainpagelink;
var $mainpagename;
var $mainpagenio;
var $lang;
var $title;
var $link;
var $keywords;
var $description;
var $nio;
var $menushow;
var $num_mainmenu;
var $pages_list;
var $total_num_res;
// connect to database
function db_connect() {
global $mysql_db_hostname, $mysql_db_username, $mysql_db_password, $mysql_db_database;
$mysqldb = mysql_pconnect($mysql_db_hostname, $mysql_db_username, $mysql_db_password);
mysql_select_db($mysql_db_database);
mysql_query ("set character_set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
if (!$mysqldb) {
echo 'Ошибка базы данных:
ошибка подключения.
';
}
}
function create_main_menu() {
global $HTTP_PATH, $SITE_DIR, $lang_link;
$query = "select * from mainsite where (menupos = 'main' || menupos = 'mred' || menupos = 'mra') && lang = '".$this -> lang."' order by nio";
$result = mysql_query($query);
$this -> num_mainmenu = $num_results = mysql_num_rows($result);
for ($i=0; $i <$num_results; $i++) {
$menu = mysql_fetch_array($result);
$sub = $this -> create_sub_menu($menu['nio'],'main');
if ($menu['menupos'] != 'mra')$out .= '
Страницы: ";
for ($i = 0; $i < $totalpages; $i++) {
$j=0;
$j = $i + 1;
if ($j == $page) $this -> pages_list .= '
'.$j.'';
else $this -> pages_list .= '
'.$j.'';
}
$this -> pages_list .= "
";
} else {
$page = 1;
}
$from = ($page - 1) * $rop;
$query = "$query LIMIT $from,$rop";
return $this -> exec_query($query);
}
function get_page($lang, $link, $tmpl_name) {
global $TEMPLATE_DIR, $JS_DIR, $HTTP_PATH, $lang_path, $lang_link;
$this -> db_connect();
$this -> get_page_info($lang, $link);
$this -> page_builder($tmpl_name);
}
//PageBuilder 1.0----------------------------------
function page_builder($tmpl_name) {
global $TEMPLATE_DIR, $JS_DIR, $HTTP_PATH, $SITE_DIR, $lang_link;
if (!$tmpl_name) $tmpl_name = 'general_';
$file = file_get_contents($HTTP_PATH.$SITE_DIR.$TEMPLATE_DIR.'header_'.$this -> lang.'.tpl');
$file .= file_get_contents($HTTP_PATH.$SITE_DIR.$TEMPLATE_DIR.$tmpl_name.$this -> lang.'.tpl');
$file .= file_get_contents($HTTP_PATH.$SITE_DIR.$TEMPLATE_DIR.'footer_'.$this -> lang.'.tpl');
$pattern[0] = '[:KEYWORDS:]';
$replace[0] = $this -> keywords;
$pattern[1] = '[:DESCRIPTION:]';
$replace[1] = $this -> description;
$pattern[2] = '[:TITLE:]';
$replace[2] = $this -> title;
$pattern[3] = '[:HTTP_PATH:]';
$replace[3] = $HTTP_PATH;
$pattern[4] = '[:JS:]';
$replace[4] = $JS_DIR;
$pattern[5] = '[:ALT:]';
$replace[5] = $this -> keywords;
$pattern[6] = '[:LANGSEL:]';
$replace[6] = $this -> select_lang();
$pattern[7] = '[:MAINMENU:]';
$replace[7] = $this -> create_main_menu();
$pattern[8] = '[:NEWS:]';
$replace[8] = $this -> news_shot($this -> lang);
$pattern[9] = '[:CONTENT:]';
$replace[9] = $this -> content;
$pattern[10] = '[:LANG_LINK:]';
$replace[10] = $lang_link[$this -> link];
$pattern[11] = '[:MENU2:]';
$replace[11] = $this -> create_sub_menu();
$pattern[12] = '[:MAINPAGENAME:]';
$replace[12] = $this -> mainpagename;
$pattern[13] = '[:MENU_INDEX:]';
$replace[13] = $this -> create_sub_menu('zero');
$pattern[14] = '[:MAINPAGENIO:]';
$replace[14] = $this -> mainpagenio;
$pattern[15] = '[:BROWSER_STYLE:]';
$replace[15] = $this -> get_browser_style();
$pattern[16] = '[:FOOTERMENU:]';
$replace[16] = $this -> create_all_menu();
$pattern[17] = '[:SITE_DIR:]';
$replace[17] = $SITE_DIR;
$pattern[18] = '[:NEWS_SHROT:]';
$replace[18] = $this -> news_shot();
$file_built = str_replace($pattern,$replace,$file);
//$file_built = str_replace('[:ALT:]',$this -> keywords,$file);
echo $file_built;
}
function get_page_content($item,$fieldselect,$fieldout) {
$row = $this -> row_from_query("select * from mainsite where $fieldselect = '".$item."' && lang = '".$this -> lang."'");
return $row[$fieldout];
}
function get_browser_style() {
global $HTTP_PATH, $SITE_DIR;
$agent=getenv("HTTP_USER_AGENT");
if(strlen($agent)>2&&!strstr($agent,'MSIE')) return "\n@import url(\"".$HTTP_PATH.$SITE_DIR.'styles_ff.css");'."\n";
else return "\n@import url(\"".$HTTP_PATH.$SITE_DIR.'styles_ie.css");'."\n";
}
function select_lang() {
global $HTTP_PATH,$lang_link;
if ($this -> lang == 'ru') return '/