Просмотр файла moduls/panelka.php

Размер файла: 23.52Kb
<?php
include_once'../system/xcms_core.php';$title='Админка';
if($_COOKIE['style']=='web')require_once '../system/web_head.php'; else require_once '../system/head.php';
if($user['level']){
	switch($act){
		case 'user':
		if($user['level']==6){
			$k_post=$db->query("select `id` from `user`")->rowCount();
			$k_page=k_page($k_post,$set['p_str']);$page=page($k_page);$start=$set['p_str']*$page-$set['p_str'];
			$query = $db->query("select * from `user` ORDER BY `id` DESC LIMIT $start, $set[p_str]");
			if($k_post>0){
				while($row=$query->fetch(PDO::FETCH_ASSOC)){
					if($row['ban']=='1')$link_ban='разбан.'; else $link_ban='бан.';
					echo '<div class="menu"><a href="profile'.$row['id'].'">'.$row['login'].'</a> <b>'.$row['balans'].'</b> баллов.
					'.right('<a href="/moduls/delete.php?act=1&amp;id='.$row['id'].'">Удалить</a>
					<a href="?act=users&amp;id='.$row['id'].'">Изменить</a>
					<a href="/moduls/edit.php?act=1&id='.$row['id'].'">'.$link_ban.'</a>').'</div>';
				}
				if ($k_page>1)str('/admin?act=user&',$k_page,$page); // Вывод страниц
			}else{echo'<div class="menu">Пользователей еще нет</div>';}
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		back('/admin');
		break;
		
		case 'users':
		if($user['level']==6){
			$site=$db->query("select * from `user` where `id`='$id'")->fetch(PDO::FETCH_ASSOC);
			if(!empty($_POST['login'])){
				if(!empty($_POST['login']))$plogin=protect($_POST['login']); else $plogin=0;
				if(!empty($_POST['mail']))$pmail=protect($_POST['mail']); else $pmail=0;
				if(!empty($_POST['names']))$pnames=protect($_POST['names']); else $pnames=0;
				if(!empty($_POST['icq']))$picq=protect(intval($_POST['icq'])); else $picq=0;
				if(!empty($_POST['city']))$pcity=protect($_POST['city']); else $pcity=0;
				if(!empty($_POST['inf']))$pinf=protect($_POST['inf']); else $pinf=0;
				if(!empty($_POST['balans']))$pbalans=protect($_POST['balans']); else $pbalans=0;
				if(!empty($_POST['access']))$access=protect(intval($_POST['access']));else $access=0;
				$db->query("insert into `logs` set `time`='$time', 
				`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> изменил информацию юзера <a href=\"/profile$id\">$site[login]</a>'");
				$db->prepare("update `user` set `login`='$plogin', `mail`='$pmail', `names`='$pnames', `icq`='$picq',
				`city`='$pcity', `inf`='$pinf', `level`='$access', `balans`='$pbalans' where `id`='$id'")->execute();
				echo'<div class="menu">Отредактировали -> <a href="/profile'.$id.'">Далее</a></div>';
			}else{
				echo '<div class="menu"><form action="#" method="post">
				Логин:<br/><input type="text" name="login" value="'.$site['login'].'"/><br />
				E-mail:<br/><input type="text" name="mail" value="'.$site['mail'].'"/><br />
				Имя:<br/><input type="text" name="names" value="'.$site['names'].'"/><br />
				ICQ:<br/><input type="text" name="icq" value="'.$site['icq'].'"/><br />
				Город:<br/><input type="text" name="city" value="'.$site['city'].'"/><br />
				О себе:<br/><textarea type="text" name="inf" rows="5" cols="30">'.$site['inf'].'</textarea><br />
				Права:<br /><select name="access">
				<option value="1">Модератор чата</option>
				<option value="2">Модератор форума</option>
				<option value="3">Модератор обменника</option>
				<option value="4">Модератор загруз-центра</option>
				<option value="5">Администратор</option>
				<option value="6">Супер-администратор</option>
				</select><br />
				Баланс:<br /><input type="text" name="balans" value="'.$site['balans'].'"/><br />
				<input type="submit" value="Редактировать"/>
				</form></div>';
			}
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		back('/admin');
		break;
		
		case 'news':
		if($user['level']==5 or $user['level']==6){
			if(!empty($_POST['name']) and !empty($_POST['msg'])){
				$name=protect($_POST['name']);
				$text=nl2br(smiles(bb_code(protect($_POST['msg']))));
				$db->query("insert into `logs` set `time`='$time', 
				`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> добавил новость <b>$name</b>'");
				$db->query("insert into `news` set `nazv`='$name', `msg`='$text', `time`='$time'");
				echo'<div class="menu">Создали -> <a href="/admin">Далее</a></div>';
			}else{
				echo'<form action="#" method="post"><div class="menu">
				Название:<br /><input type="text" name="name"><br />
				Текст:<br /><textarea name="msg"></textarea><br />
				<input type="submit" value="Создать">
				</div></form>';
				$k_post=$db->query("select `id` from `news`")->rowCount();
				$k_page=k_page($k_post,$set['p_str']);$page=page($k_page);$start=$set['p_str']*$page-$set['p_str'];
				$query = $db->query("select * from `news` ORDER BY `id` DESC LIMIT $start, $set[p_str]");
				if($k_post>0){
					while($row=$query->fetch(PDO::FETCH_ASSOC))
						echo '<div class="menu"><b>'.$row['nazv'].'</b> ['.clock($row['time']).'] '.right('<a href="/moduls/edit.php?act=3&id='.$row['id'].'">Изменить</a> <a href="/moduls/delete.php?act=12&amp;id='.$row['id'].'">Удалить</a>').'<br />
						'.nl2br($row['msg']).'</div>';
					if ($k_page>1)str('/admin?act=news&',$k_page,$page); // Вывод страниц
				}else{echo'<div class="menu">Новостей еще нет</div>';}
			}
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		back('/admin');
		break;
		
		case 'forum':
		if($user['level']==2 or $user['level']==5 or $user['level']==6){
			if(!empty($_POST['name1']) or !empty($_POST['name2'])){
				if(!empty($_POST['name1'])){
					if(!empty($_POST['desc']))$desc=protect($_POST['desc']);else $desc=0;
					$db->query("insert into `logs` set `time`='$time', 
					`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> создал раздел форума'");
					$db->query("insert into `razdel` set `name`='".protect($_POST['name1'])."', `desc`='$desc'");
				}
				elseif(!empty($_POST['name2'])){
					$db->query("insert into `logs` set `time`='$time', 
					`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> создал подраздел форума'");
					$db->query("insert into `forum` set `name`='".protect($_POST['name2'])."', `razdel`='".intval($_POST['cat'])."'");
				}
				echo'<div class="menu">Создали &rarr; <a href="/admin">Далее</a></div>';
			}else{
				$total=$db->query("select `id` from `razdel`")->rowCount();
				echo'<form action="#" method="post">
				<div class="menu">
				<b>Создать раздел:</b><br />
				Название:<br /><input type="text" name="name1"><br />
				Описание:(Необязательно)<br /><textarea name="desc"></textarea><br /><input type="submit" value="Создать"><br /><br />
				<b>Создать подраздел:</b><br />';
				if($total){
					echo'Название:<br /><input type="text" name="name2"><br />
					Каталог:<br /><select name="cat">';
					$sql=$db->query("select * from `razdel` order by `id`");
					while($res=$sql->fetch(PDO::FETCH_ASSOC))echo'<option value="'.$res['id'].'">'.$res['name'].'</option>';
					echo'</select><input type="submit" value="Создать">';
				}else{echo' Нельзя создать раздел';}
				echo'</form></div>';
				if($total){
					$sql=$db->query("select * from `razdel` order by `id`");
					while($res=$sql->fetch(PDO::FETCH_ASSOC)){
						$total2=$db->query("select * from `forum` where `razdel`='$res[id]'")->rowCount();;
						echo '<div class="menu"><b>'.$res['name'].'</b> <a href="/moduls/delete.php?act=6&id='.$res['id'].'" style="float:right;">Удалить</a></div>';
						if($total2){
							$sql2=$db->query("select * from `forum` where `razdel`='$res[id]'");
							while($res2=$sql2->fetch(PDO::FETCH_ASSOC)){
								echo '<div class="citatka">'.$res2['name'].' '.right('<a href="/moduls/delete.php?act=7&id='.$res2['id'].'" style="float:right;">Удалить</a>').'</div>';
							}
						}else{echo'<div class="menu">Подразделы еще не созданы</div>';}
					}
				}else{echo'<div class="menu">Разделы еще не созданы</div>';}
			}
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		back('/admin');
		break;
		
		case 'design':
		if($user['level']>4){
			if(!empty($_POST['name']) and !empty($_POST['link'])){
				$name=protect($_POST['name']);
				$link=protect($_POST['link']);
				$db->query("insert into `logs` set `time`='$time', 
				`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> добавил стиль <b>$name</b>'");
				$db->query("insert into `design` set `name`='$name', `link`='$link'");
				echo'<div class="menu">Добавили &rarr; <a href="/admin">Далее</a></div>';
			}else{
				echo'<div class="menu">
				<b>Добавляем стиль:</b><br />
				<form action="#" method="post">
				Название:<br /><input type="text" name="name"><br />
				Ссылка:<b>(/styles/..)</b><br /><input type="text" name="link"><br />
				<input type="submit" value="Добавить">
				</form></div>';
				$total=$db->query("select * from `design`")->rowCount();;
				if($total){
					$sql=$db->query("select * from `design` order by `id`");
					while($res=$sql->fetch(PDO::FETCH_ASSOC))
						echo '<div class="menu">- '.$res['name'].' <span style="float:right;"><a href="/moduls/delete.php?act=11&id='.$res['id'].'">Удалить</a> <a href="/moduls/edit.php?act=7&id='.$res['id'].'">Изменить</a></span></div>';
				}else{echo'<div class="menu">Дизайны не добавлены</div>';}
			}
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		back('/admin');
		break;
		
		case 'zc':
		if($user['level']>3){
			if(!empty($_POST['name1']) or !empty($_POST['name2'])){
				if(!empty($_POST['name1'])){
					$db->query("insert into `logs` set `time`='$time', 
					`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> создал раздел загруз-центра'");
					$db->query("insert into `cat` set `name`='".protect($_POST['name1'])."'");
				}
				elseif(!empty($_POST['name2'])){
					$db->query("insert into `logs` set `time`='$time', 
					`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> создал подраздел загруз-центра'");
					$db->query("insert into `podcat` set `name`='".protect($_POST['name2'])."', `cat`='".intval($_POST['cat'])."'");
				}
				echo'<div class="menu">Создали &rarr; <a href="/admin">Далее</a></div>';
			}else{
				$total=$db->query("select `id` from `cat`")->rowCount();;
				echo'<form action="#" method="post">
				<div class="menu">
				<b>Создать раздел:</b><br />
				Название:<input type="text" name="name1"><input type="submit" value="Создать"><br /><br />
				<b>Создать подраздел:</b><br />';
				if($total){
					echo'Название:<br /><input type="text" name="name2"><br />
					Каталог:<br /><select name="cat">';
					$sql=$db->query("select * from `cat` order by `id`");
					while($res=$sql->fetch(PDO::FETCH_ASSOC))echo'<option value="'.$res['id'].'">'.$res['name'].'</option>';
					echo'</select><input type="submit" value="Создать">';
				}else{echo' Нельзя создать раздел';}
				echo'</form></div>';
				if($total){
					$sql=$db->query("select * from `cat` order by `id`");
					while($res=$sql->fetch(PDO::FETCH_ASSOC)){
						$total2=$db->query("select * from `podcat` where `cat`='$res[id]'")->rowCount();;
						echo '<div class="menu"><b>'.$res['name'].'</b> <a href="/moduls/delete.php?act=3&id='.$res['id'].'" style="float:right;">Удалить</a></div>';
						if($total2){
							$sql2=$db->query("select * from `podcat` where `cat`='$res[id]'");
							while($res2=$sql2->fetch(PDO::FETCH_ASSOC)){
								echo '<div class="citatka">'.$res2['name'].' <a href="/moduls/delete.php?act=4&id='.$res2['id'].'" style="float:right;padding:6px;">Удалить</a></div>';
							}
						}else{echo'<span style="margin:5px;">Подразделы еще не созданы</span>';}
					}
				}else{echo'<div class="menu">Разделы еще не созданы</div>';}
			}
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		back('/admin');
		break;
		
		case 'link':
		if($user['level']==6){
			if(isset($_POST['link']) and !empty($_POST['link'])){
				$link = protect($_POST['link']);
				$pozic = protect($_POST['pozic']);
				$name = protect($_POST['name']);
				$day=protect(intval($_POST['day'])); $day2=time()+(86400*$day);
				$db->query("insert into `logs` set `time`='$time', 
				`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> добавил рекламную ссылку'");
				$db->query("insert into `ads` set `link`='$link', `pozic`='$pozic', `time`='$time', `name`='$name', `srok`='$day2'");
				echo '<div class="menu">Ссылка добавлена &rarr; <a href="/admin">Далее</a></div>';
			}else{
				echo '<div class="menu"><form action="#" method="post">
				Ссылка:<br/><textarea type="text" name="link"  rows="1" cols="20"></textarea><br />
				Название:<br/><textarea type="text" name="name"  rows="1" cols="20"></textarea><br />
				Количество дней:<br /><textarea type="text" name="day"  rows="1" cols="20"></textarea><br />
				Позиция :<br/>
				<select name="pozic">
				<option value="Верх">Верх</option>
				<option value="Низ">Низ</option>
				</select>
				<input type="submit" value="Добавить"/>
				</form></div>';
				$total=$db->query("select * from `ads`")->rowCount();;
				if($total){
					$sql=$db->query("select * from `ads` order by `id`");
					while($res=$sql->fetch(PDO::FETCH_ASSOC)){
						echo'<div class="menu"><b>'.$res['name'].' ('.$res['link'].')</b> <a href="/moduls/delete.php?act=2&id='.$res['id'].'" style="float:right;">Удалить</a><br />
						Добавлена: '.clock($res['time']).'<br />
						Истекает: '.clock($res['srok']).'<br />
						Переходов: '.$res['oute'].'<br /></div>';
					}
				}else{echo'<div class="menu">Ссылок еще нет</div>';}
			}
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		back('/admin');
		break;
		
		case 'setup':
		if($user['level']>4){
			$set = $db->query("SELECT * FROM `setting`")->fetch(PDO::FETCH_ASSOC);
			if (!empty($_POST['head'])){
				if(!empty($_POST['head']))$head=protect($_POST['head']);else $head=0;
				if(!empty($_POST['copy']))$copy=protect($_POST['copy']);else $copy=0;
				if(!empty($_POST['rega']))$rega=protect(intval($_POST['rega']));else $rega=0;
				if(!empty($_POST['design']))$design=protect($_POST['design']);else $design=0;
				if(!empty($_POST['flood']))$flood=protect(intval($_POST['flood']));else $flood=0;
				if(!empty($_POST['min']))$min=protect(intval($_POST['min']));else $min=0;
				if(!empty($_POST['online']))$onln=protect(intval($_POST['online']));else $onln=0;
				$db->query("insert into `logs` set `time`='$time', 
				`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> обновил настройки сайта'");
				$db->prepare("UPDATE `setting` SET `copy`='$copy', `head`='$head', `rega`='$rega', `design`='$design',`flood`='$flood',`min_simb`='$min', `time_online`='$onln'")->execute();
				echo '<div class="menu">Настройки сохранены &rarr; <a href="/admin">Далее</a></div>';
			}
			echo '<div class="menu"><form action="#" method="post" name="form">
			<B>Верх страниц(Макс.50 символов):</b><br><input name="head" value="'.$set['head'].'" type="text" size="30"><br/ >
			<B>Низ страниц(Макс.50 символов):</b><br><input name="copy" value="'.$set['copy'].'" type="text" size="30"><br/ >
			<b>Время антифлуда (в сек.):</b><br /><input type="text" name="flood" value="'.$set['flood'].'" size="3"><br />
			<b>Время в течение которого юзер онлайн (в сек.):</b><br /><input type="text" name="online" value="'.$set['time_online'].'" size="4"><br />
			<b>Мин. длина текста:</b><br /><input type="text" name="min" value="'.$set['min_simb'].'" size="3"><br />
			<b>Регистрация:</b><br/><select name="rega">
			<option value="1">Открыта</option>
			<option value="2">Закрыта</option>
			</select><br />
			Дизайн:<br/><select name="design">';
			$sef = $db->query("select * from `design` order by `id`");
			while($ff=$sef->fetch(PDO::FETCH_ASSOC))echo '<option value="'.$ff['link'].'">'.$ff['name'].'</option>';
			echo '</select><br />
			<input name="submit" type="submit" value="Сохранить"></div>';
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		back('/admin');
		break;
		
		case 'cms':
		echo file_get_contents('http://x-cms.ga/for_cms.php?limit=50');
		back('/admin');
		break;
		
		case 'obmen':
		if($user['level']==3 or $user['level']>4){
			if(!empty($_POST['name'])){
				$name=protect($_POST['name']);
				if(!empty($_POST['desc']))$desc=protect($_POST['desc']);else $desc=0;
				$db->query("insert into `obmen_cat` set `name`='$name', `desc`='$desc'");
				$db->query("insert into `logs` set `time`='$time', 
				`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> создал раздел обменника'");
				echo '<div class="menu">Каталог создан -> <a href="/admin?act=obmen">Далее</a></div>';
			}else{
				echo'<form action="#" method="post"><div class="menu">
				Название: <input type="text" name="name"><br />
				Описание:<br /><textarea name="desc" placeholder="Не обязательно"></textarea><br />
				<input type="submit" value="Создать">
				</div></form>';
			}
			$total=$db->query("select `id` from `obmen_cat`")->rowCount();
			if($total){
				$sql=$db->query("select * from `obmen_cat` order by `id` asc");
				while($res=$sql->fetch(PDO::FETCH_ASSOC)){
					echo'<div class="menu">'.$res['name'].' '.right('Удалить');
					if($res['desc'])echo'<br />'.$res['desc'];
					echo'</div>';
				}
			}else{echo'<div class="menu">Категории не созданы</div>';}
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		break;
		
		case 'logs':
		if($user['level']==6){
			$k_post=$db->query("select `id` from `logs`")->rowCount();
			$k_page=k_page($k_post,$set['p_str']);$page=page($k_page);$start=$set['p_str']*$page-$set['p_str'];
			$query = $db->query("select * from `logs` ORDER BY `id` DESC LIMIT $start, $set[p_str]");
			if($k_post>0){
				while($row=$query->fetch(PDO::FETCH_ASSOC)){
					echo'<div class="menu">'.$row['text'].'<br />'.clock($row['time']).'</div>';
				}
				if ($k_page>1)str('/admin?act=logs&',$k_page,$page); // Вывод страниц
			}else{echo'<div class="menu">Логи пусты</div>';}
			back('/admin');
		}else{echo'<div class="menu">У вас недостаточно прав для просмотра этой страницы</div>';}
		break;
		
		case 'chat':
		if($user['level']==1 or $user['level']>4){
			if(!empty($_POST['name'])){
				$name=$db->quote(protect($_POST['name']));
				$db->query("insert into `logs` set `time`='$time', 
				`text`='Пользователь <a href=\"/profile$user[id]\">$user[login]</a> создал комнату в чате <b>$name</b>'");
				$db->query("insert into `chat_room` set `name`=$name");
				echo '<div class="menu">Создали комнату &rarr; <a href="/admin">Далее</a></div>';
			}else{
				echo'<form action="#" method="post">
				<div class="menu">
				Название: <input type="text" name="name"><input type="submit" value="Создать">
				</div></form>';
				$total=$db->query("select `id` from `chat_room`")->rowCount();
				if($total){
					$sql=$db->query("select * from `chat_room` order by `id`");
					while($res=$sql->fetch(PDO::FETCH_ASSOC)){
						echo'<div class="menu">'.$res['name'].' '.right('<a href="/moduls/delete.php?act=14&id='.$res['id'].'">Удалить</a>').'</div>';
					}
				}else{echo'<div class="menu">Комнат еще нет</div>';}
			}
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		back('/admin');
		break;
		
		case 'costs':
		if($user['level']>4){
			if(!empty($_POST['login']) and !empty($_POST['unban']) and !empty($_POST['adv_v']) and !empty($_POST['adv_n'])){
				$login=intval(protect($_POST['login']));
				$unban=intval(protect($_POST['unban']));
				$adv_v=intval(protect($_POST['adv_v']));
				$adv_n=intval(protect($_POST['adv_n']));
				$db->prepare("update `setting` set `cost_login`='$login', `cost_unban`='$unban', `cost_adv_v`='$adv_v', `cost_adv_n`='$adv_n'")->execute();
				echo'<div class="menu">Цены обновлены &rarr; <a href="/admin">Далее</a></div>';
			}else{
				echo'<form action="#" method="post"><div class="menu">
				Смена логина:<br /><input type="text" name="login" value="'.$da['cost_login'].'" size="5"><br />
				Разбан:<br /><input type="text" name="unban" value="'.$da['cost_unban'].'" size="5"><br />
				Реклама(ВЕРХ):<br /><input type="text" name="adv_v" value="'.$da['cost_adv_v'].'" size="5"><br />
				Реклама(НИЗ):<br /><input type="text" name="adv_n" value="'.$da['cost_adv_n'].'" size="5"><br />
				<input type="submit" value="Обновить цены">
				</div></form>';
			}
		}else{echo'<div class="menu">Ошибка доступа</div>';}
		break;
		
		default:
		echo file_get_contents('http://x-cms.ga/for_cms.php?limit=1');
		echo'<div class="touch">
		<div class="menu"><a href="/admin?act=chat">Управление чатом '.right('[LVL 1,5-6]').'</a></div>
		<div class="menu"><a href="/admin?act=forum">Управление форумом '.right('[LVL 2,5-6]').'</a></div>
		<div class="menu"><a href="/admin?act=obmen">Управление обменником '.right('[LVL 3]').'</a></div>
		<div class="menu"><a href="/admin?act=zc">Управление загруз-центром '.right('[LVL 4]').'</a></div>
		<div class="menu"><a href="/admin?act=news">Управление новостями '.right('[LVL 5-6]').'</a></div>
		<div class="menu"><a href="/admin?act=setup">Настройки сайта '.right('[LVL 5-6]').'</a></div>
		<div class="menu"><a href="/admin?act=costs">Настройки цен '.right('[LVL 5-6]').'</a></div>
		<div class="menu"><a href="/admin?act=design">Управление дизайнами '.right('[LVL 5-6]').'</a></div>
		<div class="menu"><a href="/admin?act=user">Управление юзерами '.right('[LVL 6]').'</a></div>
		<div class="menu"><a href="/admin?act=link">Управление рекламой '.right('[LVL 6]').'</a></div>
		<div class="menu"><a href="/admin?act=logs">Логи администрации '.right('[LVL 6]').'</a></div>
		<div class="menu"><a href="/admin?act=cms">Новости CMS '.right('[LVL 1-6]').'</a></div>
		<div class="menu"><a href="/info/stat">Статистика сайта '.right('[LVL 1-6]').'</a></div>
		</div>';
		back('/');
	}
}
if($_COOKIE['style']=='web')require_once '../system/web_foot.php'; else require_once '../system/foot.php';
?>