View file mpanel/forum.php

File size: 51.01Kb
<?php
require_once"../template/start.php";
require_once"../template/regglobals.php";
require_once"../template/config.php";
require_once"../forum/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";

$dates=date("d.m.y / H:i",$sitetime); 

if ($provlog==$_SESSION['log'] && $provpar==md5($_SESSION['par']) && $_SESSION['log']!="" && md5($_SESSION['par'])!="") {
if ($dostup==101 || $dostup==102 || $dostup==103 || $dostup==105){
	
echo'<img src="../images/img/menu.gif" alt=""> <b>Управление форумом</b><br><br>';	

if (isset($idd)) { 
if ($idd!="go") {
header ("Location: forum.php?event=topic&fid=$fid&id=$id&page=$page&".SID); 
} else {
if ($dostup==101 || $dostup==102 || $dostup==103 || $dostup==105){ 
$file=file("../local/dataforum/$id.dat"); 
if (count($file)==1) { 
echo' В ТЕМЕ должно остаться хотя бы одно сообщение!'; 
echo'<a href="forum.php?event=topic&fid='.$fid.'&id='.$id.'&page='.$page.'&'.SID.'">Продолжить</a>';  
include_once"../themes/$config_themes/foot.php"; 
exit;} 

$jj=0; 
for($j=0; $j<count($file); $j++) { 
if (isset($_POST["check$j"])) $jj++; } 

if(count($file) == $jj){ 
echo ' Вы выбрали на удаление все сообщения темы. Внимание!!! В ТЕМЕ должно остаться хотя бы одно сообщение!'; 
echo '<a href="forum.php?event=topic&fid='.$fid.'&id='.$id.'&page='.$page.'&'.SID.'">Продолжить</a>';  
include_once"../themes/$config_themes/foot.php"; 
exit;} 


$fp=fopen("../local/dataforum/$id.dat","w"); 
flock ($fp,LOCK_EX); 
$i=0; 
while ( isset($file[$i])) 
{if (isset($_POST["check$i"])) 
{unset($file[$i]);} 
$i++; } 
fputs($fp, implode("",$file)); 
flock ($fp,LOCK_UN); 
fclose($fp); }}
header ("Location: forum.php?event=topic&fid=$fid&id=$id&page=$page&isset=mp_forumdelpost_check&".SID); } 

//---Пересчет статистики---//
if(isset($event)) { 
if ($event =="revolushion") {
if ($dostup==101 || $dostup==102){
$lines = file("../local/dataforum/mainforum.dat");
$countmf=count($lines)-1;
$i="-1";$u=$countmf-1;$k="0";

do {$i++; $dt=explode("|", $lines[$i]);

$fid=$dt[0];
if ((is_file("../local/dataforum/topic$fid.dat")) && (sizeof("../local/dataforum/topic$fid.dat")>0))
{
$fl=file("../local/dataforum/topic$fid.dat");
$kolvotem=count($fl);
$kolvomsg="0";
for ($itf=0; $itf<$kolvotem; $itf++) 
{$forumdt = explode("|", $fl[$itf]);

$cd=$forumdt[7];
$msgfile=file("../local/dataforum/$cd.dat");
$countmsg=count($msgfile); $kolvomsg=$kolvomsg+$countmsg;}
if ($kolvotem=="0") {$dt[8]="";}
$lines[$i]=$dt[0].'|'.$dt[1].'|'.$dt[2].'|'.$dt[3].'|'.$kolvotem.'|'.$kolvomsg.'|'.$dt[6].'|'.$dt[7].'|'.$dt[8].'|'.$dt[9].'|'.$dt[10].'|'.$dt[11].'||';

}else{
$kolvotem="0"; 
$kolvomsg="0"; 
$lines[$i]=$dt[0].'|'.$dt[1].'|'.$dt[2].'|'.$dt[3].'|'.$kolvotem.'|'.$kolvomsg.'|'.$dt[6].'|'.$dt[7].'|'.$dt[8].'||'.$dt[10].'|'.$dt[11].'||';}

} while($i < $countmf);

$file=file("../local/dataforum/mainforum.dat");
$fp=fopen("../local/dataforum/mainforum.dat","w");
flock ($fp,LOCK_EX); 
for ($i=0;$i< sizeof($file);$i++) {fputs($fp,"$lines[$i]\r\n");}
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/mainforum.dat", 0777);

echo 'Всё успешно пересчитано<br>';
echo'<a href="forum.php?'.SID.'">&#187;Продолжить</a><br>'; 
include_once"../themes/$config_themes/foot.php";
exit; }}}

//---Cдвиг топиков---//
if(isset($movetopic)) { if ($movetopic!="") {
$move1=$movetopic;
if ($where=="0") {$where="-1";}
$move2=$move1-$where;
$file=file("../local/dataforum/mainforum.dat"); 
$imax=sizeof($file);
if (($move2>=$imax) or ($move2<"0")) {
echo 'Нельзя туда двигать!<br>'; 
echo'<a href="forum.php?'.SID.'">&#187;Продолжить</a><br>'; 
include_once"../themes/$config_themes/foot.php"; 
exit;}
$data1=$file[$move1]; $data2=$file[$move2];

$fp=fopen("../local/dataforum/mainforum.dat","a+");
flock ($fp,LOCK_EX); 
ftruncate ($fp,0);
for ($i=0; $i<$imax; $i++) {if ($move1==$i) {fputs($fp,$data2);} else  {if ($move2==$i) {fputs($fp,$data1);} else {fputs($fp,$file[$i]);}}}
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/mainforum.dat", 0777);
header ("Location: forum.php?".SID);
//Раздел успешно сдвинут!
exit;}}


//---Подтверждение удаления топиков---//
if(isset($provtop)) {
echo 'Вы действительно хотите удалить топик?<br>';
echo 'Прежде чем удалить его необходимо удалить все темы внутри вручную<br>';
echo '<img src="../images/img/error.gif" alt=""> <a href="forum.php?fxd='.$provtop.'&amp;'.SID.'">Удалить</a><br>';
echo '<img src="../images/img/back.gif" alt=""> <a href="forum.php?'.SID.'">Вернуться назад</a><br>';
include_once"../themes/$config_themes/foot.php"; 
exit;}

//---Удаление топиков---//
if(isset($fxd)) { if ($fxd!="") {
$file=file("../local/dataforum/mainforum.dat");
$fp=fopen("../local/dataforum/mainforum.dat","w");
flock ($fp,LOCK_EX);
for ($i=0;$i< sizeof($file);$i++) { if ($i==$fxd) {unset($file[$i]);} }
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/mainforum.dat", 0777);
header ("Location: forum.php?isset=mp_delforums&".SID);
}else{header ("Location: forum.php?isset=mp_nodelforums&".SID);}
exit;}


//---Удаление тем---//
if ($action=="deltopic"){ 
if ($id!="" && $fid!="") {
	
$id=check($id);
$fid=(int)$fid;

$file=file("../local/dataforum/topic$fid.dat");
$count=count($file);
	
for ($b=0; $b<$count; $b++) { $idbase=explode("|",$file[$b]); if ( $id == $idbase[7]) { 
$stroka=$b; break;
}}

if($stroka!==""){
unlink ("../local/dataforum/$id.dat");
unlink ("../local/dataforum/$id.sex");

$fp=fopen("../local/dataforum/topic$fid.dat","w");
flock ($fp,LOCK_EX); 
for ($i=0;$i< sizeof($file);$i++) { if ($i==$stroka) {unset($file[$i]);} }
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/topic$fid.dat", 0777);
}
header ("Location: forum.php?fid=$fid&page=$page&isset=mp_delthemes&".SID);
}else{header ("Location: forum.php?fid=$fid&page=$page&isset=mp_nodelthemes&".SID);}
exit; }


//---Удаление сообщений---//
if (isset($topicxd)) { if ($topicxd!="") {
$topicxd=$topicxd-1;
$file=file("../local/dataforum/$id.dat");

if (count($file)==1) {
echo ' В теме должно остаться хотя бы одно сообщение! <br>';
echo '<a href="forum.php?event=topic&amp;fid='.$fid.'&amp;id='.$id.'&amp;page='.$page.'&amp;'.SID.'">&#187;Продолжить</a><br>';  include_once"../themes/$config_themes/foot.php"; 
exit;}

$fp=fopen("../local/dataforum/$id.dat","w");
flock ($fp,LOCK_EX);
for ($i=0;$i< sizeof($file);$i++) { if ($i==$topicxd) {unset($file[$i]);} }
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/$id.dat", 0777);

header ("Location: forum.php?fid=$fid&page=$page&isset=mp_delthemes&".SID);

header ("Location: forum.php?event=topic&fid=$fid&id=$id&page=$page&isset=mp_forumdelpost&".SID);
//Сообщение успешно удалено!
exit; }}


//--Добавление разделов--//
if(isset($event)) { 
if ($event =="addmainforum") {	
if ($zag!="") {

$nextnum="1";
if (is_file("../local/dataforum/mainforum.dat")) { 
$lines=file("../local/dataforum/mainforum.dat"); 
$imax = count($lines); $i=0; 
do {$dt = explode("|", $lines[$i]); 
if ($nextnum<$dt[0]) {$nextnum=$dt[0];} $i++; 
} 
while($i < $imax); $nextnum++; }

//---------Запись запрета раздела----------//
$zp = file_get_contents(BASEDIR."local/dataforumset/datarazdel/$nextnum.dat"); 
$zash = explode("|",$zp);

$zash[0]=check($xy);

for ($u=0; $u<2; $u++){
$utext.=$zash[$u].'|';}

if($utext!=""){
$fp=fopen(BASEDIR."local/dataforumset/datarazdel/$nextnum.dat","a+");
flock($fp,LOCK_EX);   
ftruncate($fp,0);                                                                 
fputs($fp,$utext);
fflush($fp);
flock($fp,LOCK_UN);
fclose($fp);  
unset($utext);}
//-----------------------------------//

$msg=check($msg);
$zag=check($zag);
$info=check($info);

$txtmf=$nextnum.'|'.$zag.'|рус||0|0||'.$date.'|'.$time.'|||'.$info.'||';
$txtmf=preg_replace ("|[\r\n]+|si","",$txtmf);

$fp=fopen("../local/dataforum/mainforum.dat","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$txtmf\r\n");
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/mainforum.dat", 0777);
header ("Location: forum.php?isset=mp_addforums&".SID);
}else{
header ("Location: forum.php?isset=mp_noaddforums&".SID);}
exit; }


//---Переименование раздела---//
if ($event =="frdmainforum") {
if ($zag != "" && $frd!="") { 	
	
$lines = file("../local/dataforum/mainforum.dat");
$dt = explode("|", $lines[$frd]);

//---------Запись запрета раздела----------//
$zp = file_get_contents(BASEDIR."local/dataforumset/datarazdel/$xz.dat"); 
$zash = explode("|",$zp);

$zash[0]=check($xy);

for ($u=0; $u<2; $u++){
$utext.=$zash[$u].'|';}

if($utext!=""){
$fp=fopen(BASEDIR."local/dataforumset/datarazdel/$xz.dat","a+");
flock($fp,LOCK_EX);   
ftruncate($fp,0);                                                                 
fputs($fp,$utext);
fflush($fp);
flock($fp,LOCK_UN);
fclose($fp);  
unset($utext);}
//-----------------------------------//

$zag=check($zag);
$zag=preg_replace ("|[\r\n]+|si","",$zag);

$txtmf=$dt[0].'|'.$zag.'|'.$dt[2].'|'.$dt[3].'|'.$dt[4].'|'.$dt[5].'|'.$dt[6].'|'.$dt[7].'|'.$dt[8].'|'.$dt[9].'|'.$dt[10].'|'.$info.'||';
$txtmf=preg_replace ("|[\r\n]+|si","",$txtmf);

$file=file("../local/dataforum/mainforum.dat");
$fp=fopen("../local/dataforum/mainforum.dat","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
for ($i=0;$i< sizeof($file);$i++) {
if ($frd!=$i) {
fputs($fp,$file[$i]);
} else {
fputs($fp,"$txtmf\r\n");}}
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/mainforum.dat", 0777);

header ("Location: forum.php?isset=mp_editrazdel&".SID);
//Раздел успешно переименован
}else{ header ("Location: forum.php?frd=$frd&isset=mp_noeditrazdel&".SID);}
exit; }

//---Закрытие тем---//
if ($event=="zakr")  {

$fileg=file("../local/dataforum/$id.dat");
$fileg=array_reverse($fileg);
$ddat=explode("|", $fileg[0]);

$text=$log.'|рус|('.$brow.', '.$ip.')|'.$ddat[3].'|<img src="../images/smiles2/closed.gif" alt=""> Тема закрыта для обсуждения!|'.$date.'|'.$time.'|'.$id.'|'.$fid.'|CLOSED|'.$ddat[10].'|'.$ddat[11].'|'.$userfile.'|'.$ext1.'|'.$skryt.'|'.$zakryt.'|'.$iconid.'||';

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

//Тема закрыта для обсуждения!
header ("Location: forum.php?event=topic&fid=$fid&id=$id&".SID);
exit;}

//---Открытие тем---//
if ($event=="otkr")  {
	
$file=file("../local/dataforum/$id.dat");
$file=array_reverse($file);
$fp=fopen("../local/dataforum/$id.dat","w");
flock ($fp,LOCK_EX);

unset($file[0]);
$file=array_reverse($file);
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/$id.dat", 0777);

//Тема снова открыта
header ("Location: forum.php?event=topic&fid=$fid&id=$id&".SID);
exit;}

//---Закрепление тем---//
if ($event=="locked")  {

$file=file("../local/dataforum/topic$fid.dat");
foreach($file as $index => $val){
$alldata = explode("|",$file[$index]);
if($alldata[7]==$id){
      $file[$index]=$alldata[0].'|'.$alldata[1].'|'.$alldata[2].'|'.$alldata[3].'|'.$alldata[4].'|'.$alldata[5].'|'.$alldata[6].'|'.$alldata[7].'|'.$alldata[8].'|'.$alldata[9].'|'."ON|\r\n";
		   $fp=fopen("../local/dataforum/topic$fid.dat","w");
           flock ($fp,LOCK_EX);
           fputs($fp, implode("",$file));
           flock ($fp,LOCK_UN);
           fclose($fp);
           chmod($fp, 0777); }}

$file=file("../local/dataforum/$id.dat");
$file=array_reverse($file);
$fp=fopen("../local/dataforum/$id.dat","w");
flock ($fp,LOCK_EX);

$post= explode("|", $file[0]);
$file[0]=$post[0].'|'.$post[1].'|'.$post[2].'|'.$post[3].'|'.$post[4].'|'.$post[5].'|'.$post[6].'|'.$post[7].'|'.$post[8].'|'.$post[9].'|'."ON|\r\n";
$file=array_reverse($file);
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);

//Тема закреплена!
header ("Location: forum.php?event=topic&fid=$fid&id=$id&".SID);
exit;}

//---Открепление тем---//
if ($event=="unlocked")  {

$file=file("../local/dataforum/topic$fid.dat");
foreach($file as $index => $val)
      {$alldata = explode("|",$file[$index]);
       if($alldata[7]==$id){
$file[$index]=$alldata[0].'|'.$alldata[1].'|'.$alldata[2].'|'.$alldata[3].'|'.$alldata[4].'|'.$alldata[5].'|'.$alldata[6].'|'.$alldata[7].'|'.$alldata[8].'|'.$alldata[9].'||'."\r\n";
		   $fp=fopen("../local/dataforum/topic$fid.dat","w");
           flock ($fp,LOCK_EX);
           fputs($fp, implode("",$file));
           flock ($fp,LOCK_UN);
           fclose($fp);
           chmod($fp, 0777); 
		   }
       }

$file=file("../local/dataforum/$id.dat");
$file=array_reverse($file);
$fp=fopen("../local/dataforum/$id.dat","w");
flock ($fp,LOCK_EX);

$post= explode("|", $file[0]);
$file[0]=$post[0].'|'.$post[1].'|'.$post[2].'|'.$post[3].'|'.$post[4].'|'.$post[5].'|'.$post[6].'|'.$post[7].'|'.$post[8].'|'.$post[9].'||'."\r\n";
$file=array_reverse($file);
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);

//Тема откреплена
header ("Location: forum.php?event=topic&fid=$fid&id=$id&".SID);
exit;}


//---Переименование темы---//
if ($event=="rdtema") { 
if ($zag!="" && $id!="" && $fid!="") { 

$fid=(int)$fid;
$id=check($id);
$zag=check_full($zag);

$lines=file("../local/dataforum/topic$fid.dat");
$count=count($lines);
	
for ($b=0; $b<$count; $b++) { 
$idbase=explode("|",$lines[$b]); 
if ( $id == $idbase[7]) { 
$stroka=$b; break;}}

$dt=explode("|", $lines[$stroka]);

$txtmf=$dt[0].'|рус|'.$dt[2].'|'.$zag.'|'.$dt[4].'|'.$dt[5].'|'.$dt[6].'|'.$id.'|'.$fid.'|'.$dt[9].'|'.$dt[10].'|';

$file=file("../local/dataforum/topic$fid.dat");
$fp=fopen("../local/dataforum/topic$fid.dat","a+");
flock ($fp,LOCK_EX); 
ftruncate ($fp,0); 
for ($i=0;$i< sizeof($file);$i++) { if ($stroka!=$i) {fputs($fp,$file[$i]);} else {fputs($fp,"$txtmf\r\n");} }
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/topic$fid.dat", 0777);


$lines = file("../local/dataforum/mainforum.dat");
$i3=count($lines);
do {$i3--; $dd = explode("|", $lines[$i3]);
if ($dd[0]==$fid) {$realfid=$i3; } 
} while($i3>0);
$dd = explode("|", $lines[$realfid]);
if ($id==$dd[3]){

$txtdat=$dd[0].'|'.$dd[1].'|'.$dd[2].'|'.$dd[3].'|'.$dd[4].'|'.$dd[5].'|'.$dd[6].'|'.$dd[7].'|'.$dd[8].'|'.$dd[9].'|'.$zag.'|'.$dd[11].'|';
$txtdat=preg_replace ("|[\r\n]+|si","",$txtdat);

$fp2=fopen("../local/dataforum/mainforum.dat","a+");
flock ($fp2,LOCK_EX); 
ftruncate ($fp2,0);
for ($i2=0;$i2<=(sizeof($lines)-1);$i2++) {if ($i2==$realfid) {fputs($fp2,"$txtdat\r\n");} else {fputs($fp2,$lines[$i2]);}}
fflush ($fp2);
flock ($fp2,LOCK_UN);
fclose($fp2);
chmod($fp2, 0777);
chmod("../local/dataforum/mainforum.dat", 0777);
}

$file1=file("../local/dataforum/$id.dat");
$fs=count($file1)-1; $i1="-1";
$dt = explode("|", $file1[$fs]);

$text1=$dt[0].'|рус|'.$dt[2].'|'.$zag.'|'.$dt[4].'|'.$dt[5].'|'.$dt[6].'|'.$id.'|'.$fid.'|'.$dt[9].'|'.$dt[10].'|';
$text1=preg_replace ("|[\r\n]+|si","",$text1);

$fp1=fopen("../local/dataforum/$id.dat","a+");
flock ($fp1,LOCK_EX); 
ftruncate ($fp1,0);

do {$i1++; if ($i1==$fs) {fputs($fp1,"$text1\r\n");} else {fputs($fp1,$file1[$i1]);} } while($i1 < $fs);
fflush ($fp1);
flock ($fp1,LOCK_UN);
fclose($fp1);
chmod($fp1, 0777);
chmod("../local/dataforum/$id.dat", 0777);
}
header ("Location: forum.php?fid=$fid&page=$page&".SID); 
//Тема успешно изменена!
exit; }

} 

if(isset($event)){ 

if (($event=="addtopic") or ($event=="addanswer")) {
if ($fid!="") { 


$mainlines = file("../local/dataforum/mainforum.dat"); $i=count($mainlines);
do {$i--; $dt = explode("|", $mainlines[$i]);
if ($dt[0]==$fid) {$realfid=$i;} 

} while($i>0);

if (strlen($msg) > 1200 || strlen($msg) < 5) {
echo '<b>Ваше сообщение пустое или слишком длинное.</b><br>';
echo '<a href="forum.php?newtema=add&amp;fid='.$fid.'&amp;'.SID.'">&#187;Повторить</a><br>'; 
include_once"../themes/$config_themes/foot.php"; 
exit;}

if (strlen($zag) > 150 || strlen($zag) < 5 ) { 
echo '<b>Ваш заголовок пустой или слишком длинный!</b><br>'; 
echo '<a href="forum.php?newtema=add&amp;fid='.$fid.'&amp;'.SID.'">&#187;Повторить</a><br>'; 
include_once"../themes/$config_themes/foot.php"; 
exit;}


if($id!=""){
$locked="";
$provfile=file("../local/dataforum/$id.dat");
$provfile = array_reverse($provfile);
$provmas = explode("|",$provfile[0]);
if($provmas[10]=="ON"){$locked="ON";}
} 

if ($event=="addtopic") {
$tt=explode(' ', microtime()); 
$ttt=$tt[1]+$tt[0]; 
$ttf=str_replace(".", "", $ttt); 
$id = $ttf;}

$log=check($log);
$brow=check($brow);
$zag=check($zag);
$msg=check($msg);
$msg = smiles($msg);
$skryt=check($skryt);
$zakryt=check($zakryt);
$iconid=check($iconid);

$id=check($id);
if($name==""){$name=$log;}

$msg = no_br($msg,'<br>');
$text=$name.'|рус|'.$brow.', '.$ip.'|'.$zag.'|<img src="../images/smiles2/moder.gif" alt=""> '.$msg.'|||'.$id.'|'.$fid.'|'.$sitetime.'|'.$locked.'||||'.$skryt.'|'.$zakryt.'|'.$iconid.'||';
$text = no_br($text);

if(isset($topicrd)) { 

$text2=$name.'|рус|'.$ipbrow.'|'.$zag.'|'.$msg.'<br>[red][Отредактировано: '.$log.' - '.$dates.'][/red]|'.$fdate.'|'.$ftime.'|'.$id.'|'.$fid.'|'.$timetk.'|'.$locked.'||||'.$skryt.'|'.$zakryt.'|'.$iconid.'||';
$text2=no_br($text2);

$file=file("../local/dataforum/$id.dat");
$fs=count($file)-1; 
$i="-1";

$fp=fopen("../local/dataforum/$id.dat","a+");
flock ($fp,LOCK_EX); 
ftruncate ($fp,0);
do {$i++; 
if ($i==$topicrd) {
fputs($fp,"$text2\r\n");
} else {
fputs($fp,$file[$i]);}}
while($i < $fs);
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/$id.dat", 0777);
header ("Location: forum.php?event=topic&fid=$fid&id=$id&page=$page&".SID);

//Сообщение успешно изменено!
include_once"../themes/$config_themes/foot.php";  
exit; }


$zag=utf_to_win($zag);
if (strlen($zag)>30) {$zag=substr($zag,0,30); $zag.="...";}
$zag=win_to_utf($zag);

$lines = file("../local/dataforum/mainforum.dat");
$dt = explode("|", $lines[$realfid]);
if ($event=="addtopic") {$dt[4]++;} $dt[5]++;
$txtdat=$dt[0].'|'.$dt[1].'|'.$dt[2].'|'.$id.'|'.$dt[4].'|'.$dt[5].'|'.$log.'|||'.$sitetime.'|'.$zag.'|'.$dt[11].'|||'.$skryt.'|'.$zakryt.'|'.$iconid.'||';

$fp=fopen("../local/dataforum/mainforum.dat","a+");
flock ($fp,LOCK_EX); 
ftruncate ($fp,0);
for ($i=0;$i<=(sizeof($lines)-1);$i++) {
if ($i==$realfid) {
fputs($fp,"$txtdat\r\n");
} else {
fputs($fp,$lines[$i]);}}
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/mainforum.dat", 0777);}

//---Добавление новой темы---//
if ($event =="addtopic") { 
if($fid!="" && $id!=""){
$fp=fopen("../local/dataforum/topic$fid.dat","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$text\r\n");
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/topic$fid.dat", 0777);

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

header ("Location: forum.php?event=topic&fid=$fid&id=$id&".SID); exit; }


if ($event=="addanswer") { 
$fp=fopen("../local/dataforum/$id.dat","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$text\r\n");
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777);
chmod("../local/dataforum/$id.dat", 0777);

// обновление топика тем
$file=file("../local/dataforum/topic$fid.dat");
foreach($file as $index => $val){
$alldata = explode("|",$file[$index]);
$alldata2 = explode("|",$text);
if($alldata[7]==$alldata2[7]){
$fp=fopen("../local/dataforum/topic$fid.dat","w");
flock ($fp,LOCK_EX);
unset($file[$index]);
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);
chmod($fp, 0777); 
}}

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

$filo=file("../local/dataforum/$id.dat"); 
$di=count($filo); 
$paga=(round($di/$config_forumpost))*$config_forumpost; 
if ($paga>=$di) $paga=$paga-$config_forumpost; 

//Сообщение успешно добавлено
header ("Location: forum.php?event=topic&fid=$fid&id=$id&page=$paga&".SID);
exit;}
}} 
/////////////////////////////////

if (isset($fid)) {
$mainlines = file("../local/dataforum/mainforum.dat");
$i=count($mainlines);

if (!ctype_digit($fid)) { 
echo '<h3>ОШИБКА!</h3>'; 
include_once"../themes/$config_themes/foot.php"; 
exit;}

do {$i--; $rdt = explode("|", $mainlines[$i]);
$dt = explode("|", $mainlines[$i]);
if ($dt[0]==$fid) {$i=0;}
} while($i > "1");


$frname=$dt[1]; 
$frname.=' -';

if (isset($id)) {if (is_file("../local/dataforum/$id.dat")) {$lines = file("../local/dataforum/$id.dat"); $dt = explode("|", $lines[0]); $frtname=$dt[3]; $frtname.=" -";} else {$frtname=""; $frname="";}} else {$frtname="";} } else {$frname=""; $frtname="";}


if (!isset($_GET['event'])) {
if (!isset($_GET['fid'])) {
//---Главная страница форума---//	
$lines = file("../local/dataforum/mainforum.dat"); 
$i=count($lines);
if($lines && $i>0){
$n="0"; $a1="-1"; $u=$i-1;
$fid="0"; $itogotem="0"; $itogomsg="0";
do {$a1++; $dt = explode("|", $lines[$a1]);
$fid=$dt[0];

echo'<div class=b><img src="../images/img/forums.gif" alt=""> <b><a href="forum.php?fid='.$fid.'&amp;'.SID.'">'.$dt[1].'</a></b>'; 

//---Инфо раздела---//
if ($dt[11]!=""){
echo'<br>&#171;'.$dt[11].'&#187;';}else{echo'';}
//------------------------------//

//-------------Вывод статуса раздела-------------//
if($config_zakrytthem=="1"){
$zap = @file(BASEDIR."local/dataforumset/datarazdel/$fid.dat");
if ($zap!=""){
$zak = explode("|",$zap[0]);}
if($zak[0]==0){
echo'<br><font color="aqua">Доступ открыт</font>';}
if($zak[0]==10){
echo'<br><img src="../images/imgfor/star/1.png">';}	
if($zak[0]==20){
echo'<br><img src="../images/imgfor/star/2.png">';}
if($zak[0]==30){
echo'<br><img src="../images/imgfor/star/3.png">';}
if($zak[0]==40){
echo'<br><img src="../images/imgfor/star/4.png">';}
if($zak[0]==50){
echo'<br><img src="../images/imgfor/star/5.png">';}	
if($zak[0]==60){
echo'<br><img src="../images/imgfor/star/6.png">';}
if($zak[0]==70){
echo'<br><img src="../images/imgfor/star/7.png">';}
if($zak[0]==80){
echo'<br><img src="../images/imgfor/star/8.png">';}
if($zak[0]==90){
echo'<br><img src="../images/imgfor/star/9.png">';}
if($zak[0]==100){
echo'<br><img src="../images/imgfor/star/10.png">';}}
//-------------------------//

echo'<br>Тем: <font color="red">'.$dt[4].'</font>/Постов: <font color="red">'.$dt[5].'</font>';
if ($dostup==101 || $dostup==102){
echo '<br><a href="forum.php?movetopic='.$a1.'&amp;where=1&amp;'.SID.'">[Вверх]</a>';
echo'<a href="forum.php?movetopic='.$a1.'&amp;where=0&amp;'.SID.'">[Вниз]</a>';
echo'<br><a href="forum.php?frd='.$a1.'&amp;xz='.($a1+1).'&amp;'.SID.'">[Изменить]</a>';
echo'<a href="forum.php?provtop='.$a1.'&amp;'.SID.'"><font color="#FF0000">[Удалить]</font></a>';}
echo'</div>';

if($dt[10]!=""){
echo 'Тема: <a href="forum.php?event=topic&amp;fid='.$fid.'&amp;id='.$dt[3].'&amp;'.SID.'">'.$dt[10].'</a><br>';
echo'Написал: <b>'.nickname($dt[6]).'</b><br>Дата: '.date_fixed($dt[9]).'<br>';
}else{echo 'Темы еще не созданы!<br>';}

$itogotem=$itogotem+$dt[4]; $itogomsg=$itogomsg+$dt[5]; 

} while($a1 < $u);
}else{echo 'Разделы форума не созданы - добавьте раздел!';}

//--Форма редактирования раздела--//
if (isset($frd)) { 
if ($frd!="") {

$lines = file("../local/dataforum/mainforum.dat");
$dt = explode("|", $lines[$frd]);

if($config_zakrytthem=="1"){
$xz=$frd+1;
$zap = @file(BASEDIR."local/dataforum/$xz.dat");
if ($zap!=""){
$zak = explode("|",$zap[0]);}}

echo '<hr><form action="forum.php?event=frdmainforum&amp;frd='.$frd.'&amp;xz='.($a1+1).'&amp;'.SID.'" method="post">';
echo '<img src="../images/img/edit.gif" alt=""> <b>Редактирование раздела</b><br><br>';
echo'<b>Заголовок:</b><br>';

echo'<input type="text" name="zag" value="'.$dt[1].'" /><br>';

if($config_razd_info=="1"){
echo'<br><b>Инфо раздела:</b><br><input type="text" name="info" value="'.$dt[11].'"/><br>';}

if($config_zakrytthem=="1"){
echo'<br><b>Статус для просмотра раздела:</b><br>';
echo'<select name="xy">';
if($zak[0]==10){
echo'<option value="10">1 звезда';}	
if($zak[0]==20){
echo'<option value="20">2 звезды';}
if($zak[0]==30){
echo'<option value="30">3 звезды';}
if($zak[0]==40){
echo'<option value="40">4 звезды';}
if($zak[0]==50){
echo'<option value="50">5 звёзд';}	
if($zak[0]==60){
echo'<option value="60">6 звёзд';}
if($zak[0]==70){
echo'<option value="70">7 звёзд';}
if($zak[0]==80){
echo'<option value="80">8 звёзд';}
if($zak[0]==90){
echo'<option value="90">9 звёзд';}
if($zak[0]==100){
echo'<option value="100">10 звёзд';}
echo'<option value="">Свободный просмотр
<option value="10">1 звезда
<option value="20">2 звезды
<option value="30">3 звезды
<option value="40">4 звезды
<option value="50">5 звёзд
<option value="60">6 звёзд
<option value="70">7 звёзд
<option value="80">8 звёзд
<option value="90">9 звёзд
<option value="100">10 звёзд
</select><br><br>';}

echo'<input type="submit" value="Изменить" /></form>';
}} else {


//---Форма вывода добавления раздела---//
if ($dostup==101 || $dostup==102){

echo '<hr><form action="forum.php?event=addmainforum&amp;'.SID.'" method="post">';
echo '<img src="../images/img/edit.gif" alt=""> <b>Добавление Раздела</b><br><br>';
echo'<b>Заголовок:</b><br><input type="text" name="zag" /><br>';

if($config_razd_info=="1"){
echo'<br><b>Инфо раздела:</b><br><input type="text" name="info" /><br>';}

if($config_zakrytthem=="1"){
echo'<br><b>Статус для просмотра раздела:</b><br>';
echo'<select name="xy">';
echo'<option value="">Свободный просмотр
<option value="10">1 звезда
<option value="20">2 звезды
<option value="30">3 звезды
<option value="40">4 звезды
<option value="50">5 звёзд
<option value="60">6 звёзд
<option value="70">7 звёзд
<option value="80">8 звёзд
<option value="90">9 звёзд
<option value="100">10 звёзд
</select><br><br>';}

echo'<input type="submit" value="Добавить" /></form>';}}

echo '<hr>Всего тем: <b>'.(int)$itogotem.'</b><br>Всего сообщений: <b>'.(int)$itogomsg.'</b>';

} else {
	
$fid=(int)$fid;
$forums = file("../local/dataforum/mainforum.dat");
###################################################

$iz=count($forums);

$az1='-1'; 
$ux=$iz-1;

do {$az1++;
$yy=explode("|", $forums[$az1]);
if ($yy[0]==$fid){$raz=$yy[1];}} while($az1 < $ux);
####################################################


echo '<a href="forum.php?'.SID.'">Форум</a> | ';
echo '<a href="forum.php?fid='.$fid.'&amp;action=newthemes&amp;'.SID.'">Новая тема</a> | ';
echo '<a href="../forum/index.php?fid='.$fid.'&amp;page='.$page.'&amp;'.SID.'">Обзор</a><br>';

echo'<br><img src="../images/img/themes.gif" alt=""> <b>'.$raz.'</b><br><hr>'; 

//-------------Вывод статуса раздела-------------//
if($config_zakrytthem=="1"){
$zap = @file(BASEDIR."local/dataforumset/datarazdel/$fid.dat");
if ($zap!=""){
$zak = explode("|",$zap[0]);}
echo'<b>Доступ:</b> ';
if($zak[0]==0){
echo'<font color="aqua">открыт</font><hr>';}
if($zak[0]==10){
echo'<img src="../images/imgfor/star/1.png"><hr>';}	
if($zak[0]==20){
echo'<img src="../images/imgfor/star/2.png"><hr>';}
if($zak[0]==30){
echo'<img src="../images/imgfor/star/3.png"><hr>';}
if($zak[0]==40){
echo'<img src="../images/imgfor/star/4.png"><hr>';}
if($zak[0]==50){
echo'<img src="../images/imgfor/star/5.png"><hr>';}	
if($zak[0]==60){
echo'<img src="../images/imgfor/star/6.png"><hr>';}
if($zak[0]==70){
echo'<img src="../images/imgfor/star/7.png"><hr>';}
if($zak[0]==80){
echo'<img src="../images/imgfor/star/8.png"><hr>';}
if($zak[0]==90){
echo'<img src="../images/imgfor/star/9.png"><hr>';}
if($zak[0]==100){
echo'<img src="../images/imgfor/star/10.png"><hr>';}}
//------------------------------//

if (is_file("../local/dataforum/topic$fid.dat")) {
$msglines=file("../local/dataforum/topic$fid.dat");

if (count($msglines)>0) {

$lines=file("../local/dataforum/topic$fid.dat");

//************************************************************//
$ups=0;
while (isset($lines[$ups]))
       { $well=explode("|", $lines[$ups]);
	     if ($well[10]!="ON")
		     { $unlines[]= $lines[$ups]; }
		 $ups++;
	   }
$ups=0;
while (isset($lines[$ups]))
       { $well=explode("|", $lines[$ups]);
	     if ($well[10]=="ON")
		     { $unlines[]= $lines[$ups]; }
		 $ups++;
	   }
unset($lines);
$lines=$unlines;
//************************************************************//

$i=count($lines); $n="0";
if (!isset($page)) {$page="0";}

if ($page>=$i) {$page=$i-1;} 
if ($i-$page-$config_forumtem>=0) {$a1=$i-$page; $u=$a1-$config_forumtem;} else {$a1=$i-$page; $u=0;}

do {$a1--; $dt=explode("|", $lines[$a1]);

$filename=$dt[7]; 
if (is_file("../local/dataforum/$filename.dat")) {
$msgsize = sizeof(file("../local/dataforum/$filename.dat"));} 

$datatek=file("../local/dataforum/$filename.dat");
$pos=$msgsize-1;
$dtt = explode("|", $datatek[$pos]);

/////////////////
echo '<div class=b>';

if($dtt[10]=="ON"){echo '<img src="../images/img/lock.gif" alt=""> ';}
elseif($dtt[6]=="CLOSED"){echo '<img src="../images/img/zakr.gif" alt=""> ';}
else{echo '<img src="../images/img/forums.gif" alt=""> ';}

if($config_dopikontem=="1"){
if($dt[16]==""){echo '';}
if($dt[16]=="1"){echo ' <img src="../images/imgfor/id/1.gif"> ';}
if($dt[16]=="2"){echo ' <img src="../images/imgfor/id/2.gif"> ';}
if($dt[16]=="3"){echo ' <img src="../images/imgfor/id/3.gif"> ';}
if($dt[16]=="4"){echo ' <img src="../images/imgfor/id/4.gif"> ';}
if($dt[16]=="5"){echo ' <img src="../images/imgfor/id/5.gif"> ';}
if($dt[16]=="6"){echo ' <img src="../images/imgfor/id/6.gif"> ';}
if($dt[16]=="7"){echo ' <img src="../images/imgfor/id/7.gif"> ';}
if($dt[16]=="8"){echo ' <img src="../images/imgfor/id/8.gif"> ';}
if($dt[16]=="9"){echo ' <img src="../images/imgfor/id/9.gif"> ';}
if($dt[16]=="10"){echo ' <img src="../images/imgfor/id/10.gif"> ';}
if($dt[16]=="11"){echo ' <img src="../images/imgfor/id/11.gif"> ';}
if($dt[16]=="12"){echo ' <img src="../images/imgfor/id/12.gif"> ';}
if($dt[16]=="13"){echo ' <img src="../images/imgfor/id/13.gif"> ';}
if($dt[16]=="14"){echo ' <img src="../images/imgfor/id/14.gif"> ';}}

echo '<b><a href="forum.php?event=topic&amp;fid='.$fid.'&amp;id='.$dt[7].'&amp;'.SID.'">'.$dt[3].'</a></b>';

//-------------Вывод статуса темы-------------//
if($config_zakrytthem=="1"){
if($dt[15]==0){
echo'<br><font color="aqua">Доступ открыт</font>';}
if($dt[15]==10){
echo'<br><img src="../images/imgfor/star/1.png">';}	
if($dt[15]==20){
echo'<br><img src="../images/imgfor/star/2.png">';}
if($dt[15]==30){
echo'<br><img src="../images/imgfor/star/3.png">';}
if($dt[15]==40){
echo'<br><img src="../images/imgfor/star/4.png">';}
if($dt[15]==50){
echo'<br><img src="../images/imgfor/star/5.png">';}	
if($dt[15]==60){
echo'<br><img src="../images/imgfor/star/6.png">';}
if($dt[15]==70){
echo'<br><img src="../images/imgfor/star/7.png">';}
if($dt[15]==80){
echo'<br><img src="../images/imgfor/star/8.png">';}
if($dt[15]==90){
echo'<br><img src="../images/imgfor/star/9.png">';}
if($dt[15]==100){
echo'<br><img src="../images/imgfor/star/10.png">';}}

echo'<br>Сообщений: <font color="red">'.$msgsize.'</font>';
echo'<br><a href="forum.php?action=edittopic&amp;fid='.$fid.'&amp;id='.$dt[7].'&amp;page='.$page.'&amp;'.SID.'">[Изменить]</a>'; 
echo'<a href="forum.php?action=deltopic&amp;fid='.$fid.'&amp;id='.$dt[7].'&amp;page='.$page.'&amp;'.SID.'"><font color="#FF0000">[Удалить]</font></a></div><div>';


//---Правильный пост. вывод для тем (превью)---//
$ba=ceil($msgsize/$config_forumpost);
$ba2=floor(($msgsize-1)/$config_forumpost)*$config_forumpost;

echo'Страницы:';
$asd2=$page+($config_forumpost*5);
for($i=0; $i<$asd2;)
{
if($i<$msgsize && $i>=0){
$ii=floor(1+$i/$config_forumpost);
echo ' <a href="forum.php?event=topic&amp;fid='.$fid.'&amp;id='.$dt[7].'&amp;page='.$i.'&amp;'.SID.'">'.$ii.'</a>';
}       
$i=$i+$config_forumpost;}
if($asd2<$msgsize){
echo ' ... <a href="forum.php?event=topic&amp;fid='.$fid.'&amp;id='.$dt[7].'&amp;page='.$ba2.'&amp;'.SID.'">'.$ba.'</a>';}

if ($msgsize>=2) {
$linesdat=file("../local/dataforum/$filename.dat"); 
$dtdat=explode("|", $linesdat[$msgsize-1]); 
$dt[0]=$dtdat[0]; 
$dt[1]=$dtdat[1]; 
$dt[2]=$dtdat[2]; 
$dt[5]=$dtdat[5]; 
$dt[6]=$dtdat[6];}


echo'<br>Написал: '.nickname($dt[0]).'<br>Дата: '.date_fixed($dt[9]).'</div>';
} while($a1 > $u);


//---Правильный пост. вывод для тем---//
$lines=file("../local/dataforum/topic$fid.dat");
$total=count($lines);
$ba=ceil($total/$config_forumtem);
$ba2=$ba*$config_forumtem-$config_forumtem;
echo '<br>';
	
echo '<hr>Страницы:';
$asd=$page-($config_forumtem*2);
$asd2=$page+($config_forumtem*3);

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

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

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


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

}else{echo '<br>';}
}


//---Редактирование  и Добавление Темы---//
if($action=="edittopic"){
if ($id!="" && $fid!="")  {
	
$id=check($id);
$fid=(int)$fid;

$lines=file("../local/dataforum/topic$fid.dat");
$count=count($lines);
	
for ($b=0; $b<$count; $b++) { $idbase=explode("|",$lines[$b]); if ( $id == $idbase[7]) { $stroka=$b; break;}}

$dt=explode("|", $lines[$stroka]);


echo '<hr><b>Редактирование Темы</b><br><br>';
echo '<b>Тема:</b><br>';
echo '<form action="forum.php?fid='.$fid.'&amp;event=rdtema&amp;id='.$id.'&amp;'.SID.'" method="post">';
echo '<input type="text" name="zag" value="'.$dt[3].'" /><br>';

echo '<input type="submit" value="Изменить" /></form><hr>';
}}
	
//---Форма добавления новой темы---//
if($action=="newthemes"){

echo '<hr><img src="../images/img/edit.gif" alt=""> <b>Добавление темы</b><br><br>';
echo '<form action="forum.php?event=addtopic&amp;fid='.$fid.'&amp;'.SID.'" method="post">';

echo '<b>Заголовок темы:</b><br>';
echo '<input type="text" name="zag" maxlength="30" /><br>';
echo '<b>Сообщение:</b><br>';
echo '<textarea cols="25" rows="3" name="msg"></textarea><br>';

if($config_zakrytthem=="1"){
echo'Статус для просмотра тем:<br>';
echo'<select name="zakryt">';
echo'<option value="">Свободный просмотр
<option value="10">1 звезда
<option value="20">2 звезды
<option value="30">3 звезды
<option value="40">4 звезды
<option value="50">5 звёзд
<option value="60">6 звёзд
<option value="70">7 звёзд
<option value="80">8 звёзд
<option value="90">9 звёзд
<option value="100">10 звёзд
</select><br>';}

if($config_dopikontem=="1"){
echo'Иконка темы:<br>';
echo'
<input type="radio" name="iconid" value="1">-<img src="../images/imgfor/id/1.gif">&nbsp;
<input type="radio"  name="iconid" value="2">-<img src="../images/imgfor/id/2.gif">&nbsp;
<input type="radio"  name="iconid" value="3">-<img src="../images/imgfor/id/3.gif">&nbsp;
<input type="radio"  name="iconid" value="4">-<img src="../images/imgfor/id/4.gif">&nbsp;
<input type="radio"  name="iconid" value="5">-<img src="../images/imgfor/id/5.gif">&nbsp;
<input type="radio"  name="iconid" value="6">-<img src="../images/imgfor/id/6.gif">&nbsp;
<input type="radio"  name="iconid" value="7">-<img src="../images/imgfor/id/7.gif">&nbsp;
<input type="radio"  name="iconid" value="8">-<img src="../images/imgfor/id/8.gif">&nbsp;
<input type="radio"  name="iconid" value="9">-<img src="../images/imgfor/id/9.gif">&nbsp;
<input type="radio"  name="iconid" value="10">-<img src="../images/imgfor/id/10.gif">&nbsp;
<input type="radio"  name="iconid" value="11">-<img src="../images/imgfor/id/11.gif">&nbsp;
<input type="radio"  name="iconid" value="12">-<img src="../images/imgfor/id/12.gif">&nbsp;
<input type="radio"  name="iconid" value="13">-<img src="../images/imgfor/id/13.gif">&nbsp;
<input type="radio"  name="iconid" value="14">-<img src="../images/imgfor/id/14.gif">
<input type="radio"  name="iconid" value="0" checked="checked">-Без иконки<br>';}

echo '<br><input type="submit" value="Добавить" /></form><hr>';
}}
}else{

if ($event=="topic"){
	
if ($id == "") { echo '<br>Критическая ошибка, отсутствует ID темы';  include_once"../themes/$config_themes/foot.php"; exit;}
if ($fid == "") { echo '<br>Критическая ошибка, отсутствует FID раздела';   include_once"../themes/$config_themes/foot.php";  exit;}


$mainlines = file("../local/dataforum/mainforum.dat"); 
$i=count($mainlines);

do {$i--; $rdt = explode("|", $mainlines[$i]);
$dt = explode("|", $mainlines[$i]);
if ($dt[0]==$fid) {$i=0;}

} while($i > "1");
$frname=$dt[1];

//Тема удалена модератором!// 
if (!is_file("../local/dataforum/$id.dat")) {  
header ("Location: forum.php?fid=$fid&isset=delthemes&".SID);
exit;
}else { 
$lines = file("../local/dataforum/$id.dat");
if (count($lines)>0) {

$lines = file("../local/dataforum/$id.dat");
$i=count($lines);
$n="0";

if (!isset($page)){$page="0";}

if ($page>=$i) {$page=(round($i/$config_forumpost))*10;} 
if ($i<=$config_forumpost) {$page="0";}
if ($page>=1) {$a1=$page;} else {$a1=0;}
if (($a1+$config_forumpost)<$i) {$u=$a1+$config_forumpost;} else {$u=$i;}

do {$dt = explode("|", $lines[$a1]);

$dt[4]=bb_code_forum($dt[4]);

$a1++;

if (!isset($m1)) {

$filem=file("../local/dataforum/$id.dat");
$fg=count($filem)-1;
$dg=explode("|", $filem[$fg]);
$forums = file("../local/dataforum/mainforum.dat");

##########################################################

$iz=count($forums);
$az1="-1"; $ux=$iz-1;
do {$az1++;
$yy=explode("|", $forums[$az1]);
if ($yy[0]==$fid){$raz=$yy[1];}} while($az1 < $ux);

#############################################################

echo '<a href="forum.php?'.SID.'">Форум</a> | ';
echo '<a href="forum.php?fid='.$fid.'&amp;'.SID.'">'.$raz.'</a> | ';
echo '<a href="../forum/index.php?fid='.$fid.'&amp;id='.$id.'&amp;page='.$page.'&amp;'.SID.'">Обзор</a><br>';

echo '<br><img src="../images/img/themes.gif" alt="">';

//---Дополнительные иконки---//
if($config_dopikontem=="1"){
if($dg[16]==""){echo '';}
if($dg[16]=="1"){echo ' <img src="../images/imgfor/id/1.gif"> ';}
if($dg[16]=="2"){echo ' <img src="../images/imgfor/id/2.gif"> ';}
if($dg[16]=="3"){echo ' <img src="../images/imgfor/id/3.gif"> ';}
if($dg[16]=="4"){echo ' <img src="../images/imgfor/id/4.gif"> ';}
if($dg[16]=="5"){echo ' <img src="../images/imgfor/id/5.gif"> ';}
if($dg[16]=="6"){echo ' <img src="../images/imgfor/id/6.gif"> ';}
if($dg[16]=="7"){echo ' <img src="../images/imgfor/id/7.gif"> ';}
if($dg[16]=="8"){echo ' <img src="../images/imgfor/id/8.gif"> ';}
if($dg[16]=="9"){echo ' <img src="../images/imgfor/id/9.gif"> ';}
if($dg[16]=="10"){echo ' <img src="../images/imgfor/id/10.gif"> ';}
if($dg[16]=="11"){echo ' <img src="../images/imgfor/id/11.gif"> ';}
if($dg[16]=="12"){echo ' <img src="../images/imgfor/id/12.gif"> ';}
if($dg[16]=="13"){echo ' <img src="../images/imgfor/id/13.gif"> ';}
if($dg[16]=="14"){echo ' <img src="../images/imgfor/id/14.gif"> ';}}
//-------------------------//

echo'<b>'.$dg[3].'</b><br>'; 

//-------------Вывод статуса темы--------------//
if($config_zakrytthem=="1"){
echo'<hr> <b>Доступ:</b> ';
if($dg[15]==0){
echo'<font color="aqua">открыт</font>';}
if($dg[15]==10){
echo'<img src="../images/imgfor/star/1.png">';}	
if($dg[15]==20){
echo'<img src="../images/imgfor/star/2.png">';}
if($dg[15]==30){
echo'<img src="../images/imgfor/star/3.png">';}
if($dg[15]==40){
echo'<img src="../images/imgfor/star/4.png">';}
if($dg[15]==50){
echo'<img src="../images/imgfor/star/5.png">';}	
if($dg[15]==60){
echo'<img src="../images/imgfor/star/6.png">';}
if($dg[15]==70){
echo'<img src="../images/imgfor/star/7.png">';}
if($dg[15]==80){
echo'<img src="../images/imgfor/star/8.png">';}
if($dg[15]==90){
echo'<img src="../images/imgfor/star/9.png">';}
if($dg[15]==100){
echo'<img src="../images/imgfor/star/10.png">';}}
//---------------------------//

$m1='1'; 

###############################

$lines2=file("../local/dataforum/$id.dat");

$lines2=array_reverse($lines2);
$ddd=explode("|", $lines2[0]);

if($config_themes!=="wml"  && $i>1) {
echo'<form action="forum.php?idd=go&fid='.$fid.'&id='.$id.'&page='.$page.'&'.SID.'" method="POST">';} 

if ($ddd[9]!="CLOSED"){
echo '<hr><img src="../images/img/close.gif" alt=""> ';
echo '<a href="forum.php?event=zakr&amp;fid='.$fid.'&amp;id='.$id.'&amp;page=$page&amp;'.SID.'">Закрыть</a>';
}else{
echo '<b><font color="#FF0000">Тема закрыта</font></b><br>';

echo '<hr><img src="../images/img/open.gif" alt=""> ';
echo '<a href="forum.php?event=otkr&amp;fid='.$fid.'&amp;id='.$id.'&amp;page=$page&amp;'.SID.'">Открыть</a>';}

if ($ddd[10]!="ON"){
echo ' <img src="../images/img/open.gif" alt=""> ';
echo '<a href="forum.php?event=locked&amp;fid='.$fid.'&amp;id='.$id.'&amp;'.SID.'">Закрепить</a>';
}else{
echo ' <img src="../images/img/close.gif" alt=""> ';
echo '<a href="forum.php?event=unlocked&amp;fid='.$fid.'&amp;id='.$id.'&amp;'.SID.'">Открепить</a>';}
echo ' <img src="../images/img/close.gif" alt=""> ';
echo '<a href="forum.php?action=deltopic&amp;fid='.$fid.'&amp;id='.$id.'&amp;'.SID.'">Удалить</a><br>';}

################################## 

echo'<div class=b>';

$nnum=$a1-1; 
if($i>1) {
echo'<input type="checkbox" name="check'.$nnum.'">'; } 

echo'<img src="../images/img/edit.gif" alt="">'.$a1.'. '; 
echo'<b><a href="../pages/anketa.php?uz='.$dt[0].'">'.nickname($dt[0]).'</a></b> '; 
echo'<br>Дата: '.date_fixed($dt[6]).'<br>';
echo'<a href="forum.php?event=topic&amp;fid='.$fid.'&amp;id='.$id.'&amp;topicrd='.$a1.'&amp;page='.$page.'&amp;'.SID.'">[Изменить]</a>';
echo'<a href="forum.php?event=topic&amp;fid='.$fid.'&amp;id='.$id.'&amp;topicxd='.$a1.'&amp;page='.$page.'&amp;'.SID.'"><font color="#FF0000">[Удалить]</font></a>';
echo'<br><a href="../'.$config_mpanel.'/ban.php?action=zaban&amp;ips='.$avv[14].'&amp;'.SID.'">[Бан-ip]</a>';
echo'<a href="../'.$config_mpanel.'/zaban.php?action=edit&amp;users='.$dt[0].'&amp;'.SID.'">[Бан-us]</a><a href="../forum/mzaban.php?action=edit&amp;users='.$dt[0].'&amp;'.SID.'">[бан-форума]</a></div>';
echo'<div>'.$dt[4].'';

if ($dt[13]=="") { 
echo'';
}else{ 
echo'<br>Прикрепленный файл:<br><a href="'.$dt[13].'/'.$dt[12].'">&#187;<b>'.$dt[12].'</b></a>'; 
echo' <a href="forum.php?event=topic&fid='.$fid.'&id='.$id.'&topicrd1='.$a1.'&page='.$page.'&'.SID.'">[удал]</a>'; } 

echo'<br><small><font color="#CC00CC">'.$dt[2].'</font></small></div>';

} while($a1 < $u);

if($config_themes!=="wml"){
if($i>1){
echo'<hr><input type="submit" value="Удалить выбранное"></form>'; }} 

//---Постраничный вывод внутри темы---//
$lines=file("../local/dataforum/$id.dat");
$total=count($lines);

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

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

if($asd<$total && $asd>0){echo ' <a href="forum.php?event=topic&amp;fid='.$fid.'&amp;id='.$id.'&amp;page=0&amp;'.SID.'">1</a> ...';}

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

if ($page==$i) {
echo ' <b>('.$ii.')</b>';
} else {
echo ' <a href="forum.php?event=topic&amp;fid='.$fid.'&amp;id='.$id.'&amp;page='.$i.'&amp;'.SID.'">'.$ii.'</a>';
}}

$i=$i+$config_forumpost;}
if($asd2<$total){echo ' ... <a href="forum.php?event=topic&amp;fid='.$fid.'&amp;id='.$id.'&amp;page='.$ba2.'&amp;'.SID.'">'.$ba.'</a>';}
/////////////////////////////////

//-------Удаление прикрепленного файла-------//
if (isset($topicrd1)) { 
$topicrd1=$topicrd1-1; 
$lines = file("../local/dataforum/$id.dat"); 
$dt = explode("|", $lines[$topicrd1]); 
unlink("../forum/$dt[13]/$dt[12]"); 
unlink("../forum/$dt[13]/$dt[12].txt"); 
unlink("../forum/$dt[13]/$dt[12].kom"); 

$dt[4] = preg_replace('# 
<small><font color="red">Файл удалил(.*?)</font></small>#si', '', $dt[4]); 
$dt[4]=str_replace('<img src="../images/smiles/',':',$dt[4]); 
$dt[4]=str_replace('.gif" alt="">','',$dt[4]); 
$dt[4]=str_replace (" 
","\r\n",$dt[4]); 
$dt[4]=str_replace ("<br />","\r\n",$dt[4]); 
$dt[10]=ereg_replace("\r\n","",$dt[10]); 
echo'<hr><form action="forum.php?event=addanswer&fid='.$fid.'&topicrd='.$topicrd1.'&page='.$page.'&redq=yes&'.SID.'" method="post">'; 
echo'<input type="hidden" name="msg" value="'.$dt[4].'" />'; 
echo '<input type="hidden" name="name" value="'.$dt[0].'" />'; 
echo '<input type="hidden" name="id" value="'.$dt[7].'" />'; 
echo '<input type="hidden" name="zag" value="'.$dt[3].'" />'; 
echo '<input type="hidden" name="fdate" value="'.$dt[5].'" />'; 
echo '<input type="hidden" name="ftime" value="'.$dt[6].'" />'; 
echo '<input type="hidden" name="fnomer" value="'.$topicrd1.'" />'; 
echo '<input type="hidden" name="time" value="'.$dt[9].'" />'; 
echo '<input type="hidden" name="locked" value="'.$dt[10].'" />'; 
echo '<input type="hidden" name="page" value="'.$page.'" />'; 
echo'<input type="hidden" name="redq" value="yes" />'; 
echo'<input type="submit" value="Удалить файл" /></form>';} 
//----------------------------------------------------// 

if (isset($topicrd)) {
$topicrd=$topicrd-1;
$lines = file("../local/dataforum/$id.dat");
$dt = explode("|", $lines[$topicrd]);  

$dt[4] = nosmiles($dt[4]);
$dt[4] = preg_replace('#<br>\[red\]\[(.*?)\]\[/red\]#si', '',$dt[4]); 
$dt[4] = str_replace ("<br>","\r\n",$dt[4]);


echo '<hr><form action="forum.php?event=addanswer&amp;fid='.$fid.'&amp;topicrd='.$topicrd.'&amp;page='.$page.'&amp;'.SID.'" method="post">';
echo '<img src="../images/img/edit.gif" alt=""> <b>Редактирование сообщения</b><br>';
echo '<br><b>Сообщение:</b><br>';
echo '<textarea name="msg" cols="25" rows="3">'.$dt[4].'</textarea>';
echo '<input type="hidden" name="name" value="'.$dt[0].'" />';
echo '<input type="hidden" name="ipbrow" value="'.$dt[2].'" />';
echo '<input type="hidden" name="id" value="'.$dt[7].'" />';
echo '<input type="hidden" name="zag" value="'.$dt[3].'" />';
echo '<input type="hidden" name="ftime" value="'.$dt[6].'" />';
echo '<input type="hidden" name="fnomer" value="'.$topicrd.'" />';
echo '<input type="hidden" name="timetk" value="'.$dt[9].'" />';
echo '<input type="hidden" name="page" value="'.$page.'" /><br><br>';
echo '<input type="submit" value="Изменить" /></form>';

} else  {


$lines2=file("../local/dataforum/$id.dat");
$lines2=array_reverse($lines2);
$ddd=explode("|", $lines2[0]);	
if ($ddd[9]!="CLOSED"){

echo '<hr><b>Сообщение:</b><br>';
echo '<form action="forum.php?event=addanswer&amp;fid='.$fid.'&amp;page='.$page.'&amp;id='.$id.'&amp;'.SID.'" method="post">';
echo '<input type="hidden" name="zag" value="'.$dt[3].'" />';
echo '<textarea name="msg" cols="25" rows="3"></textarea><br><br>';
echo '<input type="submit" value="Отправить" /></form><hr>';

}}

}}}} 

echo '<br>';
if ($dostup==101 || $dostup==102){
echo '<br><img src="../images/img/reload.gif" alt=""> <a href="forum.php?event=revolushion&amp;'.SID.'">Пересчитать</a>';}
echo'<br><img src="../images/imgfor/barrow.gif" alt=""> <a href="../forum/index.php?'.SID.'">Форум</a>';
if ($dostup==101 || $dostup==102 || $dostup==103 || $dostup==105){
echo'<br><img src="../images/imgfor/nastroyki.png" alt=""> <a href="../forum/mzaban.php?'.SID.'">Бан/Разбан</a>';
echo'<br><img src="../images/imgfor/nastroyki.png" alt=""> <a href="../forum/mbanlist.php?'.SID.'">Список забаненных</a>';}
if ($dostup==101){
echo'<br><img src="../images/imgfor/nastroyki.png" alt=""> <a href="'.$config_home.'/forum/msetforum.php?start='.$start.'&amp;'.SID.'">Настройки форума</a>';
echo'<br><img src="../images/imgfor/nastroyki.png" alt=""> <a href="'.$config_home.'/forum/f_votes.php?'.SID.'">Настройки голосования</a>';}
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><br>';

} else {header ("Location: ../index.php?isset=404&".SID);}
} else {header ("Location: ../index.php?isset=404&".SID);}

include_once"../themes/$config_themes/foot.php";
?>