/** * Create new account. * * @param CreateAccountRequest $request * @return \Illuminate\Contracts\Routing\ResponseFactory|\Symfony\Component\HttpFoundation\Response */ public function register(CreateAccountRequest $request) { $response = new AjaxResponse(); $roles = new Roles(); // Build user data array $data = ['email' => $request->get('email'), 'password' => bcrypt($request->get('password')), 'role_id' => $roles->getUserRoleId()]; // Insert user $user = User::create($data); // User settings UserSetting::insert(['user_id' => $user->id, 'language_id' => Settings::defaultLanguageId()]); // Create trial period UserTrialPeriod::create(['user_id' => $user->id, 'trial_period_id' => TrialPeriod::where('validity_days', 90)->first()->id]); Auth::login($user); $response->setSuccessMessage(trans('register.account_created')); return response($response->get()); }
/** * Allow admin to create new user. * * @param CreateNewUserRequest $request * @return mixed */ public function createNewUser(CreateNewUserRequest $request) { $roles = new Roles(); $user = User::create(['email' => $request->get('new_user_email'), 'password' => bcrypt($request->get('new_user_password')), 'special_user' => (bool) $request->get('make_special_user'), 'role_id' => $roles->getUserRoleId()]); // Generate user settings UserSetting::insert(['user_id' => $user->id, 'language_id' => Settings::defaultLanguageId()]); $response = new AjaxResponse(); $response->setSuccessMessage(trans('users_manager.user_created_successfully')); return response($response->get())->header('Content-Type', 'application/json'); }