@@ -222,7 +222,6 @@ const mutations = { | |||
getPolicyByUserIdRequest(state) { | |||
state.loading.policy = true; | |||
state.user = { loading: true }; | |||
}, | |||
getPolicyByUserIdSuccess(state, policy) { | |||
state.loading.policy = false; | |||
@@ -242,7 +242,7 @@ | |||
<span class="sr-only">{{messages.message_true}}</span> | |||
</td> | |||
<td v-else> | |||
<i @click="contactFlag(contact, 'receiveLoginNotifications', false)" aria-hidden="true" :class="messages.field_label_policy_contact_value_disabled_icon" :title="messages.message_false"></i> | |||
<i @click="contactFlag(contact, 'receiveLoginNotifications', true)" aria-hidden="true" :class="messages.field_label_policy_contact_value_disabled_icon" :title="messages.message_false"></i> | |||
<span class="sr-only">{{messages.message_false}}</span> | |||
</td> | |||
@@ -289,10 +289,11 @@ | |||
</td> | |||
<!-- remove contact --> | |||
<td> | |||
<td v-if="contact.removable"> | |||
<i @click="removeContact(contact.uuid)" aria-hidden="true" :class="messages.button_label_remove_contact_icon" :title="messages.button_label_remove_contact"></i> | |||
<span class="sr-only">{{messages.button_label_remove_contact}}</span> | |||
</td> | |||
<td v-else></td> | |||
</tr> | |||
</tbody> | |||
</table> | |||
@@ -427,7 +428,7 @@ | |||
'messages', 'accountDeletionOptions', 'timeDurationOptions', 'timeDurationOptionsReversed', | |||
'contactTypes', 'detectedLocale', 'countries' | |||
]), | |||
...mapState('users', ['user', 'policy', 'contact', 'authenticator']), | |||
...mapState('users', ['policy', 'contact', 'authenticator']), | |||
hasAuthenticator() { | |||
for (let i=0; i<this.contacts.length; i++) { | |||
if (isAuthenticator(this.contacts[i])) return true; | |||
@@ -462,7 +463,8 @@ | |||
'requestAccountDownload', 'downloadAccount' | |||
]), | |||
...mapActions('users', [ | |||
'getPolicyByUserId', 'updatePolicyByUserId', 'addPolicyContactByUserId', 'removePolicyContactByUserId' | |||
'getUserById', 'getPolicyByUserId', 'updatePolicyByUserId', | |||
'addPolicyContactByUserId', 'removePolicyContactByUserId' | |||
]), | |||
...mapGetters('users', ['loading']), | |||
isAuthenticator(val) { return window.isAuthenticator(val); }, | |||
@@ -23,12 +23,6 @@ | |||
<form @submit.prevent="handleSubmit"> | |||
<div v-if="submitted && errors.has('user')" class="invalid-feedback d-block"><h5>{{ errors.first('user') }}</h5></div> | |||
<div v-if="newUser !== null && newUser === true && admin === true" class="form-group"> | |||
<label htmlFor="url">{{messages.field_label_username}}</label> | |||
<input type="text" v-model="subject.name" name="name" class="form-control"/> | |||
<div v-if="submitted && errors.has('name')" class="invalid-feedback d-block">{{ errors.first('name') }}</div> | |||
</div> | |||
<div v-if="newUser === true && admin === true" class="form-group"> | |||
<label htmlFor="email">{{messages.field_label_email}}</label> | |||
<input type="text" v-model="subject.email" name="email" class="form-control"/> | |||
@@ -111,7 +105,6 @@ | |||
import { loadingImgSrc } from '../../_store'; | |||
const BLANK_SUBJECT = { | |||
name: null, | |||
email: null, | |||
sendWelcomeEmail: true, | |||
password: null, | |||
@@ -158,7 +151,7 @@ | |||
} else { | |||
this.admin = this.currentUser.admin === true; | |||
this.getUserById({ | |||
userId: this.currentUser.name, | |||
userId: this.currentUser.email, | |||
messages: this.messages, | |||
errors: this.errors | |||
}); | |||
@@ -197,7 +190,7 @@ | |||
...mapGetters('users', ['loading']), | |||
handleSubmit (e) { | |||
const updatedProfile = { | |||
name: this.subject.name, | |||
email: this.subject.email, | |||
url: this.subject.url, | |||
description: this.subject.description, | |||
locale: this.subject.locale, | |||
@@ -210,10 +203,6 @@ | |||
this.$validator.validate().then(valid => { | |||
if (valid) { | |||
if (this.newUser) { | |||
updatedProfile.contact = { | |||
type: 'email', | |||
info: this.subject.email | |||
}; | |||
updatedProfile.sendWelcomeEmail = this.subject.sendWelcomeEmail; | |||
updatedProfile.password = this.subject.password; | |||
updatedProfile.agreeToTerms = true; | |||
@@ -4,9 +4,9 @@ | |||
<h2>{{messages.form_title_register}}</h2> | |||
<form @submit.prevent="handleSubmit"> | |||
<div class="form-group"> | |||
<label for="name">{{messages.field_label_username}}</label> | |||
<input type="text" v-model="user.name" v-validate="'required'" name="name" class="form-control" :class="{ 'is-invalid': submitted && errors.has('name') }" /> | |||
<div v-if="submitted && errors.has('name')" class="invalid-feedback d-block">{{ errors.first('name') }}</div> | |||
<label for="email">{{messages.field_label_email}}</label> | |||
<input type="text" v-model="user.email" v-validate="'required'" name="email" class="form-control" :class="{ 'is-invalid': submitted && errors.has('email') }" /> | |||
<div v-if="submitted && errors.has('email')" class="invalid-feedback d-block">{{ errors.first('email') }}</div> | |||
</div> | |||
<div class="form-group"> | |||
<label htmlFor="password">{{messages.field_label_password}}</label> | |||
@@ -18,11 +18,6 @@ | |||
<input type="password" v-model="confirmPassword" v-validate="{ required: true, min: 6 }" name="confirmPassword" class="form-control" :class="{ 'is-invalid': submitted && errors.has('confirmPassword') }" /> | |||
<div v-if="submitted && errors.has('confirmPassword')" class="invalid-feedback d-block">{{ errors.first('confirmPassword') }}</div> | |||
</div> | |||
<div class="form-group"> | |||
<label for="email">{{messages.field_label_email}}</label> | |||
<input type="text" v-model="user.contact.info" v-validate="'required'" name="email" class="form-control" :class="{ 'is-invalid': submitted && errors.has('email') }" /> | |||
<div v-if="submitted && errors.has('email')" class="invalid-feedback d-block">{{ errors.first('email') }}</div> | |||
</div> | |||
<div class="form-group" v-if="promoCodesEnabled"> | |||
<label for="promoCode">{{messages.field_label_promoCode}}</label> | |||
<input type="text" v-model="user.promoCode" v-validate="{required: promoCodeRequired}" name="promoCode" class="form-control" :class="{ 'is-invalid': submitted && errors.has('promoCode') }" /> | |||
@@ -57,12 +52,12 @@ | |||
</div> | |||
<div class="form-group"> | |||
<label for="user.contact.receiveInformationalMessages">{{messages.field_label_receiveInformationalMessages}}</label> | |||
<input type="checkbox" id="user.contact.receiveInformationalMessages" v-model="user.contact.receiveInformationalMessages"> | |||
<label for="user.receiveInformationalMessages">{{messages.field_label_receiveInformationalMessages}}</label> | |||
<input type="checkbox" id="user.receiveInformationalMessages" v-model="user.receiveInformationalMessages"> | |||
</div> | |||
<div class="form-group"> | |||
<label for="user.contact.receivePromotionalMessages">{{messages.field_label_receivePromotionalMessages}}</label> | |||
<input type="checkbox" id="user.contact.receivePromotionalMessages" v-model="user.contact.receivePromotionalMessages"> | |||
<label for="user.receivePromotionalMessages">{{messages.field_label_receivePromotionalMessages}}</label> | |||
<input type="checkbox" id="user.receivePromotionalMessages" v-model="user.receivePromotionalMessages"> | |||
</div> | |||
<div class="form-group"> | |||
<label for="user.agreeToTerms" v-html="messages.field_label_agreeToTerms"></label> | |||
@@ -87,14 +82,10 @@ export default { | |||
data () { | |||
return { | |||
user: { | |||
name: '', | |||
email: '', | |||
password: '', | |||
contact: { | |||
type: 'email', | |||
info: '', | |||
receiveInformationalMessages: false, | |||
receivePromotionalMessages: false | |||
}, | |||
receiveInformationalMessages: false, | |||
receivePromotionalMessages: false, | |||
agreeToTerms: null, | |||
promoCode: null | |||
}, | |||