Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- const functions = require("firebase-functions");
- const admin = require("firebase-admin");
- admin.initializeApp();
- const adminsPath = "/Users/{uid}/Status/Admin";
- exports.manageAdminsListUpdate = functions.database.ref(adminsPath)
- .onUpdate((snapshot, context) => {
- const ref = admin.database().ref("Admins/" + context.params.uid);
- if (snapshot.after.val() === null || snapshot.after.val() === false)
- return ref.remove();
- else
- return ref.set(true);
- });
- exports.manageAdminsListAdd = functions.database.ref(adminsPath)
- .onCreate((snapshot, context) => {
- const ref = admin.database().ref("Admins/" + context.params.uid);
- if (snapshot.val() === false)
- return ref.remove();
- else
- return ref.set(true);
- });
- exports.manageAdminListRemove = functions.database.ref(adminsPath)
- .onDelete((snapshot, context) => {
- return admin.database().ref("Admins/" + context.params.uid).remove();
- });
- exports.reactToNewProposedWord = functions.database.ref("/Proposed/{lang}/{word}")
- .onCreate((snapshot, context) => {
- return admin.database().ref("/Admins/")
- .on('value', (valueSnapshot) => {
- if (valueSnapshot === null)
- return;
- const payload = {
- notification: {
- title: 'New word has been proposed',
- body: 'The word \'' + context.word + '\' has been proposed'
- }
- };
- valueSnapshot.forEach(child => {
- const key = child.key();
- const token = await admin.database().ref("Users/" + key + "/Messaging/Token").once('value);
- await admin.messaging().sendToDevice(token, payload);
- });
- });
- });
- //# sourceMappingURL=index.js.map
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement