query("/*!40101 SET NAMES 'cp1251' */"); // Ошибки БД и их отдладка //$DB->setErrorHandler('dErrH'); function dErrH($message, $info) {if (!error_reporting()) return; echo "SQL Error: $message
"; print_r($info); echo "
"; exit();} //Инклудим САПУ if (!defined('_SAPE_USER')) {define('_SAPE_USER', $cf['dir']['sape']); } if (file_exists($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php')) {require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'); } //Загружаем шаблон $shab = file_get_contents('templ.php'); if ($shab == '') die('Ошибка файла шаблона!'); //Если у нас заполнили форму - отправляем почту if ($_POST['name']!="" and $_POST['email']!="" and $cf['conf']['email']!=""){ $date=date("d.m.Y"); $time=date("H:i:s"); $headers=null; $headers.="Content-Type: text/html\r\n"; $headers.="From: Satl Bot <".$email.">\r\n"; $headers.="X-Mailer: PHP/".phpversion()."\r\n"; mail ($cf['conf']['email'], $cf['txt']['head1'].$sub, 'Имя:'.$_POST['name'].'
Связь:'.$_POST['email'].'
Сообщение:'.$_POST['text'], $headers);} //Разбираем ЧПУ //Что? if ($_GET['cat_txt'] == $cf['pref']['adres']) $args['type'] = "adres"; else if ($_GET['cat_txt'] == $cf['pref']['stati'] or $_GET['cat_txt'] == $cf['pref']['stati']."s") $args['type'] = "stati"; //else if ($_GET['cat_txt'] == $cf['pref']['pict'] or $_GET['cat_txt'] == $cf['pref']['pict']."s") $args['type'] = "pict"; //else if ($_GET['cat_txt'] == $cf['pref']['news'] or $_GET['cat_txt'] == $cf['pref']['news']."s") $args['type'] = "news"; else if ($_GET['cat_txt'] == "sitemap") $args['type'] ='sitemap'; else if ($_GET['cat_txt'] == $cf['pref']['cont']) $args['type'] ='contact'; else if ($_GET['cat_txt'] == $cf['pref']['add']) $args['type'] ='add'; else if (count($_GET) == 0) $args['type'] ='morda'; else header("HTTP/1.1 404 Not Found"); //Кто? if (isset($_GET['id'])) {$args['id'] = $_GET['id']; $args['type2'] = "odin";} if (isset($_GET['cat'])) {$args['cat'] = $_GET['cat']; $args['type2'] = "mnogo";} //Страницы if (isset($_GET['page'])) $args['page'] = $_GET['page']; else $args['page'] = 1; //Разруливаем ЧПУ фиксы $ids = @$DB->select('SELECT menuid FROM '.$args['type'].' GROUP BY menuid'); if (count($ids) == 1 and !isset($_GET['id'])){ $args['cat'] = $ids[0]['menuid']; $args['type2'] = "mnogo"; $args['type3'] = "short"; if (isset($_GET['cat'])) $args['page'] = $_GET['cat'];} if (count($ids) == 0) $args['type3'] = "short"; //Фикс карты сайта if ($args['type'] == 'sitemap') { if (!isset($args['id'])) $args['id'] = 1; $page = $args['id']; unset($args); $args['type'] = 'sitemap'; $args['page'] = $page; unset($page); } //Фикс xml карты сайта if ($args['type'] == 'sitemap' and $_GET['type'] == 'xml' or $_GET['type'] == 'feed') { unset($args); $args['type'] = 'sitemap'; $args['type2'] = $_GET['type']; unset($page); } //Отладочная хуйня :) //print_r($args); // //Генерация меню // function print_menu(){ global $args, $cf, $DB; $return = ''; $old_type = $args['type']; $args['type'] = "adres"; if ($args['type'] == 'adres') $rows = $DB->select('SELECT menuid, count(menuid) as num, menutxt as menu FROM '.$args['type'].' WHERE date<=CURDATE() GROUP BY menuid'); else $rows = $DB->select('SELECT menuid, count(menuid) as num, menutxt as menu FROM '.$args['type'].' GROUP BY menuid ORDER by num DESC'); foreach ($rows as $numRow => $row) { $row['link'] = "/".$cf['pref'][$args['type']]."s/".$row['menuid']; if ($args['cat'] == $row['menuid'] and $args['type3'] != 'short') $return .= shabreplace($row, $cf['shab']['menu1'])."\n"; else $return .= shabreplace($row, $cf['shab']['menu'])."\n"; } $args['type'] = $old_type; return $return; } // //Генерируем контент // function print_content(){ global $args, $cf, $shab, $DB; $return = ''; //Если морда - возваращаем контент на морде :) if ($args['type'] == 'morda') { $return .= $cf['txt']['morda']; $shab = str_replace("{title}", $cf['title']['morda'], $shab); $shab = str_replace("{desc}", $cf['desc']['morda'], $shab); } // Если запросили текстовую страницу - выдаём контент //Контакты if ($args['type'] == 'contact'){ $return=$cf['text']['cont']; $return .='

