You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ol...@apache.org on 2013/02/20 19:08:57 UTC
svn commit: r1448333 - in
/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js:
archiva/general-admin.js templates/archiva/general-admin.html
Author: olamy
Date: Wed Feb 20 18:08:57 2013
New Revision: 1448333
URL: http://svn.apache.org/r1448333
Log:
[MRM-1736] fix ui to update rbacmanager used.
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js/archiva/general-admin.js
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js/templates/archiva/general-admin.html
Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js/archiva/general-admin.js
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js/archiva/general-admin.js?rev=1448333&r1=1448332&r2=1448333&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js/archiva/general-admin.js (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js/archiva/general-admin.js Wed Feb 20 18:08:57 2013
@@ -1275,7 +1275,7 @@ define("archiva.general-admin",["jquery"
new RedbackRuntimeConfiguration(data.userManagerImpls,ldapConfiguration,data.migratedFromRedbackConfiguration,[]
,data.useUsersCache,mapCacheConfiguration(data.usersCacheConfiguration),data.rbacManagerImpls);
-
+ $.log("redbackRuntimeConfiguration.rbacManagerImpls:"+redbackRuntimeConfiguration.rbacManagerImpls().length);
var configurationPropertiesEntries = data.configurationPropertiesEntries == null ? []: $.each(data.configurationPropertiesEntries,function(item){
var entry = new Entry(item.key, item.value,function(newValue){
redbackRuntimeConfiguration.modified(true);
@@ -1376,7 +1376,7 @@ define("archiva.general-admin",["jquery"
this.usedUserManagerImpls=ko.observableArray([]);
- this.rbacManagerImpls=ko.observableArray([]);
+ this.usedRbacManagerImpls=ko.observableArray([]);
this.modifiesLdapGroupMappings=ko.observableArray([]);
@@ -1409,6 +1409,15 @@ define("archiva.general-admin",["jquery"
}
}
+ findRbacManagerImplementationInformation=function(id){
+ for(var i= 0;i<self.rbacManagerImplementationInformations().length;i++){
+ $.log(id+""+self.rbacManagerImplementationInformations()[i].beanId);
+ if(id==self.rbacManagerImplementationInformations()[i].beanId){
+ return self.rbacManagerImplementationInformations()[i];
+ }
+ }
+ }
+
checkLdapServerConfiguration=function(){
$.log("checkLdapServerConfiguration");
clearUserMessages();
@@ -1467,7 +1476,7 @@ define("archiva.general-admin",["jquery"
for(var i= 0;i<redbackRuntimeConfiguration.userManagerImpls().length;i++){
var id=redbackRuntimeConfiguration.userManagerImpls()[i];
- $.log("id:"+id);
+
var userManagerImplementationInformation=findUserManagerImplementationInformation(id);
if(userManagerImplementationInformation!=null){
@@ -1475,6 +1484,20 @@ define("archiva.general-admin",["jquery"
}
}
+ $.log("init usedUserManagerImpls done");
+
+ for(var i= 0;i<redbackRuntimeConfiguration.rbacManagerImpls().length;i++){
+ var id=redbackRuntimeConfiguration.rbacManagerImpls()[i];
+
+ var rbacManagerImplementationInformation=findRbacManagerImplementationInformation(id);
+
+ if(rbacManagerImplementationInformation!=null){
+ this.usedRbacManagerImpls.push(rbacManagerImplementationInformation);
+ }
+ }
+
+ $.log("init usedUserManagerImpls done");
+
isUsedUserManagerImpl=function(userManagerImplementationInformation){
for(var i=0;i<self.usedUserManagerImpls().length;i++){
if(self.usedUserManagerImpls()[i].beanId==userManagerImplementationInformation.beanId){
@@ -1490,7 +1513,6 @@ define("archiva.general-admin",["jquery"
if(!isUsedUserManagerImpl(self.userManagerImplementationInformations()[i])){
self.availableUserManagerImpls.push(self.userManagerImplementationInformations()[i]);
}
-
}
userManagerImplMoved=function(arg){
@@ -1498,6 +1520,28 @@ define("archiva.general-admin",["jquery"
self.redbackRuntimeConfiguration().modified(true);
}
+ isUsedRbacManagerImpl=function(rbacManagerImplementationInformation){
+ for(var i=0;i<self.usedRbacManagerImpls().length;i++){
+ if(self.usedRbacManagerImpls()[i].beanId==rbacManagerImplementationInformation.beanId){
+ return true;
+ }
+ }
+ return false;
+ }
+
+ this.availableRbacManagerImpls=ko.observableArray([]);
+
+ for(var i=0;i<self.rbacManagerImplementationInformations().length;i++){
+ if(!isUsedRbacManagerImpl(self.rbacManagerImplementationInformations()[i])){
+ self.availableRbacManagerImpls.push(self.rbacManagerImplementationInformations()[i]);
+ }
+ }
+
+ rbacManagerImplMoved=function(arg){
+ $.log("rbacManagerImplMoved");
+ self.redbackRuntimeConfiguration().modified(true);
+ }
+
saveRedbackRuntimeConfiguration=function(){
var mainContent=$("#main-content");
@@ -1528,6 +1572,7 @@ define("archiva.general-admin",["jquery"
clearUserMessages();
var userMessages=$("#user-messages");
userMessages.html(mediumSpinnerImg());
+
self.redbackRuntimeConfiguration().userManagerImpls=ko.observableArray([]);
for(var i=0;i<self.usedUserManagerImpls().length;i++){
@@ -1535,6 +1580,17 @@ define("archiva.general-admin",["jquery"
$.log("beanId:"+beanId);
self.redbackRuntimeConfiguration().userManagerImpls.push(beanId);
}
+
+
+ self.redbackRuntimeConfiguration().rbacManagerImpls=ko.observableArray([]);
+
+ for(var i=0;i<self.usedRbacManagerImpls().length;i++){
+ var beanId=self.usedRbacManagerImpls()[i].beanId;
+ $.log("beanId:"+beanId);
+ self.redbackRuntimeConfiguration().rbacManagerImpls.push(beanId);
+ }
+
+
$.log("rememberme enabled:"+self.redbackRuntimeConfiguration().findPropertyValue("security.rememberme.enabled"));
$.ajax("restServices/archivaServices/redbackRuntimeConfigurationService/redbackRuntimeConfiguration",
{
@@ -1710,12 +1766,14 @@ define("archiva.general-admin",["jquery"
dataType: 'json',
success: function(data) {
var redbackRuntimeConfiguration = mapRedbackRuntimeConfiguration(data);
+ $.log("before new RedbackRuntimeConfigurationViewModel");
var redbackRuntimeConfigurationViewModel =
new RedbackRuntimeConfigurationViewModel(redbackRuntimeConfiguration,userManagerImplementationInformations,rbacManagerImplementationInformations);
var groups=[];
- var useLdap = $.inArray("ldap",redbackRuntimeConfiguration.usedUserManagerImpls)>0
- ||$.inArray("ldap",redbackRuntimeConfiguration.rbacManagerImpls)>0;
+ $.log("before useLdap");
+ var useLdap = $.inArray("ldap",redbackRuntimeConfiguration.userManagerImpls())>0
+ ||$.inArray("ldap",redbackRuntimeConfiguration.rbacManagerImpls())>0;
$.log("useLdap:"+useLdap);
if(useLdap){
// load ldap roles
Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js/templates/archiva/general-admin.html
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js/templates/archiva/general-admin.html?rev=1448333&r1=1448332&r2=1448333&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js/templates/archiva/general-admin.html (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/js/templates/archiva/general-admin.html Wed Feb 20 18:08:57 2013
@@ -1005,14 +1005,14 @@
<div class="span4 dotted">
<h5>${$.i18n.prop('redback.runtime.rbac-managers.impls.choosed')}</h5>
<div style="min-height: 40px" id="rbac-mananagers-sortables-choosed"
- data-bind="sortable: { template: 'redback-runtime-general-content-impl-informations', data:usedUserManagerImpls,afterMove: userManagerImplMoved}">
+ data-bind="sortable: { template: 'redback-runtime-general-content-impl-informations', data:usedRbacManagerImpls,afterMove: rbacManagerImplMoved}">
</div>
</div>
<div class="span4 dotted">
<h5>${$.i18n.prop('redback.runtime.rbac-managers.impls.available')}</h5>
<div style="min-height: 40px"id="rbac-mananagers-sortables-availables"
- data-bind="sortable: {template: 'redback-runtime-general-content-impl-informations',data:availableUserManagerImpls,afterMove: userManagerImplMoved}">
+ data-bind="sortable: {template: 'redback-runtime-general-content-impl-informations',data:availableRbacManagerImpls,afterMove: rbacManagerImplMoved}">
</div>
</div>
</div>