p006/set/int.php

128 lines
5.9 KiB
PHP
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
#namespace anySite\initSite;
session_start();
class Core{
/* ---------------------------------------------------------------------------------------------------------- */
function __construct($default_mod="main"){
//Важные константы, но надо бы от них уходить...
//define ( 'MYDIR', $_SERVER['DOCUMENT_ROOT'] );
define ('SITE', $_SERVER['SERVER_NAME']);
define ( 'SMARTY_DIR', MYDIR . '/api/soft/smarty/4.1.0/libs/' );
define ( 'TMPDIR', '/tmp/cache/' . $_SERVER['SERVER_NAME'] );//смотрим куда кешировать
//Создаем каталоги если нет
@mkdir('log', 0700); //Папка для логов
@mkdir ( TMPDIR, 0700 );
//выбор ИД
if ( isset ( $_GET['id'] ) )
define('ID', @$_GET['id']);
else
define('ID', 1);
if (@$_SESSION['user_id']) define('MYID', $_SESSION['user_id']);
}
/* ---------------------------------------------------------------------------------------------------------- */
function detect_ip() {
$ip = false;
if (isset($_SERVER["HTTP_X_FORWARDED_FOR"]) and preg_match("#^[0-9.]+$#", $_SERVER["HTTP_X_FORWARDED_FOR"])) {
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}
else if (isset($_SERVER["HTTP_X_REAL_IP"]) and preg_match("#^[0-9.]+$#", $_SERVER["HTTP_X_REAL_IP"])) {
$ip = $_SERVER["HTTP_X_REAL_IP"];
}
else if (preg_match("#^[0-9.]+$#", $_SERVER["REMOTE_ADDR"])) {
$ip = $_SERVER["REMOTE_ADDR"];
}
return $ip;
}
/* ---------------------------------------------------------------------------------------------------------- */
function login_cookies ( $db ) {
//print_r($_COOKIE);
if ( @$_COOKIE['cookies'] && !@$_SESSION['user_id']){
$res = $db->from_j ( base64_decode ( $_COOKIE['cookies'] ) );
unset( $res['capcha'] );
unset( $res['dostup'] );
unset( $res['test'] );
$res2['id']=$res['user_id'];
$res2['pwd']=$res['pwd'];
//print_r($res2);
$act = $db -> get_val( 'users', $res2, 'act' );
if ( $act ==1 ){
$a['user_id'] = $res2['id'];
$dostup = $db -> get_val ( 'users', $res2, 'dostup' );
if ( $dostup ) {
$_SESSION['user_id'] = $res2['id'];
$_SESSION['dostup'] = $dostup;
}
}
}
}
}
$core = new Core();
require_once SMARTY_DIR . 'Smarty.class.php';
$smarty = new Smarty();
$smarty->assign('conf', MYDIR . '/set/config.conf');/*Константа подвала*/
//$smarty->config_load(MYDIR . '/set/config.conf');
define('USER_IP', $core -> detect_ip());
require_once MYDIR . '/set/conf.php'; //цепляем конфиги
//require_once MYDIR . '/api/php/' . $set['bd_type']; //вызываем апи для работы с мускулом
require_once MYDIR . '/api/php/mysql7.php'; //вызываем апи для работы с мускулом
//use anySite\db as db;
$db = new MySQL(BD_NAME, BD_TYPE, BD_HOST, BD_USER, BD_PWD, 'global');
//$db2 = new MySQL('p006', 'MYSQL', 'yurecnt.ru', 'admin', '32143214', 'global');
//if (BD_TYPE!='SQLITE3')
//$db -> connect( $set['bd_host'], $set['bd_user'], $set['bd_pass'], $set['bd_name'] );
$db -> debug = 1;//логирование в API - 1 - да, 0 нет, 2 - выводит в браузер
$db->user_browser($_SERVER['HTTP_USER_AGENT']);
if ( !@$_SESSION['user_id'] ) $core -> login_cookies( $db );
//$smarty->template_dir = MYDIR . '/api/modules/' . MOD;
$smarty->compile_dir = TMPDIR . '/';
$smarty->config_dir = MYDIR . '/int/config/';
$smarty->cache_dir = TMPDIR . '/';
$smarty->assign('header', 'skin/inc/header.html');/*Константа шапки*/
$smarty->assign('menu', 'skin/inc/menu.html');/*Константа шапки*/
$smarty->assign('footer', 'skin/inc/footer.html');/*Константа подвала*/
if (SITE!='new.yurecnt.ru' && SITE!='etalon.yurecnt.ru' && SITE!='creativewebstudio.ru' && SITE!='tk-ligat.ru' && SITE !='p006.yurecnt.ru'){//Костыль для внедрения новой админки
$smarty->assign('header_admin', 'api/admin_skin/inc/header.html');/*Константа шапки*/
$smarty->assign('menu_admin', 'api/admin_skin/inc/menu.html');/*Константа шапки*/
$smarty->assign('footer_admin', 'api/admin_skin/inc/footer.html');/*Константа подвала*/
}else{
$smarty->assign('header_admin', 'api/admin/inc/header.html');/*Константа шапки*/
$smarty->assign('menu_admin', 'api/admin/inc/menu.html');/*Константа шапки*/
$smarty->assign('footer_admin', 'api/admin/inc/footer.html');/*Константа подвала*/
}
//указываем путь к настройкам модуля (можно вынести в глобал, но пока нет смысла, если не все модули настраиваются)
$smarty -> assign( 'modal_settings', MYDIR . '/api/modules/' . MOD . '/modal.html' );
//проверяем, есть ли у модуля настройки, запрашиваем из базы по модулю json, если ничего не пришло, создаем строкуы
unset($a);
$a['mod']=MOD;
$id_set=$db->get_val('settings', $a, 'id');
if (!$id_set)
$db->add ('settings', $a);
else
$json_set=$db->get_val('settings', $a, 'json');
$mod_settings = json_decode($json_set, true);
//print_r($mod_settings);
$smarty -> assign( 'mod_settings', $mod_settings);
//print_r($settings);
include_once MYDIR . '/api/modules/' . MOD . '/class.php';//бля....... акт не работает =(
include_once MYDIR . '/api/modules/' . MOD . '/index.php';
?>