для метода redirectTo () он будет срабатывать только тогда, когда мы используем метод POST для входа в систему.
внутри метода redirectTo () ваше условие проверки, а затем вы возвращаете '/ login'; который он перенаправит на страницу входа. но на этот раз вы уже вошли в систему, тогда при входе в систему он проверит, входит ли пользователь, а затем перенаправляет URL-адрес, который мы настраиваем в LoginController и защищаем $ redirectTo; он не будет вызывать метод redirectTo (). Потому что на этот раз мы используем перенаправление с использованием метода GET, а не POST.
если вы хотите поставить проверку на метод redirectTo (), вы можете попробовать следующий код:
protected function redirectTo()
{
$user = Auth::user()->id;
$userOrg = UserOrganization::where('user_id', $user)->first();
$org = Organization::where('id', $userOrg->org_id)->first();
if ($org->allow_org_login == 0) {
Auth::logout(); // logout user before redirect
return '/login';
} else {
if(Auth::user()->has_changed_temp_password == false)
{
// depend on you choice need to logout or not
DB::table('users')->where('id', $user)->update(['last_login' => Carbon::now()]);
DB::table('users')->where('id', $user)->increment('total_logins');
return '/user/password/change';
} else {
// depend on you choice need to logout or not
DB::table('users')->where('id', $user)->update(['last_login' => Carbon::now()]);
DB::table('users')->where('id', $user)->increment('total_logins');
return '/overview';
}
}
}
, но для моего варианта я буду создайте новое промежуточное ПО для обработки этого.