<?php
#-----------------------------------------------------#
# ********* WAP-MOTORS ********* #
# Made by : VANTUZ #
# E-mail : [email protected] #
# Site : http://pizdec.ru #
# WAP-Site : http://visavi.net #
# ICQ : 36-44-66 #
# Вы не имеете право вносить изменения в код скрипта #
# для его дальнейшего распространения #
#-----------------------------------------------------#
if (!defined('BASEDIR')) { header('Location:../index.php'); exit; }
if (isset($_SERVER['PHP_SELF'])) {$php_self = check(substr($_SERVER['PHP_SELF'],1));}
if (isset($_SERVER['REQUEST_URI'])) {$request_uri = check(urldecode(substr(strtok($_SERVER['REQUEST_URI'],'S'),1)));} else {$request_uri = 'index.php';}
if (isset($_SERVER['HTTP_REFERER'])) {$http_referer = check(urldecode(strtok($_SERVER['HTTP_REFERER'],'S')));} else {$http_referer = 'Не определено';}
if (empty($_SESSION['log'])) {$username = $config['guestsuser'];} else {$username = $_SESSION['log'];}
############################################################################################
## Сжатие и буферизация данныx ##
############################################################################################
if ($config['gzip']==1 && extension_loaded('zlib') && ini_get('zlib.output_compression')!='On' && ini_get('output_handler')!='ob_gzhandler' && ini_get('output_handler')!='zlib.output_compression'){
if (isset($_SERVER['HTTP_ACCEPT_ENCODING'])) {$gzencode = $_SERVER['HTTP_ACCEPT_ENCODING'];} else {$gzencode = $_SERVER['HTTP_TE'];}
$support_gzip = (strpos($gzencode, 'gzip') !== FALSE);
$support_deflate = (strpos($gzencode, 'deflate') !== FALSE);
if ($support_gzip && $support_deflate) {$support_deflate = FALSE;}
if ($support_gzip){
header("Content-Encoding: gzip");
ob_start("compress_output_gzip");
}
if ($support_deflate) {
header("Content-Encoding: deflate");
ob_start("compress_output_deflate");
}
if (!$support_gzip && !$support_deflate) {
ob_start();
$config['gzip'] = 0;
}
} else {
ob_start();
$config['gzip'] = 0;
}
//Вы не должны удалять копирайты "Powered by Wap-Motors" и удалять авторскую информацию из включенных сценариев.
//В разработку этого продукта вложены тысячи часов изнурительной работы, уважайте авторские права разработчиков.
function cont($str) {
return preg_replace('#</body>#i', '<div align="center"><a href="http://'.str_rot13('ivfniv.arg').'">'.str_rot13('Cbjrerq ol Jnc-Zbgbef').'</a></div></body>', $str, 1);}
ob_start('cont');
############################################################################################
## Автоматический бан ##
############################################################################################
$old_ips = file(DATADIR.'ban.dat');
foreach($old_ips as $old_ip_line){
$ip_arr = explode('|', $old_ip_line);
$ip_check_matches = 0;
$ipdr_check_matches = 0;
$db_ip_split = explode('.', $ip_arr[1]);
$this_ipdr_split = explode('.', $ip_addr);
for($i_i=0;$i_i<4;$i_i++){
if ($this_ipdr_split[$i_i] == $db_ip_split[$i_i] or $db_ip_split[$i_i] == '*') {
$ipdr_check_matches += 1;}}
if ($ip_addr!=$ip){
$this_ip_split = explode('.', $ip);
for($i_i=0;$i_i<4;$i_i++){
if ($this_ip_split[$i_i] == $db_ip_split[$i_i] or $db_ip_split[$i_i] == '*') {
$ip_check_matches += 1;}}
}
if ($ipdr_check_matches == 4 || $ip_check_matches == 4) {
if (!strstr($php_self, 'pages/banip.php')){header ('Location: '.$config['home'].'/pages/banip.php?'.SID); exit;}} //бан по IP
}
############################################################################################
## Авторизация по cookies ##
############################################################################################
if ($config['cookies']==1){
if (empty($_SESSION['log']) && empty($_SESSION['par'])) {
if (isset($_COOKIE['cooklog']) && isset($_COOKIE['cookpar']) && preg_match('|^[a-z0-9_\-]+$|i',$_COOKIE['cooklog'])){
if ($config['keypass']!=""){
$unlog = xoft_decode($_COOKIE['cooklog'],$config['keypass']);
$unpar = xoft_decode($_COOKIE['cookpar'],$config['keypass']);
if (file_exists(DATADIR.'profil/'.$unlog.'.prof')){
$checkfiles = file_get_contents(DATADIR.'profil/'.$unlog.'.prof');
$checkdata = explode(':||:', $checkfiles);
if ($unlog==$checkdata[0] && md5(md5($unpar))==$checkdata[1]) {
$pr_ip = explode('.', $ip_addr);
$my_ip = $pr_ip[0].$pr_ip[1].$pr_ip[2];
$_SESSION['log'] = $unlog;
$_SESSION['par'] = $unpar;
$_SESSION['my_ip'] = $my_ip;
change_profil($unlog, array(11=>$checkdata[11]+1, 14=>$ip, 44=>SITETIME));
}}}}}}
//-------------------------------------------------------------//
if ($_SERVER['HTTP_HOST']) {$config['servername'] = $_SERVER['HTTP_HOST'];} else {$config['servername'] = $_SERVER['SERVER_NAME'];}
if (substr($config['servername'], 0, 4)=='www.'){$config['servername'] = preg_replace('#www\.#','',$config['servername'], 1);}
if (substr($config['servername'], 0, 4)=='wap.'){$config['servername'] = preg_replace('#wap\.#','',$config['servername'], 1);}
//---------------------- Установка сессионных переменных -----------------------//
if (empty($_SESSION['counton'])) {$_SESSION['counton'] = 0;}
if (empty($_SESSION['currs'])) {$_SESSION['currs'] = SITETIME;}
if (empty($_SESSION['token'])) {$_SESSION['token'] = generate_password(6);}
if (empty($_SESSION['protect'])) {$_SESSION['protect'] = mt_rand(1000,9999);}
$_SESSION['timeon'] = maketime(SITETIME - $_SESSION['currs']);
############################################################################################
## Авторизация ##
############################################################################################
if (isset($_SESSION['log']) && isset($_SESSION['par']) && preg_match('|^[a-z0-9\-]+$|i',$_SESSION['log'])){
if (file_exists(DATADIR.'profil/'.$_SESSION['log'].'.prof')){
$userprof = file_get_contents(DATADIR.'profil/'.$_SESSION['log'].'.prof');
$udata = explode(':||:', $userprof);
if ($udata[0]==$_SESSION['log'] && $udata[1]==md5(md5($_SESSION['par']))){
$log = $_SESSION['log'];
$config['themes'] = check($udata[20]); # Скин/тема по умолчанию
$config['bookpost'] = (int)$udata[21]; # Вывод сообщений в гостевой
$config['postnews'] = (int)$udata[22]; # Новостей на страницу
$config['forumpost'] = (int)$udata[23]; # Вывод сообщение в форуме
$config['forumtem'] = (int)$udata[24]; # Вывод тем в форуме
$config['chatpost'] = (int)$udata[26]; # Вывод сообщений в чате
$config['boardspost'] = (int)$udata[28]; # Выод объявлений
$config['timeclocks'] = check($udata[30]); # Временной сдвиг
$config['showtime'] = (int)$udata[31]; # Вывод часов и дня недели
$config['privatpost'] = (int)$udata[32]; # Вывод писем в привате
if ($udata[37]==1){
if (!strstr($php_self, 'pages/ban.php') && !strstr($php_self, 'pages/pravila.php')){
header ('Location: '.$config['home'].'/pages/ban.php?log='.$log.'&'.SID); exit();}}
if ($config['regkeys']>0 && $udata[46]>0){
if (!strstr($php_self, 'pages/key.php') && !strstr($php_self,'input.php')){
header ('Location: '.$config['home'].'/pages/key.php?log='.$log.'&'.SID); exit();}}
if (SITETIME>$udata[53] && $udata[54]>0){
if (!strstr($php_self, 'games/kredit.php')){
header ('Location: '.$config['home'].'/games/kredit.php?'.SID); exit();}}
//---------------------- функция проверки ip и браузера -----------------------//
if ($udata[66]==1){
$pr_ip = explode('.', $ip_addr);
$new_ip = $pr_ip[0].$pr_ip[1].$pr_ip[2];
if ($new_ip!=$_SESSION['my_ip']){
session_unset();
setcookie(session_name(), '');
session_destroy();
header ('Location: '.$config['home'].'/'.$request_uri); exit();
}}
if (strstr($php_self, basename(ADMINDIR))){
//------------------------ Запись текущей страницы для админов -----------------------------//
$adm_log = no_br('|'.$brow.'|'.$ip.'|'.$log.'|'.$request_uri.'|'.$http_referer.'|'.SITETIME.'|');
write_files(DATADIR.'datalog/admin.dat', $adm_log."\r\n", 0, 0666);
$admlogcount = counter_string(DATADIR.'datalog/admin.dat');
if ($admlogcount>=300) {
delete_lines(DATADIR.'datalog/admin.dat', array(0,1));
}
} else {
//------------------------ Запись текущей страницы для юзера ------------------------------//
if (file_exists(DATADIR.'who.dat')){
$wholines = file(DATADIR.'who.dat');
foreach($wholines as $whokey=>$whovalue){
$whodats = explode("|",$whovalue);
if ($log == $whodats[0]) {
unset ($wholines[$whokey]);
}}
$wholines[] = no_br($log.'|'.$php_self.'|'.$_SESSION['counton'].'|'.SITETIME.'|');
write_files(DATADIR.'who.dat', implode($wholines)."\r\n", 1);
$whocount = counter_string(DATADIR.'who.dat');
if ($whocount>=$config['lastusers']) {
delete_lines(DATADIR.'who.dat', array(0,1));
}}}
//-------------------------- Дайджест ------------------------------------//
if (file_exists(DATADIR.'datalife/'.$log.'.dat')){
$lifefile = file_get_contents(DATADIR.'datalife/'.$log.'.dat');
$lifestr = explode('|', $lifefile);
$lifetime = SITETIME - $lifestr[0];
if ($lifetime<600 && $lifetime>2) {$usertime = $lifestr[1] + $lifetime;} else {$usertime=$lifestr[1];}
$tlife = no_br(SITETIME.'|'.$usertime.'|'.$log.'|'.$php_self.'|'.$ip.'|');
if ($usertime>0 && $tlife!=""){
write_files(DATADIR.'datalife/'.$log.'.dat', $tlife, 1, 0666);
}
} else {
$tlife = no_br(SITETIME.'|0|'.$log.'|'.$php_self.'|'.$ip.'|');
write_files(DATADIR.'datalife/'.$log.'.dat', $tlife, 1, 0666);
}
//--------------------------------------------------------------//
} else {$_SESSION['log']=''; $_SESSION['par']=''; $log='';}
} else {$_SESSION['log']=''; $_SESSION['par']=''; $log='';}
} else {$_SESSION['log']=''; $_SESSION['par']=''; $log='';}
//------------------------ Отключение кеширования -----------------------------//
if ($config['nocache']==0){
Header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
Header('Cache-Control: no-cache, must-revalidate');
Header('Pragma: no-cache');
Header('Last-Modified: '.gmdate("D, d M Y H:i:s").' GMT');
}
//------------------------ Автоопределение системы -----------------------------//
if (!empty($config['webthemes']) && empty($_SESSION['my_themes'])){
if (empty($_SESSION['log']) || empty($_SESSION['par'])){
if (stristr($_SERVER['HTTP_USER_AGENT'],'windows') || stristr($_SERVER['HTTP_USER_AGENT'],'linux') ||
stristr($_SERVER['HTTP_USER_AGENT'],'macintosh') || stristr($_SERVER['HTTP_USER_AGENT'],'unix') ||
stristr($_SERVER['HTTP_USER_AGENT'],'macos') || stristr($_SERVER['HTTP_USER_AGENT'],'bsd')){
$config['themes'] = $config['webthemes'];
}}}
if (isset($_SESSION['my_themes'])){$config['themes'] = $_SESSION['my_themes'];}
if (!file_exists(BASEDIR.'themes/'.$config['themes'].'/index.php')){$config['themes'] = 'default';}
if ($config['nickname']=='' && file_exists(BASEDIR.'INSTALL.php') && !strstr($php_self, 'INSTALL.php')){header ('Location: '.BASEDIR.'INSTALL.php?'.SID); exit;}
if ($config['closedsite']==1 && !strstr($php_self, 'pages/closed.php') && !strstr($php_self,'input.php') && $log!=$config['nickname']){header ('Location: '.$config['home'].'/pages/closed.php?'.SID); exit;}
$header_title = '';
?>