From 28934df4ac5b4dbb8f01c71cfaf516d5c5eb037a Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Mon, 24 Sep 2012 22:19:58 +0000 Subject: [PATCH] [MRM-1674] While creating admin account, entering invalid password yields no error message. git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1389629 13f79535-47bb-0310-9956-ffa450edef68 --- .../src/main/webapp/js/archiva/startup.js | 3 ++- .../src/main/webapp/js/archiva/utils.js | 4 ++++ .../src/main/webapp/js/redback/user.js | 19 ++++++++++++++----- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/startup.js b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/startup.js index f338dca45..1edd8f89e 100644 --- a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/startup.js +++ b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/startup.js @@ -37,11 +37,12 @@ function() { displayErrorMessage($.i18n.prop('authz.karma.needed')); }, 500: function(data){ + $.log("error 500:"+data.responseText); removeSmallSpinnerImg(); removeMediumSpinnerImg("#main-content"); clearUserMessages(); displayRestError($.parseJSON(data.responseText)); - $("#main-content" ).html(""); + //$("#main-content" ).html(""); //displayErrorMessage($.i18n.prop('error.500')); } } diff --git a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/utils.js b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/utils.js index 6ae6465d9..8a911ed1b 100644 --- a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/utils.js +++ b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/utils.js @@ -312,6 +312,10 @@ require(["jquery","jquery.tmpl","i18n"], function(jquery,jqueryTmpl,i18n) { if (data.errorKey && data.errorKey.length>0){ displayErrorMessage($.i18n.prop( data.errorKey ),idToAppend); + } else if (data.errorMessages){ + $.each(data.errorMessages, function(index, value) { + displayErrorMessage( $.i18n.prop(data.errorMessages[index].errorKey,data.errorMessages[index].args?data.errorMessages[index].args:null)); + }); } else { $.log("print data.errorMessage:"+data.errorMessage); displayErrorMessage(data.errorMessage,idToAppend); diff --git a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js index 65aa740fb..5ee80f442 100644 --- a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js +++ b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js @@ -117,7 +117,7 @@ define("redback.user",["jquery","utils","i18n","jquery.validate","knockout","kno }); }; - this.createAdmin = function() { + this.createAdmin = function(succesCallbackFn,errorCallbackFn) { $.log("user.js#createAdmin"); var valid = $("#user-create").valid(); $.log("create admin"); @@ -142,10 +142,18 @@ define("redback.user",["jquery","utils","i18n","jquery.validate","knockout","kno checkSecurityLinks(); } loginCall(currentAdminUser.username(), currentAdminUser.password(),onSuccessCall); + if(succesCallbackFn){ + succesCallbackFn(); + } return this; } else { displayErrorMessage("admin user not created"); } + }, + error: function(data){ + if(errorCallbackFn){ + errorCallbackFn(); + } } }); }; @@ -261,10 +269,11 @@ define("redback.user",["jquery","utils","i18n","jquery.validate","knockout","kno if(! $("#user-create" ).valid() ) { return; } - self.user.createAdmin(); - - // go to search when admin created - window.sammyArchivaApplication.setLocation("#search"); + self.user.createAdmin(function(){ + // go to search when admin created + window.sammyArchivaApplication.setLocation("#search"); + } + ); } } -- 2.39.5