/**
  * @param  $input
  * @param  $roles
  * @throws GeneralException
  * @throws UserNeedsRolesException
  * @return bool
  */
 public function create($input, $roles)
 {
     $user = $this->createUserStub($input);
     DB::transaction(function () use($user, $roles) {
         if ($user->save()) {
             //User Created, Validate Roles
             $this->validateRoleAmount($user, $roles['assignees_roles']);
             //Attach new roles
             $user->attachRoles($roles['assignees_roles']);
             //Send confirmation email if requested
             if (isset($input['confirmation_email']) && $user->confirmed == 0) {
                 $this->user->sendConfirmationEmail($user->id);
             }
             event(new UserCreated($user));
             return true;
         }
         throw new GeneralException(trans('exceptions.backend.access.users.create_error'));
     });
 }
Beispiel #2
0
 /**
  * @param  $user_id
  * @param  FrontendUserRepositoryContract $user
  * @param  ResendConfirmationEmailRequest $request
  * @return mixed
  */
 public function resendConfirmationEmail($user_id, FrontendUserRepositoryContract $user, ResendConfirmationEmailRequest $request)
 {
     $user->sendConfirmationEmail($user_id);
     return redirect()->back()->withFlashSuccess(trans('alerts.backend.users.confirmation_email'));
 }
 /**
  * @param  UserRepositoryContract         $user
  * @param  UpdateProfileRequest $request
  * @return mixed
  */
 public function update(UserRepositoryContract $user, UpdateProfileRequest $request)
 {
     $user->updateProfile(access()->id(), $request->all());
     return redirect()->route('frontend.user.dashboard')->withFlashSuccess(trans('strings.frontend.user.profile_updated'));
 }