Файл: moduls/panelka.php
Строк: 515
<?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&id='.$row['id'].'">Удалить</a>
<a href="?act=users&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&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">Создали → <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">Добавили → <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">Создали → <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">Ссылка добавлена → <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">Настройки сохранены → <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">Создали комнату → <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">Цены обновлены → <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';
?>