Ваше имя:

Адрес для связи с Вами:

Сообщение:


'; $shab = str_replace("{title}", $cf['text']['cont'], $shab); $shab = str_replace("{desc}", $cf['text']['cont'], $shab); if ($_POST['name']!="") $return='

Спасибо!

Мы с Вами обязательно свяжемся в ближайшее время!';} //Добавление компании if ($args['type'] == 'add'){ $return=$cf['text']['add']; $return .= '
(все поля обязательны для заполнения)

Ваше имя:

Адрес для связи с Вами:

Ваш вопрос или сообщение:


'; $shab = str_replace("{title}", $cf['text']['add'], $shab); $shab = str_replace("{desc}", $cf['text']['add'], $shab); if ($_POST['name']!="") $return='

Спасибо!

Мы с Вами обязательно свяжемся в ближайшее время!';} //Карта сайта if ($args['type'] == 'sitemap'){ //Фид статей if ($args['type2'] == "feed") { header("content-type: application/rss+xml"); echo "\n\n\n".$cf['title']['morda']."\n http://".$_SERVER["HTTP_HOST"]."\n".$cf['title']['morda']."\nru-ru\n ".date("D, d M y H:i:s O")."\n".date("D, d M y H:i:s O").""; // $cats1 = $DB->select('SELECT id, name, dop FROM stati'); foreach ($cats1 as $numRow => $row) { echo "".$row['zag']."\n".date("D, d M y H:i:s O")." \nhttp://".$_SERVER["HTTP_HOST"]."/".$cf['pref']['stati']."/".$row['id']."\n".$row['name']." \n"; } // echo "\n"; DIE; } // $return = "

Карта сайта

'.print_links(count($karta),$args['page'],100,15,'/sitemap'); /// $shab = str_replace("{title}", "Карта сайта", $shab); $shab = str_replace("{desc}", "Карта сайта", $shab); } //Если задана категория -> Выдаём список if ($args['type2'] == "mnogo"){ //Конструируем запрос if ($args['type'] == 'adres') $rows = $DB->selectPage($totalPage, 'SELECT * FROM '.$args['type'].' WHERE menuid=? and date<=CURDATE() ORDER by price LIMIT ?d, ?d', $args['cat'],($args['page']-1)*10, 10); //else if ($args['type'] == 'news') //{ //$rows = $DB->selectPage($totalPage, 'SELECT * FROM '.$args['type'].' WHERE menuid=? and ilink!=123 ORDER by date DESC LIMIT ?d, ?d', $args['cat'],($args['page']-1)*10, 10); //$shab = str_replace("{title}", "Новости", $shab); //$shab = str_replace("{desc}", "Новости", $shab); //} else $rows = $DB->selectPage($totalPage, 'SELECT * FROM '.$args['type'].' WHERE menuid=? LIMIT ?d, ?d', $args['cat'],($args['page']-1)*10, 10); $cf['txt'][$args['type']] = str_replace("{num}", $totalPage, $cf['txt'][$args['type']]); $return .= str_replace("{cat_title}", $rows[0]['menutxt'], $cf['txt'][$args['type']]); foreach ($rows as $numRow => $row){ $row['link'] = "/".$cf['pref'][$args['type']]."/".$row['id']; if ($args['type'] == 'stati') { $shab = str_replace("{title}", "Статьи", $shab); $shab = str_replace("{desc}", "Статьи", $shab); $row['dop'] = substr($row['dop'], 0, 200)."..."; } $city_id = 1; if ($args['type'] == 'adres') $row['price'] = GetPrice($city_id, $row['id']); $return .= shabreplace($row, $cf['shab'][$args['type']])."\n"; $for_title = $row['menutxt']; } //Выдаём страницы if ($args['type3'] == 'short') $return .= ''; else $return .= ''; } if ($args['type2'] == "odin"){ //Конструируем запрос $row = $DB->selectRow('SELECT * FROM '.$args['type'].' WHERE id=? LIMIT 1', $args['id']); if ($args['type'] == 'adres') { $row['price'] = GetPrices($row['id']); $row['back_link'] = "/".$cf['pref'][$args['type']]."s/".$row['menuid']; } $return = shabreplace($row, $cf['shabf'][$args['type']]); $for_title = $row['name']; } //$return = str_replace("[name_cat]", $for_title, $return); $shab = str_replace("{title}", $for_title, $shab); $for_title = str_replace("\"", "", $for_title); $shab = str_replace("{desc}", $for_title, $shab); return $return; } //Функция выдачи последних данных function print_rekl($type) { global $cf, $DB; $return = ''; if ($type == "adres") $rows = $DB->select('SELECT * FROM '.$type.' WHERE date<=CURDATE() ORDER by date DESC LIMIT 3'); if ($type == "stati") $rows = $DB->select('SELECT * FROM '.$type.' LIMIT 3'); //if ($type == "news") $rows = $DB->select('SELECT * FROM '.$type.' WHERE date != 0000-00-00 ORDER by date DESC LIMIT 3'); foreach ($rows as $numRow => $row){ $row['price'] = ''; if ($type == "stati") { $row['dop'] = substr($row['dop'], 0, 100)."..."; $row['dop'] = preg_replace("!<(.*?)>!si","", $row['dop']); } $row['link'] = "/".$cf['pref'][$type]."/".$row['id']; $return .= shabreplace($row, $cf['shab'][$type])."\n"; } //if ($type == "news") $return .= "все новости ..."; if ($type == "stati") $return .= "

