Файл: pages/admin.php
Строк: 1012
<?php # Created by Up
include_once '../sistem/start.php';
include_once $config['OTS'].'sistem/config.php';
include_once $config['OTS'].'sistem/function.php';
include_once $config['OTS'].'sistem/db.php';
include_once $config['OTS'].'sistem/users.php';
if(isset($_SESSION['id']) and isset($_SESSION['pass']) and $_SESSION['id']==$config['id_adm'] and $_SESSION['adm_rezim']==1)
 {
    switch($_GET['act'])
     {
        case 'update':
        $config['TITLE']='Лог обновлений';
        include_once $config['OTS'].'sistem/head.php';
        if(isset($_GET['unset']))
         {
            $fp=fopen('../sistem/data/update.log','w');
            fputs($fp,'');
            fclose($fp);
            print '<span class="yes">Лог очищен</span><br />';
         }
        print file_get_contents('../sistem/data/update.log');
        print '<a href="admin.php?act=update&unset">Очистить лог</a><br />';
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'ploschadki':
        $config['TITLE']='Нарушители';
        include_once $config['OTS'].'sistem/head.php';
        if(isset($_GET['id']))
         {
            $id=((int)abs($_GET['id']));
            if(isset($_GET['ip_zero']))
             {
                mysql_unbuffered_query('UPDATE `ban_ip` SET `id`='0' WHERE `ip`=''.ip2long($_GET['ip_zero']).'' LIMIT 1;');
                PRINT '<span class="yes">Нарушение снято</span><br />';
             }
            $count=mysql_result(mysql_query('SELECT COUNT(*) FROM `ban_ip` WHERE `id`=''.$id.'';'),0);
            if($page=page($count,isset($_GET['page'])?$_GET['page']:1))
             {
                $sql=mysql_query('SELECT * FROM `ban_ip` WHERE `id`=''.$id.'' LIMIT '.$page['ot'].','.$_SESSION['kol_sites'].';');
                while($arr=mysql_fetch_assoc($sql))
                    print 'ID: <a href="'.$config['home'].'/site/'.$arr['id'].'/index.php"><b>'.$arr['id'].'</b></a> <a class="link" href="http://'.($arr['ip']=long2ip($arr['ip'])).'">'.$arr['ip'].'</a> (<a href="http://'.($host=GetHostByADDR($arr['ip'])).'">'.$host.'</a>)<br />[<a href="admin.php?act=ploschadki&id='.$id.'&ip_zero='.$arr['ip'].'">Снять</a>/<a href="admin.php?act=blocked_ip&page='.$page['page'].'&unset='.$arr['ip'].'">Удалить</a>]<br />';
                pages($page['page'],$page['str'],'admin.php?act=ploschadki&id='.$id.'&page=');
             }
             else
                print 'Такой страници не существует!<br />';
            print '<a href="admin.php?act=ploschadki&id_zero='.$id.'">Снять все нарушения</a><br />';
            print '<a href="../site/'.$id.'/index.php">К меню сайта</a><br />';
            print '<a href="admin.php?act=zalobi">Назад</a><br />';
         }
         else
             {
                if(isset($_GET['id_zero']))
                 {
                    mysql_unbuffered_query('UPDATE `ban_ip` SET `id`='0' WHERE `id`=''.((int)abs($_GET['id_zero'])).'';');
                    PRINT '<span class="yes">Нарушения сняты</span><br />';
                 }
                $count=mysql_num_rows($sql=mysql_query('SELECT DISTINCT `id` FROM `ban_ip` WHERE `id`!='0';'));
                if($page=page($count,isset($_GET['page'])?$_GET['page']:1))
                 {
                    while($arr=mysql_fetch_assoc($sql))
                     {
                        $name=mysql_result(mysql_query('SELECT `name` FROM `site` WHERE `id`=''.$arr['id'].'' LIMIT 1;'),0);
                        $kol=mysql_result(mysql_query('SELECT COUNT(*) FROM `ban_ip` WHERE `id`=''.$arr['id'].'';'),0);
                        print '<a href="admin.php?act=ploschadki&id='.$arr['id'].'">'.$name.'</a> ('.$kol.')<br />';
                     }
                    pages($page['page'],$page['str'],'admin.php?act=ploschadki&page=');
                 }
                 else
                    print 'Такой страници не существует!<br />';
             }
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'backup':
        if(is_file('../sistem/data/backup_'.date('d.m.y').'.gz'))
         {
            header('location: ../?act=err');
            exit;
         }
        $tab=mysql_list_tables($config['db_name']);
        $fp=fopen('../sistem/data/backup_'.date('d.m.y').'.gz','w');
        for($i=0;$i<mysql_num_rows($tab);$i++)
         {
            $sql='';
            $table=mysql_tablename($tab,$i);
            $sql.='DROP TABLE IF EXISTS `'.$table.'`;'."rn";
            $res=mysql_query('SHOW CREATE TABLE `'.$table.'`');
            $row=mysql_fetch_row($res);
            $sql.=$row[1].";rnrn";
            $res=mysql_query('SELECT * FROM `'.$table.'`');
            if(mysql_num_rows($res)>=1)
             {
                while(($row=mysql_fetch_assoc($res)))
                 {
                    $keys=implode("`, `",array_keys($row));
                    $values=array_values($row);
                    foreach($values as $k=>$v)
                     {
                        $values[$k]=mysql_real_escape_string($v);
                        $values[$k]=ereg_replace("(n|r){1,}",'n',$values[$k]);
                     }
                    $values2=implode("', '",$values);
                    $values2="'".$values2."'";
                    $values2=str_replace("''","null",$values2);
                    $sql.="INSERT INTO `$table` (`$keys`) VALUES ($values2);rn";
                 }
                $sql.="rnrn";
             }
            fputs($fp,gzencode($sql,9));
            fflush($fp);
         }
        fclose($fp);
        chmod('../sistem/data/backup_'.date('d.m.y').'.gz',0644);
        header('location: ../?act=yes');
        exit;
        break;
        
        case 'reklama':
        include_once $config['OTS'].'sistem/config.class.php';
        $config['TITLE']='Управление рекламой';
        include_once $config['OTS'].'sistem/head.php';
        $class=NEW Config_File('../sistem/config.php');
        if($_GET['rekl']=='foot' OR $_GET['rekl']=='head')
         {
            if(isset($_GET['unset']))
             {
                $id=((int)abs($_GET['id']));
                $array=explode('|',$class->read_key('$config[''.$_GET['rekl'].'_reklam']'));
                unset($array[$id]);
                $class->UpDATA_Key('$config[''.$_GET['rekl'].'_reklam']',preg_replace('#(|)+$#','',trim(implode($array,'|'))));
                $class->config_saved();
                print '<span class="yes">Удалено</span><br />';
             }
            if(isset($_POST['go_New']))
             {
                if(is_array($_POST['name'])AND !empty($_POST['url']))
                 {
                    $arr=array(filtr($_POST['url']));
                    foreach($_POST['name'] as $q)
                     {
                        if(!empty($q))
                            $arr[]=filtr($q);
                     }
                    $class->UpDATA_Key('$config[''.$_GET['rekl'].'_reklam']',preg_replace('#(|)+$#','',trim(implode($arr,'`').'|'.$class->read_key('$config[''.$_GET['rekl'].'_reklam']'))));
                    $class->config_saved();
                    print '<span class="yes">Добавлено</span><br />';
                 }
                 else
                    print '<span class="err">Ошибка</span><br />';
             }
            if(isset($_POST['go_Re']))
             {
                if(is_array($_POST['name'])AND !empty($_POST['url']))
                 {
                    $arr=array(filtr($_POST['url']));
                    foreach($_POST['name'] as $q)
                     {
                        if(!empty($q))
                            $arr[]=filtr($q);
                     }
                    $re=((int)abs($_GET['resend']));
                    $re_arr=explode('|',$class->read_key('$config[''.$_GET['rekl'].'_reklam']'));
                    $re_arr[$re]=implode($arr,'`');
                    $class->UpDATA_Key('$config[''.$_GET['rekl'].'_reklam']',preg_replace('#(|)+$#','',trim(implode($re_arr,'|'))));
                    $class->config_saved();
                    print '<span class="yes">Изменено</span><br />';
                    unset($_GET['resend']);
                 }
                 else
                    print '<span class="err">Ошибка</span><br />';
             }
            $kol=isset($_POST['kol'])?((int)abs($_POST['kol'])):1;
            $re_arr=array('http://');
            if(isset($_GET['resend']))
             {
                $re=((int)abs($_GET['resend']));
                $re_arr=explode('|',$class->read_key('$config[''.$_GET['rekl'].'_reklam']'));
                $re_arr=explode('`',$re_arr[$re]);
                $kol=isset($_POST['kol'])?((int)abs($_POST['kol'])):(count($re_arr)-1);
             }
            print '<form action="admin.php?act=reklama&rekl='.$_GET['rekl'].(isset($_GET['resend'])?'&resend='.$re:'').'" method="post">';
            print 'Названий: <input size="2" name="kol" value="'.$kol.'" /> <input type="submit" class="submit" value="Go" /><br /><hr />';
            print 'Ссылка:<br /><input name="url" value="'.$re_arr[0].'" /><br />';
            for($i=1; $i<=$kol; ++$i)
                print 'Название №'.$i.':<br /><input name="name['.$i.']" value="'.$re_arr[$i].'" /><br />';
            print '<input type="submit" class="submit" name="'.(!isset($_GET['resend'])?'go_New" value="Добавить':'go_Re" value="Изменить').'" /><br /></form>';
            $array=explode('|',$class->read_key('$config[''.$_GET['rekl'].'_reklam']'));
            foreach($array as $id=>$arr)
             {
                $arr=trim($arr);
                if(!empty($arr))
                 {
                    $arr=explode('`',$arr);
                    print '<a class="link" href="'.$arr[0].'">'.$arr[0].'</a><br />';
                    unset($arr[0]);
                    print '<div class="func">'.implode($arr,', ').'<br /></div>';
                    print '[<a href="admin.php?act=reklama&rekl='.$_GET['rekl'].'&resend='.$id.'">Изменить</a>/<a href="admin.php?act=reklama&rekl='.$_GET['rekl'].'&unset='.$id.'">Удалить</a>]<br />';
                 }
             }
            print '<a href="admin.php?act=reklama">Управление рекламой</a><br />';
            print '<a href="admin.php">В админку</a><br />';
            include_once $config['OTS'].'sistem/foot.php';
         }
//////////////////////////////////
        print '<form action="admin.php?act=reklama" method="post">';
        $array=array('head','foot');
        if(isset($_POST['go_ReKLam']))
         {
            foreach($array as $name)
             {
                $class->UpDATA_key('$config[''.$name.'_isset']',$_POST[$name.'_isset']);
                $class->UpDATA_key('$config[''.$name.'_type']',$_POST[$name.'_type']);
                $class->UpDATA_key('$config[''.$name.'_kol']',$_POST[$name.'_kol']);
             }
            $class->config_saved();
            print '<span class="yes">Сохранено!</span><br />';
         }
        foreach($array as $name)
         {
            print '<b>'.$class->read_key('$config[''.$name.'_isset']','kom').'</b>:<br />Включена <input'.($class->read_key('$config[''.$name.'_isset']')==1?' checked="checked"':'').' type="radio" name="'.$name.'_isset" value="1" /> <small>или</small> <input'.($class->read_key('$config[''.$name.'_isset']')==2?' checked="checked"':'').' type="radio" name="'.$name.'_isset" value="2" /> Выключена<br />';
            print $class->read_key('$config[''.$name.'_kol']','kom').':<br /><input type="text" name="'.$name.'_kol" value="'.$class->read_key('$config[''.$name.'_kol']').'" /><br />';
            print $class->read_key('$config[''.$name.'_type']','kom').':<br />Пирамидой <input'.($class->read_key('$config[''.$name.'_type']')==1?' checked="checked"':'').' type="radio" name="'.$name.'_type" value="1" /> <small>или</small> <input'.($class->read_key('$config[''.$name.'_type']')==2?' checked="checked"':'').' type="radio" name="'.$name.'_type" value="2" /> Хаотично<br />';
            print '<a href="admin.php?act=reklama&rekl='.$name.'">Управление рекламой</a><br />';
         }
        print '<input type="submit" class="submit" name="go_ReKLam" value="Настроить" /><br /></form>';
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'set_code':
        include_once $config['OTS'].'sistem/config.class.php';
        $config['TITLE']='Настройка капчи';
        include_once $config['OTS'].'sistem/head.php';
        $class=NEW Config_File('../sistem/config.php');
        $array=array('rand_kubik','rand_pomehi','rand_fon','rand_buk','rand_ten','rand_alph');
        if(isset($_POST['go_CoDE']))
         {
            unset($_SESSION['rand']);
            foreach($array as $name)
                $class->UpDATA_Key('$config[''.$name.'']',filtr($_POST[$name]));
            $class->config_saved();
            print '<span class="yes">Сохранено!</span><br />';
         }
        print '<form action="admin.php?act=set_code" method="post">';
        foreach($array as $name)
         {
            if($name=='rand_alph')
                print $class->read_key('$config[''.$name.'']','kom').':<br /><input type="text" name="'.$name.'" value="'.$class->read_key('$config[''.$name.'']','value').'" /><br />';
             else
                print '<input'.($class->read_key('$config[''.$name.'']','value')==1?' checked="checked"':'').' type="checkbox" name="'.$name.'" value="1" /> '.$class->read_key('$config[''.$name.'']','kom').'<br />';
         }
        print '<input type="submit" class="submit" name="go_CoDE" value="Настроить" /><br /></form>';
        print '<img src="../in/code_'.session_id().'.gif" alt="Loading..." /><br />';
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'setting':
        include_once $config['OTS'].'sistem/config.class.php';
        $config['TITLE']='Настройка системы';
        include_once $config['OTS'].'sistem/head.php';
        $class=NEW Config_File('../sistem/config.php');
        $array=array('id_adm','admin','mail','home','name','top_id','root','keywords','description');
        if(isset($_POST['go_SeTiNg']))
         {
            $htaccess=file_get_contents('../.htaccess');
            $htaccess=explode('ErrorDocument',preg_replace('/ErrorDocument/i','ErrorDocument',$htaccess));
            $htaccess=trim($htaccess[0])."rn";
            $htaccess.="rn".'ErrorDocument 400 '.filtr($_POST['home']).'/?act=error&error=400';
            $htaccess.="rn".'ErrorDocument 401 '.filtr($_POST['home']).'/?act=error&error=401';
            $htaccess.="rn".'ErrorDocument 402 '.filtr($_POST['home']).'/?act=error&error=402';
            $htaccess.="rn".'ErrorDocument 403 '.filtr($_POST['home']).'/?act=error&error=403';
            $htaccess.="rn".'ErrorDocument 404 '.filtr($_POST['home']).'/?act=error&error=404';
            $htaccess.="rn".'ErrorDocument 500 '.filtr($_POST['home']).'/?act=error&error=500';
            $htaccess.="rn".'ErrorDocument 502 '.filtr($_POST['home']).'/?act=error&error=502';
            $fp=fopen('../.htaccess','w');
            fputs($fp,$htaccess);
            fclose($fp);
            $robots=file_get_contents('../robots.txt');
            $robots=explode('Host',preg_replace('/Host/i','Host',$robots));
            $robots=trim($robots[0])."rn";
            $robots.="rn".'Host: '.preg_replace('/([a-z0-9]+)?:///is','',filtr($_POST['home']));
            $fp=fopen('../robots.txt','w');
            fputs($fp,$robots);
            fclose($fp);
            foreach($array as $name)
                $class->UpDATA_Key('$config[''.$name.'']',filtr($_POST[$name]));
            $class->config_saved();
            print '<span class="yes">Сохранено!</span><br />';
         }
        print '<form action="admin.php?act=setting" method="post">';
        foreach($array as $name)
            print $class->read_key('$config[''.$name.'']','kom').':<br /><input type="text" name="'.$name.'" value="'.(($name=='root' AND trim($class->read_key('$config[''.$name.'']','value'))==NULL)?$_SERVER['DOCUMENT_ROOT']:$class->read_key('$config[''.$name.'']','value')).'" /><br />';
        print '<input type="submit" class="submit" name="go_SeTiNg" value="Настроить" /><br /></form>';
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'news_unset':
        $id=((int)abs($_GET['id']));
        mysql_unbuffered_query('DELETE from `news` WHERE `id`=''.mysql_real_escape_string($id).'' LIMIT 1;');
        header('location: ../?act=yes');
        exit;
        break;
        
        case 'news':
        $config['TITLE']='Добавление новости';
        include_once $config['OTS'].'sistem/head.php';
        if(isset($_POST['go_2']) AND $_SESSION['PROFIX']==2)
         {
            if(!empty($_POST['news']))
             {
                unset($_SESSION['PROFIX']);
                $news=mysql_real_escape_string(filtr($_POST['news']));
                mysql_unbuffered_query('insert into `news` set `news`=''.$news.'',`time`=''.time().'';');
                print '<span class="yes">Новость успешно добавлена!</span><br />';
                if($_POST['users']=='yes')
                 {
                    print '<span class="yes">Новость разослана по пользователям!</span><br />';
                    $dat=date('d.m.y');
                    if(mysql_num_rows($sql=mysql_query('SELECT `mail` FROM `users`;'))>=1)
                     {
                        while($arr=mysql_fetch_assoc($sql))
                            mailer($arr['mail'],$config['name'].' - Новости','Новости ('.$dat.') с сайта '.$config['home']."rnrn".$news."rnrn".'С уважением, администрация '.$config['name']);
                     }
                 }
             }
             else
                $error='Новость пуста';
         }
        if(isset($_POST['go_1']) AND $_SESSION['PROFIX']==1)
         {
            $_SESSION['PROFIX']=2;
            print '<form action="admin.php?act=news" method="POST">';
            print 'Проверте, не допустили ли вы ошибки прии написании новости: <br /><b>'.filtr($_POST['news']).'</b><input type="hidden" name="news" value="'.filtr($_POST['news']).'" /><br />';
            print 'Новость '.($_POST['users']=='yes'?'<b>будет</b>':'не будет').' разослана по пользователям<input type="hidden" name="users" value="'.filtr($_POST['users']).'" /><br />';
            print '<input type="submit" class="submit" name="go_2" value="Поехали" /><br /></form>';
         }
         else
             {
                $_SESSION['PROFIX']=1;
                print empty($error)?'':'<span class="err">'.$error.'</span><br />';
                print '<form action="admin.php?act=news" method="POST">';
                print 'Новость:<br /><textarea rows="4" cols="15" name="news"></textarea><br />';
                print '<input type="checkbox" name="users" value="yes" /> Разослать пользователям<br />';
                print '<input type="submit" class="submit" name="go_1" value="Добавить" /><br /></form>';
             }
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'us_search':
        $config['TITLE']='Поиск пользователей';
        include_once $config['OTS'].'sistem/head.php';
        if(isset($_POST['go']))
         {
            if(ereg('^[0-9]$',$_POST['user']))
                $sql='`id`=''.((int)abs($_POST['user'])).''';
             else
                $sql='`mail` LIKE '%'.mysql_real_escape_string(filtr($_POST['user'])).'%'';
            if(mysql_num_rows($sql=mysql_query('SELECT * FROM `users` where '.$sql.';'))>=1)
             {
                while($arr=mysql_fetch_assoc($sql))
                 {
                    print 'ID: <a href="../user/'.$arr['id'].'/index.php">'.$arr['id'].'</a><br />';
                    print 'E-Mail: <b>'.$arr['mail'].'</b><br /><hr />';
                 }
             }
             else
                print '<span class="err">Не чего не найдено</span><br />';
         }
        print '<form action="admin.php?act=us_search" method="POST">';
        print 'E-Mail (ID):<br /><input name="user" value="" /><br />';
        print '<input type="submit" class="submit" name="go" value="Искать" /></form>';
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'kredit_site':
        $id=((int)abs($_GET['id']));
        if(mysql_num_rows($sql=mysql_query('SELECT * FROM `site` where `id`=''.$id.'' LIMIT 1;'))>=1)
         {
            $arr=mysql_fetch_assoc($sql);
            if(isset($_POST['go']))
             {
                $kredit=((int)abs($_POST['kredit']));
                if(!empty($kredit))
                 {
                    mysql_unbuffered_query('UPDATE `site` SET `kredit`=''.$kredit.'' WHERE `id`=''.$id.'' LIMIT 1;');
                    header('location: ../?act=yes');
                    exit;
                 }
                 else
                    $error='Все поля обязательны к заполнению!';
             }
            $config['TITLE']='Редактирование кредитов';
            include_once $config['OTS'].'sistem/head.php';
            print empty($error)?'':'<span class="err">'.$error.'</span><br />';
            print '<form action="admin.php?act=kredit_site&id='.$id.'" method="POST">';
            print 'Кредиты:<br /><input name="kredit" value="'.$arr['kredit'].'" /><br />';
            print '<input type="submit" class="submit" name="go" value="Изменить" /></form>';
            print '<a href="admin.php">В админку</a><br />';
            include_once $config['OTS'].'sistem/foot.php';
         }
         else
             {
                header('location: ../?act=err');
                exit;
             }
        break;
        
        case 'zalobi':
        $config['TITLE']='Жалобы пользователей';
        include_once $config['OTS'].'sistem/head.php';
        if(isset($_GET['id']))
         {
            $id=((int)abs($_GET['id']));
            if(isset($_GET['ignor']))
             {
                $ignor=((int)abs($_GET['ignor']));
                mysql_unbuffered_query('UPDATE `zalobi` SET `ignor`='2' WHERE `id`=''.$ignor.'' LIMIT 1;');
                print '<span class="yes">Жалоба в игноре</span><br />';
             }
            $count=mysql_result(mysql_query('SELECT COUNT(*) FROM `zalobi` WHERE `for`=''.$id.'';'),0);
            if($page=page($count,isset($_GET['page'])?$_GET['page']:1))
             {
                $sql=mysql_query('SELECT * FROM `zalobi` WHERE `for`=''.$id.'' LIMIT '.$page['ot'].','.$_SESSION['kol_sites'].';');
                while($arr=mysql_fetch_assoc($sql))
                    print ($arr['ignor']==1?'<b style="color: red">+</b> ':'').' '.date('d.m.y/H:i',$arr['time']).'<br /><div class="func">'.$arr['kom'].'<br /></div>'.($arr['ignor']==1?'[<a href="admin.php?act=zalobi&id='.$id.'&page='.$page['page'].'&ignor='.$arr['id'].'">Игнор</a>]<br />':'');
                pages($page['page'],$page['str'],'admin.php?act=zalobi&id='.$id.'&page=');
             }
             else
                print 'Такой страници не существует!<br />';
            print '<a href="../site/'.$id.'/index.php">К меню сайта</a><br />';
            print '<a href="admin.php?act=zalobi">Назад</a><br />';
         }
         else
             {
                $count=mysql_num_rows($sql=mysql_query('SELECT DISTINCT `for` FROM `zalobi`;'));
                if($page=page($count,isset($_GET['page'])?$_GET['page']:1))
                 {
                    while($arr=mysql_fetch_assoc($sql))
                     {
                        $name=mysql_result(mysql_query('SELECT `name` FROM `site` WHERE `id`=''.$arr['for'].'' LIMIT 1;'),0);
                        $new=mysql_result(mysql_query('SELECT COUNT(*) FROM `zalobi` WHERE `for`=''.$arr['for'].'' AND `ignor`='1';'),0);
                        print '<a href="admin.php?act=zalobi&id='.$arr['for'].'">'.$name.'</a> ('.mysql_result(mysql_query('SELECT COUNT(*) FROM `zalobi` WHERE `for`=''.$arr['for'].'';'),0).') '.($new>=1?'+'.$new:'').'<br />';
                     }
                    pages($page['page'],$page['str'],'admin.php?act=zalobi&page=');
                 }
                 else
                    print 'Такой страници не существует!<br />';
             }
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'blocked_ip':
        $config['TITLE']='Заблокированные IP адреса';
        include_once $config['OTS'].'sistem/head.php';
        if(isset($_GET['unset']))
         {
            mysql_unbuffered_query('DELETE from `ban_ip` WHERE `ip`=''.mysql_real_escape_string(ip2long(filtr($_GET['unset']))).'' LIMIT 1;');
            print '<span class="yes">Успешно удалено!</span><br />';
         }
        if(isset($_POST['go']))
         {
            $ip=ip2long($_POST['ip']);
            if($ip!=0)
             {
                mysql_unbuffered_query('insert into `ban_ip` set `ip`=''.$ip.'';');
                print '<span class="yes">Успешно забанен!</span><br />';
             }
             else
                print '<span class="err">Не верный ип адрес!</span><br />';
         }
        print '<form method="post" action="admin.php?act=blocked_ip">';
        print 'IP: <input name="ip" size="8" value="'.$_SERVER['REMOTE_ADDR'].'" /> ';
        print '<input type="submit" name="go" class="submit" value="Бан" /></form><hr />';
        $count=mysql_result(mysql_query('SELECT COUNT(*) FROM `ban_ip`;'),0);
        if($page=page($count,isset($_GET['page'])?$_GET['page']:1))
         {
            $sql=mysql_query('SELECT * FROM `ban_ip` LIMIT '.$page['ot'].','.$_SESSION['kol_sites'].';');
            while($arr=mysql_fetch_assoc($sql))
                print 'ID: <a href="'.$config['home'].'/site/'.$arr['id'].'/index.php"><b>'.$arr['id'].'</b></a> <a class="link" href="http://'.($arr['ip']=long2ip($arr['ip'])).'">'.$arr['ip'].'</a> (<a href="http://'.($host=GetHostByADDR($arr['ip'])).'">'.$host.'</a>)<br />[<a href="admin.php?act=blocked_ip&page='.$page['page'].'&unset='.$arr['ip'].'">Удалить</a>]<br />';
            pages($page['page'],$page['str'],'admin.php?act=blocked_ip&page=');
         }
         else
            print 'Такой страници не существует!<br />';
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'blocked_site':
        $config['TITLE']='Заблокированные сайты';
        include_once $config['OTS'].'sistem/head.php';
        if(isset($_GET['unset']))
         {
            mysql_unbuffered_query('DELETE from `ban_site` WHERE `site`=''.mysql_real_escape_string(filtr($_GET['unset'])).'' LIMIT 1;');
            print '<span class="yes">Успешно удалено!</span><br />';
         }
        if(isset($_POST['go']))
         {
            $url=mysql_real_escape_string(strtolower(preg_replace('/(http(s)?|ftp|tcp):///is','',filtr($_POST['site']))));
            if(ereg("^([a-z0-9_-.]+.[a-z0-9]{2,5})$",$url))
             {
                mysql_unbuffered_query('insert into `ban_site` set `site`=''.$url.'';');
                print '<span class="yes">Успешно забанен!</span><br />';
             }
             else
                print '<span class="err">Не верный адрес!</span><br />';
         }
        print '<form method="post" action="admin.php?act=blocked_site">';
        print 'Сайт: <input name="site" size="8" value="" /> ';
        print '<input type="submit" name="go" class="submit" value="Бан" /></form><hr />';
        $count=mysql_result(mysql_query('SELECT COUNT(*) FROM `ban_site`;'),0);
        if($page=page($count,isset($_GET['page'])?$_GET['page']:1))
         {
            $sql=mysql_query('SELECT * FROM `ban_site` LIMIT '.$page['ot'].','.$_SESSION['kol_sites'].';');
            while($arr=mysql_fetch_assoc($sql))
                print '<a class="link" href="http://'.$arr['site'].'">'.$arr['site'].'</a> (<a href="admin.php?act=blocked_site&page='.$page['page'].'&unset='.$arr['site'].'">Удалить</a>)<br />';
            pages($page['page'],$page['str'],'admin.php?act=blocked_site&page=');
         }
         else
            print 'Такой страници не существует!<br />';
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 're_site':
        $id=((int)abs($_GET['id']));
        if(mysql_num_rows($sql=mysql_query('SELECT * FROM `site` where `id`=''.$id.'' LIMIT 1;'))>=1)
         {
            $arr=mysql_fetch_assoc($sql);
            if(isset($_POST['go']))
             {
                $url=mysql_real_escape_string(strtolower(preg_replace('/(http(s)?|ftp|tcp):///is','',filtr($_POST['url']))));
                $name=mysql_real_escape_string(filtr($_POST['name']));
                $opis=mysql_real_escape_string(filtr($_POST['opis']));
                $top=((int)abs($_POST['top']));
                if(!empty($url) and !empty($name) and !empty($opis) and !empty($top))
                 {
                    if(ereg("^([a-z0-9_-.]+.[a-z0-9]{2,5})$",$url))
                     {
                        if(mysql_num_rows(mysql_query('SELECT * FROM `ban_site` WHERE `site`=''.$url.'' LIMIT 1;'))<1)
                         {
                            if(mysql_num_rows(mysql_query('SELECT * FROM `top` WHERE `id`=''.$top.'' LIMIT 1;'))>=1)
                             {
                                mysql_unbuffered_query('UPDATE `site` SET
                                `name`=''.$name.'',
                                `opisanie`=''.$opis.'',
                                `top`=''.$top.'',
                                `url`=''.$url.'' WHERE `id`=''.$id.'' LIMIT 1;');
                                $arr2=mysql_fetch_assoc(mysql_query('SELECT * FROM `users` where `id`=''.$arr['admin'].'' LIMIT 1;'));
                                mailer($arr2['mail'],$config['name'].' - Уведомление','Ваш сайт http://'.$arr['url']."rn".'Изменен администратором '.$config['home'].' возможно сайт находился не в той категории или его описание не соответствовало содержанию ресурса!'."rnrn".'С уважением, администрация '.$config['name']);
                                header('location: ../?act=yes');
                                exit;
                             }
                             else
                                $error='Выбранный вами раздел, не существует!';
                         }
                         else
                            $error='Сайт http://'.$url.' забокирован для повторного добавления, за нарушение правил топа!';
                     }
                     else
                        $error='В адресе сайта обнаружены недопустимые символы, или адрес введен не верно!';
                 }
                 else
                    $error='Все поля обязательны к заполнению!';
             }
            $config['TITLE']='Редактирование сайта';
            include_once $config['OTS'].'sistem/head.php';
            print empty($error)?'':'<span class="err">'.$error.'</span><br />';
            print '<form action="admin.php?act=re_site&id='.$id.'" method="POST">';
            print 'Адрес:<br /><input name="url" value="http://'.$arr['url'].'" /><br />';
            print 'Название:<br /><input name="name" value="'.$arr['name'].'" /><br />';
            print 'Описание:<br /><textarea rows="4" cols="15" name="opis">'.$arr['opisanie'].'</textarea><br />';
            print 'Раздел:<br /><select name="top">';
            $sql=mysql_query('SELECT * FROM `top` ORDER BY `mesto` ASC;');
            while($array=mysql_fetch_assoc($sql))
                print '<option'.($arr['top']==$array['id']?' selected="selected"':'').' value="'.$array['id'].'">'.$array['name'].'</option>';
            print '</select><br />';
            print '<input type="submit" class="submit" name="go" value="Изменить" /></form>';
            print '<a href="admin.php">В админку</a><br />';
            include_once $config['OTS'].'sistem/foot.php';
         }
         else
             {
                header('location: ../?act=err');
                exit;
             }
        break;
        
        case 'ban_site':
        $id=((int)abs($_GET['id']));
        if(mysql_num_rows($sql=mysql_query('SELECT * FROM `site` where `id`=''.$id.'' LIMIT 1;'))>=1)
         {
            $arr=mysql_fetch_assoc($sql);
            $arr2=mysql_fetch_assoc(mysql_query('SELECT * FROM `users` where `id`=''.$arr['admin'].'' LIMIT 1;'));
            mysql_unbuffered_query('DELETE from `site` WHERE `id`=''.$id.'' LIMIT 1;');
            mysql_unbuffered_query('DELETE from `golos` where `for`=''.$id.'';');
            mysql_unbuffered_query('DELETE from `zalobi` where `for`=''.$id.'';');
            mysql_unbuffered_query('DELETE from `history` where `for`=''.$id.'';');
            mysql_unbuffered_query('DELETE from `statistic` where `for`=''.$id.'';');
            mysql_unbuffered_query('insert into `ban_site` set `site`=''.$arr['url'].'';');
            mysql_unbuffered_query('UPDATE `ban_ip` SET `id`='0' WHERE `id`=''.$id.'';');
            mailer($arr2['mail'],$config['name'].' - Уведомление','Ваш сайт http://'.$arr['url']."rn".'Удален администратором и заблокирован для повторного добавления '.$config['home'].' за нарушение правил топа или по иным причинам!'."rnrn".'С уважением, администрация '.$config['name']);
            header('location: ../?act=yes');
            exit;
         }
         else
             {
                header('location: ../?act=err');
                exit;
             }
        break;
        
        case 'del_site':
        $id=((int)abs($_GET['id']));
        if(mysql_num_rows($sql=mysql_query('SELECT * FROM `site` where `id`=''.$id.'' LIMIT 1;'))>=1)
         {
            $arr=mysql_fetch_assoc($sql);
            $arr2=mysql_fetch_assoc(mysql_query('SELECT * FROM `users` where `id`=''.$arr['admin'].'' LIMIT 1;'));
            mysql_unbuffered_query('DELETE from `site` WHERE `id`=''.$id.'' LIMIT 1;');
            mysql_unbuffered_query('DELETE from `golos` where `for`=''.$id.'';');
            mysql_unbuffered_query('DELETE from `zalobi` where `for`=''.$id.'';');
            mysql_unbuffered_query('DELETE from `history` where `for`=''.$id.'';');
            mysql_unbuffered_query('DELETE from `statistic` where `for`=''.$id.'';');
            mailer($arr2['mail'],$config['name'].' - Уведомление','Ваш сайт http://'.$arr['url']."rn".'Удален администратором '.$config['home'].' за нарушение правил топа или по иным причинам!'."rnrn".'С уважением, администрация '.$config['name']);
            header('location: ../?act=yes');
            exit;
         }
         else
             {
                header('location: ../?act=err');
                exit;
             }
        break;
        
        case 'ok_site':
        $id=((int)abs($_GET['id']));
        if(mysql_num_rows($sql=mysql_query('SELECT * FROM `site` where `id`=''.$id.'' and `status`='1' LIMIT 1;'))>=1)
         {
            $arr=mysql_fetch_assoc($sql);
            $arr2=mysql_fetch_assoc(mysql_query('SELECT * FROM `users` where `id`=''.$arr['admin'].'' LIMIT 1;'));
            mysql_unbuffered_query('UPDATE `site` SET `status`='2' WHERE `id`=''.$id.'' LIMIT 1;');
            mailer($arr2['mail'],$config['name'].' - Уведомление','Ваш сайт http://'.$arr['url']."rn".'Одобрен администратором '.$config['home'].' и допущен к участию в топе!'."rnrn".'С уважением, администрация '.$config['name']);
            header('location: ../?act=yes');
            exit;
         }
         else
             {
                header('location: ../?act=err');
                exit;
             }
        break;
        
        case 'proverka':
        $config['TITLE']='Сайты на проверке';
        include_once $config['OTS'].'sistem/head.php';
        $count=mysql_result(mysql_query('SELECT COUNT(*) FROM `site` where `status`='1';'),0);
        if($page=page($count,isset($_GET['page'])?$_GET['page']:1))
         {
            $sql=mysql_query('SELECT * FROM `top`;');
            while($arr=mysql_fetch_assoc($sql))
                $top[$arr['id']]=$arr['name'];
            $sql=mysql_query('SELECT * FROM `site` where `status`='1' LIMIT '.$page['ot'].','.$_SESSION['kol_sites'].';');
            while($arr=mysql_fetch_assoc($sql))
             {
                print '<a class="link" href="http://'.$arr['url'].'">'.$arr['name'].'</a> (<small>'.$arr['url'].'</small>)<br /><div class="func">';
                print 'Добавил ID: <b><a href="'.$config['home'].'/user/'.$arr['admin'].'/index.php">'.$arr['admin'].'</a></b><br />';
                print 'Описание: <b>'.$arr['opisanie'].'</b><br />';
                print 'Категория: <b>'.(isset($top[$arr['top']])?$top[$arr['top']]:'не существующая категория').'</b><br />';
                print '</div>[<a href="admin.php?act=ok_site&id='.$arr['id'].'">Разрешить</a>/<a href="admin.php?act=re_site&id='.$arr['id'].'">Изменить</a> | <a href="admin.php?act=del_site&id='.$arr['id'].'">Удалить</a>/<a href="admin.php?act=ban_site&id='.$arr['id'].'">Заблокировать</a>]<br />';
             }
            pages($page['page'],$page['str'],'admin.php?act=proverka&page=');
         }
         else
            print 'Такой страници не существует!<br />';
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'new':
        $error='';
        if(isset($_POST['go']))
         {
            $len1=mb_strlen($name=mysql_real_escape_string(filtr($_POST['name'])));
            $len2=mb_strlen($opis=mysql_real_escape_string(filtr($_POST['opis'])));
            if($len1>=1 and $len2>=1 and $len1<=40 and $len2<=200)
             {
                $arr=@mysql_fetch_assoc(mysql_query('SELECT * FROM `top` ORDER BY `mesto` DESC LIMIT 1;'));
                $arr['mesto']=isset($arr['mesto'])?(++$arr['mesto']):0;
                mysql_unbuffered_query('insert into `top` set
                `mesto`=''.$arr['mesto'].'',
                `name`=''.$name.'',
                `opisanie`=''.$opis.'';');
                header('location: ../?act=yes');
                exit;
             }
             else
                $error='Не верно заполненно одно из полей';
         }
        $config['TITLE']='Создание категории';
        include_once $config['OTS'].'sistem/head.php';
        print empty($error)?'':'<span class="err">'.$error.'</span><br />';
        print '<form action="admin.php?act=new" method="POST">';
        print 'Название:<br /><input name="name" value="" /><br />';
        print 'Описание:<br /><textarea rows="4" cols="15" name="opis"></textarea><br />';
        print '<input class="submit" type="submit" name="go" value="Добавить" /></form><br />';
        print '<a href="admin.php">В админку</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
        
        case 'top_resend':
        $error='';
        $id=((int)abs($_GET['id']));
        if(mysql_num_rows($sql=mysql_query('SELECT * FROM `top` where `id`=''.$id.'' LIMIT 1;'))>=1)
         {
            $arr=mysql_fetch_assoc($sql);
            if(isset($_POST['go']))
             {
                $len1=mb_strlen($name=mysql_real_escape_string(filtr($_POST['name'])));
                $len2=mb_strlen($opis=mysql_real_escape_string(filtr($_POST['opis'])));
                if($len1>=1 and $len2>=1 and $len1<=40 and $len2<=200)
                 {
                    mysql_unbuffered_query('UPDATE `top` SET `name`=''.$name.'', `opisanie`=''.$opis.'' WHERE `id`=''.$id.'' LIMIT 1;');
                    header('location: ../?act=yes');
                    exit;
                 }
                 else
                    $error='Не верно заполненно одно из полей';
             }
            $config['TITLE']='Создание категории';
            include_once $config['OTS'].'sistem/head.php';
            print empty($error)?'':'<span class="err">'.$error.'</span><br />';
            print '<form action="admin.php?act=top_resend&id='.$id.'" method="POST">';
            print 'Название:<br /><input name="name" value="'.$arr['name'].'" /><br />';
            print 'Описание:<br /><textarea rows="4" cols="15" name="opis">'.$arr['opisanie'].'</textarea><br />';
            print '<input class="submit" type="submit" name="go" value="Изменить" /></form><br />';
            include_once $config['OTS'].'sistem/foot.php';
         }
         else
             {
                header('location: ../?act=err');
                exit;
             }
        break;
        
        case 'top_del':
        $id=((int)abs($_GET['id']));
        if(mysql_num_rows(mysql_query('SELECT * FROM `top` where `id`=''.$id.'' LIMIT 1;'))>=1)
         {
            if(!isset($_GET[session_id()]))
                die('Вы уверены что хотите удалить раздел?<br /><a href="admin.php?act=top_del&id='.$id.'&'.session_id().'">Да</a>/<a href="../">Нет</a>');
            $sql=mysql_query('SELECT * FROM `site` where `top`=''.$id.'';');
            while($arr=mysql_fetch_assoc($sql))
             {
                mysql_unbuffered_query('DELETE from `golos` where `for`=''.$arr['id'].'';');
                mysql_unbuffered_query('DELETE from `zalobi` where `for`=''.$arr['id'].'';');
                mysql_unbuffered_query('DELETE from `history` where `for`=''.$arr['id'].'';');
                mysql_unbuffered_query('DELETE from `statistic` where `for`=''.$arr['id'].'';');
             }
            mysql_unbuffered_query('DELETE from `site` where `top`=''.$id.'';');
            mysql_unbuffered_query('DELETE from `top` where `id`=''.$id.'' LIMIT 1;');
            header('location: ../?act=yes');
            exit;
         }
         else
             {
                header('location: ../?act=err');
                exit;
             }
        break;
        
        case 'top_up':
        $id=((int)abs($_GET['id']));
        if(mysql_num_rows($sql=mysql_query('SELECT * FROM `top` where `id`=''.$id.'' LIMIT 1;'))>=1)
         {
            $arr1=mysql_fetch_assoc($sql);
            $arr2=mysql_fetch_assoc(mysql_query('SELECT * FROM `top` where `mesto`<''.$arr1['mesto'].'' and `mesto`!=''.$arr1['mesto'].'' ORDER BY `mesto` DESC LIMIT 1;'));
            if(isset($arr2['mesto']))
             {
                mysql_unbuffered_query('UPDATE `top` SET `mesto`=''.$arr1['mesto'].'' WHERE `id`=''.$arr2['id'].'' LIMIT 1;');
                mysql_unbuffered_query('UPDATE `top` SET `mesto`=''.$arr2['mesto'].'' WHERE `id`=''.$arr1['id'].'' LIMIT 1;');
             }
            header('location: ../?act=yes');
            exit;
         }
         else
             {
                header('location: ../?act=err');
                exit;
             }
        break;
        
        case 'top_down':
        $id=((int)abs($_GET['id']));
        if(mysql_num_rows($sql=mysql_query('SELECT * FROM `top` where `id`=''.$id.'' LIMIT 1;'))>=1)
         {
            $arr1=mysql_fetch_assoc($sql);
            $arr2=mysql_fetch_assoc(mysql_query('SELECT * FROM `top` where `mesto`>''.$arr1['mesto'].'' and `mesto`!=''.$arr1['mesto'].'' ORDER BY `mesto` ASC LIMIT 1;'));
            if(isset($arr2['mesto']))
             {
                mysql_unbuffered_query('UPDATE `top` SET `mesto`=''.$arr1['mesto'].'' WHERE `id`=''.$arr2['id'].'' LIMIT 1;');
                mysql_unbuffered_query('UPDATE `top` SET `mesto`=''.$arr2['mesto'].'' WHERE `id`=''.$arr1['id'].'' LIMIT 1;');
             }
            header('location: ../?act=yes');
            exit;
         }
         else
             {
                header('location: ../?act=err');
                exit;
             }
        break;
        
        default:
        $config['TITLE']='Админ панель';
        include_once $config['OTS'].'sistem/head.php';
        print '<a href="admin.php?act=news">Добавить новость</a><br />';
        $count=mysql_result(mysql_query('SELECT COUNT(*) FROM `site` where `status`='1';'),0);
        print '<a href="admin.php?act=proverka">Проверка сайтов</a> ('.($count>=1?$count:0).')<br />';
        $count=mysql_result(mysql_query('SELECT COUNT(*) FROM `ban_site`;'),0);
        print '<a href="admin.php?act=blocked_site">Заблокированные сайты</a> ('.($count>=1?$count:0).')<br />';
        $count=mysql_result(mysql_query('SELECT COUNT(*) FROM `ban_ip`;'),0);
        print '<a href="admin.php?act=blocked_ip">Заблокированные IP адреса</a> ('.($count>=1?$count:0).')<br />';
        print '<a href="admin.php?act=ploschadki">Площадки нарушители</a><br />';
        $count=mysql_result(mysql_query('SELECT COUNT(*) FROM `zalobi`;'),0);
        $new=mysql_result(mysql_query('SELECT COUNT(*) FROM `zalobi` WHERE `ignor`='1';'),0);
        print '<a href="admin.php?act=zalobi">Жалобы пользлователей</a> ('.($count>=1?$count:0).') '.($new>=1?'+'.$new:'').'<br />';
        print '<a href="admin.php?act=us_search">Поиск пользователя</a><br />';
        print '<a href="admin.php?act=setting">Настройка топа</a><br />';
        print '<a href="admin.php?act=set_code">Настройка капчи</a><br />';
        print '<a href="admin.php?act=reklama">Настройка рекламы</a><br />';
        print '<a href="admin.php?act=backup">Создать бекап</a><br />';
        print '<a href="admin.php?act=update">Лог обновлений</a><br />';
        include_once $config['OTS'].'sistem/foot.php';
        break;
     }
 }
 else
    header('location: ../?act=error&error=404');
exit;
?>