コード例 #1
0
ファイル: CrudFunctions.php プロジェクト: paulvl/daylight
 public function updateOrFail($class, $modelId, Request $request, $returnModelInstance = false, array $rules = array())
 {
     $requestData = $request->all();
     $updateRules = count($rules) > 0 ? $rules : (isset($this->updateRules) ? $this->updateRules : array());
     $validator = $this->validator($requestData, $updateRules);
     if ($validator->fails()) {
         return responseJsonUnprocessableEntity(['message' => $this->contentCannotBeParsedMsg, 'errors' => shrinkValidationErrors($validator->errors()->getMessages())]);
     }
     if (method_exists($this, 'update')) {
         $modelInstance = $this->update($request, $modelId);
     } else {
         $modelInstance = $class::find($modelId);
         foreach ($requestData as $key => $value) {
             $modelInstance->{$key} = $value;
         }
         $modelInstance->save();
     }
     if ($modelInstance instanceof ExecutionError) {
         $response = ['message' => $modelInstance->message];
         if ($returnModelInstance === true) {
             $response['data'] = $modelInstance->data->toArray();
         }
         return responseJsonForbidden($response);
     }
     $response = ['message' => $this->updateSuccessMsg];
     if ($returnModelInstance === true) {
         $response['data'] = $modelInstance->toArray();
     }
     return responseJsonOk($response);
 }
コード例 #2
0
 /**
  * Display the password reset view for the given token.
  *
  * @param  string  $token
  * @return \Illuminate\Http\Response
  */
 public function getConfirm($token = null)
 {
     if (is_null($token)) {
         return responseJsonNotFound(['message' => trans(Confirmation::NULL_TOKEN), 'errors' => trans(Confirmation::NULL_TOKEN)]);
     }
     $credentials = ['token' => $token];
     $response = Confirmation::confirm($credentials, function ($user) {
         $this->confirmAccount($user);
     });
     switch ($response) {
         case Confirmation::ACCOUNT_CONFIRMATION:
             return responseJsonOk(['message' => trans($response), 'data' => null]);
         default:
             return responseJsonUnprocessableEntity(['message' => trans($response), 'errors' => ['email' => trans($response)]]);
     }
 }