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