Loading lib/Controller/AccountController.php +4 −4 Original line number Diff line number Diff line Loading @@ -254,11 +254,11 @@ class AccountController extends Controller { $response->setStatus(400); if (empty($username)) { $response->setData(['message' => 'Username is required.', 'success' => false]); $response->setData(['message' => 'Username is required.', 'field' => 'username', 'success' => false]); return $response; } if (empty($displayname)) { $response->setData(['message' => 'Display name is required.', 'success' => false]); $response->setData(['message' => 'Display name is required.', 'field' => 'displayname', 'success' => false]); return $response; } Loading @@ -270,7 +270,7 @@ class AccountController extends Controller { foreach ($inputData as $inputName => $inputInfo) { $validationError = $this->validateInput($inputName, $inputInfo['value'], $inputInfo['maxLength']); if ($validationError !== null) { $response->setData(['message' => $validationError, 'success' => false]); $response->setData(['message' => $validationError, 'field' => $inputName, 'success' => false]); $response->setStatus(400); return $response; } Loading @@ -282,7 +282,7 @@ class AccountController extends Controller { $response->setStatus(200); $this->session->set(self::SESSION_USERNAME_CHECK, true); } else { $response->setData(['message' => 'Username is already taken.', 'success' => false]); $response->setData(['message' => 'Username is already taken.', 'field' => 'username', 'success' => false]); } } catch (Exception $e) { $this->logger->logException($e, ['app' => Application::APP_ID ]); Loading src/signup/RegistrationForm.vue +11 −15 Original line number Diff line number Diff line Loading @@ -27,8 +27,8 @@ <p v-if="validation.isDisplaynameEmpty" class="validation-warning"> {{ t(appName,'Display name is required.') }} </p> <p v-else-if="validation.isDisplaynameTooLong" class="validation-warning"> {{ t(appName, 'Display name is too large.') }} <p v-else-if="validation.isDisplaynameNotValid" class="validation-warning"> {{ t(appName, displaynameValidationMessage) }} </p> </div> </div> Loading Loading @@ -59,9 +59,6 @@ <p v-else-if="isUsernameAvailable" class="validation-success"> {{ t(appName,'Available!') }} </p> <p v-else-if="validation.isUsernameTooLong" class="validation-warning"> {{ t(appName, 'Username is too large.') }} </p> </div> </div> </div> Loading Loading @@ -188,6 +185,7 @@ export default { return { appName: APPLICATION_NAME, usernameValidationMessage: '', displaynameValidationMessage: '', domain: window.location.host, validation: { isDisplaynameEmpty: false, Loading @@ -198,8 +196,7 @@ export default { isRepasswordEmpty: false, isRePasswordMatched: false, isAccepttnsEmpty: false, isUsernameTooLong: false, isDisplaynameTooLong: false, isDisplaynameNotValid: false, }, languages: [ { code: 'en', name: 'English' }, Loading Loading @@ -233,13 +230,6 @@ export default { validateForm(fieldsToValidate) { fieldsToValidate.forEach(field => { this.validation[`is${field.charAt(0).toUpperCase() + field.slice(1)}Empty`] = this.formData[field] === '' if (field === 'username') { this.validation.isUsernameTooLong = this.formData.username.length > 30 } if (field === 'displayname') { this.validation.isDisplaynameTooLong = this.formData.displayname.length > 30 } }) if (fieldsToValidate.includes('password')) { this.passwordValidation() Loading Loading @@ -301,7 +291,13 @@ export default { } catch (error) { this.validation.isUsernameNotValid = true if (error.response && error.response.status === 400) { if (error.response.data.field === 'username') { this.usernameValidationMessage = t(this.appName, error.response.data.message) } if (error.response.data.field === 'displayname') { this.validation.isDisplaynameNotValid = true this.displaynameValidationMessage = t(this.appName, error.response.data.message) } } else { this.usernameValidationMessage = t(this.appName, 'Something went wrong.') } Loading Loading
lib/Controller/AccountController.php +4 −4 Original line number Diff line number Diff line Loading @@ -254,11 +254,11 @@ class AccountController extends Controller { $response->setStatus(400); if (empty($username)) { $response->setData(['message' => 'Username is required.', 'success' => false]); $response->setData(['message' => 'Username is required.', 'field' => 'username', 'success' => false]); return $response; } if (empty($displayname)) { $response->setData(['message' => 'Display name is required.', 'success' => false]); $response->setData(['message' => 'Display name is required.', 'field' => 'displayname', 'success' => false]); return $response; } Loading @@ -270,7 +270,7 @@ class AccountController extends Controller { foreach ($inputData as $inputName => $inputInfo) { $validationError = $this->validateInput($inputName, $inputInfo['value'], $inputInfo['maxLength']); if ($validationError !== null) { $response->setData(['message' => $validationError, 'success' => false]); $response->setData(['message' => $validationError, 'field' => $inputName, 'success' => false]); $response->setStatus(400); return $response; } Loading @@ -282,7 +282,7 @@ class AccountController extends Controller { $response->setStatus(200); $this->session->set(self::SESSION_USERNAME_CHECK, true); } else { $response->setData(['message' => 'Username is already taken.', 'success' => false]); $response->setData(['message' => 'Username is already taken.', 'field' => 'username', 'success' => false]); } } catch (Exception $e) { $this->logger->logException($e, ['app' => Application::APP_ID ]); Loading
src/signup/RegistrationForm.vue +11 −15 Original line number Diff line number Diff line Loading @@ -27,8 +27,8 @@ <p v-if="validation.isDisplaynameEmpty" class="validation-warning"> {{ t(appName,'Display name is required.') }} </p> <p v-else-if="validation.isDisplaynameTooLong" class="validation-warning"> {{ t(appName, 'Display name is too large.') }} <p v-else-if="validation.isDisplaynameNotValid" class="validation-warning"> {{ t(appName, displaynameValidationMessage) }} </p> </div> </div> Loading Loading @@ -59,9 +59,6 @@ <p v-else-if="isUsernameAvailable" class="validation-success"> {{ t(appName,'Available!') }} </p> <p v-else-if="validation.isUsernameTooLong" class="validation-warning"> {{ t(appName, 'Username is too large.') }} </p> </div> </div> </div> Loading Loading @@ -188,6 +185,7 @@ export default { return { appName: APPLICATION_NAME, usernameValidationMessage: '', displaynameValidationMessage: '', domain: window.location.host, validation: { isDisplaynameEmpty: false, Loading @@ -198,8 +196,7 @@ export default { isRepasswordEmpty: false, isRePasswordMatched: false, isAccepttnsEmpty: false, isUsernameTooLong: false, isDisplaynameTooLong: false, isDisplaynameNotValid: false, }, languages: [ { code: 'en', name: 'English' }, Loading Loading @@ -233,13 +230,6 @@ export default { validateForm(fieldsToValidate) { fieldsToValidate.forEach(field => { this.validation[`is${field.charAt(0).toUpperCase() + field.slice(1)}Empty`] = this.formData[field] === '' if (field === 'username') { this.validation.isUsernameTooLong = this.formData.username.length > 30 } if (field === 'displayname') { this.validation.isDisplaynameTooLong = this.formData.displayname.length > 30 } }) if (fieldsToValidate.includes('password')) { this.passwordValidation() Loading Loading @@ -301,7 +291,13 @@ export default { } catch (error) { this.validation.isUsernameNotValid = true if (error.response && error.response.status === 400) { if (error.response.data.field === 'username') { this.usernameValidationMessage = t(this.appName, error.response.data.message) } if (error.response.data.field === 'displayname') { this.validation.isDisplaynameNotValid = true this.displaynameValidationMessage = t(this.appName, error.response.data.message) } } else { this.usernameValidationMessage = t(this.appName, 'Something went wrong.') } Loading