Author: olamy
Date: Mon Nov 19 12:50:54 2012
New Revision: 1411159
URL: http://svn.apache.org/viewvc?rev=1411159&view=rev
Log:
[MRM-1711] Add buttons for managing repository group as can be a pain with long
list of repositories.
take care about activate correct handler when a repo has been moved.
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repository-groups.js
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repository-groups.js
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repository-groups.js?rev=1411159&r1=1411158&r2=1411159&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repository-groups.js
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repository-groups.js
Mon Nov 19 12:50:54 2012
@@ -61,6 +61,10 @@ function(jquery,i18n,jqueryTmpl,bootstra
}
self.repositoryGroup.repositories(repositories);
self.repositoryGroup.modified(true);
+
$("#main-content").find("#repository-groups-edit-available-repositories").find(".icon-plus-sign"
).off("click");
+
$("#main-content").find("#repository-groups-edit-order-div").find(".icon-minus-sign"
).off("click");
+ self.renderSortableAvailables(self.repositoryGroupsViewModel);
+ self.renderSortableChoosed(self.repositoryGroupsViewModel);
}
this.saveRepositoryGroup=function(repositoryGroup){
@@ -75,23 +79,52 @@ function(jquery,i18n,jqueryTmpl,bootstra
$.log("removeRepository:"+id);
}
+ this.removeAvailable=function(idVal){
+ for (var
i=0;i<self.repositoryGroupsViewModel.managedRepositories().length;i++){
+
if(self.repositoryGroupsViewModel.managedRepositories()[i].id()==idVal){
+
self.availableRepositories.remove(repositoryGroupsViewModel.managedRepositories()[i]);
+ }
+ }
+
+ for(var i=
0;i<self.repositoryGroupsViewModel.managedRepositories().length;i++){
+
if(self.repositoryGroupsViewModel.managedRepositories()[i].id()==idVal){
+ $.log("find repo to add");
+ self.repositoryGroup.repositories.push(idVal);
+
self.repositoryGroup.managedRepositories.push(findManagedRepository(idVal,self.repositoryGroupsViewModel.managedRepositories()));
+ }
+ }
+
$("#main-content").find("#repository-groups-edit-order-div").find("#minus-"+idVal
).on("click",function(){
+ var idVal = $(this).attr("id");
+ idVal=idVal.substringAfterFirst("minus-");
+ self.removeChoosed(idVal);
+ });
+ }
+
this.renderSortableAvailables=function(repositoryGroupsViewModel){
$("#main-content").find("#repository-groups-edit-available-repositories").find(".icon-plus-sign"
).on("click",function(){
var idVal = $(this).attr("id");
idVal=idVal.substringAfterFirst("plus-");
- for (var
i=0;i<self.repositoryGroupsViewModel.managedRepositories().length;i++){
-
if(self.repositoryGroupsViewModel.managedRepositories()[i].id()==idVal){
-
self.availableRepositories.remove(repositoryGroupsViewModel.managedRepositories()[i]);
- }
+ self.removeAvailable(idVal);
+ });
+ }
+
+ this.removeChoosed=function(idVal){
+ for (var
i=0;i<self.repositoryGroupsViewModel.managedRepositories().length;i++){
+
if(self.repositoryGroupsViewModel.managedRepositories()[i].id()==idVal){
+
self.availableRepositories.push(repositoryGroupsViewModel.managedRepositories()[i]);
}
+ }
- for(var i=
0;i<self.repositoryGroupsViewModel.managedRepositories().length;i++){
-
if(self.repositoryGroupsViewModel.managedRepositories()[i].id()==idVal){
- $.log("find repo to add");
- self.repositoryGroup.repositories.push(idVal);
-
self.repositoryGroup.managedRepositories.push(findManagedRepository(idVal,self.repositoryGroupsViewModel.managedRepositories()));
- }
+ for(var i= 0;i<self.repositoryGroup.repositories().length;i++){
+ if(self.repositoryGroup.repositories()[i]==idVal){
+
self.repositoryGroup.repositories.remove(self.repositoryGroup.repositories()[i]);
+
self.repositoryGroup.managedRepositories.remove(findManagedRepository(idVal,self.repositoryGroupsViewModel.managedRepositories()));
}
+ }
+
$("#main-content").find("#repository-groups-edit-available-repositories").find("#plus-"+idVal
).on("click",function(){
+ var idVal = $(this).attr("id");
+ idVal=idVal.substringAfterFirst("plus-");
+ self.removeAvailable(idVal);
});
}
@@ -99,19 +132,7 @@ function(jquery,i18n,jqueryTmpl,bootstra
$("#main-content").find("#repository-groups-edit-order-div").find(".icon-minus-sign"
).on("click",function(){
var idVal = $(this).attr("id");
idVal=idVal.substringAfterFirst("minus-");
- for (var
i=0;i<self.repositoryGroupsViewModel.managedRepositories().length;i++){
-
if(self.repositoryGroupsViewModel.managedRepositories()[i].id()==idVal){
-
self.availableRepositories.push(repositoryGroupsViewModel.managedRepositories()[i]);
- }
- }
-
- for(var i= 0;i<self.repositoryGroup.repositories().length;i++){
- if(self.repositoryGroup.repositories()[i]==idVal){
- $.log("find repo to remove");
-
self.repositoryGroup.repositories.remove(self.repositoryGroup.repositories()[i]);
-
self.repositoryGroup.managedRepositories.remove(findManagedRepository(idVal,self.repositoryGroupsViewModel.managedRepositories()));
- }
- }
+ self.removeChoosed(idVal);
});
}
}