secure module add

This commit is contained in:
2024-09-25 14:17:36 +03:00
parent 349c2992dc
commit 959d708daf
8 changed files with 75 additions and 46 deletions

View File

@ -69,7 +69,7 @@ class AdminConsoleController extends ConsoleController
$this->optionService->createFromParams(
key: "active_modules",
value: "{\"modules\":[\"admin_themes\"]}",
value: "{\"modules\":[\"admin_themes\", \"secure\"]}",
label: "Активные модули"
);
$this->out->r("create option active_modules", "green");

View File

@ -1,11 +1,10 @@
<?php
namespace kernel\controllers;
namespace kernel\modules\secure\controllers;
use JetBrains\PhpStorm\NoReturn;
use kernel\AdminController;
use kernel\helpers\Debug;
use kernel\models\forms\LoginForm;
use kernel\modules\secure\models\forms\LoginForm;
use kernel\modules\user\service\UserService;
class SecureController extends AdminController
@ -15,7 +14,8 @@ class SecureController extends AdminController
protected function init(): void
{
parent::init();
$this->cgView->viewPath = KERNEL_DIR . "/views/secure/";
// $this->cgView->viewPath = KERNEL_DIR . "/views/secure/";
$this->cgView->viewPath = KERNEL_MODULES_DIR. "/secure/views/";
$this->cgView->layout = "/login.php";
$this->userService = new UserService();
}
@ -53,7 +53,7 @@ class SecureController extends AdminController
#[NoReturn] public function actionLogout(): void
{
unset($_COOKIE['user_id']);
setcookie('user_id', "", time() - 3600, '/');
setcookie('user_id', "", -1, '/', $_SERVER['SERVER_NAME'], false);
$this->redirect("/");
}

View File

@ -0,0 +1,8 @@
{
"name": "Secure",
"version": "0.1",
"author": "ITGuild",
"slug": "secure",
"description": "Secure module",
"routs": "routs/secure.php"
}

View File

@ -1,6 +1,6 @@
<?php
namespace kernel\models\forms;
namespace kernel\modules\secure\models\forms;
use kernel\FormModel;

View File

@ -0,0 +1,22 @@
<?php
use kernel\App;
use Phroute\Phroute\RouteCollector;
App::$collector->filter("auth", function (){
if(!isset($_COOKIE['user_id']))
{
header('Location: /admin/login');
return false;
}
});
App::$collector->group(["prefix" => "admin"], function (RouteCollector $router){
App::$collector->group(["before" => "auth"], function (RouteCollector $router){
App::$collector->get('/', [\kernel\controllers\ModuleController::class, 'actionIndex']);
});
App::$collector->get('/login', [\kernel\modules\secure\controllers\SecureController::class, 'actionLogin']);
App::$collector->get('/logout', [\kernel\modules\secure\controllers\SecureController::class, 'actionLogout']);
App::$collector->post('/auth', [\kernel\modules\secure\controllers\SecureController::class, 'actionAuth']);
});

View File

@ -1,26 +1,24 @@
<?php
use app\controllers\MainController;
use kernel\App;
use kernel\modules\admin_themes\controllers\AdminThemeController;
use Phroute\Phroute\RouteCollector;
App::$collector->filter("auth", function (){
if(!isset($_COOKIE['user_id']))
{
header('Location: /admin/login');
return false;
}
});
//App::$collector->filter("auth", function (){
// if(!isset($_COOKIE['user_id']))
// {
// header('Location: /admin/login');
//
// return false;
// }
//});
App::$collector->group(["prefix" => "admin"], function (RouteCollector $router){
App::$collector->group(["before" => "auth"], function (RouteCollector $router){
App::$collector->get('/', [\kernel\controllers\ModuleController::class, 'actionIndex']);
});
App::$collector->get('/login', [\kernel\controllers\SecureController::class, 'actionLogin']);
App::$collector->get('/logout', [\kernel\controllers\SecureController::class, 'actionLogout']);
App::$collector->post('/auth', [\kernel\controllers\SecureController::class, 'actionAuth']);
// App::$collector->group(["before" => "auth"], function (RouteCollector $router){
// App::$collector->get('/', [\kernel\controllers\ModuleController::class, 'actionIndex']);
// });
// App::$collector->get('/login', [\kernel\modules\secure\controllers\SecureController::class, 'actionLogin']);
// App::$collector->get('/logout', [\kernel\modules\secure\controllers\SecureController::class, 'actionLogout']);
// App::$collector->post('/auth', [\kernel\modules\secure\controllers\SecureController::class, 'actionAuth']);
App::$collector->group(["before" => "auth"], function (RouteCollector $router){
App::$collector->group(["prefix" => "module"], function (RouteCollector $router){
App::$collector->get('/', [\kernel\controllers\ModuleController::class, 'actionIndex']);