Skip to content

Commit 032f029

Browse files
committed
Issues #13 & #15
1 parent 37badb5 commit 032f029

File tree

7 files changed

+48
-16
lines changed

7 files changed

+48
-16
lines changed

Diff for: app/istexconfigdefault.js

+5-1
Original file line numberDiff line numberDiff line change
@@ -86,15 +86,19 @@ app.run(['$rootScope', function($rootScope) {
8686

8787
// on peut choisir quel critère pour trier les documents on préfère
8888
// par défaut on choisit
89-
defaultSort: 'score[desc]',
89+
defaultSort: '',
9090
// et sinon, on a une liste des tris disponibles
9191
possibleSorts: [
92+
{'value':'','name':'Pertinence'},
9293
{'value':'score[desc]','name':'Qualité du pdf'},
9394
{'value':'publicationDate','name':'Date de publication (croissant)'},
9495
{'value':'publicationDate[desc]','name':'Date de publication (décroissant)'},
9596
//{'value':'title[desc]','name':'Alphabétique (titre)'},
9697
],
9798

99+
// Show the quality indicator with stars, hidden by default
100+
qualityIndicator: false,
101+
98102
// les différents textes paramétrables
99103
// il est possible d'avoir les langues en anglais en mettant 'traduction':'en'
100104
labels: {

Diff for: app/istexresults/IstexresultsCtrl.js

+6-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ app.controller('IstexresultsCtrl', ['$scope', '$rootScope', 'istexResultsService
22

33
$rootScope.showResults = false;
44

5-
$rootScope.defaultSort = $rootScope.istexConfigDefault.defaultSort || 'score[desc]';
5+
$rootScope.defaultSort = $rootScope.istexConfigDefault.defaultSort;
66

77
// If there is a default request, show the loading gif
88
if($rootScope.istexConfigDefault.query !== false) $rootScope.showLoading = true;
@@ -127,7 +127,11 @@ app.controller('IstexresultsCtrl', ['$scope', '$rootScope', 'istexResultsService
127127
$rootScope.hideResults = true;
128128
$rootScope.hideStats = true;
129129

130-
$rootScope.defaultSort = sort + "," + $rootScope.istexConfigDefault.defaultSort;
130+
if($rootScope.istexConfigDefault.defaultSort){
131+
$rootScope.defaultSort = sort + "," + $rootScope.istexConfigDefault.defaultSort;
132+
}else{
133+
$rootScope.defaultSort = sort;
134+
}
131135

132136
istexResultsService.sortedSearch(sort)
133137
.success(function (result) {

Diff for: app/istexresults/IstexresultsDirective.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,12 @@ app.directive('istexResults', function () {
3333
'<ol class="istex-results-items" ng-toggle="!hideResults">'+
3434
'<li class="istex-results-item" ng-repeat="document in documents">'+
3535
'<a class="istex-results-item-title" target="_blank" ng-href="{{document.fulltext[0].uri | sidize | proxify:istexConfigDefault.proxyApi }}" >{{ document.title | ellipse:true:istexConfigDefault.titleLength:"..." }}</a>'+
36-
'<p class="istex-results-item-abstract" ng-if="document.abstract" title="{{ document.abstract }}"><b>Résumé</b> : {{ document.abstract | ellipse:false:istexConfigDefault.abstractLength:"..." }}</p>'+
36+
'<p class="istex-results-item-abstract" ng-if="document.abstract" title="{{ document.abstract }}">{{ document.abstract | ellipse:false:istexConfigDefault.abstractLength:"..." }}</p>'+
3737
'<p class="istex-results-item-abstract" title="Pas de résumé" ng-if="!document.abstract">{{ istexConfigDefault.labels.results[\'abstract\'] || "Pas de résumé disponible pour cet article" }}</p>'+
3838
'<div ng-repeat="genre in document.genre" ng-if="istexConfigDefault.tags.articleType" class="istex-tag">Type : {{ genre | capitalize }}</div>'+
3939
'<div ng-if="istexConfigDefault.tags.corpusName" class="istex-tag">{{ document.corpusName | capitalize }}</div>'+
4040
'<div ng-if="istexConfigDefault.tags.publicationDate" class="istex-tag">Publié en {{ document.publicationDate }}</div>'+
41-
'<div><b>Qualité du PDF</b> : <div class="star-rating" title="{{document.qualityIndicators.score}}"><div class="full-star" ng-style="{width: \'{{document.qualityIndicators.score*10 || 0}}%\'}"></div><div class="empty-star">{{document.qualityIndicators.score || 0}}</div></div></div>'+
41+
'<div ng-if="istexConfigDefault.qualityIndicator"><b>Qualité du PDF</b> : <div class="star-rating" title="{{document.qualityIndicators.score}}"><div class="full-star" ng-style="{width: \'{{document.qualityIndicators.score*10 || 0}}%\'}"></div><div class="empty-star">{{document.qualityIndicators.score || 0}}</div></div></div>'+
4242
'<div class="downloads">'+
4343
'<div class="download fulltext">'+
4444
'<h4>{{ istexConfigDefault.labels.results["fulltext"] || "Fulltext" }}</h4>'+

Diff for: app/istexresults/IstexresultsService.js

+31-7
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ app.factory('istexResultsService', ['$http', '$rootScope', function($http, $root
2828
url += "&stats=1";
2929
if($rootScope.defaultSort){
3030
url += "&sortBy="+$rootScope.defaultSort;
31-
}else{
31+
}else if($rootScope.istexConfigDefault.defaultSort){
3232
url += "&sortBy="+$rootScope.istexConfigDefault.defaultSort;
3333
}
3434
var operator = "&defaultOperator="+$rootScope.istexConfigDefault.operator;
@@ -48,15 +48,39 @@ app.factory('istexResultsService', ['$http', '$rootScope', function($http, $root
4848
},
4949
sortedSearch: function(sort) {
5050
var defaultSort = $rootScope.istexConfigDefault.defaultSort;
51+
var url = "";
52+
5153
var sortByRegexp = /(&sortBy=)[a-zA-Z\[\],]*(&?)/;
54+
55+
if(defaultSort){
56+
sort +=","+defaultSort;
57+
}
58+
if(!defaultSort && !sort){
59+
url = $rootScope.currentPageURI.replace(sortByRegexp, "");
60+
$rootScope.currentPageURI = url;
61+
if($rootScope.currentFacetsURI){
62+
url= $rootScope.currentFacetsURI.replace(sortByRegexp, "");
63+
$rootScope.currentFacetsURI = url;
64+
}
65+
}else{
66+
url = $rootScope.currentPageURI.replace(sortByRegexp, "$1"+sort+"$2");
67+
$rootScope.currentPageURI = url;
68+
if($rootScope.currentFacetsURI){
69+
url= $rootScope.currentFacetsURI.replace(sortByRegexp, "$1"+sort+"$2");
70+
$rootScope.currentFacetsURI = url;
71+
}
72+
}
73+
if(sort && url.indexOf("sortBy")==-1){
74+
url = $rootScope.currentPageURI+"&sortBy="+sort;
75+
$rootScope.currentPageURI = url;
76+
if($rootScope.currentFacetsURI){
77+
url = $rootScope.currentFacetsURI+"&sortBy="+sort;
78+
$rootScope.currentFacetsURI = url;
79+
}
80+
}
5281

5382
// We create the url to call, using the same Query for the basic search
54-
var url = $rootScope.currentPageURI.replace(sortByRegexp, "$1"+sort+","+defaultSort+"$2");
55-
$rootScope.currentPageURI = url;
56-
if($rootScope.currentFacetsURI){
57-
url= $rootScope.currentFacetsURI.replace(sortByRegexp, "$1"+sort+","+defaultSort+"$2");
58-
$rootScope.currentFacetsURI = url;
59-
}
83+
6084

6185
// We calculate the request time
6286
$rootScope.searchTimeA = new Date().getTime();

Diff for: app/istexsearch/IstexsearchService.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ app.factory('istexSearchService', ['$http', '$rootScope', function($http, $rootS
1313
url += "&stats=1";
1414
if($rootScope.defaultSort){
1515
url += "&sortBy="+$rootScope.defaultSort;
16-
}else{
16+
}else if($rootScope.istexConfigDefault.defaultSort){
1717
url += "&sortBy="+$rootScope.istexConfigDefault.defaultSort;
1818
}
1919
var operator = "&defaultOperator="+$rootScope.istexConfigDefault.operator;

Diff for: public/app.min.js

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: public/index.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ <h1 class="blog-title">Démonstration d'utilisation des widgets Istex</h1>
5454

5555
<script>
5656
var istexConfig = {
57-
57+
5858
};
5959
/*
6060
[

0 commit comments

Comments
 (0)