diff --git a/src/components/UserNew.vue b/src/components/UserNew.vue index 30129ff..92ec65f 100644 --- a/src/components/UserNew.vue +++ b/src/components/UserNew.vue @@ -8,7 +8,7 @@

- +

@@ -59,6 +59,7 @@ export default class UserNew extends Vue { public user!: IUser | null @Model('input', { type: Object, required: true }) public newUser!: IUser + private localeUserId = (this.newUser.userId || '').toLowerCase() public maxChar(user: IUser): number { return 20 - (user.alias ? user.alias.length : 0) @@ -70,6 +71,20 @@ export default class UserNew extends Vue { } return !!this.user && this.user.userId === this.newUser.userId } + + public set userId(newUserId: string) { + this.localeUserId = (newUserId || '').toLowerCase() + } + public get userId(): string { + return this.localeUserId + } + + @Watch('localeUserId', { immediate: true }) + public onLocaleUserIdChange(userId: string) { + if (this.newUser.userId !== userId) { + this.newUser.userId = userId + } + } } diff --git a/src/views/User.vue b/src/views/User.vue index 79d59cf..9622226 100644 --- a/src/views/User.vue +++ b/src/views/User.vue @@ -100,24 +100,6 @@ -
@@ -250,7 +232,6 @@ export default class User extends Vue { @Action public remove!: any public activeTab: string = 'login' - public userId: string = '' public email: string = '' public password: string = '' public confirmPassword: string = '' @@ -260,6 +241,7 @@ export default class User extends Vue { public show: boolean = false public replicate: boolean = false public confirmed: boolean = false + private localeUserId: string = '' public mounted(): void { if (this.premail) { @@ -349,6 +331,14 @@ export default class User extends Vue { public get slugEmail(): string { return slug(this.email) } + + public set userId(newUserId: string) { + this.localeUserId = (newUserId || '').toLowerCase() + } + + public get userId() { + return this.localeUserId + } }