Файл: soc-set/panel/user.php
Строк: 123
<?php
require_once('../core/start.php');
check_auth();
head('Управление пользователями');
echo DIV_TITLE . 'Управление пользователем' . CLOSE_DIV;
$id = num($_GET['id']);
$page = DB::$dbs->queryFetch("SELECT * FROM ".USERS." WHERE `user_id` = ?",array($id));
if (empty($page)) {
$err .= 'Пользователь не найден<br />';
}
if ($err) {
echo DIV_ERROR . $err . CLOSE_DIV;
} else {
switch ($select) {
default:
break;
case 'edit':
if (privilegy('anceta_update', $id)) {
if ($_POST) {
$surname = html($_POST['surname']);
$name = html($_POST['name']);
$gender = num($_POST['gender']);
$age = num($_POST['age']);
$level = num($_POST['level']);
if (empty($surname) || empty($name)) {
$err .= 'Заполните все поля<br />';
}
if (strlen($surname) < 2) {
$err .= 'Слишком короткая фамилия. [Min. 2 символа]<br />';
}
if (strlen($name) < 2) {
$err .= 'Слишком короткое имя. [Min. 2 символа]<br />';
}
if ($age > 75 || 10 > $age) {
$err .= 'Не верный возраст<br />';
}
if ($err) {
echo DIV_ERROR . $err . CLOSE_DIV;
} else {
DB::$dbs->query("UPDATE ".USERS." SET `surname` = ?, `name` = ?, `gender` = ?, `age` = ?, `level` = ? WHERE `user_id` = ?",array($surname, $name, $gender, $age, $level, $page['user_id']));
echo DIV_MSG . 'Данные успешно обновлены' . CLOSE_DIV;
}
}
echo DIV_BLOCK;
echo '<form action="#" method="POST">';
echo 'Фамилия:<br /><input type="text" name="surname" value="'.$page['surname'].'" /><br /><br />';
echo 'Имя:<br /><input type="text" name="name" value="'.$page['name'].'" /><br /><br />';
echo 'Пол:<br /><input type="radio" name="gender" value="0" '.($page['gender'] == 0 ? 'checked="checked"' : NULL).' /> Женский<br /><input type="radio" name="gender" value="1" '.($page['gender'] == 1 ? 'checked="checked"' : NULL).' /> Мужской<br /><br />';
echo 'Возраст:<br /><select name="age">';
$i = 10;
while ($i <= 75) {
echo ' <option value="'.$i.'" '.($i == $page['age'] ? 'selected="selected"' : NULL).' ">'.$i.'</option>';
++$i;
}
echo '</select><br /><br />';
echo 'Уровень:<br /><select name="level">';
echo '<option value="0" '.((0 || NULL) == $page['level'] ? 'selected="selected"' : NULL).' ">Стажер</option>';
$sql = DB::$dbs->query("SELECT * FROM ".POSITIONS."");
while($pos = $sql -> fetch()) {
echo '<option value="'.$pos['id'].'" '.($pos['id'] == $page['level'] ? 'selected="selected"' : NULL).' ">'.$pos['position'].'</option>';
}
echo '</select><br /><br />';
echo '<input type="submit" value="Сохранить" />';
echo '</form><br /><br />';
echo CLOSE_DIV;
} else {
echo DIV_BLOCK . 'Ошибка доступа' . CLOSE_DIV;
}
echo DIV_GO . '<a href="'.HOME.'/">Главная</a> / <a href="'.HOME.'/panel">Панель управления</a> / <b>Редактирование анкеты</b>' . CLOSE_DIV;
break;
case 'delete':
if (privilegy('anceta_delete', $id)) {
if (empty($_GET['go'])) {
echo DIV_BLOCK . 'Вы уверены что хотите удалить <b>'.$page['name'].'</b>?' . CLOSE_DIV;
echo DIV_LI . '<a href="'.HOME.'/panel/user/delete/'.$page['user_id'].'?go=yes">Да</a> | <a href="'.HOME.'/panel/user/edit/'.$page['user_id'].'">Нет</a>' . CLOSE_DIV;
} else {
DB::$dbs->query("DELETE FROM ".USERS." WHERE `user_id` = ?",array($page['user_id']));
echo DIV_MSG . 'Пользователь успешно удален' . CLOSE_DIV;
}
} else {
echo DIV_BLOCK . 'Ошибка доступа' . CLOSE_DIV;
}
echo DIV_GO . '<a href="'.HOME.'/">Главная</a> / <a href="'.HOME.'/panel">Панель управления</a> / <b>Удаление пользователя</b>' . CLOSE_DIV;
break;
case 'bann':
if (privilegy('anceta_bann', $id)) {
if ($_POST) {
$arr = array(0 => 0, 1 => 300, 2 => 600, 3 => 900, 4 => 1800, 5 => 3600, 6 => 7200, 7 => 21600, 8 => 43200, 9 => 86400, 10 => 259200, 11 => 604800,
12 => 864000, 13 => 1209600, 14 => 2592000, 15 => 7776000, 16 => 15552000);
$bann_time = num($_POST['bann_time']);
$prich = html($_POST['prich']);
$uip = num($_POST['uip']);
$time = time() + $arr[$bann_time];
if (empty($prich)) {
$err .= 'Укажите причину';
}
if ($err) {
echo DIV_ERROR . $err . CLOSE_DIV;
} else {
DB::$dbs->query("INSERT INTO ".BANN." (`user_id`, `moder`, `time_bann`, `prich`, `time`) VALUES (?, ?, ?, ?, ?)", array($page['user_id'], $user['user_id'], $time, $prich, time()));
if ($uip == TRUE) {
DB::$dbs->query("INSERT INTO ".BLACKLIST." (`ua`, `ip`) VALUES (?, ?)", array($page['browser'], $page['ip']));
}
echo DIV_MSG . 'Пользователь успешно забанен' . CLOSE_DIV;
}
}
echo DIV_BLOCK;
echo '<form action="#" method="POST">
<b>Заблокировать доступ к сайту, на:</b><br /><select name="bann_time">
<option value="0"">На всегда</option>
<option value="1">5 мин.</option>
<option value="2">10 мин.</option>
<option value="3">15 мин.</option>
<option value="4">30 мин.</option>
<option value="5">1 ч.</option>
<option value="6">2 ч.</option>
<option value="7">6 ч.</option>
<option value="8">12 ч.</option>
<option value="9">1 ст.</option>
<option value="10">3 ст.</option>
<option value="11">1 нед.</option>
<option value="12">10 ст.</option>
<option value="13">2 нед.</option>
<option value="14">1 мес.</option>
<option value="15">2 мес.</option>
<option value="15">6 мес.</option>
<option value="16">1 год.</option>
</select><br /><br />';
echo 'Добавить User Agent и IP в черный список: <input type="checkbox" name="uip" value="1" /><br /><br />';
echo 'Причина:<br /><input type="text" name="prich" /><br /><br />';
echo '<input type="submit" value="Забаннить" />';
echo '</form>';
echo CLOSE_DIV;
} else {
echo DIV_BLOCK . 'Ошибка доступа' . CLOSE_DIV;
}
echo DIV_GO . '<a href="'.HOME.'/">Главная</a> / <a href="'.HOME.'/panel">Панель управления</a> / <b>Банн пользователя</b>' . CLOSE_DIV;
break;
}
}
require_once('../core/stop.php');
?>