// 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: {}
    },

    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: "white",
                                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)
                }
            });

        }
    },

    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)
            }
        });
    }
});

$(document).ready(function(){
    $('.collapsible').collapsible();
    $('.modal').modal();
  });

$(document).on("click", ".citemL", function () {
    $(".activeL").removeClass("activeL");
    $(this).addClass("activeL");
});

$(".nav-createlist").click(function() {
    $('#modal1').modal("open");
});