Support the ongoing development of Laravel.io →
Authentication

Hi, I'm trying to find out the best way of doing this and I have no idea.

I have a users table which works really well with the basic Auth::check() method. No problems there. I'm looking to extend this so that a user can be:
confirmed true/false
admin true/false

How can I take Auth::check() and pass a filter into it to check for confirmed = true or admin = true?

Ideally I'd like to be able to use this everywhere, included the routes file where I currently use:
Route::group(['before' => 'auth'], function() ...

Any help would be gratefully received - this is always the point where I get frustrated using a new framework - and I want to do it the right way.

Last updated 2 years ago.
0
Solution

just create a new filter in app/filters.php

Route::filter('isAdmin', function() {
	if(Auth::user()->role != 'admin') {
		return Redirect::to('/');
	}
});

and use it like

Route::group(['before' => 'auth|isAdmin'], function() ...
Last updated 2 years ago.
0

Superb, thanks - I've just figured that out by playing around :)

Last updated 2 years ago.
0

Sign in to participate in this thread!

Eventy

Your banner here too?

Moderators

We'd like to thank these amazing companies for supporting us

Your logo here?

Laravel.io

The Laravel portal for problem solving, knowledge sharing and community building.

© 2025 Laravel.io - All rights reserved.