2025-06-16 18:28:08 +05:00

259 lines
9.4 KiB
PHP
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
ini_set( 'display_errors', 1 );
if ($_SESSION['dostup'] !== 'a' && $_SESSION['dostup'] !== 'e') header('Location: /login/');
switch(@$_POST['act']) {
case 'newopros':
echo \DBmysql::add("INSERT INTO `oproslist` (`txt`) VALUES (?)", $_POST['txt']);
//echo "Перемещено в <a href='/contenteditor/" . $_POST['to'] . "'>категорию</a>";
break;
case 'newvopros':
echo \DBmysql::add("INSERT INTO `opros` (`txt`, `oproslist`) VALUES (?, ?)", [$_POST['txt'],$_POST['id']]);
//echo "Перемещено в <a href='/contenteditor/" . $_POST['to'] . "'>категорию</a>";
break;
case 'changeSort':
\DBmysql::set("UPDATE `content` SET `sort`=? WHERE `id`=? LIMIT 1", [$_POST['sort'], $_POST['id']]);
//echo "Перемещено в <a href='/contenteditor/" . $_POST['to'] . "'>категорию</a>";
break;
/* ----------------------------------------------------------------------
13.03.2025
Перемещение страницы
---------------------------------------------------------------------- */
case 'delPage':
\DBmysql::set("DELETE FROM `opros` WHERE `id`=? LIMIT 1", $_POST['id']);
//echo "Перемещено в <a href='/contenteditor/" . $_POST['to'] . "'>категорию</a>";
break;
/* ----------------------------------------------------------------------
13.03.2025
Перемещение страницы
---------------------------------------------------------------------- */
case 'changeStatus':
\DBmysql::set("UPDATE `oproslist` SET `status`=? WHERE `id`=? LIMIT 1", [$_POST['status'], $_POST['id']]);
//echo "Перемещено в <a href='/contenteditor/" . $_POST['to'] . "'>категорию</a>";
break;
case 'tonews':
\DBmysql::set("UPDATE `content` SET `tonews`=? WHERE `id`=? LIMIT 1", [$_POST['status'], $_POST['id']]);
//echo "Перемещено в <a href='/contenteditor/" . $_POST['to'] . "'>категорию</a>";
break;
/* ----------------------------------------------------------------------
13.03.2025
Перемещение страницы
---------------------------------------------------------------------- */
case 'changeCat':
\DBmysql::set("UPDATE `content` SET `category`=? WHERE `id`=? LIMIT 1", [$_POST['to'], $_POST['id']]);
echo "Перемещено в <a href='/contenteditor/" . $_POST['to'] . "'>категорию</a>";
break;
/* ----------------------------------------------------------------------
13.03.2025
Удаление файла
---------------------------------------------------------------------- */
case 'delFile':
\DBmysql::set("DELETE FROM `content` WHERE `id`=? LIMIT 1", $_POST['id']);
echo "Файл удален";
break;
/* ----------------------------------------------------------------------
13.03.2025
Сохраняем описание файла
---------------------------------------------------------------------- */
case 'changeNameFile':
\DBmysql::set("UPDATE `content` SET `json`=? WHERE `id`=? LIMIT 1", [$_POST['txt'], $_POST['id']]);
echo "Изменен псевдоним файла";
break;
/* ----------------------------------------------------------------------
13.03.2025
Загружаем вложение
---------------------------------------------------------------------- */
case 'uploadFile':
@mkdir("files/" . $_SERVER['SERVER_NAME'], 0700);
@mkdir("files/" . $_SERVER['SERVER_NAME'] . '/' . $_POST['id'], 0700);
copy($_FILES['file']['tmp_name'], "files/" . $_SERVER['SERVER_NAME'] . '/' . $_POST['id'] . '/' . $_FILES['file']['name']);
\DBmysql::add("INSERT INTO `content` (`title`, `txt`, `status`, `site`, `user_id`, `content_type`, `category`) VALUES (?, ?, ?, ?, ?, ?, ?)",
[$_FILES['file']['name'], "/files/" . $_SERVER['SERVER_NAME'] . '/' . $_POST['id'] . '/' . $_FILES['file']['name'], 1, $_SERVER['SERVER_NAME'], $_SESSION['user_id'], 'file', $_POST['id']]);
echo "Загружен файл " . $_FILES['file']['name'];
break;
/* ----------------------------------------------------------------------
07.10.2022
Сохраняем текст
---------------------------------------------------------------------- */
case 'changeTXT':
\DBmysql::set("UPDATE `content` SET `title`=?, `txt`=? WHERE `id`=?", [$_POST['title'], $_POST['txt'], $_POST['id']]);
//$_POST['txt']=base64_decode($_POST['txt']);
//\DBmysql::set("UPDATE `content` SET `json`=? WHERE `id`=?", [$json, $_POST['id']]);
echo "Обновлена запись " . $_POST['txt'];
break;
/*
12.03.2025
Обновляем ключевые слова
*/
case 'update_keywords':
$json=\DBmysql::getValue("SELECT `json` FROM `content` WHERE `id`=? LIMIT 1", $_POST['id']);
$arr=\core::j($json);
$arr['keywords']=$_POST['keywords'];
$arr['description']=$_POST['description'];
$json=\core::j($arr);
\DBmysql::set("UPDATE `content` SET `json`=? WHERE `id`=?", [$json, $_POST['id']]);
echo "Обновлены ключевые слова у записи " . $_POST['id'];
break;
/*
12.03.2025
Создаем новую страницу
*/
case 'newpage':
$id=\DBmysql::add("INSERT INTO `content` (`title`, `user_id`, `content_type`, `time`, `category`, `status`, `site`) VALUES (?,?,?,?,?,?,?)",
[$_POST['title'], $_SESSION['user_id'], 'page', time(), $_POST['category'], 1, $_SERVER['SERVER_NAME']]);
echo $id;
break;
case 'delimg':
$img=\DB::getRow("SELECT * FROM `img` WHERE `filename`=?", $_POST['filename']);
unlink('img/' . $_SERVER['SERVER_NAME'] . '/' . $img['content_type'] . '/' . $img['content_id'] . '/' . $_POST['filename'] . '.jpg');
\DB::set("DELETE FROM `img` WHERE `filename`=?", $_POST['filename']);
break;
case 'enable-comments':
\DB::set("UPDATE `content` SET `" . $_POST['pole'] . "`=? WHERE `id`=?", [$_POST['val'], $_POST['id']]);
break;
case 'save-text':
if (@$_POST['act'] == 'save') {
\DB::set("UPDATE `pages` SET
`title`=?, `txt`=?, `t`=?, `keywords`=?, `alias`=?, `description`=?, `category`=?, `user_id`=?, `d`=? WHERE `id`=?", array(
$_POST['title'], $_POST['txt'],
time(), $_POST['keywords'], $_POST['alias'], $_POST['description'], $_POST['category'], $_SESSION['user_id'], $_POST['d'], $_GET['id']
));
} else {
$id = \DB::add("INSERT INTO `pages` (`title`, `txt`, `t`, `keywords`, `alias`, `description`, `category`, `user_id`, `d`, `status`) VALUES (?,?,?,?,?,?,?,?,?,1)", array(
$_POST['title'], $_POST['txt'],
time(), $_POST['keywords'],
$_POST['alias'], $_POST['description'], $_POST['category'], $_SESSION['user_id'], $_POST['d']
));
header('Location: /page_edit/' . $id);
}
break;
case 'foto_upload':
//\core::upload_img('page', $_SESSION['id'], 0);
include_once 'api/php/thumbs-master/thumbs.php';
@mkdir("img/" . $_SERVER['SERVER_NAME'], 0700);
@mkdir("img/" . $_SERVER['SERVER_NAME'] . '/content', 0700);
@mkdir("img/" . $_SERVER['SERVER_NAME'] . '/content/' . $_POST['id'], 0700);
$tip=pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);
$fm=\core::genpassword(30);
$src=$_FILES['file']['tmp_name'];
$target='img/' . $_SERVER['SERVER_NAME'] . '/content/' . $_POST['id'] . '/' . $fm . '.' . $tip;
$mini='img/' . $_SERVER['SERVER_NAME'] . '/content/' . $_POST['id'] . '/' . $fm . '_' . IMG_PRV_W . '_' . IMG_PRV_H . '.webp';
copy($src, $target);
$image = new Thumbs($target);
$image->thumb(IMG_PRV_W, IMG_PRV_H);
$image->saveWEBP($mini, 80);
$json=\DBmysql::getValue("SELECT `json` FROM `content` WHERE `id`=? LIMIT 1", [$_POST['id']]);
$arr=\core::j($json);
$images=$arr['images'];
if ($images){
array_push($images, '/' . $mini);
}else{
$images[0]='/' . $mini;
}
$arr['images']=$images;
$json=\core::j($arr);
\DBmysql::set("UPDATE `content` SET `json`=? WHERE `id`=? LIMIT 1", [$json, $_POST['id']]);
/*copy($_FILES['file']['tmp_name'], "files/" . $_SERVER['SERVER_NAME'] . '/' . $_POST['id'] . '/' . $_FILES['file']['name']);
\DBmysql::add("INSERT INTO `content` (`title`, `txt`, `status`, `site`, `user_id`, `content_type`, `category`) VALUES (?, ?, ?, ?, ?, ?, ?)",
[$_FILES['file']['name'], "/files/" . $_SERVER['SERVER_NAME'] . '/' . $_POST['id'] . '/' . $_FILES['file']['name'], 1, $_SERVER['SERVER_NAME'], $_SESSION['user_id'], 'file', $_POST['id']]);
*/
break;
case 'save-settings':
$json=\json::to_j($_POST);
$id=\DB::getValue("SELECT `id` FROM `settings` WHERE `mod`='page_edit' LIMIT 1");
if ($id)
\DB::set("UPDATE `settings` SET `json` =? WHERE `mod`='page_edit' LIMIT 1", $json);
else
\DB::add("INSERT INTO `settings` (`mod`, `json`) VALUES (?, ?)", array('page_edit', $json));
break;
/*
case 'update_settings':
unset($_POST['act']);
$db->update_settings($_POST);
break;
case 'upload_main_img':
//echo 'uploader';
$settings_mod = $db -> get_settings_json($_POST['mod']);
unset($_POST['act']);
$tmp_name = $db -> upload_img( $_FILES, 'pages', 'main_img');
$db -> resize_img($tmp_name, $settings_mod['w'], $settings_mod['h'], 80, false, 'pages');
$db -> resize_img($tmp_name, $settings_mod['p_w'], $settings_mod['p_h'], 80, true, 'pages');
unset($a);
$a['id']=$_POST['id'];
$json=$db->get_val('pages', $a, 'json');
$massiv=$db->from_j($db-> clear_json($json));
$massiv['main_img']=$tmp_name;
$json=$db->to_j($massiv);
$db->free_sql( "UPDATE `pages` SET `json` = '" . $json . "' WHERE `id` = " . $_POST['id'] );
echo $tmp_name;
break;
*/
default:
}
?>