User bearbeiten fix

This commit is contained in:
Georg Reisinger 2019-05-15 19:24:21 +02:00
parent 28b34cd27b
commit 28f75bf88f
2 changed files with 16 additions and 50 deletions

View File

@ -18,10 +18,11 @@ var msg = firebase.messaging();
var vue = new Vue({ var vue = new Vue({
el: '#vue-app', el: '#vue-app',
prop: { prop: {
name: '',
getpic: '' getpic: ''
}, },
data: { data: {
name: '',
dataPic: '', dataPic: '',
image: '', image: '',
idToken: '', idToken: '',
@ -39,55 +40,45 @@ var vue = new Vue({
var currentUser = firebase.auth().currentUser; var currentUser = firebase.auth().currentUser;
var vm = this; var vm = this;
currentUser.getIdToken( /* forceRefresh */ true).then(function (idToken) { currentUser.getIdToken( /* forceRefresh */ true).then(function (idToken) {
console.log("Vor Replace");
msg.requestPermission() msg.requestPermission()
.then(function () { .then(function () {
return msg.getToken(); return msg.getToken();
}) })
.then(token => { .then(token => {
console.log("Zugriff auf msg", token, this.name, vm.dataPic);
vm.idToken = idToken; vm.idToken = idToken;
vm.mid = token; vm.mid = token;
console.log("IMAGE befor dbuserupdate: ", vm.image) vm.dbUserUpdate(vm.idToken, vm.name, vm.image, vm.mid);
vm.dbUserUpdate(vm.idToken, name, vm.image, vm.mid); window.location.href = "/";
vm.image = '';
vm.startGetUser();
}) })
.catch(err => { .catch(err => {
console.error("Msg Error: ", err); console.error("Msg Error: ", err);
vm.idToken = idToken; vm.idToken = idToken;
vm.mid = ""; vm.mid = "";
console.log("IMAGE befor dbuserupdate: ", vm.image) vm.dbUserUpdate(vm.idToken, vm.name, vm.image, vm.mid);
vm.dbUserUpdate(vm.idToken, name, vm.image, vm.mid);
vm.image = ''; window.location.href = "/";
vm.startGetUser();
}) })
}).catch(function (error) { }).catch(function (error) {
console.error("Get id token client error: ", error) console.error("Get id token client error: ", error)
}); });
}else{ }else{
console.log("IMAGE befor dbuserupdate: ", this.image) this.dbUserUpdate(this.idToken, this.name, this.image, this.mid);
this.dbUserUpdate(this.idToken, name, this.image, this.mid); window.location.href = "/";
this.image = '';
this.startGetUser();
} }
}, },
updateUser() { updateUser() {
console.log("updateuser")
var currentUser = firebase.auth().currentUser; var currentUser = firebase.auth().currentUser;
var vm = this; var vm = this;
currentUser.getIdToken( /* forceRefresh */ true).then(function (idToken) { currentUser.getIdToken( /* forceRefresh */ true).then(function (idToken) {
console.log("Vor Replace");
msg.requestPermission() msg.requestPermission()
.then(function () { .then(function () {
return msg.getToken(); return msg.getToken();
}) })
.then(token => { .then(token => {
console.log("Zugriff auf msg", token, this.name, vm.dataPic);
vm.idToken = idToken; vm.idToken = idToken;
vm.mid = token; vm.mid = token;
}) })
@ -104,38 +95,17 @@ var vue = new Vue({
this.showUploadButtons = ''; this.showUploadButtons = '';
}, },
dbUserUpdate(token, name, pic, mid) { dbUserUpdate(token, name, pic, mid) {
console.log("dbuserupdate: ", token, "\nname", name, "\npic: ", pic, "\nMId: ", mid)
var vm = this; var vm = this;
var user = firebase.auth().currentUser; var user = firebase.auth().currentUser;
user.updateProfile({ user.updateProfile({
displayName: name, displayName: name,
photoURL: vm.image photoURL: pic
}).then(async function () { }).then(async function () {
}).catch(function (error) { }).catch(function (error) {
console.error(error) console.error(error)
}); });
console.log('Pic for upload: ', vm.image)
// 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({ $.ajax({
type: "POST", type: "POST",
@ -147,8 +117,7 @@ var vue = new Vue({
name: name name: name
}, },
success(result) { success(result) {
console.log("POST result: ", result) //vm.startGetUser();
vm.startGetUser();
}, },
error(err) { error(err) {
console.error("Error: " + err); console.error("Error: " + err);
@ -156,7 +125,6 @@ var vue = new Vue({
}); });
}, },
fotoChoose() { fotoChoose() {
console.log("fotochoose")
var vm = this; var vm = this;
var currentUser = firebase.auth().currentUser; var currentUser = firebase.auth().currentUser;
var uid = currentUser.uid; var uid = currentUser.uid;
@ -179,7 +147,7 @@ var vue = new Vue({
} }
}, },
function (error) { function (error) {
console.log(error); console.error(error);
}, },
function () { function () {
// Upload completed successfully, now we can get the download URL // Upload completed successfully, now we can get the download URL
@ -187,7 +155,6 @@ var vue = new Vue({
if (!downloadURL) { if (!downloadURL) {
downloadURL = 'https://firebasestorage.googleapis.com/v0/b/test-667ca.appspot.com/o/' + uid + '?alt=media&token=7e5f49c8-0e1f-4073-be30-5feaa691a770'; 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.image = downloadURL;
vm.updateUser(); vm.updateUser();
}); });
@ -197,9 +164,8 @@ var vue = new Vue({
}, },
getUser(uid) { getUser(uid) {
axios.get('/getUser/' + uid).then(result => { axios.get('/getUser/' + uid).then(result => {
name = result.data[0].name; this.name = result.data[0].name;
this.dataPic = result.data[0].picture + ""; this.dataPic = result.data[0].picture + "";
console.log("Created: ", this.dataPic, name)
}).catch(err => console.error(err)); }).catch(err => console.error(err));
}, },
onFileChange(e) { onFileChange(e) {
@ -255,7 +221,7 @@ var vue = new Vue({
//GetUser //GetUser
this.getUser(user.uid); this.getUser(user.uid);
} else { } else {
window.location("/"); window.location.href = "/";
} }
}); });
}, },

View File

@ -27,7 +27,7 @@
zu SmartShopper</button> zu SmartShopper</button>
<img v-bind:src="this.dataPic" width="100%" /> <img v-bind:src="this.dataPic" width="100%" />
<div class="mdl-card__title mdl-card--expand"> <div class="mdl-card__title mdl-card--expand">
{{name}}
</div> </div>
<div class="mdl-card__actions"> <div class="mdl-card__actions">
<label for="nameinput">Name: </label><input type="text" id="nameinput" v-model="name"> <label for="nameinput">Name: </label><input type="text" id="nameinput" v-model="name">