2019-03-20 18:45:36 +01:00

318 lines
9.5 KiB
JavaScript

// 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);
var app = new Vue({
el: ".myapp",
data: {
title: "smartshopper.cf",
myshoppinglists: [],
sharedshoppinglists: [],
currentlist: {},
currentGroup: String,
users: [],
done_purchases: []
},
methods: {
deleteShoppinglist(sl_id) {
firebase.auth().onAuthStateChanged(function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
axios({
method: 'delete',
url: "/shoppinglist",
data: {
sl_id: sl_id,
idtoken: idtoken
}
}).then((res) => {
app.myshoppinglists = res.data;
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
},
getShoppinglistDetail(sl_id) {
axios({
method: 'get',
url: "/shoppinglist_json/" + sl_id,
}).then((res) => {
app.currentlist = res.data;
console.log(res.data);
});
},
createShoppinglist(name, description) {
firebase.auth().onAuthStateChanged(function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
axios({
method: 'post',
url: "/shoppinglist",
data: {
name: name,
description: description,
color: "#00a1ff",
idtoken: idtoken
}
}).then((res) => {
app.myshoppinglists = res.data;
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
},
deleteGroup(group_id, sl_id) {
axios({
method: 'delete',
url: "/group",
data: {
sl_id: sl_id,
group_id: group_id
}
}).then((res) => {
console.log(res.data);
app.currentlist = res.data;
});
},
addGroup(sl_id, name) {
axios({
method: 'post',
url: "/group",
data: {
sl_id: sl_id,
name: name,
color: "#00a1ff",
hidden: false
}
}).then((res) => {
console.log(res.data);
app.currentlist = res.data;
});
},
addItem(group_id, sl_id, name, count) {
console.log("AAA" + group_id + " ddd, " + sl_id)
axios({
method: 'post',
url: "/item",
data: {
sl_id: sl_id,
group_id: group_id,
name: name,
count: count
}
}).then((res) => {
console.log(res.data);
app.currentlist = res.data;
});
},
setCurrentGroup(group_id) {
app.currentGroup = group_id;
console.log(group_id);
},
delItem(item_id, group_id, sl_id) {
console.log(item_id + " d " + group_id + " " + sl_id)
axios({
method: 'delete',
url: "/item",
data: {
sl_id: sl_id,
group_id: group_id,
item_id: item_id
}
}).then((res) => {
console.log(res.data);
app.currentlist = res.data;
});
},
removeMember(sl_id) {
firebase.auth().onAuthStateChanged(function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
axios({
method: 'delete',
url: "/exitinvite",
data: {
sl_id: sl_id,
idtoken: idtoken
}
}).then((res) => {
app.sharedshoppinglists = res.data;
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
},
createInvite(sl_id) {
axios({
method: 'post',
url: "/invite",
data: {
sl_id: sl_id
}
}).then((res) => {
M.toast({html: 'Invite Link created'});
});
},
searchUsers(search) {
axios({
method: 'get',
url: "/users?search=" + search
}).then((res) => {
app.users = res.data
});
},
inviteMan(sl_id, user_id) {
axios({
method: 'post',
url: "/maninvite",
data : {
uid: user_id,
sl_id: sl_id
}
}).then((res) => {
M.toast({html: 'User invited'});
});
}
},
created() {
firebase.auth().onAuthStateChanged(function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
axios.get('/myshoppinglists?idtoken=' + idtoken)
.then(function (res) {
app.myshoppinglists = res.data;
console.log(res.data);
})
.catch(function (error) {
console.log(error);
})
.then(function () {
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
firebase.auth().onAuthStateChanged(function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
axios.get('sharedshoppinglists?idtoken=' + idtoken)
.then(function (res) {
app.sharedshoppinglists = res.data;
console.log(res.data);
})
.catch(function (error) {
console.log(error);
})
.then(function () {
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
firebase.auth().onAuthStateChanged(function (user) {
if (user) {
firebase.auth().currentUser.getIdToken( /* forceRefresh */ true).then(function (idtoken) {
axios.get('/donepurchases?idtoken=' + idtoken)
.then(function (res) {
app.done_purchases = res.data;
console.log(res.data);
})
.catch(function (error) {
console.log(error);
})
.then(function () {
});
}).catch((error) => console.error("Get id token client error: ", error));
} else {
console.log("Check Auth error", user)
}
});
});
}
});
$(document).ready(function(){
$('.collapsible').collapsible();
$('.modal').modal();
});
$(document).on("click", ".citemL", function () {
$(".activeL").removeClass("activeL");
$(this).addClass("activeL");
});
$(".crtList").click(function() {
$('#modal1').modal("open");
});
$(document).on("click", ".modlGR", function () {
$('#modalGR').modal("open");
});
$(document).on("click", ".modlIT", function () {
$('#modalIT').modal("open");
});
$(".modlINV").click(function() {
$('#modalINV').modal("open");
});
$(".modlINVM").click(function() {
$('#modalINVM').modal("open");
});