group( function () { Route::get( '/dashboard', function () { // return view('dashboard'); return redirect( "http://{$_SERVER['HTTP_HOST']}" ); } )->name( 'dashboard' ); Route::get( '/logout', function () { auth()->guard( 'web' )->logout(); return redirect( "http://{$_SERVER['HTTP_HOST']}" ); } ); } ); // Routes accessible only to authenticated WordPress users Route::middleware( [ 'CheckWordPressAuthenticated', ] )->group( function () { Route::get( '/wordpress-authenticated', function () { // return view('wordpress-authenticated'); return response()->json( [ 'message' => '這裡是 WordPress 認證後的頁面', ] ); } )->name( 'wordpress-authenticated' ); Route::get( '/import-students', EditStudent::class)->name( 'import-students' ); Route::get( '/students-list', StudentsList::class)->name( 'students-list' ); } ); Route::get( '/forgot-password', ForgotPassword::class)->name( 'password.request' ); use Illuminate\Http\Request; use App\Models\User; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Password; use Illuminate\Auth\Events\PasswordReset; use Illuminate\Support\Str; Route::post( '/reset-password', function (Request $request) { $request->validate( [ 'token' => 'required', // 'email' => 'required|email', 'school_no' => 'required|regex:/^[a-z]{2}\d{6}$/', 'password' => 'required|min:8|confirmed', ] ); $status = Password::reset( $request->only( [ 'school_no', 'password', 'password_confirmation', 'token' ] ), function (User $user, string $password) { $user->forceFill( [ 'password' => Hash::make( $password ) ] )->setRememberToken( Str::random( 60 ) ); $user->save(); event( new PasswordReset( $user ) ); } ); return $status === Password::PasswordReset ? redirect()->route( 'login' )->with( 'status', __( $status ) ) : back()->withErrors( [ 'email' => [ __( $status ) ] ] ); } )->middleware( 'guest' )->name( 'password.update' );