View file xhata.us/adm_panel/adm_log.php

File size: 6.18Kb
<?
require '../sys/inc/start.php';
require '../sys/inc/compress.php';
require '../sys/inc/sess.php';
require '../sys/inc/home.php';
require '../sys/inc/settings.php';
require '../sys/inc/db_connect.php';
require '../sys/inc/ipua.php';
require '../sys/inc/fnc.php';
require '../sys/inc/adm_check.php';
require '../sys/inc/user.php';
user_access('adm_log_read',null,'index.php?'.SID);
adm_check();
$set['title']='Действия администрации';
require '../sys/inc/thead.php';
title();
err();


if (isset($_GET['id']))$ank=get_user($_GET['id']);else $ank=false;



if ($ank && user_access('adm_log_read') && ($ank['id']==$user['id'] || $ank['level']<$user['level']))
{
echo "<div class='fyt'>\n";
echo "<a href='/info.php?id=$ank[id]'>$ank[nick]</a> ($ank[group_name])<br />\n";
$adm_log_c_all=mysql_result(mysql_query("SELECT COUNT(*) FROM `admin_log` WHERE `id_user` = '".mysql_real_escape_string($ank[id])."'"), 0);
$mes=mktime(0, 0, 0, date('m')-1); // время месяц назад
$adm_log_c_mes=mysql_result(mysql_query("SELECT COUNT(*) FROM `admin_log` WHERE `id_user` = '".mysql_real_escape_string($ank[id])."' AND `time` > '".mysql_real_escape_string($mes)."'"), 0);
echo "<span class='ank_n'>Вся активность:</span> <span class='ank_d'>$adm_log_c_all</span><br />\n";
echo "<span class='ank_n'>Активность за месяц:</span> <span class='ank_d'>$adm_log_c_mes</span><br />\n";
echo "</div>\n";
}else{
echo "<div class='fyt'>\n";
$adm_log_c_all=mysql_result(mysql_query("SELECT COUNT(*) FROM `admin_log`"), 0);
$mes=mktime(0, 0, 0, date('m')-1); // время месяц назад
$adm_log_c_mes=mysql_result(mysql_query("SELECT COUNT(*) FROM `admin_log` WHERE `time` > '".mysql_real_escape_string($mes)."'"), 0);
echo "<span class='ank_n'>Вся активность:</span> <span class='ank_d'>$adm_log_c_all</span><br />\n";
echo "<span class='ank_n'>Активность за месяц:</span> <span class='ank_d'>$adm_log_c_mes</span><br />\n";
echo "</div>\n";
}