все статьи ...

"; return $return; } //Функция замены массив - шаблон function shabreplace($arr, $shab) { $arr_names = array_keys($arr); $arr_count = count($arr_names); for ($i=0; $i<$arr_count; $i++) $shab = str_replace("{".$arr_names[$i]."}",$arr[$arr_names[$i]], $shab); // $shab = preg_replace("!{(.*?)}!si","", $shab); return $shab; } //Функция, которая формируеи одну лучшую цену function GetPrice($cid, $tid) { global $DB, $cf, $m_mounth; $adr = $DB->selectRow('SELECT * FROM price WHERE id=? ORDER BY price ASC LIMIT 1', $tid); $spryag = array('Москва'=>'Москве', 'Санкт-Петербург'=>'Санкт-Петербурге', 'Новосибирск'=>'Новосибирске', 'Екатеринбург'=>'Екатеринбурге', 'Нижний Новгород'=>'Нижнем Новгороде', 'Самара'=>'Самаре', 'Омск'=>'Омске', 'Казань'=>'Казани', 'Челябинск'=>'Челябинске', 'Ростов-на-Дону'=>'Ростове-на-Дону'); $adr['citytxt'] = $spryag[$adr['citytxt']]; if ($adr['tel'] == '') $adr['tel'] = 'уточняется'; //print_r($adr); if (count($adr) > 1) return shabreplace($adr, $cf['shab']['price']); if (count($adr) <= 1) return "К сожалению, по городам информации нет!"; } //Функция, которая формируеи все лучшие цены function GetPrices($tid) { global $DB, $cf, $m_mounth; $adr = $DB->select('SELECT * FROM price WHERE id=? ORDER BY price ASC', $tid); foreach ($adr as $numRow => $row) { $spryag = array('Москва'=>'Москве', 'Санкт-Петербург'=>'Санкт-Петербурге', 'Новосибирск'=>'Новосибирске', 'Екатеринбург'=>'Екатеринбурге', 'Нижний Новгород'=>'Нижнем Новгороде', 'Самара'=>'Самаре', 'Омск'=>'Омске', 'Казань'=>'Казани', 'Челябинск'=>'Челябинске', 'Ростов-на-Дону'=>'Ростове-на-Дону'); $row['citytxt'] = $spryag[$row['citytxt']]; if ($row['tel'] == '') $row['tel'] = 'уточняется'; $rez .= shabreplace($row, $cf['shab']['price']); } if (count($adr) > 3) return $rez; if (count($adr) <= 3) return "К сожалению, по городам информации нет!"; } function GenKartaLinks() { global $DB; $count = $DB->selectCell('SELECT count(name) FROM adres WHERE date<=CURDATE()'); $numpage = ceil($count/100)+1; for ($i=1; $i<$numpage; $i++) $return .= ''.$i.' '; return $return; } //Функция выдачи страниц function print_links($total,$page,$number,$links,$link){ global $cf; $i=1; $return = 'Страницы: '; $pages = ceil($total/$number); if ($pages>8) { if ($page>4) $i=$page-4; if ($page>4 and $pages-$page>4) $pages=$page+4; if ($page<=4) $pages=$page+9-$page; } for ($i;$i<=$pages;$i++){ if ($i==1 and $i!=$page) $return .= ' | '.$i.' | '; if ($i!=1 and $i!=$page) $return .= ''.$i.' | '; if ($i==$page) $return .= ''.$i.' | ';} if ($total<=$number) $return = null; return $return;} //Загружаем шаблон $shab = str_replace("{menu}", print_menu(), $shab); $our_pizdatii_content = print_content(); //Тестово - отладочно! if ($our_pizdatii_content == '') $shab = str_replace("{content}", "

