當前位置: 首頁>>代碼示例>>PHP>>正文


PHP UserRepository::editWork方法代碼示例

本文整理匯總了PHP中App\Repositories\UserRepository::editWork方法的典型用法代碼示例。如果您正苦於以下問題:PHP UserRepository::editWork方法的具體用法?PHP UserRepository::editWork怎麽用?PHP UserRepository::editWork使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在App\Repositories\UserRepository的用法示例。


在下文中一共展示了UserRepository::editWork方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: saveEditedWork

 /**
  * Save an edited work item
  *
  * @param string $workId
  * @return string
  */
 public function saveEditedWork($workId = '')
 {
     try {
         //User must be logged in
         if (!$this->auth->check()) {
             //Notify error
             $this->keeper->put('notificationError', 'You must log in to continue');
             //Return to login
             redirect('/login', 'location');
         }
         //Verify work edit capabilities
         if ($this->auth->user()->works()->whereId($workId)->count() != 1) {
             //Cannot edit
             throw new Exception('You do not have permission to edit this record', 403);
         }
         //Set validation rules
         $this->form_validation->set_rules('job_title', 'Job name', 'required|xss_clean');
         $this->form_validation->set_rules('company_name', 'Company name', 'required|xss_clean');
         $this->form_validation->set_rules('date_joined', 'Date Joined', 'required|xss_clean');
         //Apply validation rules
         if ($this->form_validation->run() === false) {
             //Keep error messages
             $this->errorBag->logValidationErrors(['job_title', 'company_name', 'date_joined'])->preserveInputs();
             //Go back to  edit page user page
             redirect($this->auth->user()->profile_uri . '/edit-work/' . $workId, 'location');
         }
         //Save the edited work data
         $results = $this->userRepo->editWork($this->auth->user(), $workId, ['job_title' => $this->input->post('job_title'), 'company_name' => $this->input->post('company_name'), 'date_joined' => Carbon::createFromFormat('d/m/Y', $this->input->post('date_joined'))->format('Y-m-d 00:00:00'), 'date_left' => $this->input->post('date_left') != '' && $this->input->post('date_left') != null ? Carbon::createFromFormat('d/m/Y', $this->input->post('date_left'))->format('Y-m-d 00:00:00') : null, 'is_current' => $this->input->post('date_left') == '']);
         //Could not save
         if ($results == null) {
             //Alert error to user
             throw new Exception('Could not save data.Try again later', 422);
         }
         //Notify success
         $this->keeper->put('notificationSuccess', 'Work experience updated');
         //All ok redirect to User profile
         redirect($this->auth->user()->profile_uri . '/about', 'location');
     } catch (Exception $e) {
         //Unexpected error
         //Notify error
         $this->keeper->put('notificationError', $e->getMessage());
         //Go back to profile page
         redirect($this->auth->user()->profile_uri . '/about', 'location');
     }
 }
開發者ID:AshniSukhoo,項目名稱:UOM_connect,代碼行數:51,代碼來源:UserActionsController.php


注:本文中的App\Repositories\UserRepository::editWork方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。