Email Login

This commit is contained in:
Georg Reisinger
2019-02-24 19:27:42 +01:00
parent f853a2bf0f
commit 3baf79e8f6
39 changed files with 3246 additions and 2982 deletions

View File

@ -8,58 +8,46 @@ var push = require("./../push/push");
var postgres = require("./../db-connect/db-connect");
// Initialize Firebase
// const config = {
// apiKey: "AIzaSyCuvwf78cmSDoZ2yS4XxHZhnjUn7yIHYfw",
// authDomain: "test-667ca.firebaseapp.com",
// databaseURL: "https://test-667ca.firebaseio.com",
// projectId: "test-667ca",
// storageBucket: "test-667ca.appspot.com",
// messagingSenderId: "221332577314"
// };
// firebase.initializeApp(config);
var admin = require('firebase-admin');
var serviceAccount = require('../login/firebaseAdminKey.json');
var firebaseAdmin = admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: 'https://test-667ca.firebaseio.com'
});
//Push
router.get('/push/:msgtoken/:message/:title', function (req, res, next) {
push.sendPush(req.params.msgtoken, req.params.title, req.params.message);
var sender = "Message Token: " + req.params.msgtoken + " Message: " + req.params.message + " Title: " + req.params.title;
res.status(200).send(sender);
push.sendPush(req.params.msgtoken, req.params.title, req.params.message);
var sender = "Message Token: " + req.params.msgtoken + " Message: " + req.params.message + " Title: " + req.params.title;
res.status(200).send(sender);
});
// Login und Dash
router.get('/', function(req, res, next) {
router.get('/', function (req, res, next) {
res.render('index');
});
router.get('/dash/:idtoken', function(req, res, next) {
router.get('/dash/:idtoken', function (req, res, next) {
// const msgtoken = req.params.msgtoken;
const token = req.params.idtoken;
var uid;
firebaseAdmin.auth().verifyIdToken(token)
.then(function(decodedToken) {
.then(function (decodedToken) {
uid = decodedToken.uid;
// HIER WEITER MACHEN
// uid ist nur hier drinen verfügbar
}).catch(function(error) {
}).catch(function (error) {
console.log(error)
});
res.render('dash');
res.render('dash');
});
@ -67,27 +55,25 @@ router.get('/dash/:idtoken', function(req, res, next) {
//GET Own shoppinglists as JSON
router.get("/myshoppinglists",async function(req, res, next) {
router.get("/myshoppinglists", async function (req, res, next) {
var token = req.query.idtoken;
console.log("/myshoppinglists idtoken: ", token)
firebaseAdmin.auth().verifyIdToken(token)
.then(async function(decodedToken) {
.then(async function (decodedToken) {
uid = decodedToken.uid;
console.log("uid", uid)
try {
//Get user id: req.session.passport.user.profile.id
res.status(200).send(await postgres.getShoppinglistsAdmin(uid));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
}).catch(function(error) {
}).catch(function (error) {
console.log(error)
});
});
//Test Funktion für Android, liefert die FirebaseAdmin Skd UID
@ -108,97 +94,89 @@ router.get("/myshoppinglists",async function(req, res, next) {
//GET Shared shoppinglists as JSON
router.get("/sharedshoppinglists", async function(req, res, next) {
router.get("/sharedshoppinglists", async function (req, res, next) {
var token = req.query.idtoken;
firebaseAdmin.auth().verifyIdToken(token)
.then(async function(decodedToken) {
.then(async function (decodedToken) {
uid = decodedToken.uid;
console.log("uid", uid)
try {
//Get user id: req.session.passport.user.profile.id
res.status(200).send(await postgres.getShoppinglistsShared(uid));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
}).catch(function(error) {
}).catch(function (error) {
console.log(error)
});
});
//GET ALL SHOPPINGLISTS
router.get("/shoppinglistsbylink", async function(req, res, next) {
router.get("/shoppinglistsbylink", async function (req, res, next) {
var token = req.query.idtoken;
firebaseAdmin.auth().verifyIdToken(token)
.then(async function(decodedToken) {
.then(async function (decodedToken) {
uid = decodedToken.uid;
console.log("uid", uid)
try {
//Get user id: req.session.passport.user.profile.id
res.status(200).send(await postgres.getShoppinglistsByLink(req.query.link));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
}).catch(function(error) {
}).catch(function (error) {
console.log(error)
});
});
//POST new shoppinglist
router.post("/shoppinglist", async function(req, res, next) {
router.post("/shoppinglist", async function (req, res, next) {
console.log("/shoppinglist idtoken: ", req.body.idtoken)
var token = req.body.idtoken;
var uid;
firebaseAdmin.auth().verifyIdToken(token)
.then(async function(decodedToken) {
.then(async function (decodedToken) {
uid = decodedToken.uid;
console.log("UID: ", uid);
console.log("So andere sachen: ", req.body.name, req.body.description);
try {
res.status(200).send(await postgres.newShoppinglist(req.body.name, req.body.description, uid, req.body.color));
sendPush("enG4tJ6LyyU:APA91bEYjUEs7Sdzvu2ivgfqtpzlg42BZLlujDSRg0WLBvfZ_oD4V7cTx2o6MVr4oAdeHaK0wttPMQ85GMMOkgM7xvbHFcwXUG4MCr8JXX16S-OV2CS4ikQ286DOHPtBotbM7pqFTvIM", "Einkaufsliste " + req.body.name + " wurde erstellt!", req.body.description)
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
}).catch(function(error) {
}).catch(function (error) {
console.log(error)
});
});
});
//GET Shoppinglist detail
router.get("/shoppinglist_json/:sl_id", async (req, res) => {
var token = req.query.idtoken;
var uid;
firebaseAdmin.auth().verifyIdToken(token)
.then(async function(decodedToken) {
.then(async function (decodedToken) {
uid = decodedToken.uid;
console.log("UID: ", uid);
try {
res.status(200).send(await postgres.displayShoppinglist(req.params.sl_id));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
}).catch(function(error) {
}).catch(function (error) {
console.log(error)
});
});
@ -210,41 +188,34 @@ postgres.displayShoppinglist("4tezJYMK");
router.delete("/shoppinglist", async (req, res) => {
try {
res.status(200).send(await postgres.deleteShoppinglist(req.body.sl_id));
sendPush("enG4tJ6LyyU:APA91bEYjUEs7Sdzvu2ivgfqtpzlg42BZLlujDSRg0WLBvfZ_oD4V7cTx2o6MVr4oAdeHaK0wttPMQ85GMMOkgM7xvbHFcwXUG4MCr8JXX16S-OV2CS4ikQ286DOHPtBotbM7pqFTvIM", "Die Einkaufsliste " + req.body.sl_id + " wurde gelöscht!", "Einkaufsliste wurde geändert")
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
});
});
//Group erstellen
router.post("/group", async (req, res) => {
try {
res.status(200).send(await postgres.addGroup(req.body.sl_id, req.body.name, req.body.color, req.body.hidden));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
});
//Item erstellen
router.post("/item", async (req, res) => {
try {
res.status(200).send(await postgres.addItem(req.body.group_id, req.body.sl_id, req.body.name, req.body.count));
}
catch (err) {
res.status(200).send(await postgres.addItem(req.body.group_id, req.body.sl_id, req.body.name, req.body.count));
} catch (err) {
res.status(400).send(await err);
}
});
router.get("/test1", (req, res) => {
res.render("test");
res.render("test");
});
router.get("/userinfo_json", (req, res) => {
@ -252,9 +223,9 @@ router.get("/userinfo_json", (req, res) => {
console.log("/userinfo_json idtoken: ", token)
firebaseAdmin.auth().verifyIdToken(token)
.then(function(decodedToken) {
.then(function (decodedToken) {
res.send(decodedToken);
}).catch(function(error) {
}).catch(function (error) {
console.log(error)
});
});
@ -263,9 +234,7 @@ router.get("/userinfo_json", (req, res) => {
router.put("/shoppinglist", async (req, res) => {
try {
res.status(200).send(await postgres.editShoppinglist(req.body.sl_id, req.body.name, req.body.description, req.body.color));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
});
@ -275,9 +244,7 @@ router.put("/shoppinglist", async (req, res) => {
router.put("/group", async (req, res) => {
try {
res.status(200).send(await postgres.editGroup(req.body.sl_id, req.body.group_id, req.body.name, req.body.color, req.body.hidden));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
});
@ -285,29 +252,23 @@ router.put("/group", async (req, res) => {
router.put("/item", async (req, res) => {
try {
res.status(200).send(await postgres.editItem(req.body.sl_id, req.body.group_id, req.body.item_id, req.body.name, req.body.count));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
});
router.delete("/group", async(req, res) => {
router.delete("/group", async (req, res) => {
try {
res.status(200).send(await postgres.deleteGroup(req.body.group_id, req.body.sl_id));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
});
router.delete("/item", async(req, res) => {
router.delete("/item", async (req, res) => {
try {
res.status(200).send(await postgres.deleteItem(req.body.item_id, req.body.group.id, req.body.sl_id));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
});
@ -317,9 +278,7 @@ router.delete("/item", async(req, res) => {
router.post("/invite", async (req, res) => {
try {
res.status(200).send(await postgres.createInvite(req.body.sl_id));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
});
@ -327,9 +286,7 @@ router.post("/invite", async (req, res) => {
router.post("/maninvite", async (req, res) => {
try {
res.status(200).send(await postgres.manInvite(req.body.sl_id, req.body.uid));
}
catch(err) {
} catch (err) {
res.status(400).send(err);
}
@ -339,9 +296,7 @@ router.post("/maninvite", async (req, res) => {
router.delete("/member", (req, res) => {
try {
postgres.removeMember(req.body.uid, req.body.sl_id)
}
catch(err) {
} catch (err) {
return err;
}
});
@ -355,56 +310,50 @@ router.post("/invitemember", (req, res) => {
var token = req.body.idtoken;
var uid;
firebaseAdmin.auth().verifyIdToken(token)
.then(async function(decodedToken) {
.then(async function (decodedToken) {
uid = decodedToken.uid;
try {
console.log("Route LInk inv", req.body.link);
console.log("Route LInk inv", req.body.link);
res.status(200).send(await postgres.verifyInvite(req.body.link, uid));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
}).catch(function(error) {
}).catch(function (error) {
console.log(error)
});
});
//Update User
router.post("/user", async function(req, res, next) {
router.post("/user", async function (req, res, next) {
console.log("/shoppinglist idtoken: ", req.body.idtoken)
var token = req.body.idtoken;
var uid;
firebaseAdmin.auth().verifyIdToken(token)
.then(async function(decodedToken) {
.then(async function (decodedToken) {
uid = decodedToken.uid;
console.log("UID: ", uid);
console.log("So andere sachen: ", req.body.name, req.body.description);
try {
res.status(200).send(await postgres.updateUser(uid, req.body.message_id, decodedToken.name, decodedToken.picture, decodedToken.email));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
}).catch(function(error) {
}).catch(function (error) {
console.log(error)
});
});
router.get("/users", async (req, res) => {
try {
res.status(200).send(await postgres.searchUsers(req.query.search));
}
catch(err) {
res.status(200).send(await postgres.searchUsers(req.query.search));
} catch (err) {
res.status(400).send(err);
}
});
@ -417,19 +366,17 @@ router.post("/donepurchases", (req, res) => {
var token = req.query.idtoken;
var uid;
firebaseAdmin.auth().verifyIdToken(token)
.then(async function(decodedToken) {
.then(async function (decodedToken) {
uid = decodedToken.uid;
try {
console.log("test");
}
catch(err) {
} catch (err) {
console.error(error);
}
}).catch( async function(error) {
}).catch(async function (error) {
console.log(error)
});
});
@ -438,53 +385,49 @@ router.get("/donepurchases", (req, res) => {
var token = req.query.idtoken;
var uid;
firebaseAdmin.auth().verifyIdToken(token)
.then(async function(decodedToken) {
.then(async function (decodedToken) {
uid = decodedToken.uid;
try {
res.status(200).send(await postgres.getDonePurchases(uid));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
}).catch( async function(error) {
}).catch(async function (error) {
console.log(error)
});
});
//OCR Scan
router.get("/scan/", async (req, res,) => {
router.get("/scan/", async (req, res, ) => {
res.render("ocrscan");
});
router.post("/dones", async function(req, res, next) {
router.post("/dones", async function (req, res, next) {
console.log("/shoppinglist idtoken: ", req.body.idtoken)
var token = req.body.idtoken;
var uid;
firebaseAdmin.auth().verifyIdToken(token)
.then(async function(decodedToken) {
.then(async function (decodedToken) {
uid = decodedToken.uid;
console.log("UID: ", uid);
console.log("So andere sachen: ", req.body.name, req.body.description);
try {
res.status(200).send(await postgres.moveDoneItems(uid, req.body.sl_id, req.body.billcontent));
}
catch(err) {
} catch (err) {
res.status(400).send(await err);
}
}).catch(function(error) {
}).catch(function (error) {
console.log(error)
});
});
});
module.exports = router;
module.exports = router;

View File

@ -2,8 +2,8 @@ var express = require('express');
var router = express.Router();
/* GET users listing. */
router.get('/', function(req, res, next) {
router.get('/', function (req, res, next) {
res.send('respond with a resource');
});
module.exports = router;
module.exports = router;