From 7a4491c037bafc2f25d435da579bc9cbd2f1a9cd Mon Sep 17 00:00:00 2001 From: mahdahar <89adham@gmail.com> Date: Wed, 20 Nov 2024 16:55:21 +0700 Subject: [PATCH] all fix (next dict_tests) --- app/Config/Routes.php | 27 ++--- app/Controllers/Api.php | 59 ----------- app/Controllers/Auth.php | 25 ++--- app/Controllers/Pages.php | 38 +++++++ app/Controllers/Userroles.php | 52 ++++++++-- app/Controllers/Users.php | 92 +++++++++-------- app/Views/auth_login.php | 14 --- app/Views/auth_setpass.php | 61 +++++++++++ app/Views/changePass.php | 63 ++++++++++++ app/Views/layouts/sidebar.php | 5 +- app/Views/userroles_edit.php | 39 ------- app/Views/users_editRole.php | 50 --------- app/Views/users_index.php | 185 ++++++++++++++++++++++++++-------- 13 files changed, 425 insertions(+), 285 deletions(-) delete mode 100644 app/Controllers/Api.php create mode 100644 app/Controllers/Pages.php create mode 100644 app/Views/auth_setpass.php create mode 100644 app/Views/changePass.php delete mode 100644 app/Views/userroles_edit.php delete mode 100644 app/Views/users_editRole.php diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 8632773..afd5df4 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -17,15 +17,10 @@ $routes->get('/tubes/unreceive/(:any)/(:any)', 'Tubes::unreceive/$1/$2'); $routes->get('/tubes/unreceiveAll/(:any)', 'Tubes::unreceiveAll/$1'); $routes->post('/tubes/comment/(:any)/(:any)', 'Tubes::comment/$1/$2'); -// Userroles -$routes->get('/userroles/', 'Userroles::index'); -$routes->match(['get','post'],'/userroles/create', 'Userroles::edit/0'); -$routes->match(['get','post'],'/userroles/edit/(:any)', 'Userroles::edit/$1'); - -// Users -$routes->get('/users/', 'Users::index'); -$routes->match(['get','post'], '/users/editRole/(:any)', 'Users::editRole/$1'); -$routes->match(['get','post'], '/users/editPass/(:any)', 'Users::editPass/$1'); +// Pages +$routes->get('/userroles/', 'Pages::userroles_index'); +$routes->get('/users/', 'Pages::users_index'); +$routes->get('/changePass/', 'Pages::changePass'); // DICT_TESTS $routes->get('/dict_tests/', 'Dict_tests::index'); @@ -36,7 +31,13 @@ $routes->get('/auth/loginTD', 'Auth::loginTD'); $routes->match(['get','post'], '/auth/login', 'Auth::login'); $routes->match(['get','post'], '/auth/setpass/(:any)', 'Auth::setpass/$1'); -// API -$routes->get('/api/userroles/index', 'Api::userroles_index'); -$routes->get('/api/userroles/detail/(:any)', 'Api::userroles_detail/$1'); -$routes->post('/api/userroles/save/(:any)', 'Api::userroles_save/$1'); \ No newline at end of file +// API - Userroles +$routes->get('/api/userroles/index', 'Userroles::index'); +$routes->get('/api/userroles/detail/(:any)', 'Userroles::detail/$1'); +$routes->post('/api/userroles/save/(:any)', 'Userroles::save/$1'); + +// API - Users +$routes->get('/api/users/index', 'Users::index'); +$routes->get('/api/users/detail/(:any)', 'Users::detail/$1'); +$routes->post('/api/users/savePass/(:any)', 'Users::savePass/$1'); +$routes->post('/api/users/saveRole/(:any)', 'Users::saveRole/$1'); diff --git a/app/Controllers/Api.php b/app/Controllers/Api.php deleted file mode 100644 index c7711fa..0000000 --- a/app/Controllers/Api.php +++ /dev/null @@ -1,59 +0,0 @@ -query($sql); - $results = $query->getResultArray(); - $data['userroles'] = $results; - - return $this->respond($data, 200); - } - - public function userroles_detail($userroleid) { - $db = \Config\Database::connect(); - $sql = "select * from cmod.dbo.CM_USERROLES where USERROLEID='$userroleid'"; - $query = $db->query($sql); - $results = $query->getResultArray(); - $data = $results[0]; - return $this->respond($data, 200); - } - - public function userroles_edit($userroleid) { - $db = \Config\Database::connect(); - $sql = "select * from cmod.dbo.CM_USERROLES where USERROLEID='$userroleid'"; - $query = $db->query($sql); - $results = $query->getResultArray(); - $data['userroles'] = $results; - - return $this->respond($data, 200); - } - - public function userroles_save($userroleid) { - $userrolecode = $this->request->getPost('userrolecode'); - $userrolename = $this->request->getPost('userrolename'); - - $db = \Config\Database::connect(); - if($userroleid == 0) { // new - $sql = "INSERT INTO cmod.dbo.CM_USERROLES(USERROLECODE, USERROLENAME, CREATEDATE) VALUES ('$userrolecode', '$userrolename', GETDATE())"; - } else { //update - $sql = "UPDATE cmod.dbo.CM_USERROLES set USERROLENAME='$userrolename', USERROLECODE='$userrolecode' where USERROLEID='$userroleid'"; - } - - if( $db->query($sql) ) { - return $this->respond(['message' => 'Save Success'],201); - } else { - $response = [ - 'errors' => $db->errors(), - 'message' => 'Invalid Inputs' - ]; - return $this->fail($response , 409); - } - } -} \ No newline at end of file diff --git a/app/Controllers/Auth.php b/app/Controllers/Auth.php index 9fe6d8a..0cbbe1e 100644 --- a/app/Controllers/Auth.php +++ b/app/Controllers/Auth.php @@ -67,23 +67,18 @@ class Auth extends BaseController { return redirect()->to('/auth/login');; } - public function setPass($userid) { + public function setpass($userid) { if ($this->request->getMethod() === 'POST') { - $password1 = $this->request->getVar('password1'); - $password2 = $this->request->getVar('password2'); - $data['password1'] = $password1; - $data['password2'] = $password2; - if($password1 == $password2) { - $password = password_hash($password1,PASSWORD_DEFAULT); - $db = \Config\Database::connect(); - $sql = "update cmod.dbo.CM_USERS set PASSWORD='$password' where USERID='$userid'"; - $db->query($sql); - return redirect()->to("/auth/login"); - } else { - return redirect()->to("/auth/setpass/$userid")->with('flash_error', 'password is not the same.'); - } + $password = $this->request->getPost('password'); + $password = password_hash($password,PASSWORD_DEFAULT); + $db = \Config\Database::connect(); + $sql = "update cmod.dbo.CM_USERS set PASSWORD='$password' where USERID='$userid'"; + $db->query($sql); + return redirect()->to("/auth/login"); + } else { + $data['userid'] = strtoupper($userid); + return view('auth_setpass', $data); } - return view('auth_setpass'); } public function loginTD() { diff --git a/app/Controllers/Pages.php b/app/Controllers/Pages.php new file mode 100644 index 0000000..f5c4273 --- /dev/null +++ b/app/Controllers/Pages.php @@ -0,0 +1,38 @@ +query($sql); + $results = $query->getResultArray(); + $data['userroles'] = $results; + return view('users_index', $data); + } + + public function changePass() { + if ($this->request->getMethod() === 'POST') { + $password1 = $this->request->getVar('password1'); + $password2 = $this->request->getVar('password2'); + $data['password1'] = $password1; + $data['password2'] = $password2; + if($password1 == $password2) { + $password = password_hash($password1,PASSWORD_DEFAULT); + $db = \Config\Database::connect(); + $sql = "update cmod.dbo.CM_USERS set PASSWORD='$password' where USERID='$userid'"; + $db->query($sql); + return redirect()->to("/"); + } else { + return redirect()->to("/auth/setpass/$userid")->with('flash_error', 'password is not the same.'); + } + } + return view('changePass'); + } +} diff --git a/app/Controllers/Userroles.php b/app/Controllers/Userroles.php index 2819483..93bc2a2 100644 --- a/app/Controllers/Userroles.php +++ b/app/Controllers/Userroles.php @@ -1,11 +1,49 @@ query($sql); + $results = $query->getResultArray(); + $data['userroles'] = $results; -} + return $this->respond($data, 200); + } + + public function detail($userroleid) { + $db = \Config\Database::connect(); + $sql = "select * from cmod.dbo.CM_USERROLES where USERROLEID='$userroleid'"; + $query = $db->query($sql); + $results = $query->getResultArray(); + $data = $results[0]; + return $this->respond($data, 200); + } + + public function save($userroleid) { + $userrolecode = $this->request->getPost('userrolecode'); + $userrolename = $this->request->getPost('userrolename'); + + $db = \Config\Database::connect(); + if($userroleid == 0) { // new + $sql = "INSERT INTO cmod.dbo.CM_USERROLES(USERROLECODE, USERROLENAME, CREATEDATE) VALUES ('$userrolecode', '$userrolename', GETDATE())"; + } else { //update + $sql = "UPDATE cmod.dbo.CM_USERROLES set USERROLENAME='$userrolename', USERROLECODE='$userrolecode' where USERROLEID='$userroleid'"; + } + + if( $db->query($sql) ) { + return $this->respond(['message' => 'Save Success'],201); + } else { + $response = [ + 'errors' => $db->errors(), + 'message' => 'Invalid Inputs' + ]; + return $this->fail($response , 409); + } + } +} \ No newline at end of file diff --git a/app/Controllers/Users.php b/app/Controllers/Users.php index 700c910..ee2aef6 100644 --- a/app/Controllers/Users.php +++ b/app/Controllers/Users.php @@ -1,61 +1,59 @@ query($sql); $results = $query->getResultArray(); $data['users'] = $results; - return view('users_index', $data); - } - - public function editRole($userid) { - if ($this->request->getMethod() == 'POST') { - $request = service('request'); - $jsonData = $request->getJSON(); - $userrolecode = $jsonData->userrolecode; - $db = \Config\Database::connect(); - $sql = "if (not exists (select * from cmod.dbo.CM_USERS where USERID='$userid')) BEGIN - INSERT INTO cmod.dbo.CM_USERS(USERID, USERROLECODE, CREATEDATE) VALUES - ('$userid','$userrolecode', GETDATE()) - END ELSE BEGIN - UPDATE cmod.dbo.CM_USERS set USERROLECODE='$userrolecode' where USERID='$userid' - END"; - $query = $db->query($sql); - } else { - $db = \Config\Database::connect(); - $sql = "select u.USERID, u.USERNAME, u1.USERROLECODE from cmod.dbo.CM_USERS u1 - full join USERS u on u.USERID=u1.USERID - where u.USERID='$userid'"; - $query = $db->query($sql); - $results = $query->getResultArray(); - - $data['users'] = $results; - $data['userroles'] = $this->userrole; - return view('users_editRole', $data); - } + return $this->respond($data,200); } - public function comment($access, $sample) { - $userid = session()->userid; - $request = service('request'); - $jsonData = $request->getJSON(); + public function savePass() { $db = \Config\Database::connect(); - $comment = $jsonData->comment; - $sql = "if (not exists (select * from cmod.dbo.CM_TUBES where ACCESSNUMBER='$access' AND SAMPLETYPE='$sample')) BEGIN - INSERT INTO cmod.dbo.CM_TUBES(ACCESSNUMBER, SAMPLETYPE, COLL_USERID, TUBECOMMENT, CREATEDATE) VALUES - ('$access','$sample', '$userid', '$comment', GETDATE()) - END ELSE BEGIN - UPDATE cmod.dbo.CM_TUBES set TUBECOMMENT='$comment' where ACCESSNUMBER='$access' and SAMPLETYPE='$sample' - END"; - echo "$sql"; - $query = $db->query($sql); - } -} + $userid = $this->request->getPost('userid'); + $pass = $this->request->getPost('pass'); + $password = password_hash($pass,PASSWORD_DEFAULT); + $sql = "update cmod.dbo.CM_USERS set PASSWORD='$password' where USERID='$userid'"; + if( $db->query($sql) ) { + return $this->respond(['message' => 'Save Success'],201); + } else { + $response = [ + 'errors' => $db->errors(), + 'message' => 'Invalids' + ]; + return $this->fail($response , 409); + } + } + + public function saveRole() { + $db = \Config\Database::connect(); + $userid = $this->request->getPost('userid'); + $userroleid = $this->request->getPost('userroleid'); + $sql = "if (not exists (select * from cmod.dbo.CM_USERS where USERID='$userid')) BEGIN + INSERT INTO cmod.dbo.CM_USERS(USERID, USERROLEID, CREATEDATE) VALUES + ('$userid','$userroleid', GETDATE()) + END ELSE BEGIN + UPDATE cmod.dbo.CM_USERS set USERROLEID='$userroleid' where USERID='$userid' + END"; + if( $db->query($sql) ) { + return $this->respond(['message' => 'Save Success'],201); + } else { + $response = [ + 'errors' => $db->errors(), + 'message' => 'Invalids' + ]; + return $this->fail($response , 409); + } + } +} \ No newline at end of file diff --git a/app/Views/auth_login.php b/app/Views/auth_login.php index 5aac255..de5e8d0 100644 --- a/app/Views/auth_login.php +++ b/app/Views/auth_login.php @@ -21,51 +21,38 @@
-
-
@@ -75,5 +62,4 @@ } - \ No newline at end of file diff --git a/app/Views/auth_setpass.php b/app/Views/auth_setpass.php new file mode 100644 index 0000000..6d559ca --- /dev/null +++ b/app/Views/auth_setpass.php @@ -0,0 +1,61 @@ + + + + + + + CMOD - Login + + + + + + + +
+
+
+ +
+
+
+ + + + \ No newline at end of file diff --git a/app/Views/changePass.php b/app/Views/changePass.php new file mode 100644 index 0000000..5ae201d --- /dev/null +++ b/app/Views/changePass.php @@ -0,0 +1,63 @@ +extend('layouts/main.php') ?> + +section('content') ?> +
+
+
+
+
Password Editor
+
+ + + +
Password :
Conf. Password :
+ + +
+
+
+
+endSection() ?> + +section('script') ?> + +endSection() ?> \ No newline at end of file diff --git a/app/Views/layouts/sidebar.php b/app/Views/layouts/sidebar.php index aea854f..548c530 100644 --- a/app/Views/layouts/sidebar.php +++ b/app/Views/layouts/sidebar.php @@ -2,8 +2,11 @@