if (isset($_GET['id_mod']) && isset($_GET['id_act']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `admin_log` WHERE `mod` = '".intval($_GET['id_mod'])."' AND `act` = '".intval($_GET['id_act'])."'".($ank?" AND `id_user` = '".mysql_real_escape_string($ank[id])."'":null)),0)!=0)
{
$mod=mysql_fetch_assoc(mysql_query("SELECT * FROM `admin_log_mod` WHERE `id` = '".intval($_GET['id_mod'])."' LIMIT 1"));
$act=mysql_fetch_assoc(mysql_query("SELECT * FROM `admin_log_act` WHERE `id` = '".intval($_GET['id_act'])."' LIMIT 1"));
$set['p_str']=20;
$k_post=mysql_result(mysql_query("SELECT COUNT(*) FROM `admin_log` WHERE `mod` = '".mysql_real_escape_string($mod[id])."' AND `act` = '".mysql_real_escape_string($act[id])."'".($ank?" AND `admin_log`.`id_user` = '".mysql_real_escape_string($ank[id])."'":null)),0);
$k_page=k_page($k_post,$set['p_str']);
$page=page($k_page);
$start=mysql_real_escape_string($set['p_str']*$page-$set['p_str']);
echo "<table class='post'>\n";
if ($k_post==0)
{
?>
<div class='noy'>Нет действий</div>
<?
}

$q=mysql_query("SELECT * FROM `admin_log` WHERE `mod` = '".mysql_real_escape_string($mod[id])."' AND `act` = '".mysql_real_escape_string($act[id])."'".($ank?" AND `admin_log`.`id_user` = '".mysql_real_escape_string($ank[id])."'":null)." ORDER BY id DESC LIMIT $start, $set[p_str]");
while ($post = mysql_fetch_assoc($q))
{
$ank2=get_user($post['id_user']);
if($num==1){
echo "<div class='enk_div'>\n";
$num=0;
}else{
echo "<div class='enk2_div'>\n";
$num=1;}
echo "".status($ank2['id'])." ";

echo "<a href='/info.php?id=$ank2[id]'>$ank2[nick]</a> (".vremja($post['time']).")<br />\n";

echo output_text($post['opis'])."<br />\n";
echo "</div>\n";
}

if ($k_page>1)str('?id_mod='.htmlspecialchars($mod['id']).'&amp;id_act='.htmlspecialchars($act['id']).'&amp;',$k_page,$page); // Вывод страниц
echo "<div class='fyt'>&laquo;<a href='?id_mod=$mod[id]".htmlspecialchars($ank?"&amp;id=$ank[id]":null)."'>Список действий</a></div>\n";
echo "<div class='fyt'>&laquo;<a href='?$passgen".htmlspecialchars($ank?"&amp;id=$ank[id]":null)."'>Список модулей</a></div>\n";
}elseif (isset($_GET['id_mod']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `admin_log` WHERE `mod` = '".intval($_GET['id_mod'])."'".htmlspecialchars($ank?" AND `id_user` = '".mysql_real_escape_string($ank[id])."'":null)),0)!=0)
{
// действия в модуле
$mod=mysql_fetch_assoc(mysql_query("SELECT * FROM `admin_log_mod` WHERE `id` = '".intval($_GET['id_mod'])."' LIMIT 1"));
$q=mysql_query("SELECT `admin_log_act`.`name`, `admin_log_act`.`id`, COUNT(`admin_log`.`id`) AS `count` FROM `admin_log` LEFT JOIN `admin_log_act` ON `admin_log`.`act` = `admin_log_act`.`id` WHERE `admin_log`.`mod` = '".mysql_real_escape_string($mod[id])."'".($ank?" AND `admin_log`.`id_user` = '".mysql_real_escape_string($ank[id])."'":null)." GROUP BY `admin_log`.`act`");
echo "<div class='fyt'>\n";
if (mysql_num_rows($q)==0)echo "Нет действий в модуле '$mod[name]'";
while($act=mysql_fetch_assoc($q))
echo "<a href='?id_mod=$mod[id]&amp;id_act=$act[id]".htmlspecialchars($ank?"&amp;id=$ank[id]":null)."'>$act[name]</a> ($act[count])<br />\n";
echo "</div>\n";
echo "<div class='fyt'>&laquo;<a href='?$passgen".htmlspecialchars($ank?"&amp;id=$ank[id]":null)."'>Список модулей</a></div>\n";
}else{
// действия по модулям
$q=mysql_query("SELECT `admin_log_mod`.`name`, `admin_log_mod`.`id`, COUNT(`admin_log`.`id`) AS `count` FROM `admin_log` LEFT JOIN `admin_log_mod` ON `admin_log`.`mod` = `admin_log_mod`.`id`".($ank?" WHERE `admin_log`.`id_user` = '".mysql_real_escape_string($ank[id])."'":null)." GROUP BY `admin_log`.`mod`");
echo "<div class='menu'>\n";
if (mysql_num_rows($q)==0)echo "Нет действий в модулях";
while($mod=mysql_fetch_assoc($q))
echo "<a href='?id_mod=$mod[id]".htmlspecialchars($ank?"&amp;id=$ank[id]":null)."'>$mod[name]</a> ($mod[count])<br />\n";
echo "</div>\n";
}





if (user_access('adm_panel_show')){
echo "<div class='fyt'>\n";
if (user_access('adm_show_adm'))echo "&raquo;<a href='administration.php'>Администрация</a><br />\n";
echo "&laquo;<a href='/adm_panel/'>В админку</a><br />\n";
echo "</div>\n";
}

require '../sys/inc/tfoot.php';
?>