filters.coffee
857 Bytes
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
###
Route Filters
Filters for managing user access to application routes.
###
# Define Filters
# 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 = ->
if not Meteor.loggingIn() or Meteor.user()
Router.go '/login'
pause()
# 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 = ->
if not Meteor.loggingIn() and Meteor.user()
Router.go '/'
# Run Filters
Router.onBeforeAction checkUserLoggedIn, except: [
'signup',
'login',
'recover-password',
'reset-password'
]
Router.onBeforeAction userAuthenticated, only: [
'signup',
'login',
'recover-password',
'reset-password'
]