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();
|
||||
|
||||
window.sammyArchivaApplication = Sammy(function () {
|
||||
var self = this;
|
||||
this.get('#quicksearch~:artifactId',function(){
|
||||
$("#main-content" ).html(mediumSpinnerImg());
|
||||
var artifactId= this.params.artifactId;
|
||||
|
@ -218,7 +219,7 @@ function($,sammy,tmpl,ui) {
|
|||
},searchViewModel);
|
||||
});
|
||||
|
||||
this.get('#searchresult~:repositoryIds/:queryterms',function(){
|
||||
this.get('#basicsearch~:repositoryIds/:queryterms',function(){
|
||||
var queryterms= this.params.queryterms;
|
||||
var repositoryIds = this.params.repositoryIds;
|
||||
var repos = repositoryIds.split("~");
|
||||
|
@ -233,7 +234,7 @@ function($,sammy,tmpl,ui) {
|
|||
},searchViewModel);
|
||||
});
|
||||
|
||||
this.get('#searchresult/:queryterms',function(){
|
||||
this.get('#basicsearch/:queryterms',function(){
|
||||
var queryterms= this.params.queryterms;
|
||||
$.log("queryterms:"+queryterms);
|
||||
var searchViewModel = new SearchViewModel();
|
||||
|
@ -245,6 +246,85 @@ function($,sammy,tmpl,ui) {
|
|||
},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(){
|
||||
$.log("#open-admin-create-box");
|
||||
adminCreateBox();
|
||||
|
|
|
@ -1551,7 +1551,7 @@ define("archiva.search",["jquery","i18n","jquery.tmpl","choosen","knockout","kno
|
|||
// cleanup previours error message
|
||||
customShowError("#main-content #search-basic-form", null, null, []);
|
||||
}
|
||||
var location="#searchresult";
|
||||
var location="#basicsearch";
|
||||
|
||||
self.selectedRepoIds=[];
|
||||
mainContent.find("#search-basic-repositories" )
|
||||
|
|
Loading…
Reference in New Issue