This commit is contained in:
root
2022-10-13 07:07:04 +03:00
parent 30fd8f0ec3
commit 6d6712e9d2
21 changed files with 590 additions and 98 deletions

View File

@@ -66,10 +66,14 @@ final class books_controller extends core
// Инициализация журнала ошибок
$vars['errors'] = [];
if (count($books = books::import($files['books'] ?? [], errors: $vars['errors'])) > 0) {
// Загружены книги
} else {
// Не загружены книги
if (accounts::init(errors: $vars['errors'])->access('books')) {
// Найден и авторизован аккаунт
if (count($books = books::import($files['books'] ?? [], errors: $vars['errors'])) > 0) {
// Загружены книги
} else {
// Не загружены книги
}
}
// Перенаправление
@@ -122,5 +126,66 @@ final class books_controller extends core
*/
public function delete(array $vars = []): ?string
{
// Инициализация журнала ошибок
$vars['errors'] = [];
if (accounts::init(errors: $vars['errors'])->access('books')) {
// Найден и авторизован аккаунт
if (isset($vars['id'])) {
// Найдены обязательные входные параметры
if (books::delete((int) $vars['id'], $vars['errors'])) {
// Удалена книга из базы данных
// Инициализация пути до книги
$book = \STORAGE . DIRECTORY_SEPARATOR . 'books' . DIRECTORY_SEPARATOR . $vars['id'];
if (file_exists($book)) {
// Найдена книга
// Удаление книги
exec('rm -rf ' . escapeshellarg($book));
// Запись статуса выполнения в буфер вывода
$status = true;
}
}
}
}
return json_encode([
'status' => $status ?? false,
'errors' => $vars['errors']
]);
}
/**
* Поворот
*
* @param array $vars
*
* @return string|null JSON
*/
public function rotate(array $vars = []): ?string
{
// Инициализация журнала ошибок
$vars['errors'] = [];
if (accounts::init(errors: $vars['errors'])->access('books')) {
// Найден и авторизован аккаунт
if (isset($vars['id'], $vars['page'])) {
// Найдены обязательные входные параметры
// Поворот страницы
$status = books::rotate((int) $vars['id'], (int) $vars['page'], $vars['errors']);
}
}
return json_encode([
'status' => $status ?? false,
'errors' => $vars['errors']
]);
}
}

View File

@@ -0,0 +1,28 @@
<?php
declare(strict_types=1);
namespace mirzaev\surikovlib\controllers;
use mirzaev\surikovlib\controllers\core;
use mirzaev\surikovlib\models\accounts_model as accounts;
use Twig\Environment as view;
/**
* Контроллер страницы "контакты"
*
* @package mirzaev\surikovlib\controllers
* @author Arsen Mirzaev Tatyano-Muradovich <arsen@mirzaev.sexy>
*/
final class contacts_controller extends core
{
public function index(array $vars = []): ?string
{
// Инициализация журнала ошибок
$vars['errors'] = [];
// Генерация представления
return $this->view->render(DIRECTORY_SEPARATOR . 'pages' . DIRECTORY_SEPARATOR . 'contacts' . DIRECTORY_SEPARATOR . 'index.html', $vars);
}
}

View File

@@ -0,0 +1,28 @@
<?php
declare(strict_types=1);
namespace mirzaev\surikovlib\controllers;
use mirzaev\surikovlib\controllers\core;
use mirzaev\surikovlib\models\accounts_model as accounts;
use Twig\Environment as view;
/**
* Контроллер страницы "кеменов"
*
* @package mirzaev\surikovlib\controllers
* @author Arsen Mirzaev Tatyano-Muradovich <arsen@mirzaev.sexy>
*/
final class kemenov_controller extends core
{
public function index(array $vars = []): ?string
{
// Инициализация журнала ошибок
$vars['errors'] = [];
// Генерация представления
return $this->view->render(DIRECTORY_SEPARATOR . 'pages' . DIRECTORY_SEPARATOR . 'kemenov' . DIRECTORY_SEPARATOR . 'index.html', $vars);
}
}

View File

@@ -0,0 +1,28 @@
<?php
declare(strict_types=1);
namespace mirzaev\surikovlib\controllers;
use mirzaev\surikovlib\controllers\core;
use mirzaev\surikovlib\models\accounts_model as accounts;
use Twig\Environment as view;
/**
* Контроллер страницы "суриков"
*
* @package mirzaev\surikovlib\controllers
* @author Arsen Mirzaev Tatyano-Muradovich <arsen@mirzaev.sexy>
*/
final class surikov_controller extends core
{
public function index(array $vars = []): ?string
{
// Инициализация журнала ошибок
$vars['errors'] = [];
// Генерация представления
return $this->view->render(DIRECTORY_SEPARATOR . 'pages' . DIRECTORY_SEPARATOR . 'surikov' . DIRECTORY_SEPARATOR . 'index.html', $vars);
}
}