.
This commit is contained in:
parent
aeca9412bf
commit
1e116f411a
BIN
express-server/public/images/Hintergrund.png
Normal file
BIN
express-server/public/images/Hintergrund.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.0 MiB |
@ -62,6 +62,7 @@ $(document).ready(function () {
|
|||||||
success(res) {
|
success(res) {
|
||||||
console.log("add funktioniert");
|
console.log("add funktioniert");
|
||||||
$(".listen-ausgabe").html("");
|
$(".listen-ausgabe").html("");
|
||||||
|
$(".shared-cards").html("");
|
||||||
eigeneEinkaufslisten();
|
eigeneEinkaufslisten();
|
||||||
geteilteEinkaufslisten();
|
geteilteEinkaufslisten();
|
||||||
$(".EigeneListeAdd").modal("hide");
|
$(".EigeneListeAdd").modal("hide");
|
||||||
@ -89,6 +90,7 @@ var globalegraddid = "";
|
|||||||
// var globaleGetZwischenID = "";
|
// var globaleGetZwischenID = "";
|
||||||
|
|
||||||
function eigeneEinkaufslisten() {
|
function eigeneEinkaufslisten() {
|
||||||
|
// $(".listen-ausgabe").remove();
|
||||||
firebase.auth().onAuthStateChanged(async function (user) {
|
firebase.auth().onAuthStateChanged(async function (user) {
|
||||||
if (user) {
|
if (user) {
|
||||||
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
@ -113,12 +115,14 @@ function eigeneEinkaufslisten() {
|
|||||||
success(data) {
|
success(data) {
|
||||||
const userinfo = data.name;
|
const userinfo = data.name;
|
||||||
const picture = data.picture;
|
const picture = data.picture;
|
||||||
console.log(data)
|
console.log(res)
|
||||||
for (let i = 0; i < res.length; i++) {
|
for (let i = 0; i < res.length; i++) {
|
||||||
const el = res[i];
|
const el = res[i];
|
||||||
|
|
||||||
|
$('body').attr('name',`${idtoken}`);
|
||||||
|
|
||||||
$(".listen-ausgabe").append(`<div class="col-md-12 karten">
|
$(".listen-ausgabe").append(`<div class="col-md-12 karten">
|
||||||
<div class="card border-light mb-3 shadow-sm" style="max-width: 18rem;" id="${el.sl_id}">
|
<div class="card border-light mb-3 shadow-sm" style="max-width: 18rem;min-width: 14rem;" id="${el.sl_id}">
|
||||||
<div class="card-header" style="background-color: #${el.color};">
|
<div class="card-header" style="background-color: #${el.color};">
|
||||||
<span>
|
<span>
|
||||||
<img src="${picture}" alt="Avatar" style="width:10%; border-radius: 50%;">
|
<img src="${picture}" alt="Avatar" style="width:10%; border-radius: 50%;">
|
||||||
@ -126,6 +130,7 @@ function eigeneEinkaufslisten() {
|
|||||||
<button class="btn edit"><i class="fas fa-pencil-alt "></i></button>
|
<button class="btn edit"><i class="fas fa-pencil-alt "></i></button>
|
||||||
<button class="btn trash"><i class="far fa-trash-alt"></i></button>
|
<button class="btn trash"><i class="far fa-trash-alt"></i></button>
|
||||||
<button class="btn sledit"><i class="far fa-edit"></i></button>
|
<button class="btn sledit"><i class="far fa-edit"></i></button>
|
||||||
|
<button class="btn postshare"><i class="fas fa-share-alt"></i></button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
@ -138,6 +143,7 @@ function eigeneEinkaufslisten() {
|
|||||||
slbearbeiten();
|
slbearbeiten();
|
||||||
loeschen();
|
loeschen();
|
||||||
Detail();
|
Detail();
|
||||||
|
shareinvite();
|
||||||
// groupHinzufügen()
|
// groupHinzufügen()
|
||||||
},
|
},
|
||||||
error(err) {
|
error(err) {
|
||||||
@ -165,7 +171,7 @@ function geteilteEinkaufslisten() {
|
|||||||
firebase.auth().onAuthStateChanged(async function (user) {
|
firebase.auth().onAuthStateChanged(async function (user) {
|
||||||
if (user) {
|
if (user) {
|
||||||
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
console.log("/sharedshoppinglists idtoke: ", idtoken)
|
// console.log("/sharedshoppinglists idtoke: ", idtoken)
|
||||||
$.ajax({
|
$.ajax({
|
||||||
data: "GET",
|
data: "GET",
|
||||||
url: "/sharedshoppinglists",
|
url: "/sharedshoppinglists",
|
||||||
@ -173,8 +179,41 @@ function geteilteEinkaufslisten() {
|
|||||||
idtoken: idtoken
|
idtoken: idtoken
|
||||||
},
|
},
|
||||||
success(res) {
|
success(res) {
|
||||||
console.log("Geteilte Einkaufslisten");
|
console.log(res);
|
||||||
// $(".shared-cards").append(`<div class="col-md-6 col-lg-4 shoplisteid">${res}</div>`);
|
for (let i = 0; i < res.length; i++) {
|
||||||
|
const el = res[i];
|
||||||
|
$.ajax({
|
||||||
|
type: "GET",
|
||||||
|
url: "/shoppinglist_json/" + res[i].sl_id,
|
||||||
|
data: {
|
||||||
|
idtoken: idtoken
|
||||||
|
},
|
||||||
|
success(result){
|
||||||
|
console.log(result);
|
||||||
|
|
||||||
|
$(".shared-cards").append(`<div class="col-md-12 karten">
|
||||||
|
<div class="card border-light mb-3 shadow-sm" style="max-width: 18rem;min-width: 14rem;" id="${result.sl_id}">
|
||||||
|
<div class="card-header" style="background-color: #${result.color};">
|
||||||
|
<span>
|
||||||
|
<img src="${result.admin.picture}" alt="Avatar" style="width:10%; border-radius: 50%;">
|
||||||
|
${result.admin.name}</span>
|
||||||
|
<button class="btn shareedit"><i class="fas fa-pencil-alt "></i></button>
|
||||||
|
<button class="btn sharetrash"><i class="far fa-trash-alt"></i></button>
|
||||||
|
<button class="btn sledit"><i class="far fa-edit"></i></button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card-body">
|
||||||
|
<h5 class="card-title">${result.name}</h5>
|
||||||
|
<p class="card-text">${result.description}</p>
|
||||||
|
</div>
|
||||||
|
</div></div>`);
|
||||||
|
slbearbeiten();
|
||||||
|
loeschen();
|
||||||
|
sharedtail();
|
||||||
|
},error(err){
|
||||||
|
console.log(err);
|
||||||
|
}
|
||||||
|
})}
|
||||||
},
|
},
|
||||||
error(err) {
|
error(err) {
|
||||||
console.error("/sharedshoppinglists error:", err);
|
console.error("/sharedshoppinglists error:", err);
|
||||||
@ -187,19 +226,18 @@ function geteilteEinkaufslisten() {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
function loeschen() {
|
function selfexinvite(){
|
||||||
$(".trash").click(function () {
|
$(".sharetrash").click(function(){
|
||||||
|
let card = $(this).closest(".card");
|
||||||
let card = $(this).closest(".card");
|
|
||||||
let id = card.attr("id");
|
let id = card.attr("id");
|
||||||
|
|
||||||
// console.log(id);
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: "DELETE",
|
type: "DELETE",
|
||||||
url: "/shoppinglist",
|
url: "/exitinvite",
|
||||||
data: {
|
data: {
|
||||||
sl_id: id
|
sl_id: id,
|
||||||
|
idtoken: idtoken
|
||||||
},
|
},
|
||||||
success(res) {
|
success(res) {
|
||||||
console.log("card gelöscht");
|
console.log("card gelöscht");
|
||||||
@ -209,7 +247,128 @@ function loeschen() {
|
|||||||
console.log("error");
|
console.log("error");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
}).catch((error) => console.error("Get id token client error: ", error));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function sharedtail (){
|
||||||
|
$(".shareedit").click(function(){
|
||||||
|
$(".cardausgabe").hide();
|
||||||
|
$(".sharecards").hide();
|
||||||
|
$(".strich").hide();
|
||||||
|
$(".detailcardausgabe").show();
|
||||||
|
|
||||||
|
let card = $(this).closest(".card");
|
||||||
|
let sl_id = card.attr("id");
|
||||||
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
|
$.ajax({
|
||||||
|
type: "GET",
|
||||||
|
url: "/shoppinglist_json/" + sl_id,
|
||||||
|
data: {
|
||||||
|
idtoken: idtoken
|
||||||
|
},
|
||||||
|
success(result){
|
||||||
|
Members = result.members
|
||||||
|
var link = "/dash/" + idtoken;
|
||||||
|
$(".kopf").attr("style", `background-color:#${result.color}`);
|
||||||
|
|
||||||
|
console.log(result);
|
||||||
|
|
||||||
|
$(".card-header").append(`<div class="shoplistid" id="${sl_id}">
|
||||||
|
<a href="${link}" style="left: 5px; margin-top: -50px;color: black;">
|
||||||
|
<i class="fas fa-caret-left"></i>
|
||||||
|
</a>
|
||||||
|
<button class="btn groupadd" data-toggle="modal" data-target=".ListenDetailAdd"><i class="fas fa-plus"></i></button>
|
||||||
|
<h1 class="text-center">
|
||||||
|
${result.name}
|
||||||
|
</h1><center><button class="btn btn-outline-lighht btn-xs showMembers">Alle Mitglieder</button></center></div>
|
||||||
|
`);
|
||||||
|
for (let i = 0; i < result.groups.length; i++) {
|
||||||
|
const el = result.groups[i];
|
||||||
|
$(".gruppeninhalt").append(`<div class="col-md-6 col-lg-4 shoplisteid" id="${result.sl_id}">
|
||||||
|
<div class="card mb-3 groupid ${el.group_id}" id="${el.group_id}" style="max-width: 18rem;background-color:#${el.color};">
|
||||||
|
|
||||||
|
<div class="card-header">
|
||||||
|
<h5 class="card-title title">${el.name}</h5>
|
||||||
|
<button class="btn gredit"><i class="far fa-edit"></i></button>
|
||||||
|
<button class="btn itemadd"><i class="fas fa-plus"></i></button>
|
||||||
|
<button class="btn trashgroup"><i class="far fa-trash-alt"></i></button>
|
||||||
|
<button class="btn seemore" type="button" data-toggle="collapse" data-target="#${el.name}" aria-expanded="false" aria-controls="${el.name}"><i class="fas fa-caret-down"></i></button>
|
||||||
|
<div class="${el.name}">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div></div>
|
||||||
|
`);
|
||||||
|
for (let x = 0; x < el.content.length; x++) {
|
||||||
|
const el2 = el.content[x]
|
||||||
|
$(`.${el.name}`).append(`<div class="collapse" id="${el.name}">
|
||||||
|
<div class="card itemcard" style="background-color: transparent; ">
|
||||||
|
<div class="card-body">
|
||||||
|
${el2.name}${el2.count}
|
||||||
|
</div>
|
||||||
|
</div>`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$(".alleMem").append(`
|
||||||
|
<center><span><img src="${result.admin.picture}" alt="Avatar" style="width:10%; border-radius: 50%;">
|
||||||
|
|
||||||
|
${result.admin.name}</span></center>
|
||||||
|
<hr>
|
||||||
|
`);
|
||||||
|
for (let i = 0; i < result.members.length; i++) {
|
||||||
|
const el = result.members[i];
|
||||||
|
$(".alleMem").append(`
|
||||||
|
<center><span><img src="${el.picture}" alt="Avatar" style="width:10%; border-radius: 50%;">
|
||||||
|
|
||||||
|
${el.name}</span></center>
|
||||||
|
`);
|
||||||
|
}
|
||||||
|
lala();
|
||||||
|
gruppenhinzu();
|
||||||
|
ItemAdden();
|
||||||
|
groupdelete();
|
||||||
|
groupbearbeiten();
|
||||||
|
MemberAnzeigen();
|
||||||
|
|
||||||
|
},error(err){
|
||||||
|
console.log(err);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}).catch((error) => console.error("Get id token client error: ", error));
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
function MemberAnzeigen(){
|
||||||
|
$(".showMembers").click(function(){
|
||||||
|
$(".Mem").modal('show');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function loeschen() {
|
||||||
|
$(".trash").click(function () {
|
||||||
|
|
||||||
|
let card = $(this).closest(".card");
|
||||||
|
let id = card.attr("id");
|
||||||
|
|
||||||
|
// console.log(id);
|
||||||
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
|
$.ajax({
|
||||||
|
type: "DELETE",
|
||||||
|
url: "/shoppinglist",
|
||||||
|
data: {
|
||||||
|
sl_id: id,
|
||||||
|
idtoken: idtoken
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
console.log("card gelöscht");
|
||||||
|
card.remove();
|
||||||
|
},
|
||||||
|
error(err) {
|
||||||
|
console.log("error");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}).catch((error) => console.error("Get id token client error: ", error));
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -227,7 +386,7 @@ function gruppenhinzu() {
|
|||||||
|
|
||||||
let name = $("#groupname").val();
|
let name = $("#groupname").val();
|
||||||
let color = $("input:checked").val();
|
let color = $("input:checked").val();
|
||||||
// $("#ListenDetailAdd").modal("hide");
|
|
||||||
console.log(globaleAddZwischenID);
|
console.log(globaleAddZwischenID);
|
||||||
|
|
||||||
firebase.auth().onAuthStateChanged(async function (user) {
|
firebase.auth().onAuthStateChanged(async function (user) {
|
||||||
@ -245,23 +404,10 @@ function gruppenhinzu() {
|
|||||||
hidden: false
|
hidden: false
|
||||||
},
|
},
|
||||||
success(res) {
|
success(res) {
|
||||||
|
|
||||||
console.log(res);
|
|
||||||
$("input:checked").val("");
|
|
||||||
$("#groupname").val("");
|
$("#groupname").val("");
|
||||||
|
$("input:checked").val("");
|
||||||
$(".ListenDetailAdd").modal("hide");
|
$(".ListenDetailAdd").modal("hide");
|
||||||
|
refreshDetailsl(globaleAddZwischenID);
|
||||||
$(".gruppeninhalt").append(`<div class="col-md-6 col-lg-4 shoplisteid" id="${globaleAddZwischenID}">
|
|
||||||
<div class="card mb-3 groupid" id="" style="max-width: 18rem;background-color:#${color};">
|
|
||||||
|
|
||||||
<div class="card-header"><h5 class="card-title">${name}</h5><button class="btn itemadd"><i class="fas fa-plus"></i></button><button class="btn trashgroup"><i class="far fa-trash-alt"></i></button><button class="btn seemore" type="button" data-toggle="collapse" data-target="#${name}" aria-expanded="false" aria-controls="${name}"><i class="fas fa-caret-down"></i></button>
|
|
||||||
<div class="${name}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div></div>
|
|
||||||
`);
|
|
||||||
|
|
||||||
},
|
},
|
||||||
error(err) {
|
error(err) {
|
||||||
console.log("error");
|
console.log("error");
|
||||||
@ -280,6 +426,8 @@ function Detail() {
|
|||||||
$(".edit").click(function () {
|
$(".edit").click(function () {
|
||||||
|
|
||||||
$(".cardausgabe").hide();
|
$(".cardausgabe").hide();
|
||||||
|
$(".sharecards").hide();
|
||||||
|
$(".strich").hide();
|
||||||
$(".detailcardausgabe").show();
|
$(".detailcardausgabe").show();
|
||||||
|
|
||||||
let card = $(this).closest(".card");
|
let card = $(this).closest(".card");
|
||||||
@ -320,24 +468,39 @@ function Detail() {
|
|||||||
|
|
||||||
$(".kopf").attr("style", `background-color:#${neu[0].color}`);
|
$(".kopf").attr("style", `background-color:#${neu[0].color}`);
|
||||||
|
|
||||||
console.log(neu[0].color);
|
console.log(res);
|
||||||
|
|
||||||
|
if (res.invitelink != null) {
|
||||||
|
$(".card-header").append(`<div class="shoplistid" id="${id}">
|
||||||
|
<a href="${link}" style="left: 5px; margin-top: -50px;color: black;">
|
||||||
|
<i class="fas fa-caret-left"></i>
|
||||||
|
</a>
|
||||||
|
<button class="btn groupadd" data-toggle="modal" data-target=".ListenDetailAdd"><i class="fas fa-plus"></i></button>
|
||||||
|
<h1 class="text-center">
|
||||||
|
${neu[0].name}
|
||||||
|
</h1><center><button class="btn btn-outline-lighht btn-xs showMembers">Alle Mitglieder</button></center></div>
|
||||||
|
`);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
$(".card-header").append(`<div class="shoplistid" id="${id}">
|
||||||
|
<a href="${link}" style="left: 5px; margin-top: -50px;color: black;">
|
||||||
|
<i class="fas fa-caret-left"></i>
|
||||||
|
</a>
|
||||||
|
<button class="btn groupadd" data-toggle="modal" data-target=".ListenDetailAdd"><i class="fas fa-plus"></i></button>
|
||||||
|
<h1 class="text-center">
|
||||||
|
${neu[0].name}
|
||||||
|
</h1></div>
|
||||||
|
`);
|
||||||
|
}
|
||||||
|
|
||||||
$(".card-header").append(`<div class="shoplistid" id="${id}">
|
|
||||||
<a href="${link}" style="left: 5px; margin-top: -50px;color: black;">
|
|
||||||
<i class="fas fa-caret-left"></i>
|
|
||||||
</a>
|
|
||||||
<button class="btn groupadd" data-toggle="modal" data-target=".ListenDetailAdd"><i class="fas fa-plus"></i></button>
|
|
||||||
<h1 class="text-center">
|
|
||||||
${neu[0].name}
|
|
||||||
</h1></div>
|
|
||||||
`);
|
|
||||||
for (let i = 0; i < res.groups.length; i++) {
|
for (let i = 0; i < res.groups.length; i++) {
|
||||||
const el = res.groups[i];
|
const el = res.groups[i];
|
||||||
$(".gruppeninhalt").append(`<div class="col-md-6 col-lg-4 shoplisteid" id="${res.sl_id}">
|
$(".gruppeninhalt").append(`<div class="col-md-6 col-lg-4 shoplisteid" id="${res.sl_id}">
|
||||||
<div class="card mb-3 groupid ${el.group_id}" id="${el.group_id}" style="max-width: 18rem;background-color:#${el.color};">
|
<div class="card mb-3 groupid ${el.group_id}" id="${el.group_id}" style="max-width: 18rem;background-color:#${el.color};">
|
||||||
|
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h5 class="card-title">${el.name}</h5>
|
<h5 class="card-title title">${el.name}</h5>
|
||||||
|
<button class="btn gredit"><i class="far fa-edit"></i></button>
|
||||||
<button class="btn itemadd"><i class="fas fa-plus"></i></button>
|
<button class="btn itemadd"><i class="fas fa-plus"></i></button>
|
||||||
<button class="btn trashgroup"><i class="far fa-trash-alt"></i></button>
|
<button class="btn trashgroup"><i class="far fa-trash-alt"></i></button>
|
||||||
<button class="btn seemore" type="button" data-toggle="collapse" data-target="#${el.name}" aria-expanded="false" aria-controls="${el.name}"><i class="fas fa-caret-down"></i></button>
|
<button class="btn seemore" type="button" data-toggle="collapse" data-target="#${el.name}" aria-expanded="false" aria-controls="${el.name}"><i class="fas fa-caret-down"></i></button>
|
||||||
@ -349,18 +512,48 @@ function Detail() {
|
|||||||
`);
|
`);
|
||||||
for (let x = 0; x < el.content.length; x++) {
|
for (let x = 0; x < el.content.length; x++) {
|
||||||
const el2 = el.content[x]
|
const el2 = el.content[x]
|
||||||
$(`.${el.name}`).append(`<div class="collapse" id="${el.name}">
|
$(`.${el.name}`).append(`<div class="collapse mb-1" id="${el.name}">
|
||||||
<div class="card itemcard" style="background-color: transparent; ">
|
<div style="background-color: transparent; border: 1px solid #303133; border-radius: 15px;">
|
||||||
<div class="card-body">
|
<div class="checkbox" id="${el2.item_id}">
|
||||||
${el2.name}${el2.count}
|
<input style="margin-left: 5%;margin-right: 1%;" type="checkbox" value=""><span class="ed" id="ed">${el2.name}</span><button class="btn itemedit"><i class="far fa-edit"></i></button><span class="ed2" id="ed2" style="float: right;margin-right: 5%;">${el2.count}x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>`);
|
</div>`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$(".alleMem").append(`
|
||||||
|
<center><span><img src="${res.admin.picture}" alt="Avatar" style="width:10%; border-radius: 50%;">
|
||||||
|
|
||||||
|
${res.admin.name}</span></center>
|
||||||
|
<hr>
|
||||||
|
`);
|
||||||
|
|
||||||
|
if (res.members.length == "0") {
|
||||||
|
$(".alleMem").append("<center><span>Noch keine Mitglieder vorhanden</span></center>");
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
for (let i = 0; i < res.members.length; i++) {
|
||||||
|
const el = res.members[i];
|
||||||
|
$(".alleMem").append(`
|
||||||
|
<center class="uid" id="${el.username}"><span class="slid" id="${id}"><img src="${el.picture}" alt="Avatar" style="width:10%; border-radius: 50%;">
|
||||||
|
|
||||||
|
${el.name}
|
||||||
|
|
||||||
|
<button class="btn exinvitemembersssss"><i class="fas fa-user-times"></i></button>
|
||||||
|
</span></center>
|
||||||
|
`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
lala();
|
lala();
|
||||||
gruppenhinzu();
|
gruppenhinzu();
|
||||||
ItemAdden();
|
ItemAdden();
|
||||||
groupdelete();
|
groupdelete();
|
||||||
|
groupbearbeiten();
|
||||||
|
MemberAnzeigen();
|
||||||
|
delMember();
|
||||||
|
itembearbeiten();
|
||||||
|
donepurchase();
|
||||||
},
|
},
|
||||||
error(err) {
|
error(err) {
|
||||||
console.log("Detail error userinfo_json: ", err);
|
console.log("Detail error userinfo_json: ", err);
|
||||||
@ -383,6 +576,91 @@ function Detail() {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
var glitemid = "";
|
||||||
|
function itembearbeiten() {
|
||||||
|
$(".itemedit").click(function(){
|
||||||
|
let getitemid = $(this).closest('.checkbox');
|
||||||
|
let itemid = getitemid.attr('id');
|
||||||
|
let getgroupid = $(this).closest('.groupid');
|
||||||
|
let groupid = getgroupid.attr('id');
|
||||||
|
let getslid = $(this).closest('.shoplisteid');
|
||||||
|
let slid = getslid.attr('id');
|
||||||
|
glitemid = itemid;
|
||||||
|
|
||||||
|
console.log(itemid, groupid, slid);
|
||||||
|
|
||||||
|
let name = $(this).closest('div').find('span.ed').text();
|
||||||
|
let anz = $(this).closest('div').find('span.ed2').text();
|
||||||
|
let anzperfekt = anz.split("x")[0];
|
||||||
|
|
||||||
|
console.log(name, anzperfekt);
|
||||||
|
|
||||||
|
$(".eh").prop("id",`${slid}`);
|
||||||
|
$(".eh2").prop("id",`${groupid}`);
|
||||||
|
$(".eh3").prop("id",`${itemid}`);
|
||||||
|
|
||||||
|
|
||||||
|
$(".GroupItemedit").modal('show');
|
||||||
|
$("#itemnameb").val(name);
|
||||||
|
$("#inputGroupSelect02").val(anzperfekt);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
$(".itemhinzub").click(function(){
|
||||||
|
let slid = $(this).closest(".eh").attr('id');
|
||||||
|
let groupid = $(this).closest(".eh2").attr('id');
|
||||||
|
|
||||||
|
|
||||||
|
let name = $("#itemnameb").val();
|
||||||
|
let anz = $("#inputGroupSelect02").val();
|
||||||
|
|
||||||
|
console.log(glitemid);
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: "PUT",
|
||||||
|
url: "/item",
|
||||||
|
data: {
|
||||||
|
sl_id: slid,
|
||||||
|
group_id: groupid,
|
||||||
|
item_id: glitemid,
|
||||||
|
name: name,
|
||||||
|
count: anz
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
console.log("item verändert");
|
||||||
|
refreshDetailsl(slid);
|
||||||
|
},
|
||||||
|
error(err) {
|
||||||
|
console.log("error");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
function delMember(){
|
||||||
|
$(".exinvitemembersssss").click(function(){
|
||||||
|
let getid = $(this).closest('.slid');
|
||||||
|
let shoplistid = getid.attr('id');
|
||||||
|
let getid2 = $(this).closest('.uid');
|
||||||
|
let username = getid2.attr('id');
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: "DELETE",
|
||||||
|
url: "/member",
|
||||||
|
data: {
|
||||||
|
sl_id: shoplistid,
|
||||||
|
uid: username
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
console.log("user entfernt");
|
||||||
|
refreshDetailsl(shoplistid);
|
||||||
|
},
|
||||||
|
error(err) {
|
||||||
|
console.log("error");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
function ItemAdden() {
|
function ItemAdden() {
|
||||||
$(".itemadd").click(function () {
|
$(".itemadd").click(function () {
|
||||||
@ -395,38 +673,6 @@ function ItemAdden() {
|
|||||||
globalegraddid = grid;
|
globalegraddid = grid;
|
||||||
globaleAddZwischenID = slid;
|
globaleAddZwischenID = slid;
|
||||||
$('.GroupItemAdd').modal('show');
|
$('.GroupItemAdd').modal('show');
|
||||||
|
|
||||||
// firebase.auth().onAuthStateChanged(async function (user) {
|
|
||||||
// if (user) {
|
|
||||||
// firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
|
||||||
// $.ajax({
|
|
||||||
// type: "GET",
|
|
||||||
// url: "/shoppinglist_json/" + id,
|
|
||||||
// data: {
|
|
||||||
// idtoken: idtoken
|
|
||||||
// },
|
|
||||||
// success(result) {
|
|
||||||
|
|
||||||
// console.log(result);
|
|
||||||
|
|
||||||
// for (let i = 0; i < result.groups.length; i++) {
|
|
||||||
// const el = result.groups[i];
|
|
||||||
|
|
||||||
// $(".custom-select-groups").append(`
|
|
||||||
// <option class="select" value="${el.group_id}">${el.name}</option>
|
|
||||||
// `);
|
|
||||||
// }
|
|
||||||
|
|
||||||
// },
|
|
||||||
// error(err) {
|
|
||||||
// console.log(err);
|
|
||||||
// }
|
|
||||||
// });
|
|
||||||
// }).catch((error) => console.error("Get id token client error: ", error));
|
|
||||||
// } else {
|
|
||||||
// console.log("Check Auth error", user)
|
|
||||||
// }
|
|
||||||
// });
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -453,6 +699,7 @@ $(".itemhinzu").click(function () {
|
|||||||
success(result) {
|
success(result) {
|
||||||
$('.GroupItemAdd').modal('hide');
|
$('.GroupItemAdd').modal('hide');
|
||||||
console.log("post item");
|
console.log("post item");
|
||||||
|
refreshDetailsl(globaleAddZwischenID);
|
||||||
},
|
},
|
||||||
error(err) {
|
error(err) {
|
||||||
|
|
||||||
@ -488,7 +735,7 @@ function groupdelete() {
|
|||||||
},
|
},
|
||||||
success(res) {
|
success(res) {
|
||||||
console.log("card gelöscht");
|
console.log("card gelöscht");
|
||||||
$(`.${groupid}`).remove();
|
refreshDetailsl(shoplistid);
|
||||||
},
|
},
|
||||||
error(err) {
|
error(err) {
|
||||||
console.log("error");
|
console.log("error");
|
||||||
@ -504,31 +751,320 @@ $(".sledit").click(function(){
|
|||||||
let slid = $(this).closest(".card").attr('id');
|
let slid = $(this).closest(".card").attr('id');
|
||||||
let desc = $(this).closest('div').siblings().find('p.card-text').text();
|
let desc = $(this).closest('div').siblings().find('p.card-text').text();
|
||||||
let name = $(this).closest('div').siblings().find('h5.card-title').text();
|
let name = $(this).closest('div').siblings().find('h5.card-title').text();
|
||||||
|
let color = $(this).closest('.card-header').css("background-color");
|
||||||
$(".editmodal").prop("id",`${slid}`);
|
$(".editmodal").prop("id",`${slid}`);
|
||||||
$("#editname").val(name);
|
$("#editname").val(name);
|
||||||
$("#editbeschreibung").val(desc);
|
$("#editbeschreibung").val(desc);
|
||||||
});
|
var rgb = color.split("(")[1].split(")")[0];
|
||||||
|
|
||||||
|
var r = rgb.split(", ")[0];
|
||||||
|
var g = rgb.split(", ")[1];
|
||||||
|
var b = rgb.split(", ")[2];
|
||||||
|
|
||||||
|
function rgbToHex (r,g,b){
|
||||||
|
var bin = r << 16 | g << 8 | b;
|
||||||
|
return (function(h){
|
||||||
|
return new Array(7-h.length).join("0")+h
|
||||||
|
})(bin.toString(16).toUpperCase())
|
||||||
|
}
|
||||||
|
|
||||||
|
$(".aktuelleFarbe").css("color", "#"+rgbToHex(r,g,b));
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
$(".update").click(function(){
|
$(".update").click(function(){
|
||||||
let name = $("#editname").val();
|
let name = $("#editname").val();
|
||||||
let desc = $("#editbeschreibung").val();
|
let desc = $("#editbeschreibung").val();
|
||||||
let id = $(this).closest(".editmodal").attr('id');
|
let id = $(this).closest(".editmodal").attr('id');
|
||||||
|
let color = "";
|
||||||
|
if($("input:checked").val()==null){
|
||||||
|
color = $('.aktuelleFarbe').css("color");
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
color = $("input:checked").val();
|
||||||
|
}
|
||||||
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: "PUT",
|
type: "PUT",
|
||||||
url: "/shoppinglist",
|
url: "/shoppinglist",
|
||||||
data: {
|
data: {
|
||||||
sl_id: id,
|
sl_id: id,
|
||||||
name: name,
|
name: name,
|
||||||
description: desc
|
description: desc,
|
||||||
|
color: color,
|
||||||
|
idtoken: idtoken
|
||||||
},
|
},
|
||||||
success(res){
|
success(res){
|
||||||
|
$(".karten").remove();
|
||||||
$("#editname").val("");
|
$("#editname").val("");
|
||||||
$("#editbeschreibung").val("");
|
$("#editbeschreibung").val("");
|
||||||
$('#editsl').modal('hide');
|
$('#editsl').modal('hide');
|
||||||
|
eigeneEinkaufslisten()
|
||||||
},
|
},
|
||||||
error(err){
|
error(err){
|
||||||
|
|
||||||
}
|
}
|
||||||
|
});}).catch((error) => console.error("Get id token client error: ", error));
|
||||||
|
});
|
||||||
|
|
||||||
|
function groupbearbeiten(){
|
||||||
|
$(".gredit").click(function(){
|
||||||
|
$('#Listengroupbearbeiten').modal('show');
|
||||||
|
let grid = $(this).closest(".groupid").attr('id');
|
||||||
|
let slid = $(this).closest(".shoplisteid").attr('id');
|
||||||
|
let name = $(this).closest('div').find('h5.title').text();
|
||||||
|
let color = $(this).closest(".groupid").css("background-color");
|
||||||
|
|
||||||
|
$(".editgroudmodal").prop("id",`${slid}`);
|
||||||
|
$(".grouid").prop("id",`${grid}`);
|
||||||
|
$("#groupb").val(name);
|
||||||
|
var rgb = color.split("(")[1].split(")")[0];
|
||||||
|
|
||||||
|
var r = rgb.split(", ")[0];
|
||||||
|
var g = rgb.split(", ")[1];
|
||||||
|
var b = rgb.split(", ")[2];
|
||||||
|
|
||||||
|
function rgbToHex (r,g,b){
|
||||||
|
var bin = r << 16 | g << 8 | b;
|
||||||
|
return (function(h){
|
||||||
|
return new Array(7-h.length).join("0")+h
|
||||||
|
})(bin.toString(16).toUpperCase())
|
||||||
|
}
|
||||||
|
$(".aktuelleFarbe2").css("color", "#"+rgbToHex(r,g,b));
|
||||||
|
})}
|
||||||
|
|
||||||
|
$(".gruppbea").click(function(){
|
||||||
|
let name = $("#groupb").val();
|
||||||
|
let slid = $(this).closest(".editgroudmodal").attr('id');
|
||||||
|
let grid = $(this).closest(".grouid").attr('id');
|
||||||
|
let color = "";
|
||||||
|
if($("input:checked").val()==null){
|
||||||
|
color = $('.aktuelleFarbe2').css("color");
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
color = $("input:checked").val();
|
||||||
|
}
|
||||||
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
|
$.ajax({
|
||||||
|
type: "PUT",
|
||||||
|
url: "/group",
|
||||||
|
data: {
|
||||||
|
sl_id: slid,
|
||||||
|
group_id: grid,
|
||||||
|
name: name,
|
||||||
|
color: color,
|
||||||
|
idtoken: idtoken
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
$("#groupb").val("");
|
||||||
|
$('#gredit').modal('hide');
|
||||||
|
refreshDetailsl(slid);
|
||||||
|
},
|
||||||
|
error(err){
|
||||||
|
|
||||||
|
}
|
||||||
|
})}).catch((error) => console.error("Get id token client error: ", error));
|
||||||
|
});
|
||||||
|
|
||||||
|
function refreshDetailsl(slid){
|
||||||
|
// $(".shoplisteid").remove();
|
||||||
|
$(".shoplistid").remove();
|
||||||
|
// $(".card-header").empty();
|
||||||
|
$(".gruppeninhalt").empty();
|
||||||
|
firebase.auth().onAuthStateChanged(async function (user) {
|
||||||
|
if (user) {
|
||||||
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
|
$.ajax({
|
||||||
|
type: "GET",
|
||||||
|
url: "/shoppinglist_json/" + slid,
|
||||||
|
data: {
|
||||||
|
idtoken: idtoken
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
|
||||||
|
var link = "/dash/" + idtoken;
|
||||||
|
|
||||||
|
$(".kopf").attr("style", `background-color:#${res.color}`);
|
||||||
|
|
||||||
|
$(".card-header").append(`<div class="shoplistid" id="${res.sl_id}">
|
||||||
|
<a href="${link}" style="left: 5px; margin-top: -50px;color: black;">
|
||||||
|
<i class="fas fa-caret-left"></i>
|
||||||
|
</a>
|
||||||
|
<button class="btn groupadd" data-toggle="modal" data-target=".ListenDetailAdd"><i class="fas fa-plus"></i></button>
|
||||||
|
<h1 class="text-center">
|
||||||
|
${res.name}
|
||||||
|
</h1></div>
|
||||||
|
`);
|
||||||
|
for (let i = 0; i < res.groups.length; i++) {
|
||||||
|
const el = res.groups[i];
|
||||||
|
$(".gruppeninhalt").append(`<div class="col-md-6 col-lg-4 shoplisteid" id="${res.sl_id}">
|
||||||
|
<div class="card mb-3 groupid ${el.group_id}" id="${el.group_id}" style="max-width: 18rem;background-color:#${el.color};">
|
||||||
|
|
||||||
|
<div class="card-header">
|
||||||
|
<h5 class="card-title title">${el.name}</h5>
|
||||||
|
<button class="btn gredit"><i class="far fa-edit"></i></button>
|
||||||
|
<button class="btn itemadd"><i class="fas fa-plus"></i></button>
|
||||||
|
<button class="btn trashgroup"><i class="far fa-trash-alt"></i></button>
|
||||||
|
<button class="btn seemore" type="button" data-toggle="collapse" data-target="#${el.name}" aria-expanded="false" aria-controls="${el.name}"><i class="fas fa-caret-down"></i></button>
|
||||||
|
<div class="${el.name}">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div></div>
|
||||||
|
`);
|
||||||
|
for (let x = 0; x < el.content.length; x++) {
|
||||||
|
const el2 = el.content[x]
|
||||||
|
$(`.${el.name}`).append(`<div class="collapse mb-1" id="${el.name}">
|
||||||
|
<div style="background-color: transparent; border: 1px solid #303133; border-radius: 15px;">
|
||||||
|
<div class="checkbox" id="${el2.item_id}">
|
||||||
|
<input class="check" style="margin-left: 5%;margin-right: 1%;" type="checkbox" value=""><span class="ed" id="ed">${el2.name}</span><button class="btn itemedit"><i class="far fa-edit"></i></button><span class="ed2" id="ed2" style="float: right;margin-right: 5%;">${el2.count}x</span>
|
||||||
|
</div>
|
||||||
|
</div>`)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
lala();
|
||||||
|
// gruppenhinzu();
|
||||||
|
ItemAdden();
|
||||||
|
groupdelete();
|
||||||
|
groupbearbeiten();
|
||||||
|
itembearbeiten();
|
||||||
|
donepurchase();
|
||||||
|
|
||||||
|
},
|
||||||
|
error(err) {
|
||||||
|
console.log(err);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}).catch((error) => console.error("Get id token client error: ", error));
|
||||||
|
} else {
|
||||||
|
console.log("Check Auth error", user)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
$(".linkinfo").click(function(){
|
||||||
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
|
$.ajax({
|
||||||
|
type: "GET",
|
||||||
|
url: "/group",
|
||||||
|
data: {
|
||||||
|
idtoken: idtoken
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
$("#groupb").val("");
|
||||||
|
$('#gredit').modal('hide');
|
||||||
|
refreshDetailsl(slid);
|
||||||
|
},
|
||||||
|
error(err){
|
||||||
|
|
||||||
|
}
|
||||||
|
})}).catch((error) => console.error("Get id token client error: ", error));
|
||||||
|
})
|
||||||
|
|
||||||
|
function shareinvite(){
|
||||||
|
$(".postshare").click(function(){
|
||||||
|
let slid = $(this).closest(".card").attr('id');
|
||||||
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "/invite",
|
||||||
|
data: {
|
||||||
|
sl_id: slid,
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
|
$.ajax({
|
||||||
|
type: "GET",
|
||||||
|
url: "/shoppinglist_json/"+slid,
|
||||||
|
data: {
|
||||||
|
idtoken: idtoken
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
$(".InviteLinkAnzeigen").modal('show');
|
||||||
|
console.log(res);
|
||||||
|
$("#InviteLink").val(res.invitelink);
|
||||||
|
copy();
|
||||||
|
|
||||||
|
},
|
||||||
|
error(err){
|
||||||
|
|
||||||
|
}
|
||||||
|
})}).catch((error) => console.error("Get id token client error: ", error));
|
||||||
|
},
|
||||||
|
error(err){
|
||||||
|
|
||||||
|
}
|
||||||
|
})}).catch((error) => console.error("Get id token client error: ", error));
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
function copy(){
|
||||||
|
$(".copy").click(function(){
|
||||||
|
var copyText = document.getElementById("InviteLink");
|
||||||
|
copyText.select();
|
||||||
|
document.execCommand("copy");
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
$(".beitreten").click(function(){
|
||||||
|
let invitelink = $("#slbeitreten").val();
|
||||||
|
console.log(invitelink);
|
||||||
|
$.ajax({
|
||||||
|
type: "GET",
|
||||||
|
url: "/invite/:" + invitelink,
|
||||||
|
success(res){
|
||||||
|
console.log("funktioniert");
|
||||||
|
// geteilteEinkaufslisten();
|
||||||
|
// $(".beiLink").modal('hide');
|
||||||
|
// $("html").empty();
|
||||||
|
// $("html").append(`${res}`);
|
||||||
|
// console.log(res);
|
||||||
|
},
|
||||||
|
error(err){
|
||||||
|
console.log(err);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$(".Modalbeitreten").click(function(){
|
||||||
|
$(".beiLink").modal('show');
|
||||||
|
});
|
||||||
|
|
||||||
|
$(".purchased-items").click(function(){
|
||||||
|
$(".cardausgabe").hide();
|
||||||
|
$(".sharecards").hide();
|
||||||
|
$(".strich").hide();
|
||||||
|
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
|
||||||
|
$.ajax({
|
||||||
|
type:"GET",
|
||||||
|
url: "/donepurchases",
|
||||||
|
success(res){
|
||||||
|
// refreshDetailsl(slid);
|
||||||
|
console.log(res);
|
||||||
|
},
|
||||||
|
error(err){
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
|
});}).catch((error) => console.error("Get id token client error: ", error));
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
function donepurchase(){
|
||||||
|
$(".check").click(function(){
|
||||||
|
if($("input:checked")==true){
|
||||||
|
alert("ja");
|
||||||
|
}
|
||||||
|
// $.ajax({
|
||||||
|
// type:"POST",
|
||||||
|
// url: "/movedoneitem",
|
||||||
|
// success(res){
|
||||||
|
// // refreshDetailsl(slid);
|
||||||
|
// console.log(yay);
|
||||||
|
// },
|
||||||
|
// error(err){
|
||||||
|
// console.log(error);
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -1,3 +1,11 @@
|
|||||||
|
body{
|
||||||
|
background-image: url("./../images/Hintergrund.png");
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
position: sticky;
|
||||||
|
background-size: cover;
|
||||||
|
background-attachment: fixed
|
||||||
|
}
|
||||||
|
|
||||||
.logo-image{
|
.logo-image{
|
||||||
width: 46px;
|
width: 46px;
|
||||||
height: 46px;
|
height: 46px;
|
||||||
@ -10,11 +18,20 @@
|
|||||||
margin: 5%;
|
margin: 5%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.purchased-items{
|
||||||
|
background-color: transparent;
|
||||||
|
size: 50px;
|
||||||
|
}
|
||||||
|
|
||||||
.card{
|
.card{
|
||||||
margin: O auto;
|
margin: O auto;
|
||||||
float: none;
|
float: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.checkbox{
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
.btn-light{
|
.btn-light{
|
||||||
border-color: 1px solid black;
|
border-color: 1px solid black;
|
||||||
}
|
}
|
||||||
@ -25,6 +42,18 @@
|
|||||||
right: 5px;
|
right: 5px;
|
||||||
margin-top:-7px;
|
margin-top:-7px;
|
||||||
}
|
}
|
||||||
|
.sharetrash{
|
||||||
|
background: transparent;
|
||||||
|
position:absolute;
|
||||||
|
right: 5px;
|
||||||
|
margin-top:-7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.exinvitemembersssss{
|
||||||
|
background: transparent;
|
||||||
|
position:fixed;
|
||||||
|
margin-top: -7px;
|
||||||
|
}
|
||||||
|
|
||||||
.edit{
|
.edit{
|
||||||
background: transparent;
|
background: transparent;
|
||||||
@ -33,12 +62,45 @@
|
|||||||
margin-top:-7px;
|
margin-top:-7px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.shareedit{
|
||||||
|
background: transparent;
|
||||||
|
position: absolute;
|
||||||
|
right: 29px;
|
||||||
|
margin-top:-7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.showMembers{
|
||||||
|
background: transparent;
|
||||||
|
margin-top: -2%;
|
||||||
|
}
|
||||||
|
|
||||||
.sledit{
|
.sledit{
|
||||||
background: transparent;
|
background: transparent;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
margin-top: -7px;
|
margin-top: -7px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.postshare{
|
||||||
|
background: transparent;
|
||||||
|
position: absolute;
|
||||||
|
margin-top: -5px;
|
||||||
|
margin-left: 23px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.gredit{
|
||||||
|
background: transparent;
|
||||||
|
position: absolute;
|
||||||
|
right: 67px;
|
||||||
|
margin-top:-40px;
|
||||||
|
border: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.itemedit{
|
||||||
|
background: transparent;
|
||||||
|
position: absolute;
|
||||||
|
margin-top:-8px;
|
||||||
|
}
|
||||||
|
|
||||||
.groupadd{
|
.groupadd{
|
||||||
background: transparent;
|
background: transparent;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
<body id="vue-app">
|
<body id="vue-app">
|
||||||
|
|
||||||
<!-- Navbar -->
|
<!-- Navbar -->
|
||||||
<nav class="navbar sticky-top navbar-light bg-light" style="background-color:rgb(200, 200, 201)">
|
<nav class="navbar sticky-top navbar-light " style="background-color:rgba(92, 92, 97, 0.856)">
|
||||||
<a class="navbar-brand" id="dashurl">
|
<a class="navbar-brand" id="dashurl">
|
||||||
<div class="logo-image">
|
<div class="logo-image">
|
||||||
<img src="/images/Logo.png" class="img-fluid">
|
<img src="/images/Logo.png" class="img-fluid">
|
||||||
@ -27,19 +27,23 @@
|
|||||||
<ul class="nav justify-content-end liste">
|
<ul class="nav justify-content-end liste">
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<!-- <a class="nav-link active" href="#">Add</a> -->
|
<!-- <a class="nav-link active" href="#">Add</a> -->
|
||||||
<button class="btn btn-outline-light border-secondary sl_add" style="color: black">Shoppingliste
|
<button class="btn btn-outline-light sl_add" >Shoppingliste
|
||||||
Hinzufügen</button>
|
Hinzufügen</button>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<ul class="nav justify-content-end liste">
|
<ul class="nav justify-content-end liste">
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="btn btn-outline-light border-secondary userbearbeiten" href="/user" style="color: black">User
|
<a class="btn btn-outline-light userbearbeiten" href="/user" >User
|
||||||
bearbeiten</a>
|
bearbeiten</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<button class="btn btn-outline-danger logout" style="color: red">Logout</button>
|
<button class="btn btn-outline-light Modalbeitreten">Invite Link</button>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="nav-item">
|
||||||
|
<button class="btn btn-outline-danger logout">Logout</button>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<!-- <a href="/logout"> -->
|
<!-- <a href="/logout"> -->
|
||||||
@ -48,8 +52,9 @@
|
|||||||
<!-- </a> -->
|
<!-- </a> -->
|
||||||
</nav>
|
</nav>
|
||||||
<br>
|
<br>
|
||||||
<br>
|
|
||||||
|
|
||||||
|
<center><button class="btn purchased-items"><h5>Erledigte Einkäufe</h5></button></center>
|
||||||
|
<div class="strich mb-4" style="margin-left: 2%;margin-right: 2%;"><hr style="border: 1px solid rgba(92, 92, 97, 0.767);"></div>
|
||||||
<!-- alle cards-->
|
<!-- alle cards-->
|
||||||
<div class="container justify-content-center cardausgabe">
|
<div class="container justify-content-center cardausgabe">
|
||||||
<div class="card-columns">
|
<div class="card-columns">
|
||||||
@ -57,10 +62,13 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="strich mb-4" style="margin-left: 2%;margin-right: 2%;"><hr style="border: 1px solid rgba(92, 92, 97, 0.767);"></div>
|
||||||
<!-- shares cards -->
|
<!-- shared cards -->
|
||||||
<div class="row justify-content-center ">
|
<div class="container justify-content-center sharecards">
|
||||||
<div class="container shared-cards"></div>
|
<div class="card-columns">
|
||||||
|
<div class="shared-cards">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
@ -79,8 +87,72 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Modal Link -->
|
||||||
|
<div class="modal fade bd-example-modal-sm beiLink" tabindex="-1" role="dialog"
|
||||||
|
aria-labelledby="mySmallModalLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-sm">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div>
|
||||||
|
|
||||||
<!-- Modal Group Hinzufügen -->
|
<center>
|
||||||
|
<p class="layout ueberschrift">Shoppingliste beitreten</p>
|
||||||
|
</center>
|
||||||
|
<div class="form-group layout">
|
||||||
|
<input type="text" class="form-control" id="slbeitreten" placeholder="Link einfügen">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<center><button type="submit" class="btn btn-outline-dark beitreten">beitreten</button></center>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Modal Members Anzeigen -->
|
||||||
|
<div class="modal fade bd-example-modal-sm Mem" tabindex="-1" role="dialog"
|
||||||
|
aria-labelledby="mySmallModalLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-sm">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div>
|
||||||
|
|
||||||
|
<center>
|
||||||
|
<p class="layout ueberschrift">Alle Mitglieder</p>
|
||||||
|
</center>
|
||||||
|
|
||||||
|
<div class="card alleMem" style="border: 0px solid black;">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Modal Invite Link Anzeigen -->
|
||||||
|
<div class="modal fade bd-example-modal-sm InviteLinkAnzeigen" tabindex="-1" role="dialog"
|
||||||
|
aria-labelledby="mySmallModalLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-sm">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div>
|
||||||
|
|
||||||
|
<center>
|
||||||
|
<p class="layout ueberschrift">Invite Link</p>
|
||||||
|
</center>
|
||||||
|
<div class="input-group layout" style="max-width: 17rem;">
|
||||||
|
<input type="text" class="form-control" id="InviteLink">
|
||||||
|
<div class="input-group-append">
|
||||||
|
<button class="btn copy" type="button">Copy Link</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Modal Group hinzufügen Hinzufügen -->
|
||||||
<div class="modal fade bd-example-modal-sm ListenDetailAdd" tabindex="-1" role="dialog"
|
<div class="modal fade bd-example-modal-sm ListenDetailAdd" tabindex="-1" role="dialog"
|
||||||
aria-labelledby="mySmallModalLabel" aria-hidden="true">
|
aria-labelledby="mySmallModalLabel" aria-hidden="true">
|
||||||
<div class="modal-dialog modal-sm">
|
<div class="modal-dialog modal-sm">
|
||||||
@ -177,6 +249,35 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Modal Item Bearbeiten -->
|
||||||
|
<div class="modal fade bd-example-modal-sm GroupItemedit" tabindex="-1" role="dialog"
|
||||||
|
aria-labelledby="mySmallModalLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-sm eh" id="">
|
||||||
|
<div class="modal-content eh2" id="">
|
||||||
|
<div class="eh3" id=""></div>
|
||||||
|
<div class="inhalt">
|
||||||
|
|
||||||
|
<center>
|
||||||
|
<p class="layout ueberschrift">Item Bearbeiten</p>
|
||||||
|
</center>
|
||||||
|
<div class="form-group layout">
|
||||||
|
<label for="exampleInputEmail1">Gegenstand</label>
|
||||||
|
<input type="text" class="form-control" id="itemnameb" placeholder="zB: Coca Cola">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group layout">
|
||||||
|
<label for="Anzahl-example">Anzahl</label>
|
||||||
|
<input type="number" class="form-control" id="inputGroupSelect02" placeholder="zB: 2"
|
||||||
|
maxlength="3">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<center><button type="submit" class="btn btn-outline-dark itemhinzub">Hinzufügen</button></center>
|
||||||
|
<br>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<!-- Modal Shoppingliste Hinzufügen -->
|
<!-- Modal Shoppingliste Hinzufügen -->
|
||||||
<div class="modal fade bd-example-modal-sm EigeneListeAdd" tabindex="-1" id="EigeneListeAdd" role="dialog"
|
<div class="modal fade bd-example-modal-sm EigeneListeAdd" tabindex="-1" id="EigeneListeAdd" role="dialog"
|
||||||
@ -184,7 +285,9 @@
|
|||||||
<div class="modal-dialog modal-sm">
|
<div class="modal-dialog modal-sm">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
<div>
|
<div>
|
||||||
|
<center>
|
||||||
|
<p class="layout ueberschrift">Shoppingliste hinzufügen</p>
|
||||||
|
</center>
|
||||||
<div class="form-group layout">
|
<div class="form-group layout">
|
||||||
<label for="exampleInputEmail1">Name</label>
|
<label for="exampleInputEmail1">Name</label>
|
||||||
<input type="text" class="form-control" id="einkaufslistenname" placeholder="zB: Billa">
|
<input type="text" class="form-control" id="einkaufslistenname" placeholder="zB: Billa">
|
||||||
@ -257,6 +360,9 @@
|
|||||||
<div class="modal-content editmodal" id="">
|
<div class="modal-content editmodal" id="">
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
|
<center>
|
||||||
|
<p class="layout ueberschrift">Schoppingliste bearbeiten</p>
|
||||||
|
</center>
|
||||||
<div class="form-group layout">
|
<div class="form-group layout">
|
||||||
<label for="exampleInputEmail1">Name</label>
|
<label for="exampleInputEmail1">Name</label>
|
||||||
<input type="text" class="form-control" id="editname" placeholder="zB: Billa">
|
<input type="text" class="form-control" id="editname" placeholder="zB: Billa">
|
||||||
@ -268,6 +374,52 @@
|
|||||||
placeholder="zB: Großeinkauf bei Billa">
|
placeholder="zB: Großeinkauf bei Billa">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group layout">
|
||||||
|
<label for="exampleInputPassword1">Farbe </label>
|
||||||
|
<i class="fas fa-square-full aktuelleFarbe"></i>
|
||||||
|
<div class="farbeeen">
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe1" value="F44336" />
|
||||||
|
<label for="farbe1"><span class="farbe1"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe2" value="e91e63" />
|
||||||
|
<label for="farbe2"><span class="farbe2"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe3" value="9c27b0" />
|
||||||
|
<label for="farbe3"><span class="farbe3"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe4" value="673ab7" />
|
||||||
|
<label for="farbe4"><span class="farbe4"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe5" value="3F51B5" />
|
||||||
|
<label for="farbe5"><span class="farbe5"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe6" value="2196F3" />
|
||||||
|
<label for="farbe6"><span class="farbe6"></span></label>
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe7" value="03a9f4" />
|
||||||
|
<label for="farbe7"><span class="farbe7"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe8" value="00bcd4" />
|
||||||
|
<label for="farbe8"><span class="farbe8"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe9" value="009688" />
|
||||||
|
<label for="farbe9"><span class="farbe9"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe10" value="4caf50" />
|
||||||
|
<label for="farbe10"><span class="farbe10"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe11" value="8bc34a" />
|
||||||
|
<label for="farbe11"><span class="farbe11"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe12" value="cddc39" />
|
||||||
|
<label for="farbe12"><span class="farbe12"></span></label>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<center><button type="submit" class="btn btn-outline-dark update">Hinzufügen</button></center>
|
<center><button type="submit" class="btn btn-outline-dark update">Hinzufügen</button></center>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
@ -276,6 +428,75 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Modal Group bearbeiten -->
|
||||||
|
<div class="modal fade bd-example-modal-sm Listengroupbearbeiten" id="Listengroupbearbeiten" tabindex="-1" role="dialog"
|
||||||
|
aria-labelledby="Listengroupbearbeiten" aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-sm">
|
||||||
|
<div class="modal-content editgroudmodal slid" id="">
|
||||||
|
<div class="grouid" id="">
|
||||||
|
|
||||||
|
<center>
|
||||||
|
<p class="layout ueberschrift">Group bearbeiten</p>
|
||||||
|
</center>
|
||||||
|
<div class="form-group layout">
|
||||||
|
<label for="exampleInputEmail1">Name</label>
|
||||||
|
<input type="text" class="form-control" id="groupb" placeholder="zB: Getränke">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group layout">
|
||||||
|
<label for="exampleInputPassword1">Farbe: </label>
|
||||||
|
<i class="fas fa-square-full aktuelleFarbe2"></i>
|
||||||
|
<div class="farbeeen">
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe1" value="F44336" />
|
||||||
|
<label for="farbe1"><span class="farbe1"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe2" value="e91e63" />
|
||||||
|
<label for="farbe2"><span class="farbe2"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe3" value="9c27b0" />
|
||||||
|
<label for="farbe3"><span class="farbe3"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe4" value="673ab7" />
|
||||||
|
<label for="farbe4"><span class="farbe4"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe5" value="3F51B5" />
|
||||||
|
<label for="farbe5"><span class="farbe5"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe6" value="2196F3" />
|
||||||
|
<label for="farbe6"><span class="farbe6"></span></label>
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe7" value="03a9f4" />
|
||||||
|
<label for="farbe7"><span class="farbe7"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe8" value="00bcd4" />
|
||||||
|
<label for="farbe8"><span class="farbe8"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe9" value="009688" />
|
||||||
|
<label for="farbe9"><span class="farbe9"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe10" value="4caf50" />
|
||||||
|
<label for="farbe10"><span class="farbe10"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe11" value="8bc34a" />
|
||||||
|
<label for="farbe11"><span class="farbe11"></span></label>
|
||||||
|
|
||||||
|
<input type="radio" name="color" id="farbe12" value="cddc39" />
|
||||||
|
<label for="farbe12"><span class="farbe12"></span></label>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<center><button type="submit" class="btn btn-outline-dark gruppbea">Hinzufügen</button></center>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- <a href="/shoppinglist_json/0">dfasdfghjklöghjkl</a> -->
|
<!-- <a href="/shoppinglist_json/0">dfasdfghjklöghjkl</a> -->
|
||||||
<!-- <a href="/myshoppinglists">Meine Einkaufslisten anzeigen</a><br>
|
<!-- <a href="/myshoppinglists">Meine Einkaufslisten anzeigen</a><br>
|
||||||
<a href="/sharedshoppinglists">Mit mir geteilte Einkaufslisten anzeigen</a><br>
|
<a href="/sharedshoppinglists">Mit mir geteilte Einkaufslisten anzeigen</a><br>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user