diff --git a/app/Controllers/Customer.php b/app/Controllers/Customer.php index bae69804..08b0f9e3 100644 --- a/app/Controllers/Customer.php +++ b/app/Controllers/Customer.php @@ -81,6 +81,7 @@ class Customer extends BaseController helper('session'); $session_bid = get_business_id(); $session_uid = get_logged_user_id(); + $session_role = get_user_role(); $model = new CustomerModel(); $data = [ 'first_name' => $this->request->getPost('cfname'), @@ -110,8 +111,10 @@ class Customer extends BaseController $FK_CID = $model->insertID(); // for Customer ADDRESS Table } else { // It's an update operation - $isactive = $this->request->getPost('isactive'); - $data['isactive'] = ($isactive == 'on') ? 1 : 0; + if ($session_role !== 'manager'){ + $isactive = $this->request->getPost('isactive'); + $data['isactive'] = ($isactive == 'on') ? 1 : 0; + } $data['updated_by'] = $session_uid; // $model->update($customer_id, $data); $FK_CID = $customer_id; // for Customer ADDRESS Table diff --git a/app/Controllers/Users.php b/app/Controllers/Users.php index acd20db3..a0ae9869 100755 --- a/app/Controllers/Users.php +++ b/app/Controllers/Users.php @@ -38,27 +38,53 @@ class Users extends BaseController helper('session'); $session_role = get_user_role(); $session_bid = get_business_id(); + $session_uid = get_logged_user_id(); if ($id === '0') { $this->logger->info("Users: In Add page"); $data['page_name'] = 'Add User'; $data['details'] = []; } else if ($id !== '0') { $this->logger->info("Users: In Edit page"); - $data['page_name'] = 'Edit User'; $model = new UsersModel(); $model->setTable('users'); - if (!empty($session_role) && $session_role === "sadmin") { - $where = ['users.user_id' => $id, 'users.isactive !=' => NULL]; - } else { - $where = ['users.user_id' => $id, 'users.isactive =' => 1]; + if (!empty($session_role)){ + switch ($session_role) { + case "sadmin": + $where = ['users.user_id' => $id, 'users.isactive !=' => NULL]; + $edit_user_details = $model->where($where)->first(); + $business_details = $this->business_details(); + $render_page_name = 'user_form'; + $data['page_name'] = 'Edit User'; + break; + case "admin": + $where = ['users.user_id' => $id, 'users.isactive =' => 1]; + $edit_user_details = $model->where($where)->first(); + $business_details = []; + $render_page_name = 'user_form'; + $data['page_name'] = 'Edit User'; + break; + case "manager": + $where = ['users.user_id' => $id, 'users.isactive =' => 1]; + $edit_user_details = $model->where($where)->first(); + $business_details = []; + if($session_uid === $id && $session_role === "manager"){ + $data['page_name'] = 'Edit User'; + $render_page_name = 'user_form'; + }else{ + $data['page_name'] = 'Page Not Found'; + $render_page_name = 'pages_404'; + } + break; + default: + $data['page_name'] = 'Page Not Found'; + $render_page_name = 'pages_404'; + } } - $edit_user_details = $model->where($where)->first(); $data['details'] = $edit_user_details; } - $business_details = !empty($session_role) && $session_role === "sadmin" ? $this->business_details() : []; $data['business_details'] = $business_details; $data['session_bid'] = $session_bid; - $this->render_page('user_form', $data); + $this->render_page($render_page_name, $data); } ## For SuperAdmin Role business Dropdown displayed on Userpage.otherwise Hidden fields diff --git a/app/Views/dashboard.php b/app/Views/dashboard.php index 157cc6c0..cc2f879e 100644 --- a/app/Views/dashboard.php +++ b/app/Views/dashboard.php @@ -1,3 +1,4 @@ +