You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 line
1.1KB

  1. <?php
  2. namespace App\Http\Controllers\Users;
  3. use App\Models\User;
  4. use Framework\Routing\Router;
  5. class RegisterUserController
  6. {
  7. public function handle(Router $router)
  8. {
  9. secure();
  10. $data = validate($_POST, [
  11. 'name' => ['required'],
  12. 'email' => ['required', 'email'],
  13. 'password' => ['required', 'min:10'],
  14. ], 'register_errors');
  15. $user = new User();
  16. $user->name = $data['name'];
  17. $user->email = $data['email'];
  18. $user->password = password_hash($data['password'], PASSWORD_BCRYPT);
  19. $user->save();
  20. session()->put('registered', true);
  21. session()->put('user_id', $user->id);
  22. app('queue')->push(function ($name, $email) {
  23. app('email')
  24. ->to($email)
  25. ->subject('Welcome to the warehouse')
  26. ->text("Hi {$name}, your account is ready. You can now create locations and manage stock.")
  27. ->send();
  28. }, $user->name, $user->email);
  29. return redirect($router->route('show-dashboard'));
  30. }
  31. }

Powered by TurnKey Linux.