mirror of https://github.com/apache/archiva.git
add route for advanced search
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1376567 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
b1fee5688a
commit
40d9e74fc8
|
@ -178,6 +178,7 @@ function($,sammy,tmpl,ui) {
|
||||||
this.activeMenuId = ko.observable();
|
this.activeMenuId = ko.observable();
|
||||||
|
|
||||||
window.sammyArchivaApplication = Sammy(function () {
|
window.sammyArchivaApplication = Sammy(function () {
|
||||||
|
var self = this;
|
||||||
this.get('#quicksearch~:artifactId',function(){
|
this.get('#quicksearch~:artifactId',function(){
|
||||||
$("#main-content" ).html(mediumSpinnerImg());
|
$("#main-content" ).html(mediumSpinnerImg());
|
||||||
var artifactId= this.params.artifactId;
|
var artifactId= this.params.artifactId;
|
||||||
|
@ -218,7 +219,7 @@ function($,sammy,tmpl,ui) {
|
||||||
},searchViewModel);
|
},searchViewModel);
|
||||||
});
|
});
|
||||||
|
|
||||||
this.get('#searchresult~:repositoryIds/:queryterms',function(){
|
this.get('#basicsearch~:repositoryIds/:queryterms',function(){
|
||||||
var queryterms= this.params.queryterms;
|
var queryterms= this.params.queryterms;
|
||||||
var repositoryIds = this.params.repositoryIds;
|
var repositoryIds = this.params.repositoryIds;
|
||||||
var repos = repositoryIds.split("~");
|
var repos = repositoryIds.split("~");
|
||||||
|
@ -233,7 +234,7 @@ function($,sammy,tmpl,ui) {
|
||||||
},searchViewModel);
|
},searchViewModel);
|
||||||
});
|
});
|
||||||
|
|
||||||
this.get('#searchresult/:queryterms',function(){
|
this.get('#basicsearch/:queryterms',function(){
|
||||||
var queryterms= this.params.queryterms;
|
var queryterms= this.params.queryterms;
|
||||||
$.log("queryterms:"+queryterms);
|
$.log("queryterms:"+queryterms);
|
||||||
var searchViewModel = new SearchViewModel();
|
var searchViewModel = new SearchViewModel();
|
||||||
|
@ -245,6 +246,85 @@ function($,sammy,tmpl,ui) {
|
||||||
},searchViewModel);
|
},searchViewModel);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
var advancedSearchRoute=function(repositoryIds,groupId,artifactId,version,classifier,packaging,className){
|
||||||
|
|
||||||
|
$.log("groupId:artifactId:version:classifier:packaging:className="+groupId+':'+artifactId+':'+version+':'+classifier+':'+packaging+':'+className);
|
||||||
|
var searchViewModel = new SearchViewModel();
|
||||||
|
var searchRequest = new SearchRequest();
|
||||||
|
searchRequest.groupId(groupId);
|
||||||
|
searchRequest.artifactId(artifactId);
|
||||||
|
searchRequest.version(version);
|
||||||
|
searchRequest.classifier(classifier);
|
||||||
|
searchRequest.packaging(packaging);
|
||||||
|
searchRequest.className(className);
|
||||||
|
|
||||||
|
searchRequest.selectedRepoIds=repositoryIds;
|
||||||
|
searchViewModel.searchRequest(searchRequest);
|
||||||
|
displaySearch(function(){
|
||||||
|
//searchViewModel.externalAdvancedSearch();
|
||||||
|
searchViewModel.search("restServices/archivaServices/searchService/searchArtifacts",repositoryIds);
|
||||||
|
},searchViewModel);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*var advancedSearchParams=['groupId','artifactId','version','classifier','packaging','className'];
|
||||||
|
|
||||||
|
var createAdvancedSearchRoutes=function(startLocation){
|
||||||
|
for(var idx=1;idx<advancedSearchParams.length+1;idx++){
|
||||||
|
var route = startLocation;
|
||||||
|
$(advancedSearchParams).each(function(index) {
|
||||||
|
if(index<idx){
|
||||||
|
route+="~:"+advancedSearchParams[index];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
$.log("add route:"+route);
|
||||||
|
self.get(route,function(){
|
||||||
|
var repositoryIds = this.params.repositoryIds;
|
||||||
|
var repos = repositoryIds ? repositoryIds.split("~"):[];
|
||||||
|
$.log('repos:'+repos.length);
|
||||||
|
var groupId= this.params.groupId;
|
||||||
|
var artifactId= this.params.artifactId;
|
||||||
|
var version= this.params.version;
|
||||||
|
var classifier= this.params.classifier;
|
||||||
|
var packaging= this.params.packaging;
|
||||||
|
var className= this.params.className;
|
||||||
|
advancedSearchRoute(repos,groupId,artifactId,version,classifier,packaging,className);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}*/
|
||||||
|
//createAdvancedSearchRoutes("#advancedsearch/");
|
||||||
|
//createAdvancedSearchRoutes("#advancedsearch~:repositoryIds/");
|
||||||
|
|
||||||
|
self.get("#advancedsearch/:queryterms",function(){
|
||||||
|
var repositoryIds = this.params.repositoryIds;
|
||||||
|
var repos = repositoryIds ? repositoryIds.split("~"):[];
|
||||||
|
var queryTerms = this.params.queryterms;
|
||||||
|
var terms=queryTerms?queryTerms.split('~'):[];
|
||||||
|
$.log("queryTerms:"+queryTerms+",terms.length:"+terms.length);
|
||||||
|
var groupId= terms.length>0?terms[0]:"";
|
||||||
|
var artifactId= terms.length>1?terms[1]:"";
|
||||||
|
var version= terms.length>2?terms[2]:"";
|
||||||
|
var classifier= terms.length>3?terms[3]:"";
|
||||||
|
var packaging= terms.length>4?terms[4]:"";
|
||||||
|
var className= terms.length>5?terms[5]:"";
|
||||||
|
advancedSearchRoute(repos,groupId,artifactId,version,classifier,packaging,className);
|
||||||
|
});
|
||||||
|
|
||||||
|
self.get("#advancedsearch~:repositoryIds/:queryterms",function(){
|
||||||
|
var repositoryIds = this.params.repositoryIds;
|
||||||
|
var repos = repositoryIds ? repositoryIds.split("~"):[];
|
||||||
|
var queryTerms = this.params.queryterms;
|
||||||
|
var terms=queryTerms?queryTerms.split('~'):[];
|
||||||
|
$.log("queryTerms:"+queryTerms+",terms.length:"+terms.length);
|
||||||
|
var groupId= terms.length>0?terms[0]:"";
|
||||||
|
var artifactId= terms.length>1?terms[1]:"";
|
||||||
|
var version= terms.length>2?terms[2]:"";
|
||||||
|
var classifier= terms.length>3?terms[3]:"";
|
||||||
|
var packaging= terms.length>4?terms[4]:"";
|
||||||
|
var className= terms.length>5?terms[5]:"";
|
||||||
|
advancedSearchRoute(repos,groupId,artifactId,version,classifier,packaging,className);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
this.get('#open-admin-create-box',function(){
|
this.get('#open-admin-create-box',function(){
|
||||||
$.log("#open-admin-create-box");
|
$.log("#open-admin-create-box");
|
||||||
adminCreateBox();
|
adminCreateBox();
|
||||||
|
|
|
@ -1551,7 +1551,7 @@ define("archiva.search",["jquery","i18n","jquery.tmpl","choosen","knockout","kno
|
||||||
// cleanup previours error message
|
// cleanup previours error message
|
||||||
customShowError("#main-content #search-basic-form", null, null, []);
|
customShowError("#main-content #search-basic-form", null, null, []);
|
||||||
}
|
}
|
||||||
var location="#searchresult";
|
var location="#basicsearch";
|
||||||
|
|
||||||
self.selectedRepoIds=[];
|
self.selectedRepoIds=[];
|
||||||
mainContent.find("#search-basic-repositories" )
|
mainContent.find("#search-basic-repositories" )
|
||||||
|
|
Loading…
Reference in New Issue