<?php
require_once('../classes/body.class.php');
require_once('../classes/db.class.php');
require_once('../classes/system.class.php');
$title= new Body;
$title->SetTitle('Дата-центр - Управление смайлами');
$title->GetHeader();
$id = isset($_GET['id']) ? abs((int)$_GET['id']) : false;
echo '<div class="tile"><div class="t-header th-alt bg-teal"><div class="th-title"><i class="zmdi zmdi-widgets"></i><a href="/"style="text-decoration:none; color:white;"> Главная</a> :: <a href="/administration/"style="text-decoration:none; color:white;"> Дата-центр</a> :: Смайлики</div></div></div>';
if ($b['level'] < 3) {
header('location: /');
die();
}
if (isset($_POST['add'])) {
$fname = $_FILES['file']['name'];
$name = check($_POST['name']);
$cid = abs((int)$_POST['cid']);
$ext_file = ['.gif', '.png','.jpg','.jpeg'];
$ext = strtolower(strrchr($_FILES['file']['name'], '.'));
if (empty($name)) {
err('Ошибка ! Не введено название!');
} elseif (preg_match('/(\.php|\.pl|\.htaccess)/i', $fname) || !in_array($ext, $ext_file)) {
err('Запрещенный формат файла!');
} elseif ($_FILES['file']['size']> 1024 * 2 * 1024) {
err('Ошибка! Максимальный размер 2 mb.');
} elseif (empty($cid)) {
err('Выберите категорию!');
} else {
$file = 'smile_'.rand(10000,99999).$ext;
copy($_FILES['file']['tmp_name'], $_SERVER['DOCUMENT_ROOT'].'/assets/smiles/'.$file);
DB::$dbs->query("INSERT INTO smiles SET name = ?, file = ?, cid = ?", [$name,$file,$cid]);
$last = DB::$dbs->lastInsertId();
echo '<div class="alert alert-success" role="alert">Новый смайл добавлен!</div>';
}
}
echo '<div class="list-group-item media"><form method="POST" action="?" enctype="multipart/form-data">Название: <br/>
<input type="text" class="form-control m-b-10" name="name">
Смайл:<br/><input type="file" class="form-control m-b-10" name="file"/>';
$kat_row = DB::$dbs->query("SELECT * FROM smiles_r");
echo 'Категория:<select name="cid" class="form-control m-b-10">';
echo '<option value="">Выберите категорию</option>';
while($a = $kat_row->fetch()) {
echo '<option value="'.$a['id'].'">'.$a['name'].'</option>';
}
echo '</select><input type="submit" name="add"class="btn btn-primary" value="Добавить"></div></form>';
echo '<div class="tile"><div class="t-header th-alt bg-teal"><div class="th-title"><i class="zmdi zmdi-widgets"></i> Добавление категорий</div></div></div>';
if ($b['level']>2) {
if (isset($_POST['nadd'])) {
if (empty($_POST['name'])) {
err('Введите название!');
} else {
DB::$dbs->query("INSERT INTO smiles_r SET name = ?", [check($_POST['name'])]);
header('location: ?');
}
}
echo '<div class="list-group-item media"><form action="?" method="POST">Новая категория:<br/> <input type="text" class="form-control" name="name"/> <input type="submit" class="btn btn-primary" name="nadd" value="Добавить"/></form></div>';
}
// Переимен
if (isset($_GET['red'])) {
if ($b['level'] < 3) {
header('location: ?');
die();
}
$id = isset($_GET['red']) ? abs((int)$_GET['red']) : false;
if (empty($id)) {
header('location: /');
die();
}
$inf = DB::$dbs->queryFetch("SELECT name FROM `smiles_r` WHERE `id` = ? LIMIT 1", [$id]);
if (isset($_POST['save'])) {
$err = [];
$name = check($_POST['name']);
if (empty($name)) {
$err[] = 'Заполните название категории!';
}
if (empty($err)) {
DB::$dbs->query("UPDATE smiles_r SET name = ? WHERE `id` = ? LIMIT 1", [$name,$id]);
echo '<div class="access">Успешно сохранено!</div>';
} else {
echo '<div class="error">';
foreach($err as $error) {
echo $error.'<br/>';
}
echo '</div>';
}
}
echo '<form method="post" action="?red='.$id.'"><div class="title">Название:<br/><input type="text" name="name" value="'.$inf['name'].'"/><br/>
<input type="submit" name="save" value="Сохранить"/></div></form>';
}
// Удаление кат
if (isset($_GET['del'])) {
if ($b['level'] < 3) {
header('location: ?');
die();
}
DB::$dbs->query("DELETE FROM smiles_r WHERE id = ?", [abs((int)$_GET['del'])]);
header('location: ?');
die();
}
echo '<div class="tile"><div class="t-header th-alt bg-teal"><div class="th-title"><i class="zmdi zmdi-widgets"></i> Список категорий</div></div></div>';
$looks = DB::$dbs->querySingle("SELECT COUNT(id) FROM smiles_r");
if ($looks ==0) {
err('Категорий нет!');
} else {
$array = DB::$dbs->query("SELECT * FROM smiles_r ORDER BY id ASC");
while($a = $array->fetch()) {
$D = ($b['level'] > 2 ? '<a href="?del='.$a['id'].'">[Удл]</a> <a href="?red='.$a['id'].'">[Изм]</a>':NULL);
$_new = DB::$dbs->querySingle("SELECT COUNT(id) FROM smiles WHERE cid = ? AND time > ?", [$a['id'],time()-86400]);
echo '<div class="list-group-item media"><a href="/smile.php?id='.$a['id'].'"><i class="zmdi zmdi-shuffle"></i> '.$a['name'].' <span class= "count">('.DB::$dbs->querySingle("SELECT COUNT(id) FROM smiles WHERE cid = ?", [$a['id']]).(!empty($_new) ? '<font color="red">+'.$_new.'</font>':NULL).')</span></a> '.$D.'</div>';
}
}
$title->GetMenu();
$title->GetFooter();
?>