Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //set JSON content type and CORS headers for the response
- response.header('Content-Type','application/json');
- response.header('Access-Control-Allow-Origin', '*');
- response.header('Access-Control-Allow-Headers', '*');
- //respond to CORS preflight requests
- if (request.method == 'OPTIONS') {
- response.status(204).send('');
- }
- // pull in firebase
- var firebase = require('firebase');
- require("firebase/firestore");
- let config = {
- // config stuff here
- }
- if (!firebase.apps.length) {
- firebase.initializeApp(config);
- }
- // grab doc id from request
- var id = request.query.docId;
- // declare connection to firestore
- var db = firebase.firestore();
- // grab user from request
- var docRef = db.collection("clients").doc(id);
- // grab the users server and id
- docRef.get().then(function(doc) {
- // grab the account id
- var accountId = doc.data().accountId;
- // declare master variable that will be returned
- var toReturn = [];
- // declare variables that will be returned in toReturn
- var gpmGames = [];
- var cspmGames = [];
- var damageGames = [];
- var damageToChampionsGames = [];
- var damageTakenGames = [];
- var wardsGames = [];
- db.collection('games')
- .where('accountId', '==', accountId)
- .get()
- .then((res) => {
- var games = res.docs;
- // iterate through games and get averages and totals to return
- games.forEach(function(game) {
- gpmGames.push(game.data().gpm);
- cspmGames.push(game.data().cspm);
- damageGames.push(game.data().damage);
- damageToChampionsGames.push(game.data().damagetochampions);
- damageTakenGames.push(game.data().damagerecieved);
- wardsGames.push(game.data().wards);
- });
- });
- toReturn['gpmGames'] = gpmGames;
- toReturn['cspmGames'] = cspmGames;
- toReturn['damageGames'] = damageGames;
- toReturn['damageToChampionsGames'] = damageToChampionsGames;
- toReturn['damageTakenGames'] = damageTakenGames;
- toReturn['wardsGames'] = wardsGames;
- response.status(200).send(toReturn);
- });
Add Comment
Please, Sign In to add comment