Firebase Update
This commit is contained in:
@ -1,9 +1,67 @@
|
||||
$(document).ready(function() {
|
||||
// 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(),
|
||||
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)}});
|
||||
|
||||
});
|
||||
|
||||
$(".gruppenadd").click(function(){
|
||||
|
||||
// let name = $("#groupname").val();
|
||||
@ -31,29 +89,8 @@ $(document).ready(function() {
|
||||
$('#EigeneListeAdd').modal('show');
|
||||
});
|
||||
|
||||
|
||||
$(".add").click(function(){
|
||||
|
||||
// let name = $("#einkaufslistenname").val();
|
||||
// let beschreibung = $("#einkaufslistenbeschreibung").val();
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/shoppinglist",
|
||||
data: {
|
||||
name: $("#einkaufslistenname").val(),
|
||||
description: $("#einkaufslistenbeschreibung").val()
|
||||
},
|
||||
success(res){
|
||||
console.log("add funktioniert");
|
||||
$("#normalAdd").modal("hide");
|
||||
},
|
||||
error(err){
|
||||
console.log("error");
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
});
|
||||
|
||||
@ -61,63 +98,82 @@ 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){
|
||||
let userinfo = "jhsbdjhf";
|
||||
// console.log(userinfo);
|
||||
|
||||
$.ajax({
|
||||
type: "GET",
|
||||
url: "/myshoppinglists",
|
||||
success(res){
|
||||
|
||||
$.ajax({
|
||||
type: "GET",
|
||||
url: "/userinfo_json",
|
||||
success(data){
|
||||
let userinfo = data.profile.displayName
|
||||
console.log(userinfo);
|
||||
|
||||
for(let i = 0; i < res.length; i++){
|
||||
const el = res[i];
|
||||
|
||||
$(".listen-ausgabe").append(`<div class="col-md-12 karten">
|
||||
<div class="card border-light mb-3" style="max-width: 18rem;" id="${el.sl_id}">
|
||||
<div class="card-header">
|
||||
<span>${userinfo}</span>
|
||||
<button class="btn edit"><i class="fas fa-angle-down"></i></button>
|
||||
<button class="btn trash"><i class="far fa-trash-alt"></i></button>
|
||||
<button class="btn groupadd" data-toggle="modal" data-target=".ListenDetailAdd"><i class="fas fa-ellipsis-v"></i></button>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">${el.name}</h5>
|
||||
<p class="card-text">${el.description}</p>
|
||||
</div>
|
||||
</div></div>`
|
||||
)
|
||||
for(let i = 0; i < res.length; i++){
|
||||
const el = res[i];
|
||||
|
||||
$(".listen-ausgabe").append(`<div class="col-md-12 karten">
|
||||
<div class="card border-light mb-3" style="max-width: 18rem;" id="${el.sl_id}">
|
||||
<div class="card-header">
|
||||
<span>${userinfo}</span>
|
||||
<button class="btn edit"><i class="fas fa-angle-down"></i></button>
|
||||
<button class="btn trash"><i class="far fa-trash-alt"></i></button>
|
||||
<button class="btn groupadd" data-toggle="modal" data-target=".ListenDetailAdd"><i class="fas fa-ellipsis-v"></i></button>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">${el.name}</h5>
|
||||
<p class="card-text">${el.description}</p>
|
||||
</div>
|
||||
</div></div>`
|
||||
)
|
||||
}
|
||||
console.log("Eigene Einkaufslisten");
|
||||
loeschen();
|
||||
lala();
|
||||
Detail();
|
||||
// groupHinzufügen()
|
||||
},
|
||||
error(err){
|
||||
console.error("userinfo_json error: ", err)
|
||||
}
|
||||
console.log("Eigene Einkaufslisten");
|
||||
loeschen();
|
||||
lala();
|
||||
Detail();
|
||||
// groupHinzufügen()
|
||||
}
|
||||
})
|
||||
},
|
||||
error(err){
|
||||
console.log("error");
|
||||
}
|
||||
});
|
||||
})
|
||||
}).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(){
|
||||
$.ajax({
|
||||
data: "GET",
|
||||
url: "/sharedshoppinglists",
|
||||
success(res){
|
||||
console.log("Geteilte Einkaufslisten");
|
||||
},
|
||||
error(err){
|
||||
console.log("error");
|
||||
}
|
||||
});
|
||||
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(){
|
||||
@ -161,49 +217,62 @@ function Detail(){
|
||||
|
||||
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("/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);
|
||||
|
||||
$.ajax({
|
||||
data: "GET",
|
||||
url: "/shoppinglist_json/" + id,
|
||||
success(res){
|
||||
|
||||
$.ajax({
|
||||
type: "GET",
|
||||
url: "/myshoppinglists",
|
||||
success(result){
|
||||
|
||||
$.ajax({
|
||||
type: "GET",
|
||||
url: "/userinfo_json",
|
||||
success(data){
|
||||
let userinfo = data.profile.displayName
|
||||
console.log(userinfo);
|
||||
|
||||
const neu = result.filter(obj => obj.sl_id === id);
|
||||
|
||||
$(".card-header").append(`<h1 class="text-center">${neu[0].name}</h1><button class="btn itemadd"><ion-icon name="more" size="large"></ion-icon></button>
|
||||
`);
|
||||
for (let i = 0; i < res.length; i++) {
|
||||
const el = res[i];
|
||||
$(".card-text").append(`<div class="card border-dark mb-3 items" id="${el.group_id}" style="max-width: 18rem;">
|
||||
<div class="card-body text-dark">
|
||||
<h5 class="card-title text-center">${el.name}</h5>
|
||||
</div>
|
||||
</div>`);
|
||||
$(".card-header").append(`<h1 class="text-center">${neu[0].name}</h1><button class="btn itemadd"><ion-icon name="more" size="large"></ion-icon></button>
|
||||
`);
|
||||
for (let i = 0; i < res.length; i++) {
|
||||
const el = res[i];
|
||||
$(".card-text").append(`<div class="card border-dark mb-3 items" id="${el.group_id}" style="max-width: 18rem;">
|
||||
<div class="card-body text-dark">
|
||||
<h5 class="card-title text-center">${el.name}</h5>
|
||||
</div>
|
||||
</div>`);
|
||||
}
|
||||
ItemAdden()
|
||||
},
|
||||
error(err){
|
||||
console.log("Detail error userinfo_json: ", err);
|
||||
}
|
||||
ItemAdden()
|
||||
}
|
||||
})
|
||||
},
|
||||
error(err){
|
||||
console.log("error");
|
||||
}
|
||||
});
|
||||
},
|
||||
error(err){
|
||||
console.log("error");
|
||||
}
|
||||
});
|
||||
})
|
||||
},
|
||||
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)}});
|
||||
});
|
||||
};
|
||||
|
||||
|
1603
express-server/public/javascripts/axios.js
Normal file
1603
express-server/public/javascripts/axios.js
Normal file
File diff suppressed because it is too large
Load Diff
76
express-server/public/javascripts/login.js
Normal file
76
express-server/public/javascripts/login.js
Normal file
@ -0,0 +1,76 @@
|
||||
|
||||
|
||||
// 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);
|
||||
|
||||
|
||||
function checkAuth(){
|
||||
firebase.auth().onAuthStateChanged(async function(user){
|
||||
if(user){
|
||||
try{
|
||||
firebase.auth().currentUser.getIdToken(/* forceRefresh */ true).then(function(idToken) {
|
||||
console.log("Vor Replace");
|
||||
window.location.replace("/dash/" + idToken);
|
||||
}).catch(function(error) {
|
||||
console.error("Get id token client error: ", error)
|
||||
});
|
||||
}catch{
|
||||
console.error("checkAuth error: ")
|
||||
}
|
||||
|
||||
// document.getElementById("loginbutton").style.display = "none";
|
||||
//
|
||||
}else{
|
||||
// document.getElementById("loginbutton").style.display = "block";
|
||||
console.log("Check Auth error", user)
|
||||
}
|
||||
})
|
||||
var user = firebase.auth().currentUser;
|
||||
}
|
||||
window.onload = function(){
|
||||
checkAuth();
|
||||
}
|
||||
|
||||
|
||||
var vue = new Vue({
|
||||
el: '#vue-app',
|
||||
data:{
|
||||
|
||||
},
|
||||
methods: {
|
||||
login(){
|
||||
var provider = new firebase.auth.GoogleAuthProvider();
|
||||
provider.addScope('profile');
|
||||
provider.addScope('email');
|
||||
firebase.auth().signInWithPopup(provider).then(function(result) {
|
||||
// This gives you a Google Access Token. You can use it to access the Google API.
|
||||
var token = result.credential.accessToken;
|
||||
var idToken = result.credential.idToken;
|
||||
// The signed-in user info.
|
||||
var user = result.user;
|
||||
console.log("Eingelogt");
|
||||
checkAuth();
|
||||
}).catch(function(error) {
|
||||
// Handle Errors here.
|
||||
var errorCode = error.code;
|
||||
var errorMessage = error.message;
|
||||
// The email of the user's account used.
|
||||
var email = error.email;
|
||||
// The firebase.auth.AuthCredential type that was used.
|
||||
var credential = error.credential;
|
||||
|
||||
});
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
}
|
||||
});
|
@ -1,23 +0,0 @@
|
||||
const GoogleStrategy = require('passport-google-oauth').OAuth2Strategy;
|
||||
|
||||
module.exports = (passport) => {
|
||||
passport.serializeUser((user, done) => {
|
||||
done(null, user);
|
||||
});
|
||||
|
||||
passport.deserializeUser((user, done) => {
|
||||
done(null, user);
|
||||
});
|
||||
|
||||
passport.use(new GoogleStrategy({
|
||||
clientID: '987329071574-imvtfil34qrnlgouc0njo62aq4md5g1e.apps.googleusercontent.com',
|
||||
clientSecret: 'xABbcOGWgLCp6X0P4BTjZNYb',
|
||||
callbackURL: '/auth/google/callback'
|
||||
},
|
||||
(token, refreshToken, profile, done) => {
|
||||
return done(null, {
|
||||
profile: profile,
|
||||
token: token
|
||||
});
|
||||
}));
|
||||
};
|
Reference in New Issue
Block a user