Файл: forum/inc/forum.php
Строк: 154
<?
err();
aut();
$k_post=mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_r` WHERE `id_forum` = '$forum[id]'"),0);
$k_page=k_page($k_post,$set['p_str']);
$page=page($k_page);
$start=$set['p_str']*$page-$set['p_str'];
echo "<table class='post'>n";
$q=mysql_query("SELECT * FROM `forum_r` WHERE `id_forum` = '$forum[id]' ORDER BY `time` DESC LIMIT $start, $set[p_str]");
if (mysql_num_rows($q)==0) {
echo " <div class='mess'>n";
echo "Нет разделовn";
echo " </div>n";
}
while ($razdel = mysql_fetch_assoc($q))
{
/*-----------зебра-----------*/
if ($num==0)
{
echo " <div class='nav1'>n";
$num=1;
}
elseif ($num==1)
{
echo " <div class='nav2'>n";
$num=0;
}
/*---------------------------*/
echo "<img src='/style/themes/$set[set_them]/forum/14/razdel.png' alt='' />";
echo "<a href='/forum/$forum[id]/$razdel[id]/'>" . text($razdel['name']) . " (".mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_p` WHERE `id_forum` = '$forum[id]' AND `id_razdel` = '$razdel[id]'"),0).'/'.mysql_result(mysql_query("SELECT COUNT(*) FROM `forum_t` WHERE `id_forum` = '$forum[id]' AND `id_razdel` = '$razdel[id]'"),0).")</a>n";
echo " </div>n";
}
echo "</table>n";
if ($k_page>1)str("/forum/$forum[id]/?",$k_page,$page); // Вывод страниц
$a=isset($_GET['act']) ? $_GET['act'] : null;
switch($a){
case 'new':
if (user_access('forum_razd_create')){
if(isset($_GET['ok']) && isset($_POST['name']))
{
$name=$_POST['name'];
if (strlen2($name)<2)$err='Слишком короткое название';
if (strlen2($name)>32)$err='Слишком днинное название';
if (!isset($err))
{
admin_log('Форум','Разделы',"Создание раздела '$name' в подфоруме '$forum[name]'");
mysql_query("INSERT INTO `forum_r` (`id_forum`, `name`, `time`) values('$forum[id]', '".my_esc($name)."', '$time')");
header("Location: /forum/".$forum['id']."/");
msg('Раздел успешно создан');
}
}
echo "<form method="post" action="/forum/$forum[id]/?act=new&ok">n";
echo "Название раздела:<br />n";
echo "<input name="name" type="text" maxlength='32' value='' /><br />n";
echo "<input value="Создать" type="submit" /><br />n";
echo "<img src='/style/icons/str2.gif' alt='*'> <a href="/forum/$forum[id]/">Отмена</a><br />n";
echo "</form>n";
}
break;
case 'set':
if (user_access('forum_for_edit')){
if(isset($_GET['ok']) && isset($_POST['name']) && isset($_POST['opis']) && isset($_POST['pos']))
{
$name=my_esc($_POST['name']);
if (strlen2($name)<3)$err='Слишком короткое название';
if (strlen2($name)>32)$err='Слишком днинное название';
if (!isset($_POST['icon']) || $_POST['icon']==null)
$FIcon='default';
else
$FIcon=preg_replace('#[^a-z0-9 _-.]#i', null, $_POST['icon']);
$opis=$_POST['opis'];
if (isset($_POST['translit2']) && $_POST['translit2']==1)$opis=translit($opis);
if (strlen2($opis)>512)$err='Слишком длинное описание';
$opis=my_esc($opis);
$pos=intval($_POST['pos']);
if (!isset($err)){
if ($user['level']>=3)
{
if (isset($_POST['adm']) && $_POST['adm']==1)
{
admin_log('Форум','Подфорумы',"Подфорум '" . htmlspecialchars($forum['name']) . "' только для администрации");
$adm=1;
}
else $adm=0;
mysql_query("UPDATE `forum_f` SET `adm` = '$adm' WHERE `id` = '$forum[id]' LIMIT 1");
}
if ($forum['name']!=$name)admin_log('Форум','Подфорумы',"Подфорум '" . htmlspecialchars($forum['name']) . "' переименован в '$name'");
if ($forum['opis']!=$opis)admin_log('Форум','Подфорумы',"Изменено описание подфорума '$name'");
mysql_query("UPDATE `forum_f` SET `name` = '$name', `opis` = '$opis',`icon`='$FIcon', `pos` = '$pos' WHERE `id` = '$forum[id]' LIMIT 1");
$forum=mysql_fetch_assoc(mysql_query("SELECT * FROM `forum_f` WHERE `id` = '$forum[id]' LIMIT 1"));
msg('Изменения успешно приняты');
}
}
echo "<form method="post" action="/forum/$forum[id]/?act=set&ok">n";
echo "Название форума:<br />n";
echo "<input name="name" type="text" maxlength='32' value='" . text($forum['name']) . "' /><br />n";
echo "Описание:<br />n";
echo "<textarea name="opis">" . text($forum['opis']) . "</textarea><br />n";
$icon=array();
$opendiricon=opendir(H.'style/forum');
while ($icons=readdir($opendiricon))
{
if (preg_match('#^.|default.png#',$icons))continue;
$icon[]=$icons;
}
closedir($opendiricon);
echo "Иконка:<br />n";
echo "<select name='icon'>n";
echo "<option value='default.png'>По умолчанию</option>n";
for ($i=0;$i<sizeof($icon);$i++)
{
echo "<option value='$icon[$i]'>$icon[$i]</option>n";
}
echo "</select><br />n";
echo "Позиция:<br />n";
echo "<input name="pos" type="text" maxlength='3' value='$forum[pos]' /><br />n";
if ($user['level']>=3){
if ($forum['adm']==1)$check=' checked="checked"';else $check=NULL;
echo "<label><input type="checkbox"$check name="adm" value="1" /> Только для администрации</label><br />n";
}
echo "<input value="Изменить" type="submit" /><br />n";
echo "<img src='/style/icons/str2.gif' alt='*'> <a href="/forum/$forum[id]/">Отмена</a><br />n";
echo "</form>n";
}
break;
case 'delete':
if(user_access('forum_for_delete')){
if (isset($_GET['ok']))
{
mysql_query("DELETE FROM `forum_f` WHERE `id` = '$forum[id]'");
mysql_query("DELETE FROM `forum_r` WHERE `id_forum` = '$forum[id]'");
mysql_query("DELETE FROM `forum_t` WHERE `id_forum` = '$forum[id]'");
mysql_query("DELETE FROM `forum_p` WHERE `id_forum` = '$forum[id]'");
admin_log('Форум','Подфорумы',"Удаление подфорума '" . htmlspecialchars($forum['name']) . "'");
msg('Подфорум успешно удален');
err();
aut();
echo "<a href="/forum/">В форум</a><br />n";
include_once '../sys/inc/tfoot.php';
}
echo "<div class="err">n";
echo "Подтвердите удаление форума<br />n";
echo "<a href="/forum/$forum[id]/?act=delete&ok">Да</a> <a href="/forum/$forum[id]/">Нет</a><br />n";
echo "</div>n";
}
break;
default:
if (user_access('forum_razd_create') || user_access('forum_for_edit') || user_access('forum_for_delete'))
{
echo "<div class="foot">n";
if(user_access('forum_razd_create'))
echo "<img src='/style/icons/str.gif' alt='*'> <a href="/forum/$forum[id]/?act=new">Новый раздел</a><br />n";
if(user_access('forum_for_edit'))
echo "<img src='/style/icons/str.gif' alt='*'> <a href="/forum/$forum[id]/?act=set">Параметры форума</a><br />n";
if(user_access('forum_for_delete'))
echo "<img src='/style/icons/str.gif' alt='*'> <a href="/forum/$forum[id]/?act=delete">Удалить форум</a><br />n";
echo "</div>n";
}
}
?>