View file forum/topusers.php

File size: 6.06Kb
<?php
require_once"../template/start.php";
require_once"../template/regglobals.php";
require_once"../template/config.php";
require_once"setforum.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";
include_once"../template/isset.php";

echo'<img src="../images/img/partners.gif" alt=""> <b>Топ самых активных на форуме</b><br>';

$suf = @file(BASEDIR."local/dataforumset/dataforumuser/$log.dat");
if ($suf!=""){
$lsf = explode(":||:",$suf[0]);}

if($config_forum_off=="1"){

if ($provlog==$_SESSION['log'] && $provpar==md5($_SESSION['par']) && $_SESSION['log']!="" && md5($_SESSION['par'])!=""){

if($config_top_us=="1"){
if(!empty($lsf[5]) || $config_usnastr==0){

$time=time();
$uz=check($uz);

//-----НОВАЯ ФУНКЦИЯ КЕШИРОВАНИЯ-----//
$filtime=filemtime("../local/datatmp/topusers.dat");
$userfile=file("../local/datatmp/topusers.dat");
$user_count=count($userfile);

$filtime=$filtime+(3600*$config_userforumcache);

if($time>$filtime || $user_count<50){
	
$dir = opendir ("../local/profil"); 
while ($file = readdir ($dir)) {
if (ereg ("\.prof$", $file)) {
$alltopusers[]=$file;}} 
closedir ($dir); 		
$total = count($alltopusers); 

for ($i = 0; $i < $total; $i++){
$tex = file("../local/profil/$alltopusers[$i]");
$data = explode(":||:",$tex[0]);

if($data[8]>0  && $data[0]!=""){
	
$dat_log[]=$data[0];
$dat_forum[]=$data[8];

}}

arsort($dat_forum);

clear_files("../local/datatmp/topusers.dat");

foreach($dat_forum as $k=>$v){ $gg++;
$dat_top[]='|'.$gg.'|'.$dat_log[$k].'|'.$dat_forum[$k].'|';	
}	

$dat_top=implode("\r\n",$dat_top);

if($dat_top!=""){
$fp = fopen("../local/datatmp/topusers.dat","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$dat_top\r\n");
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod ($fp, 0666); 
chmod ("../local/datatmp/topusers.dat", 0666); 	
}
}



//------------------------------ ВЫВОД ИЗ КЕША ------------------------------//	
$file = file("../local/datatmp/topusers.dat");
$total = count($file);
if ($start=="") {$start = 0;}
if ($total < $start + $config_topforums){ $end = $total; }
else {$end = $start + $config_topforums; }
for ($i = $start; $i < $end; $i++){
	
$data = explode("|",$file[$i]);

echo $data[1].'. <img src="../images/img/chel.gif" alt=""> ';
if($uz==$data[2]){
echo '<b><big><a href="../pages/anketa.php?uz='.$data[2].'&amp;'.SID.'"><font color="#FF0000">'.nickname($data[2]).'</font></a></big></b>';
}else{
echo '<b><a href="../pages/anketa.php?uz='.$data[2].'&amp;'.SID.'">'.nickname($data[2]).'</a></b>';}
echo ' (Сообщений: <b>'.$data[3].'</b>)<hr>';
}

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

if($total>0){

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

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

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

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

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


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

//-----------------------------------------------------------------//
if($uz==""){
echo '<hr><b>Поиск пользователя:</b><br>';
if($config_themes!="wml"){	
echo '<form action="topusers.php?start='.$start.'&amp;'.SID.'" method="post">';
echo'<input name="uz" value="'.$log.'" /><br>';
echo '<input type="submit" value="Искать" /></form><hr>';

}else{

echo'<input name="uz" value="'.$log.'"/><br>';
echo'<anchor>Искать';
echo'<go href="topusers.php?start='.$start.'&amp;'.SID.'" method="post">';
echo'<postfield name="uz" value="$(uz)"/>';
echo'</go></anchor><br>--------------------';
}
}else{
	
$file = file("../local/datatmp/topusers.dat");
$total = count($file);	
for ($i = 0; $i < $total; $i++){ 
	
$data = explode("|",$file[$i]);	
if (trim($uz)==$data[2]){



$stranica = floor($i / $config_topforums) * $config_topforums;

if($start!=$stranica){ 
header ("Location: topusers.php?start=$stranica&uz=$uz&".SID); 
}

$pos = $i + 1; 
echo '<hr><br><font color="#00FF00">Позиция в рейтинге:</font> <b>'.$pos.'</b><br>';	

break;
}}
if($pos==""){ echo '<hr><br><b><font color="#FF0000">Пользователь с таким логином не найден!</font></b><br>';}

echo '<br><a href="topusers.php?start='.$start.'&amp;'.SID.'">Искать еще</a><br>';
}
echo'<br>Всего пользователей: <b>'.(int)$total.'</b><br>';

}else{
echo'<center><font color="red">Топ самых активных на форуме отключен вами в личных настройках!!!</font></center>';}}

if($config_top_us=="0"){
echo'<center><font color="red">Топ самых активных на форуме отключен!!!</font></center>';}

}else{
echo'Вы не авторизованы для просмотра';}
}

if($config_forum_off=="0"){
echo'<center><font color="red">Форум сайта отключен!</font></center>';}

echo '<br><img src="../images/img/back.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";
?>