Файл: dossier/violations.php
Строк: 71
<?php
define ('DOSSIER', 1);
require '../inc/sys.php';
if (isset ($_GET['delete']))
{
mysql_query ("DELETE FROM `guard_dossier` WHERE `id` = '".intval ($_GET['delete'])."' LIMIT 1");
$doc->msg ('Нарушение удалено', '?');
}
if (!isset ($ps['filters']))
$ps['filters'] = null;
if (isset ($_GET['filters_status']))
{
if ($_GET['filters_status'] == 1)
$ps['filters_status'] = 1;
else
$ps['filters_status'] = 0;
}
function is_filt ($name)
{
global $ps;
if (!empty ($ps['filters'][$name]))
return true;
else
return false;
}
/* Так фича для меня :D */
function filter ($arg)
{
global $ps, $_GET, $filt;
if (isset ($_GET[$arg]))
$ps['filters'][$arg] = $filt->in ($_GET[$arg]);
else
$ps['filters'][$arg] = null;
if (isset ($ps['filters'][$arg]))
return $filt->in ($ps['filters'][$arg]);
else
return null;
}
/* Проверка на нулость */
function not_null ($var)
{
if (empty ($var))
return 'пусто';
else
return $var;
}
/* Обнуление фильтров */
if (isset ($_GET['refresh']))
{
$ps['filters'] = null;
$filters = null;
$_GET = null;
}
/* Вывод фильтров */
if (empty ($ps['filters_status']))
{
echo "<a href='?filters_status=1'>".$doc->icon ('setting')." Включить фильтры</a><br />";
$ps['filters'] = null;
}
else
{
if (isset ($_GET['select']))
{
echo '<div class="post">'.$doc->icon ('arrow_right').' Выбрать ';
if ($_GET['select'] == 'users')
{
echo 'пользователя: ';
$i = 0;
$text['nores'] = '';
$sql->output ('user', '`id` != 1', '`date_last` DESC', 5);
while ($prof = mysql_fetch_assoc ($while))
{
$i++;
$doc->lineLink ($prof['nick'],'?user='.$prof['id'], ($i == $k_post?null:', '));
}
}
noBr (1);
$doc->link ('[delete] Скрыть список', '?page='.$page);
echo '</div>';
}
echo "<a href='?filters_status=0'>".$doc->icon ('setting')." Выключить фильтры</a><br />";
$form = new form ('?page='.$page, false, 'get');
$form->brInput ('ID пользователя (<a href="?select=users">выбрать</a>)', 'user', filter ('user'), 5);
$form->section ('Причина', 'section');
$form->checkbox ($guard->cause ('guard', 'url'), 'guard_url', filter ('guard_url'));
$form->checkbox ($guard->cause ('guard', 'admin_panel'), 'guard_admin_panel', filter ('guard_admin_panel'));
$form->checkbox ($guard->cause ('guard', 'file'), 'guard_file', filter ('guard_file'));
$form->checkbox ($guard->cause ('antispam'), 'antispam_msg', filter ('antispam_msg'));
$form->hidden ($page, 'page');
$form->end ('Фильтровать', 'filt', true);
}
$filters = null;
if (is_filt ('user'))
$filters[] = "`user` = '".$ps['filters']['user']."'";
if (is_filt ('guard_url'))
$filters[] = "OR `type` = 'url'";
if (is_filt ('guard_admin_panel'))
$filters[] = "OR `type` = 'admin_panel'";
if (is_filt ('guard_file'))
$filters[] = "OR `type` = 'file'";
if (is_filt ('antispam_msg'))
$filters[] = "OR `section` = 'antispam'";
$sql->output ('guard_dossier', $filters);
while ($dossier = mysql_fetch_assoc ($while))
{
$prof = get_user ($dossier['user']);
echo "<div class='post'>
".$guard->showUser ($prof, $dossier['new']?'1':null)." (ID$dossier[id]) ".$doc->icon ('delete', '?delete='.$dossier['id'])."<br />";
echo "<b>Причина</b>: ".$guard->cause ($dossier['section'], $dossier['type'])."<br />";
if ($dossier['section'] == 'antispam')
echo "<b>Сообщение</b>: $dossier[msg]<br />";
echo "<b>URL</b>: ".$guard->step ($dossier['step'])."<br />";
echo "<b>Время</b>: ".vremja ($dossier['time'])."</div>";
/* Отмечаем как прочитанное */
mysql_query ("UPDATE `guard_dossier` SET `new` = '0' WHERE `id` = '$dossier[id]' LIMIT 1");
}