session = session(); $this->ClientModel = new ClientModel(); $this->ClientDocsModel = new ClientDocsModel(); } public function login() { if($this->session->has('is_client_logged_in')){ return redirect()->to(base_url().'client_home'); } if($this->request->getmethod() == 'POST') { $pan_no = $this->request->getPost('pan_no'); $clientdata = $this->ClientModel->where('pan_no', $pan_no)->first(); if($clientdata) { if($clientdata['is_active'] == 0) { $this->session->setTempdata('error','Client Deactivated',3); return redirect()->to(base_url()); } $this->session->set('is_client_logged_in',$clientdata['client_id']); // $this->session->set('logged_in_client_name',$clientdata['org_name']); return redirect()->to(base_url().'client_home'); }else{ $this->session->setTempdata('error','Email or Password is invalid',3); return redirect()->to(base_url()); } } //get method return view('client_login'); } public function client_logout() { session()->remove('is_client_logged_in'); session()->destroy(); return redirect()->to(base_url()); } public function client_home(){ $client_id =$this->session->get('is_client_logged_in'); $data['doc_list'] = $this->ClientDocsModel->getTemplate($client_id); // print_r($data['doc_list']);die; $clientdata = $this->ClientModel->where('client_id', $client_id)->get()->getRow(); if($clientdata){ echo view('layout/header', ['Data'=>$clientdata]); echo view('client_home',$data); echo view('layout/footer'); } } public function client_profile() { if(!$this->session->has('is_client_logged_in')){ return redirect()->to(base_url()); } if($this->request->getmethod() == 'POST') { //update client profile $clientData = $this->request->getVar(); $clientData['updated_by'] = $this->session->get('is_client_logged_in'); $client_id = $this->request->getVar('client_id'); $this->ClientModel->where('client_id', $client_id )->set($clientData)->update(); echo true; }else{ $clientdata = $this->ClientModel->where('client_id',$this->session->get('is_client_logged_in'))->get()->getRow(); echo view('layout/header', ['Data'=>$clientdata]); echo view('client_profile',['client'=>$clientdata]); echo view('layout/footer'); } } public function change_client_password($client_id) { $old_password =$this->request->getVar('old_password'); $new_password =$this->request->getVar('new_password'); $confirm_password =$this->request->getVar('confirm_password'); $client = $this->ClientModel->where('client_id',$client_id)->first(); $data_old_password = $client['password']; if (!password_verify($old_password, $data_old_password)) { $response = array( 'status' => 'error', 'message' => 'Old Password Not Match...' ); return json_encode($response); } if($new_password != $confirm_password){ $response = array( 'status' => 'error', 'message' => 'New Password And Confirm Password Not Match...' ); return json_encode($response); } //$hashedPassword = password_hash($new_password, PASSWORD_DEFAULT); $data['password'] = $new_password; if ($this->ClientModel->update($client_id, $data)) { $response = array( 'status' => 'success', 'message' => 'Password Change Succuessfully' ); return json_encode($response); } } public function generate_otp() { try { $pan_no = $this->request->getPost('pan_no'); $client_data = $this->ClientModel->where('pan_no', $pan_no )->first(); if($client_data){ $id = $client_data['client_id']; $data = [ 'otp' => '123456' ]; $update = $this->ClientModel->update($id , $data); if($update){ return json_encode(true); } } else { return false; } } catch (\Exception $e) { // Handle any exceptions that occur during execution return $this->respond(['status' => 'error', 'code' => 500, 'message' => $e->getMessage()], 500); } } public function verify_otp() { try { $pan_no = $this->request->getPost('pan_no'); $otp = $this->request->getPost('otp'); $client_data = $this->ClientModel->where('pan_no', $pan_no )->where('otp', $otp)->first(); $data = ['otp' =>'']; if($client_data){ $id = $client_data['client_id']; $update = $this->ClientModel->update($id , $data); if($update){ return json_encode(true); } } else { $client_data = $this->ClientModel->where('pan_no', $pan_no )->first(); $id = $client_data['client_id']; $update = $this->ClientModel->update($id , $data); return false; } } catch (\Exception $e) { // Handle any exceptions that occur during execution return $this->respond(['status' => 'error', 'code' => 500, 'message' => $e->getMessage()], 500); } } public function status_client() { try { $client_id = $this->request->getPost('client_id'); $is_active = $this->request->getPost('is_active'); $data = [ 'is_active' => $is_active ]; $updated = $this->ClientModel->update($client_id, $data); if ($updated) { return $this->respond(['status' => 'success','code' => 200,'data' => true],200); } else { $result = "No Match's"; return $this->respond(['status' => 'failed','code' => 404,'data' => $result],404); } } catch (\Exception $exception) { return $this->respond(['status' => 'failed','code' => 500,'data' => $exception],500); } } }