<?php
require_once('../classes/body.class.php');
require_once('../classes/db.class.php');
require_once('../classes/system.class.php');
$title= new Body;

$query = DB :: $dbs -> query ("SELECT * FROM `blogger` WHERE (`id`=?)", array ((int) $_GET['id']));
if ($query -> rowCount () == 0) {
header ('location: /');
exit;
}
$a = $query -> fetch ();
$title->SetTitle('Панель управления - Управление пользователем  ' . $a['nick'].'');

///Подключаем шапку
$title->GetHeader();
if ($b['level'] == 0) {
header('location:/');
die();
}
echo '<div class="container-fluid page_header"><div class="container"><div class="row"><div class="col-xs-12 col-sm-8 col-md-9 col-lg-9"><h1>Панель управления </h1><ol class="breadcrumb" xmlns:v="http://'.homeurl.'/#"><li typeof="v:Breadcrumb"><a href="/" rel="v:url" property="v:title">'.homeurl.'</a></li><li typeof="v:Breadcrumb"><a href="/panel" rel="v:url" property="v:title">Дата-центр</a></li><li class="active" typeof="v:Breadcrumb"><span property="v:title">Управление пользователем  ' . $a['nick'].'</span></li></ol></div></div></div></div>';
echo'<div class="container page_body"><div class="row"><div class="col-xs-12 page_content col-lg-9"><div class="navbar page_content_navbar collapse hidden-lg"><div class="container-fluid"><div class="navbar-collapse"></div></div></div><div class="text_box hidden-lg pr_block_small hidden"></div><div class="container-fluid cols_table">';
$i = isset($_GET['i']) ? check($_GET['i']) : false;
switch($i) {
default:
if (isset($_GET['wm'])) {
if ($a['wm'] == 1) {
header('location: /');
}
DB::$dbs->query("UPDATE blogger SET wm = ? WHERE id = ?", [1,$a['id']]);
header('location: ?id='.$a['id']);
}
echo '<div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - Управление ' . $a['nick'].'</div>';
if ($a['activ'] == 1) {
} else {
echo '<div class="row text_box"><i class="md-shuffle"></i> Регистрацию '.($a['activ'] == 0 ? 'подтвердил':'отклонил').' '.Nick($a['activ_who']).'</div>';
}
if ($b['level'] >= 3) {
echo '<ul class="nav nav-pills nav-stacked"><li><a href="?i=status&id=' . $a['id'] . '"><i class="md-shuffle"></i> Повесить статус [Мошенник]</a></ul>';
}
if ($b['level'] >= 3) {
echo '<ul class="nav nav-pills nav-stacked"><li><a href="klon.php?ip=' . $a['ip'] . '"><i class="md-shuffle"></i> Пробить на клонов</a></ul>';
}
if ($b['level'] >= 5 && $a['wm'] == 0) {
echo '<ul class="nav nav-pills nav-stacked"><li><a href="?id=' . $a['id'] . '&wm"><i class="md-shuffle"></i> Подтвердить WMID</a></ul>';
}
if ($b['level'] >= 5) {
echo '<ul class="nav nav-pills nav-stacked"><li><a href="?i=email&id=' . $a['id'] . '"><i class="md-shuffle"></i> Сменить Email</a></ul>';
}
echo '<ul class="nav nav-pills nav-stacked"><li><a href="/info/expired.html?id=' . $a['id'] . '"><i class="md-shuffle"></i> Выдать нарушение</a></ul>';
echo '<ul class="nav nav-pills nav-stacked"><li><a href="ban.php?id=' . $a['id'] . '"><i class="md-shuffle"></i> Выдать банн!</a></ul>';

if ($b['level'] >= 3) {
echo '<ul class="nav nav-pills nav-stacked"><li><a href="?i=nick&id=' . $a['id'] . '"><i class="md-shuffle"></i> Сменить логин</a></ul>';
}
if ($b['level'] >= 4) {
echo '<ul class="nav nav-pills nav-stacked"><li><a href="?i=ank&id=' . $a['id'] . '"><i class="md-shuffle"></i> Анкетные данные</a></ul>';
}
if ($b['level'] >= 5) {
echo '<ul class="nav nav-pills nav-stacked"><li><a href="?i=dolj&id=' . $a['id'] . '"><i class="md-shuffle"></i> Выдача должностей</a></ul>';
echo '<ul class="nav nav-pills nav-stacked"><li><a href="?i=wm&id=' . $a['id'] . '"><i class="md-shuffle"></i> Управление Webmoney</a></ul>';
}
if ($b['level'] >= 3) {
echo '<ul class="nav nav-pills nav-stacked"><li><a href="?i=logs&id=' . $a['id'] . '"><i class="md-shuffle"></i> История авторизаций</a></ul>';
}
echo '<ul class="nav nav-pills nav-stacked"><li><a href="/users/' . $a['id'] . '"><i class="md-apps"></i> Вернуться в анкету ' . $a['nick'].'</a></ul>';
break;
case 'logs':
if ($b['level'] < 3) {
header('location:/');
}
echo '<div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - Логи авторизаций ' . $a['nick'].'</div>';
$look = DB::$dbs->querySingle("SELECT COUNT(id) FROM auth_log WHERE user_id = ?", [$a['id']]);
if ($look == 0) {
err('Пусто!');
}
$num = 10;
$k_page = k_page($look, $num);
$page = page($k_page);
$start = $num*$page-$num;
$sql = DB::$dbs->query("SELECT * FROM auth_log WHERE user_id = ? ORDER BY id DESC LIMIT $start,$num", [$a['id']]);
while($a = $sql->fetch()) {
echo '<div class="row text_box"><i class="md-shuffle"></i> IP: <a href="klon.php?ip='.$a['ip'].'">'.$a['ip'].'</a> ('.vr($a['time']).') '.($a['type'] == 1 ? '[<b><font color="green">Удачно</font></b>]':'[<b><font color="red">Неудачно</font></b>]').'</br>Soft: '.$a['soft'].'<br/></div>';
}
if ($k_page > 1) {
str('?i=logs&id='.$a['id'].'&',$k_page,$page);
}
break;
case 'status':
echo '<div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - Повесить клеймо ' . $a['nick'].'</div>';

echo '<div class="row text_box"><i class="md-shuffle"></i> Пользователь <a href="/users/'.$a['id'].'">  '.Nick($a['id']).'</a></div>
<div class="row text_box"><i class="md-shuffle"></i>';
if ($a['mosh'] != 0) {
$usk = DB :: $dbs -> queryFetch ("SELECT * FROM `blogger` WHERE (`id`='" . $a['mosh'] . "')");
if ($usk['id'] == $b['id'] || $b['level']>$usk['level']) {
if (isset ($_GET['mosh'])) {
DB :: $dbs -> query ("UPDATE `blogger` SET `mosh` = '0' WHERE (`id`='" . $a['id'] . "')");
header ('location: redact.php?i=status&id=' . $a['id']);
}
echo ' <a href="redact.php?i=status&id=' . $a['id'] . '&mosh">Снять статус [Мошенник]</a>';
}
} else {
if ($a['id']!=$b['id'] && $a['level']<$b['level']) {
if (isset ($_GET['mosh'])) {
DB :: $dbs -> query ("UPDATE `blogger` SET `mosh` = '" . $b['id'] . "' WHERE (`id`='" . $a['id'] . "')");
header ('location: redact.php?i=status&id=' . $a['id']);
}
echo '<a href="redact.php?i=status&id=' . $a['id'] . '&mosh">Повесить статус [Мошенник]</a>';
}
}
echo '</div>';
echo '<ul class="nav nav-pills nav-stacked"><li><a href="redact.php?id=' . $a['id'] . '"><i class="md-apps"></i> Вернуться в Админ панель.</a></ul>';
break;
case 'email':
echo '<div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - Сменить пароль ' . $a['nick'].'</div>';
if (isset($_POST['pass'])) {
$newpass = check($_POST['newpass']);
$newpass2 = check($_POST['newpass2']);
if(empty($newpass) || empty($newpass2)) {
err('Все поля обязательны к заполнению!');
} elseif (mb_strlen($newpass) > 15 && mb_strlen($newpass2) > 15) {
err('Не больше 15 символов.');
}
elseif ($newpass != $newpass2){
err('Новый пароль не совпадает с подтвержденным паролем!');
} elseif (!preg_match('/[A-z0-9]/i', $newpass)) {
err('Запрещенные символы в новом пароле.');
} else {
DB::$dbs->query("UPDATE blogger SET pass = ? WHERE id = ? LIMIT 1",[sha1($newpass.'gearnet'),$a['id']]);
setcookie('pass', '');
setcookie('pass', sha1($newpass.'gearnet'), time()+3600*24*365);
echo '<div class="row text_box"> Пароль успешно изменен!</div>';
}
}
echo '<div class="row text_box"> <form action="?i=email&id='.$a['id'].'" method="post">Новый пароль:<br /><input type="text" class="form-control"  name="newpass"/><br />Подтвердите новый пароль:<br /><input type="text" class="form-control"  name="newpass2"/><br /><input type="submit" name="pass" class="btn btn-primary" value="Отправить"/></form></div>';
echo '<div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - Сменить E-mail</div>
<div class="row text_box">';
echo '<form method="post" action="?i=email&id='.$a['id'].'&save">';
echo 'Текущий основной E-mail:<br/><input type="text" class="form-control"  name="email" value="' . $a['email'] . '"></br>';
echo 'Текущий секретный E-mail:<br/><input type="text" class="form-control"  name="email_secret" value="' . $a['email_secret'] . '"></br>';
echo '<input type="submit" class="btn btn-primary" value="Отправить">';
echo '</form></div>';
if (isset($_GET['save'])) {
$email = check($_POST['email']);
$email_secret = check($_POST['email_secret']);
if (empty($email) OR empty($email_secret)) {
err('Поля не должны быть пустыми!');
} else {
DB::$dbs->query("UPDATE `blogger` SET `email` = ?, `email_secret` = ? WHERE (`id`='" . $a[ 'id' ] . "')", [$email,$email_secret]);
if ($email != $a['email']) {
jurnal($a['id'],Nick($b['id']).' сменил ваш основной E-mail на <b>'.$email.'</b>',5);
}
if ($email_secret != $a['email_secret']) {
jurnal($a['id'],Nick($b['id']).' сменил ваш секретный E-mail на <b>'.$email_secret.'</b>',5);
}
echo '<div class="row text_box"> Данные успешно изменены!</div>';
}
}
echo '<ul class="nav nav-pills nav-stacked"><li><a href="redact.php?id=' . $a['id'] . '"><i class="md-apps"></i> Вернуться в Админ панель.</a></ul>';
break;
case 'nick':
echo '<div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - Сменить ник</div><div class="row text_box"> ';
echo '<form method="post" action="?i=nick&id='.$a['id'].'">';
echo 'Ник:<br/><input type="text" class="form-control" name="nick" value="' . $a['nick'] . '"><br/><input type="submit" name="save" class="btn btn-primary" value="Сохранить"></form>';
if (isset($_POST['save'])) {
$nick = check($_POST['nick']);
if (empty($nick)) {
err('Поле не должно быть пустым!');
} else {
DB::$dbs->query("INSERT INTO `nicks` SET `old` = ?, `new` = ?, `kem` = ?, `us` = ?, `time` = ?", [$a['nick'],$nick,$b['id'],$a['id'],time()]);
lenta(Nick($b['id']).' сменил ник мастеру '.Nick($a['id']).' на [b]'.$nick.'[/b]');
DB::$dbs->query("UPDATE `blogger` SET `nick` = ? WHERE `id` = ?", [$nick,$a['id']]);
echo '<div class="access">Данные успешно изменены!</div>';
}
}
echo '</div>';
echo '<ul class="nav nav-pills nav-stacked"><li><a href="redact.php?id=' . $a['id'] . '"><i class="md-apps"></i> Вернуться в Админ панель.</a></ul>';
break;
case 'dolj':
echo '<div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - Выдача должностей</div>';
$status = [0=>'<font color=red><b>Новичок</b></font> ', 1=>'<font color=green><b>Постоялец</b></font>', 2=>'<font color=Gold><b>Старожил</b></font>', 3=>'<font color=#FF8C00><b>PRO</b></font>', 4=>'<font color=Khaki><b>MASTER</b></font>', 5=>'<font color=red><b>Знаток</b></font> '];
$l = [0=>'Пользователь',1=>'Модератор',2=>'Старший модератор', 3=>'Администратор', 4=>'Главный Администратор', 5=>'Разработчик'];
if (isset($_GET['save'])) echo '<div class="row text_box"> Данные успешно обновлены.</div>';
if (isset($_POST['save'])) {
$form = ['level' => isset($_POST['level']) ? abs((int)$_POST['level']) : null, 'jur' => isset($_POST['jur']) ? abs((int)$_POST['jur']) : null, 'row' => isset($_POST['row']) ? abs((int)$_POST['row']) : null];
if ($form['level'] != $a['level']) {
$mess = Nick($b['id']).' присвоил вам уровень [red][b]'.strtr($form['level'], $l).'[/b][/red]';
$mess_lenta = Nick($b['id']).' присвоил '.Nick($a['id']).' уровень [red][b]'.strtr($form['level'], $l).'[/b][/red]';
jurnal($a['id'],$mess,5);
lenta($mess_lenta);
}
DB::$dbs->query("UPDATE blogger SET level = ?, jur = ?, row = ? WHERE id = ? LIMIT 1", [$form['level'],$form['jur'],$form['row'],$a['id']]);
header('location: ?i=dolj&id='.$a['id'].'&save');
die();
}
echo '<div class="row text_box"><form action="?i=dolj&id='.$a['id'].'" method="POST">';
if ($a['level']<=$b['level']) {
echo 'Выберите должность:<br/><select name="level"class="form-control" >';
$lv = [0=>'Пользователь',1=>'Модератор', 2=>'Старший модератор', 3=>'Администратор', 4=>'Главный Администратор', 5=>'Разработчик'];
$str = strtr($a['level'],$lv);
echo '<option value="'.$a['level'].'">'.$str.'</option>';
for($i = 0;$i <= ($b['level']-1);$i++) {
echo '<option value="'.$i.'">'. strtr($i,$lv) .'</option>';
}
echo '</select>';
$checked = ($a['jur'] != 0) ? ' checked="checked"' : '';
echo '<input type="checkbox" name="jur" value="1"'.$checked.'/> Журналист газеты<br/>';
echo '<select name="row"class="form-control">';
foreach($status as $st => $k) {
$selected = ($a['row'] == $st) ? 'selected="selected"' : NULL;
echo '<option '.$selected.' value="'.$st.'">'.$k.'</option>';
}
echo '</select><br/><input type="submit" name="save" class="btn btn-primary" value="Отправить"/></form></div>';
}
break;
case 'ank':
if ($b['level'] < 4 && $b['level'] < $a['level']){
header('location: /');
}
echo '<div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - Анкетные данные '.$a['nick'].'</div>';
if (isset($_GET['save'])) echo '<div class="row text_box"> Данные успешно обновлены.</div>';
if (isset($_POST['save'])) {
$form = ['name' => isset($_POST['name']) ? check($_POST['name']) : null, 'country' => isset($_POST['country']) ? check($_POST['country']) : null, 'city' => isset($_POST['city']) ? check($_POST['city']) : null, 'birthday' => isset($_POST['birthday']) ? check($_POST['birthday']) : null, 'about' => isset($_POST['about']) ? check($_POST['about']) : null, 'family' => isset($_POST['family']) ? check($_POST['family']) : null, 'icq' => isset($_POST['icq']) ? abs((int)$_POST['icq']) : null, 'mobtel' => isset($_POST['mobtel']) ? abs((int)$_POST['mobtel']) : null, 'skype' => isset($_POST['skype']) ? check($_POST['skype']) : null, 'spec' => isset($_POST['spec']) ? abs((int)$_POST['spec']) : null, 'nickcolor1' => isset($_POST['nickcolor1']) ? check($_POST['nickcolor1']) : null, 'nickcolor2' => isset($_POST['nickcolor2']) ? check($_POST['nickcolor2']) : null];
if (mb_strlen($form['name']) > 15 && mb_strlen($form['family']) > 15) {
err('Имя и фамилия: не больше 15 символов.');
} elseif (!empty($form['name']) && !preg_match('/[A-zА-я-]/i', $form['name'])) {
err('Запрещенные символы в имени.');
} elseif (!empty($form['family']) && !preg_match('/[A-zА-я-]/i', $form['family'])) {
err('Запрещенные символы в фамилии.');
} else if (!empty($form['city']) && !preg_match('/[A-zА-я-]/i', $form['city'])) {
err('Запрещенные символы в поле город.');
} elseif (!empty($form['birthday']) && !preg_match('/[0-9.]/i', $form['birthday'])) {
err('Запрещенные символы в поле дата рождения.');
} elseif (!empty($form['icq']) && !preg_match('/[0-9]/i', $form['icq'])) {
err('Запрещенные символы в поле ICQ.');
} elseif (!empty($form['mobtel']) && !preg_match('/[0-9+]/i', $form['mobtel'])) {
err('Запрещенные символы в поле мобильный телефон.');
} else {
$form['nickcolor1'] = str_replace('#', '', $form['nickcolor1']);
$form['nickcolor2'] = str_replace('#', '', $form['nickcolor2']);

DB::$dbs->query("UPDATE blogger SET name = ?, birthday = ?, country = ?, city = ?,
about = ?, family = ?, icq = ?, skype = ?, mobtel = ?, spec = ?, nickcolor1 = ?, nickcolor2 = ? WHERE id = ?", [$form['name'],$form['birthday'],$form['country'],$form['city'],$form['about'],$form['family'],$form['icq'],$form['skype'],$form['mobtel'],$form['spec'],$form['nickcolor1'],$form['nickcolor2'],$a['id']]);
header('location: ?i=ank&id='.$a['id'].'&save');
die();
}
}
echo '<div class="row text_box"><form action="?i=ank&id='.$a['id'].'" method="POST">Имя:<br/><input type="text" class="form-control" name="name" value="'.$a['name'].'"/><br/>Фамилия:<br/><input type="text" class="form-control" name="family" value="'.$a['family'].'"/><br/>Дата рождения (прим. 01.01.1970):<br/><input type="text" class="form-control" name="birthday" value="'.$a['birthday'].'"/><br/>Страна:<br/><input type="text" class="form-control" name="country" value="'.$a['country'].'"/><br/>Город:<br/><input type="text" class="form-control" name="city" value="'.$a['city'].'"/><br/>О себе:<br/><input type="text" class="form-control"name="about" value="'.$a['about'].'"/><br/>';
echo 'Выберите специальность:<br/><select name="spec" class="form-control" >';
$sp = [0=>'Ничего не умею', 1=>'Кодер', 2=>'Дизайнер', 3=>'Хостер', 4=>'Селлер'];
foreach($sp as $value => $key) {
$selected = ($a['spec'] == $value) ? 'selected="selected"': NULL;
echo '<option '.$selected.' value="'.$value.'">'.$key.'</option>';
}
echo '</select></div><div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - Контакты</div><div class="row text_box">ICQ:<br/><input type="text" name="icq" class="form-control" value="'.$a['icq'].'"/><br/>Skype:<br/><input type="text" class="form-control" name="skype" value="'.$a['skype'].'"/><br/>Моб. телефон:<br/><input type="text" class="form-control" name="mobtel" value="'.$a['mobtel'].'"/></div><div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - Градиент ника</div><div class="row text_box">Начальный цвет:<br/><input type="text" class="form-control" name="nickcolor1" value="'.$a['nickcolor1'].'"/><br/>Конечный цвет:<br/><input type="text" class="form-control"name="nickcolor2" value="'.$a['nickcolor2'].'"/><br/><input type="submit" class="btn btn-primary" name="save" value="Отправить"/></form></div>';
echo '<ul class="nav nav-pills nav-stacked"><li><a href="redact.php?id=' . $a['id'] . '"><i class="md-apps"></i> Вернуться в Админ панель.</a></ul>';
break;

case 'wm':
if ($b['level'] < 4 && $b['level'] < $a['level']){
header('location: /');
}
echo '<div class="catSides"><a href="/panel"><i class="md-format-list-bulleted"></i> Админка</a> - WMID '.$a['nick'].'</div>';
if (isset($_GET['save'])) echo '<div class="row text_box"> Данные успешно обновлены.</div>';
if (isset($_POST['save'])) {

DB::$dbs->query("UPDATE blogger SET wmid = ?, wmr = ?, rur = ? WHERE id = ?", [$_POST['wmid'],$_POST['wmr'],$_POST['rur'],$a['id']]);
header('location: ?i=wm&id='.$a['id'].'&save');
die();

}
echo '<div class="row text_box"> <form action="?i=wm&id='.$a['id'].'" method="POST">
WMID:<br/><input type="text" class="form-control" name="wmid" value="'.$a['wmid'].'"/><br/>
WMR:<br/><input type="text" class="form-control" name="wmr" value="'.$a['wmr'].'"/><br/>
Баланс :<br/><input type="text" class="form-control" name="rur" value="'.round($a['rur']).'"/><br/>
<input type="submit" name="save" class="btn btn-primary" value="Изменить"/></form></div>';
echo '<ul class="nav nav-pills nav-stacked"><li><a href="redact.php?id=' . $a['id'] . '"><i class="md-apps"></i> Вернуться в Админ панель.</a></ul>';
break;

}

///Подключаем меню
$title->GetMenu();


///Подключаем футер
$title->GetFooter();
?>
