Changeset View
Changeset View
Standalone View
Standalone View
src/resources/vue/User/Info.vue
<template> | <template> | ||||
<div class="container"> | <div class="container"> | ||||
<status-component v-if="user_id !== 'new'" v-bind:status="status" @status-update="statusUpdate"></status-component> | |||||
<div class="card" id="user-info"> | <div class="card" id="user-info"> | ||||
<div class="card-body"> | <div class="card-body"> | ||||
<div class="card-title" v-if="user_id !== 'new'">User account</div> | <div class="card-title" v-if="user_id !== 'new'">User account</div> | ||||
<div class="card-title" v-if="user_id === 'new'">New user account</div> | <div class="card-title" v-if="user_id === 'new'">New user account</div> | ||||
<div class="card-text"> | <div class="card-text"> | ||||
<form @submit.prevent="submit"> | <form @submit.prevent="submit"> | ||||
<div v-if="user_id !== 'new'" class="form-group row"> | <div v-if="user_id !== 'new'" class="form-group row"> | ||||
<label for="first_name" class="col-sm-4 col-form-label">Status</label> | <label for="first_name" class="col-sm-4 col-form-label">Status</label> | ||||
▲ Show 20 Lines • Show All 138 Lines • ▼ Show 20 Lines | <div class="container"> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
import ListInput from '../Widgets/ListInput' | import ListInput from '../Widgets/ListInput' | ||||
import StatusComponent from '../Widgets/Status' | |||||
export default { | export default { | ||||
components: { | components: { | ||||
ListInput, | ListInput, | ||||
StatusComponent | |||||
}, | }, | ||||
data() { | data() { | ||||
return { | return { | ||||
discount: 0, | discount: 0, | ||||
discount_description: '', | discount_description: '', | ||||
user_id: null, | user_id: null, | ||||
user: { aliases: [] }, | user: { aliases: [] }, | ||||
packages: [], | packages: [], | ||||
package_id: null, | package_id: null, | ||||
skus: [] | skus: [], | ||||
status: {} | |||||
} | } | ||||
}, | }, | ||||
created() { | created() { | ||||
this.user_id = this.$route.params.user | this.user_id = this.$route.params.user | ||||
let wallet = this.$store.state.authInfo.accounts[0] | let wallet = this.$store.state.authInfo.accounts[0] | ||||
if (!wallet) { | if (!wallet) { | ||||
Show All 18 Lines | export default { | ||||
axios.get('/api/v4/users/' + this.user_id) | axios.get('/api/v4/users/' + this.user_id) | ||||
.then(response => { | .then(response => { | ||||
this.user = response.data | this.user = response.data | ||||
this.user.first_name = response.data.settings.first_name | this.user.first_name = response.data.settings.first_name | ||||
this.user.last_name = response.data.settings.last_name | this.user.last_name = response.data.settings.last_name | ||||
this.user.organization = response.data.settings.organization | this.user.organization = response.data.settings.organization | ||||
this.discount = this.user.wallet.discount | this.discount = this.user.wallet.discount | ||||
this.discount_description = this.user.wallet.discount_description | this.discount_description = this.user.wallet.discount_description | ||||
this.status = response.data.statusInfo | |||||
axios.get('/api/v4/skus') | axios.get('/api/v4/skus') | ||||
.then(response => { | .then(response => { | ||||
// "merge" SKUs with user entitlement-SKUs | // "merge" SKUs with user entitlement-SKUs | ||||
this.skus = response.data | this.skus = response.data | ||||
.filter(sku => sku.type == 'user') | .filter(sku => sku.type == 'user') | ||||
.map(sku => { | .map(sku => { | ||||
if (sku.id in this.user.skus) { | if (sku.id in this.user.skus) { | ||||
▲ Show 20 Lines • Show All 134 Lines • ▼ Show 20 Lines | export default { | ||||
}, | }, | ||||
findSku(id) { | findSku(id) { | ||||
for (let i = 0; i < this.skus.length; i++) { | for (let i = 0; i < this.skus.length; i++) { | ||||
if (this.skus[i].id == id) { | if (this.skus[i].id == id) { | ||||
return this.skus[i]; | return this.skus[i]; | ||||
} | } | ||||
} | } | ||||
}, | }, | ||||
statusUpdate(user) { | |||||
this.user = Object.assign({}, this.user, user) | |||||
} | |||||
} | } | ||||
} | } | ||||
</script> | </script> |