Blame view
client/routes/filters.js
977 Bytes
3b214be5e
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
/* * Route Filters * Filters for managing user access to application routes. */ /* * Define Filters */ /* * Filter: Check if a User is Logged In * If a user is not logged in and attempts to go to an authenticated route, * re-route them to the login screen. */ checkUserLoggedIn = function(){ if( !Meteor.loggingIn() && !Meteor.user() ) { Router.go('/login'); } else { this.next(); } } /* * Filter: Check if a User Exists * If a user is logged in and attempts to go to a public route, re-route * them to the main "logged in" screen. */ userAuthenticated = function(){ if( !Meteor.loggingIn() && Meteor.user() ){ Router.go('/'); } else { this.next(); } } /* * Run Filters */ Router.onBeforeAction(checkUserLoggedIn, { except: [ 'signup', 'login', 'recover-password', 'reset-password' ] }); Router.onBeforeAction(userAuthenticated, { only: [ 'signup', 'login', 'recover-password', 'reset-password' ] }); |