diff options
Diffstat (limited to 'src/actions/app.js')
| -rw-r--r-- | src/actions/app.js | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/src/actions/app.js b/src/actions/app.js index e0b95e3..e59a75b 100644 --- a/src/actions/app.js +++ b/src/actions/app.js @@ -29,17 +29,20 @@ export const navigate = (path) => (dispatch) => { import { snapshotForums } from './firebaseFirestore.js'; var hasSubscribedPosts = false; -const loadPage = (page) => (dispatch) => { +const loadPage = (page) => (dispatch, getState) => { switch(page) { case 'home': import('../components/mao-home.js') - break; + break; + case 'compete': import('../components/mao-competitions.js'); - break; + break; + case 'tutor': import('../components/mao-tutoring.js'); - break; + break; + case 'forums': import('../components/mao-forums.js').then((module) => { if(!hasSubscribedPosts) { @@ -47,13 +50,21 @@ const loadPage = (page) => (dispatch) => { hasSubscribedPosts = true; } }); - break; + break; + case 'account': import('../components/mao-account.js'); - break; + break; + case 'admin': - import('../components/mao-admin.js'); - break; + if(getState.firebaseAuth.isAdmin) { + import('../components/mao-admin.js'); + } else { + page = 'view404'; + import('../components/my-view404.js'); + } + break; + default: page = 'view404'; import('../components/my-view404.js'); |
