Файл: forum/inc/forum.php
Строк: 125
<?
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 " <a href='/forum/$forum[id]/$razdel[id]/'>" . text($razdel['name']) . " </a> [".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)."]n";
if($razdel['opis']!=null)echo "<br/><span style='font-size:small;color:#666;'>".text($razdel['opis'])."</span>";
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'];
$opisanie=$_POST['opis'];
if (strlen2($name)<2)$err='Слишком короткое название';
if (strlen2($name)>32)$err='Слишком днинное название';
if(strlen2($opisanie)>150)$err='Слишком длинное описание';
if (!isset($err))
{
admin_log('Форум','Разделы',"Создание раздела '$name' в подфоруме '$forum[name]'");
mysql_query("INSERT INTO `forum_r` (`id_forum`, `name`, `opis`, `time`) values('$forum[id]', '".my_esc($name)."', '".my_esc($opisanie)."', '$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 "Описание раздела<br/>n";
echo " <textarea name='opis'></textarea>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='Слишком длинное название';
$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', `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";
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_del')){
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_del'))
{
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";
}
}
?>