added zum admin befördern

This commit is contained in:
rchrist 2019-06-06 19:58:29 +02:00
parent 645e31deb2
commit 22cb78a2ff

View File

@ -65,6 +65,20 @@
</q-expansion-item> </q-expansion-item>
</q-card> </q-card>
</q-list> </q-list>
<p class="text-h5 q-pt-lg" v-show="hasAdminState"> Nutzer zu Administrator befördern </p>
<div v-show="hasAdminState" align="center" class="row q-mt-sm justify-between">
<q-input lazy-rules outlined filled stack-label v-model="newAdminMail"
type="text" label="Email des Nutzers" color="black" class="col q-mr-sm"
:rules="[val=>validateEmail(val)||'Bitte Email verwenden']"/>
<div class="row" style="padding-bottom: 20px">
<q-btn label="Nutzer befördern"
unelevated
@click="getUser()"
:disabled="!adminInviteChecked"
color="primary"
type="submit"/>
</div>
</div>
</div> </div>
</q-tab-panel> </q-tab-panel>
<q-tab-panel v-if="boolAlreadyInTeam" name="teams" class="q-pa-none"> <q-tab-panel v-if="boolAlreadyInTeam" name="teams" class="q-pa-none">
@ -180,6 +194,7 @@
boolStatus: false, boolStatus: false,
boolTable: true, boolTable: true,
boolMemberTableUpdating: false, boolMemberTableUpdating: false,
newAdminMail: "",
teamColumns: [ teamColumns: [
{ {
name: 'desc', name: 'desc',
@ -205,7 +220,6 @@
page: 1, page: 1,
rowsPerPage: 10 rowsPerPage: 10
}, },
// newAdminMail: "",
} }
}, },
mounted: function () { mounted: function () {
@ -268,6 +282,20 @@
}).onDismiss(() => { }).onDismiss(() => {
}) })
}, },
confirmAddAdmin(newAdmin) {
this.$q.dialog({
title: 'Administrator hinzufügen',
message: 'Willst du den Nutzer ' + newAdmin.name + ' mit der Email ' + newAdmin.email + ' wirklich zum Administrator befördern?',
persistent: true,
cancel: true,
}).onOk(() => {
console.log('>>>> OK');
this.addAdmin(newAdmin);
}).onCancel(() => {
console.log('>>>> Cancel')
}).onDismiss(() => {
})
},
activateInvite() { activateInvite() {
if (this.inviteActivated) { if (this.inviteActivated) {
this.inviteActivated = false; this.inviteActivated = false;
@ -505,73 +533,73 @@
}); });
this.updateStatus(); this.updateStatus();
}, },
// getUser() { getUser() {
// const data = { const data = {
// "email" : this.newAdminMail "email" : this.newAdminMail
// } };
// JSON.stringify(data); JSON.stringify(data);
// const token = JSON.parse(localStorage.getItem('userToken')).token; const token = JSON.parse(localStorage.getItem('userToken')).token;
// this.$axios.get(process.env.USER_API + '/account/email', data, { this.$axios.get(process.env.USER_API + '/account/email', data, {
// headers: { headers: {
// 'Authorization': 'Bearer ' + token, 'Authorization': 'Bearer ' + token,
// } }
// }).then((response) => { }).then((response) => {
// let newAdminAccount = response.data; let newAdminAccount = response.data;
// if (response.status === 200) { if (response.status === 200) {
// this.addAdmin(JSON.parse(response).data); this.confirmAddAdmin((JSON.parse(response).data));
// } }
// }) })
// .catch((error) => { .catch((error) => {
// let message; let message;
// let header = "Unbekannter Fehler..."; let header = "Unbekannter Fehler...";
// if (error.response) { if (error.response) {
// console.log(error.response) console.log(error.response)
// if (error.response.status === 400) { if (error.response.status === 400) {
// message = "Es gibt keinen Nutzer mit dieser Email!"; message = "Es gibt keinen Nutzer mit dieser Email!";
// header = "Email überprüfen!"; header = "Email überprüfen!";
// } }
// } else if (error.request) { } else if (error.request) {
// console.log(error.request); console.log(error.request);
// header = "Anfrage fehlgeschlagen!"; header = "Anfrage fehlgeschlagen!";
// message = "Die Verbindung zum Server ist gestört. Versuchen Sie es später noch einmal."; message = "Die Verbindung zum Server ist gestört. Versuchen Sie es später noch einmal.";
// } }
// this.$store.commit('dialog/NEW_MESSAGE_DIALOG', {message: message, title: header}); this.$store.commit('dialog/NEW_MESSAGE_DIALOG', {message: message, title: header});
// }); });
// }, },
// addAdmin(newAdmin) { addAdmin(newAdmin) {
// const token = JSON.parse(localStorage.getItem('userToken')).token; const token = JSON.parse(localStorage.getItem('userToken')).token;
// newAdmin.roles.role = "ADMIN"; newAdmin.roles.role = "ADMIN";
// JSON.stringify(newAdmin); JSON.stringify(newAdmin);
// this.$axios.patch(process.env.USER_API, '/account', newAdmin, { this.$axios.patch(process.env.USER_API, '/account', newAdmin, {
// headers: { headers: {
// 'Authorization': 'Bearer ' + token, 'Authorization': 'Bearer ' + token,
// } }
// }).then((response) => { }).then((response) => {
// if (response.status === 200) { if (response.status === 200) {
// this.$store.commit('dialog/NEW_MESSAGE_DIALOG', { this.$store.commit('dialog/NEW_MESSAGE_DIALOG', {
// message: "Du hast den Nutzer mit der Email " + this.newAdminMail + " als Admin freigeschalten!", message: "Du hast den Nutzer mit der Email " + this.newAdminMail + " als Admin freigeschalten!",
// title: "Nutzerverwaltung", title: "Nutzerverwaltung",
// color: "blue" color: "blue"
// }); });
// } }
// }) })
// .catch((error) => { .catch((error) => {
// let message; let message;
// let header = "Unbekannter Fehler..."; let header = "Unbekannter Fehler...";
// if (error.response) { if (error.response) {
// console.log(error.response) console.log(error.response)
// if (error.response.status === 400) { if (error.response.status === 400) {
// message = JSON.parse(error).error; message = JSON.parse(error).error;
// header = "Probleme mit dem zu bearbeitenden Nutzeraccount!"; header = "Probleme mit dem zu bearbeitenden Nutzeraccount!";
// } }
// } else if (error.request) { } else if (error.request) {
// console.log(error.request); console.log(error.request);
// header = "Anfrage fehlgeschlagen!"; header = "Anfrage fehlgeschlagen!";
// message = "Die Verbindung zum Server ist gestört. Versuchen Sie es später noch einmal."; message = "Die Verbindung zum Server ist gestört. Versuchen Sie es später noch einmal.";
// } }
// this.$store.commit('dialog/NEW_MESSAGE_DIALOG', {message: message, title: header}); this.$store.commit('dialog/NEW_MESSAGE_DIALOG', {message: message, title: header});
// }); });
// }, },
handleError(error) { handleError(error) {
let msg; let msg;
let title; let title;