- <?php
- $command=substr($addmsg,1);
- $sysmsg='<b>Команда не опознана ['.$command.']</b><br/>';//Команда не опознана...
- for ($k=1;$k<10;$k++) $command=str_replace(' ',' ',$command);
- $command=explode(" ",$command,2);
-
- $q=@mysql(DBName,"SELECT `status` FROM `$tableu` WHERE `domain` = '$domain' AND `site` = '$site' AND `login` = '".addslashes($command[1])."'");
- $s=@round(mysql_num_rows($q));
- $f=@mysql_fetch_array($q);
- $status_=$f['status'];
-
- switch (strtolower($command[0]))
- {
- case 'noop':
- $sysmsg='<b>Пустая команда.</b><br/>';
- break;
- case 'ban':
- //Недостаточно прав...
- if ($status<1) {$sysmsg='<b>Недостаточно прав... ['.$command.']</b><br/>';break;}
- //Пользователь не найден
- if ($s<1) {$sysmsg='<b>Пользователь '.$command[1].' не найден...</b><br/>';break;}
- //Конфликт статусов
- if ($status<=$status_) {$sysmsg='<b>Конфликт статусов...</b><br/>';break;}
-
- @mysql(DBName,"UPDATE `$tableu` SET `status` = '-1' WHERE `domain` = '$domain' AND `site` = '$site' AND `login` = '".$command[1]."' LIMIT 1");
- $sysmsg='<b>Для '.$command[1].' установлен бан (написанеи в форум запрещено).</b><br/>';
- break;
- case 'user':
- //Недостаточно прав...
- if ($status<1) {$sysmsg='<b>Недостаточно прав... ['.$command.']</b><br/>';break;}
- //Пользователь не найден
- if ($s<1) {$sysmsg='<b>Пользователь '.$command[1].' не найден...</b><br/>';break;}
- //Конфликт статусов
- if ($status<=$status_) {$sysmsg='<b>Конфликт статусов...</b><br/>';break;}
-
- @mysql(DBName,"UPDATE `$tableu` SET `status` = '0' WHERE `domain` = '$domain' AND `site` = '$site' AND `login` = '".$command[1]."' LIMIT 1");
- $sysmsg='<b>Для '.$command[1].' установлен статус обычного пользователя (написанеи в форум разрешено).</b><br/>';
- break;
- case 'moder':
- //Недостаточно прав...
- if ($status<2) {$sysmsg='<b>Недостаточно прав... ['.$command.']</b><br/>';break;}
- //Пользователь не найден
- if ($s<1) {$sysmsg='<b>Пользователь '.$command[1].' не найден...</b><br/>';break;}
- //Конфликт статусов
- if ($status<=$status_) {$sysmsg='<b>Конфликт статусов...</b><br/>';break;}
-
- @mysql(DBName,"UPDATE `$tableu` SET `status` = '1' WHERE `domain` = '$domain' AND `site` = '$site' AND `login` = '".$command[1]."' LIMIT 1");
- $sysmsg='<b>Для '.$command[1].' установлен статус "Модератор".</b><br/>';
- break;
- /* case 'admin':
- //Недостаточно прав...
- if ($status<2) {$sysmsg='<b>Недостаточно прав... ['.$command.']</b><br/>';break;}
- //Пользователь не найден
- if ($s<1) {$sysmsg='<b>Пользователь '.$command[1].' не найден...</b><br/>';break;}
-
- @mysql(DBName,"UPDATE `$tableu` SET `status` = '2' WHERE `domain` = '$domain' AND `site` = '$site' AND `login` = '".$command[1]."' LIMIT 1");
- $sysmsg='<b>Для '.$command[1].' установлен статус "Администратор".</b><br/>';
- break;
- */
- case 'lock':
- # Заголовок темы
- $q=mysql(DBName,"SELECT `l3`, `login` FROM `$table` WHERE `domain` = '$domain' AND `site` = '$site' AND `l1` = $razdel AND `l2` = $topic AND `l3` = 0");
- $s=@mysql_num_rows($q)+0;
- $f=@mysql_fetch_array($q);
- $flogin=$f['login'];
- if (($status<1)&&($flogin!=$login)) {$sysmsg='<b>Нельзя закрыть чужую тему!</b><br/>';include($rootpath_forum."messages.php");}
-
- # Все сообщения темы
- $q=mysql(DBName,"SELECT `l3` FROM `$table` WHERE `domain` = '$domain' AND `site` = '$site' AND `login` != $login AND `l1` = $razdel AND `l2` = $topic");
- $s=@mysql_num_rows($q)+0;
- $f=@mysql_fetch_array($q);
- if (($status<1)&&($s==0)) {$sysmsg='<b>Темы содержащие только ваши сообщения можно только удалять.</b><br/>';include($rootpath_forum."messages.php");}
-
- # Все сообщения темы
- $q=mysql(DBName,"SELECT `l3` FROM `$table` WHERE `domain` = '$domain' AND `site` = '$site' AND `l1` = $razdel AND `l2` = $topic ORDER BY `l3` DESC LIMIT 0, 1");
- $f=@mysql_fetch_array($q);
- $message=$f['l3']+1;
-
- @mysql(DBName,"UPDATE `$table` SET `time` = '".time()."' WHERE `domain` = '$domain' AND `site` = '$site' AND `l1` = '$razdel' AND `l2` = '$topic' AND `l3` = '0' LIMIT 1");
- @mysql(DBName,"UPDATE `$table` SET `status` = '1' WHERE `domain` = '$domain' AND `site` = '$site' AND `l1` = '$razdel' AND `l2` = '$topic' AND `l3` = '0' LIMIT 1");
- @mysql(DBName,"INSERT INTO `$table` ( `domain`, `site`, `l1` , `l2` , `l3` , `status` , `login` , `time` , `text` ) VALUES ( '$domain', '$site', '$razdel', '$topic', '$message', '0', '$login', '".time()."', '<b>Тема закрыта</b>: ".$command[1]." ".$command[2]." ".$command[3]."')");
-
- $sysmsg='<b>Тема закрыта.</b><br/>';
- include($rootpath_forum."messages.php");
- break;
- case 'del':
- $q=mysql(DBName,"SELECT `l3`, `login` FROM `$table` WHERE `domain` = '$domain' AND `site` = '$site' AND `l1` = $razdel AND `l2` = $topic");
- $s=mysql_num_rows($q)+0;
- if ($s<1)
- {$sysmsg='<b>Тема не существует (уже удалена).</b><br/>';}
- else
- {
- $q=mysql(DBName,"SELECT `l3`, `login` FROM `$table` WHERE `domain` = '$domain' AND `site` = '$site' AND `l1` = $razdel AND `l2` = $topic AND `l3` = 0");
- $f=mysql_fetch_array($q);
- $flogin=$f['login'];
- if (($status<2)&&($flogin!=$login)) {$sysmsg='<b>Нельзя удалить чужую тему.</b><br/>';include($rootpath_forum."messages.php");}
- if (($status<2)&&($flogin==$login)&&(($s>2))) {$sysmsg='<b>Для удаления в теме должно быть не более одного сообщения.</b><br/>';include($rootpath_forum."messages.php");}
- $f=mysql_fetch_array($q);
- @mysql(DBName,"DELETE FROM `$table` WHERE `domain` = '$domain' AND `site` = '$site' AND `l1` = '$razdel' AND `l2` = '$topic'");
- $sysmsg='<b>Тема удалена.</b><br/>';
- }
- $message=0;
- $topic=0;
- include($rootpath_forum."topics.php");
- break;
- }
- ?>