// Initialize Firebase
var 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);
$(document).ready(function () {
firebase.auth().onAuthStateChanged(async function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
console.log("/shoppinglistx idtoken:", idtoken);
var url = "/dash/" + idtoken
console.log("URL: ", url)
$('#dashurl').attr("href", url);
}).catch((error) => console.error("/shoppinglist Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
eigeneEinkaufslisten();
geteilteEinkaufslisten();
$(".detailcardausgabe").hide();
$(".logout").click(function () {
console.log("click logout")
firebase.auth().signOut().then(function () {
document.location.replace('/');
}).catch(function (error) {
console.error("Logout Error: ", error)
});
});
$('.add').click(function () {
console.log("click add");
// let name = $("#einkaufslistenname").val();
firebase.auth().onAuthStateChanged(async function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
console.log("/shoppinglistx idtoken:", idtoken);
$.ajax({
type: "POST",
url: "/shoppinglist",
data: {
name: $("#einkaufslistenname").val(),
description: $("#einkaufslistenbeschreibung").val(),
color: $("input:checked").val(),
idtoken: idtoken
},
success(res) {
console.log("add funktioniert");
$(".listen-ausgabe").html("");
eigeneEinkaufslisten();
geteilteEinkaufslisten();
$("#EigeneListeAdd").modal("hide");
},
error(err) {
console.log("/shoppinglist error", err);
}
});
}).catch((error) => console.error("/shoppinglist Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
});
$(".sl_add").click(function () {
$('#EigeneListeAdd').modal('show');
});
});
var globaleAddZwischenID = "";
// var globaleGetZwischenID = "";
function eigeneEinkaufslisten() {
firebase.auth().onAuthStateChanged(async function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
console.log("/myshoppinglists idtoke: ", idtoken);
$.ajax({
type: "GET",
url: "/myshoppinglists",
data: {
idtoken: idtoken
},
success(res) {
firebase.auth().onAuthStateChanged(async function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
console.log("/userinfo_json idtoken: ", idtoken)
$.ajax({
type: "GET",
url: "/userinfo_json",
data: {
idtoken: idtoken
},
success(data) {
const userinfo = data.name;
const picture = data.picture;
console.log(data)
for (let i = 0; i < res.length; i++) {
const el = res[i];
$(".listen-ausgabe").append(`
${el.name}
${el.description}
`)
}
console.log("Eigene Einkaufslisten");
loeschen();
Detail();
// groupHinzufügen()
},
error(err) {
console.error("userinfo_json error: ", err)
}
})
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
},
error(err) {
console.error("/myshoppinglists ajax error: ", err);
}
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
};
function geteilteEinkaufslisten() {
firebase.auth().onAuthStateChanged(async function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
console.log("/sharedshoppinglists idtoke: ", idtoken)
$.ajax({
data: "GET",
url: "/sharedshoppinglists",
data: {
idtoken: idtoken
},
success(res) {
console.log("Geteilte Einkaufslisten");
},
error(err) {
console.error("/sharedshoppinglists error:", err);
}
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
};
function loeschen() {
$(".trash").click(function () {
let card = $(this).closest(".card");
let id = card.attr("id");
// console.log(id);
$.ajax({
type: "DELETE",
url: "/shoppinglist",
data: {
sl_id: id
},
success(res) {
console.log("card gelöscht");
card.remove();
},
error(err) {
console.log("error");
}
});
});
};
function lala() {
$(".groupadd").click(function () {
let getid = $(this).closest('.shoplistid');
let id = getid.attr('id');
console.log(id);
globaleAddZwischenID = id;
});
}
function gruppenhinzu() {
$(".gruppenadd").click(function () {
let name = $("#groupname").val();
let color = $("input:checked").val();
$("#ListenDetailAdd").modal("hide");
console.log(globaleAddZwischenID);
firebase.auth().onAuthStateChanged(async function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
$.ajax({
type: "POST",
url: "/group",
data: {
idtoken:idtoken,
sl_id: globaleAddZwischenID,
name: $("#groupname").val(),
color: $("input:checked").val(),
hidden: false
},
success(res) {
$(".gruppeninhalt").append(`
`);
},
error(err) {
console.log("error");
}
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
});
}
function Detail() {
$(".edit").click(function () {
$(".cardausgabe").hide();
$(".detailcardausgabe").show();
let card = $(this).closest(".card");
let id = card.attr("id");
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(res) {
console.log(res)
console.log("/myshoppinglists inside idtoken: ", idtoken)
$.ajax({
type: "GET",
url: "/myshoppinglists",
data: {
idtoken: idtoken
},
success(result) {
// var idtoken = getIdTokenGoogle()
$.ajax({
type: "GET",
url: "/userinfo_json",
data: {
idtoken: idtoken
},
success(data) {
let userinfo = "some info"
console.log(userinfo);
const neu = result.filter(obj => obj.sl_id === id);
var link = "/dash/" + idtoken;
$(".kopf").attr("style", `background-color:#${neu[0].color}`);
console.log(neu[0].color);
$(".card-header").append(`
`);
for (let i = 0; i < res.groups.length; i++) {
const el = res.groups[i];
$(".gruppeninhalt").append(`
`);
for (let x = 0; x < el.content.length; x++) {
const el2 = el.content[x]
$(`.${el.name}`).append(`- ${el2.count}x ${el2.name}
`);
}
}
lala();
gruppenhinzu();
ItemAdden();
groupdelete();
},
error(err) {
console.log("Detail error userinfo_json: ", err);
}
})
},
error(err) {
console.log("Detail error myshoppinglists: ", err);
}
});
},
error(err) {
console.log("Detail error shoppinglist_json: ", err);
}
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
});
};
function ItemAdden() {
$(".itemadd").click(function () {
let getid = $(this).closest('.shoplistid');
let id = getid.attr('id');
console.log(id);
globaleAddZwischenID = id;
console.log(id);
$('.select').remove();
$('.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.groups);
for (let i = 0; i < result.groups.length; i++) {
const el = result.groups[i];
$(".custom-select-groups").append(`
`);
}
},
error(err) {
console.log(err);
}
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
});
}
$(".itemhinzu").click(function () {
var name = $('#itemname').val();
var zahl = $('#inputGroupSelect01').val();
var gruppe = $('#inputGroupSelect02').val();
console.log(name);
console.log(zahl);
console.log(gruppe);
firebase.auth().onAuthStateChanged(async function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
$.ajax({
type: "POST",
url: "/item",
data: {
group_id: $('#inputGroupSelect02').val(),
sl_id: globaleAddZwischenID,
name: $('#itemname').val(),
count: $('#inputGroupSelect01').val()
},
success(result) {
console.log("post item");
},
error(err) {
}
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
Detail();
});
function groupdelete() {
$('.trashgroup').click(function () {
let getid = $(this).closest('.shoplisteid');
let shoplistid = getid.attr('id');
let getid2 = $(this).closest('.groupid');
let groupid = getid2.attr('id');
console.log(shoplistid);
console.log(groupid);
$.ajax({
type: "DELETE",
url: "/group",
data: {
sl_id: shoplistid,
group_id: groupid
},
success(res) {
console.log("card gelöscht");
$(`.${groupid}`).remove();
},
error(err) {
console.log("error");
}
});
});
};