Esempio n. 1
0
 /**
  * @param CreateUserRequest|UpdateUserRequest $request
  * @param IValidator[] $additionalValidators
  * @return array|string[]
  */
 private function Validate($request, $additionalValidators = array())
 {
     $validators = $additionalValidators;
     $validators[] = new RequestRequiredValueValidator($request->firstName, 'firstName');
     $validators[] = new RequestRequiredValueValidator($request->lastName, 'lastName');
     $validators[] = new RequestRequiredValueValidator($request->userName, 'userName');
     $validators[] = new RequestRequiredValueValidator($request->timezone, 'timezone');
     $validators[] = new EmailValidator($request->emailAddress);
     $attributes = array();
     foreach ($request->GetCustomAttributes() as $attribute) {
         $attributes[] = new AttributeValue($attribute->attributeId, $attribute->attributeValue);
     }
     $validators[] = new AttributeValidator($this->attributeService, CustomAttributeCategory::USER, $attributes);
     $errors = array();
     /** @var $validator IValidator */
     foreach ($validators as $validator) {
         $validator->Validate();
         if (!$validator->IsValid()) {
             foreach ($validator->Messages() as $message) {
                 $errors[] = $message;
             }
         }
     }
     return $errors;
 }
 public function testValidatesUpdateRequest()
 {
     $request = UpdateUserRequest::Example();
     $session = new FakeWebServiceUserSession(123);
     $errors = array('error');
     $this->requestValidator->expects($this->once())->method('ValidateUpdateRequest')->with($this->equalTo(1), $this->equalTo($request))->will($this->returnValue($errors));
     $result = $this->controller->Update(1, $request, $session);
     $this->assertFalse($result->WasSuccessful());
     $this->assertEquals($errors, $result->Errors());
 }
Esempio n. 3
0
 /**
  * @param $id
  * @param UpdateUserRequest $request
  * @return mixed
  */
 public function update($id, UpdateUserRequest $request)
 {
     $this->users->update($id, $request->except('assignees_roles', 'permission_user'), $request->only('assignees_roles'), $request->only('permission_user'));
     return redirect()->route('admin.access.users.index')->withFlashSuccess('The user was successfully updated.');
 }
 public function testUpdateValidatesAttributes()
 {
     $request = UpdateUserRequest::Example();
     $result = new AttributeServiceValidationResult(false, array('error'));
     $this->attributeService->expects($this->once())->method('Validate')->with($this->equalTo(CustomAttributeCategory::USER), $this->equalTo(array(new AttributeValue($request->customAttributes[0]->attributeId, $request->customAttributes[0]->attributeValue))))->will($this->returnValue($result));
     $errors = $this->validator->ValidateUpdateRequest(1, $request);
     $this->assertTrue(count($errors) == 1);
 }
 public function update($id, UpdateUserRequest $request)
 {
     $user = $this->userrepository->findOrFail($id);
     if ($request->hasFile('afbeelding')) {
         $file = $request->file('afbeelding');
         $destinationPath = 'images/users';
         $filename = $file->getClientOriginalName();
         $encoded = urlencode($filename);
         $upload_success = $file->move($destinationPath, $encoded);
         $image = str_replace('\\', '/', $upload_success);
     } else {
         $image = $user->afbeelding;
     }
     $user->update(['voornaam' => $request->get('voornaam'), 'achternaam' => $request->get('achternaam'), 'email' => $request->get('email'), 'password' => bcrypt($request->get('password')), 'afbeelding' => $image, 'role_id' => $request->get('role_id'), 'over' => $request->get('over'), 'facebook' => $request->get('facebook'), 'twitter' => $request->get('twitter'), 'googleplus' => $request->get('googleplus'), 'linkedin' => $request->get('linkedin')]);
     return redirect('jandje/users');
 }