404

Извините, такая страница не найдена!", $shab); else $shab = str_replace("{content}", $our_pizdatii_content, $shab); //Два заголовка $shab = str_replace("{name}", $cf['title']['morda'], $shab); $shab = str_replace("{slogan}", $cf['desc']['morda'], $shab); //Заменяем меню. Изменить в главном! $shab = str_replace("{llink1}", $cf['pref']['adres'], $shab); $shab = str_replace("{llink2}", $cf['pref']['stati'], $shab); $shab = str_replace("{llink4}", $cf['pref']['pict'], $shab); $shab = str_replace("{llink5}", $cf['pref']['cont'], $shab); $shab = str_replace("{llink6}", $cf['pref']['add'], $shab); //Реклама $shab = str_replace("{last_stati}", print_rekl("stati"), $shab); $shab = str_replace("{last_adres}", print_rekl("adres"), $shab); if ($args['type'] == 'morda') $shab = str_replace("{site_map}", "
".GenKartaLinks(), $shab); else $shab = str_replace("{site_map}", "", $shab); if ($args['type'] == 'morda') $shab = str_replace("{site_map}", "
".GenKartaLinks(), $shab); else $shab = str_replace("{site_map}", "", $shab); //---------- ПЛАГИН ДЛЯ ГОГЕТА, ЁПТ -------------------///// $link_array = parse_ini_file("links.ini"); if ($args['type'] == "morda") $urll = "/"; else if (isset($link_array[$_SERVER["REQUEST_URI"]])) $urll = $_SERVER["REQUEST_URI"]; else if (isset($link_array[$_SERVER["REQUEST_URI"]."/"])) $urll = $_SERVER["REQUEST_URI"]."/"; if ($urll != "") $shab = str_replace("{ggl}", $link_array[$urll], $shab); else $shab = str_replace("{ggl}", "", $shab); //Конец кода //Кесарю - кесорево, Сапе - сапино :) if ($cf['link']['sape'] == 1) { /*$sape = new SAPE_client(); $shab = str_replace("{sape}", $sape->return_links(1), $shab); $shab = str_replace("{sape2}", $sape->return_links(), $shab);*/ $host = "carlysimon.net"; // например yandex.ru, reklama.ru ( без http://, без / на конце и без www.) $charset = "windows-1251"; // ещё может быть например utf-8 $res_links = ""; $params = "&check1=".urlencode($_SERVER['HTTP_USER_AGENT'])."&check2=".urlencode($_SERVER['REMOTE_ADDR']); if(function_exists('curl_init')) { if($ch = @curl_init()) { @curl_setopt($ch, CURLOPT_URL, "http://slinks.su/get_links.php?url=".urlencode($_SERVER['REQUEST_URI']).$params."&host=$host&charset=$charset"); @curl_setopt($ch, CURLOPT_HEADER, false); @curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); @curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3); if ($data = @curl_exec($ch)) { $res_links = $data; } @curl_close($ch); } } else { $timeout = ini_get('default_socket_timeout'); ini_set('default_socket_timeout', 3); $res_links = @file_get_contents("http://slinks.su/get_links.php?url=".urlencode($_SERVER['REQUEST_URI']).$params."&host=$host&charset=$charset"); ini_set('default_socket_timeout', $timeout); } $shab = str_replace("{sape}", $res_links, $shab); } else $shab = str_replace(array("{sape}","{sape2}"), "", $shab); //Футер $shab = str_replace("{txt.c1}", $cf['txt']['c1'], $shab); $shab = str_replace("{txt.c}", $cf['txt']['c'], $shab); // // биржа uniplacer // require_once($_SERVER['DOCUMENT_ROOT'].'/uniplacer_config.php'); require_once($_SERVER['DOCUMENT_ROOT'].'/'._UNIPLACE_USER_.'/uniplacer.php'); $Uniplacer = new Uniplacer(_UNIPLACE_USER_); $Uniplacer->GetCode(); $links = $Uniplacer->GetLinks(); $uniplacer = ''; if($links){ foreach($links as $link){ $uniplacer .= $link.' '; } } $shab = str_replace("{uniplacer}", $uniplacer, $shab); // echo $shab; ?>