From d09dcda440bafc726aba5faa781dc1f6a134231b Mon Sep 17 00:00:00 2001 From: Xavier Sumba Date: Fri, 9 Mar 2018 21:20:50 -0500 Subject: [PATCH 1/6] Upgrade dependencies --- bower.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/bower.json b/bower.json index fe69a81..af83881 100644 --- a/bower.json +++ b/bower.json @@ -24,14 +24,14 @@ "tests" ], "dependencies": { - "angular": "~1.3.8", - "angular-cookies": "~1.3.8", - "angular-route": "~1.3.8", - "angular-sanitize": "~1.3.8", - "angular-touch": "~1.3.8", + "angular": "^1.6.9", + "angular-cookies": "^1.6.9", + "angular-route": "^1.6.9", + "angular-sanitize": "^1.6.9", + "angular-touch": "^1.6.9", "bootstrap": "~3.3.1", - "d3": "~3.5.3", + "d3": "^4.13.0", "fontawesome": "~4.2.0", - "jquery": "~2.1.3" + "jquery": "^3.3.1" } } From 59d97af95bcd2e04775b2bc04b59c1b45b93e6bb Mon Sep 17 00:00:00 2001 From: Xavier Sumba Date: Fri, 9 Mar 2018 21:31:08 -0500 Subject: [PATCH 2/6] solve issues --- dist/ngsolr.js | 13 +++++-------- dist/ngsolr.min.js | 6 +++--- dist/ngsolr.min.js.map | 2 +- src/ngsolr/app.js | 1 - src/ngsolr/services/solr.js | 12 +++++------- 5 files changed, 14 insertions(+), 20 deletions(-) diff --git a/dist/ngsolr.js b/dist/ngsolr.js index d3cdce8..8a70201 100644 --- a/dist/ngsolr.js +++ b/dist/ngsolr.js @@ -18,7 +18,6 @@ app.constant('Solr', { var f = query.createFacet('location_0_coordinate', '*'); query.addFacet(f); query.setOption('fl', '*'); - query.setOption('json.wrf', 'JSON_CALLBACK'); query.setOption('rows', '5000'); query.setOption('sort', 'title+asc'); query.setOption('wt', 'json'); @@ -2977,13 +2976,12 @@ function SolrQuery(Url) { */ angular .module('ngSolr') - .factory('SolrSearchService', ['$http','$log','$q','$rootScope', - function ($http, $log, $q, $rootScope) { + .factory('SolrSearchService', ['$http','$log','$q','$rootScope', '$sce', + function ($http, $log, $q, $rootScope, $sce) { // the default search query var defaultQuery = function(query) { query.setOption('fl', '*'); - query.setOption('json.wrf', 'JSON_CALLBACK'); query.setOption('rows', 10); query.setOption('wt', 'json'); query.setUserQuery('*:*'); @@ -3195,7 +3193,7 @@ angular var url = query.getSolrQueryUrl(); $log.debug('GET ' + QueryName + ': ' + url); // execute the query - return $http.jsonp(url).then( + return $http.jsonp($sce.trustAsResourceUrl(url), {jsonpCallbackParam: 'json.wrf'}).then( // success function (result) { // set query result values @@ -3211,9 +3209,9 @@ angular $rootScope.$broadcast(QueryName); }, // error - function () { + function (error) { var msg = 'Could not get search results from server'; - $log.error(msg); + $log.error(msg +' -> ' + error); // set query result values var response = {}; response.numFound = 0; @@ -3237,7 +3235,6 @@ angular - /** * Utility functions used across the application. */ diff --git a/dist/ngsolr.min.js b/dist/ngsolr.min.js index f4f0964..a74912f 100644 --- a/dist/ngsolr.min.js +++ b/dist/ngsolr.min.js @@ -1,5 +1,5 @@ -/*! ngSolr - v0.6.1 - 2016-04-20 */ +/*! ngSolr - v0.6.1 - 2018-03-09 */ -"use strict";function SolrFacet(Field,Value){var self=this;self.field=Field,self.value=Value,self.options={},self.getOption=function(Name){return self.options[Name]},self.getUrlFragment=function(){var query="";query+="&fq="+self.field+":"+self.value;for(var option in self.options)self.options.hasOwnProperty(option)&&(query+="&"+option+"="+self.options[option]);return query},self.setOption=function(Name,Value){self.options[Name]=Value}}function SolrQuery(Url){var self=this;self.error=void 0,self.facets=[],self.facet_counts={},self.highlighting={},self.options={},self.nearMatch=!1,self.query="*:*",self.queryParameters=[],self.response={},self.responseHeader={},self.solr=Url,self.addFacet=function(Facet){for(var i=0;i0&&(item=Items.docs[0],date=item[FieldName],void 0!==date)?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField))},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField))},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),f=query.getFacet($scope.endDateField),f?(start_year=f.value.replace("[","").replace("-01-01T00:00:00Z TO *]",""),$scope._startDate=start_year,$scope.startDate=start_year,$scope.updateFlag+=1):(startDateQuery=SolrSearchService.createQuery($scope.source),startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery),SolrSearchService.updateQuery($scope.startDateQueryName)),f=query.getFacet($scope.startDateField),f?(end_year=f.value.replace("[* TO ","").replace("-12-31T23:59:59Z]",""),$scope._endDate=end_year,$scope.endDate=end_year,$scope.updateFlag+=1):(endDateQuery=SolrSearchService.createQuery($scope.source),endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),SolrSearchService.updateQuery($scope.endDateQueryName))},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){return $scope.startDate>$scope.endDate?($scope.endDate=$scope._endDate,void($scope.startDate=$scope._startDate)):(hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),query.removeFacet($scope.startDateField),query.removeFacet($scope.endDateField),start_value="[* TO "+$scope.endDate+"-12-31T23:59:59Z]",end_value="["+$scope.startDate+"-01-01T00:00:00Z TO *]",f=query.createFacet($scope.startDateField,start_value),query.addFacet(f),f=query.createFacet($scope.endDateField,end_value),query.addFacet(f),hash=query.getHash(),void $location.path(hash))},$scope.init()}]),angular.module("ngSolr").controller("DateFacetHistogramController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,Utils){var bin,count,date,endDateResults,i,item,query,startDateResults,userquery;$scope._endDate=0,$scope._startDate=0,$scope.endDate=0,$scope.endDateField="toDate",$scope.endDateQueryName="endDateQuery",$scope.histogram=[],$scope.histogramHeight=100,$scope.histogramMaxBins=10,$scope.histogramQueryName="histogramQuery",$scope.histogramWidth=240,$scope.source=void 0,$scope.startDate=0,$scope.startDateField="fromDate",$scope.startDateQueryName="startDateQuery",$scope.target=SolrSearchService.defaultQueryName,$scope.updateFlag=0,$scope.updateHistogram=!0,$scope.updateOnInit=!1,$scope.updateOnTargetChange=!0,$scope.getFirstDateRecord=function(Items,FieldName){return Items&&Items.docs&&Items.docs.length>0&&(item=Items.docs[0],date=item[FieldName],void 0!==date)?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleHistogramQueryUpdate=function(Event){i=Event.name.indexOf("_"),bin=Event.name.substring(i+1,Event.name.length),query=SolrSearchService.getQuery(Event.name),count=query.response.numFound,$scope.histogram[bin].count=count,$scope.updateHistogramChart()},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleTargetQueryUpdate=function(){query=SolrSearchService.getQuery($scope.target),userquery=query.getUserQuery(),query=SolrSearchService.getQuery($scope.startDateQueryName),query.setUserQuery(userquery),query=SolrSearchService.getQuery($scope.endDateQueryName),query.setUserQuery(userquery),$scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName)},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.userquery=query.getUserQuery()}var startDateQuery=SolrSearchService.createQuery();startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery);var endDateQuery=SolrSearchService.createQuery();endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),$scope.updateOnInit&&($scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName))}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate<=$scope.endDate){var query=SolrSearchService.getQuery($scope.target);if(query){var dateRange=$scope.getDateRangeConstraint($scope.startDateField,$scope.startDate,$scope.endDateField,$scope.endDate);query.setQueryParameter("dateRange",dateRange),SolrSearchService.updateQuery($scope.target)}}else $scope.endDate=$scope._endDate,$scope.startDate=$scope._startDate,$log.info("WARNING: start date is greater than end date")},$scope.updateHistogram=function(){var bin,binRange,dateRange,end,histogramQuery,histogramQueryName,i,range,start;for($scope.histogram=[],range=Math.ceil($scope.endDate-$scope.startDate),binRange=Math.ceil(range/$scope.histogramMaxBins),i=0;i<$scope.histogramMaxBins;i++)start=Number($scope.startDate)+binRange*i,end=start+binRange,bin={},bin.start=start,bin.end=end>$scope.endDate?$scope.endDate:end,bin.label=start+" to "+bin.end,bin.count=10*i+5,$scope.histogram.push(bin);for(i=0;i<$scope.histogram.length;i++)bin=$scope.histogram[i],histogramQuery=SolrSearchService.createQuery(),histogramQueryName=$scope.histogramQueryName+"_"+i,dateRange=$scope.getDateRangeConstraint($scope.startDateField,bin.start,$scope.endDateField,bin.end),histogramQuery.setOption("rows","0"),histogramQuery.setQueryParameter("dateRange",dateRange),SolrSearchService.setQuery(histogramQueryName,histogramQuery),$scope.$on(histogramQueryName,function(histogramQueryName){$scope.handleHistogramQueryUpdate(histogramQueryName)}),SolrSearchService.updateQuery(histogramQueryName)},$scope.updateHistogramChart=function(){var margin={top:0,right:10,bottom:0,left:0},height=$scope.histogramHeight-margin.top-margin.bottom,width=$scope.histogramWidth-margin.left-margin.right,formatPercent=d3.format(".0%");d3.select("#date-range-histogram").select("svg").remove();var svg=d3.select("#date-range-histogram").append("svg").attr("width",width+margin.left+margin.right).attr("height",height+margin.top+margin.bottom).append("g").attr("transform","translate("+margin.left+","+margin.top+")"),max=d3.max($scope.histogram,function(d){return d.count}),x=d3.scale.ordinal().rangeBands([$scope.startYear,$scope.endYear]),y=d3.scale.log().domain([0,max]).rangeRound([0,height]);d3.svg.axis().scale(x).orient("bottom"),d3.svg.axis().scale(y).orient("left").tickFormat(formatPercent),x.domain([$scope.startYear,$scope.endYear]),y.domain([0,max]),d3.select("body").append("div").style("background","white").style("border","1px solid #ccc").style("position","absolute").style("z-index","10").style("visibility","hidden").text("a simple tooltip"),svg.selectAll(".bar").data($scope.histogram).enter().append("rect").attr("id",function(d,i){return"histogramBar_"+i}).attr("class","bar").attr("x",function(d,i){return i*(width+margin.left+margin.right)/$scope.histogramMaxBins}).attr("width",(width+margin.left+margin.right)/$scope.histogramMaxBins-1).attr("y",function(d){return height-height*d.count/max}).attr("height",function(d){return height*d.count/max}).on("click",function(d){$scope.endDate=d.end,$scope.startDate=d.start,$scope.submit()}),svg.selectAll(".bar").data($scope.histogram).exit().remove()}}]),angular.module("ngSolr").controller("DocumentSearchResultsController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService","Utils",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService,Utils){function Page(Name,Num){this.name=Name,this.number=Num,this.isCurrent=!1}$scope.documents=[],$scope.documentsPerPage=10,$scope.loading=!1,$scope.page=0,$scope.pages=[],$scope.pagesPerSet=10,$scope.queryName=SolrSearchService.defaultQueryName,$scope.source=void 0,$scope.start=0,$scope.totalPages=1,$scope.totalResults=0,$scope.totalSets=1,$scope.updateLocationOnChange=!0,$scope.userquery="",$scope.handleSetPage=function(Start){var query=SolrSearchService.getQuery($scope.queryName);if(query.setOption("start",Start*$scope.documentsPerPage),$scope.updateLocationOnChange){var hash=query.getHash();$location.path(hash),$window.scrollTo(0,0)}else $scope.loading=!0,SolrSearchService.updateQuery($scope.queryName)},$scope.handleUpdate=function(){$scope.documents=[],$scope.loading=!1;var results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs){$scope.totalResults=results.numFound,$scope.totalPages=Math.ceil($scope.totalResults/$scope.documentsPerPage),$scope.totalSets=Math.ceil($scope.totalPages/$scope.pagesPerSet);for(var i=0;i$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;lastPageInSet>=i;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("FacetSelectionController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){var hash,key,query;$scope.items=[],$scope.source=void 0,$scope.target=SolrSearchService.defaultQueryName,$scope.remove=function(Index){query=SolrSearchService.getQuery($scope.target),query.removeFacetByIndex(Index),hash=query.getHash(),$location.path(hash)},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=SolrSearchService.getQueryFromHash(hash,$scope.source),query&&($scope.items=query.getFacets())},$scope.init=function(){for(key in $attrs)$scope.hasOwnProperty(key)&&($scope[key]=$attrs[key]);$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()})},$scope.init()}]),angular.module("ngSolr").controller("FieldFacetController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){function FacetResult(Value,Score){this.value=Value,this.score=Score}var count,f,facet,facet_fields,facets,facet_query,hash,i,key,name,query,results,s,selected_values,value;$scope.exclusive=!0,$scope.facetQuery="facetQuery",$scope.facets=[],$scope.field="",$scope.items=[],$scope.maxItems=7,$scope.queryName=SolrSearchService.defaultQueryName,$scope.selected=!1,$scope.source=void 0,$scope.add=function($event,Index){query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),name=$scope.field,value="("+$scope.items[Index].value.split(" ").join("*")+")",facet=query.createFacet(name,value),-1===$scope.facets.indexOf(facet)&&(query.addFacet(facet),hash=query.getHash(),$location.path(hash)),$event.preventDefault()},$scope.handleUpdate=function(){for($scope.items=[],$scope.selected=!1,selected_values=[],hash=$routeParams.query||void 0,query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),facets=query.getFacets(),i=0;i-1&&($scope.selected=!0,s=f.value.replace(/([\(\[\)\]])+/g,""),selected_values.push(s));if(facet_query=SolrSearchService.getQuery($scope.facetQuery),results=facet_query.getFacetCounts(),results&&results.hasOwnProperty("facet_fields"))for(facet_fields=results.facet_fields[$scope.field].length>2*$scope.maxItems?results.facet_fields[$scope.field].splice(0,$scope.maxItems):results.facet_fields[$scope.field],i=0;i=$scope.documentsPerRow||i===results.docs.length-1)&&(count=0,$scope.rows.push(row),row=[])}else $scope.rows=[],$scope.totalResults=0,$scope.totalPages=1,$scope.totalSets=1;$scope.updatePageIndex()},$scope.init=function(){for(var key in $attrs)$scope.hasOwnProperty(key)&&("documentsPerPage"===key||"documentsPerRow"===key||"pagesPerSet"===key?$scope[key]=parseInt($attrs[key]):"true"===$attrs[key]||"false"===$attrs[key]?$scope[key]="true"===$attrs[key]:$scope[key]=$attrs[key]);$scope.$on($scope.queryName,function(){$scope.handleUpdate()}),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.source&&(query.solr=$scope.source),$scope.documentsPerPage=query.getOption("rows")||10,$scope.page=Math.ceil(query.getOption("start")/$scope.documentsPerPage)||0,$scope.userquery=query.getUserQuery(),SolrSearchService.setQuery($scope.queryName,query),SolrSearchService.updateQuery($scope.queryName)}})},$scope.updatePageIndex=function(){$scope.pages=[];var currentSet=Math.floor($scope.page/$scope.pagesPerSet),firstPageInSet=currentSet*$scope.pagesPerSet+1,lastPageInSet=firstPageInSet+$scope.pagesPerSet-1;if(lastPageInSet>$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;lastPageInSet>=i;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("MapController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","SelectionSetService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,SelectionSetService,Utils){var i,lat,lng;$scope.categoryToIconMap={"default":"img/icon/house.png",corporateBody:"img/icon/corporatebody.png",government:"img/icon/corporatebody.png",organization:"img/icon/corporatebody.png",person:"img/icon/person.png"},$scope.centerOnStart=!0,$scope.clusterManager=null,$scope.clusterOptions={styles:[{height:24,url:"img/map/cluster1.png",width:24},{height:36,url:"img/map/cluster2.png",width:36},{height:48,url:"img/map/cluster3.png",width:48},{height:64,url:"img/map/cluster4.png",width:64},{height:82,url:"img/map/cluster5.png",width:82}]},$scope.clusterResults=!0,$scope.count=5e3,$scope.fields="*",$scope.firstUpdate=!0,$scope.idToMarkerMap={},$scope.infoWindow=new google.maps.InfoWindow,$scope.loading=!1,$scope.map=void 0,$scope.markers=[],$scope.maxFieldLength=120,$scope.queryName="mapQuery",$scope.settings={mapTypeControl:!1,mapTypeId:google.maps.MapTypeId.TERRAIN,navigationControl:!0,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},overviewMapControl:!1,panControl:!0,rotateControl:!0,scaleControl:!0,streetViewControl:!1,zoom:5,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.LARGE}},$scope.showMessages=!0,$scope.showErrors=!0,$scope.source=void 0,$scope.startLatitude=void 0,$scope.startLongitude=void 0,$scope.target="defaultQuery",$scope.createMapQuery=function(){var query=SolrSearchService.createQuery();return query.setOption("fl",$scope.fields),query.setOption("rows",$scope.count),query.addQueryParameter("+location_0_coordinate:*"),query},$scope.getMarker=function(Map,Title,Content,Category,Lat,Lng){var icon=$scope.categoryToIconMap["default"];null!==Category&&Category in $scope.categoryToIconMap&&(icon=$scope.categoryToIconMap[Category]);var marker=new google.maps.Marker({icon:icon,map:Map,position:new google.maps.LatLng(Lat,Lng),title:Title,content:Content});return marker},$scope.getMarkerContent=function(Item){var content='
';return Item.dobj_proxy_small&&(content+='
'),content+='",content+='
'+Utils.formatDate(Item.fromDate)+" - "+Utils.formatDate(Item.toDate)+"
",content+='
'+Utils.truncate(Item["abstract"],$scope.maxFieldLength)+" ",content+='more
',content+="
"},$scope.handleSelection=function(){$log.info("Map selection updated");var selected=SelectionSetService.getSelectionSet();if(selected){var keys=[];for(var key in selected)selected.hasOwnProperty(key)&&keys.push(key);if(keys.length>0){var id=keys[0],marker=$scope.idToMarkerMap[id];if(marker){var bounds=new google.maps.LatLngBounds;bounds.extend(marker.position),google.maps.event.trigger(marker,"click"),$scope.map.fitBounds(bounds)}}}},$scope.handleUpdate=function(){var bounds=new google.maps.LatLngBounds,results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs)for(i=0;i=$scope.minSearchLength)for(i=0;i<$scope.hints.length,hintlist.length<$scope.maxHints;i++){token=$scope.hints[i];try{token.indexOf($scope.userquery)>-1&&hintlist.push(token)}catch(err){continue}}return hintlist},$scope.handleSubmit=function(){trimmed=Utils.trim($scope.userquery),""===trimmed&&($scope.userquery="*:*"),query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),query.setNearMatch($scope.nearMatch),query.setUserQuery($scope.userquery),hash=query.getHash(),$scope.redirect?$window.location.href=$scope.redirect+"#"+hash:$location.path(hash)},$scope.handleUpdate=function(){if(query=SolrSearchService.getQuery($scope.searchHintsQuery),results=query.getFacetCounts(),results&&results.hasOwnProperty("facet_fields")&&(result=results.facet_fields[$scope.searchHintsField]))for(i=0;i0?newquery.getUserQuery()!==$scope.queries[0].getUserQuery()&&($scope.queries.unshift(newquery),$scope.queries.length>$scope.maxItems&&$scope.queries.pop()):($scope.queries=[],$scope.queries.push(newquery))},$scope.setQuery=function(QueryIndex){QueryIndex>=0&&QueryIndex<=$scope.queries.length&&(query=$scope.queries[QueryIndex])},$scope.init()}]),angular.module("ngSolr").directive("searchhints",function(){return{restrict:"A",link:function(scope,element){element.autocomplete({delay:500,minLength:3,source:function(request,response){var results=$.ui.autocomplete.filter(scope.hints,request.term);response(results.slice(0,10))}})}}}).directive("searchbox",function(){return{link:function(scope,element){element.bind("keyup",function(event){13===event.keyCode?""!==scope.userquery&&scope.handleSubmit(scope.userquery):scope.userquery=event.target.value}),element.autocomplete({delay:500,minLength:3,source:function(request,response){var results=$.ui.autocomplete.filter(scope.hints,request.term);response(results.slice(0,10))}})},restrict:"A",scope:!1}}).directive("searchbutton",function(){return{link:function(scope,element){element.bind("click",function(){""!==scope.userquery&&scope.handleSubmit(scope.userquery)})},restrict:"A",scope:!1}}),angular.module("ngSolr").directive("searchbox",["$location","$log","$routeParams","$timeout","$window","SolrSearchService","Utils",function($location,$log,$routeParams,$timeout,$window,SolrSearchService,Utils){return{link:function(scope,element,attrs){var KEY_ENTER="13",KEY_ESCAPE="27",KEY_ARROW_UP="38",KEY_ARROW_DOWN="40";scope.showHints=!1,scope.hints=[],scope.maxHints=10,scope.messages=["Enter one or more search terms. Press Enter to search.","Key up or down to navigate hints. Press Enter to search.","Press Enter to search."],scope.message=scope.messages[0],scope.minSearchLength=3,scope.nearMatch=!1,scope.placeHolder="Keyword or place name",scope.queryBuffer=[],scope.redirect=void 0,scope.resetOnChange=!1,scope.searchHintsField="hints",scope.searchHintsQuery="hintsQuery",scope.selectedHint=-1,scope.showMessage=!0,scope.source=void 0,scope.timeout=void 0,scope.userQuery="",scope.clearHintSelection=function(){if(-1!==scope.selectedHint){var hint=scope.hints[scope.selectedHint];hint.selected=!1}},scope.handleRouteChange=function(){var hash=$routeParams.query||"";if(""!==hash){var query=SolrSearchService.getQueryFromHash(hash,scope.source);scope.userQuery=query.getUserQuery()}else scope.userQuery=hash},scope.handleSubmit=function(){var trimmed=Utils.trim(scope.userQuery);""===trimmed&&(scope.userQuery="*:*");var query=SolrSearchService.getQuery(scope.queryName);void 0===query&&(query=SolrSearchService.createQuery(scope.source)),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery);var hash=query.getHash();scope.redirect?$window.location.href=scope.redirect+"#"+hash:$location.path(hash)},scope.handleUpdate=function(){scope.message=scope.messages[1];var query=SolrSearchService.getQuery(scope.searchHintsQuery),results=query.getFacetCounts();if(results&&results.hasOwnProperty("facet_fields")){scope.hints=[];var result=results.facet_fields[scope.searchHintsField];if(result)for(var i=0;i=scope.minSearchLength&&(scope.timeout&&$timeout.cancel(scope.timeout),scope.timeout=$timeout(function(){var query=SolrSearchService.createQuery(scope.source);query.setOption("rows","0"),query.setOption("facet","true"),query.setOption("facet.limit",scope.maxHints),query.setOption("facet.field",scope.searchHintsField),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery),SolrSearchService.setQuery(scope.searchHintsQuery,query),SolrSearchService.updateQuery(scope.searchHintsQuery)},350))},scope.selectHint=function(index){var hint=scope.hints[index];scope.userQuery=hint.title},scope.init()},replace:!1,restrict:"E",scope:{showHints:"&",nearMatch:"@",placeHolder:"@",queryName:"@",searchHintsField:"@",source:"@"},template:'
  • {{hint.title}}
{{message}}
',transclude:!0}}]),angular.module("ngSolr").filter("cleanFacetLabel",function(){return function(text){var val=text.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" ")}}).filter("prettyFacetLabel",function(){return function(facet){var result=facet.field.replace(/([A-Z])/g," $1"),label=result.charAt(0).toUpperCase()+result.slice(1),val=facet.value.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" "),val=val.replace(" TO ",""),val=val.replace("-01-01T00:00:00Z",""),val=val.replace("-12-31T23:59:59Z",""),label+": "+val}}).filter("strip",function(){return function(text){if(void 0===text)return text;var i=text.indexOf(", ");return-1!==i?text.substring(i+2):text}}).filter("substitute",function(){var map={ACT:"Australian Capital Territory",NSW:"New South Wales",NA:"Australia",NT:"Northern Territory",QLD:"Queensland",SA:"South Australia",TAS:"Tasmania",VIC:"Victoria",WA:"Western Australia"};return function(text){return text in map?map[text]:text}}).filter("swapFacetLabels",function(){return function(label){return 0===label.indexOf("fromDate")?label="toDate"+label.substring(8):0===label.indexOf("From Date")?label="To Date"+label.substring(9):0===label.indexOf("toDate")?label="fromDate"+label.substring(6):0===label.indexOf("To Date")?label="From Date"+label.substring(7):0===label.indexOf("Localtype")&&(label="Type"+label.substring(9)),label}}).filter("trim",function(){return function(text){return void 0===text?text:text.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}}).filter("truncate",function(){return function(text,limit){if(void 0===text)return text;if(text.length>limit){var t=text.substring(0,Math.min(limit,text.length)),i=t.lastIndexOf(" ");if(-1!==i)return text.substring(0,i)+" ..."}return text}}),angular.module("ngSolr").factory("SelectionSetService",["$rootScope",function($rootScope){var svc={};return svc.documents={},svc.multipleSelection=!1,Array.prototype.remove=function(from,to){var rest=this.slice((to||from)+1||this.length);return this.length=0>from?this.length+from:from,this.push.apply(this,rest)},svc.add=function(Key,Doc){svc.multipleSelection||(svc.documents={}),svc.documents[Key]=Doc,$rootScope.$broadcast("selectionSetUpdate")},svc.clear=function(){svc.documents={},$rootScope.$broadcast("selectionSetUpdate")},svc.clearSilent=function(){svc.documents={}},svc.get=function(Key){return svc.documents[Key]},svc.getSelectionSet=function(){return svc.documents},svc.remove=function(Key){delete svc.documents[Key],$rootScope.$broadcast("selectionSetUpdate")},svc}]),angular.module("ngSolr").factory("SolrSearchService",["$http","$log","$q","$rootScope",function($http,$log,$q,$rootScope){var defaultQuery=function(query){return query.setOption("fl","*"),query.setOption("json.wrf","JSON_CALLBACK"),query.setOption("rows",10),query.setOption("wt","json"),query.setUserQuery("*:*"),query};this.setDefaultQuery=function(Query){defaultQuery=Query};var svc={};return svc.defaultQueryName="defaultQuery",svc.queries={},svc.createQuery=function(Core){var query=new SolrQuery(Core);return defaultQuery(query)},svc.getQuery=function(Name){try{return svc.queries[Name]}catch(Err){return void $log.debug("No query named "+Name+" available")}},svc.getQueryComponents=function(Query){for(var parts=[];Query.length>0;){Query=Query.replace(/^\s\s*/,"");var x=Query.indexOf(" +"),y=Query.indexOf(" -");if(-1===x&&-1===y)return parts.push(Query),parts;x>-1&&(-1===y||y>x)?(parts.push(Query.substring(0,x)),Query=Query.substring(x)):y>-1&&(parts.push(Query.substring(0,y)),Query=Query.substring(y))}return parts},svc.getQueryFromHash=function(Hash,CoreUrl){for(var query=svc.createQuery(CoreUrl),hash_elements=decodeURI(Hash).split("&"),i=0;iLength&&(Field=svc.trim(Field),Field=Field.substring(0,Math.min(Length,Field.length)),i=Field.lastIndexOf(" "),-1!==i&&(Field=Field.substring(0,i)+" ...")),Field},svc}]); +"use strict";function SolrFacet(Field,Value){var self=this;self.field=Field,self.value=Value,self.options={},self.getOption=function(Name){return self.options[Name]},self.getUrlFragment=function(){var query="";query+="&fq="+self.field+":"+self.value;for(var option in self.options)self.options.hasOwnProperty(option)&&(query+="&"+option+"="+self.options[option]);return query},self.setOption=function(Name,Value){self.options[Name]=Value}}function SolrQuery(Url){var self=this;self.error=void 0,self.facets=[],self.facet_counts={},self.highlighting={},self.options={},self.nearMatch=!1,self.query="*:*",self.queryParameters=[],self.response={},self.responseHeader={},self.solr=Url,self.addFacet=function(Facet){for(var i=0;i0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){(endDateResults=SolrSearchService.getResponse($scope.endDateQueryName))&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField))},$scope.handleStartDateQueryUpdate=function(){(startDateResults=SolrSearchService.getResponse($scope.startDateQueryName))&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField))},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),f=query.getFacet($scope.endDateField),f?(start_year=f.value.replace("[","").replace("-01-01T00:00:00Z TO *]",""),$scope._startDate=start_year,$scope.startDate=start_year,$scope.updateFlag+=1):(startDateQuery=SolrSearchService.createQuery($scope.source),startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery),SolrSearchService.updateQuery($scope.startDateQueryName)),f=query.getFacet($scope.startDateField),f?(end_year=f.value.replace("[* TO ","").replace("-12-31T23:59:59Z]",""),$scope._endDate=end_year,$scope.endDate=end_year,$scope.updateFlag+=1):(endDateQuery=SolrSearchService.createQuery($scope.source),endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),SolrSearchService.updateQuery($scope.endDateQueryName))},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate>$scope.endDate)return $scope.endDate=$scope._endDate,void($scope.startDate=$scope._startDate);hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),query.removeFacet($scope.startDateField),query.removeFacet($scope.endDateField),start_value="[* TO "+$scope.endDate+"-12-31T23:59:59Z]",end_value="["+$scope.startDate+"-01-01T00:00:00Z TO *]",f=query.createFacet($scope.startDateField,start_value),query.addFacet(f),f=query.createFacet($scope.endDateField,end_value),query.addFacet(f),hash=query.getHash(),$location.path(hash)},$scope.init()}]),angular.module("ngSolr").controller("DateFacetHistogramController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,Utils){var bin,count,date,endDateResults,i,item,query,startDateResults,userquery;$scope._endDate=0,$scope._startDate=0,$scope.endDate=0,$scope.endDateField="toDate",$scope.endDateQueryName="endDateQuery",$scope.histogram=[],$scope.histogramHeight=100,$scope.histogramMaxBins=10,$scope.histogramQueryName="histogramQuery",$scope.histogramWidth=240,$scope.source=void 0,$scope.startDate=0,$scope.startDateField="fromDate",$scope.startDateQueryName="startDateQuery",$scope.target=SolrSearchService.defaultQueryName,$scope.updateFlag=0,$scope.updateHistogram=!0,$scope.updateOnInit=!1,$scope.updateOnTargetChange=!0,$scope.getFirstDateRecord=function(Items,FieldName){return Items&&Items.docs&&Items.docs.length>0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleHistogramQueryUpdate=function(Event){i=Event.name.indexOf("_"),bin=Event.name.substring(i+1,Event.name.length),query=SolrSearchService.getQuery(Event.name),count=query.response.numFound,$scope.histogram[bin].count=count,$scope.updateHistogramChart()},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleTargetQueryUpdate=function(){query=SolrSearchService.getQuery($scope.target),userquery=query.getUserQuery(),query=SolrSearchService.getQuery($scope.startDateQueryName),query.setUserQuery(userquery),query=SolrSearchService.getQuery($scope.endDateQueryName),query.setUserQuery(userquery),$scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName)},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.userquery=query.getUserQuery()}var startDateQuery=SolrSearchService.createQuery();startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery);var endDateQuery=SolrSearchService.createQuery();endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),$scope.updateOnInit&&($scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName))}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate<=$scope.endDate){var query=SolrSearchService.getQuery($scope.target);if(query){var dateRange=$scope.getDateRangeConstraint($scope.startDateField,$scope.startDate,$scope.endDateField,$scope.endDate);query.setQueryParameter("dateRange",dateRange),SolrSearchService.updateQuery($scope.target)}}else $scope.endDate=$scope._endDate,$scope.startDate=$scope._startDate,$log.info("WARNING: start date is greater than end date")},$scope.updateHistogram=function(){var bin,binRange,dateRange,end,histogramQuery,histogramQueryName,i,range,start;for($scope.histogram=[],range=Math.ceil($scope.endDate-$scope.startDate),binRange=Math.ceil(range/$scope.histogramMaxBins),i=0;i<$scope.histogramMaxBins;i++)start=Number($scope.startDate)+binRange*i,end=start+binRange,bin={},bin.start=start,bin.end=end>$scope.endDate?$scope.endDate:end,bin.label=start+" to "+bin.end,bin.count=10*i+5,$scope.histogram.push(bin);for(i=0;i<$scope.histogram.length;i++)bin=$scope.histogram[i],histogramQuery=SolrSearchService.createQuery(),histogramQueryName=$scope.histogramQueryName+"_"+i,dateRange=$scope.getDateRangeConstraint($scope.startDateField,bin.start,$scope.endDateField,bin.end),histogramQuery.setOption("rows","0"),histogramQuery.setQueryParameter("dateRange",dateRange),SolrSearchService.setQuery(histogramQueryName,histogramQuery),$scope.$on(histogramQueryName,function(histogramQueryName){$scope.handleHistogramQueryUpdate(histogramQueryName)}),SolrSearchService.updateQuery(histogramQueryName)},$scope.updateHistogramChart=function(){var margin={top:0,right:10,bottom:0,left:0},height=$scope.histogramHeight-margin.top-margin.bottom,width=$scope.histogramWidth-margin.left-margin.right,formatPercent=d3.format(".0%");d3.select("#date-range-histogram").select("svg").remove();var svg=d3.select("#date-range-histogram").append("svg").attr("width",width+margin.left+margin.right).attr("height",height+margin.top+margin.bottom).append("g").attr("transform","translate("+margin.left+","+margin.top+")"),max=d3.max($scope.histogram,function(d){return d.count}),x=d3.scale.ordinal().rangeBands([$scope.startYear,$scope.endYear]),y=d3.scale.log().domain([0,max]).rangeRound([0,height]);d3.svg.axis().scale(x).orient("bottom"),d3.svg.axis().scale(y).orient("left").tickFormat(formatPercent),x.domain([$scope.startYear,$scope.endYear]),y.domain([0,max]),d3.select("body").append("div").style("background","white").style("border","1px solid #ccc").style("position","absolute").style("z-index","10").style("visibility","hidden").text("a simple tooltip"),svg.selectAll(".bar").data($scope.histogram).enter().append("rect").attr("id",function(d,i){return"histogramBar_"+i}).attr("class","bar").attr("x",function(d,i){return i*(width+margin.left+margin.right)/$scope.histogramMaxBins}).attr("width",(width+margin.left+margin.right)/$scope.histogramMaxBins-1).attr("y",function(d){return height-height*d.count/max}).attr("height",function(d){return height*d.count/max}).on("click",function(d){$scope.endDate=d.end,$scope.startDate=d.start,$scope.submit()}),svg.selectAll(".bar").data($scope.histogram).exit().remove()}}]),angular.module("ngSolr").controller("DocumentSearchResultsController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService","Utils",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService,Utils){function Page(Name,Num){this.name=Name,this.number=Num,this.isCurrent=!1}$scope.documents=[],$scope.documentsPerPage=10,$scope.loading=!1,$scope.page=0,$scope.pages=[],$scope.pagesPerSet=10,$scope.queryName=SolrSearchService.defaultQueryName,$scope.source=void 0,$scope.start=0,$scope.totalPages=1,$scope.totalResults=0,$scope.totalSets=1,$scope.updateLocationOnChange=!0,$scope.userquery="",$scope.handleSetPage=function(Start){var query=SolrSearchService.getQuery($scope.queryName);if(query.setOption("start",Start*$scope.documentsPerPage),$scope.updateLocationOnChange){var hash=query.getHash();$location.path(hash),$window.scrollTo(0,0)}else $scope.loading=!0,SolrSearchService.updateQuery($scope.queryName)},$scope.handleUpdate=function(){$scope.documents=[],$scope.loading=!1;var results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs){$scope.totalResults=results.numFound,$scope.totalPages=Math.ceil($scope.totalResults/$scope.documentsPerPage),$scope.totalSets=Math.ceil($scope.totalPages/$scope.pagesPerSet);for(var i=0;i$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("FacetSelectionController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){var hash,key,query;$scope.items=[],$scope.source=void 0,$scope.target=SolrSearchService.defaultQueryName,$scope.remove=function(Index){query=SolrSearchService.getQuery($scope.target),query.removeFacetByIndex(Index),hash=query.getHash(),$location.path(hash)},$scope.handleUpdate=function(){hash=$routeParams.query||"",(query=SolrSearchService.getQueryFromHash(hash,$scope.source))&&($scope.items=query.getFacets())},$scope.init=function(){for(key in $attrs)$scope.hasOwnProperty(key)&&($scope[key]=$attrs[key]);$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()})},$scope.init()}]),angular.module("ngSolr").controller("FieldFacetController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){function FacetResult(Value,Score){this.value=Value,this.score=Score}var count,f,facet,facet_fields,facets,facet_query,hash,i,key,name,query,results,s,selected_values,value;$scope.exclusive=!0,$scope.facetQuery="facetQuery",$scope.facets=[],$scope.field="",$scope.items=[],$scope.maxItems=7,$scope.queryName=SolrSearchService.defaultQueryName,$scope.selected=!1,$scope.source=void 0,$scope.add=function($event,Index){query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),name=$scope.field,value="("+$scope.items[Index].value.split(" ").join("*")+")",facet=query.createFacet(name,value),-1===$scope.facets.indexOf(facet)&&(query.addFacet(facet),hash=query.getHash(),$location.path(hash)),$event.preventDefault()},$scope.handleUpdate=function(){for($scope.items=[],$scope.selected=!1,selected_values=[],hash=$routeParams.query||void 0,query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),facets=query.getFacets(),i=0;i-1&&($scope.selected=!0,s=f.value.replace(/([\(\[\)\]])+/g,""),selected_values.push(s));if(facet_query=SolrSearchService.getQuery($scope.facetQuery),(results=facet_query.getFacetCounts())&&results.hasOwnProperty("facet_fields"))for(facet_fields=results.facet_fields[$scope.field].length>2*$scope.maxItems?results.facet_fields[$scope.field].splice(0,$scope.maxItems):results.facet_fields[$scope.field],i=0;i=$scope.documentsPerRow||i===results.docs.length-1)&&(count=0,$scope.rows.push(row),row=[])}else $scope.rows=[],$scope.totalResults=0,$scope.totalPages=1,$scope.totalSets=1;$scope.updatePageIndex()},$scope.init=function(){for(var key in $attrs)$scope.hasOwnProperty(key)&&("documentsPerPage"===key||"documentsPerRow"===key||"pagesPerSet"===key?$scope[key]=parseInt($attrs[key]):"true"===$attrs[key]||"false"===$attrs[key]?$scope[key]="true"===$attrs[key]:$scope[key]=$attrs[key]);$scope.$on($scope.queryName,function(){$scope.handleUpdate()}),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.source&&(query.solr=$scope.source),$scope.documentsPerPage=query.getOption("rows")||10,$scope.page=Math.ceil(query.getOption("start")/$scope.documentsPerPage)||0,$scope.userquery=query.getUserQuery(),SolrSearchService.setQuery($scope.queryName,query),SolrSearchService.updateQuery($scope.queryName)}})},$scope.updatePageIndex=function(){$scope.pages=[];var currentSet=Math.floor($scope.page/$scope.pagesPerSet),firstPageInSet=currentSet*$scope.pagesPerSet+1,lastPageInSet=firstPageInSet+$scope.pagesPerSet-1;if(lastPageInSet>$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("MapController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","SelectionSetService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,SelectionSetService,Utils){var i,lat,lng;$scope.categoryToIconMap={default:"img/icon/house.png",corporateBody:"img/icon/corporatebody.png",government:"img/icon/corporatebody.png",organization:"img/icon/corporatebody.png",person:"img/icon/person.png"},$scope.centerOnStart=!0,$scope.clusterManager=null,$scope.clusterOptions={styles:[{height:24,url:"img/map/cluster1.png",width:24},{height:36,url:"img/map/cluster2.png",width:36},{height:48,url:"img/map/cluster3.png",width:48},{height:64,url:"img/map/cluster4.png",width:64},{height:82,url:"img/map/cluster5.png",width:82}]},$scope.clusterResults=!0,$scope.count=5e3,$scope.fields="*",$scope.firstUpdate=!0,$scope.idToMarkerMap={},$scope.infoWindow=new google.maps.InfoWindow,$scope.loading=!1,$scope.map=void 0,$scope.markers=[],$scope.maxFieldLength=120,$scope.queryName="mapQuery",$scope.settings={mapTypeControl:!1,mapTypeId:google.maps.MapTypeId.TERRAIN,navigationControl:!0,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},overviewMapControl:!1,panControl:!0,rotateControl:!0,scaleControl:!0,streetViewControl:!1,zoom:5,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.LARGE}},$scope.showMessages=!0,$scope.showErrors=!0,$scope.source=void 0,$scope.startLatitude=void 0,$scope.startLongitude=void 0,$scope.target="defaultQuery",$scope.createMapQuery=function(){var query=SolrSearchService.createQuery();return query.setOption("fl",$scope.fields),query.setOption("rows",$scope.count),query.addQueryParameter("+location_0_coordinate:*"),query},$scope.getMarker=function(Map,Title,Content,Category,Lat,Lng){var icon=$scope.categoryToIconMap.default;return null!==Category&&Category in $scope.categoryToIconMap&&(icon=$scope.categoryToIconMap[Category]),new google.maps.Marker({icon:icon,map:Map,position:new google.maps.LatLng(Lat,Lng),title:Title,content:Content})},$scope.getMarkerContent=function(Item){var content='
';return Item.dobj_proxy_small&&(content+='
'),content+='",content+='
'+Utils.formatDate(Item.fromDate)+" - "+Utils.formatDate(Item.toDate)+"
",content+='
'+Utils.truncate(Item.abstract,$scope.maxFieldLength)+" ",content+='more
',content+="
"},$scope.handleSelection=function(){$log.info("Map selection updated");var selected=SelectionSetService.getSelectionSet();if(selected){var keys=[];for(var key in selected)selected.hasOwnProperty(key)&&keys.push(key);if(keys.length>0){var id=keys[0],marker=$scope.idToMarkerMap[id];if(marker){var bounds=new google.maps.LatLngBounds;bounds.extend(marker.position),google.maps.event.trigger(marker,"click"),$scope.map.fitBounds(bounds)}}}},$scope.handleUpdate=function(){var bounds=new google.maps.LatLngBounds,results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs)for(i=0;i=$scope.minSearchLength)for(i=0;$scope.hints.length,hintlist.length<$scope.maxHints;i++){token=$scope.hints[i];try{token.indexOf($scope.userquery)>-1&&hintlist.push(token)}catch(err){continue}}return hintlist},$scope.handleSubmit=function(){trimmed=Utils.trim($scope.userquery),""===trimmed&&($scope.userquery="*:*"),query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),query.setNearMatch($scope.nearMatch),query.setUserQuery($scope.userquery),hash=query.getHash(),$scope.redirect?$window.location.href=$scope.redirect+"#"+hash:$location.path(hash)},$scope.handleUpdate=function(){if(query=SolrSearchService.getQuery($scope.searchHintsQuery),(results=query.getFacetCounts())&&results.hasOwnProperty("facet_fields")&&(result=results.facet_fields[$scope.searchHintsField]))for(i=0;i0?newquery.getUserQuery()!==$scope.queries[0].getUserQuery()&&($scope.queries.unshift(newquery),$scope.queries.length>$scope.maxItems&&$scope.queries.pop()):($scope.queries=[],$scope.queries.push(newquery))},$scope.setQuery=function(QueryIndex){QueryIndex>=0&&QueryIndex<=$scope.queries.length&&(query=$scope.queries[QueryIndex])},$scope.init()}]),angular.module("ngSolr").directive("searchhints",function(){return{restrict:"A",link:function(scope,element){element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})}}}).directive("searchbox",function(){return{link:function(scope,element){element.bind("keyup",function(event){13===event.keyCode?""!==scope.userquery&&scope.handleSubmit(scope.userquery):scope.userquery=event.target.value}),element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})},restrict:"A",scope:!1}}).directive("searchbutton",function(){return{link:function(scope,element){element.bind("click",function(){""!==scope.userquery&&scope.handleSubmit(scope.userquery)})},restrict:"A",scope:!1}}),angular.module("ngSolr").directive("searchbox",["$location","$log","$routeParams","$timeout","$window","SolrSearchService","Utils",function($location,$log,$routeParams,$timeout,$window,SolrSearchService,Utils){return{link:function(scope,element,attrs){scope.showHints=!1,scope.hints=[],scope.maxHints=10,scope.messages=["Enter one or more search terms. Press Enter to search.","Key up or down to navigate hints. Press Enter to search.","Press Enter to search."],scope.message=scope.messages[0],scope.minSearchLength=3,scope.nearMatch=!1,scope.placeHolder="Keyword or place name",scope.queryBuffer=[],scope.redirect=void 0,scope.resetOnChange=!1,scope.searchHintsField="hints",scope.searchHintsQuery="hintsQuery",scope.selectedHint=-1,scope.showMessage=!0,scope.source=void 0,scope.timeout=void 0,scope.userQuery="",scope.clearHintSelection=function(){-1!==scope.selectedHint&&(scope.hints[scope.selectedHint].selected=!1)},scope.handleRouteChange=function(){var hash=$routeParams.query||"";if(""!==hash){var query=SolrSearchService.getQueryFromHash(hash,scope.source);scope.userQuery=query.getUserQuery()}else scope.userQuery=hash},scope.handleSubmit=function(){""===Utils.trim(scope.userQuery)&&(scope.userQuery="*:*");var query=SolrSearchService.getQuery(scope.queryName);void 0===query&&(query=SolrSearchService.createQuery(scope.source)),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery);var hash=query.getHash();scope.redirect?$window.location.href=scope.redirect+"#"+hash:$location.path(hash)},scope.handleUpdate=function(){scope.message=scope.messages[1];var query=SolrSearchService.getQuery(scope.searchHintsQuery),results=query.getFacetCounts();if(results&&results.hasOwnProperty("facet_fields")){scope.hints=[];var result=results.facet_fields[scope.searchHintsField];if(result)for(var i=0;i=scope.minSearchLength&&(scope.timeout&&$timeout.cancel(scope.timeout),scope.timeout=$timeout(function(){var query=SolrSearchService.createQuery(scope.source);query.setOption("rows","0"),query.setOption("facet","true"),query.setOption("facet.limit",scope.maxHints),query.setOption("facet.field",scope.searchHintsField),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery),SolrSearchService.setQuery(scope.searchHintsQuery,query),SolrSearchService.updateQuery(scope.searchHintsQuery)},350))},scope.selectHint=function(index){var hint=scope.hints[index];scope.userQuery=hint.title},scope.init()},replace:!1,restrict:"E",scope:{showHints:"&",nearMatch:"@",placeHolder:"@",queryName:"@",searchHintsField:"@",source:"@"},template:'
  • {{hint.title}}
{{message}}
',transclude:!0}}]),angular.module("ngSolr").filter("cleanFacetLabel",function(){return function(text){var val=text.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" ")}}).filter("prettyFacetLabel",function(){return function(facet){var result=facet.field.replace(/([A-Z])/g," $1"),label=result.charAt(0).toUpperCase()+result.slice(1),val=facet.value.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" "),val=val.replace(" TO ",""),val=val.replace("-01-01T00:00:00Z",""),val=val.replace("-12-31T23:59:59Z",""),label+": "+val}}).filter("strip",function(){return function(text){if(void 0===text)return text;var i=text.indexOf(", ");return-1!==i?text.substring(i+2):text}}).filter("substitute",function(){var map={ACT:"Australian Capital Territory",NSW:"New South Wales",NA:"Australia",NT:"Northern Territory",QLD:"Queensland",SA:"South Australia",TAS:"Tasmania",VIC:"Victoria",WA:"Western Australia"};return function(text){return text in map?map[text]:text}}).filter("swapFacetLabels",function(){return function(label){return 0===label.indexOf("fromDate")?label="toDate"+label.substring(8):0===label.indexOf("From Date")?label="To Date"+label.substring(9):0===label.indexOf("toDate")?label="fromDate"+label.substring(6):0===label.indexOf("To Date")?label="From Date"+label.substring(7):0===label.indexOf("Localtype")&&(label="Type"+label.substring(9)),label}}).filter("trim",function(){return function(text){return void 0===text?text:text.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}}).filter("truncate",function(){return function(text,limit){if(void 0===text)return text;if(text.length>limit){var t=text.substring(0,Math.min(limit,text.length)),i=t.lastIndexOf(" ");if(-1!==i)return text.substring(0,i)+" ..."}return text}}),angular.module("ngSolr").factory("SelectionSetService",["$rootScope",function($rootScope){var svc={};return svc.documents={},svc.multipleSelection=!1,Array.prototype.remove=function(from,to){var rest=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,rest)},svc.add=function(Key,Doc){svc.multipleSelection||(svc.documents={}),svc.documents[Key]=Doc,$rootScope.$broadcast("selectionSetUpdate")},svc.clear=function(){svc.documents={},$rootScope.$broadcast("selectionSetUpdate")},svc.clearSilent=function(){svc.documents={}},svc.get=function(Key){return svc.documents[Key]},svc.getSelectionSet=function(){return svc.documents},svc.remove=function(Key){delete svc.documents[Key],$rootScope.$broadcast("selectionSetUpdate")},svc}]),angular.module("ngSolr").factory("SolrSearchService",["$http","$log","$q","$rootScope","$sce",function($http,$log,$q,$rootScope,$sce){var defaultQuery=function(query){return query.setOption("fl","*"),query.setOption("rows",10),query.setOption("wt","json"),query.setUserQuery("*:*"),query};this.setDefaultQuery=function(Query){defaultQuery=Query};var svc={};return svc.defaultQueryName="defaultQuery",svc.queries={},svc.createQuery=function(Core){var query=new SolrQuery(Core);return defaultQuery(query)},svc.getQuery=function(Name){try{return svc.queries[Name]}catch(Err){return void $log.debug("No query named "+Name+" available")}},svc.getQueryComponents=function(Query){for(var parts=[];Query.length>0;){Query=Query.replace(/^\s\s*/,"");var x=Query.indexOf(" +"),y=Query.indexOf(" -");if(-1===x&&-1===y)return parts.push(Query),parts;x>-1&&(-1===y||x-1&&(parts.push(Query.substring(0,y)),Query=Query.substring(y))}return parts},svc.getQueryFromHash=function(Hash,CoreUrl){for(var query=svc.createQuery(CoreUrl),hash_elements=decodeURI(Hash).split("&"),i=0;i "+error);var response={};response.numFound=0,response.start=0,response.docs=[],query.setErrorMessage(msg),query.setFacetCounts([]),query.setHighlighting({}),query.setResponse(response),query.setResponseHeader({}),$rootScope.$broadcast(QueryName)})},svc}]),angular.module("ngSolr").factory("Utils",[function(){var d,day,i,key,month,months,p,parts,year,svc={};return svc.applyAttributes=function(attrs,scope){for(key in attrs)scope.hasOwnProperty(key)&&("true"===attrs[key]||"false"===attrs[key]?scope[key]="true"===attrs[key]:scope[key]=attrs[key])},svc.arraysAreEqual=function(A,B){return A.join("")===B.join("")},svc.convertMonthIndexToName=function(Index){return months={1:"January",2:"February",3:"March",4:"April",5:"May",6:"June",7:"July",8:"August",9:"September","01":"January","02":"February","03":"March","04":"April","05":"May","06":"June","07":"July","08":"August","09":"September",10:"October",11:"November",12:"December"},months[Index]},svc.formatDate=function(DateField){return DateField&&(i=DateField.indexOf("T"))?(d=DateField.substring(0,i),parts=d.split("-"),year=parts[0],month=svc.convertMonthIndexToName(parts[1]),day=svc.trimLeadingZero(parts[2]),month+", "+year):""},svc.objectsAreEqual=function(A,B){if(A===B)return!0;if(!(A instanceof Object&&B instanceof Object))return!1;if(A.constructor!==B.constructor)return!1;for(p in A)if(A.hasOwnProperty(p)){if(!B.hasOwnProperty(p))return!1;if(A[p]!==B[p]){if("object"!=typeof A[p])return!1;if(!svc.objectsAreEqual(A[p],B[p]))return!1}}for(p in B)if(B.hasOwnProperty(p)&&!A.hasOwnProperty(p))return!1;return!0},svc.startsWith=function(s1,s2){return!(!s1||!s2)&&s1.slice(0,s2.length)===s2},svc.trim=function(Val){return Val.replace(/^\s\s*/,"").replace(/\s\s*$/,"")},svc.trimLeadingZero=function(Val){return Val&&"0"===Val[0]?Val.substring(1):Val},svc.truncate=function(Field,Length){return Field&&Length&&Field.length>Length&&(Field=svc.trim(Field),Field=Field.substring(0,Math.min(Length,Field.length)),-1!==(i=Field.lastIndexOf(" "))&&(Field=Field.substring(0,i)+" ...")),Field},svc}]); //# sourceMappingURL=ngsolr.min.js.map \ No newline at end of file diff --git a/dist/ngsolr.min.js.map b/dist/ngsolr.min.js.map index a9b4a53..55d489b 100644 --- a/dist/ngsolr.min.js.map +++ b/dist/ngsolr.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["ngsolr.js"],"names":["SolrFacet","Field","Value","self","this","field","value","options","getOption","Name","getUrlFragment","query","option","hasOwnProperty","setOption","SolrQuery","Url","error","undefined","facets","facet_counts","highlighting","nearMatch","queryParameters","response","responseHeader","solr","addFacet","Facet","i","length","push","addQueryParameter","Parameter","createFacet","getErrorMessage","getFacet","getFacetCounts","getFacets","getHash","getQuery","facet","key2","val","getSolrQueryUrl","encodeURI","getUserQuery","getUserQueryParameters","hasFacet","removeFacet","removeFacetByIndex","Index","splice","removeOption","setErrorMessage","Msg","setFacetCounts","FacetCounts","setHighlighting","Highlighting","setNearMatch","fq","setQueryParameters","Parameters","setResponse","Response","setResponseHeader","Header","setUserQuery","Query","app","angular","module","constant","api","env","defaultQuery","f","config","$routeProvider","when","event","otherwise","controller","$scope","$attrs","$location","$route","$routeParams","SolrSearchService","Utils","date","dateRange","endDateQuery","endDateResults","end_value","end_year","hash","item","start_value","start_year","startDateQuery","startDateResults","yearEnd","yearStart","_endDate","_startDate","endDate","endDateField","endDateQueryName","source","startDate","startDateField","startDateQueryName","updateOnInit","userquery","getDateRangeConstraint","StartDateField","StartDate","EndDateField","EndDate","getFirstDateRecord","Items","FieldName","docs","indexOf","substring","handleEndDateQueryUpdate","getResponse","handleStartDateQueryUpdate","handleUpdate","getQueryFromHash","createQuery","replace","updateFlag","setQuery","updateQuery","init","applyAttributes","$on","submit","path","$log","bin","count","histogram","histogramHeight","histogramMaxBins","histogramQueryName","histogramWidth","target","defaultQueryName","updateHistogram","updateOnTargetChange","handleHistogramQueryUpdate","Event","name","numFound","updateHistogramChart","handleTargetQueryUpdate","setQueryParameter","info","binRange","end","histogramQuery","range","start","Math","ceil","Number","label","margin","top","right","bottom","left","height","width","formatPercent","d3","format","select","remove","svg","append","attr","max","d","x","scale","ordinal","rangeBands","startYear","endYear","y","log","domain","rangeRound","axis","orient","tickFormat","style","text","selectAll","data","enter","on","exit","$window","Page","Num","number","isCurrent","documents","documentsPerPage","loading","page","pages","pagesPerSet","queryName","totalPages","totalResults","totalSets","updateLocationOnChange","handleSetPage","Start","scrollTo","results","fromDate","formatDate","toDate","updatePageIndex","key","parseInt","currentSet","floor","firstPageInSet","lastPageInSet","previousSet","prevPage","nextSet","nextPage","items","FacetResult","Score","score","facet_fields","facet_query","s","selected_values","exclusive","facetQuery","maxItems","selected","add","$event","split","join","preventDefault","documentsPerRow","fields","rows","startPage","row","SelectionSetService","lat","lng","categoryToIconMap","default","corporateBody","government","organization","person","centerOnStart","clusterManager","clusterOptions","styles","url","clusterResults","firstUpdate","idToMarkerMap","infoWindow","google","maps","InfoWindow","map","markers","maxFieldLength","settings","mapTypeControl","mapTypeId","MapTypeId","TERRAIN","navigationControl","navigationControlOptions","NavigationControlStyle","SMALL","overviewMapControl","panControl","rotateControl","scaleControl","streetViewControl","zoom","zoomControl","zoomControlOptions","ZoomControlStyle","LARGE","showMessages","showErrors","startLatitude","startLongitude","createMapQuery","getMarker","Map","Title","Content","Category","Lat","Lng","icon","marker","Marker","position","LatLng","title","content","getMarkerContent","Item","dobj_proxy_small","presentation_url","truncate","handleSelection","getSelectionSet","keys","id","bounds","LatLngBounds","extend","trigger","fitBounds","location","location_0_coordinate","location_1_coordinate","type","oms","addMarker","document","getElementById","OverlappingMarkerSpiderfier","addListener","close","setContent","open","point","setCenter","setInfoWindow","singleSelection","clearSelection","Id","clear","err","message","clearSilent","hintlist","result","token","trimmed","hints","maxHints","minSearchLength","redirect","resetOnChange","searchHintsField","searchHintsQuery","getHintList","getHints","handleSubmit","trim","href","toLowerCase","newquery","queries","unshift","pop","QueryIndex","directive","restrict","link","scope","element","autocomplete","delay","minLength","request","$","ui","filter","term","slice","bind","keyCode","$timeout","attrs","KEY_ENTER","KEY_ESCAPE","KEY_ARROW_UP","KEY_ARROW_DOWN","showHints","messages","placeHolder","queryBuffer","selectedHint","showMessage","timeout","userQuery","clearHintSelection","hint","handleRouteChange","highlightHint","index","$apply","resetHintSelection","children","form_div","query_input","querySelector","hints_div","hints_list","hints_message","onfocus","onblur","onkeyup","offsetWidth","setAttribute","selectHint","cancel","template","transclude","charAt","toUpperCase","ACT","NSW","NA","NT","QLD","SA","TAS","VIC","WA","limit","t","min","lastIndexOf","factory","$rootScope","svc","multipleSelection","Array","prototype","from","to","rest","apply","Key","Doc","$broadcast","get","$http","$q","setDefaultQuery","Core","Err","debug","getQueryComponents","parts","Hash","CoreUrl","hash_elements","decodeURI","eparts","startsWith","params","shift","j","p","DefaultQuery","s1","s2","updateAllQueries","updateQueriesInOrder","Queries","q","then","QueryName","jsonp","msg","day","month","months","year","arraysAreEqual","A","B","convertMonthIndexToName","1","2","3","4","5","6","7","8","9","01","02","03","04","05","06","07","08","09","10","11","12","DateField","trimLeadingZero","objectsAreEqual","Object","constructor","Val","Length"],"mappings":"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","file":"ngsolr.min.js"} \ No newline at end of file +{"version":3,"sources":["ngsolr.js"],"names":["SolrFacet","Field","Value","self","this","field","value","options","getOption","Name","getUrlFragment","query","option","hasOwnProperty","setOption","SolrQuery","Url","error","undefined","facets","facet_counts","highlighting","nearMatch","queryParameters","response","responseHeader","solr","addFacet","Facet","i","length","push","addQueryParameter","Parameter","createFacet","getErrorMessage","getFacet","getFacetCounts","getFacets","getHash","getQuery","key2","val","getSolrQueryUrl","encodeURI","getUserQuery","getUserQueryParameters","hasFacet","removeFacet","removeFacetByIndex","Index","splice","removeOption","setErrorMessage","Msg","setFacetCounts","FacetCounts","setHighlighting","Highlighting","setNearMatch","fq","setQueryParameters","Parameters","setResponse","Response","setResponseHeader","Header","setUserQuery","Query","app","angular","module","constant","api","env","defaultQuery","f","config","$routeProvider","when","event","otherwise","controller","$scope","$attrs","$location","$route","$routeParams","SolrSearchService","Utils","date","dateRange","endDateQuery","endDateResults","end_value","end_year","hash","item","start_value","start_year","startDateQuery","startDateResults","yearEnd","yearStart","_endDate","_startDate","endDate","endDateField","endDateQueryName","source","startDate","startDateField","startDateQueryName","updateOnInit","userquery","getDateRangeConstraint","StartDateField","StartDate","EndDateField","EndDate","getFirstDateRecord","Items","FieldName","docs","indexOf","substring","handleEndDateQueryUpdate","getResponse","handleStartDateQueryUpdate","handleUpdate","getQueryFromHash","createQuery","replace","updateFlag","setQuery","updateQuery","init","applyAttributes","$on","submit","path","$log","bin","count","histogram","histogramHeight","histogramMaxBins","histogramQueryName","histogramWidth","target","defaultQueryName","updateHistogram","updateOnTargetChange","handleHistogramQueryUpdate","Event","name","numFound","updateHistogramChart","handleTargetQueryUpdate","setQueryParameter","info","binRange","end","histogramQuery","range","start","Math","ceil","Number","label","margin","top","right","bottom","left","height","width","formatPercent","d3","format","select","remove","svg","append","attr","max","d","x","scale","ordinal","rangeBands","startYear","endYear","y","log","domain","rangeRound","axis","orient","tickFormat","style","text","selectAll","data","enter","on","exit","$window","Page","Num","number","isCurrent","documents","documentsPerPage","loading","page","pages","pagesPerSet","queryName","totalPages","totalResults","totalSets","updateLocationOnChange","handleSetPage","Start","scrollTo","results","fromDate","formatDate","toDate","updatePageIndex","key","parseInt","currentSet","floor","firstPageInSet","lastPageInSet","previousSet","prevPage","nextSet","nextPage","items","FacetResult","Score","score","facet","facet_fields","facet_query","s","selected_values","exclusive","facetQuery","maxItems","selected","add","$event","split","join","preventDefault","documentsPerRow","fields","rows","startPage","row","SelectionSetService","lat","lng","categoryToIconMap","default","corporateBody","government","organization","person","centerOnStart","clusterManager","clusterOptions","styles","url","clusterResults","firstUpdate","idToMarkerMap","infoWindow","google","maps","InfoWindow","map","markers","maxFieldLength","settings","mapTypeControl","mapTypeId","MapTypeId","TERRAIN","navigationControl","navigationControlOptions","NavigationControlStyle","SMALL","overviewMapControl","panControl","rotateControl","scaleControl","streetViewControl","zoom","zoomControl","zoomControlOptions","ZoomControlStyle","LARGE","showMessages","showErrors","startLatitude","startLongitude","createMapQuery","getMarker","Map","Title","Content","Category","Lat","Lng","icon","Marker","position","LatLng","title","content","getMarkerContent","Item","dobj_proxy_small","presentation_url","truncate","abstract","handleSelection","getSelectionSet","keys","id","marker","bounds","LatLngBounds","extend","trigger","fitBounds","location","location_0_coordinate","location_1_coordinate","type","oms","addMarker","document","getElementById","OverlappingMarkerSpiderfier","addListener","close","setContent","open","point","setCenter","setInfoWindow","singleSelection","clearSelection","Id","clear","err","message","clearSilent","hintlist","result","token","trimmed","hints","maxHints","minSearchLength","redirect","resetOnChange","searchHintsField","searchHintsQuery","getHintList","getHints","handleSubmit","trim","href","toLowerCase","newquery","queries","unshift","pop","QueryIndex","directive","restrict","link","scope","element","autocomplete","delay","minLength","request","$","ui","filter","term","slice","bind","keyCode","$timeout","attrs","showHints","messages","placeHolder","queryBuffer","selectedHint","showMessage","timeout","userQuery","clearHintSelection","handleRouteChange","hint","highlightHint","index","$apply","resetHintSelection","children","form_div","query_input","querySelector","hints_div","hints_list","hints_message","onfocus","onblur","onkeyup","offsetWidth","setAttribute","selectHint","cancel","template","transclude","charAt","toUpperCase","ACT","NSW","NA","NT","QLD","SA","TAS","VIC","WA","limit","t","min","lastIndexOf","factory","$rootScope","svc","multipleSelection","Array","prototype","from","to","rest","apply","Key","Doc","$broadcast","get","$http","$q","$sce","setDefaultQuery","Core","Err","debug","getQueryComponents","parts","Hash","CoreUrl","hash_elements","decodeURI","eparts","startsWith","params","shift","j","p","DefaultQuery","s1","s2","updateAllQueries","updateQueriesInOrder","Queries","q","then","QueryName","jsonp","trustAsResourceUrl","jsonpCallbackParam","msg","day","month","months","year","arraysAreEqual","A","B","convertMonthIndexToName","1","2","3","4","5","6","7","8","9","01","02","03","04","05","06","07","08","09","10","11","12","DateField","trimLeadingZero","objectsAreEqual","Object","constructor","Val","Length"],"mappings":"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","file":"ngsolr.min.js"} \ No newline at end of file diff --git a/src/ngsolr/app.js b/src/ngsolr/app.js index 72150ff..aa9b306 100644 --- a/src/ngsolr/app.js +++ b/src/ngsolr/app.js @@ -22,7 +22,6 @@ app.constant('Solr', { var f = query.createFacet('location_0_coordinate', '*'); query.addFacet(f); query.setOption('fl', '*'); - query.setOption('json.wrf', 'JSON_CALLBACK'); query.setOption('rows', '5000'); query.setOption('sort', 'title+asc'); query.setOption('wt', 'json'); diff --git a/src/ngsolr/services/solr.js b/src/ngsolr/services/solr.js index 5b8d40b..6ceeee8 100644 --- a/src/ngsolr/services/solr.js +++ b/src/ngsolr/services/solr.js @@ -400,13 +400,12 @@ function SolrQuery(Url) { */ angular .module('ngSolr') - .factory('SolrSearchService', ['$http','$log','$q','$rootScope', - function ($http, $log, $q, $rootScope) { + .factory('SolrSearchService', ['$http','$log','$q','$rootScope', '$sce', + function ($http, $log, $q, $rootScope, $sce) { // the default search query var defaultQuery = function(query) { query.setOption('fl', '*'); - query.setOption('json.wrf', 'JSON_CALLBACK'); query.setOption('rows', 10); query.setOption('wt', 'json'); query.setUserQuery('*:*'); @@ -618,7 +617,7 @@ angular var url = query.getSolrQueryUrl(); $log.debug('GET ' + QueryName + ': ' + url); // execute the query - return $http.jsonp(url).then( + return $http.jsonp($sce.trustAsResourceUrl(url), {jsonpCallbackParam: 'json.wrf'}).then( // success function (result) { // set query result values @@ -634,9 +633,9 @@ angular $rootScope.$broadcast(QueryName); }, // error - function () { + function (error) { var msg = 'Could not get search results from server'; - $log.error(msg); + $log.error(msg +' -> ' + error); // set query result values var response = {}; response.numFound = 0; @@ -657,4 +656,3 @@ angular return svc; }]); - From c1a06335dbf5c3812bf31699969fcdd2cac5d55d Mon Sep 17 00:00:00 2001 From: Xavier Sumba Date: Mon, 12 Mar 2018 16:50:01 -0500 Subject: [PATCH 3/6] work around fields values --- dist/ngsolr.js | 1 + dist/ngsolr.min.js | 4 ++-- dist/ngsolr.min.js.map | 2 +- src/ngsolr/controllers/FieldFacetController.js | 1 + 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/dist/ngsolr.js b/dist/ngsolr.js index 8a70201..77e5bb7 100644 --- a/dist/ngsolr.js +++ b/dist/ngsolr.js @@ -1035,6 +1035,7 @@ angular if (f.field.indexOf($scope.field) > -1) { $scope.selected = true; s = f.value.replace(/([\(\[\)\]])+/g,''); + s = s.replace(/\*/g, ' '); // Replace stars added when searching selected_values.push(s); // break; } diff --git a/dist/ngsolr.min.js b/dist/ngsolr.min.js index a74912f..2544a65 100644 --- a/dist/ngsolr.min.js +++ b/dist/ngsolr.min.js @@ -1,5 +1,5 @@ -/*! ngSolr - v0.6.1 - 2018-03-09 */ +/*! ngSolr - v0.6.1 - 2018-03-12 */ -"use strict";function SolrFacet(Field,Value){var self=this;self.field=Field,self.value=Value,self.options={},self.getOption=function(Name){return self.options[Name]},self.getUrlFragment=function(){var query="";query+="&fq="+self.field+":"+self.value;for(var option in self.options)self.options.hasOwnProperty(option)&&(query+="&"+option+"="+self.options[option]);return query},self.setOption=function(Name,Value){self.options[Name]=Value}}function SolrQuery(Url){var self=this;self.error=void 0,self.facets=[],self.facet_counts={},self.highlighting={},self.options={},self.nearMatch=!1,self.query="*:*",self.queryParameters=[],self.response={},self.responseHeader={},self.solr=Url,self.addFacet=function(Facet){for(var i=0;i0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){(endDateResults=SolrSearchService.getResponse($scope.endDateQueryName))&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField))},$scope.handleStartDateQueryUpdate=function(){(startDateResults=SolrSearchService.getResponse($scope.startDateQueryName))&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField))},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),f=query.getFacet($scope.endDateField),f?(start_year=f.value.replace("[","").replace("-01-01T00:00:00Z TO *]",""),$scope._startDate=start_year,$scope.startDate=start_year,$scope.updateFlag+=1):(startDateQuery=SolrSearchService.createQuery($scope.source),startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery),SolrSearchService.updateQuery($scope.startDateQueryName)),f=query.getFacet($scope.startDateField),f?(end_year=f.value.replace("[* TO ","").replace("-12-31T23:59:59Z]",""),$scope._endDate=end_year,$scope.endDate=end_year,$scope.updateFlag+=1):(endDateQuery=SolrSearchService.createQuery($scope.source),endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),SolrSearchService.updateQuery($scope.endDateQueryName))},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate>$scope.endDate)return $scope.endDate=$scope._endDate,void($scope.startDate=$scope._startDate);hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),query.removeFacet($scope.startDateField),query.removeFacet($scope.endDateField),start_value="[* TO "+$scope.endDate+"-12-31T23:59:59Z]",end_value="["+$scope.startDate+"-01-01T00:00:00Z TO *]",f=query.createFacet($scope.startDateField,start_value),query.addFacet(f),f=query.createFacet($scope.endDateField,end_value),query.addFacet(f),hash=query.getHash(),$location.path(hash)},$scope.init()}]),angular.module("ngSolr").controller("DateFacetHistogramController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,Utils){var bin,count,date,endDateResults,i,item,query,startDateResults,userquery;$scope._endDate=0,$scope._startDate=0,$scope.endDate=0,$scope.endDateField="toDate",$scope.endDateQueryName="endDateQuery",$scope.histogram=[],$scope.histogramHeight=100,$scope.histogramMaxBins=10,$scope.histogramQueryName="histogramQuery",$scope.histogramWidth=240,$scope.source=void 0,$scope.startDate=0,$scope.startDateField="fromDate",$scope.startDateQueryName="startDateQuery",$scope.target=SolrSearchService.defaultQueryName,$scope.updateFlag=0,$scope.updateHistogram=!0,$scope.updateOnInit=!1,$scope.updateOnTargetChange=!0,$scope.getFirstDateRecord=function(Items,FieldName){return Items&&Items.docs&&Items.docs.length>0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleHistogramQueryUpdate=function(Event){i=Event.name.indexOf("_"),bin=Event.name.substring(i+1,Event.name.length),query=SolrSearchService.getQuery(Event.name),count=query.response.numFound,$scope.histogram[bin].count=count,$scope.updateHistogramChart()},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleTargetQueryUpdate=function(){query=SolrSearchService.getQuery($scope.target),userquery=query.getUserQuery(),query=SolrSearchService.getQuery($scope.startDateQueryName),query.setUserQuery(userquery),query=SolrSearchService.getQuery($scope.endDateQueryName),query.setUserQuery(userquery),$scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName)},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.userquery=query.getUserQuery()}var startDateQuery=SolrSearchService.createQuery();startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery);var endDateQuery=SolrSearchService.createQuery();endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),$scope.updateOnInit&&($scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName))}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate<=$scope.endDate){var query=SolrSearchService.getQuery($scope.target);if(query){var dateRange=$scope.getDateRangeConstraint($scope.startDateField,$scope.startDate,$scope.endDateField,$scope.endDate);query.setQueryParameter("dateRange",dateRange),SolrSearchService.updateQuery($scope.target)}}else $scope.endDate=$scope._endDate,$scope.startDate=$scope._startDate,$log.info("WARNING: start date is greater than end date")},$scope.updateHistogram=function(){var bin,binRange,dateRange,end,histogramQuery,histogramQueryName,i,range,start;for($scope.histogram=[],range=Math.ceil($scope.endDate-$scope.startDate),binRange=Math.ceil(range/$scope.histogramMaxBins),i=0;i<$scope.histogramMaxBins;i++)start=Number($scope.startDate)+binRange*i,end=start+binRange,bin={},bin.start=start,bin.end=end>$scope.endDate?$scope.endDate:end,bin.label=start+" to "+bin.end,bin.count=10*i+5,$scope.histogram.push(bin);for(i=0;i<$scope.histogram.length;i++)bin=$scope.histogram[i],histogramQuery=SolrSearchService.createQuery(),histogramQueryName=$scope.histogramQueryName+"_"+i,dateRange=$scope.getDateRangeConstraint($scope.startDateField,bin.start,$scope.endDateField,bin.end),histogramQuery.setOption("rows","0"),histogramQuery.setQueryParameter("dateRange",dateRange),SolrSearchService.setQuery(histogramQueryName,histogramQuery),$scope.$on(histogramQueryName,function(histogramQueryName){$scope.handleHistogramQueryUpdate(histogramQueryName)}),SolrSearchService.updateQuery(histogramQueryName)},$scope.updateHistogramChart=function(){var margin={top:0,right:10,bottom:0,left:0},height=$scope.histogramHeight-margin.top-margin.bottom,width=$scope.histogramWidth-margin.left-margin.right,formatPercent=d3.format(".0%");d3.select("#date-range-histogram").select("svg").remove();var svg=d3.select("#date-range-histogram").append("svg").attr("width",width+margin.left+margin.right).attr("height",height+margin.top+margin.bottom).append("g").attr("transform","translate("+margin.left+","+margin.top+")"),max=d3.max($scope.histogram,function(d){return d.count}),x=d3.scale.ordinal().rangeBands([$scope.startYear,$scope.endYear]),y=d3.scale.log().domain([0,max]).rangeRound([0,height]);d3.svg.axis().scale(x).orient("bottom"),d3.svg.axis().scale(y).orient("left").tickFormat(formatPercent),x.domain([$scope.startYear,$scope.endYear]),y.domain([0,max]),d3.select("body").append("div").style("background","white").style("border","1px solid #ccc").style("position","absolute").style("z-index","10").style("visibility","hidden").text("a simple tooltip"),svg.selectAll(".bar").data($scope.histogram).enter().append("rect").attr("id",function(d,i){return"histogramBar_"+i}).attr("class","bar").attr("x",function(d,i){return i*(width+margin.left+margin.right)/$scope.histogramMaxBins}).attr("width",(width+margin.left+margin.right)/$scope.histogramMaxBins-1).attr("y",function(d){return height-height*d.count/max}).attr("height",function(d){return height*d.count/max}).on("click",function(d){$scope.endDate=d.end,$scope.startDate=d.start,$scope.submit()}),svg.selectAll(".bar").data($scope.histogram).exit().remove()}}]),angular.module("ngSolr").controller("DocumentSearchResultsController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService","Utils",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService,Utils){function Page(Name,Num){this.name=Name,this.number=Num,this.isCurrent=!1}$scope.documents=[],$scope.documentsPerPage=10,$scope.loading=!1,$scope.page=0,$scope.pages=[],$scope.pagesPerSet=10,$scope.queryName=SolrSearchService.defaultQueryName,$scope.source=void 0,$scope.start=0,$scope.totalPages=1,$scope.totalResults=0,$scope.totalSets=1,$scope.updateLocationOnChange=!0,$scope.userquery="",$scope.handleSetPage=function(Start){var query=SolrSearchService.getQuery($scope.queryName);if(query.setOption("start",Start*$scope.documentsPerPage),$scope.updateLocationOnChange){var hash=query.getHash();$location.path(hash),$window.scrollTo(0,0)}else $scope.loading=!0,SolrSearchService.updateQuery($scope.queryName)},$scope.handleUpdate=function(){$scope.documents=[],$scope.loading=!1;var results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs){$scope.totalResults=results.numFound,$scope.totalPages=Math.ceil($scope.totalResults/$scope.documentsPerPage),$scope.totalSets=Math.ceil($scope.totalPages/$scope.pagesPerSet);for(var i=0;i$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("FacetSelectionController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){var hash,key,query;$scope.items=[],$scope.source=void 0,$scope.target=SolrSearchService.defaultQueryName,$scope.remove=function(Index){query=SolrSearchService.getQuery($scope.target),query.removeFacetByIndex(Index),hash=query.getHash(),$location.path(hash)},$scope.handleUpdate=function(){hash=$routeParams.query||"",(query=SolrSearchService.getQueryFromHash(hash,$scope.source))&&($scope.items=query.getFacets())},$scope.init=function(){for(key in $attrs)$scope.hasOwnProperty(key)&&($scope[key]=$attrs[key]);$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()})},$scope.init()}]),angular.module("ngSolr").controller("FieldFacetController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){function FacetResult(Value,Score){this.value=Value,this.score=Score}var count,f,facet,facet_fields,facets,facet_query,hash,i,key,name,query,results,s,selected_values,value;$scope.exclusive=!0,$scope.facetQuery="facetQuery",$scope.facets=[],$scope.field="",$scope.items=[],$scope.maxItems=7,$scope.queryName=SolrSearchService.defaultQueryName,$scope.selected=!1,$scope.source=void 0,$scope.add=function($event,Index){query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),name=$scope.field,value="("+$scope.items[Index].value.split(" ").join("*")+")",facet=query.createFacet(name,value),-1===$scope.facets.indexOf(facet)&&(query.addFacet(facet),hash=query.getHash(),$location.path(hash)),$event.preventDefault()},$scope.handleUpdate=function(){for($scope.items=[],$scope.selected=!1,selected_values=[],hash=$routeParams.query||void 0,query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),facets=query.getFacets(),i=0;i-1&&($scope.selected=!0,s=f.value.replace(/([\(\[\)\]])+/g,""),selected_values.push(s));if(facet_query=SolrSearchService.getQuery($scope.facetQuery),(results=facet_query.getFacetCounts())&&results.hasOwnProperty("facet_fields"))for(facet_fields=results.facet_fields[$scope.field].length>2*$scope.maxItems?results.facet_fields[$scope.field].splice(0,$scope.maxItems):results.facet_fields[$scope.field],i=0;i=$scope.documentsPerRow||i===results.docs.length-1)&&(count=0,$scope.rows.push(row),row=[])}else $scope.rows=[],$scope.totalResults=0,$scope.totalPages=1,$scope.totalSets=1;$scope.updatePageIndex()},$scope.init=function(){for(var key in $attrs)$scope.hasOwnProperty(key)&&("documentsPerPage"===key||"documentsPerRow"===key||"pagesPerSet"===key?$scope[key]=parseInt($attrs[key]):"true"===$attrs[key]||"false"===$attrs[key]?$scope[key]="true"===$attrs[key]:$scope[key]=$attrs[key]);$scope.$on($scope.queryName,function(){$scope.handleUpdate()}),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.source&&(query.solr=$scope.source),$scope.documentsPerPage=query.getOption("rows")||10,$scope.page=Math.ceil(query.getOption("start")/$scope.documentsPerPage)||0,$scope.userquery=query.getUserQuery(),SolrSearchService.setQuery($scope.queryName,query),SolrSearchService.updateQuery($scope.queryName)}})},$scope.updatePageIndex=function(){$scope.pages=[];var currentSet=Math.floor($scope.page/$scope.pagesPerSet),firstPageInSet=currentSet*$scope.pagesPerSet+1,lastPageInSet=firstPageInSet+$scope.pagesPerSet-1;if(lastPageInSet>$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("MapController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","SelectionSetService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,SelectionSetService,Utils){var i,lat,lng;$scope.categoryToIconMap={default:"img/icon/house.png",corporateBody:"img/icon/corporatebody.png",government:"img/icon/corporatebody.png",organization:"img/icon/corporatebody.png",person:"img/icon/person.png"},$scope.centerOnStart=!0,$scope.clusterManager=null,$scope.clusterOptions={styles:[{height:24,url:"img/map/cluster1.png",width:24},{height:36,url:"img/map/cluster2.png",width:36},{height:48,url:"img/map/cluster3.png",width:48},{height:64,url:"img/map/cluster4.png",width:64},{height:82,url:"img/map/cluster5.png",width:82}]},$scope.clusterResults=!0,$scope.count=5e3,$scope.fields="*",$scope.firstUpdate=!0,$scope.idToMarkerMap={},$scope.infoWindow=new google.maps.InfoWindow,$scope.loading=!1,$scope.map=void 0,$scope.markers=[],$scope.maxFieldLength=120,$scope.queryName="mapQuery",$scope.settings={mapTypeControl:!1,mapTypeId:google.maps.MapTypeId.TERRAIN,navigationControl:!0,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},overviewMapControl:!1,panControl:!0,rotateControl:!0,scaleControl:!0,streetViewControl:!1,zoom:5,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.LARGE}},$scope.showMessages=!0,$scope.showErrors=!0,$scope.source=void 0,$scope.startLatitude=void 0,$scope.startLongitude=void 0,$scope.target="defaultQuery",$scope.createMapQuery=function(){var query=SolrSearchService.createQuery();return query.setOption("fl",$scope.fields),query.setOption("rows",$scope.count),query.addQueryParameter("+location_0_coordinate:*"),query},$scope.getMarker=function(Map,Title,Content,Category,Lat,Lng){var icon=$scope.categoryToIconMap.default;return null!==Category&&Category in $scope.categoryToIconMap&&(icon=$scope.categoryToIconMap[Category]),new google.maps.Marker({icon:icon,map:Map,position:new google.maps.LatLng(Lat,Lng),title:Title,content:Content})},$scope.getMarkerContent=function(Item){var content='
';return Item.dobj_proxy_small&&(content+='
'),content+='",content+='
'+Utils.formatDate(Item.fromDate)+" - "+Utils.formatDate(Item.toDate)+"
",content+='
'+Utils.truncate(Item.abstract,$scope.maxFieldLength)+" ",content+='more
',content+="
"},$scope.handleSelection=function(){$log.info("Map selection updated");var selected=SelectionSetService.getSelectionSet();if(selected){var keys=[];for(var key in selected)selected.hasOwnProperty(key)&&keys.push(key);if(keys.length>0){var id=keys[0],marker=$scope.idToMarkerMap[id];if(marker){var bounds=new google.maps.LatLngBounds;bounds.extend(marker.position),google.maps.event.trigger(marker,"click"),$scope.map.fitBounds(bounds)}}}},$scope.handleUpdate=function(){var bounds=new google.maps.LatLngBounds,results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs)for(i=0;i=$scope.minSearchLength)for(i=0;$scope.hints.length,hintlist.length<$scope.maxHints;i++){token=$scope.hints[i];try{token.indexOf($scope.userquery)>-1&&hintlist.push(token)}catch(err){continue}}return hintlist},$scope.handleSubmit=function(){trimmed=Utils.trim($scope.userquery),""===trimmed&&($scope.userquery="*:*"),query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),query.setNearMatch($scope.nearMatch),query.setUserQuery($scope.userquery),hash=query.getHash(),$scope.redirect?$window.location.href=$scope.redirect+"#"+hash:$location.path(hash)},$scope.handleUpdate=function(){if(query=SolrSearchService.getQuery($scope.searchHintsQuery),(results=query.getFacetCounts())&&results.hasOwnProperty("facet_fields")&&(result=results.facet_fields[$scope.searchHintsField]))for(i=0;i0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){(endDateResults=SolrSearchService.getResponse($scope.endDateQueryName))&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField))},$scope.handleStartDateQueryUpdate=function(){(startDateResults=SolrSearchService.getResponse($scope.startDateQueryName))&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField))},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),f=query.getFacet($scope.endDateField),f?(start_year=f.value.replace("[","").replace("-01-01T00:00:00Z TO *]",""),$scope._startDate=start_year,$scope.startDate=start_year,$scope.updateFlag+=1):(startDateQuery=SolrSearchService.createQuery($scope.source),startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery),SolrSearchService.updateQuery($scope.startDateQueryName)),f=query.getFacet($scope.startDateField),f?(end_year=f.value.replace("[* TO ","").replace("-12-31T23:59:59Z]",""),$scope._endDate=end_year,$scope.endDate=end_year,$scope.updateFlag+=1):(endDateQuery=SolrSearchService.createQuery($scope.source),endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),SolrSearchService.updateQuery($scope.endDateQueryName))},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate>$scope.endDate)return $scope.endDate=$scope._endDate,void($scope.startDate=$scope._startDate);hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),query.removeFacet($scope.startDateField),query.removeFacet($scope.endDateField),start_value="[* TO "+$scope.endDate+"-12-31T23:59:59Z]",end_value="["+$scope.startDate+"-01-01T00:00:00Z TO *]",f=query.createFacet($scope.startDateField,start_value),query.addFacet(f),f=query.createFacet($scope.endDateField,end_value),query.addFacet(f),hash=query.getHash(),$location.path(hash)},$scope.init()}]),angular.module("ngSolr").controller("DateFacetHistogramController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,Utils){var bin,count,date,endDateResults,i,item,query,startDateResults,userquery;$scope._endDate=0,$scope._startDate=0,$scope.endDate=0,$scope.endDateField="toDate",$scope.endDateQueryName="endDateQuery",$scope.histogram=[],$scope.histogramHeight=100,$scope.histogramMaxBins=10,$scope.histogramQueryName="histogramQuery",$scope.histogramWidth=240,$scope.source=void 0,$scope.startDate=0,$scope.startDateField="fromDate",$scope.startDateQueryName="startDateQuery",$scope.target=SolrSearchService.defaultQueryName,$scope.updateFlag=0,$scope.updateHistogram=!0,$scope.updateOnInit=!1,$scope.updateOnTargetChange=!0,$scope.getFirstDateRecord=function(Items,FieldName){return Items&&Items.docs&&Items.docs.length>0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleHistogramQueryUpdate=function(Event){i=Event.name.indexOf("_"),bin=Event.name.substring(i+1,Event.name.length),query=SolrSearchService.getQuery(Event.name),count=query.response.numFound,$scope.histogram[bin].count=count,$scope.updateHistogramChart()},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleTargetQueryUpdate=function(){query=SolrSearchService.getQuery($scope.target),userquery=query.getUserQuery(),query=SolrSearchService.getQuery($scope.startDateQueryName),query.setUserQuery(userquery),query=SolrSearchService.getQuery($scope.endDateQueryName),query.setUserQuery(userquery),$scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName)},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.userquery=query.getUserQuery()}var startDateQuery=SolrSearchService.createQuery();startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery);var endDateQuery=SolrSearchService.createQuery();endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),$scope.updateOnInit&&($scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName))}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate<=$scope.endDate){var query=SolrSearchService.getQuery($scope.target);if(query){var dateRange=$scope.getDateRangeConstraint($scope.startDateField,$scope.startDate,$scope.endDateField,$scope.endDate);query.setQueryParameter("dateRange",dateRange),SolrSearchService.updateQuery($scope.target)}}else $scope.endDate=$scope._endDate,$scope.startDate=$scope._startDate,$log.info("WARNING: start date is greater than end date")},$scope.updateHistogram=function(){var bin,binRange,dateRange,end,histogramQuery,histogramQueryName,i,range,start;for($scope.histogram=[],range=Math.ceil($scope.endDate-$scope.startDate),binRange=Math.ceil(range/$scope.histogramMaxBins),i=0;i<$scope.histogramMaxBins;i++)start=Number($scope.startDate)+binRange*i,end=start+binRange,bin={},bin.start=start,bin.end=end>$scope.endDate?$scope.endDate:end,bin.label=start+" to "+bin.end,bin.count=10*i+5,$scope.histogram.push(bin);for(i=0;i<$scope.histogram.length;i++)bin=$scope.histogram[i],histogramQuery=SolrSearchService.createQuery(),histogramQueryName=$scope.histogramQueryName+"_"+i,dateRange=$scope.getDateRangeConstraint($scope.startDateField,bin.start,$scope.endDateField,bin.end),histogramQuery.setOption("rows","0"),histogramQuery.setQueryParameter("dateRange",dateRange),SolrSearchService.setQuery(histogramQueryName,histogramQuery),$scope.$on(histogramQueryName,function(histogramQueryName){$scope.handleHistogramQueryUpdate(histogramQueryName)}),SolrSearchService.updateQuery(histogramQueryName)},$scope.updateHistogramChart=function(){var margin={top:0,right:10,bottom:0,left:0},height=$scope.histogramHeight-margin.top-margin.bottom,width=$scope.histogramWidth-margin.left-margin.right,formatPercent=d3.format(".0%");d3.select("#date-range-histogram").select("svg").remove();var svg=d3.select("#date-range-histogram").append("svg").attr("width",width+margin.left+margin.right).attr("height",height+margin.top+margin.bottom).append("g").attr("transform","translate("+margin.left+","+margin.top+")"),max=d3.max($scope.histogram,function(d){return d.count}),x=d3.scale.ordinal().rangeBands([$scope.startYear,$scope.endYear]),y=d3.scale.log().domain([0,max]).rangeRound([0,height]);d3.svg.axis().scale(x).orient("bottom"),d3.svg.axis().scale(y).orient("left").tickFormat(formatPercent),x.domain([$scope.startYear,$scope.endYear]),y.domain([0,max]),d3.select("body").append("div").style("background","white").style("border","1px solid #ccc").style("position","absolute").style("z-index","10").style("visibility","hidden").text("a simple tooltip"),svg.selectAll(".bar").data($scope.histogram).enter().append("rect").attr("id",function(d,i){return"histogramBar_"+i}).attr("class","bar").attr("x",function(d,i){return i*(width+margin.left+margin.right)/$scope.histogramMaxBins}).attr("width",(width+margin.left+margin.right)/$scope.histogramMaxBins-1).attr("y",function(d){return height-height*d.count/max}).attr("height",function(d){return height*d.count/max}).on("click",function(d){$scope.endDate=d.end,$scope.startDate=d.start,$scope.submit()}),svg.selectAll(".bar").data($scope.histogram).exit().remove()}}]),angular.module("ngSolr").controller("DocumentSearchResultsController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService","Utils",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService,Utils){function Page(Name,Num){this.name=Name,this.number=Num,this.isCurrent=!1}$scope.documents=[],$scope.documentsPerPage=10,$scope.loading=!1,$scope.page=0,$scope.pages=[],$scope.pagesPerSet=10,$scope.queryName=SolrSearchService.defaultQueryName,$scope.source=void 0,$scope.start=0,$scope.totalPages=1,$scope.totalResults=0,$scope.totalSets=1,$scope.updateLocationOnChange=!0,$scope.userquery="",$scope.handleSetPage=function(Start){var query=SolrSearchService.getQuery($scope.queryName);if(query.setOption("start",Start*$scope.documentsPerPage),$scope.updateLocationOnChange){var hash=query.getHash();$location.path(hash),$window.scrollTo(0,0)}else $scope.loading=!0,SolrSearchService.updateQuery($scope.queryName)},$scope.handleUpdate=function(){$scope.documents=[],$scope.loading=!1;var results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs){$scope.totalResults=results.numFound,$scope.totalPages=Math.ceil($scope.totalResults/$scope.documentsPerPage),$scope.totalSets=Math.ceil($scope.totalPages/$scope.pagesPerSet);for(var i=0;i$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("FacetSelectionController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){var hash,key,query;$scope.items=[],$scope.source=void 0,$scope.target=SolrSearchService.defaultQueryName,$scope.remove=function(Index){query=SolrSearchService.getQuery($scope.target),query.removeFacetByIndex(Index),hash=query.getHash(),$location.path(hash)},$scope.handleUpdate=function(){hash=$routeParams.query||"",(query=SolrSearchService.getQueryFromHash(hash,$scope.source))&&($scope.items=query.getFacets())},$scope.init=function(){for(key in $attrs)$scope.hasOwnProperty(key)&&($scope[key]=$attrs[key]);$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()})},$scope.init()}]),angular.module("ngSolr").controller("FieldFacetController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){function FacetResult(Value,Score){this.value=Value,this.score=Score}var count,f,facet,facet_fields,facets,facet_query,hash,i,key,name,query,results,s,selected_values,value;$scope.exclusive=!0,$scope.facetQuery="facetQuery",$scope.facets=[],$scope.field="",$scope.items=[],$scope.maxItems=7,$scope.queryName=SolrSearchService.defaultQueryName,$scope.selected=!1,$scope.source=void 0,$scope.add=function($event,Index){query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),name=$scope.field,value="("+$scope.items[Index].value.split(" ").join("*")+")",facet=query.createFacet(name,value),-1===$scope.facets.indexOf(facet)&&(query.addFacet(facet),hash=query.getHash(),$location.path(hash)),$event.preventDefault()},$scope.handleUpdate=function(){for($scope.items=[],$scope.selected=!1,selected_values=[],hash=$routeParams.query||void 0,query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),facets=query.getFacets(),i=0;i-1&&($scope.selected=!0,s=f.value.replace(/([\(\[\)\]])+/g,""),s=s.replace(/\*/g," "),selected_values.push(s));if(facet_query=SolrSearchService.getQuery($scope.facetQuery),(results=facet_query.getFacetCounts())&&results.hasOwnProperty("facet_fields"))for(facet_fields=results.facet_fields[$scope.field].length>2*$scope.maxItems?results.facet_fields[$scope.field].splice(0,$scope.maxItems):results.facet_fields[$scope.field],i=0;i=$scope.documentsPerRow||i===results.docs.length-1)&&(count=0,$scope.rows.push(row),row=[])}else $scope.rows=[],$scope.totalResults=0,$scope.totalPages=1,$scope.totalSets=1;$scope.updatePageIndex()},$scope.init=function(){for(var key in $attrs)$scope.hasOwnProperty(key)&&("documentsPerPage"===key||"documentsPerRow"===key||"pagesPerSet"===key?$scope[key]=parseInt($attrs[key]):"true"===$attrs[key]||"false"===$attrs[key]?$scope[key]="true"===$attrs[key]:$scope[key]=$attrs[key]);$scope.$on($scope.queryName,function(){$scope.handleUpdate()}),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.source&&(query.solr=$scope.source),$scope.documentsPerPage=query.getOption("rows")||10,$scope.page=Math.ceil(query.getOption("start")/$scope.documentsPerPage)||0,$scope.userquery=query.getUserQuery(),SolrSearchService.setQuery($scope.queryName,query),SolrSearchService.updateQuery($scope.queryName)}})},$scope.updatePageIndex=function(){$scope.pages=[];var currentSet=Math.floor($scope.page/$scope.pagesPerSet),firstPageInSet=currentSet*$scope.pagesPerSet+1,lastPageInSet=firstPageInSet+$scope.pagesPerSet-1;if(lastPageInSet>$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("MapController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","SelectionSetService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,SelectionSetService,Utils){var i,lat,lng;$scope.categoryToIconMap={default:"img/icon/house.png",corporateBody:"img/icon/corporatebody.png",government:"img/icon/corporatebody.png",organization:"img/icon/corporatebody.png",person:"img/icon/person.png"},$scope.centerOnStart=!0,$scope.clusterManager=null,$scope.clusterOptions={styles:[{height:24,url:"img/map/cluster1.png",width:24},{height:36,url:"img/map/cluster2.png",width:36},{height:48,url:"img/map/cluster3.png",width:48},{height:64,url:"img/map/cluster4.png",width:64},{height:82,url:"img/map/cluster5.png",width:82}]},$scope.clusterResults=!0,$scope.count=5e3,$scope.fields="*",$scope.firstUpdate=!0,$scope.idToMarkerMap={},$scope.infoWindow=new google.maps.InfoWindow,$scope.loading=!1,$scope.map=void 0,$scope.markers=[],$scope.maxFieldLength=120,$scope.queryName="mapQuery",$scope.settings={mapTypeControl:!1,mapTypeId:google.maps.MapTypeId.TERRAIN,navigationControl:!0,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},overviewMapControl:!1,panControl:!0,rotateControl:!0,scaleControl:!0,streetViewControl:!1,zoom:5,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.LARGE}},$scope.showMessages=!0,$scope.showErrors=!0,$scope.source=void 0,$scope.startLatitude=void 0,$scope.startLongitude=void 0,$scope.target="defaultQuery",$scope.createMapQuery=function(){var query=SolrSearchService.createQuery();return query.setOption("fl",$scope.fields),query.setOption("rows",$scope.count),query.addQueryParameter("+location_0_coordinate:*"),query},$scope.getMarker=function(Map,Title,Content,Category,Lat,Lng){var icon=$scope.categoryToIconMap.default;return null!==Category&&Category in $scope.categoryToIconMap&&(icon=$scope.categoryToIconMap[Category]),new google.maps.Marker({icon:icon,map:Map,position:new google.maps.LatLng(Lat,Lng),title:Title,content:Content})},$scope.getMarkerContent=function(Item){var content='
';return Item.dobj_proxy_small&&(content+='
'),content+='",content+='
'+Utils.formatDate(Item.fromDate)+" - "+Utils.formatDate(Item.toDate)+"
",content+='
'+Utils.truncate(Item.abstract,$scope.maxFieldLength)+" ",content+='more
',content+="
"},$scope.handleSelection=function(){$log.info("Map selection updated");var selected=SelectionSetService.getSelectionSet();if(selected){var keys=[];for(var key in selected)selected.hasOwnProperty(key)&&keys.push(key);if(keys.length>0){var id=keys[0],marker=$scope.idToMarkerMap[id];if(marker){var bounds=new google.maps.LatLngBounds;bounds.extend(marker.position),google.maps.event.trigger(marker,"click"),$scope.map.fitBounds(bounds)}}}},$scope.handleUpdate=function(){var bounds=new google.maps.LatLngBounds,results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs)for(i=0;i=$scope.minSearchLength)for(i=0;$scope.hints.length,hintlist.length<$scope.maxHints;i++){token=$scope.hints[i];try{token.indexOf($scope.userquery)>-1&&hintlist.push(token)}catch(err){continue}}return hintlist},$scope.handleSubmit=function(){trimmed=Utils.trim($scope.userquery),""===trimmed&&($scope.userquery="*:*"),query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),query.setNearMatch($scope.nearMatch),query.setUserQuery($scope.userquery),hash=query.getHash(),$scope.redirect?$window.location.href=$scope.redirect+"#"+hash:$location.path(hash)},$scope.handleUpdate=function(){if(query=SolrSearchService.getQuery($scope.searchHintsQuery),(results=query.getFacetCounts())&&results.hasOwnProperty("facet_fields")&&(result=results.facet_fields[$scope.searchHintsField]))for(i=0;i0?newquery.getUserQuery()!==$scope.queries[0].getUserQuery()&&($scope.queries.unshift(newquery),$scope.queries.length>$scope.maxItems&&$scope.queries.pop()):($scope.queries=[],$scope.queries.push(newquery))},$scope.setQuery=function(QueryIndex){QueryIndex>=0&&QueryIndex<=$scope.queries.length&&(query=$scope.queries[QueryIndex])},$scope.init()}]),angular.module("ngSolr").directive("searchhints",function(){return{restrict:"A",link:function(scope,element){element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})}}}).directive("searchbox",function(){return{link:function(scope,element){element.bind("keyup",function(event){13===event.keyCode?""!==scope.userquery&&scope.handleSubmit(scope.userquery):scope.userquery=event.target.value}),element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})},restrict:"A",scope:!1}}).directive("searchbutton",function(){return{link:function(scope,element){element.bind("click",function(){""!==scope.userquery&&scope.handleSubmit(scope.userquery)})},restrict:"A",scope:!1}}),angular.module("ngSolr").directive("searchbox",["$location","$log","$routeParams","$timeout","$window","SolrSearchService","Utils",function($location,$log,$routeParams,$timeout,$window,SolrSearchService,Utils){return{link:function(scope,element,attrs){scope.showHints=!1,scope.hints=[],scope.maxHints=10,scope.messages=["Enter one or more search terms. Press Enter to search.","Key up or down to navigate hints. Press Enter to search.","Press Enter to search."],scope.message=scope.messages[0],scope.minSearchLength=3,scope.nearMatch=!1,scope.placeHolder="Keyword or place name",scope.queryBuffer=[],scope.redirect=void 0,scope.resetOnChange=!1,scope.searchHintsField="hints",scope.searchHintsQuery="hintsQuery",scope.selectedHint=-1,scope.showMessage=!0,scope.source=void 0,scope.timeout=void 0,scope.userQuery="",scope.clearHintSelection=function(){-1!==scope.selectedHint&&(scope.hints[scope.selectedHint].selected=!1)},scope.handleRouteChange=function(){var hash=$routeParams.query||"";if(""!==hash){var query=SolrSearchService.getQueryFromHash(hash,scope.source);scope.userQuery=query.getUserQuery()}else scope.userQuery=hash},scope.handleSubmit=function(){""===Utils.trim(scope.userQuery)&&(scope.userQuery="*:*");var query=SolrSearchService.getQuery(scope.queryName);void 0===query&&(query=SolrSearchService.createQuery(scope.source)),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery);var hash=query.getHash();scope.redirect?$window.location.href=scope.redirect+"#"+hash:$location.path(hash)},scope.handleUpdate=function(){scope.message=scope.messages[1];var query=SolrSearchService.getQuery(scope.searchHintsQuery),results=query.getFacetCounts();if(results&&results.hasOwnProperty("facet_fields")){scope.hints=[];var result=results.facet_fields[scope.searchHintsField];if(result)for(var i=0;i=scope.minSearchLength&&(scope.timeout&&$timeout.cancel(scope.timeout),scope.timeout=$timeout(function(){var query=SolrSearchService.createQuery(scope.source);query.setOption("rows","0"),query.setOption("facet","true"),query.setOption("facet.limit",scope.maxHints),query.setOption("facet.field",scope.searchHintsField),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery),SolrSearchService.setQuery(scope.searchHintsQuery,query),SolrSearchService.updateQuery(scope.searchHintsQuery)},350))},scope.selectHint=function(index){var hint=scope.hints[index];scope.userQuery=hint.title},scope.init()},replace:!1,restrict:"E",scope:{showHints:"&",nearMatch:"@",placeHolder:"@",queryName:"@",searchHintsField:"@",source:"@"},template:'
  • {{hint.title}}
{{message}}
',transclude:!0}}]),angular.module("ngSolr").filter("cleanFacetLabel",function(){return function(text){var val=text.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" ")}}).filter("prettyFacetLabel",function(){return function(facet){var result=facet.field.replace(/([A-Z])/g," $1"),label=result.charAt(0).toUpperCase()+result.slice(1),val=facet.value.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" "),val=val.replace(" TO ",""),val=val.replace("-01-01T00:00:00Z",""),val=val.replace("-12-31T23:59:59Z",""),label+": "+val}}).filter("strip",function(){return function(text){if(void 0===text)return text;var i=text.indexOf(", ");return-1!==i?text.substring(i+2):text}}).filter("substitute",function(){var map={ACT:"Australian Capital Territory",NSW:"New South Wales",NA:"Australia",NT:"Northern Territory",QLD:"Queensland",SA:"South Australia",TAS:"Tasmania",VIC:"Victoria",WA:"Western Australia"};return function(text){return text in map?map[text]:text}}).filter("swapFacetLabels",function(){return function(label){return 0===label.indexOf("fromDate")?label="toDate"+label.substring(8):0===label.indexOf("From Date")?label="To Date"+label.substring(9):0===label.indexOf("toDate")?label="fromDate"+label.substring(6):0===label.indexOf("To Date")?label="From Date"+label.substring(7):0===label.indexOf("Localtype")&&(label="Type"+label.substring(9)),label}}).filter("trim",function(){return function(text){return void 0===text?text:text.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}}).filter("truncate",function(){return function(text,limit){if(void 0===text)return text;if(text.length>limit){var t=text.substring(0,Math.min(limit,text.length)),i=t.lastIndexOf(" ");if(-1!==i)return text.substring(0,i)+" ..."}return text}}),angular.module("ngSolr").factory("SelectionSetService",["$rootScope",function($rootScope){var svc={};return svc.documents={},svc.multipleSelection=!1,Array.prototype.remove=function(from,to){var rest=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,rest)},svc.add=function(Key,Doc){svc.multipleSelection||(svc.documents={}),svc.documents[Key]=Doc,$rootScope.$broadcast("selectionSetUpdate")},svc.clear=function(){svc.documents={},$rootScope.$broadcast("selectionSetUpdate")},svc.clearSilent=function(){svc.documents={}},svc.get=function(Key){return svc.documents[Key]},svc.getSelectionSet=function(){return svc.documents},svc.remove=function(Key){delete svc.documents[Key],$rootScope.$broadcast("selectionSetUpdate")},svc}]),angular.module("ngSolr").factory("SolrSearchService",["$http","$log","$q","$rootScope","$sce",function($http,$log,$q,$rootScope,$sce){var defaultQuery=function(query){return query.setOption("fl","*"),query.setOption("rows",10),query.setOption("wt","json"),query.setUserQuery("*:*"),query};this.setDefaultQuery=function(Query){defaultQuery=Query};var svc={};return svc.defaultQueryName="defaultQuery",svc.queries={},svc.createQuery=function(Core){var query=new SolrQuery(Core);return defaultQuery(query)},svc.getQuery=function(Name){try{return svc.queries[Name]}catch(Err){return void $log.debug("No query named "+Name+" available")}},svc.getQueryComponents=function(Query){for(var parts=[];Query.length>0;){Query=Query.replace(/^\s\s*/,"");var x=Query.indexOf(" +"),y=Query.indexOf(" -");if(-1===x&&-1===y)return parts.push(Query),parts;x>-1&&(-1===y||x-1&&(parts.push(Query.substring(0,y)),Query=Query.substring(y))}return parts},svc.getQueryFromHash=function(Hash,CoreUrl){for(var query=svc.createQuery(CoreUrl),hash_elements=decodeURI(Hash).split("&"),i=0;i "+error);var response={};response.numFound=0,response.start=0,response.docs=[],query.setErrorMessage(msg),query.setFacetCounts([]),query.setHighlighting({}),query.setResponse(response),query.setResponseHeader({}),$rootScope.$broadcast(QueryName)})},svc}]),angular.module("ngSolr").factory("Utils",[function(){var d,day,i,key,month,months,p,parts,year,svc={};return svc.applyAttributes=function(attrs,scope){for(key in attrs)scope.hasOwnProperty(key)&&("true"===attrs[key]||"false"===attrs[key]?scope[key]="true"===attrs[key]:scope[key]=attrs[key])},svc.arraysAreEqual=function(A,B){return A.join("")===B.join("")},svc.convertMonthIndexToName=function(Index){return months={1:"January",2:"February",3:"March",4:"April",5:"May",6:"June",7:"July",8:"August",9:"September","01":"January","02":"February","03":"March","04":"April","05":"May","06":"June","07":"July","08":"August","09":"September",10:"October",11:"November",12:"December"},months[Index]},svc.formatDate=function(DateField){return DateField&&(i=DateField.indexOf("T"))?(d=DateField.substring(0,i),parts=d.split("-"),year=parts[0],month=svc.convertMonthIndexToName(parts[1]),day=svc.trimLeadingZero(parts[2]),month+", "+year):""},svc.objectsAreEqual=function(A,B){if(A===B)return!0;if(!(A instanceof Object&&B instanceof Object))return!1;if(A.constructor!==B.constructor)return!1;for(p in A)if(A.hasOwnProperty(p)){if(!B.hasOwnProperty(p))return!1;if(A[p]!==B[p]){if("object"!=typeof A[p])return!1;if(!svc.objectsAreEqual(A[p],B[p]))return!1}}for(p in B)if(B.hasOwnProperty(p)&&!A.hasOwnProperty(p))return!1;return!0},svc.startsWith=function(s1,s2){return!(!s1||!s2)&&s1.slice(0,s2.length)===s2},svc.trim=function(Val){return Val.replace(/^\s\s*/,"").replace(/\s\s*$/,"")},svc.trimLeadingZero=function(Val){return Val&&"0"===Val[0]?Val.substring(1):Val},svc.truncate=function(Field,Length){return Field&&Length&&Field.length>Length&&(Field=svc.trim(Field),Field=Field.substring(0,Math.min(Length,Field.length)),-1!==(i=Field.lastIndexOf(" "))&&(Field=Field.substring(0,i)+" ...")),Field},svc}]); //# sourceMappingURL=ngsolr.min.js.map \ No newline at end of file diff --git a/dist/ngsolr.min.js.map b/dist/ngsolr.min.js.map index 55d489b..6d9530f 100644 --- a/dist/ngsolr.min.js.map +++ b/dist/ngsolr.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["ngsolr.js"],"names":["SolrFacet","Field","Value","self","this","field","value","options","getOption","Name","getUrlFragment","query","option","hasOwnProperty","setOption","SolrQuery","Url","error","undefined","facets","facet_counts","highlighting","nearMatch","queryParameters","response","responseHeader","solr","addFacet","Facet","i","length","push","addQueryParameter","Parameter","createFacet","getErrorMessage","getFacet","getFacetCounts","getFacets","getHash","getQuery","key2","val","getSolrQueryUrl","encodeURI","getUserQuery","getUserQueryParameters","hasFacet","removeFacet","removeFacetByIndex","Index","splice","removeOption","setErrorMessage","Msg","setFacetCounts","FacetCounts","setHighlighting","Highlighting","setNearMatch","fq","setQueryParameters","Parameters","setResponse","Response","setResponseHeader","Header","setUserQuery","Query","app","angular","module","constant","api","env","defaultQuery","f","config","$routeProvider","when","event","otherwise","controller","$scope","$attrs","$location","$route","$routeParams","SolrSearchService","Utils","date","dateRange","endDateQuery","endDateResults","end_value","end_year","hash","item","start_value","start_year","startDateQuery","startDateResults","yearEnd","yearStart","_endDate","_startDate","endDate","endDateField","endDateQueryName","source","startDate","startDateField","startDateQueryName","updateOnInit","userquery","getDateRangeConstraint","StartDateField","StartDate","EndDateField","EndDate","getFirstDateRecord","Items","FieldName","docs","indexOf","substring","handleEndDateQueryUpdate","getResponse","handleStartDateQueryUpdate","handleUpdate","getQueryFromHash","createQuery","replace","updateFlag","setQuery","updateQuery","init","applyAttributes","$on","submit","path","$log","bin","count","histogram","histogramHeight","histogramMaxBins","histogramQueryName","histogramWidth","target","defaultQueryName","updateHistogram","updateOnTargetChange","handleHistogramQueryUpdate","Event","name","numFound","updateHistogramChart","handleTargetQueryUpdate","setQueryParameter","info","binRange","end","histogramQuery","range","start","Math","ceil","Number","label","margin","top","right","bottom","left","height","width","formatPercent","d3","format","select","remove","svg","append","attr","max","d","x","scale","ordinal","rangeBands","startYear","endYear","y","log","domain","rangeRound","axis","orient","tickFormat","style","text","selectAll","data","enter","on","exit","$window","Page","Num","number","isCurrent","documents","documentsPerPage","loading","page","pages","pagesPerSet","queryName","totalPages","totalResults","totalSets","updateLocationOnChange","handleSetPage","Start","scrollTo","results","fromDate","formatDate","toDate","updatePageIndex","key","parseInt","currentSet","floor","firstPageInSet","lastPageInSet","previousSet","prevPage","nextSet","nextPage","items","FacetResult","Score","score","facet","facet_fields","facet_query","s","selected_values","exclusive","facetQuery","maxItems","selected","add","$event","split","join","preventDefault","documentsPerRow","fields","rows","startPage","row","SelectionSetService","lat","lng","categoryToIconMap","default","corporateBody","government","organization","person","centerOnStart","clusterManager","clusterOptions","styles","url","clusterResults","firstUpdate","idToMarkerMap","infoWindow","google","maps","InfoWindow","map","markers","maxFieldLength","settings","mapTypeControl","mapTypeId","MapTypeId","TERRAIN","navigationControl","navigationControlOptions","NavigationControlStyle","SMALL","overviewMapControl","panControl","rotateControl","scaleControl","streetViewControl","zoom","zoomControl","zoomControlOptions","ZoomControlStyle","LARGE","showMessages","showErrors","startLatitude","startLongitude","createMapQuery","getMarker","Map","Title","Content","Category","Lat","Lng","icon","Marker","position","LatLng","title","content","getMarkerContent","Item","dobj_proxy_small","presentation_url","truncate","abstract","handleSelection","getSelectionSet","keys","id","marker","bounds","LatLngBounds","extend","trigger","fitBounds","location","location_0_coordinate","location_1_coordinate","type","oms","addMarker","document","getElementById","OverlappingMarkerSpiderfier","addListener","close","setContent","open","point","setCenter","setInfoWindow","singleSelection","clearSelection","Id","clear","err","message","clearSilent","hintlist","result","token","trimmed","hints","maxHints","minSearchLength","redirect","resetOnChange","searchHintsField","searchHintsQuery","getHintList","getHints","handleSubmit","trim","href","toLowerCase","newquery","queries","unshift","pop","QueryIndex","directive","restrict","link","scope","element","autocomplete","delay","minLength","request","$","ui","filter","term","slice","bind","keyCode","$timeout","attrs","showHints","messages","placeHolder","queryBuffer","selectedHint","showMessage","timeout","userQuery","clearHintSelection","handleRouteChange","hint","highlightHint","index","$apply","resetHintSelection","children","form_div","query_input","querySelector","hints_div","hints_list","hints_message","onfocus","onblur","onkeyup","offsetWidth","setAttribute","selectHint","cancel","template","transclude","charAt","toUpperCase","ACT","NSW","NA","NT","QLD","SA","TAS","VIC","WA","limit","t","min","lastIndexOf","factory","$rootScope","svc","multipleSelection","Array","prototype","from","to","rest","apply","Key","Doc","$broadcast","get","$http","$q","$sce","setDefaultQuery","Core","Err","debug","getQueryComponents","parts","Hash","CoreUrl","hash_elements","decodeURI","eparts","startsWith","params","shift","j","p","DefaultQuery","s1","s2","updateAllQueries","updateQueriesInOrder","Queries","q","then","QueryName","jsonp","trustAsResourceUrl","jsonpCallbackParam","msg","day","month","months","year","arraysAreEqual","A","B","convertMonthIndexToName","1","2","3","4","5","6","7","8","9","01","02","03","04","05","06","07","08","09","10","11","12","DateField","trimLeadingZero","objectsAreEqual","Object","constructor","Val","Length"],"mappings":"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","file":"ngsolr.min.js"} \ No newline at end of file +{"version":3,"sources":["ngsolr.js"],"names":["SolrFacet","Field","Value","self","this","field","value","options","getOption","Name","getUrlFragment","query","option","hasOwnProperty","setOption","SolrQuery","Url","error","undefined","facets","facet_counts","highlighting","nearMatch","queryParameters","response","responseHeader","solr","addFacet","Facet","i","length","push","addQueryParameter","Parameter","createFacet","getErrorMessage","getFacet","getFacetCounts","getFacets","getHash","getQuery","key2","val","getSolrQueryUrl","encodeURI","getUserQuery","getUserQueryParameters","hasFacet","removeFacet","removeFacetByIndex","Index","splice","removeOption","setErrorMessage","Msg","setFacetCounts","FacetCounts","setHighlighting","Highlighting","setNearMatch","fq","setQueryParameters","Parameters","setResponse","Response","setResponseHeader","Header","setUserQuery","Query","app","angular","module","constant","api","env","defaultQuery","f","config","$routeProvider","when","event","otherwise","controller","$scope","$attrs","$location","$route","$routeParams","SolrSearchService","Utils","date","dateRange","endDateQuery","endDateResults","end_value","end_year","hash","item","start_value","start_year","startDateQuery","startDateResults","yearEnd","yearStart","_endDate","_startDate","endDate","endDateField","endDateQueryName","source","startDate","startDateField","startDateQueryName","updateOnInit","userquery","getDateRangeConstraint","StartDateField","StartDate","EndDateField","EndDate","getFirstDateRecord","Items","FieldName","docs","indexOf","substring","handleEndDateQueryUpdate","getResponse","handleStartDateQueryUpdate","handleUpdate","getQueryFromHash","createQuery","replace","updateFlag","setQuery","updateQuery","init","applyAttributes","$on","submit","path","$log","bin","count","histogram","histogramHeight","histogramMaxBins","histogramQueryName","histogramWidth","target","defaultQueryName","updateHistogram","updateOnTargetChange","handleHistogramQueryUpdate","Event","name","numFound","updateHistogramChart","handleTargetQueryUpdate","setQueryParameter","info","binRange","end","histogramQuery","range","start","Math","ceil","Number","label","margin","top","right","bottom","left","height","width","formatPercent","d3","format","select","remove","svg","append","attr","max","d","x","scale","ordinal","rangeBands","startYear","endYear","y","log","domain","rangeRound","axis","orient","tickFormat","style","text","selectAll","data","enter","on","exit","$window","Page","Num","number","isCurrent","documents","documentsPerPage","loading","page","pages","pagesPerSet","queryName","totalPages","totalResults","totalSets","updateLocationOnChange","handleSetPage","Start","scrollTo","results","fromDate","formatDate","toDate","updatePageIndex","key","parseInt","currentSet","floor","firstPageInSet","lastPageInSet","previousSet","prevPage","nextSet","nextPage","items","FacetResult","Score","score","facet","facet_fields","facet_query","s","selected_values","exclusive","facetQuery","maxItems","selected","add","$event","split","join","preventDefault","documentsPerRow","fields","rows","startPage","row","SelectionSetService","lat","lng","categoryToIconMap","default","corporateBody","government","organization","person","centerOnStart","clusterManager","clusterOptions","styles","url","clusterResults","firstUpdate","idToMarkerMap","infoWindow","google","maps","InfoWindow","map","markers","maxFieldLength","settings","mapTypeControl","mapTypeId","MapTypeId","TERRAIN","navigationControl","navigationControlOptions","NavigationControlStyle","SMALL","overviewMapControl","panControl","rotateControl","scaleControl","streetViewControl","zoom","zoomControl","zoomControlOptions","ZoomControlStyle","LARGE","showMessages","showErrors","startLatitude","startLongitude","createMapQuery","getMarker","Map","Title","Content","Category","Lat","Lng","icon","Marker","position","LatLng","title","content","getMarkerContent","Item","dobj_proxy_small","presentation_url","truncate","abstract","handleSelection","getSelectionSet","keys","id","marker","bounds","LatLngBounds","extend","trigger","fitBounds","location","location_0_coordinate","location_1_coordinate","type","oms","addMarker","document","getElementById","OverlappingMarkerSpiderfier","addListener","close","setContent","open","point","setCenter","setInfoWindow","singleSelection","clearSelection","Id","clear","err","message","clearSilent","hintlist","result","token","trimmed","hints","maxHints","minSearchLength","redirect","resetOnChange","searchHintsField","searchHintsQuery","getHintList","getHints","handleSubmit","trim","href","toLowerCase","newquery","queries","unshift","pop","QueryIndex","directive","restrict","link","scope","element","autocomplete","delay","minLength","request","$","ui","filter","term","slice","bind","keyCode","$timeout","attrs","showHints","messages","placeHolder","queryBuffer","selectedHint","showMessage","timeout","userQuery","clearHintSelection","handleRouteChange","hint","highlightHint","index","$apply","resetHintSelection","children","form_div","query_input","querySelector","hints_div","hints_list","hints_message","onfocus","onblur","onkeyup","offsetWidth","setAttribute","selectHint","cancel","template","transclude","charAt","toUpperCase","ACT","NSW","NA","NT","QLD","SA","TAS","VIC","WA","limit","t","min","lastIndexOf","factory","$rootScope","svc","multipleSelection","Array","prototype","from","to","rest","apply","Key","Doc","$broadcast","get","$http","$q","$sce","setDefaultQuery","Core","Err","debug","getQueryComponents","parts","Hash","CoreUrl","hash_elements","decodeURI","eparts","startsWith","params","shift","j","p","DefaultQuery","s1","s2","updateAllQueries","updateQueriesInOrder","Queries","q","then","QueryName","jsonp","trustAsResourceUrl","jsonpCallbackParam","msg","day","month","months","year","arraysAreEqual","A","B","convertMonthIndexToName","1","2","3","4","5","6","7","8","9","01","02","03","04","05","06","07","08","09","10","11","12","DateField","trimLeadingZero","objectsAreEqual","Object","constructor","Val","Length"],"mappings":"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","file":"ngsolr.min.js"} \ No newline at end of file diff --git a/src/ngsolr/controllers/FieldFacetController.js b/src/ngsolr/controllers/FieldFacetController.js index 86f7764..1c80473 100644 --- a/src/ngsolr/controllers/FieldFacetController.js +++ b/src/ngsolr/controllers/FieldFacetController.js @@ -124,6 +124,7 @@ angular if (f.field.indexOf($scope.field) > -1) { $scope.selected = true; s = f.value.replace(/([\(\[\)\]])+/g,''); + s = s.replace(/\*/g, ' '); // Replace stars added when searching selected_values.push(s); // break; } From 5a8c8541842686b6ef471c53622f0e5c1fc0422a Mon Sep 17 00:00:00 2001 From: Xavier Sumba Date: Wed, 14 Mar 2018 11:13:14 -0500 Subject: [PATCH 4/6] Use arbitrary paths in selectors and field facet --- dist/ngsolr.js | 10 ++++++++-- dist/ngsolr.min.js | 6 +++--- dist/ngsolr.min.js.map | 2 +- src/examples/index.html | 5 +++-- src/ngsolr/controllers/FacetSelectionController.js | 3 ++- src/ngsolr/controllers/FieldFacetController.js | 7 ++++++- 6 files changed, 23 insertions(+), 10 deletions(-) diff --git a/dist/ngsolr.js b/dist/ngsolr.js index 77e5bb7..da4a739 100644 --- a/dist/ngsolr.js +++ b/dist/ngsolr.js @@ -875,10 +875,11 @@ angular.module('ngSolr').controller('FacetSelectionController', */ $scope.remove = function(Index) { query = SolrSearchService.getQuery($scope.target); + var oldHash = query.getHash(); query.removeFacetByIndex(Index); // change window location hash = query.getHash(); - $location.path(hash); + $location.path($location.path().replace(oldHash, hash)); }; /** @@ -999,10 +1000,15 @@ angular facet = query.createFacet(name, value); // check to see if the selected facet is already in the list if ($scope.facets.indexOf(facet) === -1) { + var oldHash = query.getHash(); query.addFacet(facet); // change window location hash = query.getHash(); - $location.path(hash); + if (!$location.path()) { + $location.path(hash); + } else { + $location.path($location.path().replace(oldHash, hash)); + } } // @see https://github.com/angular/angular.js/issues/1179 $event.preventDefault(); diff --git a/dist/ngsolr.min.js b/dist/ngsolr.min.js index 2544a65..74124c6 100644 --- a/dist/ngsolr.min.js +++ b/dist/ngsolr.min.js @@ -1,5 +1,5 @@ -/*! ngSolr - v0.6.1 - 2018-03-12 */ +/*! ngSolr - v0.6.1 - 2018-03-14 */ -"use strict";function SolrFacet(Field,Value){var self=this;self.field=Field,self.value=Value,self.options={},self.getOption=function(Name){return self.options[Name]},self.getUrlFragment=function(){var query="";query+="&fq="+self.field+":"+self.value;for(var option in self.options)self.options.hasOwnProperty(option)&&(query+="&"+option+"="+self.options[option]);return query},self.setOption=function(Name,Value){self.options[Name]=Value}}function SolrQuery(Url){var self=this;self.error=void 0,self.facets=[],self.facet_counts={},self.highlighting={},self.options={},self.nearMatch=!1,self.query="*:*",self.queryParameters=[],self.response={},self.responseHeader={},self.solr=Url,self.addFacet=function(Facet){for(var i=0;i0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){(endDateResults=SolrSearchService.getResponse($scope.endDateQueryName))&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField))},$scope.handleStartDateQueryUpdate=function(){(startDateResults=SolrSearchService.getResponse($scope.startDateQueryName))&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField))},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),f=query.getFacet($scope.endDateField),f?(start_year=f.value.replace("[","").replace("-01-01T00:00:00Z TO *]",""),$scope._startDate=start_year,$scope.startDate=start_year,$scope.updateFlag+=1):(startDateQuery=SolrSearchService.createQuery($scope.source),startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery),SolrSearchService.updateQuery($scope.startDateQueryName)),f=query.getFacet($scope.startDateField),f?(end_year=f.value.replace("[* TO ","").replace("-12-31T23:59:59Z]",""),$scope._endDate=end_year,$scope.endDate=end_year,$scope.updateFlag+=1):(endDateQuery=SolrSearchService.createQuery($scope.source),endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),SolrSearchService.updateQuery($scope.endDateQueryName))},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate>$scope.endDate)return $scope.endDate=$scope._endDate,void($scope.startDate=$scope._startDate);hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),query.removeFacet($scope.startDateField),query.removeFacet($scope.endDateField),start_value="[* TO "+$scope.endDate+"-12-31T23:59:59Z]",end_value="["+$scope.startDate+"-01-01T00:00:00Z TO *]",f=query.createFacet($scope.startDateField,start_value),query.addFacet(f),f=query.createFacet($scope.endDateField,end_value),query.addFacet(f),hash=query.getHash(),$location.path(hash)},$scope.init()}]),angular.module("ngSolr").controller("DateFacetHistogramController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,Utils){var bin,count,date,endDateResults,i,item,query,startDateResults,userquery;$scope._endDate=0,$scope._startDate=0,$scope.endDate=0,$scope.endDateField="toDate",$scope.endDateQueryName="endDateQuery",$scope.histogram=[],$scope.histogramHeight=100,$scope.histogramMaxBins=10,$scope.histogramQueryName="histogramQuery",$scope.histogramWidth=240,$scope.source=void 0,$scope.startDate=0,$scope.startDateField="fromDate",$scope.startDateQueryName="startDateQuery",$scope.target=SolrSearchService.defaultQueryName,$scope.updateFlag=0,$scope.updateHistogram=!0,$scope.updateOnInit=!1,$scope.updateOnTargetChange=!0,$scope.getFirstDateRecord=function(Items,FieldName){return Items&&Items.docs&&Items.docs.length>0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleHistogramQueryUpdate=function(Event){i=Event.name.indexOf("_"),bin=Event.name.substring(i+1,Event.name.length),query=SolrSearchService.getQuery(Event.name),count=query.response.numFound,$scope.histogram[bin].count=count,$scope.updateHistogramChart()},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleTargetQueryUpdate=function(){query=SolrSearchService.getQuery($scope.target),userquery=query.getUserQuery(),query=SolrSearchService.getQuery($scope.startDateQueryName),query.setUserQuery(userquery),query=SolrSearchService.getQuery($scope.endDateQueryName),query.setUserQuery(userquery),$scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName)},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.userquery=query.getUserQuery()}var startDateQuery=SolrSearchService.createQuery();startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery);var endDateQuery=SolrSearchService.createQuery();endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),$scope.updateOnInit&&($scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName))}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate<=$scope.endDate){var query=SolrSearchService.getQuery($scope.target);if(query){var dateRange=$scope.getDateRangeConstraint($scope.startDateField,$scope.startDate,$scope.endDateField,$scope.endDate);query.setQueryParameter("dateRange",dateRange),SolrSearchService.updateQuery($scope.target)}}else $scope.endDate=$scope._endDate,$scope.startDate=$scope._startDate,$log.info("WARNING: start date is greater than end date")},$scope.updateHistogram=function(){var bin,binRange,dateRange,end,histogramQuery,histogramQueryName,i,range,start;for($scope.histogram=[],range=Math.ceil($scope.endDate-$scope.startDate),binRange=Math.ceil(range/$scope.histogramMaxBins),i=0;i<$scope.histogramMaxBins;i++)start=Number($scope.startDate)+binRange*i,end=start+binRange,bin={},bin.start=start,bin.end=end>$scope.endDate?$scope.endDate:end,bin.label=start+" to "+bin.end,bin.count=10*i+5,$scope.histogram.push(bin);for(i=0;i<$scope.histogram.length;i++)bin=$scope.histogram[i],histogramQuery=SolrSearchService.createQuery(),histogramQueryName=$scope.histogramQueryName+"_"+i,dateRange=$scope.getDateRangeConstraint($scope.startDateField,bin.start,$scope.endDateField,bin.end),histogramQuery.setOption("rows","0"),histogramQuery.setQueryParameter("dateRange",dateRange),SolrSearchService.setQuery(histogramQueryName,histogramQuery),$scope.$on(histogramQueryName,function(histogramQueryName){$scope.handleHistogramQueryUpdate(histogramQueryName)}),SolrSearchService.updateQuery(histogramQueryName)},$scope.updateHistogramChart=function(){var margin={top:0,right:10,bottom:0,left:0},height=$scope.histogramHeight-margin.top-margin.bottom,width=$scope.histogramWidth-margin.left-margin.right,formatPercent=d3.format(".0%");d3.select("#date-range-histogram").select("svg").remove();var svg=d3.select("#date-range-histogram").append("svg").attr("width",width+margin.left+margin.right).attr("height",height+margin.top+margin.bottom).append("g").attr("transform","translate("+margin.left+","+margin.top+")"),max=d3.max($scope.histogram,function(d){return d.count}),x=d3.scale.ordinal().rangeBands([$scope.startYear,$scope.endYear]),y=d3.scale.log().domain([0,max]).rangeRound([0,height]);d3.svg.axis().scale(x).orient("bottom"),d3.svg.axis().scale(y).orient("left").tickFormat(formatPercent),x.domain([$scope.startYear,$scope.endYear]),y.domain([0,max]),d3.select("body").append("div").style("background","white").style("border","1px solid #ccc").style("position","absolute").style("z-index","10").style("visibility","hidden").text("a simple tooltip"),svg.selectAll(".bar").data($scope.histogram).enter().append("rect").attr("id",function(d,i){return"histogramBar_"+i}).attr("class","bar").attr("x",function(d,i){return i*(width+margin.left+margin.right)/$scope.histogramMaxBins}).attr("width",(width+margin.left+margin.right)/$scope.histogramMaxBins-1).attr("y",function(d){return height-height*d.count/max}).attr("height",function(d){return height*d.count/max}).on("click",function(d){$scope.endDate=d.end,$scope.startDate=d.start,$scope.submit()}),svg.selectAll(".bar").data($scope.histogram).exit().remove()}}]),angular.module("ngSolr").controller("DocumentSearchResultsController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService","Utils",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService,Utils){function Page(Name,Num){this.name=Name,this.number=Num,this.isCurrent=!1}$scope.documents=[],$scope.documentsPerPage=10,$scope.loading=!1,$scope.page=0,$scope.pages=[],$scope.pagesPerSet=10,$scope.queryName=SolrSearchService.defaultQueryName,$scope.source=void 0,$scope.start=0,$scope.totalPages=1,$scope.totalResults=0,$scope.totalSets=1,$scope.updateLocationOnChange=!0,$scope.userquery="",$scope.handleSetPage=function(Start){var query=SolrSearchService.getQuery($scope.queryName);if(query.setOption("start",Start*$scope.documentsPerPage),$scope.updateLocationOnChange){var hash=query.getHash();$location.path(hash),$window.scrollTo(0,0)}else $scope.loading=!0,SolrSearchService.updateQuery($scope.queryName)},$scope.handleUpdate=function(){$scope.documents=[],$scope.loading=!1;var results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs){$scope.totalResults=results.numFound,$scope.totalPages=Math.ceil($scope.totalResults/$scope.documentsPerPage),$scope.totalSets=Math.ceil($scope.totalPages/$scope.pagesPerSet);for(var i=0;i$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("FacetSelectionController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){var hash,key,query;$scope.items=[],$scope.source=void 0,$scope.target=SolrSearchService.defaultQueryName,$scope.remove=function(Index){query=SolrSearchService.getQuery($scope.target),query.removeFacetByIndex(Index),hash=query.getHash(),$location.path(hash)},$scope.handleUpdate=function(){hash=$routeParams.query||"",(query=SolrSearchService.getQueryFromHash(hash,$scope.source))&&($scope.items=query.getFacets())},$scope.init=function(){for(key in $attrs)$scope.hasOwnProperty(key)&&($scope[key]=$attrs[key]);$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()})},$scope.init()}]),angular.module("ngSolr").controller("FieldFacetController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){function FacetResult(Value,Score){this.value=Value,this.score=Score}var count,f,facet,facet_fields,facets,facet_query,hash,i,key,name,query,results,s,selected_values,value;$scope.exclusive=!0,$scope.facetQuery="facetQuery",$scope.facets=[],$scope.field="",$scope.items=[],$scope.maxItems=7,$scope.queryName=SolrSearchService.defaultQueryName,$scope.selected=!1,$scope.source=void 0,$scope.add=function($event,Index){query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),name=$scope.field,value="("+$scope.items[Index].value.split(" ").join("*")+")",facet=query.createFacet(name,value),-1===$scope.facets.indexOf(facet)&&(query.addFacet(facet),hash=query.getHash(),$location.path(hash)),$event.preventDefault()},$scope.handleUpdate=function(){for($scope.items=[],$scope.selected=!1,selected_values=[],hash=$routeParams.query||void 0,query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),facets=query.getFacets(),i=0;i-1&&($scope.selected=!0,s=f.value.replace(/([\(\[\)\]])+/g,""),s=s.replace(/\*/g," "),selected_values.push(s));if(facet_query=SolrSearchService.getQuery($scope.facetQuery),(results=facet_query.getFacetCounts())&&results.hasOwnProperty("facet_fields"))for(facet_fields=results.facet_fields[$scope.field].length>2*$scope.maxItems?results.facet_fields[$scope.field].splice(0,$scope.maxItems):results.facet_fields[$scope.field],i=0;i=$scope.documentsPerRow||i===results.docs.length-1)&&(count=0,$scope.rows.push(row),row=[])}else $scope.rows=[],$scope.totalResults=0,$scope.totalPages=1,$scope.totalSets=1;$scope.updatePageIndex()},$scope.init=function(){for(var key in $attrs)$scope.hasOwnProperty(key)&&("documentsPerPage"===key||"documentsPerRow"===key||"pagesPerSet"===key?$scope[key]=parseInt($attrs[key]):"true"===$attrs[key]||"false"===$attrs[key]?$scope[key]="true"===$attrs[key]:$scope[key]=$attrs[key]);$scope.$on($scope.queryName,function(){$scope.handleUpdate()}),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.source&&(query.solr=$scope.source),$scope.documentsPerPage=query.getOption("rows")||10,$scope.page=Math.ceil(query.getOption("start")/$scope.documentsPerPage)||0,$scope.userquery=query.getUserQuery(),SolrSearchService.setQuery($scope.queryName,query),SolrSearchService.updateQuery($scope.queryName)}})},$scope.updatePageIndex=function(){$scope.pages=[];var currentSet=Math.floor($scope.page/$scope.pagesPerSet),firstPageInSet=currentSet*$scope.pagesPerSet+1,lastPageInSet=firstPageInSet+$scope.pagesPerSet-1;if(lastPageInSet>$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("MapController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","SelectionSetService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,SelectionSetService,Utils){var i,lat,lng;$scope.categoryToIconMap={default:"img/icon/house.png",corporateBody:"img/icon/corporatebody.png",government:"img/icon/corporatebody.png",organization:"img/icon/corporatebody.png",person:"img/icon/person.png"},$scope.centerOnStart=!0,$scope.clusterManager=null,$scope.clusterOptions={styles:[{height:24,url:"img/map/cluster1.png",width:24},{height:36,url:"img/map/cluster2.png",width:36},{height:48,url:"img/map/cluster3.png",width:48},{height:64,url:"img/map/cluster4.png",width:64},{height:82,url:"img/map/cluster5.png",width:82}]},$scope.clusterResults=!0,$scope.count=5e3,$scope.fields="*",$scope.firstUpdate=!0,$scope.idToMarkerMap={},$scope.infoWindow=new google.maps.InfoWindow,$scope.loading=!1,$scope.map=void 0,$scope.markers=[],$scope.maxFieldLength=120,$scope.queryName="mapQuery",$scope.settings={mapTypeControl:!1,mapTypeId:google.maps.MapTypeId.TERRAIN,navigationControl:!0,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},overviewMapControl:!1,panControl:!0,rotateControl:!0,scaleControl:!0,streetViewControl:!1,zoom:5,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.LARGE}},$scope.showMessages=!0,$scope.showErrors=!0,$scope.source=void 0,$scope.startLatitude=void 0,$scope.startLongitude=void 0,$scope.target="defaultQuery",$scope.createMapQuery=function(){var query=SolrSearchService.createQuery();return query.setOption("fl",$scope.fields),query.setOption("rows",$scope.count),query.addQueryParameter("+location_0_coordinate:*"),query},$scope.getMarker=function(Map,Title,Content,Category,Lat,Lng){var icon=$scope.categoryToIconMap.default;return null!==Category&&Category in $scope.categoryToIconMap&&(icon=$scope.categoryToIconMap[Category]),new google.maps.Marker({icon:icon,map:Map,position:new google.maps.LatLng(Lat,Lng),title:Title,content:Content})},$scope.getMarkerContent=function(Item){var content='
';return Item.dobj_proxy_small&&(content+='
'),content+='",content+='
'+Utils.formatDate(Item.fromDate)+" - "+Utils.formatDate(Item.toDate)+"
",content+='
'+Utils.truncate(Item.abstract,$scope.maxFieldLength)+" ",content+='more
',content+="
"},$scope.handleSelection=function(){$log.info("Map selection updated");var selected=SelectionSetService.getSelectionSet();if(selected){var keys=[];for(var key in selected)selected.hasOwnProperty(key)&&keys.push(key);if(keys.length>0){var id=keys[0],marker=$scope.idToMarkerMap[id];if(marker){var bounds=new google.maps.LatLngBounds;bounds.extend(marker.position),google.maps.event.trigger(marker,"click"),$scope.map.fitBounds(bounds)}}}},$scope.handleUpdate=function(){var bounds=new google.maps.LatLngBounds,results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs)for(i=0;i=$scope.minSearchLength)for(i=0;$scope.hints.length,hintlist.length<$scope.maxHints;i++){token=$scope.hints[i];try{token.indexOf($scope.userquery)>-1&&hintlist.push(token)}catch(err){continue}}return hintlist},$scope.handleSubmit=function(){trimmed=Utils.trim($scope.userquery),""===trimmed&&($scope.userquery="*:*"),query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),query.setNearMatch($scope.nearMatch),query.setUserQuery($scope.userquery),hash=query.getHash(),$scope.redirect?$window.location.href=$scope.redirect+"#"+hash:$location.path(hash)},$scope.handleUpdate=function(){if(query=SolrSearchService.getQuery($scope.searchHintsQuery),(results=query.getFacetCounts())&&results.hasOwnProperty("facet_fields")&&(result=results.facet_fields[$scope.searchHintsField]))for(i=0;i0?newquery.getUserQuery()!==$scope.queries[0].getUserQuery()&&($scope.queries.unshift(newquery),$scope.queries.length>$scope.maxItems&&$scope.queries.pop()):($scope.queries=[],$scope.queries.push(newquery))},$scope.setQuery=function(QueryIndex){QueryIndex>=0&&QueryIndex<=$scope.queries.length&&(query=$scope.queries[QueryIndex])},$scope.init()}]),angular.module("ngSolr").directive("searchhints",function(){return{restrict:"A",link:function(scope,element){element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})}}}).directive("searchbox",function(){return{link:function(scope,element){element.bind("keyup",function(event){13===event.keyCode?""!==scope.userquery&&scope.handleSubmit(scope.userquery):scope.userquery=event.target.value}),element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})},restrict:"A",scope:!1}}).directive("searchbutton",function(){return{link:function(scope,element){element.bind("click",function(){""!==scope.userquery&&scope.handleSubmit(scope.userquery)})},restrict:"A",scope:!1}}),angular.module("ngSolr").directive("searchbox",["$location","$log","$routeParams","$timeout","$window","SolrSearchService","Utils",function($location,$log,$routeParams,$timeout,$window,SolrSearchService,Utils){return{link:function(scope,element,attrs){scope.showHints=!1,scope.hints=[],scope.maxHints=10,scope.messages=["Enter one or more search terms. Press Enter to search.","Key up or down to navigate hints. Press Enter to search.","Press Enter to search."],scope.message=scope.messages[0],scope.minSearchLength=3,scope.nearMatch=!1,scope.placeHolder="Keyword or place name",scope.queryBuffer=[],scope.redirect=void 0,scope.resetOnChange=!1,scope.searchHintsField="hints",scope.searchHintsQuery="hintsQuery",scope.selectedHint=-1,scope.showMessage=!0,scope.source=void 0,scope.timeout=void 0,scope.userQuery="",scope.clearHintSelection=function(){-1!==scope.selectedHint&&(scope.hints[scope.selectedHint].selected=!1)},scope.handleRouteChange=function(){var hash=$routeParams.query||"";if(""!==hash){var query=SolrSearchService.getQueryFromHash(hash,scope.source);scope.userQuery=query.getUserQuery()}else scope.userQuery=hash},scope.handleSubmit=function(){""===Utils.trim(scope.userQuery)&&(scope.userQuery="*:*");var query=SolrSearchService.getQuery(scope.queryName);void 0===query&&(query=SolrSearchService.createQuery(scope.source)),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery);var hash=query.getHash();scope.redirect?$window.location.href=scope.redirect+"#"+hash:$location.path(hash)},scope.handleUpdate=function(){scope.message=scope.messages[1];var query=SolrSearchService.getQuery(scope.searchHintsQuery),results=query.getFacetCounts();if(results&&results.hasOwnProperty("facet_fields")){scope.hints=[];var result=results.facet_fields[scope.searchHintsField];if(result)for(var i=0;i=scope.minSearchLength&&(scope.timeout&&$timeout.cancel(scope.timeout),scope.timeout=$timeout(function(){var query=SolrSearchService.createQuery(scope.source);query.setOption("rows","0"),query.setOption("facet","true"),query.setOption("facet.limit",scope.maxHints),query.setOption("facet.field",scope.searchHintsField),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery),SolrSearchService.setQuery(scope.searchHintsQuery,query),SolrSearchService.updateQuery(scope.searchHintsQuery)},350))},scope.selectHint=function(index){var hint=scope.hints[index];scope.userQuery=hint.title},scope.init()},replace:!1,restrict:"E",scope:{showHints:"&",nearMatch:"@",placeHolder:"@",queryName:"@",searchHintsField:"@",source:"@"},template:'
  • {{hint.title}}
{{message}}
',transclude:!0}}]),angular.module("ngSolr").filter("cleanFacetLabel",function(){return function(text){var val=text.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" ")}}).filter("prettyFacetLabel",function(){return function(facet){var result=facet.field.replace(/([A-Z])/g," $1"),label=result.charAt(0).toUpperCase()+result.slice(1),val=facet.value.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" "),val=val.replace(" TO ",""),val=val.replace("-01-01T00:00:00Z",""),val=val.replace("-12-31T23:59:59Z",""),label+": "+val}}).filter("strip",function(){return function(text){if(void 0===text)return text;var i=text.indexOf(", ");return-1!==i?text.substring(i+2):text}}).filter("substitute",function(){var map={ACT:"Australian Capital Territory",NSW:"New South Wales",NA:"Australia",NT:"Northern Territory",QLD:"Queensland",SA:"South Australia",TAS:"Tasmania",VIC:"Victoria",WA:"Western Australia"};return function(text){return text in map?map[text]:text}}).filter("swapFacetLabels",function(){return function(label){return 0===label.indexOf("fromDate")?label="toDate"+label.substring(8):0===label.indexOf("From Date")?label="To Date"+label.substring(9):0===label.indexOf("toDate")?label="fromDate"+label.substring(6):0===label.indexOf("To Date")?label="From Date"+label.substring(7):0===label.indexOf("Localtype")&&(label="Type"+label.substring(9)),label}}).filter("trim",function(){return function(text){return void 0===text?text:text.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}}).filter("truncate",function(){return function(text,limit){if(void 0===text)return text;if(text.length>limit){var t=text.substring(0,Math.min(limit,text.length)),i=t.lastIndexOf(" ");if(-1!==i)return text.substring(0,i)+" ..."}return text}}),angular.module("ngSolr").factory("SelectionSetService",["$rootScope",function($rootScope){var svc={};return svc.documents={},svc.multipleSelection=!1,Array.prototype.remove=function(from,to){var rest=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,rest)},svc.add=function(Key,Doc){svc.multipleSelection||(svc.documents={}),svc.documents[Key]=Doc,$rootScope.$broadcast("selectionSetUpdate")},svc.clear=function(){svc.documents={},$rootScope.$broadcast("selectionSetUpdate")},svc.clearSilent=function(){svc.documents={}},svc.get=function(Key){return svc.documents[Key]},svc.getSelectionSet=function(){return svc.documents},svc.remove=function(Key){delete svc.documents[Key],$rootScope.$broadcast("selectionSetUpdate")},svc}]),angular.module("ngSolr").factory("SolrSearchService",["$http","$log","$q","$rootScope","$sce",function($http,$log,$q,$rootScope,$sce){var defaultQuery=function(query){return query.setOption("fl","*"),query.setOption("rows",10),query.setOption("wt","json"),query.setUserQuery("*:*"),query};this.setDefaultQuery=function(Query){defaultQuery=Query};var svc={};return svc.defaultQueryName="defaultQuery",svc.queries={},svc.createQuery=function(Core){var query=new SolrQuery(Core);return defaultQuery(query)},svc.getQuery=function(Name){try{return svc.queries[Name]}catch(Err){return void $log.debug("No query named "+Name+" available")}},svc.getQueryComponents=function(Query){for(var parts=[];Query.length>0;){Query=Query.replace(/^\s\s*/,"");var x=Query.indexOf(" +"),y=Query.indexOf(" -");if(-1===x&&-1===y)return parts.push(Query),parts;x>-1&&(-1===y||x-1&&(parts.push(Query.substring(0,y)),Query=Query.substring(y))}return parts},svc.getQueryFromHash=function(Hash,CoreUrl){for(var query=svc.createQuery(CoreUrl),hash_elements=decodeURI(Hash).split("&"),i=0;i "+error);var response={};response.numFound=0,response.start=0,response.docs=[],query.setErrorMessage(msg),query.setFacetCounts([]),query.setHighlighting({}),query.setResponse(response),query.setResponseHeader({}),$rootScope.$broadcast(QueryName)})},svc}]),angular.module("ngSolr").factory("Utils",[function(){var d,day,i,key,month,months,p,parts,year,svc={};return svc.applyAttributes=function(attrs,scope){for(key in attrs)scope.hasOwnProperty(key)&&("true"===attrs[key]||"false"===attrs[key]?scope[key]="true"===attrs[key]:scope[key]=attrs[key])},svc.arraysAreEqual=function(A,B){return A.join("")===B.join("")},svc.convertMonthIndexToName=function(Index){return months={1:"January",2:"February",3:"March",4:"April",5:"May",6:"June",7:"July",8:"August",9:"September","01":"January","02":"February","03":"March","04":"April","05":"May","06":"June","07":"July","08":"August","09":"September",10:"October",11:"November",12:"December"},months[Index]},svc.formatDate=function(DateField){return DateField&&(i=DateField.indexOf("T"))?(d=DateField.substring(0,i),parts=d.split("-"),year=parts[0],month=svc.convertMonthIndexToName(parts[1]),day=svc.trimLeadingZero(parts[2]),month+", "+year):""},svc.objectsAreEqual=function(A,B){if(A===B)return!0;if(!(A instanceof Object&&B instanceof Object))return!1;if(A.constructor!==B.constructor)return!1;for(p in A)if(A.hasOwnProperty(p)){if(!B.hasOwnProperty(p))return!1;if(A[p]!==B[p]){if("object"!=typeof A[p])return!1;if(!svc.objectsAreEqual(A[p],B[p]))return!1}}for(p in B)if(B.hasOwnProperty(p)&&!A.hasOwnProperty(p))return!1;return!0},svc.startsWith=function(s1,s2){return!(!s1||!s2)&&s1.slice(0,s2.length)===s2},svc.trim=function(Val){return Val.replace(/^\s\s*/,"").replace(/\s\s*$/,"")},svc.trimLeadingZero=function(Val){return Val&&"0"===Val[0]?Val.substring(1):Val},svc.truncate=function(Field,Length){return Field&&Length&&Field.length>Length&&(Field=svc.trim(Field),Field=Field.substring(0,Math.min(Length,Field.length)),-1!==(i=Field.lastIndexOf(" "))&&(Field=Field.substring(0,i)+" ...")),Field},svc}]); +"use strict";function SolrFacet(Field,Value){var self=this;self.field=Field,self.value=Value,self.options={},self.getOption=function(Name){return self.options[Name]},self.getUrlFragment=function(){var query="";query+="&fq="+self.field+":"+self.value;for(var option in self.options)self.options.hasOwnProperty(option)&&(query+="&"+option+"="+self.options[option]);return query},self.setOption=function(Name,Value){self.options[Name]=Value}}function SolrQuery(Url){var self=this;self.error=void 0,self.facets=[],self.facet_counts={},self.highlighting={},self.options={},self.nearMatch=!1,self.query="*:*",self.queryParameters=[],self.response={},self.responseHeader={},self.solr=Url,self.addFacet=function(Facet){for(var i=0;i0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){(endDateResults=SolrSearchService.getResponse($scope.endDateQueryName))&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField))},$scope.handleStartDateQueryUpdate=function(){(startDateResults=SolrSearchService.getResponse($scope.startDateQueryName))&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField))},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),f=query.getFacet($scope.endDateField),f?(start_year=f.value.replace("[","").replace("-01-01T00:00:00Z TO *]",""),$scope._startDate=start_year,$scope.startDate=start_year,$scope.updateFlag+=1):(startDateQuery=SolrSearchService.createQuery($scope.source),startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery),SolrSearchService.updateQuery($scope.startDateQueryName)),f=query.getFacet($scope.startDateField),f?(end_year=f.value.replace("[* TO ","").replace("-12-31T23:59:59Z]",""),$scope._endDate=end_year,$scope.endDate=end_year,$scope.updateFlag+=1):(endDateQuery=SolrSearchService.createQuery($scope.source),endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),SolrSearchService.updateQuery($scope.endDateQueryName))},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate>$scope.endDate)return $scope.endDate=$scope._endDate,void($scope.startDate=$scope._startDate);hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),query.removeFacet($scope.startDateField),query.removeFacet($scope.endDateField),start_value="[* TO "+$scope.endDate+"-12-31T23:59:59Z]",end_value="["+$scope.startDate+"-01-01T00:00:00Z TO *]",f=query.createFacet($scope.startDateField,start_value),query.addFacet(f),f=query.createFacet($scope.endDateField,end_value),query.addFacet(f),hash=query.getHash(),$location.path(hash)},$scope.init()}]),angular.module("ngSolr").controller("DateFacetHistogramController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,Utils){var bin,count,date,endDateResults,i,item,query,startDateResults,userquery;$scope._endDate=0,$scope._startDate=0,$scope.endDate=0,$scope.endDateField="toDate",$scope.endDateQueryName="endDateQuery",$scope.histogram=[],$scope.histogramHeight=100,$scope.histogramMaxBins=10,$scope.histogramQueryName="histogramQuery",$scope.histogramWidth=240,$scope.source=void 0,$scope.startDate=0,$scope.startDateField="fromDate",$scope.startDateQueryName="startDateQuery",$scope.target=SolrSearchService.defaultQueryName,$scope.updateFlag=0,$scope.updateHistogram=!0,$scope.updateOnInit=!1,$scope.updateOnTargetChange=!0,$scope.getFirstDateRecord=function(Items,FieldName){return Items&&Items.docs&&Items.docs.length>0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleHistogramQueryUpdate=function(Event){i=Event.name.indexOf("_"),bin=Event.name.substring(i+1,Event.name.length),query=SolrSearchService.getQuery(Event.name),count=query.response.numFound,$scope.histogram[bin].count=count,$scope.updateHistogramChart()},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleTargetQueryUpdate=function(){query=SolrSearchService.getQuery($scope.target),userquery=query.getUserQuery(),query=SolrSearchService.getQuery($scope.startDateQueryName),query.setUserQuery(userquery),query=SolrSearchService.getQuery($scope.endDateQueryName),query.setUserQuery(userquery),$scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName)},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.userquery=query.getUserQuery()}var startDateQuery=SolrSearchService.createQuery();startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery);var endDateQuery=SolrSearchService.createQuery();endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),$scope.updateOnInit&&($scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName))}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate<=$scope.endDate){var query=SolrSearchService.getQuery($scope.target);if(query){var dateRange=$scope.getDateRangeConstraint($scope.startDateField,$scope.startDate,$scope.endDateField,$scope.endDate);query.setQueryParameter("dateRange",dateRange),SolrSearchService.updateQuery($scope.target)}}else $scope.endDate=$scope._endDate,$scope.startDate=$scope._startDate,$log.info("WARNING: start date is greater than end date")},$scope.updateHistogram=function(){var bin,binRange,dateRange,end,histogramQuery,histogramQueryName,i,range,start;for($scope.histogram=[],range=Math.ceil($scope.endDate-$scope.startDate),binRange=Math.ceil(range/$scope.histogramMaxBins),i=0;i<$scope.histogramMaxBins;i++)start=Number($scope.startDate)+binRange*i,end=start+binRange,bin={},bin.start=start,bin.end=end>$scope.endDate?$scope.endDate:end,bin.label=start+" to "+bin.end,bin.count=10*i+5,$scope.histogram.push(bin);for(i=0;i<$scope.histogram.length;i++)bin=$scope.histogram[i],histogramQuery=SolrSearchService.createQuery(),histogramQueryName=$scope.histogramQueryName+"_"+i,dateRange=$scope.getDateRangeConstraint($scope.startDateField,bin.start,$scope.endDateField,bin.end),histogramQuery.setOption("rows","0"),histogramQuery.setQueryParameter("dateRange",dateRange),SolrSearchService.setQuery(histogramQueryName,histogramQuery),$scope.$on(histogramQueryName,function(histogramQueryName){$scope.handleHistogramQueryUpdate(histogramQueryName)}),SolrSearchService.updateQuery(histogramQueryName)},$scope.updateHistogramChart=function(){var margin={top:0,right:10,bottom:0,left:0},height=$scope.histogramHeight-margin.top-margin.bottom,width=$scope.histogramWidth-margin.left-margin.right,formatPercent=d3.format(".0%");d3.select("#date-range-histogram").select("svg").remove();var svg=d3.select("#date-range-histogram").append("svg").attr("width",width+margin.left+margin.right).attr("height",height+margin.top+margin.bottom).append("g").attr("transform","translate("+margin.left+","+margin.top+")"),max=d3.max($scope.histogram,function(d){return d.count}),x=d3.scale.ordinal().rangeBands([$scope.startYear,$scope.endYear]),y=d3.scale.log().domain([0,max]).rangeRound([0,height]);d3.svg.axis().scale(x).orient("bottom"),d3.svg.axis().scale(y).orient("left").tickFormat(formatPercent),x.domain([$scope.startYear,$scope.endYear]),y.domain([0,max]),d3.select("body").append("div").style("background","white").style("border","1px solid #ccc").style("position","absolute").style("z-index","10").style("visibility","hidden").text("a simple tooltip"),svg.selectAll(".bar").data($scope.histogram).enter().append("rect").attr("id",function(d,i){return"histogramBar_"+i}).attr("class","bar").attr("x",function(d,i){return i*(width+margin.left+margin.right)/$scope.histogramMaxBins}).attr("width",(width+margin.left+margin.right)/$scope.histogramMaxBins-1).attr("y",function(d){return height-height*d.count/max}).attr("height",function(d){return height*d.count/max}).on("click",function(d){$scope.endDate=d.end,$scope.startDate=d.start,$scope.submit()}),svg.selectAll(".bar").data($scope.histogram).exit().remove()}}]),angular.module("ngSolr").controller("DocumentSearchResultsController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService","Utils",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService,Utils){function Page(Name,Num){this.name=Name,this.number=Num,this.isCurrent=!1}$scope.documents=[],$scope.documentsPerPage=10,$scope.loading=!1,$scope.page=0,$scope.pages=[],$scope.pagesPerSet=10,$scope.queryName=SolrSearchService.defaultQueryName,$scope.source=void 0,$scope.start=0,$scope.totalPages=1,$scope.totalResults=0,$scope.totalSets=1,$scope.updateLocationOnChange=!0,$scope.userquery="",$scope.handleSetPage=function(Start){var query=SolrSearchService.getQuery($scope.queryName);if(query.setOption("start",Start*$scope.documentsPerPage),$scope.updateLocationOnChange){var hash=query.getHash();$location.path(hash),$window.scrollTo(0,0)}else $scope.loading=!0,SolrSearchService.updateQuery($scope.queryName)},$scope.handleUpdate=function(){$scope.documents=[],$scope.loading=!1;var results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs){$scope.totalResults=results.numFound,$scope.totalPages=Math.ceil($scope.totalResults/$scope.documentsPerPage),$scope.totalSets=Math.ceil($scope.totalPages/$scope.pagesPerSet);for(var i=0;i$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("FacetSelectionController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){var hash,key,query;$scope.items=[],$scope.source=void 0,$scope.target=SolrSearchService.defaultQueryName,$scope.remove=function(Index){query=SolrSearchService.getQuery($scope.target);var oldHash=query.getHash();query.removeFacetByIndex(Index),hash=query.getHash(),$location.path($location.path().replace(oldHash,hash))},$scope.handleUpdate=function(){hash=$routeParams.query||"",(query=SolrSearchService.getQueryFromHash(hash,$scope.source))&&($scope.items=query.getFacets())},$scope.init=function(){for(key in $attrs)$scope.hasOwnProperty(key)&&($scope[key]=$attrs[key]);$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()})},$scope.init()}]),angular.module("ngSolr").controller("FieldFacetController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){function FacetResult(Value,Score){this.value=Value,this.score=Score}var count,f,facet,facet_fields,facets,facet_query,hash,i,key,name,query,results,s,selected_values,value;$scope.exclusive=!0,$scope.facetQuery="facetQuery",$scope.facets=[],$scope.field="",$scope.items=[],$scope.maxItems=7,$scope.queryName=SolrSearchService.defaultQueryName,$scope.selected=!1,$scope.source=void 0,$scope.add=function($event,Index){if(query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),name=$scope.field,value="("+$scope.items[Index].value.split(" ").join("*")+")",facet=query.createFacet(name,value),-1===$scope.facets.indexOf(facet)){var oldHash=query.getHash();query.addFacet(facet),hash=query.getHash(),$location.path()?$location.path($location.path().replace(oldHash,hash)):$location.path(hash)}$event.preventDefault()},$scope.handleUpdate=function(){for($scope.items=[],$scope.selected=!1,selected_values=[],hash=$routeParams.query||void 0,query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),facets=query.getFacets(),i=0;i-1&&($scope.selected=!0,s=f.value.replace(/([\(\[\)\]])+/g,""),s=s.replace(/\*/g," "),selected_values.push(s));if(facet_query=SolrSearchService.getQuery($scope.facetQuery),(results=facet_query.getFacetCounts())&&results.hasOwnProperty("facet_fields"))for(facet_fields=results.facet_fields[$scope.field].length>2*$scope.maxItems?results.facet_fields[$scope.field].splice(0,$scope.maxItems):results.facet_fields[$scope.field],i=0;i=$scope.documentsPerRow||i===results.docs.length-1)&&(count=0,$scope.rows.push(row),row=[])}else $scope.rows=[],$scope.totalResults=0,$scope.totalPages=1,$scope.totalSets=1;$scope.updatePageIndex()},$scope.init=function(){for(var key in $attrs)$scope.hasOwnProperty(key)&&("documentsPerPage"===key||"documentsPerRow"===key||"pagesPerSet"===key?$scope[key]=parseInt($attrs[key]):"true"===$attrs[key]||"false"===$attrs[key]?$scope[key]="true"===$attrs[key]:$scope[key]=$attrs[key]);$scope.$on($scope.queryName,function(){$scope.handleUpdate()}),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.source&&(query.solr=$scope.source),$scope.documentsPerPage=query.getOption("rows")||10,$scope.page=Math.ceil(query.getOption("start")/$scope.documentsPerPage)||0,$scope.userquery=query.getUserQuery(),SolrSearchService.setQuery($scope.queryName,query),SolrSearchService.updateQuery($scope.queryName)}})},$scope.updatePageIndex=function(){$scope.pages=[];var currentSet=Math.floor($scope.page/$scope.pagesPerSet),firstPageInSet=currentSet*$scope.pagesPerSet+1,lastPageInSet=firstPageInSet+$scope.pagesPerSet-1;if(lastPageInSet>$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("MapController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","SelectionSetService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,SelectionSetService,Utils){var i,lat,lng;$scope.categoryToIconMap={default:"img/icon/house.png",corporateBody:"img/icon/corporatebody.png",government:"img/icon/corporatebody.png",organization:"img/icon/corporatebody.png",person:"img/icon/person.png"},$scope.centerOnStart=!0,$scope.clusterManager=null,$scope.clusterOptions={styles:[{height:24,url:"img/map/cluster1.png",width:24},{height:36,url:"img/map/cluster2.png",width:36},{height:48,url:"img/map/cluster3.png",width:48},{height:64,url:"img/map/cluster4.png",width:64},{height:82,url:"img/map/cluster5.png",width:82}]},$scope.clusterResults=!0,$scope.count=5e3,$scope.fields="*",$scope.firstUpdate=!0,$scope.idToMarkerMap={},$scope.infoWindow=new google.maps.InfoWindow,$scope.loading=!1,$scope.map=void 0,$scope.markers=[],$scope.maxFieldLength=120,$scope.queryName="mapQuery",$scope.settings={mapTypeControl:!1,mapTypeId:google.maps.MapTypeId.TERRAIN,navigationControl:!0,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},overviewMapControl:!1,panControl:!0,rotateControl:!0,scaleControl:!0,streetViewControl:!1,zoom:5,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.LARGE}},$scope.showMessages=!0,$scope.showErrors=!0,$scope.source=void 0,$scope.startLatitude=void 0,$scope.startLongitude=void 0,$scope.target="defaultQuery",$scope.createMapQuery=function(){var query=SolrSearchService.createQuery();return query.setOption("fl",$scope.fields),query.setOption("rows",$scope.count),query.addQueryParameter("+location_0_coordinate:*"),query},$scope.getMarker=function(Map,Title,Content,Category,Lat,Lng){var icon=$scope.categoryToIconMap.default;return null!==Category&&Category in $scope.categoryToIconMap&&(icon=$scope.categoryToIconMap[Category]),new google.maps.Marker({icon:icon,map:Map,position:new google.maps.LatLng(Lat,Lng),title:Title,content:Content})},$scope.getMarkerContent=function(Item){var content='
';return Item.dobj_proxy_small&&(content+='
'),content+='",content+='
'+Utils.formatDate(Item.fromDate)+" - "+Utils.formatDate(Item.toDate)+"
",content+='
'+Utils.truncate(Item.abstract,$scope.maxFieldLength)+" ",content+='more
',content+="
"},$scope.handleSelection=function(){$log.info("Map selection updated");var selected=SelectionSetService.getSelectionSet();if(selected){var keys=[];for(var key in selected)selected.hasOwnProperty(key)&&keys.push(key);if(keys.length>0){var id=keys[0],marker=$scope.idToMarkerMap[id];if(marker){var bounds=new google.maps.LatLngBounds;bounds.extend(marker.position),google.maps.event.trigger(marker,"click"),$scope.map.fitBounds(bounds)}}}},$scope.handleUpdate=function(){var bounds=new google.maps.LatLngBounds,results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs)for(i=0;i=$scope.minSearchLength)for(i=0;$scope.hints.length,hintlist.length<$scope.maxHints;i++){token=$scope.hints[i];try{token.indexOf($scope.userquery)>-1&&hintlist.push(token)}catch(err){continue}}return hintlist},$scope.handleSubmit=function(){trimmed=Utils.trim($scope.userquery),""===trimmed&&($scope.userquery="*:*"),query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),query.setNearMatch($scope.nearMatch),query.setUserQuery($scope.userquery),hash=query.getHash(),$scope.redirect?$window.location.href=$scope.redirect+"#"+hash:$location.path(hash)},$scope.handleUpdate=function(){if(query=SolrSearchService.getQuery($scope.searchHintsQuery), +(results=query.getFacetCounts())&&results.hasOwnProperty("facet_fields")&&(result=results.facet_fields[$scope.searchHintsField]))for(i=0;i0?newquery.getUserQuery()!==$scope.queries[0].getUserQuery()&&($scope.queries.unshift(newquery),$scope.queries.length>$scope.maxItems&&$scope.queries.pop()):($scope.queries=[],$scope.queries.push(newquery))},$scope.setQuery=function(QueryIndex){QueryIndex>=0&&QueryIndex<=$scope.queries.length&&(query=$scope.queries[QueryIndex])},$scope.init()}]),angular.module("ngSolr").directive("searchhints",function(){return{restrict:"A",link:function(scope,element){element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})}}}).directive("searchbox",function(){return{link:function(scope,element){element.bind("keyup",function(event){13===event.keyCode?""!==scope.userquery&&scope.handleSubmit(scope.userquery):scope.userquery=event.target.value}),element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})},restrict:"A",scope:!1}}).directive("searchbutton",function(){return{link:function(scope,element){element.bind("click",function(){""!==scope.userquery&&scope.handleSubmit(scope.userquery)})},restrict:"A",scope:!1}}),angular.module("ngSolr").directive("searchbox",["$location","$log","$routeParams","$timeout","$window","SolrSearchService","Utils",function($location,$log,$routeParams,$timeout,$window,SolrSearchService,Utils){return{link:function(scope,element,attrs){scope.showHints=!1,scope.hints=[],scope.maxHints=10,scope.messages=["Enter one or more search terms. Press Enter to search.","Key up or down to navigate hints. Press Enter to search.","Press Enter to search."],scope.message=scope.messages[0],scope.minSearchLength=3,scope.nearMatch=!1,scope.placeHolder="Keyword or place name",scope.queryBuffer=[],scope.redirect=void 0,scope.resetOnChange=!1,scope.searchHintsField="hints",scope.searchHintsQuery="hintsQuery",scope.selectedHint=-1,scope.showMessage=!0,scope.source=void 0,scope.timeout=void 0,scope.userQuery="",scope.clearHintSelection=function(){-1!==scope.selectedHint&&(scope.hints[scope.selectedHint].selected=!1)},scope.handleRouteChange=function(){var hash=$routeParams.query||"";if(""!==hash){var query=SolrSearchService.getQueryFromHash(hash,scope.source);scope.userQuery=query.getUserQuery()}else scope.userQuery=hash},scope.handleSubmit=function(){""===Utils.trim(scope.userQuery)&&(scope.userQuery="*:*");var query=SolrSearchService.getQuery(scope.queryName);void 0===query&&(query=SolrSearchService.createQuery(scope.source)),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery);var hash=query.getHash();scope.redirect?$window.location.href=scope.redirect+"#"+hash:$location.path(hash)},scope.handleUpdate=function(){scope.message=scope.messages[1];var query=SolrSearchService.getQuery(scope.searchHintsQuery),results=query.getFacetCounts();if(results&&results.hasOwnProperty("facet_fields")){scope.hints=[];var result=results.facet_fields[scope.searchHintsField];if(result)for(var i=0;i=scope.minSearchLength&&(scope.timeout&&$timeout.cancel(scope.timeout),scope.timeout=$timeout(function(){var query=SolrSearchService.createQuery(scope.source);query.setOption("rows","0"),query.setOption("facet","true"),query.setOption("facet.limit",scope.maxHints),query.setOption("facet.field",scope.searchHintsField),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery),SolrSearchService.setQuery(scope.searchHintsQuery,query),SolrSearchService.updateQuery(scope.searchHintsQuery)},350))},scope.selectHint=function(index){var hint=scope.hints[index];scope.userQuery=hint.title},scope.init()},replace:!1,restrict:"E",scope:{showHints:"&",nearMatch:"@",placeHolder:"@",queryName:"@",searchHintsField:"@",source:"@"},template:'
  • {{hint.title}}
{{message}}
',transclude:!0}}]),angular.module("ngSolr").filter("cleanFacetLabel",function(){return function(text){var val=text.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" ")}}).filter("prettyFacetLabel",function(){return function(facet){var result=facet.field.replace(/([A-Z])/g," $1"),label=result.charAt(0).toUpperCase()+result.slice(1),val=facet.value.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" "),val=val.replace(" TO ",""),val=val.replace("-01-01T00:00:00Z",""),val=val.replace("-12-31T23:59:59Z",""),label+": "+val}}).filter("strip",function(){return function(text){if(void 0===text)return text;var i=text.indexOf(", ");return-1!==i?text.substring(i+2):text}}).filter("substitute",function(){var map={ACT:"Australian Capital Territory",NSW:"New South Wales",NA:"Australia",NT:"Northern Territory",QLD:"Queensland",SA:"South Australia",TAS:"Tasmania",VIC:"Victoria",WA:"Western Australia"};return function(text){return text in map?map[text]:text}}).filter("swapFacetLabels",function(){return function(label){return 0===label.indexOf("fromDate")?label="toDate"+label.substring(8):0===label.indexOf("From Date")?label="To Date"+label.substring(9):0===label.indexOf("toDate")?label="fromDate"+label.substring(6):0===label.indexOf("To Date")?label="From Date"+label.substring(7):0===label.indexOf("Localtype")&&(label="Type"+label.substring(9)),label}}).filter("trim",function(){return function(text){return void 0===text?text:text.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}}).filter("truncate",function(){return function(text,limit){if(void 0===text)return text;if(text.length>limit){var t=text.substring(0,Math.min(limit,text.length)),i=t.lastIndexOf(" ");if(-1!==i)return text.substring(0,i)+" ..."}return text}}),angular.module("ngSolr").factory("SelectionSetService",["$rootScope",function($rootScope){var svc={};return svc.documents={},svc.multipleSelection=!1,Array.prototype.remove=function(from,to){var rest=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,rest)},svc.add=function(Key,Doc){svc.multipleSelection||(svc.documents={}),svc.documents[Key]=Doc,$rootScope.$broadcast("selectionSetUpdate")},svc.clear=function(){svc.documents={},$rootScope.$broadcast("selectionSetUpdate")},svc.clearSilent=function(){svc.documents={}},svc.get=function(Key){return svc.documents[Key]},svc.getSelectionSet=function(){return svc.documents},svc.remove=function(Key){delete svc.documents[Key],$rootScope.$broadcast("selectionSetUpdate")},svc}]),angular.module("ngSolr").factory("SolrSearchService",["$http","$log","$q","$rootScope","$sce",function($http,$log,$q,$rootScope,$sce){var defaultQuery=function(query){return query.setOption("fl","*"),query.setOption("rows",10),query.setOption("wt","json"),query.setUserQuery("*:*"),query};this.setDefaultQuery=function(Query){defaultQuery=Query};var svc={};return svc.defaultQueryName="defaultQuery",svc.queries={},svc.createQuery=function(Core){var query=new SolrQuery(Core);return defaultQuery(query)},svc.getQuery=function(Name){try{return svc.queries[Name]}catch(Err){return void $log.debug("No query named "+Name+" available")}},svc.getQueryComponents=function(Query){for(var parts=[];Query.length>0;){Query=Query.replace(/^\s\s*/,"");var x=Query.indexOf(" +"),y=Query.indexOf(" -");if(-1===x&&-1===y)return parts.push(Query),parts;x>-1&&(-1===y||x-1&&(parts.push(Query.substring(0,y)),Query=Query.substring(y))}return parts},svc.getQueryFromHash=function(Hash,CoreUrl){for(var query=svc.createQuery(CoreUrl),hash_elements=decodeURI(Hash).split("&"),i=0;i "+error);var response={};response.numFound=0,response.start=0,response.docs=[],query.setErrorMessage(msg),query.setFacetCounts([]),query.setHighlighting({}),query.setResponse(response),query.setResponseHeader({}),$rootScope.$broadcast(QueryName)})},svc}]),angular.module("ngSolr").factory("Utils",[function(){var d,day,i,key,month,months,p,parts,year,svc={};return svc.applyAttributes=function(attrs,scope){for(key in attrs)scope.hasOwnProperty(key)&&("true"===attrs[key]||"false"===attrs[key]?scope[key]="true"===attrs[key]:scope[key]=attrs[key])},svc.arraysAreEqual=function(A,B){return A.join("")===B.join("")},svc.convertMonthIndexToName=function(Index){return months={1:"January",2:"February",3:"March",4:"April",5:"May",6:"June",7:"July",8:"August",9:"September","01":"January","02":"February","03":"March","04":"April","05":"May","06":"June","07":"July","08":"August","09":"September",10:"October",11:"November",12:"December"},months[Index]},svc.formatDate=function(DateField){return DateField&&(i=DateField.indexOf("T"))?(d=DateField.substring(0,i),parts=d.split("-"),year=parts[0],month=svc.convertMonthIndexToName(parts[1]),day=svc.trimLeadingZero(parts[2]),month+", "+year):""},svc.objectsAreEqual=function(A,B){if(A===B)return!0;if(!(A instanceof Object&&B instanceof Object))return!1;if(A.constructor!==B.constructor)return!1;for(p in A)if(A.hasOwnProperty(p)){if(!B.hasOwnProperty(p))return!1;if(A[p]!==B[p]){if("object"!=typeof A[p])return!1;if(!svc.objectsAreEqual(A[p],B[p]))return!1}}for(p in B)if(B.hasOwnProperty(p)&&!A.hasOwnProperty(p))return!1;return!0},svc.startsWith=function(s1,s2){return!(!s1||!s2)&&s1.slice(0,s2.length)===s2},svc.trim=function(Val){return Val.replace(/^\s\s*/,"").replace(/\s\s*$/,"")},svc.trimLeadingZero=function(Val){return Val&&"0"===Val[0]?Val.substring(1):Val},svc.truncate=function(Field,Length){return Field&&Length&&Field.length>Length&&(Field=svc.trim(Field),Field=Field.substring(0,Math.min(Length,Field.length)),-1!==(i=Field.lastIndexOf(" "))&&(Field=Field.substring(0,i)+" ...")),Field},svc}]); //# sourceMappingURL=ngsolr.min.js.map \ No newline at end of file diff --git a/dist/ngsolr.min.js.map b/dist/ngsolr.min.js.map index 6d9530f..55cd8eb 100644 --- a/dist/ngsolr.min.js.map +++ b/dist/ngsolr.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["ngsolr.js"],"names":["SolrFacet","Field","Value","self","this","field","value","options","getOption","Name","getUrlFragment","query","option","hasOwnProperty","setOption","SolrQuery","Url","error","undefined","facets","facet_counts","highlighting","nearMatch","queryParameters","response","responseHeader","solr","addFacet","Facet","i","length","push","addQueryParameter","Parameter","createFacet","getErrorMessage","getFacet","getFacetCounts","getFacets","getHash","getQuery","key2","val","getSolrQueryUrl","encodeURI","getUserQuery","getUserQueryParameters","hasFacet","removeFacet","removeFacetByIndex","Index","splice","removeOption","setErrorMessage","Msg","setFacetCounts","FacetCounts","setHighlighting","Highlighting","setNearMatch","fq","setQueryParameters","Parameters","setResponse","Response","setResponseHeader","Header","setUserQuery","Query","app","angular","module","constant","api","env","defaultQuery","f","config","$routeProvider","when","event","otherwise","controller","$scope","$attrs","$location","$route","$routeParams","SolrSearchService","Utils","date","dateRange","endDateQuery","endDateResults","end_value","end_year","hash","item","start_value","start_year","startDateQuery","startDateResults","yearEnd","yearStart","_endDate","_startDate","endDate","endDateField","endDateQueryName","source","startDate","startDateField","startDateQueryName","updateOnInit","userquery","getDateRangeConstraint","StartDateField","StartDate","EndDateField","EndDate","getFirstDateRecord","Items","FieldName","docs","indexOf","substring","handleEndDateQueryUpdate","getResponse","handleStartDateQueryUpdate","handleUpdate","getQueryFromHash","createQuery","replace","updateFlag","setQuery","updateQuery","init","applyAttributes","$on","submit","path","$log","bin","count","histogram","histogramHeight","histogramMaxBins","histogramQueryName","histogramWidth","target","defaultQueryName","updateHistogram","updateOnTargetChange","handleHistogramQueryUpdate","Event","name","numFound","updateHistogramChart","handleTargetQueryUpdate","setQueryParameter","info","binRange","end","histogramQuery","range","start","Math","ceil","Number","label","margin","top","right","bottom","left","height","width","formatPercent","d3","format","select","remove","svg","append","attr","max","d","x","scale","ordinal","rangeBands","startYear","endYear","y","log","domain","rangeRound","axis","orient","tickFormat","style","text","selectAll","data","enter","on","exit","$window","Page","Num","number","isCurrent","documents","documentsPerPage","loading","page","pages","pagesPerSet","queryName","totalPages","totalResults","totalSets","updateLocationOnChange","handleSetPage","Start","scrollTo","results","fromDate","formatDate","toDate","updatePageIndex","key","parseInt","currentSet","floor","firstPageInSet","lastPageInSet","previousSet","prevPage","nextSet","nextPage","items","FacetResult","Score","score","facet","facet_fields","facet_query","s","selected_values","exclusive","facetQuery","maxItems","selected","add","$event","split","join","preventDefault","documentsPerRow","fields","rows","startPage","row","SelectionSetService","lat","lng","categoryToIconMap","default","corporateBody","government","organization","person","centerOnStart","clusterManager","clusterOptions","styles","url","clusterResults","firstUpdate","idToMarkerMap","infoWindow","google","maps","InfoWindow","map","markers","maxFieldLength","settings","mapTypeControl","mapTypeId","MapTypeId","TERRAIN","navigationControl","navigationControlOptions","NavigationControlStyle","SMALL","overviewMapControl","panControl","rotateControl","scaleControl","streetViewControl","zoom","zoomControl","zoomControlOptions","ZoomControlStyle","LARGE","showMessages","showErrors","startLatitude","startLongitude","createMapQuery","getMarker","Map","Title","Content","Category","Lat","Lng","icon","Marker","position","LatLng","title","content","getMarkerContent","Item","dobj_proxy_small","presentation_url","truncate","abstract","handleSelection","getSelectionSet","keys","id","marker","bounds","LatLngBounds","extend","trigger","fitBounds","location","location_0_coordinate","location_1_coordinate","type","oms","addMarker","document","getElementById","OverlappingMarkerSpiderfier","addListener","close","setContent","open","point","setCenter","setInfoWindow","singleSelection","clearSelection","Id","clear","err","message","clearSilent","hintlist","result","token","trimmed","hints","maxHints","minSearchLength","redirect","resetOnChange","searchHintsField","searchHintsQuery","getHintList","getHints","handleSubmit","trim","href","toLowerCase","newquery","queries","unshift","pop","QueryIndex","directive","restrict","link","scope","element","autocomplete","delay","minLength","request","$","ui","filter","term","slice","bind","keyCode","$timeout","attrs","showHints","messages","placeHolder","queryBuffer","selectedHint","showMessage","timeout","userQuery","clearHintSelection","handleRouteChange","hint","highlightHint","index","$apply","resetHintSelection","children","form_div","query_input","querySelector","hints_div","hints_list","hints_message","onfocus","onblur","onkeyup","offsetWidth","setAttribute","selectHint","cancel","template","transclude","charAt","toUpperCase","ACT","NSW","NA","NT","QLD","SA","TAS","VIC","WA","limit","t","min","lastIndexOf","factory","$rootScope","svc","multipleSelection","Array","prototype","from","to","rest","apply","Key","Doc","$broadcast","get","$http","$q","$sce","setDefaultQuery","Core","Err","debug","getQueryComponents","parts","Hash","CoreUrl","hash_elements","decodeURI","eparts","startsWith","params","shift","j","p","DefaultQuery","s1","s2","updateAllQueries","updateQueriesInOrder","Queries","q","then","QueryName","jsonp","trustAsResourceUrl","jsonpCallbackParam","msg","day","month","months","year","arraysAreEqual","A","B","convertMonthIndexToName","1","2","3","4","5","6","7","8","9","01","02","03","04","05","06","07","08","09","10","11","12","DateField","trimLeadingZero","objectsAreEqual","Object","constructor","Val","Length"],"mappings":"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","file":"ngsolr.min.js"} \ No newline at end of file +{"version":3,"sources":["ngsolr.js"],"names":["SolrFacet","Field","Value","self","this","field","value","options","getOption","Name","getUrlFragment","query","option","hasOwnProperty","setOption","SolrQuery","Url","error","undefined","facets","facet_counts","highlighting","nearMatch","queryParameters","response","responseHeader","solr","addFacet","Facet","i","length","push","addQueryParameter","Parameter","createFacet","getErrorMessage","getFacet","getFacetCounts","getFacets","getHash","getQuery","key2","val","getSolrQueryUrl","encodeURI","getUserQuery","getUserQueryParameters","hasFacet","removeFacet","removeFacetByIndex","Index","splice","removeOption","setErrorMessage","Msg","setFacetCounts","FacetCounts","setHighlighting","Highlighting","setNearMatch","fq","setQueryParameters","Parameters","setResponse","Response","setResponseHeader","Header","setUserQuery","Query","app","angular","module","constant","api","env","defaultQuery","f","config","$routeProvider","when","event","otherwise","controller","$scope","$attrs","$location","$route","$routeParams","SolrSearchService","Utils","date","dateRange","endDateQuery","endDateResults","end_value","end_year","hash","item","start_value","start_year","startDateQuery","startDateResults","yearEnd","yearStart","_endDate","_startDate","endDate","endDateField","endDateQueryName","source","startDate","startDateField","startDateQueryName","updateOnInit","userquery","getDateRangeConstraint","StartDateField","StartDate","EndDateField","EndDate","getFirstDateRecord","Items","FieldName","docs","indexOf","substring","handleEndDateQueryUpdate","getResponse","handleStartDateQueryUpdate","handleUpdate","getQueryFromHash","createQuery","replace","updateFlag","setQuery","updateQuery","init","applyAttributes","$on","submit","path","$log","bin","count","histogram","histogramHeight","histogramMaxBins","histogramQueryName","histogramWidth","target","defaultQueryName","updateHistogram","updateOnTargetChange","handleHistogramQueryUpdate","Event","name","numFound","updateHistogramChart","handleTargetQueryUpdate","setQueryParameter","info","binRange","end","histogramQuery","range","start","Math","ceil","Number","label","margin","top","right","bottom","left","height","width","formatPercent","d3","format","select","remove","svg","append","attr","max","d","x","scale","ordinal","rangeBands","startYear","endYear","y","log","domain","rangeRound","axis","orient","tickFormat","style","text","selectAll","data","enter","on","exit","$window","Page","Num","number","isCurrent","documents","documentsPerPage","loading","page","pages","pagesPerSet","queryName","totalPages","totalResults","totalSets","updateLocationOnChange","handleSetPage","Start","scrollTo","results","fromDate","formatDate","toDate","updatePageIndex","key","parseInt","currentSet","floor","firstPageInSet","lastPageInSet","previousSet","prevPage","nextSet","nextPage","items","oldHash","FacetResult","Score","score","facet","facet_fields","facet_query","s","selected_values","exclusive","facetQuery","maxItems","selected","add","$event","split","join","preventDefault","documentsPerRow","fields","rows","startPage","row","SelectionSetService","lat","lng","categoryToIconMap","default","corporateBody","government","organization","person","centerOnStart","clusterManager","clusterOptions","styles","url","clusterResults","firstUpdate","idToMarkerMap","infoWindow","google","maps","InfoWindow","map","markers","maxFieldLength","settings","mapTypeControl","mapTypeId","MapTypeId","TERRAIN","navigationControl","navigationControlOptions","NavigationControlStyle","SMALL","overviewMapControl","panControl","rotateControl","scaleControl","streetViewControl","zoom","zoomControl","zoomControlOptions","ZoomControlStyle","LARGE","showMessages","showErrors","startLatitude","startLongitude","createMapQuery","getMarker","Map","Title","Content","Category","Lat","Lng","icon","Marker","position","LatLng","title","content","getMarkerContent","Item","dobj_proxy_small","presentation_url","truncate","abstract","handleSelection","getSelectionSet","keys","id","marker","bounds","LatLngBounds","extend","trigger","fitBounds","location","location_0_coordinate","location_1_coordinate","type","oms","addMarker","document","getElementById","OverlappingMarkerSpiderfier","addListener","close","setContent","open","point","setCenter","setInfoWindow","singleSelection","clearSelection","Id","clear","err","message","clearSilent","hintlist","result","token","trimmed","hints","maxHints","minSearchLength","redirect","resetOnChange","searchHintsField","searchHintsQuery","getHintList","getHints","handleSubmit","trim","href","toLowerCase","newquery","queries","unshift","pop","QueryIndex","directive","restrict","link","scope","element","autocomplete","delay","minLength","request","$","ui","filter","term","slice","bind","keyCode","$timeout","attrs","showHints","messages","placeHolder","queryBuffer","selectedHint","showMessage","timeout","userQuery","clearHintSelection","handleRouteChange","hint","highlightHint","index","$apply","resetHintSelection","children","form_div","query_input","querySelector","hints_div","hints_list","hints_message","onfocus","onblur","onkeyup","offsetWidth","setAttribute","selectHint","cancel","template","transclude","charAt","toUpperCase","ACT","NSW","NA","NT","QLD","SA","TAS","VIC","WA","limit","t","min","lastIndexOf","factory","$rootScope","svc","multipleSelection","Array","prototype","from","to","rest","apply","Key","Doc","$broadcast","get","$http","$q","$sce","setDefaultQuery","Core","Err","debug","getQueryComponents","parts","Hash","CoreUrl","hash_elements","decodeURI","eparts","startsWith","params","shift","j","p","DefaultQuery","s1","s2","updateAllQueries","updateQueriesInOrder","Queries","q","then","QueryName","jsonp","trustAsResourceUrl","jsonpCallbackParam","msg","day","month","months","year","arraysAreEqual","A","B","convertMonthIndexToName","1","2","3","4","5","6","7","8","9","01","02","03","04","05","06","07","08","09","10","11","12","DateField","trimLeadingZero","objectsAreEqual","Object","constructor","Val","Length"],"mappings":"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","file":"ngsolr.min.js"} \ No newline at end of file diff --git a/src/examples/index.html b/src/examples/index.html index 58f4b39..0ca6664 100644 --- a/src/examples/index.html +++ b/src/examples/index.html @@ -92,7 +92,7 @@

<%= pkg.name %>

+
Date: Fri, 16 Mar 2018 15:47:21 -0500 Subject: [PATCH 5/6] fix pagination route --- dist/ngsolr.js | 3 ++- dist/ngsolr.min.js | 4 ++-- dist/ngsolr.min.js.map | 2 +- src/ngsolr/controllers/DocumentSearchResultsController.js | 3 ++- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/dist/ngsolr.js b/dist/ngsolr.js index da4a739..ea9b596 100644 --- a/dist/ngsolr.js +++ b/dist/ngsolr.js @@ -704,10 +704,11 @@ angular */ $scope.handleSetPage = function(Start) { var query = SolrSearchService.getQuery($scope.queryName); + var oldHash = query.getHash(); query.setOption('start', Start * $scope.documentsPerPage); if ($scope.updateLocationOnChange) { var hash = query.getHash(); - $location.path(hash); + $location.path($location.path().replace(oldHash, hash)); $window.scrollTo(0, 0); } else { $scope.loading = true; diff --git a/dist/ngsolr.min.js b/dist/ngsolr.min.js index 74124c6..3d0d10e 100644 --- a/dist/ngsolr.min.js +++ b/dist/ngsolr.min.js @@ -1,5 +1,5 @@ -/*! ngSolr - v0.6.1 - 2018-03-14 */ +/*! ngSolr - v0.6.1 - 2018-03-16 */ -"use strict";function SolrFacet(Field,Value){var self=this;self.field=Field,self.value=Value,self.options={},self.getOption=function(Name){return self.options[Name]},self.getUrlFragment=function(){var query="";query+="&fq="+self.field+":"+self.value;for(var option in self.options)self.options.hasOwnProperty(option)&&(query+="&"+option+"="+self.options[option]);return query},self.setOption=function(Name,Value){self.options[Name]=Value}}function SolrQuery(Url){var self=this;self.error=void 0,self.facets=[],self.facet_counts={},self.highlighting={},self.options={},self.nearMatch=!1,self.query="*:*",self.queryParameters=[],self.response={},self.responseHeader={},self.solr=Url,self.addFacet=function(Facet){for(var i=0;i0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){(endDateResults=SolrSearchService.getResponse($scope.endDateQueryName))&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField))},$scope.handleStartDateQueryUpdate=function(){(startDateResults=SolrSearchService.getResponse($scope.startDateQueryName))&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField))},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),f=query.getFacet($scope.endDateField),f?(start_year=f.value.replace("[","").replace("-01-01T00:00:00Z TO *]",""),$scope._startDate=start_year,$scope.startDate=start_year,$scope.updateFlag+=1):(startDateQuery=SolrSearchService.createQuery($scope.source),startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery),SolrSearchService.updateQuery($scope.startDateQueryName)),f=query.getFacet($scope.startDateField),f?(end_year=f.value.replace("[* TO ","").replace("-12-31T23:59:59Z]",""),$scope._endDate=end_year,$scope.endDate=end_year,$scope.updateFlag+=1):(endDateQuery=SolrSearchService.createQuery($scope.source),endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),SolrSearchService.updateQuery($scope.endDateQueryName))},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate>$scope.endDate)return $scope.endDate=$scope._endDate,void($scope.startDate=$scope._startDate);hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),query.removeFacet($scope.startDateField),query.removeFacet($scope.endDateField),start_value="[* TO "+$scope.endDate+"-12-31T23:59:59Z]",end_value="["+$scope.startDate+"-01-01T00:00:00Z TO *]",f=query.createFacet($scope.startDateField,start_value),query.addFacet(f),f=query.createFacet($scope.endDateField,end_value),query.addFacet(f),hash=query.getHash(),$location.path(hash)},$scope.init()}]),angular.module("ngSolr").controller("DateFacetHistogramController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,Utils){var bin,count,date,endDateResults,i,item,query,startDateResults,userquery;$scope._endDate=0,$scope._startDate=0,$scope.endDate=0,$scope.endDateField="toDate",$scope.endDateQueryName="endDateQuery",$scope.histogram=[],$scope.histogramHeight=100,$scope.histogramMaxBins=10,$scope.histogramQueryName="histogramQuery",$scope.histogramWidth=240,$scope.source=void 0,$scope.startDate=0,$scope.startDateField="fromDate",$scope.startDateQueryName="startDateQuery",$scope.target=SolrSearchService.defaultQueryName,$scope.updateFlag=0,$scope.updateHistogram=!0,$scope.updateOnInit=!1,$scope.updateOnTargetChange=!0,$scope.getFirstDateRecord=function(Items,FieldName){return Items&&Items.docs&&Items.docs.length>0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleHistogramQueryUpdate=function(Event){i=Event.name.indexOf("_"),bin=Event.name.substring(i+1,Event.name.length),query=SolrSearchService.getQuery(Event.name),count=query.response.numFound,$scope.histogram[bin].count=count,$scope.updateHistogramChart()},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleTargetQueryUpdate=function(){query=SolrSearchService.getQuery($scope.target),userquery=query.getUserQuery(),query=SolrSearchService.getQuery($scope.startDateQueryName),query.setUserQuery(userquery),query=SolrSearchService.getQuery($scope.endDateQueryName),query.setUserQuery(userquery),$scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName)},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.userquery=query.getUserQuery()}var startDateQuery=SolrSearchService.createQuery();startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery);var endDateQuery=SolrSearchService.createQuery();endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),$scope.updateOnInit&&($scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName))}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate<=$scope.endDate){var query=SolrSearchService.getQuery($scope.target);if(query){var dateRange=$scope.getDateRangeConstraint($scope.startDateField,$scope.startDate,$scope.endDateField,$scope.endDate);query.setQueryParameter("dateRange",dateRange),SolrSearchService.updateQuery($scope.target)}}else $scope.endDate=$scope._endDate,$scope.startDate=$scope._startDate,$log.info("WARNING: start date is greater than end date")},$scope.updateHistogram=function(){var bin,binRange,dateRange,end,histogramQuery,histogramQueryName,i,range,start;for($scope.histogram=[],range=Math.ceil($scope.endDate-$scope.startDate),binRange=Math.ceil(range/$scope.histogramMaxBins),i=0;i<$scope.histogramMaxBins;i++)start=Number($scope.startDate)+binRange*i,end=start+binRange,bin={},bin.start=start,bin.end=end>$scope.endDate?$scope.endDate:end,bin.label=start+" to "+bin.end,bin.count=10*i+5,$scope.histogram.push(bin);for(i=0;i<$scope.histogram.length;i++)bin=$scope.histogram[i],histogramQuery=SolrSearchService.createQuery(),histogramQueryName=$scope.histogramQueryName+"_"+i,dateRange=$scope.getDateRangeConstraint($scope.startDateField,bin.start,$scope.endDateField,bin.end),histogramQuery.setOption("rows","0"),histogramQuery.setQueryParameter("dateRange",dateRange),SolrSearchService.setQuery(histogramQueryName,histogramQuery),$scope.$on(histogramQueryName,function(histogramQueryName){$scope.handleHistogramQueryUpdate(histogramQueryName)}),SolrSearchService.updateQuery(histogramQueryName)},$scope.updateHistogramChart=function(){var margin={top:0,right:10,bottom:0,left:0},height=$scope.histogramHeight-margin.top-margin.bottom,width=$scope.histogramWidth-margin.left-margin.right,formatPercent=d3.format(".0%");d3.select("#date-range-histogram").select("svg").remove();var svg=d3.select("#date-range-histogram").append("svg").attr("width",width+margin.left+margin.right).attr("height",height+margin.top+margin.bottom).append("g").attr("transform","translate("+margin.left+","+margin.top+")"),max=d3.max($scope.histogram,function(d){return d.count}),x=d3.scale.ordinal().rangeBands([$scope.startYear,$scope.endYear]),y=d3.scale.log().domain([0,max]).rangeRound([0,height]);d3.svg.axis().scale(x).orient("bottom"),d3.svg.axis().scale(y).orient("left").tickFormat(formatPercent),x.domain([$scope.startYear,$scope.endYear]),y.domain([0,max]),d3.select("body").append("div").style("background","white").style("border","1px solid #ccc").style("position","absolute").style("z-index","10").style("visibility","hidden").text("a simple tooltip"),svg.selectAll(".bar").data($scope.histogram).enter().append("rect").attr("id",function(d,i){return"histogramBar_"+i}).attr("class","bar").attr("x",function(d,i){return i*(width+margin.left+margin.right)/$scope.histogramMaxBins}).attr("width",(width+margin.left+margin.right)/$scope.histogramMaxBins-1).attr("y",function(d){return height-height*d.count/max}).attr("height",function(d){return height*d.count/max}).on("click",function(d){$scope.endDate=d.end,$scope.startDate=d.start,$scope.submit()}),svg.selectAll(".bar").data($scope.histogram).exit().remove()}}]),angular.module("ngSolr").controller("DocumentSearchResultsController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService","Utils",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService,Utils){function Page(Name,Num){this.name=Name,this.number=Num,this.isCurrent=!1}$scope.documents=[],$scope.documentsPerPage=10,$scope.loading=!1,$scope.page=0,$scope.pages=[],$scope.pagesPerSet=10,$scope.queryName=SolrSearchService.defaultQueryName,$scope.source=void 0,$scope.start=0,$scope.totalPages=1,$scope.totalResults=0,$scope.totalSets=1,$scope.updateLocationOnChange=!0,$scope.userquery="",$scope.handleSetPage=function(Start){var query=SolrSearchService.getQuery($scope.queryName);if(query.setOption("start",Start*$scope.documentsPerPage),$scope.updateLocationOnChange){var hash=query.getHash();$location.path(hash),$window.scrollTo(0,0)}else $scope.loading=!0,SolrSearchService.updateQuery($scope.queryName)},$scope.handleUpdate=function(){$scope.documents=[],$scope.loading=!1;var results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs){$scope.totalResults=results.numFound,$scope.totalPages=Math.ceil($scope.totalResults/$scope.documentsPerPage),$scope.totalSets=Math.ceil($scope.totalPages/$scope.pagesPerSet);for(var i=0;i$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("FacetSelectionController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){var hash,key,query;$scope.items=[],$scope.source=void 0,$scope.target=SolrSearchService.defaultQueryName,$scope.remove=function(Index){query=SolrSearchService.getQuery($scope.target);var oldHash=query.getHash();query.removeFacetByIndex(Index),hash=query.getHash(),$location.path($location.path().replace(oldHash,hash))},$scope.handleUpdate=function(){hash=$routeParams.query||"",(query=SolrSearchService.getQueryFromHash(hash,$scope.source))&&($scope.items=query.getFacets())},$scope.init=function(){for(key in $attrs)$scope.hasOwnProperty(key)&&($scope[key]=$attrs[key]);$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()})},$scope.init()}]),angular.module("ngSolr").controller("FieldFacetController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){function FacetResult(Value,Score){this.value=Value,this.score=Score}var count,f,facet,facet_fields,facets,facet_query,hash,i,key,name,query,results,s,selected_values,value;$scope.exclusive=!0,$scope.facetQuery="facetQuery",$scope.facets=[],$scope.field="",$scope.items=[],$scope.maxItems=7,$scope.queryName=SolrSearchService.defaultQueryName,$scope.selected=!1,$scope.source=void 0,$scope.add=function($event,Index){if(query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),name=$scope.field,value="("+$scope.items[Index].value.split(" ").join("*")+")",facet=query.createFacet(name,value),-1===$scope.facets.indexOf(facet)){var oldHash=query.getHash();query.addFacet(facet),hash=query.getHash(),$location.path()?$location.path($location.path().replace(oldHash,hash)):$location.path(hash)}$event.preventDefault()},$scope.handleUpdate=function(){for($scope.items=[],$scope.selected=!1,selected_values=[],hash=$routeParams.query||void 0,query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),facets=query.getFacets(),i=0;i-1&&($scope.selected=!0,s=f.value.replace(/([\(\[\)\]])+/g,""),s=s.replace(/\*/g," "),selected_values.push(s));if(facet_query=SolrSearchService.getQuery($scope.facetQuery),(results=facet_query.getFacetCounts())&&results.hasOwnProperty("facet_fields"))for(facet_fields=results.facet_fields[$scope.field].length>2*$scope.maxItems?results.facet_fields[$scope.field].splice(0,$scope.maxItems):results.facet_fields[$scope.field],i=0;i=$scope.documentsPerRow||i===results.docs.length-1)&&(count=0,$scope.rows.push(row),row=[])}else $scope.rows=[],$scope.totalResults=0,$scope.totalPages=1,$scope.totalSets=1;$scope.updatePageIndex()},$scope.init=function(){for(var key in $attrs)$scope.hasOwnProperty(key)&&("documentsPerPage"===key||"documentsPerRow"===key||"pagesPerSet"===key?$scope[key]=parseInt($attrs[key]):"true"===$attrs[key]||"false"===$attrs[key]?$scope[key]="true"===$attrs[key]:$scope[key]=$attrs[key]);$scope.$on($scope.queryName,function(){$scope.handleUpdate()}),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.source&&(query.solr=$scope.source),$scope.documentsPerPage=query.getOption("rows")||10,$scope.page=Math.ceil(query.getOption("start")/$scope.documentsPerPage)||0,$scope.userquery=query.getUserQuery(),SolrSearchService.setQuery($scope.queryName,query),SolrSearchService.updateQuery($scope.queryName)}})},$scope.updatePageIndex=function(){$scope.pages=[];var currentSet=Math.floor($scope.page/$scope.pagesPerSet),firstPageInSet=currentSet*$scope.pagesPerSet+1,lastPageInSet=firstPageInSet+$scope.pagesPerSet-1;if(lastPageInSet>$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("MapController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","SelectionSetService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,SelectionSetService,Utils){var i,lat,lng;$scope.categoryToIconMap={default:"img/icon/house.png",corporateBody:"img/icon/corporatebody.png",government:"img/icon/corporatebody.png",organization:"img/icon/corporatebody.png",person:"img/icon/person.png"},$scope.centerOnStart=!0,$scope.clusterManager=null,$scope.clusterOptions={styles:[{height:24,url:"img/map/cluster1.png",width:24},{height:36,url:"img/map/cluster2.png",width:36},{height:48,url:"img/map/cluster3.png",width:48},{height:64,url:"img/map/cluster4.png",width:64},{height:82,url:"img/map/cluster5.png",width:82}]},$scope.clusterResults=!0,$scope.count=5e3,$scope.fields="*",$scope.firstUpdate=!0,$scope.idToMarkerMap={},$scope.infoWindow=new google.maps.InfoWindow,$scope.loading=!1,$scope.map=void 0,$scope.markers=[],$scope.maxFieldLength=120,$scope.queryName="mapQuery",$scope.settings={mapTypeControl:!1,mapTypeId:google.maps.MapTypeId.TERRAIN,navigationControl:!0,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},overviewMapControl:!1,panControl:!0,rotateControl:!0,scaleControl:!0,streetViewControl:!1,zoom:5,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.LARGE}},$scope.showMessages=!0,$scope.showErrors=!0,$scope.source=void 0,$scope.startLatitude=void 0,$scope.startLongitude=void 0,$scope.target="defaultQuery",$scope.createMapQuery=function(){var query=SolrSearchService.createQuery();return query.setOption("fl",$scope.fields),query.setOption("rows",$scope.count),query.addQueryParameter("+location_0_coordinate:*"),query},$scope.getMarker=function(Map,Title,Content,Category,Lat,Lng){var icon=$scope.categoryToIconMap.default;return null!==Category&&Category in $scope.categoryToIconMap&&(icon=$scope.categoryToIconMap[Category]),new google.maps.Marker({icon:icon,map:Map,position:new google.maps.LatLng(Lat,Lng),title:Title,content:Content})},$scope.getMarkerContent=function(Item){var content='
';return Item.dobj_proxy_small&&(content+='
'),content+='",content+='
'+Utils.formatDate(Item.fromDate)+" - "+Utils.formatDate(Item.toDate)+"
",content+='
'+Utils.truncate(Item.abstract,$scope.maxFieldLength)+" ",content+='more
',content+="
"},$scope.handleSelection=function(){$log.info("Map selection updated");var selected=SelectionSetService.getSelectionSet();if(selected){var keys=[];for(var key in selected)selected.hasOwnProperty(key)&&keys.push(key);if(keys.length>0){var id=keys[0],marker=$scope.idToMarkerMap[id];if(marker){var bounds=new google.maps.LatLngBounds;bounds.extend(marker.position),google.maps.event.trigger(marker,"click"),$scope.map.fitBounds(bounds)}}}},$scope.handleUpdate=function(){var bounds=new google.maps.LatLngBounds,results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs)for(i=0;i=$scope.minSearchLength)for(i=0;$scope.hints.length,hintlist.length<$scope.maxHints;i++){token=$scope.hints[i];try{token.indexOf($scope.userquery)>-1&&hintlist.push(token)}catch(err){continue}}return hintlist},$scope.handleSubmit=function(){trimmed=Utils.trim($scope.userquery),""===trimmed&&($scope.userquery="*:*"),query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),query.setNearMatch($scope.nearMatch),query.setUserQuery($scope.userquery),hash=query.getHash(),$scope.redirect?$window.location.href=$scope.redirect+"#"+hash:$location.path(hash)},$scope.handleUpdate=function(){if(query=SolrSearchService.getQuery($scope.searchHintsQuery), +"use strict";function SolrFacet(Field,Value){var self=this;self.field=Field,self.value=Value,self.options={},self.getOption=function(Name){return self.options[Name]},self.getUrlFragment=function(){var query="";query+="&fq="+self.field+":"+self.value;for(var option in self.options)self.options.hasOwnProperty(option)&&(query+="&"+option+"="+self.options[option]);return query},self.setOption=function(Name,Value){self.options[Name]=Value}}function SolrQuery(Url){var self=this;self.error=void 0,self.facets=[],self.facet_counts={},self.highlighting={},self.options={},self.nearMatch=!1,self.query="*:*",self.queryParameters=[],self.response={},self.responseHeader={},self.solr=Url,self.addFacet=function(Facet){for(var i=0;i0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){(endDateResults=SolrSearchService.getResponse($scope.endDateQueryName))&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField))},$scope.handleStartDateQueryUpdate=function(){(startDateResults=SolrSearchService.getResponse($scope.startDateQueryName))&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField))},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),f=query.getFacet($scope.endDateField),f?(start_year=f.value.replace("[","").replace("-01-01T00:00:00Z TO *]",""),$scope._startDate=start_year,$scope.startDate=start_year,$scope.updateFlag+=1):(startDateQuery=SolrSearchService.createQuery($scope.source),startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery),SolrSearchService.updateQuery($scope.startDateQueryName)),f=query.getFacet($scope.startDateField),f?(end_year=f.value.replace("[* TO ","").replace("-12-31T23:59:59Z]",""),$scope._endDate=end_year,$scope.endDate=end_year,$scope.updateFlag+=1):(endDateQuery=SolrSearchService.createQuery($scope.source),endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),SolrSearchService.updateQuery($scope.endDateQueryName))},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate>$scope.endDate)return $scope.endDate=$scope._endDate,void($scope.startDate=$scope._startDate);hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),query.removeFacet($scope.startDateField),query.removeFacet($scope.endDateField),start_value="[* TO "+$scope.endDate+"-12-31T23:59:59Z]",end_value="["+$scope.startDate+"-01-01T00:00:00Z TO *]",f=query.createFacet($scope.startDateField,start_value),query.addFacet(f),f=query.createFacet($scope.endDateField,end_value),query.addFacet(f),hash=query.getHash(),$location.path(hash)},$scope.init()}]),angular.module("ngSolr").controller("DateFacetHistogramController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,Utils){var bin,count,date,endDateResults,i,item,query,startDateResults,userquery;$scope._endDate=0,$scope._startDate=0,$scope.endDate=0,$scope.endDateField="toDate",$scope.endDateQueryName="endDateQuery",$scope.histogram=[],$scope.histogramHeight=100,$scope.histogramMaxBins=10,$scope.histogramQueryName="histogramQuery",$scope.histogramWidth=240,$scope.source=void 0,$scope.startDate=0,$scope.startDateField="fromDate",$scope.startDateQueryName="startDateQuery",$scope.target=SolrSearchService.defaultQueryName,$scope.updateFlag=0,$scope.updateHistogram=!0,$scope.updateOnInit=!1,$scope.updateOnTargetChange=!0,$scope.getFirstDateRecord=function(Items,FieldName){return Items&&Items.docs&&Items.docs.length>0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleHistogramQueryUpdate=function(Event){i=Event.name.indexOf("_"),bin=Event.name.substring(i+1,Event.name.length),query=SolrSearchService.getQuery(Event.name),count=query.response.numFound,$scope.histogram[bin].count=count,$scope.updateHistogramChart()},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleTargetQueryUpdate=function(){query=SolrSearchService.getQuery($scope.target),userquery=query.getUserQuery(),query=SolrSearchService.getQuery($scope.startDateQueryName),query.setUserQuery(userquery),query=SolrSearchService.getQuery($scope.endDateQueryName),query.setUserQuery(userquery),$scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName)},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.userquery=query.getUserQuery()}var startDateQuery=SolrSearchService.createQuery();startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery);var endDateQuery=SolrSearchService.createQuery();endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),$scope.updateOnInit&&($scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName))}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate<=$scope.endDate){var query=SolrSearchService.getQuery($scope.target);if(query){var dateRange=$scope.getDateRangeConstraint($scope.startDateField,$scope.startDate,$scope.endDateField,$scope.endDate);query.setQueryParameter("dateRange",dateRange),SolrSearchService.updateQuery($scope.target)}}else $scope.endDate=$scope._endDate,$scope.startDate=$scope._startDate,$log.info("WARNING: start date is greater than end date")},$scope.updateHistogram=function(){var bin,binRange,dateRange,end,histogramQuery,histogramQueryName,i,range,start;for($scope.histogram=[],range=Math.ceil($scope.endDate-$scope.startDate),binRange=Math.ceil(range/$scope.histogramMaxBins),i=0;i<$scope.histogramMaxBins;i++)start=Number($scope.startDate)+binRange*i,end=start+binRange,bin={},bin.start=start,bin.end=end>$scope.endDate?$scope.endDate:end,bin.label=start+" to "+bin.end,bin.count=10*i+5,$scope.histogram.push(bin);for(i=0;i<$scope.histogram.length;i++)bin=$scope.histogram[i],histogramQuery=SolrSearchService.createQuery(),histogramQueryName=$scope.histogramQueryName+"_"+i,dateRange=$scope.getDateRangeConstraint($scope.startDateField,bin.start,$scope.endDateField,bin.end),histogramQuery.setOption("rows","0"),histogramQuery.setQueryParameter("dateRange",dateRange),SolrSearchService.setQuery(histogramQueryName,histogramQuery),$scope.$on(histogramQueryName,function(histogramQueryName){$scope.handleHistogramQueryUpdate(histogramQueryName)}),SolrSearchService.updateQuery(histogramQueryName)},$scope.updateHistogramChart=function(){var margin={top:0,right:10,bottom:0,left:0},height=$scope.histogramHeight-margin.top-margin.bottom,width=$scope.histogramWidth-margin.left-margin.right,formatPercent=d3.format(".0%");d3.select("#date-range-histogram").select("svg").remove();var svg=d3.select("#date-range-histogram").append("svg").attr("width",width+margin.left+margin.right).attr("height",height+margin.top+margin.bottom).append("g").attr("transform","translate("+margin.left+","+margin.top+")"),max=d3.max($scope.histogram,function(d){return d.count}),x=d3.scale.ordinal().rangeBands([$scope.startYear,$scope.endYear]),y=d3.scale.log().domain([0,max]).rangeRound([0,height]);d3.svg.axis().scale(x).orient("bottom"),d3.svg.axis().scale(y).orient("left").tickFormat(formatPercent),x.domain([$scope.startYear,$scope.endYear]),y.domain([0,max]),d3.select("body").append("div").style("background","white").style("border","1px solid #ccc").style("position","absolute").style("z-index","10").style("visibility","hidden").text("a simple tooltip"),svg.selectAll(".bar").data($scope.histogram).enter().append("rect").attr("id",function(d,i){return"histogramBar_"+i}).attr("class","bar").attr("x",function(d,i){return i*(width+margin.left+margin.right)/$scope.histogramMaxBins}).attr("width",(width+margin.left+margin.right)/$scope.histogramMaxBins-1).attr("y",function(d){return height-height*d.count/max}).attr("height",function(d){return height*d.count/max}).on("click",function(d){$scope.endDate=d.end,$scope.startDate=d.start,$scope.submit()}),svg.selectAll(".bar").data($scope.histogram).exit().remove()}}]),angular.module("ngSolr").controller("DocumentSearchResultsController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService","Utils",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService,Utils){function Page(Name,Num){this.name=Name,this.number=Num,this.isCurrent=!1}$scope.documents=[],$scope.documentsPerPage=10,$scope.loading=!1,$scope.page=0,$scope.pages=[],$scope.pagesPerSet=10,$scope.queryName=SolrSearchService.defaultQueryName,$scope.source=void 0,$scope.start=0,$scope.totalPages=1,$scope.totalResults=0,$scope.totalSets=1,$scope.updateLocationOnChange=!0,$scope.userquery="",$scope.handleSetPage=function(Start){var query=SolrSearchService.getQuery($scope.queryName),oldHash=query.getHash();if(query.setOption("start",Start*$scope.documentsPerPage),$scope.updateLocationOnChange){var hash=query.getHash();$location.path($location.path().replace(oldHash,hash)),$window.scrollTo(0,0)}else $scope.loading=!0,SolrSearchService.updateQuery($scope.queryName)},$scope.handleUpdate=function(){$scope.documents=[],$scope.loading=!1;var results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs){$scope.totalResults=results.numFound,$scope.totalPages=Math.ceil($scope.totalResults/$scope.documentsPerPage),$scope.totalSets=Math.ceil($scope.totalPages/$scope.pagesPerSet);for(var i=0;i$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("FacetSelectionController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){var hash,key,query;$scope.items=[],$scope.source=void 0,$scope.target=SolrSearchService.defaultQueryName,$scope.remove=function(Index){query=SolrSearchService.getQuery($scope.target);var oldHash=query.getHash();query.removeFacetByIndex(Index),hash=query.getHash(),$location.path($location.path().replace(oldHash,hash))},$scope.handleUpdate=function(){hash=$routeParams.query||"",(query=SolrSearchService.getQueryFromHash(hash,$scope.source))&&($scope.items=query.getFacets())},$scope.init=function(){for(key in $attrs)$scope.hasOwnProperty(key)&&($scope[key]=$attrs[key]);$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()})},$scope.init()}]),angular.module("ngSolr").controller("FieldFacetController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){function FacetResult(Value,Score){this.value=Value,this.score=Score}var count,f,facet,facet_fields,facets,facet_query,hash,i,key,name,query,results,s,selected_values,value;$scope.exclusive=!0,$scope.facetQuery="facetQuery",$scope.facets=[],$scope.field="",$scope.items=[],$scope.maxItems=7,$scope.queryName=SolrSearchService.defaultQueryName,$scope.selected=!1,$scope.source=void 0,$scope.add=function($event,Index){if(query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),name=$scope.field,value="("+$scope.items[Index].value.split(" ").join("*")+")",facet=query.createFacet(name,value),-1===$scope.facets.indexOf(facet)){var oldHash=query.getHash();query.addFacet(facet),hash=query.getHash(),$location.path()?$location.path($location.path().replace(oldHash,hash)):$location.path(hash)}$event.preventDefault()},$scope.handleUpdate=function(){for($scope.items=[],$scope.selected=!1,selected_values=[],hash=$routeParams.query||void 0,query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),facets=query.getFacets(),i=0;i-1&&($scope.selected=!0,s=f.value.replace(/([\(\[\)\]])+/g,""),s=s.replace(/\*/g," "),selected_values.push(s));if(facet_query=SolrSearchService.getQuery($scope.facetQuery),(results=facet_query.getFacetCounts())&&results.hasOwnProperty("facet_fields"))for(facet_fields=results.facet_fields[$scope.field].length>2*$scope.maxItems?results.facet_fields[$scope.field].splice(0,$scope.maxItems):results.facet_fields[$scope.field],i=0;i=$scope.documentsPerRow||i===results.docs.length-1)&&(count=0,$scope.rows.push(row),row=[])}else $scope.rows=[],$scope.totalResults=0,$scope.totalPages=1,$scope.totalSets=1;$scope.updatePageIndex()},$scope.init=function(){for(var key in $attrs)$scope.hasOwnProperty(key)&&("documentsPerPage"===key||"documentsPerRow"===key||"pagesPerSet"===key?$scope[key]=parseInt($attrs[key]):"true"===$attrs[key]||"false"===$attrs[key]?$scope[key]="true"===$attrs[key]:$scope[key]=$attrs[key]);$scope.$on($scope.queryName,function(){$scope.handleUpdate()}),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.source&&(query.solr=$scope.source),$scope.documentsPerPage=query.getOption("rows")||10,$scope.page=Math.ceil(query.getOption("start")/$scope.documentsPerPage)||0,$scope.userquery=query.getUserQuery(),SolrSearchService.setQuery($scope.queryName,query),SolrSearchService.updateQuery($scope.queryName)}})},$scope.updatePageIndex=function(){$scope.pages=[];var currentSet=Math.floor($scope.page/$scope.pagesPerSet),firstPageInSet=currentSet*$scope.pagesPerSet+1,lastPageInSet=firstPageInSet+$scope.pagesPerSet-1;if(lastPageInSet>$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("MapController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","SelectionSetService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,SelectionSetService,Utils){var i,lat,lng;$scope.categoryToIconMap={default:"img/icon/house.png",corporateBody:"img/icon/corporatebody.png",government:"img/icon/corporatebody.png",organization:"img/icon/corporatebody.png",person:"img/icon/person.png"},$scope.centerOnStart=!0,$scope.clusterManager=null,$scope.clusterOptions={styles:[{height:24,url:"img/map/cluster1.png",width:24},{height:36,url:"img/map/cluster2.png",width:36},{height:48,url:"img/map/cluster3.png",width:48},{height:64,url:"img/map/cluster4.png",width:64},{height:82,url:"img/map/cluster5.png",width:82}]},$scope.clusterResults=!0,$scope.count=5e3,$scope.fields="*",$scope.firstUpdate=!0,$scope.idToMarkerMap={},$scope.infoWindow=new google.maps.InfoWindow,$scope.loading=!1,$scope.map=void 0,$scope.markers=[],$scope.maxFieldLength=120,$scope.queryName="mapQuery",$scope.settings={mapTypeControl:!1,mapTypeId:google.maps.MapTypeId.TERRAIN,navigationControl:!0,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},overviewMapControl:!1,panControl:!0,rotateControl:!0,scaleControl:!0,streetViewControl:!1,zoom:5,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.LARGE}},$scope.showMessages=!0,$scope.showErrors=!0,$scope.source=void 0,$scope.startLatitude=void 0,$scope.startLongitude=void 0,$scope.target="defaultQuery",$scope.createMapQuery=function(){var query=SolrSearchService.createQuery();return query.setOption("fl",$scope.fields),query.setOption("rows",$scope.count),query.addQueryParameter("+location_0_coordinate:*"),query},$scope.getMarker=function(Map,Title,Content,Category,Lat,Lng){var icon=$scope.categoryToIconMap.default;return null!==Category&&Category in $scope.categoryToIconMap&&(icon=$scope.categoryToIconMap[Category]),new google.maps.Marker({icon:icon,map:Map,position:new google.maps.LatLng(Lat,Lng),title:Title,content:Content})},$scope.getMarkerContent=function(Item){var content='
';return Item.dobj_proxy_small&&(content+='
'),content+='",content+='
'+Utils.formatDate(Item.fromDate)+" - "+Utils.formatDate(Item.toDate)+"
",content+='
'+Utils.truncate(Item.abstract,$scope.maxFieldLength)+" ",content+='more
',content+="
"},$scope.handleSelection=function(){$log.info("Map selection updated");var selected=SelectionSetService.getSelectionSet();if(selected){var keys=[];for(var key in selected)selected.hasOwnProperty(key)&&keys.push(key);if(keys.length>0){var id=keys[0],marker=$scope.idToMarkerMap[id];if(marker){var bounds=new google.maps.LatLngBounds;bounds.extend(marker.position),google.maps.event.trigger(marker,"click"),$scope.map.fitBounds(bounds)}}}},$scope.handleUpdate=function(){var bounds=new google.maps.LatLngBounds,results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs)for(i=0;i=$scope.minSearchLength)for(i=0;$scope.hints.length,hintlist.length<$scope.maxHints;i++){token=$scope.hints[i];try{token.indexOf($scope.userquery)>-1&&hintlist.push(token)}catch(err){continue}}return hintlist},$scope.handleSubmit=function(){trimmed=Utils.trim($scope.userquery),""===trimmed&&($scope.userquery="*:*"),query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),query.setNearMatch($scope.nearMatch),query.setUserQuery($scope.userquery),hash=query.getHash(),$scope.redirect?$window.location.href=$scope.redirect+"#"+hash:$location.path(hash)},$scope.handleUpdate=function(){if(query=SolrSearchService.getQuery($scope.searchHintsQuery), (results=query.getFacetCounts())&&results.hasOwnProperty("facet_fields")&&(result=results.facet_fields[$scope.searchHintsField]))for(i=0;i0?newquery.getUserQuery()!==$scope.queries[0].getUserQuery()&&($scope.queries.unshift(newquery),$scope.queries.length>$scope.maxItems&&$scope.queries.pop()):($scope.queries=[],$scope.queries.push(newquery))},$scope.setQuery=function(QueryIndex){QueryIndex>=0&&QueryIndex<=$scope.queries.length&&(query=$scope.queries[QueryIndex])},$scope.init()}]),angular.module("ngSolr").directive("searchhints",function(){return{restrict:"A",link:function(scope,element){element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})}}}).directive("searchbox",function(){return{link:function(scope,element){element.bind("keyup",function(event){13===event.keyCode?""!==scope.userquery&&scope.handleSubmit(scope.userquery):scope.userquery=event.target.value}),element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})},restrict:"A",scope:!1}}).directive("searchbutton",function(){return{link:function(scope,element){element.bind("click",function(){""!==scope.userquery&&scope.handleSubmit(scope.userquery)})},restrict:"A",scope:!1}}),angular.module("ngSolr").directive("searchbox",["$location","$log","$routeParams","$timeout","$window","SolrSearchService","Utils",function($location,$log,$routeParams,$timeout,$window,SolrSearchService,Utils){return{link:function(scope,element,attrs){scope.showHints=!1,scope.hints=[],scope.maxHints=10,scope.messages=["Enter one or more search terms. Press Enter to search.","Key up or down to navigate hints. Press Enter to search.","Press Enter to search."],scope.message=scope.messages[0],scope.minSearchLength=3,scope.nearMatch=!1,scope.placeHolder="Keyword or place name",scope.queryBuffer=[],scope.redirect=void 0,scope.resetOnChange=!1,scope.searchHintsField="hints",scope.searchHintsQuery="hintsQuery",scope.selectedHint=-1,scope.showMessage=!0,scope.source=void 0,scope.timeout=void 0,scope.userQuery="",scope.clearHintSelection=function(){-1!==scope.selectedHint&&(scope.hints[scope.selectedHint].selected=!1)},scope.handleRouteChange=function(){var hash=$routeParams.query||"";if(""!==hash){var query=SolrSearchService.getQueryFromHash(hash,scope.source);scope.userQuery=query.getUserQuery()}else scope.userQuery=hash},scope.handleSubmit=function(){""===Utils.trim(scope.userQuery)&&(scope.userQuery="*:*");var query=SolrSearchService.getQuery(scope.queryName);void 0===query&&(query=SolrSearchService.createQuery(scope.source)),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery);var hash=query.getHash();scope.redirect?$window.location.href=scope.redirect+"#"+hash:$location.path(hash)},scope.handleUpdate=function(){scope.message=scope.messages[1];var query=SolrSearchService.getQuery(scope.searchHintsQuery),results=query.getFacetCounts();if(results&&results.hasOwnProperty("facet_fields")){scope.hints=[];var result=results.facet_fields[scope.searchHintsField];if(result)for(var i=0;i=scope.minSearchLength&&(scope.timeout&&$timeout.cancel(scope.timeout),scope.timeout=$timeout(function(){var query=SolrSearchService.createQuery(scope.source);query.setOption("rows","0"),query.setOption("facet","true"),query.setOption("facet.limit",scope.maxHints),query.setOption("facet.field",scope.searchHintsField),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery),SolrSearchService.setQuery(scope.searchHintsQuery,query),SolrSearchService.updateQuery(scope.searchHintsQuery)},350))},scope.selectHint=function(index){var hint=scope.hints[index];scope.userQuery=hint.title},scope.init()},replace:!1,restrict:"E",scope:{showHints:"&",nearMatch:"@",placeHolder:"@",queryName:"@",searchHintsField:"@",source:"@"},template:'
  • {{hint.title}}
{{message}}
',transclude:!0}}]),angular.module("ngSolr").filter("cleanFacetLabel",function(){return function(text){var val=text.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" ")}}).filter("prettyFacetLabel",function(){return function(facet){var result=facet.field.replace(/([A-Z])/g," $1"),label=result.charAt(0).toUpperCase()+result.slice(1),val=facet.value.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" "),val=val.replace(" TO ",""),val=val.replace("-01-01T00:00:00Z",""),val=val.replace("-12-31T23:59:59Z",""),label+": "+val}}).filter("strip",function(){return function(text){if(void 0===text)return text;var i=text.indexOf(", ");return-1!==i?text.substring(i+2):text}}).filter("substitute",function(){var map={ACT:"Australian Capital Territory",NSW:"New South Wales",NA:"Australia",NT:"Northern Territory",QLD:"Queensland",SA:"South Australia",TAS:"Tasmania",VIC:"Victoria",WA:"Western Australia"};return function(text){return text in map?map[text]:text}}).filter("swapFacetLabels",function(){return function(label){return 0===label.indexOf("fromDate")?label="toDate"+label.substring(8):0===label.indexOf("From Date")?label="To Date"+label.substring(9):0===label.indexOf("toDate")?label="fromDate"+label.substring(6):0===label.indexOf("To Date")?label="From Date"+label.substring(7):0===label.indexOf("Localtype")&&(label="Type"+label.substring(9)),label}}).filter("trim",function(){return function(text){return void 0===text?text:text.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}}).filter("truncate",function(){return function(text,limit){if(void 0===text)return text;if(text.length>limit){var t=text.substring(0,Math.min(limit,text.length)),i=t.lastIndexOf(" ");if(-1!==i)return text.substring(0,i)+" ..."}return text}}),angular.module("ngSolr").factory("SelectionSetService",["$rootScope",function($rootScope){var svc={};return svc.documents={},svc.multipleSelection=!1,Array.prototype.remove=function(from,to){var rest=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,rest)},svc.add=function(Key,Doc){svc.multipleSelection||(svc.documents={}),svc.documents[Key]=Doc,$rootScope.$broadcast("selectionSetUpdate")},svc.clear=function(){svc.documents={},$rootScope.$broadcast("selectionSetUpdate")},svc.clearSilent=function(){svc.documents={}},svc.get=function(Key){return svc.documents[Key]},svc.getSelectionSet=function(){return svc.documents},svc.remove=function(Key){delete svc.documents[Key],$rootScope.$broadcast("selectionSetUpdate")},svc}]),angular.module("ngSolr").factory("SolrSearchService",["$http","$log","$q","$rootScope","$sce",function($http,$log,$q,$rootScope,$sce){var defaultQuery=function(query){return query.setOption("fl","*"),query.setOption("rows",10),query.setOption("wt","json"),query.setUserQuery("*:*"),query};this.setDefaultQuery=function(Query){defaultQuery=Query};var svc={};return svc.defaultQueryName="defaultQuery",svc.queries={},svc.createQuery=function(Core){var query=new SolrQuery(Core);return defaultQuery(query)},svc.getQuery=function(Name){try{return svc.queries[Name]}catch(Err){return void $log.debug("No query named "+Name+" available")}},svc.getQueryComponents=function(Query){for(var parts=[];Query.length>0;){Query=Query.replace(/^\s\s*/,"");var x=Query.indexOf(" +"),y=Query.indexOf(" -");if(-1===x&&-1===y)return parts.push(Query),parts;x>-1&&(-1===y||x-1&&(parts.push(Query.substring(0,y)),Query=Query.substring(y))}return parts},svc.getQueryFromHash=function(Hash,CoreUrl){for(var query=svc.createQuery(CoreUrl),hash_elements=decodeURI(Hash).split("&"),i=0;i "+error);var response={};response.numFound=0,response.start=0,response.docs=[],query.setErrorMessage(msg),query.setFacetCounts([]),query.setHighlighting({}),query.setResponse(response),query.setResponseHeader({}),$rootScope.$broadcast(QueryName)})},svc}]),angular.module("ngSolr").factory("Utils",[function(){var d,day,i,key,month,months,p,parts,year,svc={};return svc.applyAttributes=function(attrs,scope){for(key in attrs)scope.hasOwnProperty(key)&&("true"===attrs[key]||"false"===attrs[key]?scope[key]="true"===attrs[key]:scope[key]=attrs[key])},svc.arraysAreEqual=function(A,B){return A.join("")===B.join("")},svc.convertMonthIndexToName=function(Index){return months={1:"January",2:"February",3:"March",4:"April",5:"May",6:"June",7:"July",8:"August",9:"September","01":"January","02":"February","03":"March","04":"April","05":"May","06":"June","07":"July","08":"August","09":"September",10:"October",11:"November",12:"December"},months[Index]},svc.formatDate=function(DateField){return DateField&&(i=DateField.indexOf("T"))?(d=DateField.substring(0,i),parts=d.split("-"),year=parts[0],month=svc.convertMonthIndexToName(parts[1]),day=svc.trimLeadingZero(parts[2]),month+", "+year):""},svc.objectsAreEqual=function(A,B){if(A===B)return!0;if(!(A instanceof Object&&B instanceof Object))return!1;if(A.constructor!==B.constructor)return!1;for(p in A)if(A.hasOwnProperty(p)){if(!B.hasOwnProperty(p))return!1;if(A[p]!==B[p]){if("object"!=typeof A[p])return!1;if(!svc.objectsAreEqual(A[p],B[p]))return!1}}for(p in B)if(B.hasOwnProperty(p)&&!A.hasOwnProperty(p))return!1;return!0},svc.startsWith=function(s1,s2){return!(!s1||!s2)&&s1.slice(0,s2.length)===s2},svc.trim=function(Val){return Val.replace(/^\s\s*/,"").replace(/\s\s*$/,"")},svc.trimLeadingZero=function(Val){return Val&&"0"===Val[0]?Val.substring(1):Val},svc.truncate=function(Field,Length){return Field&&Length&&Field.length>Length&&(Field=svc.trim(Field),Field=Field.substring(0,Math.min(Length,Field.length)),-1!==(i=Field.lastIndexOf(" "))&&(Field=Field.substring(0,i)+" ...")),Field},svc}]); //# sourceMappingURL=ngsolr.min.js.map \ No newline at end of file diff --git a/dist/ngsolr.min.js.map b/dist/ngsolr.min.js.map index 55cd8eb..33e4a7c 100644 --- a/dist/ngsolr.min.js.map +++ b/dist/ngsolr.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["ngsolr.js"],"names":["SolrFacet","Field","Value","self","this","field","value","options","getOption","Name","getUrlFragment","query","option","hasOwnProperty","setOption","SolrQuery","Url","error","undefined","facets","facet_counts","highlighting","nearMatch","queryParameters","response","responseHeader","solr","addFacet","Facet","i","length","push","addQueryParameter","Parameter","createFacet","getErrorMessage","getFacet","getFacetCounts","getFacets","getHash","getQuery","key2","val","getSolrQueryUrl","encodeURI","getUserQuery","getUserQueryParameters","hasFacet","removeFacet","removeFacetByIndex","Index","splice","removeOption","setErrorMessage","Msg","setFacetCounts","FacetCounts","setHighlighting","Highlighting","setNearMatch","fq","setQueryParameters","Parameters","setResponse","Response","setResponseHeader","Header","setUserQuery","Query","app","angular","module","constant","api","env","defaultQuery","f","config","$routeProvider","when","event","otherwise","controller","$scope","$attrs","$location","$route","$routeParams","SolrSearchService","Utils","date","dateRange","endDateQuery","endDateResults","end_value","end_year","hash","item","start_value","start_year","startDateQuery","startDateResults","yearEnd","yearStart","_endDate","_startDate","endDate","endDateField","endDateQueryName","source","startDate","startDateField","startDateQueryName","updateOnInit","userquery","getDateRangeConstraint","StartDateField","StartDate","EndDateField","EndDate","getFirstDateRecord","Items","FieldName","docs","indexOf","substring","handleEndDateQueryUpdate","getResponse","handleStartDateQueryUpdate","handleUpdate","getQueryFromHash","createQuery","replace","updateFlag","setQuery","updateQuery","init","applyAttributes","$on","submit","path","$log","bin","count","histogram","histogramHeight","histogramMaxBins","histogramQueryName","histogramWidth","target","defaultQueryName","updateHistogram","updateOnTargetChange","handleHistogramQueryUpdate","Event","name","numFound","updateHistogramChart","handleTargetQueryUpdate","setQueryParameter","info","binRange","end","histogramQuery","range","start","Math","ceil","Number","label","margin","top","right","bottom","left","height","width","formatPercent","d3","format","select","remove","svg","append","attr","max","d","x","scale","ordinal","rangeBands","startYear","endYear","y","log","domain","rangeRound","axis","orient","tickFormat","style","text","selectAll","data","enter","on","exit","$window","Page","Num","number","isCurrent","documents","documentsPerPage","loading","page","pages","pagesPerSet","queryName","totalPages","totalResults","totalSets","updateLocationOnChange","handleSetPage","Start","scrollTo","results","fromDate","formatDate","toDate","updatePageIndex","key","parseInt","currentSet","floor","firstPageInSet","lastPageInSet","previousSet","prevPage","nextSet","nextPage","items","oldHash","FacetResult","Score","score","facet","facet_fields","facet_query","s","selected_values","exclusive","facetQuery","maxItems","selected","add","$event","split","join","preventDefault","documentsPerRow","fields","rows","startPage","row","SelectionSetService","lat","lng","categoryToIconMap","default","corporateBody","government","organization","person","centerOnStart","clusterManager","clusterOptions","styles","url","clusterResults","firstUpdate","idToMarkerMap","infoWindow","google","maps","InfoWindow","map","markers","maxFieldLength","settings","mapTypeControl","mapTypeId","MapTypeId","TERRAIN","navigationControl","navigationControlOptions","NavigationControlStyle","SMALL","overviewMapControl","panControl","rotateControl","scaleControl","streetViewControl","zoom","zoomControl","zoomControlOptions","ZoomControlStyle","LARGE","showMessages","showErrors","startLatitude","startLongitude","createMapQuery","getMarker","Map","Title","Content","Category","Lat","Lng","icon","Marker","position","LatLng","title","content","getMarkerContent","Item","dobj_proxy_small","presentation_url","truncate","abstract","handleSelection","getSelectionSet","keys","id","marker","bounds","LatLngBounds","extend","trigger","fitBounds","location","location_0_coordinate","location_1_coordinate","type","oms","addMarker","document","getElementById","OverlappingMarkerSpiderfier","addListener","close","setContent","open","point","setCenter","setInfoWindow","singleSelection","clearSelection","Id","clear","err","message","clearSilent","hintlist","result","token","trimmed","hints","maxHints","minSearchLength","redirect","resetOnChange","searchHintsField","searchHintsQuery","getHintList","getHints","handleSubmit","trim","href","toLowerCase","newquery","queries","unshift","pop","QueryIndex","directive","restrict","link","scope","element","autocomplete","delay","minLength","request","$","ui","filter","term","slice","bind","keyCode","$timeout","attrs","showHints","messages","placeHolder","queryBuffer","selectedHint","showMessage","timeout","userQuery","clearHintSelection","handleRouteChange","hint","highlightHint","index","$apply","resetHintSelection","children","form_div","query_input","querySelector","hints_div","hints_list","hints_message","onfocus","onblur","onkeyup","offsetWidth","setAttribute","selectHint","cancel","template","transclude","charAt","toUpperCase","ACT","NSW","NA","NT","QLD","SA","TAS","VIC","WA","limit","t","min","lastIndexOf","factory","$rootScope","svc","multipleSelection","Array","prototype","from","to","rest","apply","Key","Doc","$broadcast","get","$http","$q","$sce","setDefaultQuery","Core","Err","debug","getQueryComponents","parts","Hash","CoreUrl","hash_elements","decodeURI","eparts","startsWith","params","shift","j","p","DefaultQuery","s1","s2","updateAllQueries","updateQueriesInOrder","Queries","q","then","QueryName","jsonp","trustAsResourceUrl","jsonpCallbackParam","msg","day","month","months","year","arraysAreEqual","A","B","convertMonthIndexToName","1","2","3","4","5","6","7","8","9","01","02","03","04","05","06","07","08","09","10","11","12","DateField","trimLeadingZero","objectsAreEqual","Object","constructor","Val","Length"],"mappings":"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","file":"ngsolr.min.js"} \ No newline at end of file +{"version":3,"sources":["ngsolr.js"],"names":["SolrFacet","Field","Value","self","this","field","value","options","getOption","Name","getUrlFragment","query","option","hasOwnProperty","setOption","SolrQuery","Url","error","undefined","facets","facet_counts","highlighting","nearMatch","queryParameters","response","responseHeader","solr","addFacet","Facet","i","length","push","addQueryParameter","Parameter","createFacet","getErrorMessage","getFacet","getFacetCounts","getFacets","getHash","getQuery","key2","val","getSolrQueryUrl","encodeURI","getUserQuery","getUserQueryParameters","hasFacet","removeFacet","removeFacetByIndex","Index","splice","removeOption","setErrorMessage","Msg","setFacetCounts","FacetCounts","setHighlighting","Highlighting","setNearMatch","fq","setQueryParameters","Parameters","setResponse","Response","setResponseHeader","Header","setUserQuery","Query","app","angular","module","constant","api","env","defaultQuery","f","config","$routeProvider","when","event","otherwise","controller","$scope","$attrs","$location","$route","$routeParams","SolrSearchService","Utils","date","dateRange","endDateQuery","endDateResults","end_value","end_year","hash","item","start_value","start_year","startDateQuery","startDateResults","yearEnd","yearStart","_endDate","_startDate","endDate","endDateField","endDateQueryName","source","startDate","startDateField","startDateQueryName","updateOnInit","userquery","getDateRangeConstraint","StartDateField","StartDate","EndDateField","EndDate","getFirstDateRecord","Items","FieldName","docs","indexOf","substring","handleEndDateQueryUpdate","getResponse","handleStartDateQueryUpdate","handleUpdate","getQueryFromHash","createQuery","replace","updateFlag","setQuery","updateQuery","init","applyAttributes","$on","submit","path","$log","bin","count","histogram","histogramHeight","histogramMaxBins","histogramQueryName","histogramWidth","target","defaultQueryName","updateHistogram","updateOnTargetChange","handleHistogramQueryUpdate","Event","name","numFound","updateHistogramChart","handleTargetQueryUpdate","setQueryParameter","info","binRange","end","histogramQuery","range","start","Math","ceil","Number","label","margin","top","right","bottom","left","height","width","formatPercent","d3","format","select","remove","svg","append","attr","max","d","x","scale","ordinal","rangeBands","startYear","endYear","y","log","domain","rangeRound","axis","orient","tickFormat","style","text","selectAll","data","enter","on","exit","$window","Page","Num","number","isCurrent","documents","documentsPerPage","loading","page","pages","pagesPerSet","queryName","totalPages","totalResults","totalSets","updateLocationOnChange","handleSetPage","Start","oldHash","scrollTo","results","fromDate","formatDate","toDate","updatePageIndex","key","parseInt","currentSet","floor","firstPageInSet","lastPageInSet","previousSet","prevPage","nextSet","nextPage","items","FacetResult","Score","score","facet","facet_fields","facet_query","s","selected_values","exclusive","facetQuery","maxItems","selected","add","$event","split","join","preventDefault","documentsPerRow","fields","rows","startPage","row","SelectionSetService","lat","lng","categoryToIconMap","default","corporateBody","government","organization","person","centerOnStart","clusterManager","clusterOptions","styles","url","clusterResults","firstUpdate","idToMarkerMap","infoWindow","google","maps","InfoWindow","map","markers","maxFieldLength","settings","mapTypeControl","mapTypeId","MapTypeId","TERRAIN","navigationControl","navigationControlOptions","NavigationControlStyle","SMALL","overviewMapControl","panControl","rotateControl","scaleControl","streetViewControl","zoom","zoomControl","zoomControlOptions","ZoomControlStyle","LARGE","showMessages","showErrors","startLatitude","startLongitude","createMapQuery","getMarker","Map","Title","Content","Category","Lat","Lng","icon","Marker","position","LatLng","title","content","getMarkerContent","Item","dobj_proxy_small","presentation_url","truncate","abstract","handleSelection","getSelectionSet","keys","id","marker","bounds","LatLngBounds","extend","trigger","fitBounds","location","location_0_coordinate","location_1_coordinate","type","oms","addMarker","document","getElementById","OverlappingMarkerSpiderfier","addListener","close","setContent","open","point","setCenter","setInfoWindow","singleSelection","clearSelection","Id","clear","err","message","clearSilent","hintlist","result","token","trimmed","hints","maxHints","minSearchLength","redirect","resetOnChange","searchHintsField","searchHintsQuery","getHintList","getHints","handleSubmit","trim","href","toLowerCase","newquery","queries","unshift","pop","QueryIndex","directive","restrict","link","scope","element","autocomplete","delay","minLength","request","$","ui","filter","term","slice","bind","keyCode","$timeout","attrs","showHints","messages","placeHolder","queryBuffer","selectedHint","showMessage","timeout","userQuery","clearHintSelection","handleRouteChange","hint","highlightHint","index","$apply","resetHintSelection","children","form_div","query_input","querySelector","hints_div","hints_list","hints_message","onfocus","onblur","onkeyup","offsetWidth","setAttribute","selectHint","cancel","template","transclude","charAt","toUpperCase","ACT","NSW","NA","NT","QLD","SA","TAS","VIC","WA","limit","t","min","lastIndexOf","factory","$rootScope","svc","multipleSelection","Array","prototype","from","to","rest","apply","Key","Doc","$broadcast","get","$http","$q","$sce","setDefaultQuery","Core","Err","debug","getQueryComponents","parts","Hash","CoreUrl","hash_elements","decodeURI","eparts","startsWith","params","shift","j","p","DefaultQuery","s1","s2","updateAllQueries","updateQueriesInOrder","Queries","q","then","QueryName","jsonp","trustAsResourceUrl","jsonpCallbackParam","msg","day","month","months","year","arraysAreEqual","A","B","convertMonthIndexToName","1","2","3","4","5","6","7","8","9","01","02","03","04","05","06","07","08","09","10","11","12","DateField","trimLeadingZero","objectsAreEqual","Object","constructor","Val","Length"],"mappings":"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","file":"ngsolr.min.js"} \ No newline at end of file diff --git a/src/ngsolr/controllers/DocumentSearchResultsController.js b/src/ngsolr/controllers/DocumentSearchResultsController.js index 674dd4e..7c43b27 100644 --- a/src/ngsolr/controllers/DocumentSearchResultsController.js +++ b/src/ngsolr/controllers/DocumentSearchResultsController.js @@ -87,10 +87,11 @@ angular */ $scope.handleSetPage = function(Start) { var query = SolrSearchService.getQuery($scope.queryName); + var oldHash = query.getHash(); query.setOption('start', Start * $scope.documentsPerPage); if ($scope.updateLocationOnChange) { var hash = query.getHash(); - $location.path(hash); + $location.path($location.path().replace(oldHash, hash)); $window.scrollTo(0, 0); } else { $scope.loading = true; From c8b2ddbc60891f7822082a60dff4a09fe8253729 Mon Sep 17 00:00:00 2001 From: cedia Date: Wed, 20 Mar 2019 11:55:52 -0500 Subject: [PATCH 6/6] - incorrect start param on facets adding. - escape special characters on facets. --- dist/ngsolr.js | 3 ++- dist/ngsolr.min.js | 4 ++-- dist/ngsolr.min.js.map | 2 +- src/ngsolr/controllers/FieldFacetController.js | 3 ++- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/dist/ngsolr.js b/dist/ngsolr.js index ea9b596..bd1814a 100644 --- a/dist/ngsolr.js +++ b/dist/ngsolr.js @@ -997,12 +997,13 @@ angular name = $scope.field; // ISSUE #27 replace all space characters with * to ensure that Solr matches // on the space value - value = '(' + $scope.items[Index].value.split(' ').join('*') + ')'; + value = '(' + $scope.items[Index].value.replace(new RegExp(":", 'g'),' ').split(' ').join('*') + ')'; facet = query.createFacet(name, value); // check to see if the selected facet is already in the list if ($scope.facets.indexOf(facet) === -1) { var oldHash = query.getHash(); query.addFacet(facet); + query.options.start = 0; // change window location hash = query.getHash(); if (!$location.path()) { diff --git a/dist/ngsolr.min.js b/dist/ngsolr.min.js index 3d0d10e..834f875 100644 --- a/dist/ngsolr.min.js +++ b/dist/ngsolr.min.js @@ -1,5 +1,5 @@ -/*! ngSolr - v0.6.1 - 2018-03-16 */ +/*! ngSolr - v0.6.1 - 2019-03-20 */ -"use strict";function SolrFacet(Field,Value){var self=this;self.field=Field,self.value=Value,self.options={},self.getOption=function(Name){return self.options[Name]},self.getUrlFragment=function(){var query="";query+="&fq="+self.field+":"+self.value;for(var option in self.options)self.options.hasOwnProperty(option)&&(query+="&"+option+"="+self.options[option]);return query},self.setOption=function(Name,Value){self.options[Name]=Value}}function SolrQuery(Url){var self=this;self.error=void 0,self.facets=[],self.facet_counts={},self.highlighting={},self.options={},self.nearMatch=!1,self.query="*:*",self.queryParameters=[],self.response={},self.responseHeader={},self.solr=Url,self.addFacet=function(Facet){for(var i=0;i0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){(endDateResults=SolrSearchService.getResponse($scope.endDateQueryName))&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField))},$scope.handleStartDateQueryUpdate=function(){(startDateResults=SolrSearchService.getResponse($scope.startDateQueryName))&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField))},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),f=query.getFacet($scope.endDateField),f?(start_year=f.value.replace("[","").replace("-01-01T00:00:00Z TO *]",""),$scope._startDate=start_year,$scope.startDate=start_year,$scope.updateFlag+=1):(startDateQuery=SolrSearchService.createQuery($scope.source),startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery),SolrSearchService.updateQuery($scope.startDateQueryName)),f=query.getFacet($scope.startDateField),f?(end_year=f.value.replace("[* TO ","").replace("-12-31T23:59:59Z]",""),$scope._endDate=end_year,$scope.endDate=end_year,$scope.updateFlag+=1):(endDateQuery=SolrSearchService.createQuery($scope.source),endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),SolrSearchService.updateQuery($scope.endDateQueryName))},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate>$scope.endDate)return $scope.endDate=$scope._endDate,void($scope.startDate=$scope._startDate);hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),query.removeFacet($scope.startDateField),query.removeFacet($scope.endDateField),start_value="[* TO "+$scope.endDate+"-12-31T23:59:59Z]",end_value="["+$scope.startDate+"-01-01T00:00:00Z TO *]",f=query.createFacet($scope.startDateField,start_value),query.addFacet(f),f=query.createFacet($scope.endDateField,end_value),query.addFacet(f),hash=query.getHash(),$location.path(hash)},$scope.init()}]),angular.module("ngSolr").controller("DateFacetHistogramController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,Utils){var bin,count,date,endDateResults,i,item,query,startDateResults,userquery;$scope._endDate=0,$scope._startDate=0,$scope.endDate=0,$scope.endDateField="toDate",$scope.endDateQueryName="endDateQuery",$scope.histogram=[],$scope.histogramHeight=100,$scope.histogramMaxBins=10,$scope.histogramQueryName="histogramQuery",$scope.histogramWidth=240,$scope.source=void 0,$scope.startDate=0,$scope.startDateField="fromDate",$scope.startDateQueryName="startDateQuery",$scope.target=SolrSearchService.defaultQueryName,$scope.updateFlag=0,$scope.updateHistogram=!0,$scope.updateOnInit=!1,$scope.updateOnTargetChange=!0,$scope.getFirstDateRecord=function(Items,FieldName){return Items&&Items.docs&&Items.docs.length>0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleHistogramQueryUpdate=function(Event){i=Event.name.indexOf("_"),bin=Event.name.substring(i+1,Event.name.length),query=SolrSearchService.getQuery(Event.name),count=query.response.numFound,$scope.histogram[bin].count=count,$scope.updateHistogramChart()},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleTargetQueryUpdate=function(){query=SolrSearchService.getQuery($scope.target),userquery=query.getUserQuery(),query=SolrSearchService.getQuery($scope.startDateQueryName),query.setUserQuery(userquery),query=SolrSearchService.getQuery($scope.endDateQueryName),query.setUserQuery(userquery),$scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName)},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.userquery=query.getUserQuery()}var startDateQuery=SolrSearchService.createQuery();startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery);var endDateQuery=SolrSearchService.createQuery();endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),$scope.updateOnInit&&($scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName))}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate<=$scope.endDate){var query=SolrSearchService.getQuery($scope.target);if(query){var dateRange=$scope.getDateRangeConstraint($scope.startDateField,$scope.startDate,$scope.endDateField,$scope.endDate);query.setQueryParameter("dateRange",dateRange),SolrSearchService.updateQuery($scope.target)}}else $scope.endDate=$scope._endDate,$scope.startDate=$scope._startDate,$log.info("WARNING: start date is greater than end date")},$scope.updateHistogram=function(){var bin,binRange,dateRange,end,histogramQuery,histogramQueryName,i,range,start;for($scope.histogram=[],range=Math.ceil($scope.endDate-$scope.startDate),binRange=Math.ceil(range/$scope.histogramMaxBins),i=0;i<$scope.histogramMaxBins;i++)start=Number($scope.startDate)+binRange*i,end=start+binRange,bin={},bin.start=start,bin.end=end>$scope.endDate?$scope.endDate:end,bin.label=start+" to "+bin.end,bin.count=10*i+5,$scope.histogram.push(bin);for(i=0;i<$scope.histogram.length;i++)bin=$scope.histogram[i],histogramQuery=SolrSearchService.createQuery(),histogramQueryName=$scope.histogramQueryName+"_"+i,dateRange=$scope.getDateRangeConstraint($scope.startDateField,bin.start,$scope.endDateField,bin.end),histogramQuery.setOption("rows","0"),histogramQuery.setQueryParameter("dateRange",dateRange),SolrSearchService.setQuery(histogramQueryName,histogramQuery),$scope.$on(histogramQueryName,function(histogramQueryName){$scope.handleHistogramQueryUpdate(histogramQueryName)}),SolrSearchService.updateQuery(histogramQueryName)},$scope.updateHistogramChart=function(){var margin={top:0,right:10,bottom:0,left:0},height=$scope.histogramHeight-margin.top-margin.bottom,width=$scope.histogramWidth-margin.left-margin.right,formatPercent=d3.format(".0%");d3.select("#date-range-histogram").select("svg").remove();var svg=d3.select("#date-range-histogram").append("svg").attr("width",width+margin.left+margin.right).attr("height",height+margin.top+margin.bottom).append("g").attr("transform","translate("+margin.left+","+margin.top+")"),max=d3.max($scope.histogram,function(d){return d.count}),x=d3.scale.ordinal().rangeBands([$scope.startYear,$scope.endYear]),y=d3.scale.log().domain([0,max]).rangeRound([0,height]);d3.svg.axis().scale(x).orient("bottom"),d3.svg.axis().scale(y).orient("left").tickFormat(formatPercent),x.domain([$scope.startYear,$scope.endYear]),y.domain([0,max]),d3.select("body").append("div").style("background","white").style("border","1px solid #ccc").style("position","absolute").style("z-index","10").style("visibility","hidden").text("a simple tooltip"),svg.selectAll(".bar").data($scope.histogram).enter().append("rect").attr("id",function(d,i){return"histogramBar_"+i}).attr("class","bar").attr("x",function(d,i){return i*(width+margin.left+margin.right)/$scope.histogramMaxBins}).attr("width",(width+margin.left+margin.right)/$scope.histogramMaxBins-1).attr("y",function(d){return height-height*d.count/max}).attr("height",function(d){return height*d.count/max}).on("click",function(d){$scope.endDate=d.end,$scope.startDate=d.start,$scope.submit()}),svg.selectAll(".bar").data($scope.histogram).exit().remove()}}]),angular.module("ngSolr").controller("DocumentSearchResultsController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService","Utils",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService,Utils){function Page(Name,Num){this.name=Name,this.number=Num,this.isCurrent=!1}$scope.documents=[],$scope.documentsPerPage=10,$scope.loading=!1,$scope.page=0,$scope.pages=[],$scope.pagesPerSet=10,$scope.queryName=SolrSearchService.defaultQueryName,$scope.source=void 0,$scope.start=0,$scope.totalPages=1,$scope.totalResults=0,$scope.totalSets=1,$scope.updateLocationOnChange=!0,$scope.userquery="",$scope.handleSetPage=function(Start){var query=SolrSearchService.getQuery($scope.queryName),oldHash=query.getHash();if(query.setOption("start",Start*$scope.documentsPerPage),$scope.updateLocationOnChange){var hash=query.getHash();$location.path($location.path().replace(oldHash,hash)),$window.scrollTo(0,0)}else $scope.loading=!0,SolrSearchService.updateQuery($scope.queryName)},$scope.handleUpdate=function(){$scope.documents=[],$scope.loading=!1;var results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs){$scope.totalResults=results.numFound,$scope.totalPages=Math.ceil($scope.totalResults/$scope.documentsPerPage),$scope.totalSets=Math.ceil($scope.totalPages/$scope.pagesPerSet);for(var i=0;i$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("FacetSelectionController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){var hash,key,query;$scope.items=[],$scope.source=void 0,$scope.target=SolrSearchService.defaultQueryName,$scope.remove=function(Index){query=SolrSearchService.getQuery($scope.target);var oldHash=query.getHash();query.removeFacetByIndex(Index),hash=query.getHash(),$location.path($location.path().replace(oldHash,hash))},$scope.handleUpdate=function(){hash=$routeParams.query||"",(query=SolrSearchService.getQueryFromHash(hash,$scope.source))&&($scope.items=query.getFacets())},$scope.init=function(){for(key in $attrs)$scope.hasOwnProperty(key)&&($scope[key]=$attrs[key]);$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()})},$scope.init()}]),angular.module("ngSolr").controller("FieldFacetController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){function FacetResult(Value,Score){this.value=Value,this.score=Score}var count,f,facet,facet_fields,facets,facet_query,hash,i,key,name,query,results,s,selected_values,value;$scope.exclusive=!0,$scope.facetQuery="facetQuery",$scope.facets=[],$scope.field="",$scope.items=[],$scope.maxItems=7,$scope.queryName=SolrSearchService.defaultQueryName,$scope.selected=!1,$scope.source=void 0,$scope.add=function($event,Index){if(query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),name=$scope.field,value="("+$scope.items[Index].value.split(" ").join("*")+")",facet=query.createFacet(name,value),-1===$scope.facets.indexOf(facet)){var oldHash=query.getHash();query.addFacet(facet),hash=query.getHash(),$location.path()?$location.path($location.path().replace(oldHash,hash)):$location.path(hash)}$event.preventDefault()},$scope.handleUpdate=function(){for($scope.items=[],$scope.selected=!1,selected_values=[],hash=$routeParams.query||void 0,query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),facets=query.getFacets(),i=0;i-1&&($scope.selected=!0,s=f.value.replace(/([\(\[\)\]])+/g,""),s=s.replace(/\*/g," "),selected_values.push(s));if(facet_query=SolrSearchService.getQuery($scope.facetQuery),(results=facet_query.getFacetCounts())&&results.hasOwnProperty("facet_fields"))for(facet_fields=results.facet_fields[$scope.field].length>2*$scope.maxItems?results.facet_fields[$scope.field].splice(0,$scope.maxItems):results.facet_fields[$scope.field],i=0;i=$scope.documentsPerRow||i===results.docs.length-1)&&(count=0,$scope.rows.push(row),row=[])}else $scope.rows=[],$scope.totalResults=0,$scope.totalPages=1,$scope.totalSets=1;$scope.updatePageIndex()},$scope.init=function(){for(var key in $attrs)$scope.hasOwnProperty(key)&&("documentsPerPage"===key||"documentsPerRow"===key||"pagesPerSet"===key?$scope[key]=parseInt($attrs[key]):"true"===$attrs[key]||"false"===$attrs[key]?$scope[key]="true"===$attrs[key]:$scope[key]=$attrs[key]);$scope.$on($scope.queryName,function(){$scope.handleUpdate()}),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.source&&(query.solr=$scope.source),$scope.documentsPerPage=query.getOption("rows")||10,$scope.page=Math.ceil(query.getOption("start")/$scope.documentsPerPage)||0,$scope.userquery=query.getUserQuery(),SolrSearchService.setQuery($scope.queryName,query),SolrSearchService.updateQuery($scope.queryName)}})},$scope.updatePageIndex=function(){$scope.pages=[];var currentSet=Math.floor($scope.page/$scope.pagesPerSet),firstPageInSet=currentSet*$scope.pagesPerSet+1,lastPageInSet=firstPageInSet+$scope.pagesPerSet-1;if(lastPageInSet>$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("MapController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","SelectionSetService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,SelectionSetService,Utils){var i,lat,lng;$scope.categoryToIconMap={default:"img/icon/house.png",corporateBody:"img/icon/corporatebody.png",government:"img/icon/corporatebody.png",organization:"img/icon/corporatebody.png",person:"img/icon/person.png"},$scope.centerOnStart=!0,$scope.clusterManager=null,$scope.clusterOptions={styles:[{height:24,url:"img/map/cluster1.png",width:24},{height:36,url:"img/map/cluster2.png",width:36},{height:48,url:"img/map/cluster3.png",width:48},{height:64,url:"img/map/cluster4.png",width:64},{height:82,url:"img/map/cluster5.png",width:82}]},$scope.clusterResults=!0,$scope.count=5e3,$scope.fields="*",$scope.firstUpdate=!0,$scope.idToMarkerMap={},$scope.infoWindow=new google.maps.InfoWindow,$scope.loading=!1,$scope.map=void 0,$scope.markers=[],$scope.maxFieldLength=120,$scope.queryName="mapQuery",$scope.settings={mapTypeControl:!1,mapTypeId:google.maps.MapTypeId.TERRAIN,navigationControl:!0,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},overviewMapControl:!1,panControl:!0,rotateControl:!0,scaleControl:!0,streetViewControl:!1,zoom:5,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.LARGE}},$scope.showMessages=!0,$scope.showErrors=!0,$scope.source=void 0,$scope.startLatitude=void 0,$scope.startLongitude=void 0,$scope.target="defaultQuery",$scope.createMapQuery=function(){var query=SolrSearchService.createQuery();return query.setOption("fl",$scope.fields),query.setOption("rows",$scope.count),query.addQueryParameter("+location_0_coordinate:*"),query},$scope.getMarker=function(Map,Title,Content,Category,Lat,Lng){var icon=$scope.categoryToIconMap.default;return null!==Category&&Category in $scope.categoryToIconMap&&(icon=$scope.categoryToIconMap[Category]),new google.maps.Marker({icon:icon,map:Map,position:new google.maps.LatLng(Lat,Lng),title:Title,content:Content})},$scope.getMarkerContent=function(Item){var content='
';return Item.dobj_proxy_small&&(content+='
'),content+='",content+='
'+Utils.formatDate(Item.fromDate)+" - "+Utils.formatDate(Item.toDate)+"
",content+='
'+Utils.truncate(Item.abstract,$scope.maxFieldLength)+" ",content+='more
',content+="
"},$scope.handleSelection=function(){$log.info("Map selection updated");var selected=SelectionSetService.getSelectionSet();if(selected){var keys=[];for(var key in selected)selected.hasOwnProperty(key)&&keys.push(key);if(keys.length>0){var id=keys[0],marker=$scope.idToMarkerMap[id];if(marker){var bounds=new google.maps.LatLngBounds;bounds.extend(marker.position),google.maps.event.trigger(marker,"click"),$scope.map.fitBounds(bounds)}}}},$scope.handleUpdate=function(){var bounds=new google.maps.LatLngBounds,results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs)for(i=0;i=$scope.minSearchLength)for(i=0;$scope.hints.length,hintlist.length<$scope.maxHints;i++){token=$scope.hints[i];try{token.indexOf($scope.userquery)>-1&&hintlist.push(token)}catch(err){continue}}return hintlist},$scope.handleSubmit=function(){trimmed=Utils.trim($scope.userquery),""===trimmed&&($scope.userquery="*:*"),query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),query.setNearMatch($scope.nearMatch),query.setUserQuery($scope.userquery),hash=query.getHash(),$scope.redirect?$window.location.href=$scope.redirect+"#"+hash:$location.path(hash)},$scope.handleUpdate=function(){if(query=SolrSearchService.getQuery($scope.searchHintsQuery), +"use strict";function SolrFacet(Field,Value){var self=this;self.field=Field,self.value=Value,self.options={},self.getOption=function(Name){return self.options[Name]},self.getUrlFragment=function(){var query="";query+="&fq="+self.field+":"+self.value;for(var option in self.options)self.options.hasOwnProperty(option)&&(query+="&"+option+"="+self.options[option]);return query},self.setOption=function(Name,Value){self.options[Name]=Value}}function SolrQuery(Url){var self=this;self.error=void 0,self.facets=[],self.facet_counts={},self.highlighting={},self.options={},self.nearMatch=!1,self.query="*:*",self.queryParameters=[],self.response={},self.responseHeader={},self.solr=Url,self.addFacet=function(Facet){for(var i=0;i0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){(endDateResults=SolrSearchService.getResponse($scope.endDateQueryName))&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField))},$scope.handleStartDateQueryUpdate=function(){(startDateResults=SolrSearchService.getResponse($scope.startDateQueryName))&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField))},$scope.handleUpdate=function(){hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),f=query.getFacet($scope.endDateField),f?(start_year=f.value.replace("[","").replace("-01-01T00:00:00Z TO *]",""),$scope._startDate=start_year,$scope.startDate=start_year,$scope.updateFlag+=1):(startDateQuery=SolrSearchService.createQuery($scope.source),startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery),SolrSearchService.updateQuery($scope.startDateQueryName)),f=query.getFacet($scope.startDateField),f?(end_year=f.value.replace("[* TO ","").replace("-12-31T23:59:59Z]",""),$scope._endDate=end_year,$scope.endDate=end_year,$scope.updateFlag+=1):(endDateQuery=SolrSearchService.createQuery($scope.source),endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),SolrSearchService.updateQuery($scope.endDateQueryName))},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate>$scope.endDate)return $scope.endDate=$scope._endDate,void($scope.startDate=$scope._startDate);hash=$routeParams.query||"",query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),query.removeFacet($scope.startDateField),query.removeFacet($scope.endDateField),start_value="[* TO "+$scope.endDate+"-12-31T23:59:59Z]",end_value="["+$scope.startDate+"-01-01T00:00:00Z TO *]",f=query.createFacet($scope.startDateField,start_value),query.addFacet(f),f=query.createFacet($scope.endDateField,end_value),query.addFacet(f),hash=query.getHash(),$location.path(hash)},$scope.init()}]),angular.module("ngSolr").controller("DateFacetHistogramController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,Utils){var bin,count,date,endDateResults,i,item,query,startDateResults,userquery;$scope._endDate=0,$scope._startDate=0,$scope.endDate=0,$scope.endDateField="toDate",$scope.endDateQueryName="endDateQuery",$scope.histogram=[],$scope.histogramHeight=100,$scope.histogramMaxBins=10,$scope.histogramQueryName="histogramQuery",$scope.histogramWidth=240,$scope.source=void 0,$scope.startDate=0,$scope.startDateField="fromDate",$scope.startDateQueryName="startDateQuery",$scope.target=SolrSearchService.defaultQueryName,$scope.updateFlag=0,$scope.updateHistogram=!0,$scope.updateOnInit=!1,$scope.updateOnTargetChange=!0,$scope.getFirstDateRecord=function(Items,FieldName){return Items&&Items.docs&&Items.docs.length>0&&(item=Items.docs[0],void 0!==(date=item[FieldName]))?(i=date.indexOf("-"),date.substring(0,i)):0},$scope.handleEndDateQueryUpdate=function(){endDateResults=SolrSearchService.getResponse($scope.endDateQueryName),endDateResults&&($scope._endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField),$scope.endDate=$scope.getFirstDateRecord(endDateResults,$scope.endDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleHistogramQueryUpdate=function(Event){i=Event.name.indexOf("_"),bin=Event.name.substring(i+1,Event.name.length),query=SolrSearchService.getQuery(Event.name),count=query.response.numFound,$scope.histogram[bin].count=count,$scope.updateHistogramChart()},$scope.handleStartDateQueryUpdate=function(){startDateResults=SolrSearchService.getResponse($scope.startDateQueryName),startDateResults&&($scope._startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField),$scope.startDate=$scope.getFirstDateRecord(startDateResults,$scope.startDateField)),$scope.updateFlag++,$scope.updateHistogram&&0===$scope.updateFlag&&$scope.updateHistogram()},$scope.handleTargetQueryUpdate=function(){query=SolrSearchService.getQuery($scope.target),userquery=query.getUserQuery(),query=SolrSearchService.getQuery($scope.startDateQueryName),query.setUserQuery(userquery),query=SolrSearchService.getQuery($scope.endDateQueryName),query.setUserQuery(userquery),$scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName)},$scope.init=function(){Utils.applyAttributes($attrs,$scope),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.userquery=query.getUserQuery()}var startDateQuery=SolrSearchService.createQuery();startDateQuery.setOption("fl",$scope.startDateField),startDateQuery.setOption("rows","1"),startDateQuery.setOption("sort",$scope.startDateField+" asc"),startDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.startDateQueryName,startDateQuery);var endDateQuery=SolrSearchService.createQuery();endDateQuery.setOption("fl",$scope.endDateField),endDateQuery.setOption("rows","1"),endDateQuery.setOption("sort",$scope.endDateField+" desc"),endDateQuery.setUserQuery($scope.userquery),SolrSearchService.setQuery($scope.endDateQueryName,endDateQuery),$scope.updateOnInit&&($scope.updateFlag=-2,SolrSearchService.updateQuery($scope.startDateQueryName),SolrSearchService.updateQuery($scope.endDateQueryName))}),$scope.$on($scope.startDateQueryName,function(){$scope.handleStartDateQueryUpdate()}),$scope.$on($scope.endDateQueryName,function(){$scope.handleEndDateQueryUpdate()})},$scope.submit=function(){if($scope.startDate<=$scope.endDate){var query=SolrSearchService.getQuery($scope.target);if(query){var dateRange=$scope.getDateRangeConstraint($scope.startDateField,$scope.startDate,$scope.endDateField,$scope.endDate);query.setQueryParameter("dateRange",dateRange),SolrSearchService.updateQuery($scope.target)}}else $scope.endDate=$scope._endDate,$scope.startDate=$scope._startDate,$log.info("WARNING: start date is greater than end date")},$scope.updateHistogram=function(){var bin,binRange,dateRange,end,histogramQuery,histogramQueryName,i,range,start;for($scope.histogram=[],range=Math.ceil($scope.endDate-$scope.startDate),binRange=Math.ceil(range/$scope.histogramMaxBins),i=0;i<$scope.histogramMaxBins;i++)start=Number($scope.startDate)+binRange*i,end=start+binRange,bin={},bin.start=start,bin.end=end>$scope.endDate?$scope.endDate:end,bin.label=start+" to "+bin.end,bin.count=10*i+5,$scope.histogram.push(bin);for(i=0;i<$scope.histogram.length;i++)bin=$scope.histogram[i],histogramQuery=SolrSearchService.createQuery(),histogramQueryName=$scope.histogramQueryName+"_"+i,dateRange=$scope.getDateRangeConstraint($scope.startDateField,bin.start,$scope.endDateField,bin.end),histogramQuery.setOption("rows","0"),histogramQuery.setQueryParameter("dateRange",dateRange),SolrSearchService.setQuery(histogramQueryName,histogramQuery),$scope.$on(histogramQueryName,function(histogramQueryName){$scope.handleHistogramQueryUpdate(histogramQueryName)}),SolrSearchService.updateQuery(histogramQueryName)},$scope.updateHistogramChart=function(){var margin={top:0,right:10,bottom:0,left:0},height=$scope.histogramHeight-margin.top-margin.bottom,width=$scope.histogramWidth-margin.left-margin.right,formatPercent=d3.format(".0%");d3.select("#date-range-histogram").select("svg").remove();var svg=d3.select("#date-range-histogram").append("svg").attr("width",width+margin.left+margin.right).attr("height",height+margin.top+margin.bottom).append("g").attr("transform","translate("+margin.left+","+margin.top+")"),max=d3.max($scope.histogram,function(d){return d.count}),x=d3.scale.ordinal().rangeBands([$scope.startYear,$scope.endYear]),y=d3.scale.log().domain([0,max]).rangeRound([0,height]);d3.svg.axis().scale(x).orient("bottom"),d3.svg.axis().scale(y).orient("left").tickFormat(formatPercent),x.domain([$scope.startYear,$scope.endYear]),y.domain([0,max]),d3.select("body").append("div").style("background","white").style("border","1px solid #ccc").style("position","absolute").style("z-index","10").style("visibility","hidden").text("a simple tooltip"),svg.selectAll(".bar").data($scope.histogram).enter().append("rect").attr("id",function(d,i){return"histogramBar_"+i}).attr("class","bar").attr("x",function(d,i){return i*(width+margin.left+margin.right)/$scope.histogramMaxBins}).attr("width",(width+margin.left+margin.right)/$scope.histogramMaxBins-1).attr("y",function(d){return height-height*d.count/max}).attr("height",function(d){return height*d.count/max}).on("click",function(d){$scope.endDate=d.end,$scope.startDate=d.start,$scope.submit()}),svg.selectAll(".bar").data($scope.histogram).exit().remove()}}]),angular.module("ngSolr").controller("DocumentSearchResultsController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService","Utils",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService,Utils){function Page(Name,Num){this.name=Name,this.number=Num,this.isCurrent=!1}$scope.documents=[],$scope.documentsPerPage=10,$scope.loading=!1,$scope.page=0,$scope.pages=[],$scope.pagesPerSet=10,$scope.queryName=SolrSearchService.defaultQueryName,$scope.source=void 0,$scope.start=0,$scope.totalPages=1,$scope.totalResults=0,$scope.totalSets=1,$scope.updateLocationOnChange=!0,$scope.userquery="",$scope.handleSetPage=function(Start){var query=SolrSearchService.getQuery($scope.queryName),oldHash=query.getHash();if(query.setOption("start",Start*$scope.documentsPerPage),$scope.updateLocationOnChange){var hash=query.getHash();$location.path($location.path().replace(oldHash,hash)),$window.scrollTo(0,0)}else $scope.loading=!0,SolrSearchService.updateQuery($scope.queryName)},$scope.handleUpdate=function(){$scope.documents=[],$scope.loading=!1;var results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs){$scope.totalResults=results.numFound,$scope.totalPages=Math.ceil($scope.totalResults/$scope.documentsPerPage),$scope.totalSets=Math.ceil($scope.totalPages/$scope.pagesPerSet);for(var i=0;i$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("FacetSelectionController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){var hash,key,query;$scope.items=[],$scope.source=void 0,$scope.target=SolrSearchService.defaultQueryName,$scope.remove=function(Index){query=SolrSearchService.getQuery($scope.target);var oldHash=query.getHash();query.removeFacetByIndex(Index),hash=query.getHash(),$location.path($location.path().replace(oldHash,hash))},$scope.handleUpdate=function(){hash=$routeParams.query||"",(query=SolrSearchService.getQueryFromHash(hash,$scope.source))&&($scope.items=query.getFacets())},$scope.init=function(){for(key in $attrs)$scope.hasOwnProperty(key)&&($scope[key]=$attrs[key]);$scope.$on("$routeChangeSuccess",function(){$scope.handleUpdate()})},$scope.init()}]),angular.module("ngSolr").controller("FieldFacetController",["$scope","$attrs","$location","$route","$routeParams","$window","SolrSearchService",function($scope,$attrs,$location,$route,$routeParams,$window,SolrSearchService){function FacetResult(Value,Score){this.value=Value,this.score=Score}var count,f,facet,facet_fields,facets,facet_query,hash,i,key,name,query,results,s,selected_values,value;$scope.exclusive=!0,$scope.facetQuery="facetQuery",$scope.facets=[],$scope.field="",$scope.items=[],$scope.maxItems=7,$scope.queryName=SolrSearchService.defaultQueryName,$scope.selected=!1,$scope.source=void 0,$scope.add=function($event,Index){if(query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),name=$scope.field,value="("+$scope.items[Index].value.replace(new RegExp(":","g")," ").split(" ").join("*")+")",facet=query.createFacet(name,value),-1===$scope.facets.indexOf(facet)){var oldHash=query.getHash();query.addFacet(facet),query.options.start=0,hash=query.getHash(),$location.path()?$location.path($location.path().replace(oldHash,hash)):$location.path(hash)}$event.preventDefault()},$scope.handleUpdate=function(){for($scope.items=[],$scope.selected=!1,selected_values=[],hash=$routeParams.query||void 0,query=hash?SolrSearchService.getQueryFromHash(hash,$scope.source):SolrSearchService.createQuery($scope.source),facets=query.getFacets(),i=0;i-1&&($scope.selected=!0,s=f.value.replace(/([\(\[\)\]])+/g,""),s=s.replace(/\*/g," "),selected_values.push(s));if(facet_query=SolrSearchService.getQuery($scope.facetQuery),(results=facet_query.getFacetCounts())&&results.hasOwnProperty("facet_fields"))for(facet_fields=results.facet_fields[$scope.field].length>2*$scope.maxItems?results.facet_fields[$scope.field].splice(0,$scope.maxItems):results.facet_fields[$scope.field],i=0;i=$scope.documentsPerRow||i===results.docs.length-1)&&(count=0,$scope.rows.push(row),row=[])}else $scope.rows=[],$scope.totalResults=0,$scope.totalPages=1,$scope.totalSets=1;$scope.updatePageIndex()},$scope.init=function(){for(var key in $attrs)$scope.hasOwnProperty(key)&&("documentsPerPage"===key||"documentsPerRow"===key||"pagesPerSet"===key?$scope[key]=parseInt($attrs[key]):"true"===$attrs[key]||"false"===$attrs[key]?$scope[key]="true"===$attrs[key]:$scope[key]=$attrs[key]);$scope.$on($scope.queryName,function(){$scope.handleUpdate()}),$scope.$on("$routeChangeSuccess",function(){if($scope.query=$routeParams.query||"",$scope.query){var query=SolrSearchService.getQueryFromHash($scope.query,$scope.source);$scope.source&&(query.solr=$scope.source),$scope.documentsPerPage=query.getOption("rows")||10,$scope.page=Math.ceil(query.getOption("start")/$scope.documentsPerPage)||0,$scope.userquery=query.getUserQuery(),SolrSearchService.setQuery($scope.queryName,query),SolrSearchService.updateQuery($scope.queryName)}})},$scope.updatePageIndex=function(){$scope.pages=[];var currentSet=Math.floor($scope.page/$scope.pagesPerSet),firstPageInSet=currentSet*$scope.pagesPerSet+1,lastPageInSet=firstPageInSet+$scope.pagesPerSet-1;if(lastPageInSet>$scope.totalPages&&(lastPageInSet=$scope.totalPages),$scope.totalSets>1&&0!==currentSet){var previousSet=firstPageInSet-$scope.pagesPerSet-1,prevPage=new Page("«",previousSet);$scope.pages.push(prevPage)}for(var i=firstPageInSet;i<=lastPageInSet;i++){var page=new Page(i,i-1);page.number===$scope.page&&(page.isCurrent=!0),$scope.pages.push(page)}if($scope.totalSets>1&¤tSet<$scope.totalSets-1){var nextSet=lastPageInSet,nextPage=new Page("»",nextSet);$scope.pages.push(nextPage)}},$scope.init()}]),angular.module("ngSolr").controller("MapController",["$scope","$attrs","$location","$log","$route","$routeParams","SolrSearchService","SelectionSetService","Utils",function($scope,$attrs,$location,$log,$route,$routeParams,SolrSearchService,SelectionSetService,Utils){var i,lat,lng;$scope.categoryToIconMap={default:"img/icon/house.png",corporateBody:"img/icon/corporatebody.png",government:"img/icon/corporatebody.png",organization:"img/icon/corporatebody.png",person:"img/icon/person.png"},$scope.centerOnStart=!0,$scope.clusterManager=null,$scope.clusterOptions={styles:[{height:24,url:"img/map/cluster1.png",width:24},{height:36,url:"img/map/cluster2.png",width:36},{height:48,url:"img/map/cluster3.png",width:48},{height:64,url:"img/map/cluster4.png",width:64},{height:82,url:"img/map/cluster5.png",width:82}]},$scope.clusterResults=!0,$scope.count=5e3,$scope.fields="*",$scope.firstUpdate=!0,$scope.idToMarkerMap={},$scope.infoWindow=new google.maps.InfoWindow,$scope.loading=!1,$scope.map=void 0,$scope.markers=[],$scope.maxFieldLength=120,$scope.queryName="mapQuery",$scope.settings={mapTypeControl:!1,mapTypeId:google.maps.MapTypeId.TERRAIN,navigationControl:!0,navigationControlOptions:{style:google.maps.NavigationControlStyle.SMALL},overviewMapControl:!1,panControl:!0,rotateControl:!0,scaleControl:!0,streetViewControl:!1,zoom:5,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.LARGE}},$scope.showMessages=!0,$scope.showErrors=!0,$scope.source=void 0,$scope.startLatitude=void 0,$scope.startLongitude=void 0,$scope.target="defaultQuery",$scope.createMapQuery=function(){var query=SolrSearchService.createQuery();return query.setOption("fl",$scope.fields),query.setOption("rows",$scope.count),query.addQueryParameter("+location_0_coordinate:*"),query},$scope.getMarker=function(Map,Title,Content,Category,Lat,Lng){var icon=$scope.categoryToIconMap.default;return null!==Category&&Category in $scope.categoryToIconMap&&(icon=$scope.categoryToIconMap[Category]),new google.maps.Marker({icon:icon,map:Map,position:new google.maps.LatLng(Lat,Lng),title:Title,content:Content})},$scope.getMarkerContent=function(Item){var content='
';return Item.dobj_proxy_small&&(content+='
'),content+='",content+='
'+Utils.formatDate(Item.fromDate)+" - "+Utils.formatDate(Item.toDate)+"
",content+='
'+Utils.truncate(Item.abstract,$scope.maxFieldLength)+" ",content+='more
',content+="
"},$scope.handleSelection=function(){$log.info("Map selection updated");var selected=SelectionSetService.getSelectionSet();if(selected){var keys=[];for(var key in selected)selected.hasOwnProperty(key)&&keys.push(key);if(keys.length>0){var id=keys[0],marker=$scope.idToMarkerMap[id];if(marker){var bounds=new google.maps.LatLngBounds;bounds.extend(marker.position),google.maps.event.trigger(marker,"click"),$scope.map.fitBounds(bounds)}}}},$scope.handleUpdate=function(){var bounds=new google.maps.LatLngBounds,results=SolrSearchService.getResponse($scope.queryName);if(results&&results.docs)for(i=0;i=$scope.minSearchLength)for(i=0;$scope.hints.length,hintlist.length<$scope.maxHints;i++){token=$scope.hints[i];try{token.indexOf($scope.userquery)>-1&&hintlist.push(token)}catch(err){continue}}return hintlist},$scope.handleSubmit=function(){trimmed=Utils.trim($scope.userquery),""===trimmed&&($scope.userquery="*:*"),query=SolrSearchService.getQuery($scope.queryName),void 0===query&&(query=SolrSearchService.createQuery($scope.source)),query.setNearMatch($scope.nearMatch),query.setUserQuery($scope.userquery),hash=query.getHash(),$scope.redirect?$window.location.href=$scope.redirect+"#"+hash:$location.path(hash)},$scope.handleUpdate=function(){if(query=SolrSearchService.getQuery($scope.searchHintsQuery), (results=query.getFacetCounts())&&results.hasOwnProperty("facet_fields")&&(result=results.facet_fields[$scope.searchHintsField]))for(i=0;i0?newquery.getUserQuery()!==$scope.queries[0].getUserQuery()&&($scope.queries.unshift(newquery),$scope.queries.length>$scope.maxItems&&$scope.queries.pop()):($scope.queries=[],$scope.queries.push(newquery))},$scope.setQuery=function(QueryIndex){QueryIndex>=0&&QueryIndex<=$scope.queries.length&&(query=$scope.queries[QueryIndex])},$scope.init()}]),angular.module("ngSolr").directive("searchhints",function(){return{restrict:"A",link:function(scope,element){element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})}}}).directive("searchbox",function(){return{link:function(scope,element){element.bind("keyup",function(event){13===event.keyCode?""!==scope.userquery&&scope.handleSubmit(scope.userquery):scope.userquery=event.target.value}),element.autocomplete({delay:500,minLength:3,source:function(request,response){response($.ui.autocomplete.filter(scope.hints,request.term).slice(0,10))}})},restrict:"A",scope:!1}}).directive("searchbutton",function(){return{link:function(scope,element){element.bind("click",function(){""!==scope.userquery&&scope.handleSubmit(scope.userquery)})},restrict:"A",scope:!1}}),angular.module("ngSolr").directive("searchbox",["$location","$log","$routeParams","$timeout","$window","SolrSearchService","Utils",function($location,$log,$routeParams,$timeout,$window,SolrSearchService,Utils){return{link:function(scope,element,attrs){scope.showHints=!1,scope.hints=[],scope.maxHints=10,scope.messages=["Enter one or more search terms. Press Enter to search.","Key up or down to navigate hints. Press Enter to search.","Press Enter to search."],scope.message=scope.messages[0],scope.minSearchLength=3,scope.nearMatch=!1,scope.placeHolder="Keyword or place name",scope.queryBuffer=[],scope.redirect=void 0,scope.resetOnChange=!1,scope.searchHintsField="hints",scope.searchHintsQuery="hintsQuery",scope.selectedHint=-1,scope.showMessage=!0,scope.source=void 0,scope.timeout=void 0,scope.userQuery="",scope.clearHintSelection=function(){-1!==scope.selectedHint&&(scope.hints[scope.selectedHint].selected=!1)},scope.handleRouteChange=function(){var hash=$routeParams.query||"";if(""!==hash){var query=SolrSearchService.getQueryFromHash(hash,scope.source);scope.userQuery=query.getUserQuery()}else scope.userQuery=hash},scope.handleSubmit=function(){""===Utils.trim(scope.userQuery)&&(scope.userQuery="*:*");var query=SolrSearchService.getQuery(scope.queryName);void 0===query&&(query=SolrSearchService.createQuery(scope.source)),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery);var hash=query.getHash();scope.redirect?$window.location.href=scope.redirect+"#"+hash:$location.path(hash)},scope.handleUpdate=function(){scope.message=scope.messages[1];var query=SolrSearchService.getQuery(scope.searchHintsQuery),results=query.getFacetCounts();if(results&&results.hasOwnProperty("facet_fields")){scope.hints=[];var result=results.facet_fields[scope.searchHintsField];if(result)for(var i=0;i=scope.minSearchLength&&(scope.timeout&&$timeout.cancel(scope.timeout),scope.timeout=$timeout(function(){var query=SolrSearchService.createQuery(scope.source);query.setOption("rows","0"),query.setOption("facet","true"),query.setOption("facet.limit",scope.maxHints),query.setOption("facet.field",scope.searchHintsField),query.setNearMatch(scope.nearMatch),query.setUserQuery(scope.userQuery),SolrSearchService.setQuery(scope.searchHintsQuery,query),SolrSearchService.updateQuery(scope.searchHintsQuery)},350))},scope.selectHint=function(index){var hint=scope.hints[index];scope.userQuery=hint.title},scope.init()},replace:!1,restrict:"E",scope:{showHints:"&",nearMatch:"@",placeHolder:"@",queryName:"@",searchHintsField:"@",source:"@"},template:'
  • {{hint.title}}
{{message}}
',transclude:!0}}]),angular.module("ngSolr").filter("cleanFacetLabel",function(){return function(text){var val=text.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" ")}}).filter("prettyFacetLabel",function(){return function(facet){var result=facet.field.replace(/([A-Z])/g," $1"),label=result.charAt(0).toUpperCase()+result.slice(1),val=facet.value.split("(").join("");return val=val.split(")").join(""),val=val.split("[").join(""),val=val.split("]").join(""),val=val.split("*").join(" "),val=val.split("%2A").join(" "),val=val.split("?").join(" "),val=val.split("%3F").join(" "),val=val.replace(" TO ",""),val=val.replace("-01-01T00:00:00Z",""),val=val.replace("-12-31T23:59:59Z",""),label+": "+val}}).filter("strip",function(){return function(text){if(void 0===text)return text;var i=text.indexOf(", ");return-1!==i?text.substring(i+2):text}}).filter("substitute",function(){var map={ACT:"Australian Capital Territory",NSW:"New South Wales",NA:"Australia",NT:"Northern Territory",QLD:"Queensland",SA:"South Australia",TAS:"Tasmania",VIC:"Victoria",WA:"Western Australia"};return function(text){return text in map?map[text]:text}}).filter("swapFacetLabels",function(){return function(label){return 0===label.indexOf("fromDate")?label="toDate"+label.substring(8):0===label.indexOf("From Date")?label="To Date"+label.substring(9):0===label.indexOf("toDate")?label="fromDate"+label.substring(6):0===label.indexOf("To Date")?label="From Date"+label.substring(7):0===label.indexOf("Localtype")&&(label="Type"+label.substring(9)),label}}).filter("trim",function(){return function(text){return void 0===text?text:text.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}}).filter("truncate",function(){return function(text,limit){if(void 0===text)return text;if(text.length>limit){var t=text.substring(0,Math.min(limit,text.length)),i=t.lastIndexOf(" ");if(-1!==i)return text.substring(0,i)+" ..."}return text}}),angular.module("ngSolr").factory("SelectionSetService",["$rootScope",function($rootScope){var svc={};return svc.documents={},svc.multipleSelection=!1,Array.prototype.remove=function(from,to){var rest=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,rest)},svc.add=function(Key,Doc){svc.multipleSelection||(svc.documents={}),svc.documents[Key]=Doc,$rootScope.$broadcast("selectionSetUpdate")},svc.clear=function(){svc.documents={},$rootScope.$broadcast("selectionSetUpdate")},svc.clearSilent=function(){svc.documents={}},svc.get=function(Key){return svc.documents[Key]},svc.getSelectionSet=function(){return svc.documents},svc.remove=function(Key){delete svc.documents[Key],$rootScope.$broadcast("selectionSetUpdate")},svc}]),angular.module("ngSolr").factory("SolrSearchService",["$http","$log","$q","$rootScope","$sce",function($http,$log,$q,$rootScope,$sce){var defaultQuery=function(query){return query.setOption("fl","*"),query.setOption("rows",10),query.setOption("wt","json"),query.setUserQuery("*:*"),query};this.setDefaultQuery=function(Query){defaultQuery=Query};var svc={};return svc.defaultQueryName="defaultQuery",svc.queries={},svc.createQuery=function(Core){var query=new SolrQuery(Core);return defaultQuery(query)},svc.getQuery=function(Name){try{return svc.queries[Name]}catch(Err){return void $log.debug("No query named "+Name+" available")}},svc.getQueryComponents=function(Query){for(var parts=[];Query.length>0;){Query=Query.replace(/^\s\s*/,"");var x=Query.indexOf(" +"),y=Query.indexOf(" -");if(-1===x&&-1===y)return parts.push(Query),parts;x>-1&&(-1===y||x-1&&(parts.push(Query.substring(0,y)),Query=Query.substring(y))}return parts},svc.getQueryFromHash=function(Hash,CoreUrl){for(var query=svc.createQuery(CoreUrl),hash_elements=decodeURI(Hash).split("&"),i=0;i "+error);var response={};response.numFound=0,response.start=0,response.docs=[],query.setErrorMessage(msg),query.setFacetCounts([]),query.setHighlighting({}),query.setResponse(response),query.setResponseHeader({}),$rootScope.$broadcast(QueryName)})},svc}]),angular.module("ngSolr").factory("Utils",[function(){var d,day,i,key,month,months,p,parts,year,svc={};return svc.applyAttributes=function(attrs,scope){for(key in attrs)scope.hasOwnProperty(key)&&("true"===attrs[key]||"false"===attrs[key]?scope[key]="true"===attrs[key]:scope[key]=attrs[key])},svc.arraysAreEqual=function(A,B){return A.join("")===B.join("")},svc.convertMonthIndexToName=function(Index){return months={1:"January",2:"February",3:"March",4:"April",5:"May",6:"June",7:"July",8:"August",9:"September","01":"January","02":"February","03":"March","04":"April","05":"May","06":"June","07":"July","08":"August","09":"September",10:"October",11:"November",12:"December"},months[Index]},svc.formatDate=function(DateField){return DateField&&(i=DateField.indexOf("T"))?(d=DateField.substring(0,i),parts=d.split("-"),year=parts[0],month=svc.convertMonthIndexToName(parts[1]),day=svc.trimLeadingZero(parts[2]),month+", "+year):""},svc.objectsAreEqual=function(A,B){if(A===B)return!0;if(!(A instanceof Object&&B instanceof Object))return!1;if(A.constructor!==B.constructor)return!1;for(p in A)if(A.hasOwnProperty(p)){if(!B.hasOwnProperty(p))return!1;if(A[p]!==B[p]){if("object"!=typeof A[p])return!1;if(!svc.objectsAreEqual(A[p],B[p]))return!1}}for(p in B)if(B.hasOwnProperty(p)&&!A.hasOwnProperty(p))return!1;return!0},svc.startsWith=function(s1,s2){return!(!s1||!s2)&&s1.slice(0,s2.length)===s2},svc.trim=function(Val){return Val.replace(/^\s\s*/,"").replace(/\s\s*$/,"")},svc.trimLeadingZero=function(Val){return Val&&"0"===Val[0]?Val.substring(1):Val},svc.truncate=function(Field,Length){return Field&&Length&&Field.length>Length&&(Field=svc.trim(Field),Field=Field.substring(0,Math.min(Length,Field.length)),-1!==(i=Field.lastIndexOf(" "))&&(Field=Field.substring(0,i)+" ...")),Field},svc}]); //# sourceMappingURL=ngsolr.min.js.map \ No newline at end of file diff --git a/dist/ngsolr.min.js.map b/dist/ngsolr.min.js.map index 33e4a7c..5ba2163 100644 --- a/dist/ngsolr.min.js.map +++ b/dist/ngsolr.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["ngsolr.js"],"names":["SolrFacet","Field","Value","self","this","field","value","options","getOption","Name","getUrlFragment","query","option","hasOwnProperty","setOption","SolrQuery","Url","error","undefined","facets","facet_counts","highlighting","nearMatch","queryParameters","response","responseHeader","solr","addFacet","Facet","i","length","push","addQueryParameter","Parameter","createFacet","getErrorMessage","getFacet","getFacetCounts","getFacets","getHash","getQuery","key2","val","getSolrQueryUrl","encodeURI","getUserQuery","getUserQueryParameters","hasFacet","removeFacet","removeFacetByIndex","Index","splice","removeOption","setErrorMessage","Msg","setFacetCounts","FacetCounts","setHighlighting","Highlighting","setNearMatch","fq","setQueryParameters","Parameters","setResponse","Response","setResponseHeader","Header","setUserQuery","Query","app","angular","module","constant","api","env","defaultQuery","f","config","$routeProvider","when","event","otherwise","controller","$scope","$attrs","$location","$route","$routeParams","SolrSearchService","Utils","date","dateRange","endDateQuery","endDateResults","end_value","end_year","hash","item","start_value","start_year","startDateQuery","startDateResults","yearEnd","yearStart","_endDate","_startDate","endDate","endDateField","endDateQueryName","source","startDate","startDateField","startDateQueryName","updateOnInit","userquery","getDateRangeConstraint","StartDateField","StartDate","EndDateField","EndDate","getFirstDateRecord","Items","FieldName","docs","indexOf","substring","handleEndDateQueryUpdate","getResponse","handleStartDateQueryUpdate","handleUpdate","getQueryFromHash","createQuery","replace","updateFlag","setQuery","updateQuery","init","applyAttributes","$on","submit","path","$log","bin","count","histogram","histogramHeight","histogramMaxBins","histogramQueryName","histogramWidth","target","defaultQueryName","updateHistogram","updateOnTargetChange","handleHistogramQueryUpdate","Event","name","numFound","updateHistogramChart","handleTargetQueryUpdate","setQueryParameter","info","binRange","end","histogramQuery","range","start","Math","ceil","Number","label","margin","top","right","bottom","left","height","width","formatPercent","d3","format","select","remove","svg","append","attr","max","d","x","scale","ordinal","rangeBands","startYear","endYear","y","log","domain","rangeRound","axis","orient","tickFormat","style","text","selectAll","data","enter","on","exit","$window","Page","Num","number","isCurrent","documents","documentsPerPage","loading","page","pages","pagesPerSet","queryName","totalPages","totalResults","totalSets","updateLocationOnChange","handleSetPage","Start","oldHash","scrollTo","results","fromDate","formatDate","toDate","updatePageIndex","key","parseInt","currentSet","floor","firstPageInSet","lastPageInSet","previousSet","prevPage","nextSet","nextPage","items","FacetResult","Score","score","facet","facet_fields","facet_query","s","selected_values","exclusive","facetQuery","maxItems","selected","add","$event","split","join","preventDefault","documentsPerRow","fields","rows","startPage","row","SelectionSetService","lat","lng","categoryToIconMap","default","corporateBody","government","organization","person","centerOnStart","clusterManager","clusterOptions","styles","url","clusterResults","firstUpdate","idToMarkerMap","infoWindow","google","maps","InfoWindow","map","markers","maxFieldLength","settings","mapTypeControl","mapTypeId","MapTypeId","TERRAIN","navigationControl","navigationControlOptions","NavigationControlStyle","SMALL","overviewMapControl","panControl","rotateControl","scaleControl","streetViewControl","zoom","zoomControl","zoomControlOptions","ZoomControlStyle","LARGE","showMessages","showErrors","startLatitude","startLongitude","createMapQuery","getMarker","Map","Title","Content","Category","Lat","Lng","icon","Marker","position","LatLng","title","content","getMarkerContent","Item","dobj_proxy_small","presentation_url","truncate","abstract","handleSelection","getSelectionSet","keys","id","marker","bounds","LatLngBounds","extend","trigger","fitBounds","location","location_0_coordinate","location_1_coordinate","type","oms","addMarker","document","getElementById","OverlappingMarkerSpiderfier","addListener","close","setContent","open","point","setCenter","setInfoWindow","singleSelection","clearSelection","Id","clear","err","message","clearSilent","hintlist","result","token","trimmed","hints","maxHints","minSearchLength","redirect","resetOnChange","searchHintsField","searchHintsQuery","getHintList","getHints","handleSubmit","trim","href","toLowerCase","newquery","queries","unshift","pop","QueryIndex","directive","restrict","link","scope","element","autocomplete","delay","minLength","request","$","ui","filter","term","slice","bind","keyCode","$timeout","attrs","showHints","messages","placeHolder","queryBuffer","selectedHint","showMessage","timeout","userQuery","clearHintSelection","handleRouteChange","hint","highlightHint","index","$apply","resetHintSelection","children","form_div","query_input","querySelector","hints_div","hints_list","hints_message","onfocus","onblur","onkeyup","offsetWidth","setAttribute","selectHint","cancel","template","transclude","charAt","toUpperCase","ACT","NSW","NA","NT","QLD","SA","TAS","VIC","WA","limit","t","min","lastIndexOf","factory","$rootScope","svc","multipleSelection","Array","prototype","from","to","rest","apply","Key","Doc","$broadcast","get","$http","$q","$sce","setDefaultQuery","Core","Err","debug","getQueryComponents","parts","Hash","CoreUrl","hash_elements","decodeURI","eparts","startsWith","params","shift","j","p","DefaultQuery","s1","s2","updateAllQueries","updateQueriesInOrder","Queries","q","then","QueryName","jsonp","trustAsResourceUrl","jsonpCallbackParam","msg","day","month","months","year","arraysAreEqual","A","B","convertMonthIndexToName","1","2","3","4","5","6","7","8","9","01","02","03","04","05","06","07","08","09","10","11","12","DateField","trimLeadingZero","objectsAreEqual","Object","constructor","Val","Length"],"mappings":"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","file":"ngsolr.min.js"} \ No newline at end of file +{"version":3,"sources":["ngsolr.js"],"names":["SolrFacet","Field","Value","self","this","field","value","options","getOption","Name","getUrlFragment","query","option","hasOwnProperty","setOption","SolrQuery","Url","error","undefined","facets","facet_counts","highlighting","nearMatch","queryParameters","response","responseHeader","solr","addFacet","Facet","i","length","push","addQueryParameter","Parameter","createFacet","getErrorMessage","getFacet","getFacetCounts","getFacets","getHash","getQuery","key2","val","getSolrQueryUrl","encodeURI","getUserQuery","getUserQueryParameters","hasFacet","removeFacet","removeFacetByIndex","Index","splice","removeOption","setErrorMessage","Msg","setFacetCounts","FacetCounts","setHighlighting","Highlighting","setNearMatch","fq","setQueryParameters","Parameters","setResponse","Response","setResponseHeader","Header","setUserQuery","Query","app","angular","module","constant","api","env","defaultQuery","f","config","$routeProvider","when","event","otherwise","controller","$scope","$attrs","$location","$route","$routeParams","SolrSearchService","Utils","date","dateRange","endDateQuery","endDateResults","end_value","end_year","hash","item","start_value","start_year","startDateQuery","startDateResults","yearEnd","yearStart","_endDate","_startDate","endDate","endDateField","endDateQueryName","source","startDate","startDateField","startDateQueryName","updateOnInit","userquery","getDateRangeConstraint","StartDateField","StartDate","EndDateField","EndDate","getFirstDateRecord","Items","FieldName","docs","indexOf","substring","handleEndDateQueryUpdate","getResponse","handleStartDateQueryUpdate","handleUpdate","getQueryFromHash","createQuery","replace","updateFlag","setQuery","updateQuery","init","applyAttributes","$on","submit","path","$log","bin","count","histogram","histogramHeight","histogramMaxBins","histogramQueryName","histogramWidth","target","defaultQueryName","updateHistogram","updateOnTargetChange","handleHistogramQueryUpdate","Event","name","numFound","updateHistogramChart","handleTargetQueryUpdate","setQueryParameter","info","binRange","end","histogramQuery","range","start","Math","ceil","Number","label","margin","top","right","bottom","left","height","width","formatPercent","d3","format","select","remove","svg","append","attr","max","d","x","scale","ordinal","rangeBands","startYear","endYear","y","log","domain","rangeRound","axis","orient","tickFormat","style","text","selectAll","data","enter","on","exit","$window","Page","Num","number","isCurrent","documents","documentsPerPage","loading","page","pages","pagesPerSet","queryName","totalPages","totalResults","totalSets","updateLocationOnChange","handleSetPage","Start","oldHash","scrollTo","results","fromDate","formatDate","toDate","updatePageIndex","key","parseInt","currentSet","floor","firstPageInSet","lastPageInSet","previousSet","prevPage","nextSet","nextPage","items","FacetResult","Score","score","facet","facet_fields","facet_query","s","selected_values","exclusive","facetQuery","maxItems","selected","add","$event","RegExp","split","join","preventDefault","documentsPerRow","fields","rows","startPage","row","SelectionSetService","lat","lng","categoryToIconMap","default","corporateBody","government","organization","person","centerOnStart","clusterManager","clusterOptions","styles","url","clusterResults","firstUpdate","idToMarkerMap","infoWindow","google","maps","InfoWindow","map","markers","maxFieldLength","settings","mapTypeControl","mapTypeId","MapTypeId","TERRAIN","navigationControl","navigationControlOptions","NavigationControlStyle","SMALL","overviewMapControl","panControl","rotateControl","scaleControl","streetViewControl","zoom","zoomControl","zoomControlOptions","ZoomControlStyle","LARGE","showMessages","showErrors","startLatitude","startLongitude","createMapQuery","getMarker","Map","Title","Content","Category","Lat","Lng","icon","Marker","position","LatLng","title","content","getMarkerContent","Item","dobj_proxy_small","presentation_url","truncate","abstract","handleSelection","getSelectionSet","keys","id","marker","bounds","LatLngBounds","extend","trigger","fitBounds","location","location_0_coordinate","location_1_coordinate","type","oms","addMarker","document","getElementById","OverlappingMarkerSpiderfier","addListener","close","setContent","open","point","setCenter","setInfoWindow","singleSelection","clearSelection","Id","clear","err","message","clearSilent","hintlist","result","token","trimmed","hints","maxHints","minSearchLength","redirect","resetOnChange","searchHintsField","searchHintsQuery","getHintList","getHints","handleSubmit","trim","href","toLowerCase","newquery","queries","unshift","pop","QueryIndex","directive","restrict","link","scope","element","autocomplete","delay","minLength","request","$","ui","filter","term","slice","bind","keyCode","$timeout","attrs","showHints","messages","placeHolder","queryBuffer","selectedHint","showMessage","timeout","userQuery","clearHintSelection","handleRouteChange","hint","highlightHint","index","$apply","resetHintSelection","children","form_div","query_input","querySelector","hints_div","hints_list","hints_message","onfocus","onblur","onkeyup","offsetWidth","setAttribute","selectHint","cancel","template","transclude","charAt","toUpperCase","ACT","NSW","NA","NT","QLD","SA","TAS","VIC","WA","limit","t","min","lastIndexOf","factory","$rootScope","svc","multipleSelection","Array","prototype","from","to","rest","apply","Key","Doc","$broadcast","get","$http","$q","$sce","setDefaultQuery","Core","Err","debug","getQueryComponents","parts","Hash","CoreUrl","hash_elements","decodeURI","eparts","startsWith","params","shift","j","p","DefaultQuery","s1","s2","updateAllQueries","updateQueriesInOrder","Queries","q","then","QueryName","jsonp","trustAsResourceUrl","jsonpCallbackParam","msg","day","month","months","year","arraysAreEqual","A","B","convertMonthIndexToName","1","2","3","4","5","6","7","8","9","01","02","03","04","05","06","07","08","09","10","11","12","DateField","trimLeadingZero","objectsAreEqual","Object","constructor","Val","Length"],"mappings":";;AAAA,YAyiFA,SAASA,WAAUC,MAAOC,OAEtB,GAAIC,MAAOC,IAEXD,MAAKE,MAAQJ,MACbE,KAAKG,MAAQJ,MACbC,KAAKI,WAQLJ,KAAKK,UAAY,SAASC,MACtB,MAAON,MAAKI,QAAQE,OAOxBN,KAAKO,eAAiB,WAElB,GAAIC,OAAQ,EAEZA,QAAS,OAASR,KAAKE,MAAQ,IAAMF,KAAKG,KAC1C,KAAK,GAAIM,UAAUT,MAAKI,QAChBJ,KAAKI,QAAQM,eAAeD,UAC5BD,OAAS,IAAMC,OAAS,IAAMT,KAAKI,QAAQK,QAGnD,OAAOD,QAQXR,KAAKW,UAAY,SAASL,KAAKP,OAC3BC,KAAKI,QAAQE,MAAQP,OAW7B,QAASa,WAAUC,KAEf,GAAIb,MAAOC,IAGXD,MAAKc,UAAQC,GAGbf,KAAKgB,UAGLhB,KAAKiB,gBAGLjB,KAAKkB,gBAILlB,KAAKI,WAILJ,KAAKmB,WAAY,EAGjBnB,KAAKQ,MAAQ,MAIbR,KAAKoB,mBAGLpB,KAAKqB,YAGLrB,KAAKsB,kBAGLtB,KAAKuB,KAAOV,IAQZb,KAAKwB,SAAW,SAASC,OACrB,IAAK,GAAIC,GAAE,EAAEA,EAAE1B,KAAKgB,OAAOW,OAAOD,IAC9B,GAAI1B,KAAKgB,OAAOU,GAAGxB,QAAUuB,MAAMvB,OAC/BF,KAAKgB,OAAOU,GAAGvB,QAAUsB,MAAMtB,MAC/B,MAGRH,MAAKgB,OAAOY,KAAKH,QAQrBzB,KAAK6B,kBAAoB,SAASC,WAC9B,IAAK,GAAIJ,GAAE,EAAEA,EAAE1B,KAAKoB,gBAAgBO,OAAOD,IACvC,GAAI1B,KAAKoB,gBAAgBM,KAAOI,UAC5B,MAGR9B,MAAKoB,gBAAgBQ,KAAKE,YAS9B9B,KAAK+B,YAAc,SAASzB,KAAMP,OAC9B,MAAO,IAAIF,WAAUS,KAAMP,QAO/BC,KAAKgC,gBAAkB,WACnB,MAAOhC,MAAKc,OAOhBd,KAAKiC,SAAW,SAAS3B,MACrB,IAAK,GAAIoB,KAAK1B,MAAKgB,OACf,GAAIhB,KAAKgB,OAAOU,GAAGxB,QAAUI,KACzB,MAAON,MAAKgB,OAAOU,IAS/B1B,KAAKkC,eAAiB,WAClB,MAAOlC,MAAKiB,cAOhBjB,KAAKmC,UAAY,WACb,MAAOnC,MAAKgB,QAOhBhB,KAAKoC,QAAU,WACX,MAAO,IAAMpC,KAAKqC,YAQtBrC,KAAKK,UAAY,SAASC,MACtB,GAAIN,KAAKI,QAAQE,MACb,MAAON,MAAKI,QAAQE,OAQ5BN,KAAKqC,SAAW,WAEZ,GAAI7B,OAAQ,KAAOR,KAAKQ,KAEpBR,MAAKmB,YACLX,OAAS,IAGb,KAAK,GAAIkB,GAAE,EAAGA,EAAE1B,KAAKoB,gBAAgBO,OAAQD,IACzClB,OAAS,IAAMR,KAAKoB,gBAAgBM,EAGxC,KAAKA,EAAE,EAAGA,EAAE1B,KAAKgB,OAAOW,OAAQD,IAAK,CAEjClB,OADYR,KAAKgB,OAAOU,GACTnB,iBAGnB,IAAK,GAAI+B,QAAQtC,MAAKI,QAClB,GAAIJ,KAAKI,QAAQM,eAAe4B,MAAO,CACnC,GAAIC,KAAMvC,KAAKI,QAAQkC,KACvB9B,QAAS,IAAM8B,KAAO,IAAMC,IAGpC,MAAO/B,QAMXR,KAAKwC,gBAAkB,WACnB,MAAOxC,MAAKuB,KAAO,WAAakB,UAAUzC,KAAKqC,aAOnDrC,KAAK0C,aAAe,WAChB,MAAO1C,MAAKQ,OAOhBR,KAAK2C,uBAAyB,WAC1B,MAAO3C,MAAKoB,iBAOhBpB,KAAK4C,SAAW,SAAStC,MACrB,QAAIN,KAAKiC,SAAS3B,OAUtBN,KAAK6C,YAAc,SAASvC,MACxB,IAAK,GAAIoB,GAAE,EAAEA,EAAE1B,KAAKgB,OAAOW,OAAOD,IAC9B,GAAI1B,KAAKgB,OAAOU,GAAGxB,QAAUI,KAEzB,WADAN,MAAK8C,mBAAmBpB,IAUpC1B,KAAK8C,mBAAqB,SAASC,OAC/B/C,KAAKgB,OAAOgC,OAAOD,MAAO,IAO9B/C,KAAKiD,aAAe,SAAS3C,YAClBN,MAAKI,QAAQE,OAOxBN,KAAKkD,gBAAkB,SAASC,KAC5BnD,KAAKc,MAAQqC,KAOjBnD,KAAKoD,eAAiB,SAASC,aAC3BrD,KAAKiB,aAAeoC,aAOxBrD,KAAKsD,gBAAkB,SAASC,cAC5BvD,KAAKkB,aAAeqC,cAOxBvD,KAAKwD,aAAe,SAASrC,YACP,IAAdA,YAAoC,IAAdA,YACtBnB,KAAKmB,UAAYA,YASzBnB,KAAKW,UAAY,SAASL,KAAKP,OAE3B,GAAa,OAATO,KAAe,CACf,GAAImD,IAAKzD,KAAKK,UAAUC,KAEpBN,MAAKI,QAAQE,UADNS,KAAP0C,IAA2B,KAAPA,GACCA,GAAK,KAAO1D,MAEZ,IAAMA,UAG/BC,MAAKI,QAAQE,MAAQP,OAQ7BC,KAAK0D,mBAAqB,SAASC,YAC/B3D,KAAKoB,gBAAkBuC,YAO3B3D,KAAK4D,YAAc,SAASC,UACxB7D,KAAKqB,SAAWwC,UAOpB7D,KAAK8D,kBAAoB,SAASC,QAC9B/D,KAAKsB,eAAiByC,QAO1B/D,KAAKgE,aAAe,SAASC,OACzBjE,KAAKQ,MAAQyD,OA74FrB,GAAIC,KAAMC,QAAQC,OAAO,UAAW,UAAU,cAG9CF,KAAIG,SAAS,OACTC,IAAO,YACPC,KAAS,cAAc,UAAU,gBAIrCL,IAAIG,SAAS,QACTG,aAAc,SAAShE,OACnB,GAAIiE,GAAIjE,MAAMuB,YAAY,wBAAyB,IAOnD,OANAvB,OAAMgB,SAASiD,GACfjE,MAAMG,UAAU,KAAM,KACtBH,MAAMG,UAAU,OAAQ,QACxBH,MAAMG,UAAU,OAAQ,aACxBH,MAAMG,UAAU,KAAM,QACtBH,MAAMwD,aAAa,OACZxD,SA0Bf0D,IAAIQ,QAAQ,iBAAkB,SAASC,gBACnCA,eACIC,KAAK,WAAaC,MAAO,WACzBC,WAAYD,MAAO,SAkB3BV,QACKC,OAAO,UACPW,WAAW,uBACP,SAAS,SAAS,YAAY,SAAS,eAAe,oBAAoB,QAC3E,SAAUC,OAAQC,OAAQC,UAAWC,OAAQC,aAAcC,kBAAmBC,OAElF,GAAIC,MAAMC,UAAWC,aAAcC,eAAgBC,UAAWC,SAC1DnB,EAAGoB,KAAMnE,EAAGoE,KAAMtF,MAAOuF,YAAaC,WAAYC,eAClDC,iBAAkBC,QAASC,SAG/BpB,QAAOqB,SAAW,EAClBrB,OAAOsB,WAAa,EAGpBtB,OAAOuB,QAAU,EAGjBvB,OAAOwB,aAAe,SAGtBxB,OAAOyB,iBAAmB,eAG1BzB,OAAO0B,WAAS3F,GAGhBiE,OAAO2B,UAAY,EAGnB3B,OAAO4B,eAAiB,WAGxB5B,OAAO6B,mBAAqB,iBAG5B7B,OAAO8B,cAAe,EAGtB9B,OAAO+B,UAAY,MAanB/B,OAAOgC,uBAAyB,SAASC,eAAgBC,UAAWC,aAAcC,SAU9E,MATAhB,WAAY,mBACZD,QAAU,mBAGVX,UAAY,KACZA,WAAayB,eAAiB,WAAaG,QAAUjB,QAAU,KAC/DX,WAAa,QACbA,WAAa2B,aAAe,MAAQD,UAAYd,UAAY,UAC5DZ,WAAa,KASjBR,OAAOqC,mBAAqB,SAASC,MAAOC,WACxC,MAAID,QAASA,MAAME,MAAQF,MAAME,KAAK7F,OAAS,IAC3CmE,KAAOwB,MAAME,KAAK,OAELzG,MADbwE,KAAOO,KAAKyB,cAER7F,EAAI6D,KAAKkC,QAAQ,KACVlC,KAAKmC,UAAU,EAAGhG,IAG1B,GAMXsD,OAAO2C,yBAA2B,YAC9BjC,eAAiBL,kBAAkBuC,YAAY5C,OAAOyB,qBAElDzB,OAAOqB,SAAWrB,OAAOqC,mBAAmB3B,eAAgBV,OAAOwB,cACnExB,OAAOuB,QAAUvB,OAAOqC,mBAAmB3B,eAAgBV,OAAOwB,gBAO1ExB,OAAO6C,2BAA6B,YAChC3B,iBAAmBb,kBAAkBuC,YAAY5C,OAAO6B,uBAEpD7B,OAAOsB,WAAatB,OAAOqC,mBAAmBnB,iBAAkBlB,OAAO4B,gBACvE5B,OAAO2B,UAAY3B,OAAOqC,mBAAmBnB,iBAAkBlB,OAAO4B,kBAO9E5B,OAAO8C,aAAe,WAClBjC,KAAQT,aAAa5E,OAAS,GAG1BA,MADAqF,KACQR,kBAAkB0C,iBAAiBlC,KAAMb,OAAO0B,QAEhDrB,kBAAkB2C,YAAYhD,OAAO0B,QAIjDjC,EAAIjE,MAAMyB,SAAS+C,OAAOwB,cACtB/B,GAGAuB,WAAavB,EAAEtE,MAAM8H,QAAQ,IAAI,IAAIA,QAAQ,yBAAyB,IACtEjD,OAAOsB,WAAaN,WACpBhB,OAAO2B,UAAYX,WACnBhB,OAAOkD,YAAc,IAErBjC,eAAiBZ,kBAAkB2C,YAAYhD,OAAO0B,QACtDT,eAAetF,UAAU,KAAMqE,OAAO4B,gBACtCX,eAAetF,UAAU,OAAQ,KACjCsF,eAAetF,UAAU,OAAQqE,OAAO4B,eAAiB,QACzDX,eAAejC,aAAagB,OAAO+B,WACnC1B,kBAAkB8C,SAASnD,OAAO6B,mBAAoBZ,gBACtDZ,kBAAkB+C,YAAYpD,OAAO6B,qBAIzCpC,EAAIjE,MAAMyB,SAAS+C,OAAO4B,gBACtBnC,GAGAmB,SAAWnB,EAAEtE,MAAM8H,QAAQ,SAAS,IAAIA,QAAQ,oBAAoB,IACpEjD,OAAOqB,SAAWT,SAClBZ,OAAOuB,QAAUX,SACjBZ,OAAOkD,YAAc,IAErBzC,aAAeJ,kBAAkB2C,YAAYhD,OAAO0B,QACpDjB,aAAa9E,UAAU,KAAMqE,OAAOwB,cACpCf,aAAa9E,UAAU,OAAQ,KAC/B8E,aAAa9E,UAAU,OAAQqE,OAAOwB,aAAe,SACrDf,aAAazB,aAAagB,OAAO+B,WACjC1B,kBAAkB8C,SAASnD,OAAOyB,iBAAkBhB,cACpDJ,kBAAkB+C,YAAYpD,OAAOyB,oBAQ7CzB,OAAOqD,KAAO,WAEV/C,MAAMgD,gBAAgBrD,OAAQD,QAE9BA,OAAOuD,IAAI,sBAAuB,WAC9BvD,OAAO8C,iBAGX9C,OAAOuD,IAAIvD,OAAO6B,mBAAoB,WAClC7B,OAAO6C,+BAEX7C,OAAOuD,IAAIvD,OAAOyB,iBAAkB,WAChCzB,OAAO2C,8BAOf3C,OAAOwD,OAAS,WAGZ,GAAIxD,OAAO2B,UAAY3B,OAAOuB,QAI1B,MAFAvB,QAAOuB,QAAUvB,OAAOqB,cACxBrB,OAAO2B,UAAY3B,OAAOsB,WAI9BT,MAAQT,aAAa5E,OAAS,GAE1BA,MADAqF,KACQR,kBAAkB0C,iBAAiBlC,KAAMb,OAAO0B,QAEhDrB,kBAAkB2C,YAAYhD,OAAO0B,QAGjDlG,MAAMqC,YAAYmC,OAAO4B,gBACzBpG,MAAMqC,YAAYmC,OAAOwB,cAEzBT,YAAc,SAAWf,OAAOuB,QAAU,oBAC1CZ,UAAY,IAAMX,OAAO2B,UAAY,yBACrClC,EAAIjE,MAAMuB,YAAYiD,OAAO4B,eAAgBb,aAC7CvF,MAAMgB,SAASiD,GACfA,EAAIjE,MAAMuB,YAAYiD,OAAOwB,aAAcb,WAC3CnF,MAAMgB,SAASiD,GAEfoB,KAAOrF,MAAM4B,UACb8C,UAAUuD,KAAK5C,OAInBb,OAAOqD,UAwBXlE,QACKC,OAAO,UACPW,WAAW,gCACP,SAAS,SAAS,YAAY,OAAO,SAAS,eAAe,oBAAoB,QAClF,SAAUC,OAAQC,OAAQC,UAAWwD,KAAMvD,OAAQC,aAAcC,kBAAmBC,OAExF,GAAIqD,KAAKC,MAAOrD,KAAMG,eAAgBhE,EAAGoE,KAAMtF,MAAO0F,iBAAkBa,SAGxE/B,QAAOqB,SAAW,EAClBrB,OAAOsB,WAAa,EAGpBtB,OAAOuB,QAAU,EAGjBvB,OAAOwB,aAAe,SAGtBxB,OAAOyB,iBAAmB,eAG1BzB,OAAO6D,aAGP7D,OAAO8D,gBAAkB,IAGzB9D,OAAO+D,iBAAmB,GAG1B/D,OAAOgE,mBAAqB,iBAG5BhE,OAAOiE,eAAiB,IAGxBjE,OAAO0B,WAAS3F,GAGhBiE,OAAO2B,UAAY,EAGnB3B,OAAO4B,eAAiB,WAGxB5B,OAAO6B,mBAAqB,iBAG5B7B,OAAOkE,OAAS7D,kBAAkB8D,iBAGlCnE,OAAOkD,WAAa,EAGpBlD,OAAOoE,iBAAkB,EAGzBpE,OAAO8B,cAAe,EAGtB9B,OAAOqE,sBAAuB,EAS9BrE,OAAOqC,mBAAqB,SAASC,MAAOC,WACxC,MAAID,QAASA,MAAME,MAAQF,MAAME,KAAK7F,OAAS,IAC3CmE,KAAOwB,MAAME,KAAK,OAELzG,MADbwE,KAAOO,KAAKyB,cAER7F,EAAI6D,KAAKkC,QAAQ,KACVlC,KAAKmC,UAAU,EAAEhG,IAGzB,GAMXsD,OAAO2C,yBAA2B,WAC9BjC,eAAiBL,kBAAkBuC,YAAY5C,OAAOyB,kBAClDf,iBACAV,OAAOqB,SAAWrB,OAAOqC,mBAAmB3B,eAAeV,OAAOwB,cAClExB,OAAOuB,QAAUvB,OAAOqC,mBAAmB3B,eAAeV,OAAOwB,eAGrExB,OAAOkD,aACHlD,OAAOoE,iBAAyC,IAAtBpE,OAAOkD,YACjClD,OAAOoE,mBAOfpE,OAAOsE,2BAA6B,SAASC,OAEzC7H,EAAI6H,MAAMC,KAAK/B,QAAQ,KACvBkB,IAAMY,MAAMC,KAAK9B,UAAUhG,EAAE,EAAE6H,MAAMC,KAAK7H,QAE1CnB,MAAQ6E,kBAAkBhD,SAASkH,MAAMC,MACzCZ,MAAQpI,MAAMa,SAASoI,SACvBzE,OAAO6D,UAAUF,KAAKC,MAAQA,MAE9B5D,OAAO0E,wBAMX1E,OAAO6C,2BAA6B,WAChC3B,iBAAmBb,kBAAkBuC,YAAY5C,OAAO6B,oBACpDX,mBACAlB,OAAOsB,WAAatB,OAAOqC,mBAAmBnB,iBAAiBlB,OAAO4B,gBACtE5B,OAAO2B,UAAY3B,OAAOqC,mBAAmBnB,iBAAiBlB,OAAO4B,iBAGzE5B,OAAOkD,aACHlD,OAAOoE,iBAAyC,IAAtBpE,OAAOkD,YACjClD,OAAOoE,mBAQfpE,OAAO2E,wBAA0B,WAC7BnJ,MAAQ6E,kBAAkBhD,SAAS2C,OAAOkE,QAC1CnC,UAAYvG,MAAMkC,eAElBlC,MAAQ6E,kBAAkBhD,SAAS2C,OAAO6B,oBAC1CrG,MAAMwD,aAAa+C,WAEnBvG,MAAQ6E,kBAAkBhD,SAAS2C,OAAOyB,kBAC1CjG,MAAMwD,aAAa+C,WAEnB/B,OAAOkD,YAAc,EACrB7C,kBAAkB+C,YAAYpD,OAAO6B,oBACrCxB,kBAAkB+C,YAAYpD,OAAOyB,mBAQzCzB,OAAOqD,KAAO,WAEV/C,MAAMgD,gBAAgBrD,OAAQD,QAE9BA,OAAOuD,IAAI,sBAAuB,WAE9B,GADAvD,OAAOxE,MAAS4E,aAAa5E,OAAS,GAClCwE,OAAOxE,MAAO,CACd,GAAIA,OAAQ6E,kBAAkB0C,iBAAiB/C,OAAOxE,MAAOwE,OAAO0B,OACpE1B,QAAO+B,UAAYvG,MAAMkC,eAG7B,GAAIuD,gBAAiBZ,kBAAkB2C,aACvC/B,gBAAetF,UAAU,KAAMqE,OAAO4B,gBACtCX,eAAetF,UAAU,OAAO,KAChCsF,eAAetF,UAAU,OAAOqE,OAAO4B,eAAiB,QACxDX,eAAejC,aAAagB,OAAO+B,WACnC1B,kBAAkB8C,SAASnD,OAAO6B,mBAAoBZ,eAEtD,IAAIR,cAAeJ,kBAAkB2C,aACrCvC,cAAa9E,UAAU,KAAMqE,OAAOwB,cACpCf,aAAa9E,UAAU,OAAO,KAC9B8E,aAAa9E,UAAU,OAAOqE,OAAOwB,aAAe,SACpDf,aAAazB,aAAagB,OAAO+B,WACjC1B,kBAAkB8C,SAASnD,OAAOyB,iBAAkBhB,cAEhDT,OAAO8B,eACP9B,OAAOkD,YAAc,EACrB7C,kBAAkB+C,YAAYpD,OAAO6B,oBACrCxB,kBAAkB+C,YAAYpD,OAAOyB,qBAI7CzB,OAAOuD,IAAIvD,OAAO6B,mBAAoB,WAClC7B,OAAO6C,+BAEX7C,OAAOuD,IAAIvD,OAAOyB,iBAAkB,WAChCzB,OAAO2C,8BAOf3C,OAAOwD,OAAS,WACZ,GAAIxD,OAAO2B,WAAa3B,OAAOuB,QAAS,CACpC,GAAI/F,OAAQ6E,kBAAkBhD,SAAS2C,OAAOkE,OAC9C,IAAI1I,MAAO,CACP,GAAIgF,WAAYR,OAAOgC,uBAAuBhC,OAAO4B,eAAe5B,OAAO2B,UAAU3B,OAAOwB,aAAaxB,OAAOuB,QAChH/F,OAAMoJ,kBAAkB,YAAYpE,WACpCH,kBAAkB+C,YAAYpD,OAAOkE,aAIzClE,QAAOuB,QAAUvB,OAAOqB,SACxBrB,OAAO2B,UAAY3B,OAAOsB,WAC1BoC,KAAKmB,KAAK,iDAOlB7E,OAAOoE,gBAAkB,WACrB,GAAIT,KAAKmB,SAAUtE,UAAWuE,IAAKC,eAAgBhB,mBAAoBtH,EAAGuI,MAAOC,KAKjF,KAHAlF,OAAO6D,aACPoB,MAAQE,KAAKC,KAAKpF,OAAOuB,QAAUvB,OAAO2B,WAC1CmD,SAAWK,KAAKC,KAAKH,MAAQjF,OAAO+D,kBAC/BrH,EAAE,EAAEA,EAAEsD,OAAO+D,iBAAiBrH,IAC/BwI,MAAQG,OAAOrF,OAAO2B,WAAcmD,SAAWpI,EAC/CqI,IAAMG,MAAQJ,SACdnB,OACAA,IAAIuB,MAAQA,MACZvB,IAAIoB,IAAOA,IAAM/E,OAAOuB,QAAWvB,OAAOuB,QAAUwD,IACpDpB,IAAI2B,MAAQJ,MAAQ,OAASvB,IAAIoB,IACjCpB,IAAIC,MAAS,GAAKlH,EAAK,EACvBsD,OAAO6D,UAAUjH,KAAK+G,IAG1B,KAAKjH,EAAE,EAAEA,EAAEsD,OAAO6D,UAAUlH,OAAOD,IAC/BiH,IAAM3D,OAAO6D,UAAUnH,GAEvBsI,eAAiB3E,kBAAkB2C,cACnCgB,mBAAqBhE,OAAOgE,mBAAqB,IAAMtH,EACvD8D,UAAYR,OAAOgC,uBAAuBhC,OAAO4B,eAAgB+B,IAAIuB,MAAOlF,OAAOwB,aAAcmC,IAAIoB,KACrGC,eAAerJ,UAAU,OAAO,KAChCqJ,eAAeJ,kBAAkB,YAAYpE,WAC7CH,kBAAkB8C,SAASa,mBAAmBgB,gBAE9ChF,OAAOuD,IAAIS,mBAAoB,SAASA,oBACpChE,OAAOsE,2BAA2BN,sBAGtC3D,kBAAkB+C,YAAYY,qBAOtChE,OAAO0E,qBAAuB,WAC1B,GAAIa,SAAUC,IAAI,EAAGC,MAAM,GAAIC,OAAO,EAAGC,KAAK,GAC1CC,OAAS5F,OAAO8D,gBAAkByB,OAAOC,IAAMD,OAAOG,OACtDG,MAAQ7F,OAAOiE,eAAiBsB,OAAOI,KAAOJ,OAAOE,MACrDK,cAAgBC,GAAGC,OAAO,MAE9BD,IAAGE,OAAO,yBAAyBA,OAAO,OAAOC,QACjD,IAAIC,KAAMJ,GAAGE,OAAO,yBAAyBG,OAAO,OAC/CC,KAAK,QAASR,MAAQN,OAAOI,KAAOJ,OAAOE,OAC3CY,KAAK,SAAUT,OAASL,OAAOC,IAAMD,OAAOG,QAC5CU,OAAO,KACPC,KAAK,YAAa,aAAed,OAAOI,KAAO,IAAMJ,OAAOC,IAAM,KAEnEc,IAAMP,GAAGO,IAAItG,OAAO6D,UAAW,SAAS0C,GAAK,MAAOA,GAAE3C,QACtD4C,EAAIT,GAAGU,MAAMC,UACZC,YAAY3G,OAAO4G,UAAW5G,OAAO6G,UACtCC,EAAIf,GAAGU,MAAMM,MACZC,QAAQ,EAAEV,MACVW,YAAY,EAAErB,QAEnBG,IAAGI,IAAIe,OACFT,MAAMD,GACNW,OAAO,UACZpB,GAAGI,IAAIe,OACFT,MAAMK,GACNK,OAAO,QACPC,WAAWtB,eAEhBU,EAAEQ,QAAQhH,OAAO4G,UAAW5G,OAAO6G,UAEnCC,EAAEE,QAAQ,EAAGV,MAEbP,GAAGE,OAAO,QACLG,OAAO,OACPiB,MAAM,aAAa,SACnBA,MAAM,SAAS,kBACfA,MAAM,WAAY,YAClBA,MAAM,UAAW,MACjBA,MAAM,aAAc,UACpBC,KAAK,oBAEVnB,IAAIoB,UAAU,QACTC,KAAKxH,OAAO6D,WACZ4D,QACArB,OAAO,QACPC,KAAK,KAAK,SAAUE,EAAE7J,GAAK,MAAO,gBAAkBA,IACpD2J,KAAK,QAAQ,OACbA,KAAK,IAAK,SAASE,EAAG7J,GAAK,MAAQA,IAAKmJ,MAAQN,OAAOI,KAAOJ,OAAOE,OAASzF,OAAO+D,mBACrFsC,KAAK,SAAWR,MAAQN,OAAOI,KAAOJ,OAAOE,OAASzF,OAAO+D,iBAAoB,GACjFsC,KAAK,IAAK,SAASE,GAAK,MAAOX,QAAUA,OAASW,EAAE3C,MAAQ0C,MAC5DD,KAAK,SAAU,SAASE,GAAK,MAAOX,QAASW,EAAE3C,MAAQ0C,MACvDoB,GAAG,QAAQ,SAASnB,GACjBvG,OAAOuB,QAAUgF,EAAExB,IACnB/E,OAAO2B,UAAY4E,EAAErB,MACrBlF,OAAOwD,WAEf2C,IAAIoB,UAAU,QACTC,KAAKxH,OAAO6D,WACZ8D,OACAzB,aAqBb/G,QACKC,OAAO,UACPW,WAAW,mCACP,SAAS,SAAS,YAAY,SAAS,eAAe,UAAU,oBAAoB,QACrF,SAAUC,OAAQC,OAAQC,UAAWC,OAAQC,aAAcwH,QAASvH,kBAAmBC,OAoD3F,QAASuH,MAAKvM,KAAKwM,KACf7M,KAAKuJ,KAAOlJ,KACZL,KAAK8M,OAASD,IACd7M,KAAK+M,WAAY,EApDrBhI,OAAOiI,aAGPjI,OAAOkI,iBAAmB,GAI1BlI,OAAOmI,SAAU,EAGjBnI,OAAOoI,KAAO,EAGdpI,OAAOqI,SAGPrI,OAAOsI,YAAc,GAGrBtI,OAAOuI,UAAYlI,kBAAkB8D,iBAGrCnE,OAAO0B,WAAS3F,GAGhBiE,OAAOkF,MAAQ,EAGflF,OAAOwI,WAAa,EAGpBxI,OAAOyI,aAAe,EAGtBzI,OAAO0I,UAAY,EAGnB1I,OAAO2I,wBAAyB,EAGhC3I,OAAO+B,UAAY,GAmBnB/B,OAAO4I,cAAgB,SAASC,OAC5B,GAAIrN,OAAQ6E,kBAAkBhD,SAAS2C,OAAOuI,WAC1CO,QAAUtN,MAAM4B,SAEpB,IADA5B,MAAMG,UAAU,QAASkN,MAAQ7I,OAAOkI,kBACpClI,OAAO2I,uBAAwB,CAC/B,GAAI9H,MAAOrF,MAAM4B,SACjB8C,WAAUuD,KAAKvD,UAAUuD,OAAOR,QAAQ6F,QAASjI,OACjD+G,QAAQmB,SAAS,EAAG,OAEpB/I,QAAOmI,SAAU,EACjB9H,kBAAkB+C,YAAYpD,OAAOuI,YAO7CvI,OAAO8C,aAAe,WAElB9C,OAAOiI,aACPjI,OAAOmI,SAAU,CAEjB,IAAIa,SAAU3I,kBAAkBuC,YAAY5C,OAAOuI,UACnD,IAAIS,SAAWA,QAAQxG,KAAM,CACzBxC,OAAOyI,aAAeO,QAAQvE,SAE9BzE,OAAOwI,WAAarD,KAAKC,KAAKpF,OAAOyI,aAAezI,OAAOkI,kBAC3DlI,OAAO0I,UAAYvD,KAAKC,KAAKpF,OAAOwI,WAAaxI,OAAOsI,YAExD,KAAK,GAAI5L,GAAE,EAAEA,EAAEsM,QAAQxG,KAAK7F,QAAUD,EAAEsD,OAAOkI,iBAAiBxL,IAE5DsM,QAAQxG,KAAK9F,GAAGuM,SAAW3I,MAAM4I,WAAWF,QAAQxG,KAAK9F,GAAGuM,UAC5DD,QAAQxG,KAAK9F,GAAGyM,OAAS7I,MAAM4I,WAAWF,QAAQxG,KAAK9F,GAAGyM,QAE1DnJ,OAAOiI,UAAUrL,KAAKoM,QAAQxG,KAAK9F,QAGvCsD,QAAOiI,aACPjI,OAAOyI,aAAe,EACtBzI,OAAOwI,WAAa,EACpBxI,OAAO0I,UAAY,CAGvB1I,QAAOoJ,mBAMXpJ,OAAOqD,KAAO,WAEV,IAAK,GAAIgG,OAAOpJ,QACRD,OAAOtE,eAAe2N,OACV,qBAARA,KAAsC,gBAARA,IAC9BrJ,OAAOqJ,KAAOC,SAASrJ,OAAOoJ,MACP,SAAhBpJ,OAAOoJ,MAAmC,UAAhBpJ,OAAOoJ,KACxCrJ,OAAOqJ,KAAuB,SAAhBpJ,OAAOoJ,KAErBrJ,OAAOqJ,KAAOpJ,OAAOoJ,KAKjCrJ,QAAOuD,IAAI,sBAAuB,WAG9B,GADAvD,OAAOxE,MAAS4E,aAAa5E,OAAS,GAClCwE,OAAOxE,MAAO,CAEdwE,OAAOmI,SAAU,CAEjB,IAAI3M,OAAQ6E,kBAAkB0C,iBAAiB/C,OAAOxE,MAAOwE,OAAO0B,OAEhE1B,QAAO0B,SACPlG,MAAMe,KAAOyD,OAAO0B,QAExBlG,MAAMG,UAAU,OAAOqE,OAAOkI,kBAE9BlI,OAAO+B,UAAYvG,MAAMkC,eAEzB2C,kBAAkB8C,SAASnD,OAAOuI,UAAW/M,OAC7CwE,OAAOmI,SAAU,EACjB9H,kBAAkB+C,YAAYpD,OAAOuI,cAI7CvI,OAAOuD,IAAIvD,OAAOuI,UAAW,WACzBvI,OAAO8C,kBASf9C,OAAOoJ,gBAAkB,WACrB,GAAI5N,OAAQ6E,kBAAkBhD,SAAS2C,OAAOuI,UAC9CvI,QAAOkI,iBAAoB1M,MAAMH,UAAU,SAAW2E,OAAOkI,iBAC7DlI,OAAOoI,KAAQjD,KAAKC,KAAK5J,MAAMH,UAAU,SAAW2E,OAAOkI,mBAAqB,EAEhFlI,OAAOqI,QAEP,IAAIkB,YAAapE,KAAKqE,MAAMxJ,OAAOoI,KAAOpI,OAAOsI,aAE7CmB,eAAkBF,WAAavJ,OAAOsI,YAAe,EACrDoB,cAAgBD,eAAiBzJ,OAAOsI,YAAc,CAK1D,IAJIoB,cAAgB1J,OAAOwI,aACvBkB,cAAgB1J,OAAOwI,YAGvBxI,OAAO0I,UAAY,GAAoB,IAAfa,WAAkB,CAC1C,GAAII,aAAcF,eAAiBzJ,OAAOsI,YAAc,EACpDsB,SAAW,GAAI/B,MAAK,IAAK8B,YAC7B3J,QAAOqI,MAAMzL,KAAKgN,UAGtB,IAAK,GAAIlN,GAAE+M,eAAgB/M,GAAGgN,cAAehN,IAAK,CAC9C,GAAI0L,MAAO,GAAIP,MAAKnL,EAAGA,EAAE,EACrB0L,MAAKL,SAAW/H,OAAOoI,OACvBA,KAAKJ,WAAY,GAErBhI,OAAOqI,MAAMzL,KAAKwL,MAGtB,GAAIpI,OAAO0I,UAAU,GAAKa,WAAWvJ,OAAO0I,UAAU,EAAG,CACrD,GAAImB,SAAUH,cACVI,SAAW,GAAIjC,MAAK,IAAKgC,QAC7B7J,QAAOqI,MAAMzL,KAAKkN,YAK1B9J,OAAOqD,UAmBXlE,QAAQC,OAAO,UAAUW,WAAW,4BAC/B,SAAS,SAAS,YAAY,SAAS,eAAe,UAAU,oBACjE,SAAUC,OAAQC,OAAQC,UAAWC,OAAQC,aAAcwH,QAAUvH,mBAErE,GAAIQ,MAAMwI,IAAK7N,KAGfwE,QAAO+J,SAGP/J,OAAO0B,WAAS3F,GAGhBiE,OAAOkE,OAAS7D,kBAAkB8D,iBAQlCnE,OAAOkG,OAAS,SAASnI,OACrBvC,MAAQ6E,kBAAkBhD,SAAS2C,OAAOkE,OAC1C,IAAI4E,SAAUtN,MAAM4B,SACpB5B,OAAMsC,mBAAmBC,OAEzB8C,KAAOrF,MAAM4B,UACb8C,UAAUuD,KAAKvD,UAAUuD,OAAOR,QAAQ6F,QAASjI,QAMrDb,OAAO8C,aAAe,WAClBjC,KAAQT,aAAa5E,OAAS,IAC9BA,MAAQ6E,kBAAkB0C,iBAAiBlC,KAAMb,OAAO0B,WAEpD1B,OAAO+J,MAAQvO,MAAM2B,cAO7B6C,OAAOqD,KAAO,WAEV,IAAKgG,MAAOpJ,QACJD,OAAOtE,eAAe2N,OACtBrJ,OAAOqJ,KAAOpJ,OAAOoJ,KAI7BrJ,QAAOuD,IAAI,sBAAuB,WAC9BvD,OAAO8C,kBAKf9C,OAAOqD,UAuBXlE,QACKC,OAAO,UACPW,WAAW,wBACP,SAAS,SAAS,YAAY,SAAS,eAAe,UAAU,oBACjE,SAAUC,OAAQC,OAAQC,UAAWC,OAAQC,aAAcwH,QAASvH,mBAuCxE,QAAS2J,aAAYjP,MAAOkP,OACxBhP,KAAKE,MAAQJ,MACbE,KAAKiP,MAAQD,MAvCjB,GAAIrG,OAAOnE,EAAG0K,MAAOC,aAAcpO,OAAQqO,YAAaxJ,KAAMnE,EAAG2M,IAAK7E,KAAMhJ,MAAOwN,QAASsB,EAAGC,gBAAiBpP,KAGhH6E,QAAOwK,WAAY,EAGnBxK,OAAOyK,WAAa,aAGpBzK,OAAOhE,UAGPgE,OAAO9E,MAAQ,GAGf8E,OAAO+J,SAGP/J,OAAO0K,SAAW,EAIlB1K,OAAOuI,UAAYlI,kBAAkB8D,iBAGrCnE,OAAO2K,UAAW,EAGlB3K,OAAO0B,WAAS3F,GAoBhBiE,OAAO4K,IAAM,SAASC,OAAQ9M,OAY1B,GAVAvC,MAAQ6E,kBAAkBhD,SAAS2C,OAAOuI,eAC5BxM,KAAVP,QACAA,MAAQ6E,kBAAkB2C,YAAYhD,OAAO0B,SAEjD8C,KAAOxE,OAAO9E,MAGdC,MAAQ,IAAM6E,OAAO+J,MAAMhM,OAAO5C,MAAM8H,QAAQ,GAAI6H,QAAO,IAAK,KAAK,KAAKC,MAAM,KAAKC,KAAK,KAAO,IACjGb,MAAQ3O,MAAMuB,YAAYyH,KAAMrJ,QAEM,IAAlC6E,OAAOhE,OAAOyG,QAAQ0H,OAAe,CACrC,GAAIrB,SAAUtN,MAAM4B,SACpB5B,OAAMgB,SAAS2N,OACf3O,MAAMJ,QAAQ8J,MAAQ,EAEtBrE,KAAOrF,MAAM4B,UACR8C,UAAUuD,OAGbvD,UAAUuD,KAAKvD,UAAUuD,OAAOR,QAAQ6F,QAASjI,OAFjDX,UAAUuD,KAAK5C,MAMrBgK,OAAOI,kBAQXjL,OAAO8C,aAAe,WAiBlB,IAfA9C,OAAO+J,SACP/J,OAAO2K,UAAW,EAClBJ,mBAEA1J,KAAQT,aAAa5E,WAASO,GAE1BP,MADAqF,KACQR,kBAAkB0C,iBAAiBlC,KAAMb,OAAO0B,QAEhDrB,kBAAkB2C,YAAYhD,OAAO0B,QAMjD1F,OAASR,MAAM2B,YACVT,EAAE,EAAGA,EAAEV,OAAOW,OAAQD,IACvB+C,EAAIzD,OAAOU,GACP+C,EAAEvE,MAAMuH,QAAQzC,OAAO9E,QAAU,IACjC8E,OAAO2K,UAAW,EAClBL,EAAI7K,EAAEtE,MAAM8H,QAAQ,iBAAiB,IACrCqH,EAAIA,EAAErH,QAAQ,MAAO,KACrBsH,gBAAgB3N,KAAK0N,GAO7B,IAFAD,YAAchK,kBAAkBhD,SAAS2C,OAAOyK,aAChDzB,QAAUqB,YAAYnN,mBACP8L,QAAQtN,eAAe,gBASlC,IANI0O,aADApB,QAAQoB,aAAapK,OAAO9E,OAAOyB,OAA2B,EAAlBqD,OAAO0K,SACpC1B,QAAQoB,aAAapK,OAAO9E,OAAO8C,OAAO,EAAEgC,OAAO0K,UAEnD1B,QAAQoB,aAAapK,OAAO9E,OAI1CwB,EAAE,EAAGA,EAAG0N,aAAazN,OAAQD,GAAG,EACjCvB,MAAQ6N,QAAQoB,aAAapK,OAAO9E,OAAOwB,IACH,IAApC6N,gBAAgB9H,QAAQtH,SACxByI,MAAQoF,QAAQoB,aAAapK,OAAO9E,OAAOwB,EAAE,GAC7CyN,MAAQ,GAAIH,aAAY7O,MAAMyI,OAC9B5D,OAAO+J,MAAMnN,KAAKuN,SASlCnK,OAAOqD,KAAO,WAEV,IAAKgG,MAAOpJ,QACJD,OAAOtE,eAAe2N,OACtBrJ,OAAOqJ,KAAOpJ,OAAOoJ,KAI7BrJ,QAAOyK,WAAazK,OAAO9E,MAAQ,QACnC8E,OAAOuD,IAAIvD,OAAOyK,WAAY,WAC1BzK,OAAO8C,iBAGX9C,OAAOuD,IAAI,sBAAuB,WAE9B1C,KAAQT,aAAa5E,WAASO,GAE1BP,MADAqF,KACQR,kBAAkB0C,iBAAiBlC,KAAMb,OAAO0B,QAEhDrB,kBAAkB2C,YAAYhD,OAAO0B,QAEjDlG,MAAMG,UAAU,QAAS,QACzBH,MAAMG,UAAU,cAAeqE,OAAO9E,OACtCM,MAAMG,UAAU,cAAeqE,OAAO0K,UACtClP,MAAMG,UAAU,iBAAkB,KAClCH,MAAMG,UAAU,aAAc,SAC9BH,MAAMG,UAAU,OAAQ,KACxBH,MAAMG,UAAU,KAAM,QACtB0E,kBAAkB8C,SAASnD,OAAOyK,WAAYjP,OAC9C6E,kBAAkB+C,YAAYpD,OAAOyK,eAK7CzK,OAAOqD,UAiBXlE,QAAQC,OAAO,UAAUW,WAAW,gCAC3B,SAAS,SAAS,YAAY,SAAS,eAAe,UAAU,oBACjE,SAAUC,OAAQC,OAAQC,UAAWC,OAAQC,aAAcwH,QAASvH,mBAoDxE,QAASwH,MAAKvM,KAAKwM,KACf7M,KAAKuJ,KAAOlJ,KACZL,KAAK8M,OAASD,IACd7M,KAAK+M,WAAY,EApDrBhI,OAAOkI,iBAAmB,GAG1BlI,OAAOkL,gBAAkB,EAGzBlL,OAAOmL,OAAS,IAIhBnL,OAAOmI,SAAU,EAGjBnI,OAAOoI,KAAO,EAGdpI,OAAOqI,SAGPrI,OAAOsI,YAAc,GAGrBtI,OAAOoL,QAGPpL,OAAOuI,UAAYlI,kBAAkB8D,iBAGrCnE,OAAO0B,WAAS3F,GAGhBiE,OAAOqL,UAAY,EAGnBrL,OAAOwI,WAAa,EAGpBxI,OAAOyI,aAAe,EAGtBzI,OAAO0I,UAAY,EAmBnB1I,OAAO4I,cAAgB,SAASC,OAC5B,GAAIrN,OAAQ6E,kBAAkBhD,SAAS2C,OAAOuI,UAC9C/M,OAAMG,UAAU,QAASkN,MAAQ7I,OAAOkI,iBACxC,IAAIrH,MAAOrF,MAAM4B,SACjB8C,WAAUuD,KAAK5C,MACf+G,QAAQmB,SAAS,EAAG,IAMxB/I,OAAO8C,aAAe,WAElB9C,OAAOoL,OAEP,IAAIpC,SAAU3I,kBAAkBuC,YAAY5C,OAAOuI,UACnD,IAAIS,SAAWA,QAAQxG,KAAM,CACzBxC,OAAOyI,aAAeO,QAAQvE,SAC9BzE,OAAOwI,WAAarD,KAAKC,KAAKpF,OAAOyI,aAAezI,OAAOkI,kBAC3DlI,OAAO0I,UAAYvD,KAAKC,KAAKpF,OAAOwI,WAAaxI,OAAOsI,YAIxD,KAAK,GAFD1E,OAAQ,EACR0H,OACK5O,EAAE,EAAEA,EAAEsM,QAAQxG,KAAK7F,QAAUD,EAAEsD,OAAOkI,iBAAiBxL,IAC5D4O,IAAI1O,KAAKoM,QAAQxG,KAAK9F,OACtBkH,OAEa5D,OAAOkL,iBAAmBxO,IAAIsM,QAAQxG,KAAK7F,OAAS,KAC7DiH,MAAQ,EACR5D,OAAOoL,KAAKxO,KAAK0O,KACjBA,YAIRtL,QAAOoL,QACPpL,OAAOyI,aAAe,EACtBzI,OAAOwI,WAAa,EACpBxI,OAAO0I,UAAY,CAGvB1I,QAAOoJ,mBAMXpJ,OAAOqD,KAAO,WAEV,IAAK,GAAIgG,OAAOpJ,QACRD,OAAOtE,eAAe2N,OACV,qBAARA,KAAsC,oBAARA,KAAqC,gBAARA,IAC3DrJ,OAAOqJ,KAAOC,SAASrJ,OAAOoJ,MACP,SAAhBpJ,OAAOoJ,MAAmC,UAAhBpJ,OAAOoJ,KACxCrJ,OAAOqJ,KAAuB,SAAhBpJ,OAAOoJ,KAErBrJ,OAAOqJ,KAAOpJ,OAAOoJ,KAKjCrJ,QAAOuD,IAAIvD,OAAOuI,UAAW,WACzBvI,OAAO8C,iBAGX9C,OAAOuD,IAAI,sBAAuB,WAG9B,GADAvD,OAAOxE,MAAS4E,aAAa5E,OAAS,GAClCwE,OAAOxE,MAAO,CAEd,GAAIA,OAAQ6E,kBAAkB0C,iBAAiB/C,OAAOxE,MAAOwE,OAAO0B,OAEhE1B,QAAO0B,SACPlG,MAAMe,KAAOyD,OAAO0B,QAGxB1B,OAAOkI,iBAAoB1M,MAAMH,UAAU,SAAW,GACtD2E,OAAOoI,KAAQjD,KAAKC,KAAK5J,MAAMH,UAAU,SAAW2E,OAAOkI,mBAAqB,EAChFlI,OAAO+B,UAAYvG,MAAMkC,eAEzB2C,kBAAkB8C,SAASnD,OAAOuI,UAAW/M,OAC7C6E,kBAAkB+C,YAAYpD,OAAOuI,eAUjDvI,OAAOoJ,gBAAkB,WAErBpJ,OAAOqI,QAEP,IAAIkB,YAAapE,KAAKqE,MAAMxJ,OAAOoI,KAAOpI,OAAOsI,aAE7CmB,eAAkBF,WAAavJ,OAAOsI,YAAe,EACrDoB,cAAgBD,eAAiBzJ,OAAOsI,YAAc,CAK1D,IAJIoB,cAAgB1J,OAAOwI,aACvBkB,cAAgB1J,OAAOwI,YAGvBxI,OAAO0I,UAAY,GAAoB,IAAfa,WAAkB,CAC1C,GAAII,aAAcF,eAAiBzJ,OAAOsI,YAAc,EACpDsB,SAAW,GAAI/B,MAAK,IAAK8B,YAC7B3J,QAAOqI,MAAMzL,KAAKgN,UAGtB,IAAK,GAAIlN,GAAE+M,eAAe/M,GAAGgN,cAAchN,IAAK,CAC5C,GAAI0L,MAAO,GAAIP,MAAKnL,EAAEA,EAAE,EACpB0L,MAAKL,SAAS/H,OAAOoI,OACrBA,KAAKJ,WAAY,GAErBhI,OAAOqI,MAAMzL,KAAKwL,MAGtB,GAAIpI,OAAO0I,UAAU,GAAKa,WAAWvJ,OAAO0I,UAAU,EAAG,CACrD,GAAImB,SAAUH,cACVI,SAAW,GAAIjC,MAAK,IAAKgC,QAC7B7J,QAAOqI,MAAMzL,KAAKkN,YAK1B9J,OAAOqD,UA6BXlE,QAAQC,OAAO,UAAUW,WAAW,iBAC/B,SAAS,SAAS,YAAY,OAAO,SAAS,eAAe,oBAAoB,sBAAsB,QACxG,SAAUC,OAAQC,OAAQC,UAAWwD,KAAMvD,OAAQC,aAAcC,kBAAmBkL,oBAAqBjL,OAEzG,GAAI5D,GAAG8O,IAAKC,GAEZzL,QAAO0L,mBACHC,QAAQ,qBACRC,cAAc,6BACdC,WAAW,6BACXC,aAAa,6BACbC,OAAO,uBAEX/L,OAAOgM,eAAgB,EACvBhM,OAAOiM,eAAiB,KACxBjM,OAAOkM,gBACHC,SACMvG,OAAQ,GAAIwG,IAAK,uBAAwBvG,MAAO,KAChDD,OAAQ,GAAIwG,IAAK,uBAAwBvG,MAAO,KAChDD,OAAQ,GAAIwG,IAAK,uBAAwBvG,MAAO,KAChDD,OAAQ,GAAIwG,IAAK,uBAAwBvG,MAAO,KAChDD,OAAQ,GAAIwG,IAAK,uBAAwBvG,MAAO,MAE1D7F,OAAOqM,gBAAiB,EACxBrM,OAAO4D,MAAQ,IACf5D,OAAOmL,OAAS,IAChBnL,OAAOsM,aAAc,EACrBtM,OAAOuM,iBACPvM,OAAOwM,WAAa,GAAIC,QAAOC,KAAKC,WACpC3M,OAAOmI,SAAU,EACjBnI,OAAO4M,QAAM7Q,GACbiE,OAAO6M,WACP7M,OAAO8M,eAAiB,IACxB9M,OAAOuI,UAAY,WAEnBvI,OAAO+M,UAEHC,gBAAgB,EAEhBC,UAAWR,OAAOC,KAAKQ,UAAUC,QACjCC,mBAAmB,EACnBC,0BACIhG,MAAMoF,OAAOC,KAAKY,uBAAuBC,OAE7CC,oBAAmB,EACnBC,YAAW,EACXC,eAAc,EACdC,cAAa,EACbC,mBAAkB,EAClBC,KAAK,EACLC,aAAY,EACZC,oBACI1G,MAAMoF,OAAOC,KAAKsB,iBAAiBC,QAG3CjO,OAAOkO,cAAe,EACtBlO,OAAOmO,YAAa,EACpBnO,OAAO0B,WAAS3F,GAChBiE,OAAOoO,kBAAgBrS,GACvBiE,OAAOqO,mBAAiBtS,GACxBiE,OAAOkE,OAAS,eAWhBlE,OAAOsO,eAAiB,WACpB,GAAI9S,OAAQ6E,kBAAkB2C,aAI9B,OAHAxH,OAAMG,UAAU,KAAMqE,OAAOmL,QAC7B3P,MAAMG,UAAU,OAAQqE,OAAO4D,OAC/BpI,MAAMqB,kBAAkB,4BACjBrB,OAYXwE,OAAOuO,UAAY,SAASC,IAAKC,MAAOC,QAASC,SAAUC,IAAKC,KAE5D,GAAIC,MAAO9O,OAAO0L,kBAA2B,OAe7C,OAdiB,QAAbiD,UAAqBA,WAAY3O,QAAO0L,oBACxCoD,KAAO9O,OAAO0L,kBAAkBiD,WAGvB,GAAIlC,QAAOC,KAAKqC,QACzBD,KAAMA,KACNlC,IAAK4B,IACLQ,SAAU,GAAIvC,QAAOC,KAAKuC,OAAOL,IAAKC,KACtCK,MAAOT,MACPU,QAAST,WAajB1O,OAAOoP,iBAAmB,SAASC,MAC/B,GAAIF,SAAU,0BAUd,OATIE,MAAKC,mBACLH,SAAW,+BAAiCE,KAAKE,iBAAmB,eAAsBF,KAAKC,iBAAmB,kBAEtHH,SAAW,+BAAiCE,KAAKE,iBAAmB,KAAOF,KAAKH,MAAQ,aACxFC,SAAW,2BAA6B7O,MAAM4I,WAAWmG,KAAKpG,UAAY,MAAQ3I,MAAM4I,WAAWmG,KAAKlG,QAAU,SAElHgG,SAAW,wBAA0B7O,MAAMkP,SAASH,KAAKI,SAASzP,OAAO8M,gBAAkB,IAC3FqC,SAAW,YAAcE,KAAKE,iBAAmB,gCACjDJ,SAAW,UAUfnP,OAAO0P,gBAAkB,WACrBhM,KAAKmB,KAAK,wBACV,IAAI8F,UAAWY,oBAAoBoE,iBACnC,IAAIhF,SAAU,CACV,GAAIiF,QACJ,KAAK,GAAIvG,OAAOsB,UACRA,SAASjP,eAAe2N,MACxBuG,KAAKhT,KAAKyM,IAIlB,IAAIuG,KAAKjT,OAAS,EAAG,CACjB,GAAIkT,IAAKD,KAAK,GACVE,OAAS9P,OAAOuM,cAAcsD,GAClC,IAAIC,OAAQ,CACR,GAAIC,QAAS,GAAItD,QAAOC,KAAKsD,YAC7BD,QAAOE,OAAOH,OAAOd,UAGrBvC,OAAOC,KAAK7M,MAAMqQ,QAAQJ,OAAO,SAEjC9P,OAAO4M,IAAIuD,UAAUJ,YAWrC/P,OAAO8C,aAAe,WAClB,GAAIiN,QAAS,GAAItD,QAAOC,KAAKsD,aACzBhH,QAAU3I,kBAAkBuC,YAAY5C,OAAOuI,UACnD,IAAIS,SAAWA,QAAQxG,KACnB,IAAK9F,EAAE,EAAGA,EAAEsM,QAAQxG,KAAK7F,OAAQD,IAAK,CAClC,GAAIoE,MAAOkI,QAAQxG,KAAK9F,EACxB,IAAIoE,KAAKsP,SAAU,CAGX5E,IADsC,gBAA/B1K,MAAKuP,sBACNvP,KAAKuP,sBAELvP,KAAKuP,sBAAsB,GAGjC5E,IADsC,gBAA/B3K,MAAKwP,sBACNxP,KAAKwP,sBAELxP,KAAKwP,sBAAsB,EAErC,IAAInB,SAAUnP,OAAOoP,iBAAiBtO,MAClCgP,OAAS9P,OAAOuO,UAAUvO,OAAO4M,IAAK9L,KAAKoO,MAAOC,QAASrO,KAAKyP,KAAM/E,IAAKC,IAC/EzL,QAAOuM,cAAczL,KAAK+O,IAAMC,OAChC9P,OAAO6M,QAAQjQ,KAAKkT,QACpB9P,OAAOwQ,IAAIC,UAAUX,QACrBC,OAAOE,OAAOH,OAAOd,WAQjChP,OAAO4M,IAAIuD,UAAUJ,SAMzB/P,OAAOqD,KAAO,WAmDV,GAlDA/C,MAAMgD,gBAAgBrD,OAAQD,QAE9BA,OAAO4M,IAAM,GAAIH,QAAOC,KAAK8B,IAAIkC,SAASC,eAAe,OAAQ3Q,OAAO+M,UACxE/M,OAAOwQ,IAAM,GAAII,6BAA4B5Q,OAAO4M,KACpD5M,OAAOwQ,IAAIK,YAAY,QAAS,SAAS9B,QACrC/O,OAAOwM,WAAWsE,QAClB9Q,OAAOwM,WAAWuE,WAAWhC,OAAOI,SACpCnP,OAAOwM,WAAWwE,KAAKhR,OAAO4M,IAAKmC,UAOvC/O,OAAOuD,IAAIvD,OAAOuI,UAAW,WACzBvI,OAAO8C,iBAGX9C,OAAOuD,IAAI,qBAAsB,WAC7BvD,OAAO0P,oBAGX1P,OAAOuD,IAAI,sBAAuB,WAG9B,GADAvD,OAAOxE,MAAS4E,aAAa5E,OAAS,GAClCwE,OAAOxE,MAAO,CAEdwE,OAAOmI,SAAU,CAEjB,IAAI3M,OAAQ6E,kBAAkB0C,iBAAiB/C,OAAOxE,MAAOwE,OAAO0B,OAEhE1B,QAAO0B,SACPlG,MAAMe,KAAOyD,OAAO0B,QAGxB1B,OAAOwM,WAAWsE,QAElB9Q,OAAOuM,iBAEPvM,OAAO6M,WAEPxM,kBAAkB8C,SAASnD,OAAOuI,UAAW/M,OAC7CwE,OAAOmI,SAAU,EACjB9H,kBAAkB+C,YAAYpD,OAAOuI,cAOzCvI,OAAOoO,eAAiBpO,OAAOqO,eAAgB,CAC/C,GAAI4C,OAAQ,GAAIxE,QAAOC,KAAKuC,OAAOjP,OAAOoO,cAAepO,OAAOqO,eAChErO,QAAO4M,IAAIsE,UAAUD,MAAO,OACzB,CACH,GAAIlB,QAAS,GAAItD,QAAOC,KAAKsD,YAC7BhQ,QAAO4M,IAAIuD,UAAUJ,UAU7B/P,OAAOmR,cAAgB,SAAS3C,IAAKO,OAAQL,SACzC1O,OAAOwQ,IAAIK,YAAY,QAAS,SAAS9B,QACrC/O,OAAOwM,WAAWsE,QAClB9Q,OAAOwM,WAAWuE,WAAWrC,SAC7B1O,OAAOwM,WAAWwE,KAAKxC,IAAKO,WAKpC/O,OAAOqD,UAgBXlE,QAAQC,OAAO,UAAUW,WAAW,0BAC/B,SAAS,SAAS,OAAO,sBAC1B,SAAUC,OAAQC,OAAQyD,KAAM6H,qBAGhCvL,OAAOoR,iBAAkB,EAMzBpR,OAAOqR,eAAiB,SAASC,IAC7B,IACI/F,oBAAoBrF,OAAOoL,IAC3B/F,oBAAoBgG,QACtB,MAAOC,KACL9N,KAAKmB,KAAK2M,IAAIC,WAOtBzR,OAAOqD,KAAO,WAEV,IAAK,GAAIgG,OAAOpJ,QACRD,OAAOtE,eAAe2N,OACtBrJ,OAAOqJ,KAAOpJ,OAAOoJ,OASjCrJ,OAAOiG,OAAS,SAASqL,IACjBtR,OAAOoR,iBACP7F,oBAAoBmG,cAExBnG,oBAAoBX,IAAI0G,GAAG,OAI/BtR,OAAOqD,UAmBXlE,QACKC,OAAO,UACPW,WAAW,uBACP,SAAS,SAAS,YAAY,SAAS,eAAe,UAAU,oBAAoB,QACrF,SAAUC,OAAQC,OAAQC,UAAWC,OAAQC,aAAcwH,QAASvH,kBAAmBC,OAEnF,GAAIO,MAAM8Q,SAAUjV,EAAGoE,KAAMuI,IAAK7N,MAAOoW,OAAQ5I,QAAS6I,MAAOC,OAGjE9R,QAAO+R,SAIP/R,OAAO2R,YAGP3R,OAAOgS,SAAW,GAIlBhS,OAAOiS,gBAAkB,EAGzBjS,OAAO7D,WAAY,EAGnB6D,OAAOuI,UAAYlI,kBAAkB8D,iBAIrCnE,OAAOkS,aAAWnW,GAMlBiE,OAAOmS,eAAgB,EAGvBnS,OAAOoS,iBAAmB,QAG1BpS,OAAOqS,iBAAmB,mBAG1BrS,OAAO0B,WAAS3F,GAGhBiE,OAAO+B,UAAY,GAOnB/B,OAAOsS,YAAc,WACjBtS,OAAO2R,SAAW3R,OAAO+R,MAAM/T,OAAO,EAAG,KAO7CgC,OAAOuS,SAAW,WAEd,GADAZ,YACI3R,OAAO+B,UAAUpF,QAAUqD,OAAOiS,gBAClC,IAAKvV,EAAI,EAAOsD,OAAO+R,MAAMpV,OAAQgV,SAAShV,OAASqD,OAAOgS,SAAUtV,IAAK,CACzEmV,MAAQ7R,OAAO+R,MAAMrV,EACrB,KACQmV,MAAMpP,QAAQzC,OAAO+B,YAAc,GACnC4P,SAAS/U,KAAKiV,OAEpB,MAAOL,KACL,UAIZ,MAAOG,WAOX3R,OAAOwS,aAAe,WAElBV,QAAUxR,MAAMmS,KAAKzS,OAAO+B,WACZ,KAAZ+P,UACA9R,OAAO+B,UAAY,OAGvBvG,MAAQ6E,kBAAkBhD,SAAS2C,OAAOuI,eAC5BxM,KAAVP,QACAA,MAAQ6E,kBAAkB2C,YAAYhD,OAAO0B,SAEjDlG,MAAMgD,aAAawB,OAAO7D,WAC1BX,MAAMwD,aAAagB,OAAO+B,WAE1BlB,KAAOrF,MAAM4B,UACT4C,OAAOkS,SACPtK,QAAQwI,SAASsC,KAAO1S,OAAOkS,SAAW,IAAMrR,KAEhDX,UAAUuD,KAAK5C,OAOvBb,OAAO8C,aAAe,WAGlB,GAFAtH,MAAQ6E,kBAAkBhD,SAAS2C,OAAOqS,mBAC1CrJ,QAAUxN,MAAM0B,mBACD8L,QAAQtN,eAAe,kBAGlCkW,OAAS5I,QAAQoB,aAAapK,OAAOoS,mBAGjC,IAAK1V,EAAI,EAAGA,EAAIkV,OAAOjV,OAAQD,GAAK,EAChCoE,KAAO8Q,OAAOlV,GAAGiW;2LACjB3S,OAAO+R,MAAMnV,KAAKkE,OASlCd,OAAOqD,KAAO,WAEV,IAAKgG,MAAOpJ,QACJD,OAAOtE,eAAe2N,OACV,qBAARA,KAAsC,gBAARA,IAC9BrJ,OAAOqJ,KAAOC,SAASrJ,OAAOoJ,MACP,SAAhBpJ,OAAOoJ,MAAmC,UAAhBpJ,OAAOoJ,KACxCrJ,OAAOqJ,KAAuB,SAAhBpJ,OAAOoJ,KAErBrJ,OAAOqJ,KAAOpJ,OAAOoJ,KAKjCrJ,QAAOuD,IAAI,sBAAuB,WAC9B1C,KAAQT,aAAa5E,OAAS,GACjB,KAATqF,MACArF,MAAQ6E,kBAAkB0C,iBAAiBlC,KAAMb,OAAO0B,QACxD1B,OAAO+B,UAAYvG,MAAMkC,gBAEzBsC,OAAO+B,UAAYlB,OAI3BrF,MAAQ6E,kBAAkB2C,YAAYhD,OAAO0B,QAC7ClG,MAAMG,UAAU,OAAQ,KACxBH,MAAMG,UAAU,QAAS,QACzBH,MAAMG,UAAU,cAAe,MAC/BH,MAAMG,UAAU,cAAeqE,OAAOoS,kBACtC/R,kBAAkB8C,SAASnD,OAAOqS,iBAAkB7W,OAEpDwE,OAAOuD,IAAIvD,OAAOqS,iBAAkB,WAChCrS,OAAO8C,iBAGXzC,kBAAkB+C,YAAYpD,OAAOqS,mBAIzCrS,OAAOqD,UAYnBlE,QAAQC,OAAO,UAAUW,WAAW,2BAC/B,SAAU,SAAU,oBAAqB,SAAUC,OAAQC,OAAQI,mBAEpE,GAAIgJ,KAAKuJ,SAAUpX,KAGnBwE,QAAO0K,SAAW,EAClB1K,OAAO6S,WACP7S,OAAOuI,UAAY,eAOnBvI,OAAOqD,KAAO,WAEV,IAAKgG,MAAOpJ,QACJD,OAAOtE,eAAe2N,OACtBrJ,OAAOqJ,KAAOpJ,OAAOoJ,KAI7BrJ,QAAOuD,IAAIvD,OAAOuI,UAAW,WACzBvI,OAAO8C,kBAOf9C,OAAO8C,aAAe,WAElB8P,SAAWvS,kBAAkBhD,SAAS2C,OAAOuI,WAEzCvI,OAAO6S,QAAQlW,OAAS,EAGpBiW,SAASlV,iBAAmBsC,OAAO6S,QAAQ,GAAGnV,iBAC9CsC,OAAO6S,QAAQC,QAAQF,UAEnB5S,OAAO6S,QAAQlW,OAASqD,OAAO0K,UAC/B1K,OAAO6S,QAAQE,QAIvB/S,OAAO6S,WACP7S,OAAO6S,QAAQjW,KAAKgW,YAS5B5S,OAAOmD,SAAW,SAAS6P,YACnBA,YAAc,GAAKA,YAAchT,OAAO6S,QAAQlW,SAChDnB,MAAQwE,OAAO6S,QAAQG,cAQ/BhT,OAAOqD,UAWXlE,QACKC,OAAO,UACP6T,UAAU,cAAe,WACtB,OACIC,SAAU,IACVC,KAAM,SAASC,MAAOC,SAClBA,QAAQC,cACJC,MAAO,IACPC,UAAW,EACX9R,OAAQ,SAAS+R,QAASpX,UAEtBA,SADcqX,EAAEC,GAAGL,aAAaM,OAAOR,MAAMrB,MAAO0B,QAAQI,MAC3CC,MAAM,EAAG,YAY7Cb,UAAU,YAAa,WACpB,OACIE,KAAM,SAASC,MAAOC,SAElBA,QAAQU,KAAK,QAAS,SAASlU,OACL,KAAlBA,MAAMmU,QAEkB,KAApBZ,MAAMrR,WACNqR,MAAMZ,aAAaY,MAAMrR,WAI7BqR,MAAMrR,UAAYlC,MAAMqE,OAAO/I,QAIvCkY,QAAQC,cACJC,MAAO,IACPC,UAAW,EACX9R,OAAQ,SAAS+R,QAASpX,UAGtBA,SADcqX,EAAEC,GAAGL,aAAaM,OAAOR,MAAMrB,MAAO0B,QAAQI,MAC3CC,MAAM,EAAG,SAItCZ,SAAU,IACVE,OAAO,KAQdH,UAAU,eAAgB,WACvB,OACIE,KAAM,SAASC,MAAOC,SAClBA,QAAQU,KAAK,QAAS,WACM,KAApBX,MAAMrR,WACNqR,MAAMZ,aAAaY,MAAMrR,cAIrCmR,SAAU,IACVE,OAAO,KAcnBjU,QACKC,OAAO,UACP6T,UAAU,aACN,YAAY,OAAO,eAAe,WAAW,UAAU,oBAAoB,QAC5E,SAAU/S,UAAWwD,KAAMtD,aAAc6T,SAAUrM,QAASvH,kBAAmBC,OAC3E,OACI6S,KAAM,SAAUC,MAAOC,QAASa,OAS5Bd,MAAMe,WAAY,EAGlBf,MAAMrB,SAGNqB,MAAMpB,SAAW,GAGjBoB,MAAMgB,UACF,yDACA,2DACA,0BAEJhB,MAAM3B,QAAU2B,MAAMgB,SAAS,GAI/BhB,MAAMnB,gBAAkB,EAGxBmB,MAAMjX,WAAY,EAGlBiX,MAAMiB,YAAc,wBAIpBjB,MAAMkB,eAINlB,MAAMlB,aAAWnW,GAMjBqX,MAAMjB,eAAgB,EAGtBiB,MAAMhB,iBAAmB,QAGzBgB,MAAMf,iBAAmB,aAGzBe,MAAMmB,cAAgB,EAGtBnB,MAAMoB,aAAc,EAGpBpB,MAAM1R,WAAS3F,GAGfqX,MAAMqB,YAAU1Y,GAGhBqX,MAAMsB,UAAY,GAOlBtB,MAAMuB,mBAAqB,YACK,IAAxBvB,MAAMmB,eACKnB,MAAMrB,MAAMqB,MAAMmB,cACxB5J,UAAW,IAOxByI,MAAMwB,kBAAoB,WACtB,GAAI/T,MAAQT,aAAa5E,OAAS,EAClC,IAAa,KAATqF,KAAa,CACb,GAAIrF,OAAQ6E,kBAAkB0C,iBAAiBlC,KAAMuS,MAAM1R,OAC3D0R,OAAMsB,UAAYlZ,MAAMkC,mBAExB0V,OAAMsB,UAAY7T,MAQ1BuS,MAAMZ,aAAe,WAGD,KADFlS,MAAMmS,KAAKW,MAAMsB,aAE3BtB,MAAMsB,UAAY,MAGtB,IAAIlZ,OAAQ6E,kBAAkBhD,SAAS+V,MAAM7K,eAC/BxM,KAAVP,QACAA,MAAQ6E,kBAAkB2C,YAAYoQ,MAAM1R,SAEhDlG,MAAMgD,aAAa4U,MAAMjX,WACzBX,MAAMwD,aAAaoU,MAAMsB,UAEzB,IAAI7T,MAAOrF,MAAM4B,SACbgW,OAAMlB,SACNtK,QAAQwI,SAASsC,KAAOU,MAAMlB,SAAW,IAAMrR,KAE/CX,UAAUuD,KAAK5C,OAOvBuS,MAAMtQ,aAAe,WACjBsQ,MAAM3B,QAAU2B,MAAMgB,SAAS,EAC/B,IAAI5Y,OAAQ6E,kBAAkBhD,SAAS+V,MAAMf,kBACzCrJ,QAAUxN,MAAM0B,gBACpB,IAAI8L,SAAWA,QAAQtN,eAAe,gBAAiB,CACnD0X,MAAMrB,QACN,IAAIH,QAAS5I,QAAQoB,aAAagJ,MAAMhB,iBACxC,IAAIR,OACA,IAAK,GAAIlV,GAAI,EAAGA,EAAIkV,OAAOjV,OAAQD,GAAK,EAAG,CACvC,GAAImY,OACA3F,MAAO0C,OAAOlV,GACdiO,UAAU,EAEdyI,OAAMrB,MAAMnV,KAAKiY,SAUjCzB,MAAM0B,cAAgB,SAAUC,OACjB3B,MAAMrB,MAAMgD,OAClBpK,UAAW,EAChByI,MAAM4B,UAOV5B,MAAM6B,mBAAqB,WACvB7B,MAAMuB,qBACNvB,MAAMmB,cAAgB,EACtBnB,MAAMrB,SACNqB,MAAM3B,QAAU2B,MAAMgB,SAAS,IAMnChB,MAAM/P,KAAO,WAET,IAAK,GAAIgG,OAAO6K,OACRd,MAAM1X,eAAe2N,OACT,qBAARA,KAAsC,gBAARA,IAC9B+J,MAAM/J,KAAOC,SAAS4K,MAAM7K,MACN,SAAf6K,MAAM7K,MAAkC,UAAf6K,MAAM7K,KACtC+J,MAAM/J,KAAsB,SAAf6K,MAAM7K,KAEnB+J,MAAM/J,KAAO6K,MAAM7K,KAK/B,IAAI6L,UAAW7B,QAAQ6B,UACvB9B,OAAM+B,SAAWD,SAAS,GAC1B9B,MAAMgC,YAAchC,MAAM+B,SAASE,cAAc,UACjDjC,MAAMkC,UAAYlC,MAAM+B,SAASE,cAAc,UAC/CjC,MAAMmC,WAAanC,MAAM+B,SAASE,cAAc,SAChDjC,MAAMoC,cAAgBpC,MAAM+B,SAASE,cAAc,YAEnDjC,MAAMgC,YAAYK,QAAUrC,MAAMqC,QAClCrC,MAAMgC,YAAYM,OAAStC,MAAMsC,OACjCtC,MAAMgC,YAAYO,QAAUvC,MAAMuC,QAElCvC,MAAM7P,IAAI,sBAAuB,WAAa6P,MAAMwB,sBAEpDxB,MAAM7P,IAAI6P,MAAMf,iBAAkBe,MAAMtQ,eAO5CsQ,MAAMsC,OAAS,WACXtC,MAAMe,WAAY,EAClBf,MAAM6B,qBACN7B,MAAM4B,UAQV5B,MAAMqC,QAAU,WAGZ,GAAI5P,OAAQuN,MAAMgC,YAAYQ,YAAc,CAC5CxC,OAAMkC,UAAUO,aAAa,QAAS,SAAWhQ,MAAQ,MACzDuN,MAAMe,WAAY,EAClBf,MAAM4B,UAOV5B,MAAMuC,QAAU,SAAU9V,OACtBuT,MAAMe,WAAY,EAhON,OAiORtU,MAAMmU,UACsB,IAAxBZ,MAAMmB,cACNnB,MAAM0C,WAAW1C,MAAMmB,cAE3BnB,MAAMZ,eACNY,MAAMsC,UArOG,OAuOJ7V,MAAMmU,SACXZ,MAAMe,WAAY,EAClBf,MAAM6B,qBACN7B,MAAM4B,UAzOK,OA2ONnV,MAAMmU,SACXZ,MAAMuB,qBACFvB,MAAMmB,aAAe,EACrBnB,MAAMmB,aAAenB,MAAMrB,MAAMpV,OAAS,EAE1CyW,MAAMmB,cAAgB,EAE1BnB,MAAM0B,cAAc1B,MAAMmB,eAjPb,OAmPR1U,MAAMmU,SACXZ,MAAMuB,qBACFvB,MAAMmB,aAAenB,MAAMrB,MAAMpV,OAAS,EAC1CyW,MAAMmB,cAAgB,EAEtBnB,MAAMmB,aAAe,EAEzBnB,MAAM0B,cAAc1B,MAAMmB,eAIrBnB,MAAMsB,UAAU/X,QAAUyW,MAAMnB,kBACjCmB,MAAMqB,SACNR,SAAS8B,OAAO3C,MAAMqB,SAE1BrB,MAAMqB,QAAUR,SAAS,WACrB,GAAIzY,OAAQ6E,kBAAkB2C,YAAYoQ,MAAM1R,OAChDlG,OAAMG,UAAU,OAAQ,KACxBH,MAAMG,UAAU,QAAS,QACzBH,MAAMG,UAAU,cAAeyX,MAAMpB,UACrCxW,MAAMG,UAAU,cAAeyX,MAAMhB,kBACrC5W,MAAMgD,aAAa4U,MAAMjX,WACzBX,MAAMwD,aAAaoU,MAAMsB,WACzBrU,kBAAkB8C,SAASiQ,MAAMf,iBAAkB7W,OACnD6E,kBAAkB+C,YAAYgQ,MAAMf,mBACrC,OAQXe,MAAM0C,WAAa,SAAUf,OACzB,GAAIF,MAAOzB,MAAMrB,MAAMgD,MACvB3B,OAAMsB,UAAYG,KAAK3F,OAI3BkE,MAAM/P,QAGVJ,SAAS,EACTiQ,SAAU,IACVE,OACIe,UAAW,IACXhY,UAAW,IACXkY,YAAa,IACb9L,UAAW,IACX6J,iBAAkB,IAClB1Q,OAAQ,KAEZsU,SAAU,4iBACVC,YAAY,MAO5B9W,QACKC,OAAO,UACPwU,OAAO,kBAAmB,WAMvB,MAAO,UAAStM,MAEZ,GAAI/J,KAAM+J,KAAKyD,MAAM,KAAKC,KAAK,GAQ/B,OAPAzN,KAAMA,IAAIwN,MAAM,KAAKC,KAAK,IAC1BzN,IAAMA,IAAIwN,MAAM,KAAKC,KAAK,IAC1BzN,IAAMA,IAAIwN,MAAM,KAAKC,KAAK,IAC1BzN,IAAMA,IAAIwN,MAAM,KAAKC,KAAK,KAC1BzN,IAAMA,IAAIwN,MAAM,OAAOC,KAAK,KAC5BzN,IAAMA,IAAIwN,MAAM,KAAKC,KAAK,KAC1BzN,IAAMA,IAAIwN,MAAM,OAAOC,KAAK,QAInC4I,OAAO,mBAAoB,WAMxB,MAAO,UAASzJ,OAEZ,GAAIyH,QAASzH,MAAMjP,MAAM+H,QAAQ,WAAY,OACzCqC,MAAQsM,OAAOsE,OAAO,GAAGC,cAAgBvE,OAAOkC,MAAM,GAEtDvW,IAAM4M,MAAMhP,MAAM4P,MAAM,KAAKC,KAAK,GAWtC,OAVAzN,KAAMA,IAAIwN,MAAM,KAAKC,KAAK,IAC1BzN,IAAMA,IAAIwN,MAAM,KAAKC,KAAK,IAC1BzN,IAAMA,IAAIwN,MAAM,KAAKC,KAAK,IAC1BzN,IAAMA,IAAIwN,MAAM,KAAKC,KAAK,KAC1BzN,IAAMA,IAAIwN,MAAM,OAAOC,KAAK,KAC5BzN,IAAMA,IAAIwN,MAAM,KAAKC,KAAK,KAC1BzN,IAAMA,IAAIwN,MAAM,OAAOC,KAAK,KAC5BzN,IAAMA,IAAI0F,QAAQ,OAAO,IACzB1F,IAAMA,IAAI0F,QAAQ,mBAAmB,IACrC1F,IAAMA,IAAI0F,QAAQ,mBAAmB,IAC9BqC,MAAQ,KAAO/H,OAG7BqW,OAAO,QAAS,WAMb,MAAO,UAAStM,MACZ,OAAavL,KAATuL,KAAsB,MAAOA,KACjC,IAAI5K,GAAI4K,KAAK7E,QAAQ,KACrB,QAAW,IAAP/F,EACO4K,KAAK5E,UAAUhG,EAAI,GAEvB4K,QAGdsM,OAAO,aAAc,WAMlB,GAAIhH,MACAwJ,IAAM,+BACNC,IAAM,kBACNC,GAAM,YACNC,GAAM,qBACNC,IAAM,aACNC,GAAM,kBACNC,IAAM,WACNC,IAAM,WACNC,GAAM,oBAEV,OAAO,UAAStP,MACZ,MAAIA,QAAQsF,KACDA,IAAItF,MAERA,QAGdsM,OAAO,kBAAmB,WAYvB,MAAO,UAAStO,OAYZ,MAXkC,KAA9BA,MAAM7C,QAAQ,YACd6C,MAAQ,SAAWA,MAAM5C,UAAU,GACG,IAA/B4C,MAAM7C,QAAQ,aACrB6C,MAAQ,UAAYA,MAAM5C,UAAU,GACD,IAA5B4C,MAAM7C,QAAQ,UACrB6C,MAAQ,WAAaA,MAAM5C,UAAU,GACD,IAA7B4C,MAAM7C,QAAQ,WACrB6C,MAAQ,YAAcA,MAAM5C,UAAU,GACA,IAA/B4C,MAAM7C,QAAQ,eACrB6C,MAAQ,OAASA,MAAM5C,UAAU,IAE9B4C,SAGdsO,OAAO,OAAQ,WAKZ,MAAO,UAAStM,MACZ,WAAavL,KAATuL,KAA6BA,KAC1BA,KAAKrE,QAAQ,SAAU,IAAIA,QAAQ,SAAU,OAG3D2Q,OAAO,WAAY,WAYhB,MAAO,UAAStM,KAAMuP,OAClB,OAAa9a,KAATuL,KAAsB,MAAOA,KACjC,IAAIA,KAAK3K,OAASka,MAAO,CACrB,GAAIC,GAAIxP,KAAK5E,UAAU,EAAEyC,KAAK4R,IAAIF,MAAMvP,KAAK3K,SACzCD,EAAIoa,EAAEE,YAAY,IACtB,KAAW,IAAPta,EACA,MAAO4K,MAAK5E,UAAU,EAAEhG,GAAK,OAGrC,MAAO4K,SAanBnI,QACKC,OAAO,UACP6X,QAAQ,uBAAwB,aAAc,SAAUC,YAGzD,GAAIC,OAuEJ,OAtEAA,KAAIlP,aACJkP,IAAIC,mBAAoB,EAKxBC,MAAMC,UAAUpR,OAAS,SAASqR,KAAMC,IACpC,GAAIC,MAAOxc,KAAK6Y,OAAO0D,IAAMD,MAAQ,GAAKtc,KAAK0B,OAE/C,OADA1B,MAAK0B,OAAS4a,KAAO,EAAItc,KAAK0B,OAAS4a,KAAOA,KACvCtc,KAAK2B,KAAK8a,MAAMzc,KAAMwc,OAUjCN,IAAIvM,IAAM,SAAS+M,IAAKC,KACfT,IAAIC,oBACLD,IAAIlP,cAERkP,IAAIlP,UAAU0P,KAAO,IACrBT,WAAWW,WAAW,uBAM1BV,IAAI5F,MAAQ,WACR4F,IAAIlP,aACJiP,WAAWW,WAAW,uBAM1BV,IAAIzF,YAAc,WACdyF,IAAIlP,cAQRkP,IAAIW,IAAM,SAASH,KACf,MAAOR,KAAIlP,UAAU0P,MAOzBR,IAAIxH,gBAAkB,WAClB,MAAOwH,KAAIlP,WAQfkP,IAAIjR,OAAS,SAASyR,WACXR,KAAIlP,UAAU0P,KACrBT,WAAWW,WAAW,uBAInBV,OAgZXhY,QACKC,OAAO,UACP6X,QAAQ,qBAAsB,QAAQ,OAAO,KAAK,aAAc,OAC7D,SAAUc,MAAOrU,KAAMsU,GAAId,WAAYe,MAGnC,GAAIzY,cAAe,SAAShE,OAKxB,MAJAA,OAAMG,UAAU,KAAM,KACtBH,MAAMG,UAAU,OAAQ,IACxBH,MAAMG,UAAU,KAAM,QACtBH,MAAMwD,aAAa,OACZxD,MAOXP,MAAKid,gBAAkB,SAASjZ,OAC5BO,aAAeP,MAInB,IAAIkY,OAwOJ,OArOAA,KAAIhT,iBAAmB,eAGvBgT,IAAItE,WASJsE,IAAInU,YAAc,SAASmV,MAGvB,GAAI3c,OAAQ,GAAII,WAAUuc,KAC1B,OAAO3Y,cAAahE,QAQxB2b,IAAI9Z,SAAW,SAAS/B,MACpB,IACI,MAAO6b,KAAItE,QAAQvX,MACrB,MAAO8c,KAEL,WADA1U,MAAK2U,MAAM,kBAAoB/c,KAAO,gBAc9C6b,IAAImB,mBAAqB,SAASrZ,OAE9B,IADA,GAAIsZ,UACGtZ,MAAMtC,OAAS,GAAG,CAErBsC,MAAQA,MAAMgE,QAAQ,SAAU,GAChC,IAAIuD,GAAIvH,MAAMwD,QAAQ,MAClBqE,EAAI7H,MAAMwD,QAAQ,KACtB,KAAW,IAAP+D,IAAmB,IAAPM,EAEZ,MADAyR,OAAM3b,KAAKqC,OACJsZ,KACA/R,IAAK,KAAa,IAAPM,GAAYN,EAAIM,IAClCyR,MAAM3b,KAAKqC,MAAMyD,UAAU,EAAG8D,IAC9BvH,MAAQA,MAAMyD,UAAU8D,IACjBM,GAAK,IACZyR,MAAM3b,KAAKqC,MAAMyD,UAAU,EAAGoE,IAC9B7H,MAAQA,MAAMyD,UAAUoE,IAGhC,MAAOyR,QASXpB,IAAIpU,iBAAmB,SAASyV,KAAMC,SAMlC,IAAK,GAJDjd,OAAQ2b,IAAInU,YAAYyV,SAGxBC,cAAgBC,UAAUH,MAAMzN,MAAM,KACjCrO,EAAE,EAAGA,EAAEgc,cAAc/b,OAAQD,IAAK,CACvC,GAAI2W,SAAUqF,cAAchc,GACxBkc,OAASvF,QAAQtI,MAAM,IAE3B,IAAIoM,IAAI0B,WAAWxF,QAAS,KAAM,CAC9B,GAAIyF,QAAS3B,IAAImB,mBAAmBjF,QAAQ3Q,UAAU,GACtDlH,OAAMwD,aAAa8Z,OAAOC,QAC1B,KAAK,GAAIC,GAAE,EAAGA,EAAEF,OAAOnc,OAAQqc,IAC3Bxd,MAAMqB,kBAAkBic,OAAOE,QAIlC,IAAI7B,IAAI0B,WAAWxF,QAAS,MAAO,CACpC,GAAI4F,GAAIL,OAAO,GAAGnW,QAAQ,KACtBvH,MAAQ0d,OAAO,GAAGlW,UAAU,EAAGuW,GAC/B9d,MAAQyd,OAAO,GAAGlW,UAAUuW,EAAI,GAChC9O,MAAQ,GAAItP,WAAUK,MAAOC,MACjCK,OAAMgB,SAAS2N,WAGd,CACD,GAAI3F,MAAOoU,OAAO,GAAG3V,QAAQ,IAAK,GACd,KAAhB2V,OAAOjc,OACPnB,MAAMG,UAAU6I,KAAMoU,OAAO,IAE7Bpd,MAAMG,UAAU6I,KAAM,KAOlC,GAAIzC,WAAYvG,MAAMkC,cAOtB,QANsD,IAAlDqE,UAAUU,QAAQ,IAAKV,UAAUpF,OAAS,KAC1CoF,UAAYA,UAAUW,UAAU,EAAGX,UAAUpF,OAAO,GACpDnB,MAAMwD,aAAa+C,WACnBvG,MAAMgD,cAAa,IAGhBhD,OAQX2b,IAAIvU,YAAc,SAAStH,MACvB,IACI,MAAO6b,KAAItE,QAAQvX,MAAMe,SAC3B,MAAO+b,KACL1U,KAAK2U,MAAM,SAAW/c,KAAO,gBAQrC6b,IAAIe,gBAAkB,SAASgB,cAC3B1Z,aAAe0Z,cAQnB/B,IAAIhU,SAAW,SAAS7H,KAAM2D,OAC1BkY,IAAItE,QAAQvX,MAAQ2D,OAQxBkY,IAAI0B,WAAa,SAASM,GAAIC,IAC1B,IACI,MAAOD,IAAGrF,MAAM,EAAGsF,GAAGzc,UAAYyc,GACpC,MAAOhB,MACT,OAAO,GAMXjB,IAAIkC,iBAAmB,WACnB,IAAK,GAAIhQ,OAAO8N,KAAItE,QAChBsE,IAAI/T,YAAYiG,MAQxB8N,IAAImC,qBAAuB,SAASC,SAChC,GAAIN,GAAGO,CACP,KAAKA,IAAKD,aACIxd,KAANkd,EACAA,EAAI9B,IAAI/T,YAAYoW,GAEpBP,EAAEQ,KAAKtC,IAAI/T,YAAYoW,KASnCrC,IAAI/T,YAAc,SAASsW,WAEvB,GAAIle,OAAQ2b,IAAItE,QAAQ6G,WACpBtN,IAAM5Q,MAAMgC,iBAGhB,OAFAkG,MAAK2U,MAAM,OAASqB,UAAY,KAAOtN,KAEhC2L,MAAM4B,MAAM1B,KAAK2B,mBAAmBxN,MAAOyN,mBAAoB,aAAaJ,KAE/E,SAAU7H,QAENpW,MAAM0C,gBAAgB,KACtB,IAAIsJ,MAAOoK,OAAOpK,IAClBhM,OAAM8C,gBAAgBkJ,KAAKtL,cACvBsL,KAAK9L,eAAe,iBACpBF,MAAM4C,eAAeoJ,KAAKvL,cAE9BT,MAAMoD,YAAY4I,KAAKnL,UACvBb,MAAMsD,kBAAkB0I,KAAKlL,gBAE7B4a,WAAWW,WAAW6B,YAG1B,SAAU5d,OACN,GAAIge,KAAM,0CACVpW,MAAK5H,MAAMge,IAAK,OAAShe,MAEzB,IAAIO,YACJA,UAASoI,SAAW,EACpBpI,SAAS6I,MAAQ,EACjB7I,SAASmG,QACThH,MAAM0C,gBAAgB4b,KACtBte,MAAM4C,mBACN5C,MAAM8C,oBACN9C,MAAMoD,YAAYvC,UAClBb,MAAMsD,sBAENoY,WAAWW,WAAW6B,cAM3BvC,OASnBhY,QACKC,OAAO,UACP6X,QAAQ,SAAU,WAEf,GAAI1Q,GAAGwT,IAAKrd,EAAG2M,IAAK2Q,MAAOC,OAAQhB,EAAGV,MAAiB2B,KAAV/C,MA4KjD,OAnKAA,KAAI7T,gBAAkB,SAAS4Q,MAAOd,OAClC,IAAK/J,MAAO6K,OACJd,MAAM1X,eAAe2N,OACF,SAAf6K,MAAM7K,MAAkC,UAAf6K,MAAM7K,KAC/B+J,MAAM/J,KAAsB,SAAf6K,MAAM7K,KAEnB+J,MAAM/J,KAAO6K,MAAM7K,OAYnC8N,IAAIgD,eAAiB,SAASC,EAAGC,GAC7B,MAAQD,GAAEpP,KAAK,MAAQqP,EAAErP,KAAK,KAQlCmM,IAAImD,wBAA0B,SAASvc,OAwBnC,MAvBAkc,SACIM,EAAI,UACJC,EAAI,WACJC,EAAI,QACJC,EAAI,QACJC,EAAI,MACJC,EAAI,OACJC,EAAI,OACJC,EAAI,SACJC,EAAI,YACJC,KAAK,UACLC,KAAK,WACLC,KAAK,QACLC,KAAK,QACLC,KAAK,MACLC,KAAK,OACLC,KAAK,OACLC,KAAK,SACLC,KAAK,YACLC,GAAK,UACLC,GAAK,WACLC,GAAK,YAEF1B,OAAOlc,QAOlBoZ,IAAIjO,WAAa,SAAS0S,WACtB,MAAIA,aACAlf,EAAIkf,UAAUnZ,QAAQ,OAElB8D,EAAIqV,UAAUlZ,UAAU,EAAEhG,GAC1B6b,MAAQhS,EAAEwE,MAAM,KAChBmP,KAAO3B,MAAM,GACbyB,MAAQ7C,IAAImD,wBAAwB/B,MAAM,IAC1CwB,IAAM5C,IAAI0E,gBAAgBtD,MAAM,IAEzByB,MAAQ,KAAOE,MAIvB,IAUX/C,IAAI2E,gBAAkB,SAAS1B,EAAGC,GAE9B,GAAID,IAAMC,EAAK,OAAO,CAEtB,MAAMD,YAAa2B,SAAc1B,YAAa0B,SAAW,OAAO,CAGhE,IAAI3B,EAAE4B,cAAgB3B,EAAE2B,YAAe,OAAO,CAC9C,KAAK/C,IAAKmB,GAEN,GAAKA,EAAE1e,eAAeud,GAAtB,CAEA,IAAKoB,EAAE3e,eAAeud,GAAM,OAAO,CAEnC,IAAImB,EAAEnB,KAAOoB,EAAEpB,GAAf,CAEA,GAAqB,gBAAVmB,GAAEnB,GAAoB,OAAO,CAExC,KAAK9B,IAAI2E,gBAAgB1B,EAAEnB,GAAIoB,EAAEpB,IAAO,OAAO,GAEnD,IAAKA,IAAKoB,GAEN,GAAIA,EAAE3e,eAAeud,KAAOmB,EAAE1e,eAAeud,GAAM,OAAO,CAE9D,QAAO,GAQX9B,IAAI0B,WAAa,SAASM,GAAIC,IAC1B,SAAID,KAAMC,KACCD,GAAGrF,MAAM,EAAGsF,GAAGzc,UAAYyc,IAS1CjC,IAAI1E,KAAO,SAASwJ,KAChB,MAAOA,KAAIhZ,QAAQ,SAAU,IAAIA,QAAQ,SAAU,KAOvDkU,IAAI0E,gBAAkB,SAASI,KAC3B,MAAIA,MAAkB,MAAXA,IAAI,GACJA,IAAIvZ,UAAU,GAElBuZ,KAUX9E,IAAI3H,SAAW,SAAS1U,MAAOohB,QAU3B,MATIphB,QAASohB,QAAUphB,MAAM6B,OAASuf,SAClCphB,MAAQqc,IAAI1E,KAAK3X,OACjBA,MAAQA,MAAM4H,UAAU,EAAGyC,KAAK4R,IAAImF,OAAQphB,MAAM6B,UAGvC,KADXD,EAAI5B,MAAMkc,YAAY,QAElBlc,MAAQA,MAAM4H,UAAU,EAAEhG,GAAK,SAGhC5B,OAMJqc","file":"ngsolr.min.js"} \ No newline at end of file diff --git a/src/ngsolr/controllers/FieldFacetController.js b/src/ngsolr/controllers/FieldFacetController.js index 12ba0c0..5a2a179 100644 --- a/src/ngsolr/controllers/FieldFacetController.js +++ b/src/ngsolr/controllers/FieldFacetController.js @@ -84,12 +84,13 @@ angular name = $scope.field; // ISSUE #27 replace all space characters with * to ensure that Solr matches // on the space value - value = '(' + $scope.items[Index].value.split(' ').join('*') + ')'; + value = '(' + $scope.items[Index].value.replace(new RegExp(":", 'g'),' ').split(' ').join('*') + ')'; facet = query.createFacet(name, value); // check to see if the selected facet is already in the list if ($scope.facets.indexOf(facet) === -1) { var oldHash = query.getHash(); query.addFacet(facet); + query.options.start = 0; // change window location hash = query.getHash(); if (!$location.path()) {