File size: 4.81Kb
<?php
if (isset($_POST['ok']) && isset($_POST['name'])) {
$name = esc(stripcslashes(htmlspecialchars($_POST['name'])));
if (utf8_strlen($name) < 3) {
$err[] = lang('Слишком короткое название');
}
if (utf8_strlen($name) > 32) {
$err[] = lang('Слишком длинное название');
}
$mat = antimat($name);
if ($mat) {
$err[] = lang('В названии раздела обнаружен мат') . ': ' . $mat;
}
$name = $db->safesql($name);
$icon = stripcslashes(htmlspecialchars($_POST['icon']));
if (isset($_POST['desc']) && $_POST['desc'] != NULL) {
$desc = esc(stripcslashes(htmlspecialchars($_POST['desc'])));
if (utf8_strlen($desc) < 3) {
$err[] = lang('Короткое описание раздела');
}
if (utf8_strlen($desc) > 100) {
$err[] = lang('Слишком длинное описание');
}
$mat = antimat($desc);
if ($mat) {
$err[] = lang('В описании раздела обнаружен мат') . ': ' . $mat;
}
$desc = $db->safesql($desc);
} else {
$desc = NULL;
}
if (!isset($err)) {
$db->query("INSERT INTO `diary_cat` (`name`, `desc`, `icon`) values ('$name', '$desc', '$icon')");
$_SESSION['message'] = lang('Категория успешно создана');
header("Location: /modules/diary/");
exit();
}
}
if (isset($_GET['edit']) && isset($_POST['name'])) {
$q = $db->super_query("SELECT COUNT(*) as count FROM diary_cat WHERE id = '" . intval($_GET['edit']) . "' LIMIT 1");
if ($q['count'] == 1) {
$name = esc(stripcslashes(htmlspecialchars($_POST['name'])));
if (utf8_strlen($name) < 3) {
$err[] = lang('Слишком короткое название');
}
if (utf8_strlen($name) > 32) {
$err[] = lang('Слишком длинное название');
}
$mat = antimat($name);
if ($mat) {
$err[] = lang('В названии раздела обнаружен мат') . ': ' . $mat;
}
$name = $db->safesql($name);
$icon = stripcslashes(htmlspecialchars($_POST['icon']));
if (isset($_POST['desc']) && $_POST['desc'] != NULL) {
$desc = esc(stripcslashes(htmlspecialchars($_POST['desc'])));
if (utf8_strlen($desc) < 3) {
$err[] = lang('Короткое описание раздела');
}
if (utf8_strlen($desc) > 100) {
$err[] = lang('Слишком длинное описание');
}
$mat = antimat($desc);
if ($mat) {
$err[] = lang('В описании раздела обнаружен мат') . ': ' . $mat;
}
$desc = $db->safesql($desc);
} else {
$desc = NULL;
}
if (!isset($err)) {
$db->query("UPDATE `diary_cat` SET `name`='$name', `desc`='$desc', `icon` = '$icon' WHERE `id`='" . intval($_GET['edit']) . "' LIMIT 1");
$_SESSION['message'] = lang('Изменения сохранены');
header("Location: /modules/diary/");
exit();
}
}
}
if (isset($_GET['del'])) {
$q = $db->super_query("SELECT COUNT(*) as count FROM diary_cat WHERE id = '" . intval($_GET['del']) . "' LIMIT 1");
if ($q['count'] == 1) {
$q = $db->query("SELECT * FROM `diary` WHERE `id_cat`='" . intval($_GET['del']) . "'");
while ($delete = $db->get_row($q)) {
$q2 = $db->query("SELECT * FROM `diary_images` WHERE `id_diary`='$delete[id]'");
while ($delet = $db->get_row($q)) {
unlink(H . 'modules/diary/images/48/' . $delet['id'] . '.' . $delet['ras'] . '');
unlink(H . 'modules/diary/images/128/' . $delet['id'] . '.' . $delet['ras'] . '');
unlink(H . 'modules/diary/images/640/' . $delet['id'] . '.' . $delet['ras'] . '');
unlink(H . 'modules/diary/images/' . $delet['id'] . '.' . $delet['ras'] . '');
}
$db->query("DELETE FROM `diary_rating` WHERE `id_diary`='$delete[id]'");
$db->query("DELETE FROM `diary_images` WHERE `id_diary`='$delete[id]'");
$db->query("DELETE FROM `diary_komm` WHERE `id_diary`='$delete[id]'");
$db->query("DELETE FROM `diary` WHERE `id`='$delete[id]'");
}
$db->query("DELETE FROM `diary_cat` WHERE `id`='" . intval($_GET['del']) . "'");
$_SESSION['message'] = lang('Категория успешно удалена');
header("Location: /modules/diary/");
exit();
}
}
err();