В настоящее время я работаю в системе, где люди могут подать запрос на регистрацию. Администратор должен будет принять запрос, чтобы пользователь мог войти в систему. В моей базе данных у меня есть поле с именем is_request
, и при каждой регистрации это поле устанавливается по умолчанию на 1 (по умолчанию устанавливается на 1 в базе данных), что означает да. Когда пользователь с этим полем, установленным в 1, пытается войти в систему, он должен быть уведомлен, что его учетная запись еще не активирована. Как я могу выполнить sh это?
Когда пользователь пытается зарегистрироваться, происходит следующее:
protected function create(array $data)
{
$users = User::where('role_id', 1)->get();
$user = User::create([
'firstname' => $data['firstname'],
'lastname' => $data['lastname'],
'email' => $data['email'],
'role_id' => 3,
'activated' => 0,
'user_token' => Str::random(32),
'password' => Hash::make($data['password']),
]);
foreach($users as $admin) {
$admin->notify(new registerRequest($user));
}
Mail::to($user->email)->send(new RegisterRequestSend($user));
return $user;
}
И когда администратор в бэкэнде «принимает» запрос в поле is_request
будет установлен в 0, и пользователь должен иметь возможность войти в приложение.
Контроллер входа выглядит следующим образом
class LoginController extends Controller
{
/*
|--------------------------------------------------------------------------
| Login Controller
|--------------------------------------------------------------------------
|
| This controller handles authenticating users for the application and
| redirecting them to your home screen. The controller uses a trait
| to conveniently provide its functionality to your applications.
|
*/
use AuthenticatesUsers;
/**
* Where to redirect users after login.
*
* @var string
*/
protected $redirectTo = RouteServiceProvider::HOME;
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest')->except('logout');
}
}
Update :: DB Table