Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion src/wwwroot/controllers/RegistrationCtrl.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
var vm = this;
vm.submitRegistration = submitRegistration;
vm.emailRegistered = null;
vm.regexAllowedAccountName = /^[a-z-0-9_-]*$/;
vm.regexAllowedAccountName = /^(?=.*[a-z])[a-z0-9_-]*$/;
vm.registrationInProgress = false;
vm.setCaptchaResponse = setCaptchaResponse;
vm.setWidgetId = setWidgetId;
Expand Down Expand Up @@ -94,6 +94,8 @@
utils.setServerValidationToField($scope, $scope.form.password, 'strength');
} else if (result.accountNameAlreadyTaken) {
utils.setServerValidationToField($scope, $scope.form.accountName, 'accountname_already_taken');
} else if (result.accountNameInvalid) {
utils.setServerValidationToField($scope, $scope.form.accountName, 'accountname_invalid');
} else if (result.emailAlreadyExists) {
utils.setServerValidationToField($scope, $scope.form.email, 'email_already_exist');
}
Expand Down
1 change: 1 addition & 0 deletions src/wwwroot/locales/en-translation.js
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,7 @@
"validation_error_email": "Please enter a valid email.",
"validation_error_maxlength": "Text is too long.",
"validation_error_accountname_already_taken": "Account name already taken.",
"validation_error_accountname_invalid": "Use only lowercase letters, numbers, hyphens (-) or underscores (_), and include at least one letter.",
"validation_error_email_already_exist": "There is already an user with that email address.",
"validation_error_ilegal_date": "Invalid Expiration Date.",
"validation_error_mask": "Invalid Format.",
Expand Down
1 change: 1 addition & 0 deletions src/wwwroot/locales/es-translation.js
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,7 @@ window['relay-translation-es'] = {
"validation_error_email": "Escribe un Email válido.",
"validation_error_maxlength": "Texto demasiado largo.",
"validation_error_accountname_already_taken": "El nombre de la cuenta ya está en uso.",
"validation_error_accountname_invalid": "Usa solo letras minúsculas, números, guiones (-) o guiones bajos (_), e incluye al menos una letra.",
"validation_error_email_already_exist": "Ya existe un usuario con esa dirección de email.",
"validation_error_ilegal_date": "Escribe una fecha de expiración válida.",
"validation_error_mask": "Escribe un formato válido.",
Expand Down
3 changes: 2 additions & 1 deletion src/wwwroot/partials/signup/registration-w-password.html
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,8 @@ <h2>{{'registration_title' | translate}}</h2>
<input class="input input--medium width--full" ng-pattern="vm.regexAllowedAccountName" ng-class="vm.submitted && form.accountName.$invalid ? 'error' : ''" id="accountName" type="text" name="accountName" ng-model="vm.accountName" ng-change="vm.accountNameUpdated()" maxlength="100" ng-maxlength="100" required />
<span class="input--error" ng-show="(vm.submitted || form.accountName.$dirty) && form.accountName.$error.required"><i class="arrow--up"></i>{{'validation_error_required' | translate}}</span>
<span class="input--error" ng-show="(vm.submitted || form.accountName.$dirty) && form.accountName.$error.accountname_already_taken"><i class="arrow--up"></i>{{'validation_error_accountname_already_taken' | translate}}</span>
<span class="input--error" ng-show="(vm.submitted || form.accountName.$dirty) && form.accountName.$invalid && !form.accountName.$error.required && !form.accountName.$error.accountname_already_taken"><i class="arrow--up"></i>{{'invalid_account_name' | translate}}</span>
<span class="input--error" ng-show="(vm.submitted || form.accountName.$dirty) && form.accountName.$error.accountname_invalid"><i class="arrow--up"></i>{{'validation_error_accountname_invalid' | translate}}</span>
<span class="input--error" ng-show="(vm.submitted || form.accountName.$dirty) && form.accountName.$invalid && !form.accountName.$error.required && !form.accountName.$error.accountname_already_taken && !form.accountName.$error.accountname_invalid"><i class="arrow--up"></i>{{'validation_error_accountname_invalid' | translate}}</span>
</div>
</div>
<div class="flex section--wrapper-input terms">
Expand Down
3 changes: 2 additions & 1 deletion src/wwwroot/partials/signup/registration.html
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,8 @@ <h2>{{'registration_title' | translate}}</h2>
<input class="input input--medium width--full" ng-pattern="vm.regexAllowedAccountName" ng-class="vm.submitted && form.accountName.$invalid ? 'error' : ''" id="accountName" type="text" name="accountName" ng-model="vm.accountName" ng-change="vm.accountNameUpdated()" maxlength="100" ng-maxlength="100" required />
<span class="input--error" ng-show="(vm.submitted || form.accountName.$dirty) && form.accountName.$error.required"><i class="arrow--up"></i>{{'validation_error_required' | translate}}</span>
<span class="input--error" ng-show="(vm.submitted || form.accountName.$dirty) && form.accountName.$error.accountname_already_taken"><i class="arrow--up"></i>{{'validation_error_accountname_already_taken' | translate}}</span>
<span class="input--error" ng-show="(vm.submitted || form.accountName.$dirty) && form.accountName.$invalid && !form.accountName.$error.required && !form.accountName.$error.accountname_already_taken"><i class="arrow--up"></i>{{'invalid_account_name' | translate}}</span>
<span class="input--error" ng-show="(vm.submitted || form.accountName.$dirty) && form.accountName.$error.accountname_invalid"><i class="arrow--up"></i>{{'validation_error_accountname_invalid' | translate}}</span>
<span class="input--error" ng-show="(vm.submitted || form.accountName.$dirty) && form.accountName.$invalid && !form.accountName.$error.required && !form.accountName.$error.accountname_already_taken && !form.accountName.$error.accountname_invalid"><i class="arrow--up"></i>{{'validation_error_accountname_invalid' | translate}}</span>
</div>
</div>
<div class="flex section--wrapper-input terms">
Expand Down
7 changes: 6 additions & 1 deletion src/wwwroot/services/clerk.js
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,12 @@
result.passwordInvalid = true;
break;
case 'account_name':
result.accountNameAlreadyTaken = true;
var detail = (error.detail || '').toLowerCase();
if (detail.indexOf('already taken') !== -1) {
result.accountNameAlreadyTaken = true;
} else {
result.accountNameInvalid = true;
}
break;
case 'user_email':
result.emailAlreadyExists = true;
Expand Down