From b98c49ff74788215bbd9f7e6c8449af94201e4fb Mon Sep 17 00:00:00 2001 From: Awilum Date: Fri, 14 Jun 2019 13:11:26 +0300 Subject: [PATCH] Flextype Box Plugin: Admin #125 #117 - Users fixes --- .../admin/app/Controllers/UsersController.php | 50 ++++++++++++++----- 1 file changed, 37 insertions(+), 13 deletions(-) diff --git a/site/plugins/admin/app/Controllers/UsersController.php b/site/plugins/admin/app/Controllers/UsersController.php index 678f0376..6b3c29fb 100644 --- a/site/plugins/admin/app/Controllers/UsersController.php +++ b/site/plugins/admin/app/Controllers/UsersController.php @@ -19,18 +19,20 @@ class UsersController extends Controller public function login($request, $response) { - // Get Users Profiles - $users = Filesystem::listContents(PATH['site'] . '/accounts/'); + $users = $this->getUsers(); - if ($users && count($users) > 0) { - return $this->container->get('view')->render( - $response, - 'plugins/admin/views/templates/users/login.html' - ); + if ((Session::exists('role') && Session::get('role') == 'admin')) { + return $response->withRedirect($this->router->pathFor('admin.entries.index')); } else { - return $response->withRedirect($this->router->pathFor('admin.users.registration')); + if ($users && count($users) > 0) { + return $this->container->get('view')->render( + $response, + 'plugins/admin/views/templates/users/login.html' + ); + } else { + return $response->withRedirect($this->router->pathFor('admin.users.registration')); + } } - } public function loginProcess($request, $response) @@ -55,10 +57,14 @@ class UsersController extends Controller public function registration($request, $response) { - return $this->view->render( - $response, - 'plugins/admin/views/templates/users/registration.html' - ); + if ((Session::exists('role') && Session::get('role') == 'admin')) { + return $response->withRedirect($this->router->pathFor('admin.entries.index')); + } else { + return $this->view->render( + $response, + 'plugins/admin/views/templates/users/registration.html' + ); + } } /** @@ -96,4 +102,22 @@ class UsersController extends Controller Session::destroy(); return $response->withRedirect($this->router->pathFor('admin.users.login')); } + + public function getUsers() + { + // Get Users Profiles + $users = Filesystem::listContents(PATH['site'] . '/accounts/'); + + // Get Plugins List + $_users_list = Filesystem::listContents(PATH['plugins']); + $users_list = []; + + foreach($_users_list as $user) { + if ($user['type'] == 'dir') { + $users_list[] = $user; + } + } + + return $users; + } }