<?php
#-----------------------------------------------------#
# ********* WAP-MOTORS ********* #
# Made by : VANTUZ #
# E-mail : [email protected] #
# Site : http://pizdec.ru #
# WAP-Site : http://visavi.net #
# ICQ : 36-44-66 #
# Вы не имеете право вносить изменения в код скрипта #
#-----------------------------------------------------#
/************************************************/
// show reply mod. by demeros //
/************************************************/
//************************//
//Откорректировал и дополнил Djek (Energetik)//
//************************//
if (!defined("BASEDIR")) { header("Location:../index.php"); exit; }
/*----------Текущая версия скрипта------------*/
$rprivat_version='1.2.5';
/*------------Проверяем какой макс размер можно выгружать--------*/
$upload_max_filesize=ini_get('upload_max_filesize');
if (eregi('([0-9]*)([A-z]*)',$upload_max_filesize,$varrs))
{
if ($varrs[2]=='M')$upload_max_filesize=$varrs[1]*1048576;
elseif ($varrs[2]=='K')$upload_max_filesize=$varrs[1]*1024;
elseif ($varrs[2]=='G')$upload_max_filesize=$varrs[1]*1024*1048576;
}
$fsizz=$upload_max_filesize/1024;
/*--------------Форма для быстрого ответа----------------*/
$form='<form method="post" action="addpriv.php?'.SID.'">
<input name="mess" size="25" />';
/*---------Настройки скрипта---------*/
$rprivat_text=file(BASEDIR."local/rprivat.dat");
if ($rprivat_text){
$rprivat_data=explode("|",$rprivat_text[0]);
$config_reply_privat = $rprivat_data[0]; # Вкл/Выкл "В ответ на:" для привата
$config_add_privat_data=$rprivat_data[1]; # Разрешать прикрепление файлов
$config_zip_privat=$rprivat_data[2]; #Архивировать файлы?
$config_fast_answer=$rprivat_data[3]; #Быстрый ответ
$config_add_privat_fsize=$rprivat_data[4]; #Размер файла в кб
$config_add_privat_fpath='../'.$rprivat_data[5].''; #Куда сохранять файлы
$config_add_privat_uball=$rprivat_data[6]; #Количество балов
$config_type=$rprivat_data[7]; #Допустимые расширения
$config_savetime_privat=$rprivat_data[8]; #Сколькло дней хранить файлы
$config_users_quote=$rprivat_data[9]; #Место под файлы
$config_privat_style=$rprivat_data[10]; #Формат писем
$config_browsers_autodetect=$rprivat_data[11]; #Автоопределение браузера
$config_dell_checked=$rprivat_data[12]; #вкл/выкл удалять выбраное
$config_privat_antireklama=$rprivat_data[13]; #Проверка на рекламу
$config_privat_checkers=$rprivat_data[14]; #Ники проверяющих
}else {echo '<b>Ошибка! Не установлены настройки привата! Проверте файл local/rprivat.dat</b>'; exit;}
/*--------Сообщения ошибок----------*/
if(isset($_GET['error'])){
$kol=(int)$_GET['kol'];
$error=$_GET['error'];
if ($error=="ferr"){
echo '<div align="center"><font color="#FF0000"><b>Ошибка при загрузке файла!!!</b></font><br></div>';}
if ($error=="extention"){
echo '<div align="center"><font color="#FF0000"><b>Запрещенный формат файлов!!!</b></font><br></div>';}
if ($error=="nodir"){
echo '<div align="center"><font color="#FF0000"><b>ОШИБКА! Неверно выбрана директория, сообщите администрации!!!</b></font><br></div>';}
if ($error=="fbig"){
echo '<div align="center"><font color="#FF0000"><b>Превышен лимит размера файла!!!</b></font><br></div>';}
if ($error=="sended"){
echo '<div align="center"><font color="#FF0000"><b>Разослано писем : '.$kol.'!</b></font><br></div>';}
if ($error=="nadd"){
echo '<div align="center"><font color="#FF0000"><b>Некому отправлять письмо!!! Отправлять письмо самому себе запрещено!!!</b></font><br></div>';}
if ($error=="noadm"){
echo '<div align="center"><font color="#FF0000"><b>Ошибка, не обнаружен файл local/datatmp/adminlist.dat или local/datatmp/userlist.dat!!!</b></font><br></div>';}
if ($error=="fullsavemail")
{echo '<div align="center"><font color="#FF0000"><b>Ваш ящик переполнен!!! Требуется очистка, иначе вы не сможете получать письма!!!</b></font><br></div>';}
if ($error=="copy")
{echo '<div align="center"><font color="#FF0000"><b>Вы уже сохраняли это письмо!!!</b></font><br></div>';}
if ($error=="saved")
{echo '<div align="center"><font color="#FF0000"><b>Письмо успешно сохранено!!!</b></font><br></div>';}
}
/*-------Функция для админки----------*/
function users_files(){
global $config_add_privat_fsize,$fsizz;
if($fsizz<$config_add_privat_fsize)
{$fpremission=2;}
elseif($config_add_privat_fsize>0 && $config_add_privat_fsize<5)
{$fpremission=3;}
elseif($fsizz>=$config_add_privat_fsize){
$fpremission=1;}
return $fpremission;
}
/*-----Фция для рассылки привата-------*/
function spam_add($nik,$mess,$log,$sitetime)
{global $config_userprofkey,$config_limitsmail,$config_priv;
$filesize= filesize("../local/privat/$nik.$config_priv");
$filesize=round($filesize/1024,2);
$pers=round($filesize*100/$config_limitsmail);
if($pers>="99"){$acs="1";}
if($acs!="1")
{$rep="";
$tex=$log.'|'.$mess.'|'.$sitetime.'|'.$rep.'|1|0|';
$tex=preg_replace ("|[\r\n]+|si","",$tex);
$ufile = file(BASEDIR."local/profil/$nik.prof");
$udata = explode(":||:",$ufile[0]);
$udata[10]++;
for ($u=0; $u<$config_userprofkey; $u++){
$utext.=$udata[$u].':||:';}
if($udata[0]!="" && $udata[1]!="" && $udata[4]!="" && $utext!=""){
$fp=fopen(BASEDIR."local/profil/$nik.prof","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
fputs($fp,$utext);
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
unset($utext);
$fp=fopen(BASEDIR."local/privat/$nik.$config_priv","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$tex\r\n");
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
}
}
}
/*-----------Функция определения прочитано ли письмо------------*/
function is_read ($log,$uz,$time)
{global $config_priv,$sitetime;
$file = file("../local/dataoutput/$uz.$config_priv");
$fp=fopen("../local/dataoutput/$uz.$config_priv","r+");
$total = count($file);
flock ($fp,LOCK_EX);
for($i=0;$i<$total;$i++)
{$ud=explode("|",$file[$i]);
if($ud[0]==$log && $ud[2]==$time)
{$ms=$ud[1];
$tt=$ud[2];
$adfile=$ud[5];
$id=$i;
$tex2=$log.'|'.$ms.'|'.$tt.'|0|'.$sitetime.'|'.$adfile.'|';
$tex2=preg_replace ("|[\r\n]+|si","",$tex2);
$file[$id]="$tex2\r\n";
}}
fputs($fp,implode("",$file));
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod ($fp, 0666);
chmod (BASEDIR."local/dataoutput/$uz.$config_priv", 0666);
$file = file("../local/privat/$log.$config_priv");
$fp=fopen("../local/privat/$log.$config_priv","r+");
$total = count($file);
flock ($fp,LOCK_EX);
for($i=0;$i<$total;$i++)
{$ud=explode("|",$file[$i]);
if($ud[0]==$uz && $ud[2]==$time && $ud[4]=="1")
{$ms=$ud[1];
$tt=$ud[2];
$rr=$ud[3];
$adfiler=$ud[5];
$id=$i;
$tex=$uz.'|'.$ms.'|'.$tt.'|'.$rr.'|0|'.$adfiler.'|';
$tex=preg_replace ("|[\r\n]+|si","",$tex);
$file[$id]="$tex\r\n";}}
fputs($fp,implode("",$file));
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod ($fp, 0666);
chmod (BASEDIR."local/privat/$log.$config_priv", 0666);
}
/*ПРоверка входящих файлов*/
function filep ($namef)
{global $config_add_privat_fpath;
if(is_file("$config_add_privat_fpath/$namef"))/*Если файл не был удален*/
{
if(!stristr($namef,"php") && !stristr($namef,"htm") && !stristr($namef,"inc") && !stristr($namef,"wml"))/*еще одна проверка*/
{
$name='<img src="../images/privat/file.gif" alt=""> Прикрепленный файл:<br><font color="red"><blink>=></blink></font><a href="'.$config_add_privat_fpath.'/'.$namef.'">Скачать файл</a><font color="red"><blink><=</blink></font><br>';
}
else
{$name='В имени файла присутствуют запрещенные слова!!!';}
}
else{$name='<font color="red">Файл был удален!!!</font>';}
return $name;
}
/*Автоопределение браузера*/
function browser_detectt($login,$mesr)
{global $config_reply_privat;
global $config_browsers_autodetect;
if($config_reply_privat=="1")/*Если включено цитирование*/
{if ($config_browsers_autodetect=="1")
{
if (stristr($_SERVER['HTTP_USER_AGENT'],'opera mini'))/*Если браузер опера-мини*/
{
$string=' | <a href="privat.php?action=files&uz='.$login.'&rbrow=2&mesr='.$mesr.'&'.SID.'"><img src="../images/privat/file.gif" alt=""></a>';
}
else
{$string=' | <a href="privat.php?action=files&uz='.$login.'&rbrow=1&mesr='.$mesr.'&'.SID.'"><img src="../images/privat/file.gif" alt=""></a>';}
}else{$string='<br><img src="../images/privat/file.gif" alt=""> <a href="privat.php?action=files&uz='.$login.'&rbrow=1&mesr='.$mesr.'&'.SID.'">ПК</a> | <a href="privat.php?action=files&uz='.$login.'&rbrow=2&mesr='.$mesr.'&'.SID.'">Opera-mini</a>';}
}
else/*Если цитирование выключено*/
{if ($config_browsers_autodetect=="1")
{
if (stristr($_SERVER['HTTP_USER_AGENT'],'opera mini'))
{
$string=' | <a href="privat.php?action=files&uz='.$login.'&rbrow=2&'.SID.'"><img src="../images/privat/file.gif" alt=""></a>';
}
else
{$string=' | <a href="privat.php?action=files&uz='.$login.'&rbrow=1&'.SID.'"><img src="../images/privat/file.gif" alt=""></a>';}
}else{$string='<br><img src="../images/privat/file.gif" alt=""> <a href="privat.php?action=files&uz='.$login.'&rbrow=1&'.SID.'">ПК</a> | <a href="privat.php?action=files&uz='.$login.'&rbrow=2&'.SID.'">Opera-mini</a>';}
}
return $string;
}
/*Функция антирекламы*/
function antireklamap($string,$sitetime,$rep,$log,$uz){
global $config_privat_checkers,$config_priv,$config_servername;
$string=base64_decode($string);
$arr_mat=array("http","//",":/","wap","w w","ww","web",".ru",".ne",".su",".cn",".or","h t t p","/ /",": /","w a p","w e b",". r u",". n e",". s u",". c n",". o r");
foreach($arr_mat as $value){
if($value!=""){
if(preg_match("|$value|iu",$string))
{$reklama=1;}
}}
if($reklama==1)
{$checkers=explode(",",$config_privat_checkers);
$string='Пользователь [url=http://'.$config_servername.'/pages/anketa.php?uz='.$log.']'.$log.'[/url],подозревается в рассылке рекламы!!! Текст сообщения для пользователя [url=http://'.$config_servername.'/pages/anketa.php?uz='.$uz.']'.$uz.'[/url]: [red]'.$string.'[/red]';
$tex='Система|'.base64_encode($string).'|'.$sitetime.'|'.$rep.'|1||';
foreach($checkers as $value)
{if($value!=$log && $value!=$uz){
$fp=fopen(BASEDIR."local/privat/$value.$config_priv","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$tex\r\n");
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
}
}
}
}
?>