User Bearbeiten
User bearbeiten, holt die daten des Users vom server (Bild und Name) Beides kommt an, aber nur der Name wird angezeigt, das Bild wird nicht gesetzt, aber kann manuell gesetzt werden, wenn man bei data einen link reinschreibt
This commit is contained in:
parent
e1c3a6864f
commit
85b88b7d17
@ -30,6 +30,15 @@ async function getmessageids(sl_id) {
|
||||
}
|
||||
}
|
||||
|
||||
async function getUser(uid){
|
||||
try {
|
||||
var users = await query('SELECT row_to_json("User") AS obj FROM "User" WHERE username = $1;', [uid]);
|
||||
return users;
|
||||
} catch (error) {
|
||||
console.error("Error", error);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
async function searchUsers(searchstring) {
|
||||
try {
|
||||
@ -39,7 +48,7 @@ async function searchUsers(searchstring) {
|
||||
for(let item of users) {
|
||||
if(item.name != null) {
|
||||
if(item.name.includes(searchstring)) {
|
||||
output.push(item)
|
||||
output.push(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -606,5 +615,6 @@ module.exports = {
|
||||
getShoppinglistsByLink,
|
||||
searchUsers,
|
||||
removeMember,
|
||||
moveDoneItemMan
|
||||
moveDoneItemMan,
|
||||
getUser
|
||||
}
|
50
express-server/public/javascripts/user.js
Normal file
50
express-server/public/javascripts/user.js
Normal file
@ -0,0 +1,50 @@
|
||||
// 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 fireuser;
|
||||
|
||||
|
||||
var vue = new Vue({
|
||||
el: '#vue-app',
|
||||
prop: {
|
||||
name: ''
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dataPic: ''
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
updateUser(){
|
||||
|
||||
},
|
||||
getPicUrl(){
|
||||
return this.picUrl;
|
||||
}
|
||||
},
|
||||
beforeCreate() {
|
||||
firebase.auth().onAuthStateChanged(function(user) {
|
||||
if (user) {
|
||||
fireuser = user;
|
||||
//GetUser
|
||||
axios.get('/getUser/' + fireuser.uid).then(result => {
|
||||
name = result.data[0].name;
|
||||
dataPic = result.data[0].picture + "";
|
||||
console.log("DataPic: ", dataPic)
|
||||
}).catch(err => console.error(err));
|
||||
} else {
|
||||
window.location("/");
|
||||
this.dataPic = "error"
|
||||
}
|
||||
});
|
||||
|
||||
},
|
||||
});
|
@ -15,6 +15,19 @@ var firebaseAdmin = admin.initializeApp({
|
||||
databaseURL: 'https://test-667ca.firebaseio.com'
|
||||
});
|
||||
|
||||
router.get('/user', function(req, res, next){
|
||||
res.status(200).render('user');
|
||||
});
|
||||
|
||||
router.get('/getuser/:uid', async function(req, res){
|
||||
try {
|
||||
var sender = await postgres.getUser(req.params.uid);
|
||||
res.status(200).send(sender);
|
||||
}catch (err) {
|
||||
res.status(400).send(await err);
|
||||
}
|
||||
});
|
||||
|
||||
//Push
|
||||
router.get('/push/:msgtoken/:message/:title', function (req, res, next) {
|
||||
|
||||
|
49
express-server/views/user.ejs
Normal file
49
express-server/views/user.ejs
Normal file
@ -0,0 +1,49 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<!-- production version, optimized for size and speed -->
|
||||
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
|
||||
<script src="https://www.gstatic.com/firebasejs/5.7.0/firebase.js"></script>
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
|
||||
<link rel="stylesheet" href="https://code.getmdl.io/1.3.0/material.indigo-pink.min.css">
|
||||
<script defer src="https://code.getmdl.io/1.3.0/material.min.js"></script>
|
||||
|
||||
<title>Document</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="vue-app">
|
||||
<!-- Square card -->
|
||||
<style>
|
||||
.demo-card-square.mdl-card {
|
||||
width: 320px;
|
||||
height: 320px;
|
||||
}
|
||||
.demo-card-square > .mdl-card__title {
|
||||
color: #fff;
|
||||
}
|
||||
</style>
|
||||
|
||||
{{dataPic}}
|
||||
<div class="demo-card-image mdl-card mdl-shadow--2dp">
|
||||
<img v-bind:src="dataPic" width="100%"/>
|
||||
<div class="mdl-card__title mdl-card--expand"></div>
|
||||
<div class="mdl-card__actions">
|
||||
<label for="nameinput">Name: </label><input type="text" id="nameinput" v-model="name">
|
||||
</div>
|
||||
<div class="mdl-card__actions mdl-card--border">
|
||||
<a class="mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect">
|
||||
Ändere Foto
|
||||
</a>
|
||||
<a class="mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect">
|
||||
Fertig
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="javascripts/user.js"></script>
|
||||
</body>
|
||||
</html>
|
Loading…
x
Reference in New Issue
Block a user