diff --git a/ui/scripts/cloudStack.js b/ui/scripts/cloudStack.js index 5195a7b817f..0a20aa8e48e 100644 --- a/ui/scripts/cloudStack.js +++ b/ui/scripts/cloudStack.js @@ -474,8 +474,6 @@ loginArgs.hideLoginScreen = true; } - cloudStack.uiCustom.login(loginArgs); - // Localization if (!$.isFunction(cloudStack.localizationFn)) { // i.e., localize is overridden by a plugin/module cloudStack.localizationFn = function(str) { @@ -483,6 +481,11 @@ }; } - document.title = _l('label.app.name'); + // Localize validation messages + cloudStack.localizeValidatorMessages(); + + cloudStack.uiCustom.login(loginArgs); + + document.title = _l('label.app.name'); }); })(cloudStack, jQuery); diff --git a/ui/scripts/ui/utils.js b/ui/scripts/ui/utils.js index 769aea7fa54..542365ad0b1 100644 --- a/ui/scripts/ui/utils.js +++ b/ui/scripts/ui/utils.js @@ -120,4 +120,29 @@ return str; } }; + + /** + * Localize validator messages + */ + cloudStack.localizeValidatorMessages = function() { + $.extend($.validator.messages, { + required: _l('message.validate.fieldrequired'), + remote: _l('message.validate.fixfield'), + email: _l('message.validate.email.address'), + url: _l('message.validate.URL'), + date: _l('message.validate.date'), + dateISO: _l('message.validate.date.ISO'), + number: _l('message.validate.number'), + digits: _l('message.validate.digits'), + creditcard: _l('message.validate.creditcard'), + equalTo: _l('message.validate.equalto'), + accept: _l('message.validate.accept'), + maxlength: $.validator.format(_l('message.validate.maxlength')), + minlength: $.validator.format(_l('message.validate.minlength')), + rangelength: $.validator.format(_l('message.validate.range.length')), + range: $.validator.format(_l('message.validate.range')), + max: $.validator.format(_l('message.validate.max')), + min: $.validator.format(_l('messgae.validate.min')) + }); + }; })(jQuery, cloudStack);