View file download/down.php

File size: 20.61Kb
<?php
#-----------------------------------------------------#
#          ********* WAP-MOTORS *********             #
#             Made by   :  VANTUZ                     #
#               E-mail  :  [email protected]             #
#                 Site  :  http://pizdec.ru           #
#             WAP-Site  :  http://visavi.net          #
#                  ICQ  :  36-44-66                   #
#  Вы не имеете право вносить изменения в код скрипта #
#-----------------------------------------------------#	
require_once"../template/start.php";
require_once"../template/regglobals.php";
require_once"../template/config.php";
require_once"../template/functions.php";
require_once"../template/antidos.php";
require_once"../template/cookies.php";
require_once"../template/gzip.php";
require_once"../template/header.php";
require_once"../template/referer.php";
include_once"../themes/$config_themes/index.php";

require_once"../template/isset.php";

$text = file("../local/profil/$log.prof"); 
if ($text!=""){
$udata = explode(":||:",$text[0]);
$provlog=trim($udata[0]);
$provpar=trim($udata[1]);
$privat=trim($udata[10]);}

$did=$_GET['did']; $fid=$_GET['fid'];
if(!eregi("[^a-z0-9_@+-]",$did) && (!eregi("[^a-z0-9_@+.-]",$fid))){	
$did=check($did);
$fid=check($fid);

if ($_SESSION['log']!="" && md5($_SESSION['par'])!="" && md5($_SESSION['par'])==$provpar && $_SESSION['log']==$provlog ) {
if($udata[10]>0){
echo'<img src="../images/img/mail.gif" alt=""> <b><a href="../pages/privat.php?'.SID.'"><font color="red">Приватное сообщение! ('.$privat.')</font></a></b><br>';}}

$dates=date("d.m.y");
$times=date("H:i"); 
$time=time();

//--------------------------------------- Основная -----------------------------------//
if(!isset($action)){
if(!empty($did)){
echo '<img src="../images/img/partners.gif" alt=""> <b>Архив загрузок</b><br><br>';


$dir = opendir ($did);
while ($file = readdir ($dir)) 
{if (( $file != ".") && ($file != "..") && ($file != ".htaccess") && ($file != "index.php") && ($file != "name.dat") && !ereg (".txt$",$file)&& !ereg (".JPG$",$file)&& !ereg (".GIF$",$file))
{$a[]=$file;}} 
closedir ($dir); 

	
sort($a); 
$b=$a;
//$a=str_replace(".zip","",$a); 
	
$down_name=file_get_contents("$did/name.dat");

echo'<img src="../images/img/opendir.gif" alt=""> <b>'.$down_name.'</b><br><br>';
   
$total = count($a); 
if($a!=""){
if (empty($_GET['start'])) $start = 0; 
else $start = $_GET['start'];
if ($total < $start + $config_downlist){ $end = $total; }
else {$end = $start + $config_downlist; }
for ($i = $start; $i < $end; $i++){
	
$a[$i]=substr($a[$i],0,strrpos($a[$i],'.')); //Удаляем расширение
	
$siz= filesize("$did/$b[$i]");  # размер
$siz=formatsize($siz);
$filtime=filemtime ("$did/$b[$i].txt"); 
$filtime=$filtime+(3600*24*5);  //Сколько файл считать новым сейчас уст. на 5 суток

# если файл имеет одноименный txt файл то даем ссылку на описание
echo '<div class=b>';
if(file($did.'/'.$b[$i].'.txt')){if($filtime>=$time){
echo '<img src="../images/img/new.gif" alt=""> ';
}else{
echo '<img src="../images/img/files.gif" alt=""> ';} 

echo '<b><a href="down.php?action=ob&amp;did='.$did.'&amp;fid='.$b[$i].'&amp;'.SID.'">'.$a[$i].'</a></b> ('.$siz.')<br>';}
# иначе сразу выдаем файл
else{
echo '<img src="../images/img/files.gif" alt=""> <a href="down.php?action=count&amp;did='.$did.'&amp;fid='.$b[$i].'&amp;'.SID.'">'.$a[$i].'</a> ('.$siz.')<br>';}
$te = file("../local/datadown/$b[$i].dat"); 
$u = explode("|",$te[0]);
if($u[0]==""){$u[0]="0";}
echo '</div>Cкачиваний: '.(int)$u[0];

$tit=round($u[2]/$u[1]/2,1);
if($u[1]==""){$u[1]="0";}
echo '<br>Рейтинг: '.$tit.'/<b>'.$u[1].'</b>';

$filev = file("../local/datadown/$b[$i].dat");
$totalv = count($filev);
$totalv = $totalv - 1;
$data1 = explode("|",$filev[$totalv]);
if (!ctype_digit($data1[4])){$data1[4]="0";}
echo '<br><a href="down.php?action=komm&amp;did='.$did.'&amp;fid='.$b[$i].'&amp;'.SID.'">Комментарии</a> ('.$data1[4].')<br>';
}
}else{echo 'В данной категории нет файлов!<br>'; $total=0;}

echo'<hr>';  

 

if ($start != 0) {echo '<a href="down.php?start='.($start - $config_downlist).'&amp;did='.$did.'&amp;'.SID.'">&lt;-Назад </a> ';}else{echo'&lt;-Назад ';}
echo'|';
if ($total > $start + $config_downlist) {echo ' <a href="down.php?start='.($start + $config_downlist).'&amp;did='.$did.'&amp;'.SID.'"> Далее-&gt;</a>';}else{echo' Далее-&gt;';}


if($total>0){

$ba=ceil($total/$config_downlist);
$ba2=$ba*$config_downlist-$config_downlist;

echo '<br><hr>Страницы:';
$asd=$start-($config_downlist*3);
$asd2=$start+($config_downlist*4);

if($asd<$total && $asd>0){echo ' <a href="down.php?start=0&amp;did='.$did.'&amp;'.SID.'">1</a> ... ';}

for($i=$asd; $i<$asd2;)
{
if($i<$total && $i>=0){
$ii=floor(1+$i/$config_downlist);

if ($start==$i) {
echo ' <b>'.$ii.'</b>';
               }
                else {
echo ' <a href="down.php?start='.$i.'&amp;did='.$did.'&amp;'.SID.'">'.$ii.'</a>';
                     }}


$i=$i+$config_downlist;}
if($asd2<$total){echo ' ... <a href="down.php?start='.$ba2.'&amp;did='.$did.'&amp;'.SID.'">'.$ba.'</a>';}
}

echo '<br><br>Всего файлов: '.$total.'<br>';


}else{header ("Location: index.php?".SID); exit;}
}


//-------------------------------- Cчетчик ---------------------------------------------//
if($action=="count"){

if($did!="" && $fid!=""){
if(file("$did/$fid")){
if($_SESSION['download']!="$did/$fid"){
	
$_SESSION['download']="$did/$fid";
	
$f = file("../local/datadown/$fid.dat"); 
$u = explode("|",$f[0]);
$u[0]++;
$t=$u[0].'|'.$u[1].'|'.$u[2].'|'.$currDate.' ('.$currTime2.')|'.$did.'|';
$t=preg_replace ("|[\r\n]+|si","",$t);
$rd=0;  
$file=file("../local/datadown/$fid.dat");
$fp=fopen("../local/datadown/$fid.dat","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
for ($i=0;$i< sizeof($file);$i++) {if ($rd!=$i) {fputs($fp,$file[$i]);} else {fputs($fp,"$t\r\n");}}
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod ($fp, 0777);
chmod ("../local/datadown/$fid.dat", 0777);          
}

header("location: $did/$fid"); 

}else{echo '<br>Ошибка, невозможно найти требуемый вам файл '.$did.'/'.$fid.'<br>';}
}else{echo '<br>Ошибка, отсутствуют важные данные<br>';}
echo '<br><img src="../images/img/back.gif" alt=""> <a href="?action=ob&amp;did='.$did.'&amp;fid='.$fid.'&amp;'.SID.'">Вернуться</a>';
} 


//------------------Запись и вывод рейтинга-------------------------//
if($action=="vote"){
echo '<img src="../images/img/partners.gif" alt=""> <b>Оценка файла</b><br><br>';	
	
if ($_SESSION['log']!="" && md5($_SESSION['par'])!="" && md5($_SESSION['par'])==$provpar && $_SESSION['log']==$provlog ) {
if($_SESSION[votus]!=$fid){

$_SESSION['votus']=$fid;

if(file("../local/datadown/$fid.dat")){
if(file("$did/$fid")){
if($ocenka!="" && ctype_digit($ocenka)){
	
$f = file("../local/datadown/$fid.dat"); 
$u = explode("|",$f[0]);

$u[1]++;
$golos=round($u[2]+$ocenka);

$t= $u[0].'|'.$u[1].'|'.$golos.'|'.$u[3].'|'.$u[4].'|';
$t=preg_replace ("|[\r\n]+|si","",$t);

$rd=0;  
$file=file("../local/datadown/$fid.dat");
$fp=fopen("../local/datadown/$fid.dat","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
for ($i=0;$i< sizeof($file);$i++) {if ($rd!=$i) {fputs($fp,$file[$i]);} else {fputs($fp,"$t\r\n");}}
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod ($fp, 0777);
chmod ("../local/datadown/$fid.dat", 0777);   
    
$ocenka2=round($ocenka/2);
echo'<br>Спасибо ваша оценка: <b>"'.(int)$ocenka2.'"</b> принята<br>';  


$te = file("../local/datadown/$fid.dat"); 
$u = explode("|",$te[0]);
$tit=round($u[2]/2/$u[1],1);

echo 'Всего оценивало: '.(int)$u[1].'<br>';
echo 'Средняя оценка: '.$tit.'<br>';

}else{ echo '<br>Ошибка, вы не указали оценку<br>';}
}else{ echo '<br>Ошибка, невозможно открыть требуемый вам файл<br>';}
}else{ echo '<br>Ошибка, вы не можете оценивать т.к. никто еще не скачивал файл<br>';}
}else{ echo '<br>Ошибка, вы уже оценили этот файл!<br>';}

}else{
echo '<br>Вы не авторизованы, чтобы добавить сообщение необходимо<br>';
echo '<b><a href="../pages/vhod.php?'.SID.'">Авторизоваться</a></b> или в начале <b><a href="../pages/registration.php?'.SID.'">Зарегистрироваться</a></b><br>';
}

echo'<br><img src="../images/img/back.gif" alt=""> <a href="down.php?action=ob&amp;did='.$did.'&amp;fid='.$fid.'&amp;'.SID.'">Вернуться</a>';
}


// ------------------------------------- Вывод камментов ---------------------------------//
if($action=="komm"){
echo'<img src="../images/img/messages.gif" alt=""> <b>Комментарии ('.$fid.')</b><br><br>';	

if ($_SESSION['log']!="" && md5($_SESSION['par'])!="" && md5($_SESSION['par'])==$provpar && $_SESSION['log']==$provlog ) {	
if($config_themes!="wml"){	
echo'<form action="down.php?action=addkomm&amp;fid='.$fid.'&amp;did='.$did.'&amp;'.SID.'" method="post">';
echo'<b>Сообщение:</b><br>';
echo'<textarea cols="25" rows="3" name="msg"></textarea><br>';

if($config_translit=="1"){
echo'Транслит: <input name="trans" type="checkbox" value="y" /><br>';}
echo'<input type="submit" value="Написать" /></form><hr>';

}else{

echo'<br>Сообщение:<br>';
echo'<input name="msg" /><br>';

if($config_translit=="1"){
echo'Транслит: <select name="trans"><option value="0">Нет</option>';
echo'<option value="y">Да</option>';
echo'</select><br>';}

echo'<anchor>Написать';
echo'<go href="down.php?action=addkomm&amp;fid='.$fid.'&amp;did='.$did.'&amp;'.SID.'" method="post">';
echo'<postfield name="msg" value="$(msg)"/>';
echo'<postfield name="trans" value="$(trans)"/>';
echo'</go></anchor><br>--------------------<br>';
}
}else{
echo '<br>Вы не авторизованы, чтобы добавить сообщение необходимо<br>';
echo '<b><a href="../pages/vhod.php?'.SID.'">Авторизоваться</a></b> или в начале <b><a href="../pages/registration.php?'.SID.'">Зарегистрироваться</a></b><br><br>';
}

$file = file("../local/datadown/$fid.dat");
$file = array_reverse($file);
$total = count($file)-1;    
if (empty($_GET['start'])) $start = 0;
else $start = $_GET['start'];
if ($total < $start + $config_postdown){ $end = $total; }
else {$end = $start + $config_postdown;}
for ($i = $start; $i < $end; $i++){


$data = explode("|",$file[$i]);
$i2=round($i+1);

/////////////////////////////  онлайнер /////////////////////////////////
$statwho='<font color="red">[Off]</font>';
$sublines=file("../local/online.dat"); 
$subcount=count($sublines);
for ($b=0; $b<$subcount; $b++) {$dt=explode("#",$sublines[$b]); if ($data[3]==$dt[2]) 
{$statwho='<font color="#00FF00">[On]</font>';}}
///////////////////////////////////////////////////////////////

$ava = file("../local/profil/$data[3].prof"); 
$avv = explode(":||:",$ava[0]);

$data[0]=bb_code($data[0]);

echo'<div class=b> ';
if(!empty($udata[45])){
if($avv[43]!="" && $avv[43]!="noavatar.gif"){
echo'<img src="../'.$avv[43].'" alt=""> ';}else{
echo'<img src="../images/avators/noavatar.gif" alt=""> '; }
	
echo'<b><a href="../pages/anketa.php?uz='.$data[3].'&amp;'.SID.'"> '.$data[3].' </a></b> '.$statwho; }
else{echo'<img src="../images/img/edit.gif" alt=""> <b><a href="../pages/anketa.php?uz='.$data[3].'&amp;'.SID.'"> '.$data[3].' </a></b> '.$statwho;}		
	
echo'<small> ('.$data[1].' / '.$data[2].')</small></div><div>'.$data[0].'</div>'; 

}
echo'<hr>';
if ($start != 0) {echo '<a href="down.php?action=komm&amp;did='.$did.'&amp;fid='.$fid.'&amp;start='.($start - $config_postdown).'&amp;'.SID.'">&lt;-Назад</a> ';}else{echo'&lt;-Назад';}
echo ' | ';
if ($total > $start + $config_postdown) {echo ' <a href="down.php?action=komm&amp;did='.$did.'&amp;fid='.$fid.'&amp;start='.($start + $config_postdown).'&amp;'.SID.'">Далее-&gt;</a>';}else{echo'Далее-&gt;';}


if($total>0){

$ba=ceil($total/$config_postdown);
$ba2=$ba*$config_postdown-$config_postdown;

echo '<br><hr>Страницы:';
$asd=$start-($config_postdown*3);
$asd2=$start+($config_postdown*4);

if($asd<$total && $asd>0){echo ' <a href="down.php?action=komm&amp;did='.$did.'&amp;fid='.$fid.'&amp;start=0&amp;'.SID.'">1</a> ... ';}

for($i=$asd; $i<$asd2;)
{
if($i<$total && $i>=0){
$ii=floor(1+$i/$config_postdown);

if ($start==$i) {
echo ' <b>'.$ii.'</b>';
               }
                else {
echo ' <a href="down.php?action=komm&amp;did='.$did.'&amp;fid='.$fid.'&amp;start='.$i.'&amp;'.SID.'">'.$ii.'</a>';
                     }}


$i=$i+$config_postdown;}
if($asd2<$total){echo ' ... <a href="down.php?action=komm&amp;did='.$did.'&amp;fid='.$fid.'&amp;start='.$ba2.'&amp;'.SID.'">'.$ba.'</a>';}
}

echo'<br><br><img src="../images/img/back.gif" alt=""> <a href="down.php?action=ob&amp;did='.$did.'&amp;fid='.$fid.'&amp;'.SID.'">К описанию</a>';	
}




//------------------------------- Запись комментариев ---------------------------------// 
if($action=="addkomm"){

$str=strlen($msg);
if($msg!="" && $str>6){
if(file("../local/datadown/$fid.dat")){

//--------------------- Новый антифлуд -----------------------------//
if($config_floodstime > 0){
if(flooder($ip, $php_self) == TRUE ){header ("Location: down.php?action=komm&did=$did&fid=$fid&isset=antiflood&".SID); exit;}
$flood_file = fopen(BASEDIR."local/flood.dat", "a+");
flock ($flood_file,LOCK_EX);
fputs ($flood_file,"$time|$ip|$php_self|\r\n");
fflush($flood_file);
flock ($flood_file,LOCK_UN);
fclose($flood_file);   
}

//--------------------- Карантин -----------------------------//

if($config_karantin > 0){
if($udata[6]+$config_karantin>$time){header ("Location: down.php?action=komm&did=$did&fid=$fid&isset=karantin&".SID); exit;}
}


if ($_SESSION['log']!="" && md5($_SESSION['par'])!="" && md5($_SESSION['par'])==$provpar && $_SESSION['log']==$provlog ) {
$msg=wordwrap($msg,100,' ',1);
$msg=substr($msg,0,1000);
$msg=check($msg);

if($trans=="y"){$msg=transliter($msg);}
$msg = antimat($msg);
$msg = smiles($msg);

$file = file("../local/datadown/$fid.dat");
$file = array_reverse($file);

$data1 = explode("|",$file[0]);
$me=round($data1[4]+1);
$text=$msg.'|'.$dates.'|'.$times.'|'.$log.'|'.$me.'|';
$text=preg_replace ("|[\r\n]+|si","",$text);

$fp=fopen("../local/datadown/$fid.dat","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$text\r\n");
flock ($fp,LOCK_UN);
fclose($fp);
chmod("$fp", 0777);
chmod("../local/datadown/$fid.dat", 0777);


/////////////////////////////////////
$f = file("../local/local.dat"); 
$u = explode("|",$f[0]);
$u[5]++;
$t=$u[0].'|'.$u[1].'|'.$u[2].'|'.$u[3].'|'.$u[4].'|'.$u[5].'|'.$u[6].'|'.$u[7].'|'.$u[8].'|'.$u[9].'|'.$u[10].'|';

$fp = fopen("../local/local.dat","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
fputs($fp,$t);
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
///////////////////////////


$file=file("../local/datadown/$fid.dat"); 
$i = count($file);
if ($i>=$config_maxpostdown) {
$fp=fopen("../local/datadown/$fid.dat","w");
flock ($fp,LOCK_EX);
unset($file[1],$file[2]);
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/datadown/$fid.dat", 0777);}


//------------------------------ Запись в профиль ----------------------------//
$ufile = file(BASEDIR."local/profil/$log.prof"); 
$udata = explode(":||:",$ufile[0]);

$udata[14]=$ip;
$udata[33]++;
$udata[36]++;
$udata[41]++;

for ($u=0; $u<$config_userprofkey; $u++){
$utext.=$udata[$u].':||:';}

if($udata[0]!="" && $udata[1]!="" && $udata[4]!="" && $utext!=""){
$fp=fopen(BASEDIR."local/profil/$log.prof","a+");
flock($fp,LOCK_EX);   
ftruncate($fp,0);                                                                 
fputs($fp,$utext);
fflush($fp);
flock($fp,LOCK_UN);
fclose($fp);  
unset($utext);
}}

//Ваш комментарий успешно добавлен!
header("location: down.php?action=komm&did=$did&fid=$fid&".SID); 

}else{echo'Вы не можете комментировать т.к. никто еще не скачивал файл';}
}else{echo'Вы не написали комментарий или он слишком короткий'; }


echo'<br><br><a href="?action=komm&amp;did='.$did.'&amp;fid='.$fid.'&amp;'.SID.'">Вернуться к комментариям</a>';
echo'<br><a href="?action=ob&amp;did='.$did.'&amp;fid='.$fid.'&amp;'.SID.'">Вернуться к описанию</a>';
}




//------------------------------------ Описание загрузки -------------------------------------//
if($action=="ob"){
if(!empty($did)  && !empty($fid)){ 

if(file("$did/$fid.txt")){echo '<img src="../images/img/down.gif" alt="">  <b>'.$fid.'</b><br><br>';  
$opis = file("$did/$fid.txt");
$opis = implode("", $opis);
echo $opis;
}else{echo'<br>Описания нет!<br>';}
$siz= filesize("$did/$fid"); 
$siz= round($siz/1024,2);
if(file("$did/$fid.JPG")){echo'<br><br>Скриншот:<br><img src="'.$did.'/'.$fid.'.JPG" alt="">';
}elseif(file("$did/$fid.GIF")){echo'<br><br>Скриншот:<br><img src="'.$did.'/'.$fid.'.GIF" alt="">';}

echo'<hr>';

//--------------------------------------------просмоторщик архивов---------------------------------------------------//		
if (ereg (".zip$", "$fid")){echo'<br><b><img src="../images/img/zip.gif" alt="">';
echo' <a href="zip.php?dir='.$did.'&amp;arch='.$fid.'&amp;'.SID.'">Просмотреть архив</a></b>';}	
	

echo'<br><img src="../images/img/download.gif" alt="">';
echo' <b><a href="down.php?action=count&amp;did='.$did.'&amp;fid='.$fid.'&amp;'.SID.'">Скачать</a> ('.$siz.' kb)</b>';

$file = @file("../local/datadown/$fid.dat");
$total = count($file);
$total = $total - 1;

$data1 = explode("|",$file[$total]);
if (!ctype_digit($data1[4])){$data1[4]="0";}
echo'<br><img src="../images/img/files.gif" alt="">';
echo' <b><a href="down.php?action=komm&amp;did='.$did.'&amp;fid='.$fid.'&amp;'.SID.'">Комментарии</a> ('.$data1[4].')</b><br>';	

echo'<br>Скопировать адрес:<br>
<input name="text"  value="'.$config_home.'/download/'.$did.'/'.$fid.'" /><br>';
$te = file("../local/datadown/$fid.dat"); 
$u = explode("|",$te[0]);
if($u[0]==""){$u[0]="0";}
echo '<br>Cкачиваний: '.$u[0];
if(!empty($u[3])){echo'<br>Последнее скачивание: '.$u[3];}
$tit=round($u[2]/$u[1]/2,1);
if($u[1]==""){$u[1]="0";}
echo '<br>Рейтинг: '.raiting_vote($tit).'<br>Всего оценок: <b>'.$u[1].'</b>';
///



	
echo'<br>Оценить ';

if($config_themes!=="wml"){
echo'<form action="down.php?action=vote&amp;fid='.$fid.'&amp;did='.$did.'&amp;'.SID.'" method="post" name="vote">';
echo'<select name="ocenka">';
echo'<option value="10">Отлично</option>';
echo'<option value="8">Хорошо</option>';
echo'<option value="6">Нормально</option>';
echo'<option value="4">Плохо</option>';
echo'<option value="2">Отстой</option>';
echo'</select>';
echo'<input type="submit" value="Oценить" /></form><hr>';

}else{

echo'<br><select name="ocenka">';
echo'<option value="10">Отлично</option>';
echo'<option value="8">Хорошо</option>';
echo'<option value="6">Нормально</option>';
echo'<option value="4">Плохо</option>';
echo'<option value="2">Отстой</option>';
echo'</select><br>';

echo'<anchor>Oценить';
echo'<go href="down.php?action=vote&amp;fid='.$fid.'&amp;did='.$did.'&amp;'.SID.'" method="post">';
echo'<postfield name="ocenka" value="$(ocenka)"/>';
echo'</go></anchor>';

}
}else{header ("Location: index.php?".SID); exit;}

echo'<br><img src="../images/img/back.gif" alt=""> <a href="down.php?did='.$did.'&amp;'.SID.'">Вернуться</a>'; 
}

}else{echo'Пашшол нахуй!';} 

echo'<br><img src="../images/img/panel.gif" alt=""> <a href="index.php?'.SID.'">К категориям</a><br>';	
echo'<img src="../images/img/homepage.gif" alt=""> <a href="../index.php?'.SID.'">На главную</a>';
include_once"../themes/$config_themes/foot.php";
?>