Просмотр файла adm/index.php

Размер файла: 21.07Kb
<?php
define( 'WBCAT', 1 );
$title= 'Админ-панель';
require_once ('../inc/head.php');
  // проверяем правильность пароля-логина
  if (!$allow)
  { // если ошибка, то закрываем доступ
    exit ('Доступ закрыт');
  }
 switch ($_GET['mod']) {


# Общие настройки каталога	#

	case 'set' :
	     echo '<div class="zag">Общие настройки системы</div>';
		 echo '<div class="title">';

		if (isset ($_POST['submit'])) {
			//$admin = mysql_real_escape_string(htmlspecialchars(trim($_POST['admin'])));
			//$pass = mysql_real_escape_string(htmlspecialchars(trim($_POST['pass'])));
			$url = mysql_real_escape_string($_POST['url']);
			$reg = mysql_real_escape_string($_POST['add']);
			$on_page = intval($_POST['on_page']);
			$rate = intval($_POST['rate']);
			$review = intval($_POST['review']);
			$search = intval($_POST['search']);
			$news = intval($_POST['news']);
			$captcha = intval($_POST['captcha']);
			$correct_url = intval($_POST['correct_url']);
                        $rate_log_status = intval($_POST['rate_log_status']);
                        $auth_log_status = intval($_POST['auth_log_status']);
		    
			  	$array = array('url' => $url,'reg' => $reg,'on_page' => $on_page, 'rate' => $rate,'review' => $review,'search' => $search,'news' => $news,'captcha' => $captcha,
                                    'correct_url' => $correct_url,'rate_log_status' => $rate_log_status,'auth_log_status' => $auth_log_status);
				$ser = serialize($array);
				mysql_query("UPDATE `modules` SET `set` = '$ser' WHERE `name` = 'system'") or die(mysql_error());
		 

		    echo '<b>Сайт настроен !</b><br/>';
			}

			$m = mysql_result(mysql_query("SELECT `set` FROM `modules` WHERE `name` = 'system'"),0,'set');
			$set = unserialize($m);

		 echo '<form action="index.php?mod=set" method="post">
		       Адрес , где находится скрипт :<br /> <input type="text" name="url" value="'.$set['url'].'" /><br/>
			   		       '.($set['reg'] == "open" ? '<img src="'.$set['url'].'/images/green.png" alt="on"/>' : '').'
						   '.($set['reg'] == "mod" ? '<img src="'.$set['url'].'/images/yellow.png" alt="mod"/>' : '').'
						   '.($set['reg'] == "close" ? '<img src="'.$set['url'].'/images/red.png" alt="off"/>' : '').'
						   <b>Регистрация сайтов :</b><br/>
			 <input type="radio" value="open" name="add" ' . ($set['reg'] == "open" ? 'checked="checked"' : '') . ' /> Открыта<br />
             <input type="radio" value="mod" name="add" ' . ($set['reg'] == "mod" ? 'checked="checked"' : '') . '/>С модерацией<br />
             <input type="radio" value="close" name="add" ' . ($set['reg'] == "close" ? 'checked="checked"' : '') . ' />Закрыта<br/>
			              '.($set['rate'] == true ? '<img src="'.$set['url'].'/images/green.png" alt="on"/>' : '<img src="'.$set['url'].'/images/red.png" alt="off"/>').'
                          <b>Рейтинг сайтов (+/-) :</b> <br/>
			<input type="radio" value="1" name="rate" ' . ($set['rate'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
            <input type="radio" value="0" name="rate" ' . ($set['rate'] == false ? 'checked="checked"' : '') . '/>Выкл<br />
			              '.($set['captcha'] == true ? '<img src="'.$set['url'].'/images/green.png" alt="on"/>' : '<img src="'.$set['url'].'/images/red.png" alt="off"/>').'
                          <b>Каптча при добавлении сайта</b> <br/>
			<input type="radio" value="1" name="captcha" ' . ($set['captcha'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
            <input type="radio" value="0" name="captcha" ' . ($set['captcha'] == false ? 'checked="checked"' : '') . '/>Выкл<br />
			              '.($set['review'] == true ? '<img src="'.$set['url'].'/images/green.png" alt="on"/>' : '<img src="'.$set['url'].'/images/red.png" alt="off"/>').'
                           <b>Отзывы сайтов :</b> <br/>
			<input type="radio" value="1" name="review" ' . ($set['review'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
            <input type="radio" value="0" name="review" ' . ($set['review'] == false ? 'checked="checked"' : '') . '/>Выкл<br />
			              '.($set['search'] == true ? '<img src="'.$set['url'].'/images/green.png" alt="on"/>' : '<img src="'.$set['url'].'/images/red.png" alt="off"/>').'
                           <b>Поиск сайтов :</b> <br/>
			<input type="radio" value="1" name="search" ' . ($set['search'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
            <input type="radio" value="0" name="search" ' . ($set['search'] == false ? 'checked="checked"' : '') . '/>Выкл<br />
			              '.($set['news'] == true ? '<img src="'.$set['url'].'/images/green.png" alt="on"/>' : '<img src="'.$set['url'].'/images/red.png" alt="off"/>').'
                           <b>Новости :</b> <br/>
			<input type="radio" value="1" name="news" ' . ($set['news'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
            <input type="radio" value="0" name="news" ' . ($set['news'] == false ? 'checked="checked"' : '') . '/>Выкл<br />
			              '.($set['correct_url'] == true ? '<img src="'.$set['url'].'/images/green.png" alt="on"/>' : '<img src="'.$set['url'].'/images/red.png" alt="off"/>').'
                           <b>Проверка корректности сайта:</b> <br/>
			<input type="radio" value="1" name="correct_url" ' . ($set['correct_url'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
            <input type="radio" value="0" name="correct_url" ' . ($set['correct_url'] == false ? 'checked="checked"' : '') . '/>Выкл<br />
                        
            <input type="checkbox" value="1" name="rate_log_status" '.($set['rate_log_status'] ? 'checked="checked"' : '').'/> Записывать логи рейтинга<br/>
            <input type="checkbox" value="1" name="auth_log_status" '.($set['auth_log_status'] ? 'checked="checked"' : '').'/> Записывать логи авторизаций(в админ-панель)<br/>
                
            <b>Сайтов на страницу :</b><br/>
		       <input name="on_page" type="text" size="2" value="'.$set['on_page'].'"/><br/>
			   <input type="submit" name="submit" value="Сохранить" />
			   </form>';
			 
		 echo '</div>';
                 echo '</div><div class="main"><a href="index.php">Адимнка</a></div>';
        break;

# Управление списком забанненых url	#

    case 'ban_site' :
        
        if (isset($_GET['do'])) {
            if($_GET['do'] == 'del') {
                if (mysql_result(mysql_query("SELECT COUNT(*) FROM `ban_site` WHERE `id` = '$id'"),0) > 0) { 
                    mysql_query("DELETE FROM `ban_site` WHERE id='" .intval($_GET['id']). "'") or die(mysql_error());
                    header('Location: '.$home.'/adm/?mod=ban_site');
                } else {
                    echo '<div class="error">Неверный id</div>';
                    require_once ('../inc/foot.php');
                    exit;
                }
            }
        }        
        
        
	echo '<div class="zag"><a href="index.php">Админ-панель</a> => <a href="index.php?mod=ban_site">URL-адреса</a></div>';
		 
        $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `ban_site`"),0);
        $pager = new pager($count,$settings['on_page'],$home.'/adm/?mod=ban_site&amp;page=');
        $result = mysql_query('SELECT * FROM `ban_site` ORDER BY id DESC LIMIT '.$pager->get_start().', '.$pager->on_page);
        if ($count > 0 ) {
            while ($m = mysql_fetch_array($result)){
                echo '<div class="title">';
                echo 'Сайт: <a href="http://'.$m['url'].'">'.$m['url'].'</a> [id'.$m['id'].']<br/>';
                echo 'Причина бана: '.(empty($m['why']) ? 'причина не указана' : $m['why']).'<br/>';
                echo 'Дата бана : '.date('d.m.y/H:i',$m['date']);
                echo '<div class="min"><a href="index.php?mod=ban_site&do=del&id='.$m['id'].'">Разбанить</a></div>';
                echo '</div>';
            }
            echo $pager->print_nav();
        } else {
            echo '<div class="title">Забанненых сайтов нет</div>';
        }
        echo '<div class="main"><a href="index.php?mod=ban_url">Банить url</a></div>';
        if ($posts > 1) { echo '<div class="main"><a href="index.php?mod=del_urls">Разабнить все url</a></div>'; }
        echo '<div class="main"><a href="index.php">Админка</a></div>';
        echo '<div class="zag">Всего сайтов: '.$count.'</div>';
    break;

# Разбан все забанненые url #
	case 'del_urls' :

	       echo '<div class="zag" Удаление всех забанненые url</div>';
          if (isset($_POST['submit'])) {
                  $result = mysql_query("DELETE FROM `ban_site`;");
				            mysql_query("OPTIMIZE TABLE `ban_site`");
                      if ($result == true){
                echo '<div class="title">Все url удалены из базы !</div>';
                echo '<div class="title"><a href="index.php?mod=ban_site">Продолжить</a><br /><a href="index.php">Админ панель</a></div>';
		            }
					 else {echo 'Ошибка разбана всех url . Код ошибки <br/>';
					 echo mysql_error();
					 }

            } else {

           echo '<div class="title"><form action="index.php?mod=del_urls" method="post">
			Вы действительно желаете разбанить все url ?<br />
			<input type="submit" name="submit" value="Разбанить всех"/>
			</form></div>
			<div class="main"><a href="index.php?mod=ban_site">Назад</a></div>';
			}

	    break;

# Общие настройки новостей #
    case 'news' :
	     echo '<div class="zag">Настройки новостей</div>';

		 if (isset ($_POST['submit'])) {
			$view = intval($_POST['view']);
			$komm = intval($_POST['komm']);
			$bbcode = intval($_POST['bbcode']);
			$smileys = intval($_POST['smileys']);
			$prew_news = intval($_POST['prew_news']);
			$antiflood = intval($_POST['antiflood']);
			
			  	$array = array('view' => $view,'komm' => $komm,'bbcode' => $bbcode, 'smileys' => $smileys,'prew_news' => $prew_news,'antiflood' => $antiflood);
				$ser = serialize($array);
				mysql_query("UPDATE `modules` SET `set` = '$ser' WHERE `name` = 'news'") or die(mysql_error());
		    echo '<b>Сайт настроен !</b><br/>';
			}

        $m = mysql_result(mysql_query("SELECT `set` FROM `modules` WHERE `name` = 'news'"),0,'set');
		$set_news = unserialize($m);

         echo '<div class="title"><form action="index.php?mod=news" method="post">
		       '.($set_news['view'] == true ? '<img src="'.$home.'/images/green.png" alt="on"/>' : '<img src="'.$home.'/images/red.png" alt="off"/>').'
		       <b>Вывод последней новости на главную </b> :<br/>
			   <input type="radio" value="1" name="view" ' . ($set_news['view'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
               <input type="radio" value="0" name="view" ' . ($set_news['view'] == false ? 'checked="checked"' : '') . '/>Выкл<br />
		       '.($set_news['komm'] == true ? '<img src="'.$home.'/images/green.png" alt="on"/>' : '<img src="'.$home.'/images/red.png" alt="off"/>').'
		       <b>Комментарии</b> :<br/>
			   <input type="radio" value="1" name="komm" ' . ($set_news['komm'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
               <input type="radio" value="0" name="komm" ' . ($set_news['komm'] == false ? 'checked="checked"' : '') . '/>Выкл<br />
		       '.($set_news['bbcode'] == true ? '<img src="'.$home.'/images/green.png" alt="on"/>' : '<img src="'.$home.'/images/red.png" alt="off"/>').'
		       <b>BBcode теги (в комментариях)</b> :<br/>
			   <input type="radio" value="1" name="bbcode" ' . ($set_news['bbcode'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
               <input type="radio" value="0" name="bbcode" ' . ($set_news['bbcode'] == false ? 'checked="checked"' : '') . '/>Выкл<br />
		       '.($set_news['smileys'] == true ? '<img src="'.$home.'/images/green.png" alt="on"/>' : '<img src="'.$home.'/images/red.png" alt="off"/>').'
		       <b>Смайлы (в комментариях)</b> :<br/>
			   <input type="radio" value="1" name="smileys" ' . ($set_news['smileys'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
               <input type="radio" value="0" name="smileys" ' . ($set_news['smileys'] == false ? 'checked="checked"' : '') . '/>Выкл<br />

			   '.($set_news['prew_news'] == true ? '<img src="'.$home.'/images/green.png" alt="on"/>' : '<img src="'.$home.'/images/red.png" alt="off"/>').'
		       <b>Обрезка длинной новости (на главной)</b> :<br/>
			   <input type="radio" value="1" name="prew_news" ' . ($set_news['prew_news'] == true ? 'checked="checked"' : '') . ' />Вкл<br />
               <input type="radio" value="0" name="prew_news" ' . ($set_news['prew_news'] == false ? 'checked="checked"' : '') . '/>Выкл<br />

		       <img src="'.$home.'/images/green.png" alt="on"/><br/>
		       <b>Антиспам (в секундах)</b> :<br/>
		       <input name="antiflood" type="text" size="2" value="'.$set_news['antiflood'].'"/><br/>
			   <input type="submit" name="submit" value="Сохранить" />
		       </form></div>';
			   echo '<div class="func"><a href="'.$home.'/news.html?mod=add">Добавить новость</a><br/><a href="'.$home.'/news.html">К новостям</a></div>';
			   echo '<div class="main"><a href="index.php">Админка</a></div>';

	    break;

# Бан отдельного url #

	case 'ban_url' :

        echo '<div class="zag">Админ-панель : Бан сайта</div>';
          if (isset($_POST['submit'])) {
		  echo $_POST['url'];
		       if (empty($_POST['url'])) {
				  echo '<div class="title"><b>Вы не заполнили поле "Адрес сайта" !</b></div>';
				  echo '<div class="title"><a href = "index.php?mod=ban_url">Повторить</a></div>';
				  require_once ('../inc/foot.php');
				  exit;
			    }
			         $url = htmlspecialchars(trim($_POST['url']));
                     $why = htmlspecialchars(trim($_POST['why']));
                     $result = mysql_query("insert into `ban_site` SET
		             `url`='" . mysql_real_escape_string($url) . "',
		             `date`='".$time."',
		             `why`='" . mysql_real_escape_string($why) . "';");
			  if ($result == true) header('Location: '.$home.'/adm/?mod=ban_site');
            }
			 else {
                echo '<div class="title"><form action="index.php?mod=ban_url" method="post">
				<u>Адрес сайта (без http://)</u> : <br/>
				<small><font color="#FF0000">site.com</font> - Баним url</small><br/>
				<input type = "text" name = "url" value="'.htmlspecialchars($_REQUEST['ip']).'"/><br/>
			    <u>Причина бана</u> : <br/>
				<small>[Необязательное поле]</small><br/>
				<textarea cols="20" rows="4" name="why"></textarea><br/>
			    <input type="submit" name="submit" value="Забанить"/>
			    </form> </div>';
				echo '</div><div class="main"><a href="index.php?mod=ban_site">Отмена</a></div>';
				}

        break;

# Смена пароля от админки #
    case 'change' :
	    echo '<div class="zag">Профиль администратора</div>';
		$profile = unserialize($set_module['logon']);
		if (isset($_POST['submit'])) {
			
			$admin = mysql_real_escape_string(trim($_POST['admin']));
			$email = !empty($_POST['email']) ? mysql_real_escape_string(trim($_POST['email'])) : '';
			$old_pass = mysql_real_escape_string(trim($_POST['old_pass']));
			$new_pass = mysql_real_escape_string(trim($_POST['new_pass']));
			
			if (!empty($new_pass) && !empty($old_pass)) {
				if ($old_pass != $profile['pass']) {
					$error = 'Старый пароль неверный !<br/>';
				}
				if (empty($admin)) {
					$error.= '<br/> Вы не ввели логин администратора !';
				}

				 if (!empty($error)) {
					echo '<div class="error">';
					echo $error;
					echo '</div>';
				}
				else {
					$array = array('admin' => $admin,'pass' => $new_pass,'email' => $email);
					$ser = serialize($array);
					mysql_query("UPDATE `modules` SET `set` = '$ser' WHERE `name` = 'logon'") or die('<div class="error">'.mysql_error().'</div>');
					echo '<div class="error">Пароль изменен !</div>';
				}
			} else {	
				$array = array('admin' => $admin,'pass' => $profile['pass'],'email' => $email);
				$ser = serialize($array);
				mysql_query("UPDATE `modules` SET `set` = '$ser' WHERE `name` = 'logon'") or die('<div class="error">'.mysql_error().'</div>');
				echo '<div class="error">Данные сохранены !</div>';
			}			
				
		}
		$req = mysql_fetch_array(mysql_query("SELECT `set` FROM `modules` WHERE `name` = 'logon'"));
		$profile = unserialize($req['set']);
		 echo '
		    <div class="title"><form action="index.php?mod=change" method="post">
			<b>Логин администратора</b>*<br/>
			<input type="text" name="admin" value="'.$profile['admin'].'"/> <br/>
			<b>E-mail</b><br/>
			<input type="text" name="email" value="'.$profile['email'].'"/> <br/>
			</div>
			<div class="func">
			Если не хотите менять пароль , оставьте поля пустыми<br/>
			<b>Старый пароль</b>*<br/><input type="password" name="old_pass" value=""/><br/>
			<b>Новый пароль</b>*<br/><input type="text" name="new_pass" value=""/></div>
			<div class="title"><input type="submit" name="submit" value="Изменить" />
		    </form></div>
		     <div class="main"><a href="index.php">Админка</a></div>';

        break;



	default :

		$count_ip = mysql_result(mysql_query("SELECT COUNT(*) FROM `ban_ip`;"), 0);
		$count_logs = mysql_result(mysql_query("SELECT COUNT(*) FROM `logs` WHERE `type` = '1';"), 0);
		echo '<div class="zag">Панель администратора</div>';
        echo '<div class="zag2"><img src="'.$home.'/images/adm_img/main.png" alt="main"/> Основное</div>';
        echo '<div class="stitle">
        <img src="../images/adm_img/mod_sites.png" alt="modules"/> <a href="mod_site.php">Модерация сайтов</a> ['.$count_mod.']<br/>
        <img src="../images/adm_img/main_set.png" alt="modules"/> <a href="?mod=set">Общие настройки каталога</a><br/>
	<img src="../images/adm_img/profile.png" alt="modules"/> <a href="?mod=change">Профиль администратора</a><br/>
        <img src="../images/adm_img/journal.png" alt="modules"/> <a href="journal.php">Журнал событий</a><br/>
        </div>
				<div class="zag2">
				<img src="'.$home.'/images/adm_img/security.png" alt="security"/> Безопасность</div><div class="stitle">
		<img src="../images/adm_img/protect_1.png" alt="modules"/> <a href="?mod=ban_site">URL-адреса</a> ['.$count_ban.']<br/>
		<img src="../images/adm_img/protect_2.png" alt="modules"/> <a href="ban_ip.php">IP-адреса</a> ['.$count_ip.']<br/>
		<img src="../images/adm_img/protect_3.png" alt="modules"/> <a href="captcha_set.php">Настройка CAPTCHA</a><br/>
		<img src="../images/adm_img/protect_4.png" alt="modules"/> <a href="anti_spam_set.php">Автоблокировка сообщений</a><br/>
		</div>
				<div class="zag2">
				<img src="'.$home.'/images/adm_img/modules.png" alt="modules"/>Модули</div>
				<div class="stitle">
		<img src="../images/adm_img/module_1.png" alt="modules"/> <a href="?mod=news">Новости</a><br/>
		<img src="../images/adm_img/module_2.png" alt="modules"/> <a href="faq_set.php">FAQ</a><br/>
		<img src="../images/adm_img/module_3.png" alt="modules"/> <a href="about_set.php">Контакты</a><br/>
		<img src="../images/adm_img/module_4.png" alt="modules"/> <a href="book_set.php">Гостевая книга</a><br/>
		</div>
				<div class="zag2">
		<img src="'.$home.'/images/adm_img/add.png" alt="add"/> Дополнительно</div><div class="stitle">
		<img src="../images/adm_img/theme.png" alt="theme"/> <a href="themes_set.php">Тема оформления</a><br/>
		<img src="../images/adm_img/url_allow.png" alt="url_allow"/> <a href="url_allow.php">Доменные зоны</a><br/>
		<img src="../images/adm_img/logs.png" alt="logs"/> <a href="logs.php">Логи авторизаций</a> ['.$count_logs.']
		</div>
		';
		echo '<div class="func"><a href="'.$home.'/?mod=logout">Выйти</a></div>';
                echo '<div class="main"><a href="'.$home.'">Главная</a></div>';
	}
require_once ('../inc/foot.php');
?>