aboutsummaryrefslogtreecommitdiff
path: root/src/actions/firebase.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/actions/firebase.js')
-rw-r--r--src/actions/firebase.js38
1 files changed, 27 insertions, 11 deletions
diff --git a/src/actions/firebase.js b/src/actions/firebase.js
index 1040554..8cc7d39 100644
--- a/src/actions/firebase.js
+++ b/src/actions/firebase.js
@@ -20,7 +20,7 @@ export const signIn = (_email, _password) => (dispatch) => {
var providerData = user.providerData;
*/
dispatch(authSuccess(user));
- dispatch(getHours())
+ dispatch(snapshotHours())
dispatch(snapshotRegisteredCompetitions());
})
.catch((error) => {
@@ -65,21 +65,38 @@ export const authSignOut = () => {
//End Firebase Auth
//Start Firebase Firestore
-export const GET_HOURS = 'GET_HOURS';
+export const SNAPSHOT_HOURS = 'SNAPSHOT_HOURS';
export const UPDATE_HOURS = 'UPDATE_HOURS';
-export const getHours = () => (dispatch, getState) => {
+export const snapshotHours = () => (dispatch, getState) => {
+
+ alert('running');
+
const currentState = getState().firebase;
- alert('ran');
if(currentState.initialized) {
- var docRef = firestore.collection('users').doc(currentState.uid);
- docRef.onSnapshot((doc) => {
- dispatch(updateHours(doc.data().hours, doc.data().requestedHours));
+ 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) => {
+ console.log(reqHours);
return {
type: 'UPDATE_HOURS',
approvedHours: hours,
@@ -87,9 +104,9 @@ export const updateHours = (hours, reqHours) => {
}
}
-export const REGISTER_COMP = 'REGISTER_COMP';
-export const PULL_REGISTERED_COMPETITIONS = 'PULL_REGISTERED_COMPETITIONS';
-export const UPDATE_REGISTERED_COMPETITIONS = 'UPDATE_REGISTERED_COMPETITIONS';
+export const REGISTER_COMP = 'REGISTER_COMP';
+export const SNAPSHOT_REGISTERED_COMPETITIONS = 'SNAPSHOT_REGISTERED_COMPETITIONS';
+export const UPDATE_REGISTERED_COMPETITIONS = 'UPDATE_REGISTERED_COMPETITIONS';
export const registerComp = (compName) => (dispatch, getState) => {
var docRef = firestore.collection('competitions').doc(compName);
@@ -112,7 +129,6 @@ export const registerComp = (compName) => (dispatch, getState) => {
}
export const snapshotRegisteredCompetitions = () => (dispatch, getState) =>{
-
var docRef = firestore.collection('competitions');
docRef.onSnapshot((querySnapshot) => {
var registeredComps = [];