<?php
####################  <Блок обработки команд>
// Добавление в банлист
if(isset($_POST['bansip']) and isset($_POST['bantime']))
{
$errors='';
$bansip=mysql_real_escape_string(trim($_POST['bansip']));
$ban_time=abs(intval($_POST['bantime']));

if($ban_time<=0){$errors.="Время бана указано неверно!<br />";}else{$ban_time=$time+($ban_time*3600);}
#$ban_time=
if($bansip=='') {$errors.="Следует ввести IP адрес для блокировки!<br />";}
$checkip=mysql_fetch_array(mysql_query("SELECT * FROM `protect_exceptions` WHERE `ip`='$bansip' LIMIT 1"));
if($checkip){$errors.="Указанный IP адрес присутствует в списке исключений! Следует удалить указанный IP из списка исключений!<br />";}
$checkip2=mysql_fetch_array(mysql_query("SELECT * FROM `protect_black_list_ip` WHERE `ip`='$bansip' LIMIT 1"));
if($checkip2){$errors.="Указанный IP адрес уже присутствует в банлисте!<br />";}
  if($errors=='')
  {
  mysql_query("INSERT INTO `protect_black_list_ip` SET
    `ip`='$bansip',
    `addtime`='$time',
    `ban_time`='$ban_time'
    ");
    if(mysql_affected_rows()>0)
    {
      $_SESSION['msg'].="IP адрес [$bansip] успешно добавлен в банлист!<br />";
      rebuild_htaccess();
    }else{$_SESSION['err'].="Не удалось добавить IP адрес [$bansip] в банлист!<br />";}
  }
$_SESSION['err'].=$errors;
header("Location: adm.php?l=ipautoban&a=banlist");exit;
}
// Удаление IP адреса из банлиста
if(isset($_GET['delip']))
{
$errors='';
$delip=abs(intval($_GET['delip']));
$delip_dat=mysql_fetch_array(mysql_query("SELECT * FROM `protect_black_list_ip` WHERE `id`='$delip' LIMIT 1"));
  if(!$delip_dat)
  {
  $errors.="Запись не найдена в банлисте!<br />";
  }else{
  mysql_query("DELETE FROM `protect_black_list_ip` WHERE `id`='$delip_dat[id]' LIMIT 1");
     if(mysql_affected_rows()>0)
     {
        $_SESSION['msg'].="IP адрес [$delip_dat[ip]] успешно удален из банлиста!<br />";
        rebuild_htaccess();
     }else{$_SESSION['err'].="Не удалось удалить IP адрес [$delip_dat[ip]] из банлиста!<br />";}
  }
$_SESSION['err'].=$errors;
header("Location: adm.php?l=ipautoban&a=banlist");exit;
}
####################  </ Блок обработки команд>
echo "<div class='title'>Список забаненных IP адресов</div>";
$all=mysql_result(mysql_query("SELECT count(*) FROM `protect_black_list_ip` "),0);
$pnumber=10;//$user['set_p_str']; //Элементов на страницу    1;//
    if(!isset($_GET['page'])){$_GET['page']=1;}
    $n=k_page($all,$pnumber);
    if($_GET['page']=='end'){$page=$n;}
    else{$page=intval($_GET['page']);}
    if($page<1){$page=1;}
    $start=$page*$pnumber-$pnumber;
    if($start<1){$start=0;}

$ban_ips=mysql_query("SELECT * FROM `protect_black_list_ip` ORDER BY `id` DESC LIMIT $start,$pnumber");

if(mysql_num_rows($ban_ips)>0)
{
   while($ban_ip_dat=mysql_fetch_array($ban_ips,MYSQL_ASSOC))
   {
    echo "<div class='p_m'>";
    echo "IP: <b>$ban_ip_dat[ip]</b> бан ".vremja($ban_ip_dat['addtime'])." до ".vremja($ban_ip_dat['ban_time']);
    echo "<a href='?l=ipautoban&a=banlist&delip=$ban_ip_dat[id]'> <b>[del]</b></a><br />";
    if($ban_ip_dat['client']!=''){echo "Клиент $ban_ip_dat[client]<br />";}else{echo "Клиент не указан!<br />";}
    echo "</div>";
   }
if($n>1){echo str($link="?a=banlist&amp;",$n,$page);}
}else{
echo "<div class='msg'>Список адресов пуст!</div>";
}
echo "<form action='' method='post'>";
echo "Добавить IP в банлист<br />";
echo "<input type='text' name='bansip' value='' /><br />";
echo "Время бана (час)<br />";
echo "<input size='9' type='text' name='bantime' value='24' />";
echo "<input type='submit' value='добавить' />";
echo "</form>";
?>
