当前位置: 首页>>代码示例>>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;未经允许,请勿转载。