User bearbeiten fertig
This commit is contained in:
@ -9,6 +9,12 @@ var config = {
|
||||
};
|
||||
firebase.initializeApp(config);
|
||||
|
||||
var storage = firebase.storage();
|
||||
|
||||
var msg = firebase.messaging();
|
||||
// import postgres from "./../db-connect/db-connect";
|
||||
|
||||
|
||||
var vue = new Vue({
|
||||
el: '#vue-app',
|
||||
prop: {
|
||||
@ -16,14 +22,130 @@ var vue = new Vue({
|
||||
getpic: ''
|
||||
},
|
||||
data: {
|
||||
dataPic: ''
|
||||
dataPic: '',
|
||||
image: '',
|
||||
idToken: '',
|
||||
mid: ''
|
||||
|
||||
},
|
||||
methods: {
|
||||
fertig(){
|
||||
this.dbUserUpdate(this.idToken, name, this.dataPic, this.mid);
|
||||
},
|
||||
updateUser(){
|
||||
console.log("updateuser")
|
||||
var currentUser = firebase.auth().currentUser;
|
||||
var vm = this;
|
||||
currentUser.getIdToken( /* forceRefresh */ true).then(function (idToken) {
|
||||
console.log("Vor Replace");
|
||||
msg.requestPermission()
|
||||
.then(function () {
|
||||
|
||||
return msg.getToken();
|
||||
})
|
||||
.then(token => {
|
||||
console.log("Zugriff auf msg", token, this.name, vm.dataPic);
|
||||
vm.idToken = idToken;
|
||||
vm.mid = token;
|
||||
vm.image = '';
|
||||
})
|
||||
.catch(err => {
|
||||
console.error("Msg Error: ", err);
|
||||
vm.idToken = idToken;
|
||||
vm.mid = "";
|
||||
vm.image = '';
|
||||
})
|
||||
|
||||
|
||||
}).catch(function (error) {
|
||||
console.error("Get id token client error: ", error)
|
||||
});
|
||||
|
||||
},
|
||||
dbUserUpdate(token, name, pic, mid){
|
||||
console.log("dbuserupdate: ", token, "\nname", name,"\npic: ", pic, "\nMId: ", mid)
|
||||
var vm = this;
|
||||
var user = firebase.auth().currentUser;
|
||||
user.updateProfile({
|
||||
displayName: name,
|
||||
photoURL: "https://example.com/jane-q-user/profile.jpg"
|
||||
}).then(async function() {
|
||||
|
||||
}).catch(function(error) {
|
||||
console.error(error)
|
||||
});
|
||||
|
||||
console.log('Pic for upload: ', vm.dataPic)
|
||||
|
||||
// let req = {
|
||||
// url: '/userbearbeiten/'+vm.idToken+'/'+name+'/'+vm.dataPic+'/'+vm.mid,
|
||||
// method: 'POST',
|
||||
// }
|
||||
// axios(req).then(response => {
|
||||
// resolve(response.data.content)
|
||||
// console.log("POST result: ", response)
|
||||
// vm.startGetUser();
|
||||
// }, response => {
|
||||
// this.handleEditError(response)
|
||||
// })
|
||||
|
||||
|
||||
// axios.post('/userbearbeiten/'+vm.idToken+'/'+name+'/'+vm.dataPic+'/'+vm.mid).then(result => {
|
||||
// console.log("POST result: ", result.data)
|
||||
// vm.startGetUser();
|
||||
// }).catch(err => console.error("Axios error: ", err));
|
||||
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: '/userbearbeiten',
|
||||
data: {
|
||||
token: vm.idToken,
|
||||
mid: vm.mid,
|
||||
pic: vm.dataPic,
|
||||
name: name
|
||||
},
|
||||
success(result) {
|
||||
console.log("POST result: ", result)
|
||||
vm.startGetUser();
|
||||
},
|
||||
error(err) {
|
||||
console.error("Error: " + err);
|
||||
}
|
||||
});
|
||||
},
|
||||
fotoChoose(){
|
||||
|
||||
console.log("fotochoose")
|
||||
var vm = this;
|
||||
var currentUser = firebase.auth().currentUser;
|
||||
var uid = currentUser.uid;
|
||||
var uploadTask = storage.ref('/').child(uid).putString(this.image, 'data_url', {contentType:'image/jpeg'});
|
||||
uploadTask.on(firebase.storage.TaskEvent.STATE_CHANGED, // or 'state_changed'
|
||||
function(snapshot) {
|
||||
// Get task progress, including the number of bytes uploaded and the total number of bytes to be uploaded
|
||||
var progress = (snapshot.bytesTransferred / snapshot.totalBytes) * 100;
|
||||
console.log('Upload is ' + progress + '% done');
|
||||
switch (snapshot.state) {
|
||||
case firebase.storage.TaskState.PAUSED: // or 'paused'
|
||||
console.log('Upload is paused');
|
||||
break;
|
||||
case firebase.storage.TaskState.RUNNING: // or 'running'
|
||||
console.log('Upload is running');
|
||||
break;
|
||||
}
|
||||
}, function(error) {
|
||||
console.log(error);
|
||||
}, function() {
|
||||
// Upload completed successfully, now we can get the download URL
|
||||
var downloadURL = uploadTask.snapshot.downloadURL;
|
||||
if(!downloadURL){
|
||||
downloadURL = 'https://firebasestorage.googleapis.com/v0/b/test-667ca.appspot.com/o/'+uid+'?alt=media&token=7e5f49c8-0e1f-4073-be30-5feaa691a770';
|
||||
}
|
||||
console.log("download Url", downloadURL)
|
||||
vm.image = downloadURL;
|
||||
vm.dataPic = downloadURL;
|
||||
vm.updateUser();
|
||||
});
|
||||
},
|
||||
getPicUrl(){
|
||||
return this.picUrl;
|
||||
@ -34,17 +156,40 @@ var vue = new Vue({
|
||||
this.dataPic = result.data[0].picture + "";
|
||||
console.log("Created: ", this.dataPic, name)
|
||||
}).catch(err => console.error(err));
|
||||
},
|
||||
onFileChange(e) {
|
||||
var files = e.target.files || e.dataTransfer.files;
|
||||
if (!files.length)
|
||||
return;
|
||||
this.createImage(files[0]);
|
||||
},
|
||||
createImage(file) {
|
||||
var image = new Image();
|
||||
var reader = new FileReader();
|
||||
var vm = this;
|
||||
|
||||
reader.onload = (e) => {
|
||||
vm.dataPic = e.target.result;
|
||||
vm.image = e.target.result;
|
||||
};
|
||||
reader.readAsDataURL(file);
|
||||
},
|
||||
startGetUser(){
|
||||
firebase.auth().onAuthStateChanged(user => {
|
||||
if (user) {
|
||||
//GetUser
|
||||
this.getUser(user.uid);
|
||||
} else {
|
||||
window.location("/");
|
||||
}
|
||||
});
|
||||
},
|
||||
removeImage: function (e) {
|
||||
this.image = '';
|
||||
this.startGetUser();
|
||||
}
|
||||
},
|
||||
created() {
|
||||
firebase.auth().onAuthStateChanged(user => {
|
||||
if (user) {
|
||||
//GetUser
|
||||
this.getUser(user.uid);
|
||||
} else {
|
||||
window.location("/");
|
||||
}
|
||||
});
|
||||
|
||||
this.startGetUser();
|
||||
}
|
||||
});
|
Reference in New Issue
Block a user