mirror of
https://github.com/Karaka-Management/oms-Admin.git
synced 2026-01-27 12:38:39 +00:00
draft login, forgott end points
This commit is contained in:
parent
50d09e2ae3
commit
00fe4a3acf
|
|
@ -6,6 +6,33 @@ use phpOMS\Account\PermissionType;
|
|||
use phpOMS\Router\RouteVerb;
|
||||
|
||||
return [
|
||||
'^.*/login(\?.*|$)' => [
|
||||
[
|
||||
'dest' => '\Modules\Admin\Controller\ApiController:apiLogin',
|
||||
'verb' => RouteVerb::SET,
|
||||
'permission' => [
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'^.*/logout(\?.*|$)' => [
|
||||
[
|
||||
'dest' => '\Modules\Admin\Controller\ApiController:apiLogout',
|
||||
'verb' => RouteVerb::SET,
|
||||
'permission' => [
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'^.*/forgott(\?.*|$)' => [
|
||||
[
|
||||
'dest' => '\Modules\Admin\Controller\ApiController:apiForgott',
|
||||
'verb' => RouteVerb::SET,
|
||||
'permission' => [
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'^.*/admin/settings(\?.*|$)' => [
|
||||
[
|
||||
'dest' => '\Modules\Admin\Controller\ApiController:apiSettingsSet',
|
||||
|
|
|
|||
|
|
@ -6,6 +6,15 @@ use phpOMS\Account\PermissionType;
|
|||
use phpOMS\Router\RouteVerb;
|
||||
|
||||
return [
|
||||
'^.*/forgott.*$' => [
|
||||
[
|
||||
'dest' => '\Modules\Admin\Controller\BackendController:viewForgott',
|
||||
'verb' => RouteVerb::GET,
|
||||
'permission' => [
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'^.*/admin/settings/general.*$' => [
|
||||
[
|
||||
'dest' => '\Modules\Admin\Controller\BackendController:viewSettingsGeneral',
|
||||
|
|
|
|||
|
|
@ -54,6 +54,10 @@ use phpOMS\Uri\HttpUri;
|
|||
use phpOMS\Utils\Parser\Markdown\Markdown;
|
||||
use phpOMS\Validation\Network\Email;
|
||||
use phpOMS\Version\Version;
|
||||
use phpOMS\Auth\LoginReturnType;
|
||||
use phpOMS\Model\Message\Notify;
|
||||
use phpOMS\Model\Message\Reload;
|
||||
use phpOMS\Model\Message\NotifyType;
|
||||
|
||||
/**
|
||||
* Admin controller class.
|
||||
|
|
@ -73,6 +77,83 @@ use phpOMS\Version\Version;
|
|||
*/
|
||||
final class ApiController extends Controller
|
||||
{
|
||||
/**
|
||||
* Api method to login
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiLogin(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
$response->getHeader()->set('Content-Type', MimeType::M_JSON . '; charset=utf-8', true);
|
||||
|
||||
$login = AccountMapper::login((string) ($request->getData('user') ?? ''), (string) ($request->getData('pass') ?? ''));
|
||||
|
||||
if ($login >= LoginReturnType::OK) {
|
||||
$this->app->sessionManager->set('UID', $login, true);
|
||||
$this->app->sessionManager->save();
|
||||
$response->set($request->getUri()->__toString(), new Reload());
|
||||
} else {
|
||||
$response->set($request->getUri()->__toString(), new Notify(
|
||||
'Login failed due to wrong login information',
|
||||
NotifyType::INFO
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to login
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiLogout(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
$response->getHeader()->set('Content-Type', MimeType::M_JSON . '; charset=utf-8', true);
|
||||
|
||||
$this->app->sessionManager->remove('UID');
|
||||
$this->app->sessionManager->save();
|
||||
|
||||
$response->getHeader()->set('Content-Type', MimeType::M_JSON . '; charset=utf-8', true);
|
||||
$response->set($request->getUri()->__toString(), [
|
||||
'status' => NotificationLevel::OK,
|
||||
'title' => 'Logout successfull',
|
||||
'message' => 'You are redirected to the login page',
|
||||
'response' => null,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to login
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiForgott(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to get settings
|
||||
*
|
||||
|
|
|
|||
|
|
@ -45,6 +45,22 @@ use phpOMS\Views\View;
|
|||
*/
|
||||
final class BackendController extends Controller
|
||||
{
|
||||
/**
|
||||
* Method which shows the password forgotten
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return RenderableInterface Response can be rendered
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function viewForgott(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
|
||||
{
|
||||
return new View();
|
||||
}
|
||||
|
||||
/**
|
||||
* Method which generates the general settings view.
|
||||
*
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user