Author: olamy
Date: Thu Aug 23 08:49:20 2012
New Revision: 1376407
URL: http://svn.apache.org/viewvc?rev=1376407&view=rev
Log:
make basic search navigable
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/templates/archiva/search.html
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js?rev=1376407&r1=1376406&r2=1376407&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
Thu Aug 23 08:49:20 2012
@@ -208,8 +208,21 @@ function() {
var repositoryIds = this.params.repositoryIds;
var repos = repositoryIds.split("~");
$.log("queryterms:"+queryterms+',repositoryIds:'+repositoryIds+",repos:"+repos.length);
+ var searchViewModel = new SearchViewModel();
+ var searchRequest = new SearchRequest();
+ searchRequest.queryTerms(queryterms);
+ searchRequest.repositories=repos;
+ searchViewModel.searchRequest(searchRequest);
+ displaySearch(function(){
+ searchViewModel.externalBasicSearch();
+ },searchViewModel);
+ });
+
+ this.get('#searchresult~:repositoryIds/:queryterms',function(){
var queryterms= this.params.queryterms;
- $.log("queryterms:"+queryterms);
+ var repositoryIds = this.params.repositoryIds;
+ var repos = repositoryIds.split("~");
+
$.log("queryterms:"+queryterms+',repositoryIds:'+repositoryIds+",repos:"+repos.length);
var searchViewModel = new SearchViewModel();
var searchRequest = new SearchRequest();
searchRequest.queryTerms(queryterms);
@@ -220,6 +233,18 @@ function() {
},searchViewModel);
});
+ this.get('#searchresult/:queryterms',function(){
+ var queryterms= this.params.queryterms;
+ $.log("queryterms:"+queryterms);
+ var searchViewModel = new SearchViewModel();
+ var searchRequest = new SearchRequest();
+ searchRequest.queryTerms(queryterms);
+ searchViewModel.searchRequest(searchRequest);
+ displaySearch(function(){
+ searchViewModel.externalBasicSearch();
+ },searchViewModel);
+ });
+
this.get('#open-admin-create-box',function(){
$.log("#open-admin-create-box");
adminCreateBox();
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js?rev=1376407&r1=1376406&r2=1376407&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js
Thu Aug 23 08:49:20 2012
@@ -1533,6 +1533,7 @@ define("archiva.search",["jquery","i18n"
*/
SearchViewModel=function(){
var self=this;
+ var mainContent=$("#main-content");
this.searchRequest=ko.observable(new SearchRequest());
this.observableRepoIds=ko.observableArray([]);
this.selectedRepoIds=[];
@@ -1550,7 +1551,25 @@ define("archiva.search",["jquery","i18n"
// cleanup previours error message
customShowError("#main-content #search-basic-form", null, null, []);
}
-
self.search("restServices/archivaServices/searchService/quickSearchWithRepositories");
+ var location="#searchresult";
+
+ self.selectedRepoIds=[];
+ mainContent.find("#search-basic-repositories" )
+ .find(".chzn-choices li span").each(function(i,span){
+ self.selectedRepoIds.push($(span).html());
+ }
+ );
+
+ if (self.selectedRepoIds.length>0){
+ $.log("selectedRepoIds:"+self.selectedRepoIds.length);
+ $(self.selectedRepoIds).each(function(index, Element){
+ location+="~"+self.selectedRepoIds[index];
+ });
+ }
+ location+="/"+queryTerm;
+ $.log("basicsearch location:"+location);
+ window.sammyArchivaApplication.setLocation(location);
+
//self.search("restServices/archivaServices/searchService/quickSearchWithRepositories");
}
this.externalBasicSearch=function(){
@@ -1574,8 +1593,6 @@ define("archiva.search",["jquery","i18n"
}
this.search=function(url,repositoriesIds){
- var mainContent=$("#main-content");
-
var searchResultsGrid=mainContent.find("#search-results
#search-results-grid" );
mainContent.find("#btn-basic-search" ).button("loading");
mainContent.find("#btn-advanced-search" ).button("loading");
@@ -1673,7 +1690,7 @@ define("archiva.search",["jquery","i18n"
$.log("repos:"+repos);
searchViewModel.observableRepoIds(repos);
ko.applyBindings(searchViewModel,mainContent.find("#search-artifacts-div").get(0));
- mainContent.find("#search-basic-repostories-select" ).chosen();
+ mainContent.find("#search-basic-repositories-select" ).chosen();
if (successCallbackFn && $.isFunction(successCallbackFn))
successCallbackFn();
}
});
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/templates/archiva/search.html
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/templates/archiva/search.html?rev=1376407&r1=1376406&r2=1376407&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/templates/archiva/search.html
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/templates/archiva/search.html
Thu Aug 23 08:49:20 2012
@@ -213,7 +213,7 @@
<fieldset>
<div class="control-group" id="search-basic-repositories">
<select
data-placeholder="${$.i18n.prop('search.artifact.search.form.query.repositories')}"
- id="search-basic-repostories-select"
class="chzn-select defaults"
+ id="search-basic-repositories-select"
class="chzn-select defaults"
multiple style="width:350px;" tabindex="4">
<option
value="all">${$.i18n.prop('search.artifact.search.form.repositories.all')}</option>
{{each(i,repoId) observableRepoIds}}