aboutsummaryrefslogtreecommitdiff
path: root/src/actions/app.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/actions/app.js')
-rw-r--r--src/actions/app.js27
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');