<?php
@session_name('SESS');
@session_start();
$sess = addslashes(session_id());
if (!preg_match('#[A-z0-9]{32}#i',$sess)) 
  $sess = md5(rand(09009,999999));
/* ***************************************************************** */
$set = array(); // массив с настройками
$set_default = array();
$set_dinamic = array();
$set_replace = array();

// загрузка настроек по умолчанию. Позволяет исключить отсутствие неопределенных переменных
$default = @parse_ini_file(H.'kernel/data/default.ini',true);
$set_default = @$default['DEFAULT'];
$set_replace = @$default['REPLACE'];

if ($fset = @file_get_contents(H.'kernel/data/settings_6.2.dat')) $set_dinamic = unserialize($fset);

$set = @array_merge ($set_default, $set_dinamic, $set_replace);

if ($set['show_err_php']) {
  	error_reporting(E_ALL); 
  	ini_set('display_errors', true); 
}

if (isset($_SERVER["HTTP_USER_AGENT"]) && preg_match('#up-browser|blackberry|windows ce|symbian|palm|nokia#i', $_SERVER["HTTP_USER_AGENT"]))
$webbrowser = false;

elseif (isset($_SERVER["HTTP_USER_AGENT"]) && (preg_match('#windows#i', $_SERVER["HTTP_USER_AGENT"]) || 
        preg_match('#linux#i', $_SERVER["HTTP_USER_AGENT"]) || preg_match('#bsd#i', $_SERVER["HTTP_USER_AGENT"]) || 
        preg_match('#x11#i', $_SERVER["HTTP_USER_AGENT"]) || preg_match('#unix#i', $_SERVER["HTTP_USER_AGENT"]) || 
        preg_match('#macos#i', $_SERVER["HTTP_USER_AGENT"]) ||preg_match('#macintosh#i', $_SERVER["HTTP_USER_AGENT"])))
$webbrowser = true;

else 
$webbrowser = false;

$set['web'] = false;







/* === === Подключения к MySQL === === */
$pdo = new PDO("mysql:host=".DB_HOST.";dbname=".DB_NAME.";charset=UTF8", DB_USER, DB_PASS);
$pdo->query('SET NAMES utf8');

if(!($db = @mysql_connect(DB_HOST, DB_USER, DB_PASS))){
	echo ''.DOMAIN.'  - Нет соединения с сервером базы<br />*проверьте параметры подключения';
	exit; }

if (!@mysql_select_db(DB_NAME, $db)){
	echo ''.DOMAIN.' - База даных не найдена<br />*проверьте, существует ли данная база';
	exit; }

mysql_query('set charset utf8', $db);
mysql_query('SET names utf8', $db);
mysql_query('set character_set_client="utf8"', $db);
mysql_query('set character_set_connection="utf8"', $db);
mysql_query('set character_set_result="utf8"', $db);












/* ***************************************************************** */
$ipa = false;
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARDED_FOR']!='127.0.0.1' && preg_match("#^([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$#",$_SERVER['HTTP_X_FORWARDED_FOR']))
{
	$ip2['xff'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
	$ipa[] = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
if(isset($_SERVER['HTTP_CLIENT_IP']) && $_SERVER['HTTP_CLIENT_IP']!='127.0.0.1' && preg_match("#^([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$#",$_SERVER['HTTP_CLIENT_IP']))
{
	$ip2['cl'] = $_SERVER['HTTP_CLIENT_IP'];
	$ipa[] = $_SERVER['HTTP_CLIENT_IP'];
}
if(isset($_SERVER['REMOTE_ADDR']) && preg_match("#^([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$#",$_SERVER['REMOTE_ADDR']))
{
	$ip2['add'] = $_SERVER['REMOTE_ADDR'];
	$ipa[] = $_SERVER['REMOTE_ADDR'];
}

$ip = $ipa[0];

$iplong = ip2long($ip);

if (isset($_SERVER['HTTP_USER_AGENT']))
{
	$ua = $_SERVER['HTTP_USER_AGENT'];
	$ua = strtok($ua, '/');
	$ua = strtok($ua, '('); // оставляем только то, что до скобки
	$ua = preg_replace('#[^a-z_\./ 0-9\-]#iu', null, $ua); // вырезаем все "левые" символы

	// Опера мини тоже посылает данные о телефоне :)
	if (isset($_SERVER['HTTP_X_OPERAMINI_PHONE_UA']) && preg_match('#Opera#i',$ua))
	{
		$ua_om = $_SERVER['HTTP_X_OPERAMINI_PHONE_UA'];
		$ua_om = strtok($ua_om, '/');
		$ua_om = strtok($ua_om, '(');
		$ua_om = preg_replace('#[^a-z_\. 0-9\-]#iu', null, $ua_om);
		$ua = 'Opera Mini ('.$ua_om.')';
	}

}
else $ua = 'Нет данных';
/* ************************************************************ */
// Загрузка настроек из файла "kernel/settings.php"
//require_once H.'kernel/settings.php';
// Загрузка остальных функций из папки "kernel/function"
$opdirbase = opendir(H.'kernel/function');
while ($filebase = readdir($opdirbase))
  if (preg_match('#\.php$#i', $filebase)) 
	require_once(H.'kernel/function/'.$filebase);
?>
