employee = model(Employee::class); $this->module = model(Module::class); $config = config(OSPOS::class)->settings; $validation = Services::validation(); if(!$this->employee->is_logged_in()) { header("Location:".base_url('login')); exit(); } $logged_in_employee_info = $this->employee->get_logged_in_employee_info(); if(!$this->employee->has_module_grant($module_id, $logged_in_employee_info->person_id) || (isset($submodule_id) && !$this->employee->has_module_grant($submodule_id, $logged_in_employee_info->person_id))) { header("Location:".base_url("no_access/$module_id/$submodule_id")); exit(); } // load up global global_view_data visible to all the loaded views $this->session = session(); if($menu_group == null) { $menu_group = $this->session->get('menu_group'); } else { $this->session->set('menu_group', $menu_group); } $allowed_modules = $menu_group == 'home' ? $this->module->get_allowed_home_modules($logged_in_employee_info->person_id) : $this->module->get_allowed_office_modules($logged_in_employee_info->person_id); $this->global_view_data = []; foreach($allowed_modules->getResult() as $module) { $this->global_view_data['allowed_modules'][] = $module; } $this->global_view_data += [ 'user_info' => $logged_in_employee_info, 'controller_name' => $module_id, 'config' => $config ]; view('viewData', $this->global_view_data); } /** * AJAX function used to confirm whether values sent in the request are numeric * @return void * @noinspection PhpUnused */ public function getCheckNumeric(): void { $result = true; foreach($this->request->getGet(null, FILTER_SANITIZE_FULL_SPECIAL_CHARS) as $value) { $result &= (int)parse_decimals($value); } echo $result !== false ? 'true' : 'false'; } /** * @param $key * @return mixed|void */ public function getConfig($key) { if (isset($config[$key])) { return $config[$key]; } } /** * @return false */ public function getIndex() { return false; } /** * @return false */ public function getSearch() { return false; } /** * @return false */ public function suggest_search() { return false; } /** * @param int $data_item_id * @return false */ public function getView(int $data_item_id = -1) { return false; } /** * @param int $data_item_id * @return false */ public function postSave(int $data_item_id = -1) { return false; } /** * @return false */ public function postDelete() { return false; } }