Devise\Users\UserManager::createUser PHP Method

createUser() public method

Create a new user
public createUser ( array $input ) : DvsUser
$input array
return DvsUser
    public function createUser($input)
    {
        $validator = $this->Validator->make($input, $this->createRules(), $this->messages);
        if ($validator->passes()) {
            $user = $this->DvsUser;
            $user->activated = array_get($input, 'activated', false);
            $user->name = array_get($input, 'name', null);
            $user->email = array_get($input, 'email');
            $user->username = array_get($input, 'username', null);
            $user->password = $this->Hash->make(array_get($input, 'password'));
            $user->save();
            $user->groups()->sync([array_get($input, 'group_id', [])]);
            return $user;
        }
        $this->errors = $validator->errors()->all();
        $this->message = "There were validation errors.";
        return false;
    }

Usage Example

Example #1
0
 /**
  * Request a new user be created via admin UI.
  *
  * @param  array $input
  * @return Redirector
  */
 public function requestCreateUser($input)
 {
     if ($this->UserManager->createUser($input)) {
         return $this->Redirect->route('dvs-users')->with('message', 'User successfully created');
     }
     return $this->Redirect->route('dvs-users-create')->withInput()->withErrors($this->UserManager->errors)->with('message', $this->UserManager->message);
 }