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);
this.usedUserManagerImpls=ko.observableArray([]);
- this.rbacManagerImpls=ko.observableArray([]);
+ this.usedRbacManagerImpls=ko.observableArray([]);
this.modifiesLdapGroupMappings=ko.observableArray([]);
}
}
+ 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();
for(var i= 0;i<redbackRuntimeConfiguration.userManagerImpls().length;i++){
var id=redbackRuntimeConfiguration.userManagerImpls()[i];
- $.log("id:"+id);
+
var userManagerImplementationInformation=findUserManagerImplementationInformation(id);
if(userManagerImplementationInformation!=null){
}
}
+ $.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){
if(!isUsedUserManagerImpl(self.userManagerImplementationInformations()[i])){
self.availableUserManagerImpls.push(self.userManagerImplementationInformations()[i]);
}
-
}
userManagerImplMoved=function(arg){
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");
clearUserMessages();
var userMessages=$("#user-messages");
userMessages.html(mediumSpinnerImg());
+
self.redbackRuntimeConfiguration().userManagerImpls=ko.observableArray([]);
for(var i=0;i<self.usedUserManagerImpls().length;i++){
$.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",
{
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