Просмотр файла str/kommm.php

Размер файла: 10.04Kb
<?php
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";
include_once"../template/isset.php";
if(!file_exists("base/$page.dat")){header ("location: index.php?".SID."");exit;}
if($action=="komm"){
$page=check($page);
echo'<center><b>Комментарии</b></center><br>';
if ($_SESSION['log']!="" && md5($_SESSION['par'])!="" && md5($_SESSION['par'])==$provpar && $_SESSION['log']==$provlog ){
echo'<form action="kommm.php?action=addkomm&amp;gid='.$gid.'&amp;page='.$page.'&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 '<b><a href="../pages/vhod.php?'.SID.'">Авторизоваться</a></b> или в начале <b><a href="../pages/registration.php?'.SID.'">Зарегистрироваться</a></b><br><br>';
}

$file = file("clauses/base/$gid.dat.dat");
$file = array_reverse($file);
$total = count($file);

if($total<1){echo '<b>Комментариев еще нет!</b><br>';}

$start = (int)$_GET['start'];
if($start < 0 || $start > $total){$start = 0;}
if ($total < $start + $config_postgallery){ $end = $total; }
else {$end = $start + $config_postgallery;}
for ($i = $start; $i < $end; $i++){


$data = explode("|",$file[$i]);
$num=$total-$i-1;

//-------------------------------------------------------------------------//
$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.'"> '.nickname($data[3]).' </a></b> '.user_online($data[3]);
}else{
echo'<img src="../images/img/edit.gif" alt=""> <b><a href="../pages/anketa.php?uz='.$data[3].'&amp;'.SID.'"> '.nickname($data[3]).' </a></b> '.user_online($data[3]);
}

echo '<small> ('.date_fixed($data[2]).')</small>';

//------------------------------Удаление для модеров---------------------------//
if($provpar==md5($_SESSION['par']) && $provlog==$_SESSION['log']) {
if ($dostup==101 || $dostup==102 || $dostup==103 || $dostup==105){
echo ' <a href="kommm.php?action=del&amp;gid='.$gid.'&amp;num='.$num.'&amp;start='.$start.'&amp;page='.$page.'&amp;'.SID.'"><font color="#FF0000">[Del]</font></a>';
}}

echo '</div><div>'.$data[0].'</div>';

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


if($total>0){

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

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

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

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

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

$i=$i+$config_postgallery;}
if($asd2<$total){echo ' ... <a href="kommm.php?action=komm&amp;gid='.$gid.'&amp;start='.$ba2.'&amp;page='.$page.'&amp;'.SID.'">'.$ba.'</a>';}
}
echo'<br><img src="../images/img/reload.gif" alt=""> <a href="pages.php?page='.$page.'&amp;'.SID.'">В страничку '.nickname($page).'</a>';
}



##########################################################################
##                        Запись комментариев
##########################################################################
if($action=="addkomm"){
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(strlen(utf_to_win(trim($msg)))>5 && strlen(utf_to_win($msg))<750){
if(file_exists("clauses/base/$gid.dat")){

//--------------------- Новый антифлуд -----------------------------//
if($config_floodstime > 0){
if(flooder($ip, $php_self) == TRUE ){header ("Location: kommm.php?action=komm&gid=$gid&isset=antiflood&page=$page&".SID); exit;}
$flood_file = fopen(BASEDIR."local/flood.dat", "a+");
flock ($flood_file,LOCK_EX);
fputs ($flood_file,"$sitetime|$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>$sitetime){header ("Location: kommm.php?action=komm&gid=$gid&isset=karantin&page=$page&".SID); exit;}
}



$msg=wordwrap($msg,100,' ',1);
$msg=substr($msg,0,750);
$msg=check($msg);

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

$text=$msg.'||'.$sitetime.'|'.$log.'|';
$text=no_br($text);

$fp=fopen("clauses/base/$gid.dat.dat","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$text\r\n");
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("clauses/base/$gid.dat.dat", 0666);


/////////////////////////////////////
$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("clauses/base/$gid.dat.dat");
$i = count($file);
if ($i>=$config_maxpostgallery) {
$fp=fopen("clauses/base/$gid.dat.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("clauses/base/$gid.dat.dat", 0666);}


//------------------------------ Запись в профиль ----------------------------//
$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);
}

//Ваш комментарий успешно добавлен!
if($log!=$page){
$self=explode("/",$_SERVER["PHP_SELF"]);
$chel=nickname($log);
$mess="$chel добавил <a href=\"../list/kommm.php?action=komm&amp;gid=$gid&amp;page=$page&amp;".SID."\">комментарий</a> в вашей личной страничке! Посмотрите на досуге)))";$mess=base64_encode($mess);$tex="Смотрящий|$mess|$sitetime";$fp=fopen(BASEDIR."local/privat/$page.priv","a+"); flock($fp,LOCK_EX); fputs($fp,"$tex \r\n");fflush ($fp);flock ($fp,LOCK_UN);fclose($fp); @chmod("$fp", 0777);@chmod(BASEDIR."local/privat/$page.priv", 0777);$ufile = file(BASEDIR."local/profil/$page.prof"); $udata = explode(":||:",$ufile[0]);$udata[10]=$udata[10]+1;for ($u=0; $u<$config_userprofkey; $u++){$utext.=$udata[$u].':||:';}if($udata[0]!="" && $udata[1]!="" && $udata[4]!="" && $utext!=""){$fp=fopen(BASEDIR."local/profil/$page.prof","a+");flock($fp,LOCK_EX);ftruncate($fp,0);fputs($fp,$utext);fflush($fp);flock($fp,LOCK_UN);fclose($fp);  unset($utext);}}

header("location: kommm.php?action=komm&gid=$gid&isset=addkomm&page=$page&".SID);

}else{echo'<b>Ошибка, такого файла не существует!</b><br>';}
}else{echo'<b>Вы не написали комментарий или он слишком короткий</b><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>';
}

echo'<br><br><img src="../images/img/back.gif" alt=""> <a href="kommm.php?action=komm&amp;gid='.$gid.'&amp;page='.$page.'&amp;'.SID.'">Вернуться</a><br>';
echo'<img src="../images/img/reload.gif" alt=""> <a href="pages.php?page='.$page.'&amp;'.SID.'">В страничку '.nickname($page).'</a>';
}


##########################################################################
#                      Удаление комментариев
##########################################################################
if($action=="del"){
if($provpar==md5($_SESSION['par']) && $provlog==$_SESSION['log']) {
if ($dostup==101 || $dostup==102 || $dostup==103 || $dostup==105){
if ($num!="" && $gid!=""){
$file=file("clauses/base/$gid.dat.dat");
$fp=fopen("clauses/base/$gid.dat.dat","w");
flock ($fp,LOCK_EX);
for ($i=0;$i< sizeof($file);$i++) { if ($i==$num) {unset($file[$i]);} }
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);
}
header("location: kommm.php?action=komm&gid=$gid&start=$start&isset=delkomm&page=$page&".SID);
}}else{
header("location: kommm.php?action=komm&gid=$gid&start=$start&page=$page&".SID);
}}
include_once"../themes/$config_themes/foot.php";
?>