diff options
Diffstat (limited to 'src/actions/firebase.js')
| -rw-r--r-- | src/actions/firebase.js | 206 |
1 files changed, 0 insertions, 206 deletions
diff --git a/src/actions/firebase.js b/src/actions/firebase.js deleted file mode 100644 index d93e227..0000000 --- a/src/actions/firebase.js +++ /dev/null @@ -1,206 +0,0 @@ -import { firestore, auth } from '../firebase.js'; - -//Start Firbase Auth -export const AUTH_FAIL = 'AUTH_FAIL'; -export const AUTH_SUCCESS = 'AUTH_SUCCESS'; -export const FETCH_DIVISON = 'FETCH_DIVISON'; -export const UPDATE_DIVISON = 'UPDATE_DIVISON'; -export const AUTH_SIGN_OUT = 'AUTH_SIGN_OUT'; -export const CREATE_ACCOUNT = 'CREATE_ACCOUNT'; -export const ADMIN_LISTENER = 'ADMIN_LISTENER'; -export const IS_ADMIN = 'IS_ADMIN'; -export const ADMIN_CONTROLS = 'ADMIN_CONTROLS'; -export const UPDATE_ADMIN = 'UPDATE_ADMIN'; -export const SET_USER_DATA = 'SET_USER_DATA'; - - - -//End Firebase Auth - -//Start Firebase Firestore -export const SNAPSHOT_HOURS = 'SNAPSHOT_HOURS'; -export const UPDATE_HOURS = 'UPDATE_HOURS'; - -export const snapshotHours = () => (dispatch, getState) => { - - const currentState = getState().firebase; - if(currentState.initialized) { - var totalHours; - var docRefUsers = firestore.collection('users').doc(currentState.uid); - var docRefReq = firestore.collection('requests').where('uid', '==', currentState.uid); - - docRefUsers.onSnapshot((doc) => { - totalHours = doc.data().hours; - - docRefReq.onSnapshot((query) => { - var requestedHours = 0; - query.forEach((docs) => { - requestedHours += docs.data().time; - }); - dispatch(updateHours(totalHours, requestedHours)); - }); - }); - } - - - -} - -export const updateHours = (hours, reqHours) => { - return { - type: 'UPDATE_HOURS', - approvedHours: hours, - requestedHours: reqHours - } -} - -export const REGISTER_COMP = 'REGISTER_COMP'; -export const SNAPSHOT_REGISTERED_COMPETITIONS = 'SNAPSHOT_REGISTERED_COMPETITIONS'; -export const UPDATE_REGISTERED_COMPETITIONS = 'UPDATE_REGISTERED_COMPETITIONS'; -export const SNAPSHOT_ADMIN_COMP_LIST = 'SNAPSHOT_ADMIN_COMP_LIST'; -export const UPDATE_ADMIN_COMP_LIST = 'UPDATE_ADMIN_COMP_LIST'; - - - -export const updateRegisteredCompetitions = (registeredComps) => { - return { - type: UPDATE_REGISTERED_COMPETITIONS, - payload: registeredComps - } -} - -export const snapshotAdminCompList = () => (dispatch) => { - var docRef = firestore.collection('competitions'); - docRef.onSnapshot((querySnapshot) => { - var compList = []; - querySnapshot.forEach((doc) => { - var divisonData = []; - for(var i = 0; i < doc.data().uids.length; i++) { - var docRefDivison = firestore.collection('users').doc(doc.data().uids[i]); - docRefDivison.get().then((docUser) => { - divisonData.push(docUser.data().divison); - }); - } - compList.push({ - ...doc.data(), - name: doc.id, - divisons: divisonData - }); - }); - dispatch(updateAdminCompList(compList)); - }); -} - -export const updateAdminCompList = (compList) => { - return { - type: UPDATE_ADMIN_COMP_LIST, - payload: compList - } -} - -export const REQUEST_HOURS = 'REQUEST_HOURS'; -export const ADMIN_APPROVE_HOURS = 'ADMIN_APPROVE_HOURS'; -export const ADMIN_REJECT_HOURS = 'ADMIN_REJECT_HOURS'; -export const ADMIN_DELETE_REQUEST = 'ADMIN_DELETE_REQUEST'; -export const SNAPSHOT_ADMIN_REQUESTS = 'SNAPSHOT_ADMIN_REQUESTS'; -export const UPDATE_ADMIN_REQUESTS = 'UPDATE_ADMIN_REQUESTS'; - -export const requestHours = (_time, _trainee, _date) => (dispatch, getState) => { - var docRef = firestore.collection('requests'); - const _uid = getState().firebase.uid; - const _email = getState().firebase.userEmail; - - docRef.add({ - time: _time, - trainee: _trainee, - day: _date, - uid: _uid, - email: _email - }); -} - -export const snapshotAdminRequests = () => (dispatch) => { - var docRef = firestore.collection('requests'); - - docRef.onSnapshot((querySnapshot) => { - var requestList = []; - querySnapshot.forEach((doc) => { - requestList.push({ - ...doc.data(), - docId: doc.id - }); - }); - dispatch(updateAdminRequests(requestList)); - }); -} - -export const updateAdminRequests = (requests) => { - return { - type: UPDATE_ADMIN_REQUESTS, - payload: requests - } -} - -export const adminApproveHours = (_uid, _time, _id) => (dispatch) => { - - var docRef = firestore.collection('users').doc(_uid); - - docRef.get().then((doc) => { - if(doc.exists) { - docRef.update({ - hours: (doc.data().hours + _time) - }).catch((error) => { - alert(error); - }); - } - }); - - dispatch(adminDeleteRequest(_id)); -} - -export const adminRejectHours = (_id) => (dispatch) => { - dispatch(adminDeleteRequest(_id)); -} - -export const adminDeleteRequest = (_id) => (dispatch) => { - var docRef = firestore.collection('requests').doc(_id); - docRef.delete().then(() => { - //console.log('Deleted request with id ' + _id); - }); -} - - -export const CREATE_FORUM_POST = 'CREATE_FORUM_POST'; -export const SNAPSHOT_FORUM = 'SNAPSHOT_FORUM'; -export const UPDATE_FORUM_POSTS = 'UPDATE_FORUM_POSTS'; - -export const createForumPost = (_subject, _content) => (dispatch, getState) => { - var docRef = firestore.collection('posts'); - const userEmail = getState().firebase.userEmail; - - docRef.add({ - email: userEmail, - subject: _subject, - content: _content - }); -} - -export const snapshotForums = () => (dispatch) => { - var docRef = firestore.collection('posts'); - - docRef.onSnapshot((query) => { - var forumPosts = []; - query.forEach((doc) => { - forumPosts.push(doc.data()); - }); - dispatch(updateForumPosts(forumPosts)); - }); -} - -export const updateForumPosts = (_forumPosts) => { - return { - type: UPDATE_FORUM_POSTS, - payload: _forumPosts - } -} -//End Firebase Firestore |
