Файл: modules/news/kom.php
Строк: 496
<?php
########################################
## WAP-ENGINE ##
########################################
## ##
## Автор : CHUMA (Токарев Владимир) ##
## e-mail : crazychuma@gmail.com ##
## WAP : http://wap-engine.ru ##
## ##
########################################
## ВЫ НЕ ИМЕЕТЕ ПРАВО ##
## ИЗМЕНЯТЬ КОД СКРИПТА ##
## ДЛЯ ДАЛЬНЕЙШЕГО РАСПРОСТРАНЕНИЯ! ##
########################################
include ('../../config.php');
include ('../../templates/run.php');
include ('../../templates/func.php');
$title_page = '| Комментарии';
####################
$num = filter($_GET['id']);
$n = filter($_GET['n']);
$news_data = file('../../data/news.txt');
$news_arr = explode('|', $news_data[$n]);
$kom_data = @file('../../data/newskoments/'.$num.'.txt');
$count = count($kom_data);
$kolmes = $kolkommes;
$stranic = ceil($count/$kolmes);
$banlist = file('../../data/ban.txt');
$users_on_f = file('../../data/user_online.txt');
$user_on_str = implode('|', $users_on_f);
####################
if(empty($_GET['act']))
{
$m_polozhenie = 'Читает комментарии к новости';
include '../../themes/'.$themes.'.php';
if(empty($_GET['page']))
{
$page_get = 1;
}
else
{
$page_get = $_GET['page'];
}
if($page_get < 0)
{
$page_get = 1;
}
if($page_get > $stranic)
{
$page_get = $stranic;
}
$do = $kolmes * ($page_get - 1);
$end = $kolmes * $page_get;
$page_nazad = $page_get - 1;
$page_dalee = $page_get + 1;
if (preg_match("#^[0-9]*$#", $page_get) && preg_match("#^[0-9]*$#", $num) && $num == $news_arr[0])
{
echo '<p class="modul_name">Новость:<br /></p>
<p class="b">'.$news_arr[1].' '.$news_arr[3].'<br /></p>
<p class="modul_name">Комментарии к новости:<br /></p>';
echo "<p><a href="kom.php?act=add&id=$num&n=$n&".session_name()."=".session_id()."">добавить</a><br /></p>";
if(empty($kom_data))
{
echo "<p class="b">Данную новость еще никто не комментировал<br /></p><p> </p>";
}
else
{
for ($i = $do; $i < $end; $i++)
{
if (!empty($kom_data[$i]))
{
$viewmess = explode('|', $kom_data[$i]);
$name_user = $viewmess[0];
$device_user = $viewmess[1];
$ip_user = $viewmess[2];
$time_user = $viewmess[3];
$date_user = $viewmess[4];
$mess_user = $viewmess[5];
if($name_user!='Гость')
{
echo "<p class="b">Написал: <a href="../../modules/kabinet/user_info.php?nick=$name_user&".session_name()."=".session_id()."">$name_user</a>";
if(isset($_SESSION['pass']) && isset($passw) && $_SESSION['pass'] == $passw)
{
echo" <a href="../../modules/kabinet/send_privat.php?nick=$name_user&".session_name()."=".session_id()."">[ЛС]</a>";
}
if(strstr($user_on_str, '|'.trim($name_user).'|'))
{
echo"<font color="$color_green">[on]</font>";
}
else
{
echo"<font color="$color_red">[off]</font>";
}
}
else
{
echo "<p class="b">Написал: $name_user";
}
echo '<br />';
echo "Время: $date_user / $time_user<br /></p>";
echo "<p class="b" style="border-top:0px">$mess_user<br />";
echo "<font color="$color_red">$device_user [$ip_user]</font></p>";
if(isset($_SESSION['pass']) && isset($passw) && $_SESSION['pass'] == $passw && ($status == "1" || $status == "2" || $status == "3"))
{
echo "<p>[<a href="admin.php?act=delkom&id=$num&str=$i&n=$n&page=$page_get&".session_name()."=".session_id()."">удал</a>][<a href="admin.php?act=ban&id=$num&ban=$device_user||$ip_user&n=$n&page=$page_get&".session_name()."=".session_id()."">бан IP</a>]";
if($name_user!="Гость")
{
echo "[<a href="admin.php?act=banuser&id=$num&ban=$name_user&n=$n&page=$page_get&".session_name()."=".session_id()."">бан пользов</a>]";
}
echo'</p>';
}
echo'<p></p>';
}
}
if($stranic > 1)
{
echo "<p align="center" class="d">";
echo "Страницы:";
echo "<br />";
if($page_get > 4)
{
echo "<a href="kom.php?id=$num&n=$n&page=1&".session_name()."=".session_id()."">1</a>...";
}
$start_1 = $page_get - 3;
$end_1 = $page_get - 1;
if($start_1 < 1)
{
$start_1 = 1;
}
for($i = $start_1; $i <= $end_1; $i++)
{
echo"<a href="kom.php?id=$num&n=$n&page=$i&".session_name()."=".session_id()."">$i</a> ";
}
echo $page_get;
$start_2 = $page_get + 1;
$end_2 = $page_get + 3;
if($start_2 < 1)
{
$start_2 = 1;
}
if($end_2 > $stranic)
{
$end_2 = $stranic;
}
for($i = $start_2; $i <= $end_2; $i++)
{
echo" <a href="kom.php?id=$num&n=$n&page=$i&".session_name()."=".session_id()."">$i</a>";
}
if($stranic > $page_get && $page_get < ($stranic-3))
{
echo "...<a href="kom.php?id=$num&n=$n&page=$stranic&".session_name()."=".session_id()."">$stranic</a>";
}
echo "<br />";
if($page_get > 1)
{
echo "<a href="kom.php?id=$num&n=$n&page=$page_nazad&".session_name()."=".session_id()."">Назад</a>";
}
echo " | ";
if($stranic > $page_get)
{
echo "<a href="kom.php?id=$num&n=$n&page=$page_dalee&".session_name()."=".session_id()."">Дальше</a>";
}
echo "</p>";
}
echo "<p>Комментариев к новости: $count</p>";
}
####################
if(isset($_SESSION['pass']) && isset($passw) && $_SESSION['pass'] == $passw)
{
echo "<form action="kom.php?id=$num&n=$n&act=send&".session_name()."=".session_id()."" method="post">";
echo "<p class="b" align="center">Сообщение:<br />
<textarea rows="4" cols="15" name="msg"></textarea><br />
<input type="checkbox" name="msgtrans" value="1" /> Транслит сообщения
<br /><br />
<input type="submit" value="Написать" /></p>
</form>";
}
elseif($dostup_kom == "1")
{
$rand = rand(1000, 9999);
$_SESSION['rand'] = "$rand";
echo "<form action="kom.php?id=$num&n=$n&act=send&".session_name()."=".session_id()."" method="post">";
echo "<p class="b" align="center">Вы: Гость<br />
Сообщение:<br />
<textarea rows="4" cols="15" name="msg"></textarea><br />
<input type="checkbox" name="msgtrans" value="1" /> Транслит сообщения
<br /><br />
Проверочное число <font color="red">$rand</font>:<br /><input size="4" maxlength="4" name="imgrand" value="" /><br /><br />
<input type="submit" value="Написать" /></p>
</form>";
}
####################
echo "<p><a href="index.php?".session_name()."=".session_id()."">В новости</a></p>";
}
else
{
echo"<p class="err">Попытка взлома или вы пытаетесь комментировать не существующую новость!<br /></p>";
echo "<p><a href="index.php?".session_name()."=".session_id()."">В новости</a></p>";
}
include '../../templates/foot.php';
}
####################
if ($_GET['act']=='add')
{
$m_polozhenie = 'Добавляет комментарии к новости';
include '../../themes/'.$themes.'.php';
echo '<p class="modul_name">Добавление комментария<br /></p>';
if (preg_match("#^[0-9]*$#", "$num") && $num == $news_arr['0'])
{
if($_GET['err'] == 1)
{
echo"<p class="err">Ошибка!!! Сообщение не может быть пустым.</p>";
}
if($_GET['err'] == 2)
{
echo"<p class="err">Ошибка!!! Сообщение не должно быть длиньше 500 символов.</p>";
}
if($_GET['err'] == 3)
{
echo"<p class="err">Ошибка!!! Не введено проверочное число.</p>";
}
if($_GET['err'] == 4)
{
echo"<p class="err">Ошибка!!! Проверочное число введено неверно.</p>";
}
if($_GET['err'] == 5)
{
echo"<p class="err">Ошибка!!! Ваш IP и браузер забанены!</p>";
}
if($_GET['err'] == 6)
{
echo"<p class="err">Ошибка!!! Вас забанил $banwho за $bantxt! Окончание бана: $bantime[6]$bantime[7].$bantime[4]$bantime[5].$bantime[0]$bantime[1]$bantime[2]$bantime[3] в $bantime[8]$bantime[9]:$bantime[10]$bantime[11] по времени сервера.</p>";
}
if($_GET['err'] == 7)
{
echo"<p class="err">Ошибка!!! Гостям запрещено оставлять комментарии. Войдите в личный кабинет.</p>";
}
if(isset($_SESSION['pass']) && isset($passw) && $_SESSION['pass'] == $passw)
{
echo "<form action="kom.php?id=$num&n=$n&act=send&".session_name()."=".session_id()."" method="post">";
echo "<p class="b">";
echo "Сообщение:<br />
<textarea rows="4" cols="15" name="msg"></textarea><br />
<input type="checkbox" name="msgtrans" value="1" /> Транслит сообщения
<br /><br />
<input type="submit" value="Написать" /></p>
</form>";
}
elseif($dostup_kom == "1")
{
$rand = rand(1000, 9999);
$_SESSION['rand'] = "$rand";
echo "<form action="kom.php?id=$num&n=$n&act=send&".session_name()."=".session_id()."" method="post">";
echo "<p class="b">Вы: Гость<br />";
echo "Сообщение:<br />
<textarea rows="4" cols="15" name="msg"></textarea><br />
<input type="checkbox" name="msgtrans" value="1" /> Транслит сообщения
<br /><br />
Проверочное число <font color="red">$rand</font>:<br />
<input size="4" maxlength="4" name="imgrand" value="" /><br /><br />
<input type="submit" value="Написать" /></p>
</form>";
}
else
{
echo "<p class="b">Гостям запрещено оставлять комментарии. Войдите в личный кабинет.</p>";
}
echo "<p><a href="kom.php?id=$num&n=$n&act=smile&".session_name()."=".session_id()."">Смайлы</a><br />
<a href="kom.php?id=$num&n=$n&act=trans&".session_name()."=".session_id()."">Транслит</a><br />
<a href="kom.php?id=$num&n=$n&act=bbcodes&".session_name()."=".session_id()."">BB коды</a><br />";
echo "<br /><a href="kom.php?id=$num&n=$n&".session_name()."=".session_id()."">К комментариям</a><br /></p>";
}
else
{
echo"<p class="err">Вы пытаетесь комментировать не существующую новость!<br /></p>";
echo "<p><a href="index.php?".session_name()."=".session_id()."">В новости</a></p>";
}
include '../../templates/foot.php';
}
####################
if($_GET['act']=='send')
{
if (preg_match("#^[0-9]*$#", $num) && $num == $news_arr['0'])
{
if(isset($_SESSION['pass']) && isset($passw) && $_SESSION['pass'] == $passw)
{
$name_kom = $login;
}
else
{
$name_kom = 'Гость';
}
$msg = filter($_POST['msg']);
$msg = str_replace('|', '', $msg);
$popravka = $sdvigclock*3600;
$time = date('H:i:s', time() + $popravka);
$date = date('d.m.Y', time() + $popravka);
$ip = getenv('REMOTE_ADDR');
$user_agent = getenv('HTTP_USER_AGENT');
$brauzer = strtok($user_agent,' ');
$brauzer = filter($brauzer);
$brauzer = str_replace('|', '', $brauzer);
$ban = $brauzer.'||'.$ip;
$base = '../../data/newskoments/'.$num.'.txt';
foreach ($banlist as $key => $string)
{
if($ban == trim(array_shift($banlist)))
{
$errb = '1';
}
}
$date_now = date ('YmdHis', time() + $popravka);
if($bantime > $date_now)
{
$errb = '2';
}
if(empty($msg))
{
header("Location: kom.php?act=add&id=$num&n=$n&err=1");
}
elseif(strlen($msg) > 500)
{
header("Location: kom.php?act=add&id=$num&n=$n&err=2");
}
elseif($name_kom=="Гость" && empty($_POST['imgrand']))
{
header("Location: kom.php?act=add&id=$num&n=$n&err=3");
}
elseif($name_kom=="Гость" && !empty($_POST['imgrand']) && $_POST['imgrand'] != $_SESSION['rand'])
{
header("Location: kom.php?act=add&id=$num&n=$n&err=4");
}
elseif($name_kom=="Гость" && $errb == "1")
{
header("Location: kom.php?act=add&id=$num&n=$n&err=5");
}
elseif($errb == "2")
{
header("Location: kom.php?act=add&id=$num&n=$n&err=6");
}
elseif($name_kom=="Гость" && $dostup_kom == "0")
{
header("Location: kom.php?act=add&id=$num&n=$n&err=7");
}
else
{
if ($_POST[msgtrans]==1)
{
$msg = tr_to_win($msg);
}
$msg = smiles($msg);
$msg = antimat($msg);
$msg = bbcodes($msg);
$msg = stripslashes($msg);
$msg = str_replace('
', '<br />', $msg);
$back = @file_get_contents($base);
write_to_file($base, "$name_kom|$brauzer|$ip|$time|$date|$msg"."rn"."$back");
if(isset($_SESSION['pass']) && isset($passw) && $_SESSION['pass'] == $passw)
{
$mes_komm = $mes_komm + 1;
$rating = $rating + 1;
if($rating == 10 && $status == '5')
{
$status = '4';
}
$str_to_user_file = str_user_data(); # Строка данных пользователя находится в файле templates/func.php
write_to_file('../../data/users/'.$login.'.php', "<?phprn/*rn$str_to_user_filern*/rn?>");
}
header ("Location: kom.php?id=$num&n=$n&".session_name()."=".session_id()."");
}
}
else
{
include '../../themes/'.$themes.'.php';
echo"<p class="err">Вы пытаетесь комментировать не существующую новость!<br /></p>";
echo "<p><a href="index.php?".session_name()."=".session_id()."">В новости</a></p>";
include '../../templates/foot.php';
}
}
####################
if ($_GET['act']=='smile')
{
include '../../themes/'.$themes.'.php';
$sm_dir = opendir('../../sm');
while ($file = readdir($sm_dir))
{
if($file != 'Thumbs.db' && $file != '..' && $file != '.')
{
$smiles[] = "$file";
}
}
closedir ($sm_dir);
sort($smiles);
$count = count($smiles);
$kolsm = 10;
$stranic = ceil($count/$kolsm);
if(empty($_GET['page']))
{
$page_get = 1;
}
else
{
$page_get = filter($_GET['page']);
}
if($page_get < 0)
{
$page_get = 1;
}
if($page_get > $stranic)
{
$page_get = $stranic;
}
$do = $kolsm * ($page_get - 1);
$end = $kolsm * $page_get;
$page_nazad = $page_get - 1;
$page_dalee = $page_get + 1;
echo '<p class="modul_name">Доступные смайлы<br /></p>';
echo '<p class="b">';
for ($i = $do; $i < $end; $i++)
{
if(!empty($smiles[$i]))
{
$smile = explode(".", $smiles[$i]);
echo "<img src="../../sm/$smile[0].$smile[1]" alt=":$smile[0]" /> - :$smile[0]<br />";
}
}
echo '</p>';
echo '<p align="center" class="d">';
echo 'Страницы:';
echo '<br />';
if($page_get > 4)
{
echo "<a href="kom.php?act=smile&id=$num&n=$n&page=1&".session_name()."=".session_id()."">1</a>...";
}
$start_1 = $page_get - 3;
$end_1 = $page_get - 1;
if($start_1 < 1)
{
$start_1 = 1;
}
for($i = $start_1; $i <= $end_1; $i++)
{
echo"<a href="kom.php?act=smile&id=$num&n=$n&page=$i&".session_name()."=".session_id()."">$i</a> ";
}
echo $page_get;
$start_2 = $page_get + 1;
$end_2 = $page_get + 3;
if($start_2 < 1)
{
$start_2 = 1;
}
if($end_2 > $stranic)
{
$end_2 = $stranic;
}
for($i = $start_2; $i <= $end_2; $i++)
{
echo" <a href="kom.php?act=smile&id=$num&n=$n&page=$i&".session_name()."=".session_id()."">$i</a>";
}
if($stranic > $page_get && $page_get < ($stranic-3))
{
echo "...<a href="kom.php?act=smile&id=$num&n=$n&page=$stranic&".session_name()."=".session_id()."">$stranic</a>";
}
echo '<br />';
if($page_get > 1)
{
echo "<a href="kom.php?act=smile&id=$num&n=$n&page=$page_nazad&".session_name()."=".session_id()."">Назад</a>";
}
echo ' | ';
if($stranic > $page_get)
{
echo "<a href="kom.php?act=smile&id=$num&n=$n&page=$page_dalee&".session_name()."=".session_id()."">Дальше</a>";
}
echo '<br />';
echo '</p>';
echo '<p>Всего '.$count.' смайлов<br /><br /></p>';
echo "<p><a href="kom.php?act=add&id=$num&n=$n&".session_name()."=".session_id()."">К добавлению сообщения</a></p>";
echo "<p><a href="kom.php?id=$num&n=$n&".session_name()."=".session_id()."">К комментариям</a></p>";
include '../../templates/foot.php';
}
####################
if ($_GET['act']=='trans')
{
include '../../themes/'.$themes.'.php';
echo '<p class="modul_name">Правила транслита<br /></p>';
echo "<p class="b">";
echo "
а - a<br />
б - b<br />
в - v<br />
г - g<br />
д - d<br />
е - e<br />
ё - yo<br />
ж - zh<br />
з - z<br />
и - i<br />
й - j<br />
к - k<br />
л - l<br />
м - m<br />
н - n<br />
о - o<br />
п - p<br />
р - r<br />
с - s<br />
т - t<br />
у - u<br />
ф - f<br />
х - h<br />
ц - c<br />
ч - ch<br />
ш - sh<br />
щ - sch<br />
ъ - q<br />
ы - x<br />
ь - '<br />
э - ye<br />
ю - yu<br />
я - ya<br /><br />
А - A<br />
Б - B<br />
В - V<br />
Г - G<br />
Д - D<br />
Е - E<br />
Ё - YO<br />
Ж - ZH<br />
З - Z<br />
И - I<br />
Й - J<br />
К - K<br />
Л - L<br />
М - M<br />
Н - N<br />
О - O<br />
П - P<br />
Р - R<br />
С - S<br />
Т - T<br />
У - U<br />
Ф - F<br />
Х - H<br />
Ц - C<br />
Ч - CH<br />
Ш - SH<br />
Щ - SCH<br />
Ъ - Q<br />
Ы - X<br />
Э - YE<br />
Ю - YU<br />
Я - YA<br />
</p>";
echo "<p><a href="kom.php?act=add&id=$num&n=$n&".session_name()."=".session_id()."">К добавлению сообщения</a></p>";
echo "<p><a href="kom.php?id=$num&n=$n&".session_name()."=".session_id()."">К комментариям</a></p>";
include '../../templates/foot.php';
}
####################
if($_GET['act'] == 'bbcodes')
{
include '../../themes/'.$themes.'.php';
echo '<p class="modul_name">BB коды<br /></p>';
bbcodes('show_list_bbcodes');
echo "<p><a href="kom.php?act=add&id=$num&n=$n&".session_name()."=".session_id()."">К добавлению сообщения</a></p>";
echo "<p><a href="kom.php?id=$num&n=$n&".session_name()."=".session_id()."">К комментариям</a></p>";
include '../../templates/foot.php';
}
####################
?>