Fehler beoben
This commit is contained in:
parent
524bf627e8
commit
ad1e6f6d08
@ -135,7 +135,7 @@ async function newShoppinglist(name, description, username, color) {
|
|||||||
//rename Shoppinglist
|
//rename Shoppinglist
|
||||||
|
|
||||||
|
|
||||||
async function editShoppinglist(sl_id, newname, newdescription, newcolor) {
|
async function editShoppinglist(sl_id, newname, newdescription, newcolor, uid) {
|
||||||
try {
|
try {
|
||||||
let shoppinglist = await query('SELECT row_to_json("Shoppinglist") AS obj FROM "Shoppinglist" WHERE sl_id = $1;', [sl_id]);
|
let shoppinglist = await query('SELECT row_to_json("Shoppinglist") AS obj FROM "Shoppinglist" WHERE sl_id = $1;', [sl_id]);
|
||||||
|
|
||||||
@ -150,6 +150,8 @@ async function editShoppinglist(sl_id, newname, newdescription, newcolor) {
|
|||||||
if (shoppinglist.color != newcolor && newcolor != undefined) {
|
if (shoppinglist.color != newcolor && newcolor != undefined) {
|
||||||
await nonQuery('UPDATE "Shoppinglist" SET color = $1 WHERE sl_id = $2;', [newcolor, sl_id]);
|
await nonQuery('UPDATE "Shoppinglist" SET color = $1 WHERE sl_id = $2;', [newcolor, sl_id]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return getShoppinglistsAdmin(uid);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(error);
|
console.error(error);
|
||||||
}
|
}
|
||||||
@ -177,7 +179,7 @@ async function displayShoppinglist(sl_id) {
|
|||||||
let members = await query('SELECT row_to_json("User") as obj FROM "User" JOIN "Shoppinglist_member" USING (username) WHERE sl_id = $1', [sl_id]);
|
let members = await query('SELECT row_to_json("User") as obj FROM "User" JOIN "Shoppinglist_member" USING (username) WHERE sl_id = $1', [sl_id]);
|
||||||
let admin = await query('SELECT row_to_json("User") as obj FROM "User" JOIN "Shoppinglist_admin" USING (username) WHERE sl_id = $1', [sl_id]);
|
let admin = await query('SELECT row_to_json("User") as obj FROM "User" JOIN "Shoppinglist_admin" USING (username) WHERE sl_id = $1', [sl_id]);
|
||||||
|
|
||||||
return items_in_groups(groups, items, sl_id, admin[0].username, admin[0].message_id, members, shoppinglist[0].name, shoppinglist[0].description, shoppinglist[0].invitelink);
|
return items_in_groups(groups, items, sl_id, admin, members, shoppinglist[0].name, shoppinglist[0].description, shoppinglist[0].invitelink, shoppinglist[0].color);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(error);
|
console.error(error);
|
||||||
}
|
}
|
||||||
@ -246,6 +248,8 @@ async function editGroup(sl_id, group_id, name, color, hidden) {
|
|||||||
await nonQuery('UPDATE "Group" SET hidden = $1 WHERE group_id = $2 AND sl_id = $3;', [hidden, group_id, sl_id]);
|
await nonQuery('UPDATE "Group" SET hidden = $1 WHERE group_id = $2 AND sl_id = $3;', [hidden, group_id, sl_id]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return displayShoppinglist(sl_id);
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(error);
|
console.error(error);
|
||||||
}
|
}
|
||||||
@ -267,6 +271,8 @@ async function editItem(sl_id, group_id, item_id, name, count) {
|
|||||||
if (item.count != count && count != undefined) {
|
if (item.count != count && count != undefined) {
|
||||||
await nonQuery('UPDATE "Item" SET count = $1 WHERE item_id = $2 AND group_id = $3 AND sl_id = $4', [count, item_id, group_id, sl_id]);
|
await nonQuery('UPDATE "Item" SET count = $1 WHERE item_id = $2 AND group_id = $3 AND sl_id = $4', [count, item_id, group_id, sl_id]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return displayShoppinglist(sl_id);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(error);
|
console.error(error);
|
||||||
}
|
}
|
||||||
@ -286,7 +292,7 @@ async function deleteGroup(group_id, sl_id) {
|
|||||||
console.error(error);
|
console.error(error);
|
||||||
}
|
}
|
||||||
|
|
||||||
push.sendMultiplePush(await getmessageids(sl_id), "Gruppe wurde gelöscht!", "Die Gruppe " + name + " wurde gelöscht!");
|
// push.sendMultiplePush(await getmessageids(sl_id), "Gruppe wurde gelöscht!", "Die Gruppe " + name + " wurde gelöscht!");
|
||||||
|
|
||||||
return displayShoppinglist(sl_id);
|
return displayShoppinglist(sl_id);
|
||||||
}
|
}
|
||||||
@ -299,7 +305,7 @@ async function deleteItem(item_id, group_id, sl_id) {
|
|||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(error);
|
console.error(error);
|
||||||
}
|
}
|
||||||
push.sendMultiplePush(await getmessageids(sl_id), "Item wurde gelöscht!", "Das Item " + name + " wurde gelöscht!");
|
//push.sendMultiplePush(await getmessageids(sl_id), "Item wurde gelöscht!", "Das Item " + name + " wurde gelöscht!");
|
||||||
|
|
||||||
return displayShoppinglist(sl_id);
|
return displayShoppinglist(sl_id);
|
||||||
}
|
}
|
||||||
@ -347,8 +353,8 @@ async function moveDoneItems(uid, sl_id, billcontent) {
|
|||||||
|
|
||||||
async function moveDoneItemMan(uid, sl_id, group_id, item_id) {
|
async function moveDoneItemMan(uid, sl_id, group_id, item_id) {
|
||||||
try {
|
try {
|
||||||
let name = await query('SELECT row_to_json("Item") as obj FROM "Item" WHERE item_id = $3 AND group_id = $2 AND sl_id = $1', [sl_id, group_id, item_id]);
|
let item = await query('SELECT row_to_json("Item") as obj FROM "Item" WHERE item_id = $3 AND group_id = $2 AND sl_id = $1', [sl_id, group_id, item_id]);
|
||||||
console.log(name);
|
|
||||||
var today = new Date();
|
var today = new Date();
|
||||||
var dd = today.getDate();
|
var dd = today.getDate();
|
||||||
var mm = today.getMonth() + 1;
|
var mm = today.getMonth() + 1;
|
||||||
@ -365,9 +371,14 @@ async function moveDoneItemMan(uid, sl_id, group_id, item_id) {
|
|||||||
today = mm + '/' + dd + '/' + yyyy;
|
today = mm + '/' + dd + '/' + yyyy;
|
||||||
|
|
||||||
await nonQuery('INSERT INTO "Done_Purchase" (purchased_item_id, username, name, date, count) VALUES($1,$2,$3,$4,$5);',
|
await nonQuery('INSERT INTO "Done_Purchase" (purchased_item_id, username, name, date, count) VALUES($1,$2,$3,$4,$5);',
|
||||||
[generate_item_id(), uid, name, today, 1]);
|
[generate_item_id(), uid, item[0].name, today, item[0].count]);
|
||||||
|
|
||||||
await nonQuery('DELETE FROM "Item" WHERE item_id = $1 AND group_id = $2 AND sl_id = $3;', [item_id, group_id, sl_id]);
|
await nonQuery('DELETE FROM "Item" WHERE item_id = $1 AND group_id = $2 AND sl_id = $3;', [item_id, group_id, sl_id]);
|
||||||
|
|
||||||
|
return await {
|
||||||
|
shoppinglist: await displayShoppinglist(sl_id),
|
||||||
|
doneitems: await getDonePurchases(uid)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
catch(error) {
|
catch(error) {
|
||||||
@ -388,7 +399,23 @@ async function getDonePurchases(uid) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function getUserDB(uid) {
|
||||||
|
try {
|
||||||
|
let user = await query('SELECT row_to_json("User") AS obj FROM "User" WHERE username = $1;', [uid]);
|
||||||
|
return user;
|
||||||
|
} catch (error) {
|
||||||
|
console.error("Error", error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async function deleteDonePurchase(pid, uid) {
|
||||||
|
try {
|
||||||
|
await nonQuery('DELETE FROM "Done_Purchase" WHERE purchased_item_id = $1 ', [pid]);
|
||||||
|
return getDonePurchases(uid);
|
||||||
|
} catch (error) {
|
||||||
|
console.error("Error", error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -433,7 +460,7 @@ async function removeMember(uid, sl_id) {
|
|||||||
try {
|
try {
|
||||||
await nonQuery('DELETE FROM "Shoppinglist_member" WHERE username = $1 AND sl_id = $2', [uid, sl_id]);
|
await nonQuery('DELETE FROM "Shoppinglist_member" WHERE username = $1 AND sl_id = $2', [uid, sl_id]);
|
||||||
|
|
||||||
return getShoppinglistsShared(sl_id);
|
return await displayShoppinglist(sl_id);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(error);
|
console.error(error);
|
||||||
}
|
}
|
||||||
@ -480,18 +507,22 @@ function generate_item_id() {
|
|||||||
return output;
|
return output;
|
||||||
}
|
}
|
||||||
|
|
||||||
function items_in_groups(groups, items, sl_id, admin_uid, admin_mid, members, name, description, invitelink) {
|
function items_in_groups(groups, items, sl_id, sl_admin, sl_members, name, description, invitelink, color) {
|
||||||
|
|
||||||
let result = {
|
let result = {
|
||||||
sl_id: sl_id,
|
sl_id: sl_id,
|
||||||
name: name,
|
name: name,
|
||||||
description: description,
|
description: description,
|
||||||
invitelink: invitelink,
|
invitelink: invitelink,
|
||||||
|
color: color,
|
||||||
admin: {
|
admin: {
|
||||||
uid: admin_uid,
|
username: sl_admin[0].username,
|
||||||
mid: admin_mid
|
email: sl_admin[0].email,
|
||||||
|
name: sl_admin[0].name,
|
||||||
|
picture: sl_admin[0].picture,
|
||||||
|
message_id: sl_admin[0].message_id
|
||||||
},
|
},
|
||||||
members: [],
|
members: sl_members,
|
||||||
groups: []
|
groups: []
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -507,14 +538,6 @@ function items_in_groups(groups, items, sl_id, admin_uid, admin_mid, members, na
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
for (let item of members) {
|
|
||||||
|
|
||||||
result.members.push({
|
|
||||||
uid: item.username,
|
|
||||||
mid: item.message_id
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -619,5 +642,7 @@ module.exports = {
|
|||||||
searchUsers,
|
searchUsers,
|
||||||
removeMember,
|
removeMember,
|
||||||
moveDoneItemMan,
|
moveDoneItemMan,
|
||||||
getUser
|
getUser,
|
||||||
|
getUserDB,
|
||||||
|
deleteDonePurchase
|
||||||
}
|
}
|
@ -193,8 +193,6 @@ router.get("/shoppinglist_json/:sl_id", async (req, res) => {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
postgres.displayShoppinglist("4tezJYMK");
|
|
||||||
|
|
||||||
//DELETE Shoppinglist
|
//DELETE Shoppinglist
|
||||||
|
|
||||||
router.delete("/shoppinglist", async (req, res) => {
|
router.delete("/shoppinglist", async (req, res) => {
|
||||||
@ -272,10 +270,25 @@ router.get("/userinfo_json", (req, res) => {
|
|||||||
//Rename Shoppinglist
|
//Rename Shoppinglist
|
||||||
router.put("/shoppinglist", async (req, res) => {
|
router.put("/shoppinglist", async (req, res) => {
|
||||||
try {
|
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);
|
res.status(400).send(await err);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var token = req.body.idtoken;
|
||||||
|
var uid;
|
||||||
|
firebaseAdmin.auth().verifyIdToken(token)
|
||||||
|
.then(async function (decodedToken) {
|
||||||
|
uid = decodedToken.uid;
|
||||||
|
|
||||||
|
try {
|
||||||
|
res.status(200).send(await postgres.editShoppinglist(req.body.sl_id, req.body.name, req.body.description, req.body.color, uid));
|
||||||
|
} catch (err) {
|
||||||
|
res.status(400).send(await err);
|
||||||
|
}
|
||||||
|
}).catch(function (error) {
|
||||||
|
console.log(error)
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
//Rename Group
|
//Rename Group
|
||||||
@ -332,9 +345,9 @@ router.post("/maninvite", async (req, res) => {
|
|||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
router.delete("/member", (req, res) => {
|
router.delete("/member", async (req, res) => {
|
||||||
try {
|
try {
|
||||||
postgres.removeMember(req.body.uid, req.body.sl_id)
|
res.status(200).send(await postgres.removeMember(req.body.uid, req.body.sl_id));
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
@ -489,6 +502,46 @@ router.get("/dash2", (req, res) => {
|
|||||||
res.status(200).render("dash2");
|
res.status(200).render("dash2");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
router.get("/dbuser", async function (req, res, next) {
|
||||||
|
var token = req.query.idtoken;
|
||||||
|
console.log("/myshoppinglists idtoken: ", token)
|
||||||
|
firebaseAdmin.auth().verifyIdToken(token)
|
||||||
|
.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.getUserDB(uid));
|
||||||
|
} catch (err) {
|
||||||
|
res.status(400).send(await err);
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch(function (error) {
|
||||||
|
console.log(error)
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
router.delete("/donepurchase", async (req, res) => {
|
||||||
|
var token = req.body.idtoken;
|
||||||
|
console.log("/myshoppinglists idtoken: ", token)
|
||||||
|
firebaseAdmin.auth().verifyIdToken(token)
|
||||||
|
.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.deleteDonePurchase(req.body.pid, uid));
|
||||||
|
} catch (err) {
|
||||||
|
res.status(400).send(await err);
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch(function (error) {
|
||||||
|
console.log(error)
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
Loading…
x
Reference in New Issue
Block a user