diff --git a/vipra-backend/src/main/java/de/vipra/rest/resource/ArticleResource.java b/vipra-backend/src/main/java/de/vipra/rest/resource/ArticleResource.java index 4f6707ae701e6d19f05edd83e5c031277bfcf5a7..29cc5aace09b3d341daefe26c14a092f60d28ac7 100644 --- a/vipra-backend/src/main/java/de/vipra/rest/resource/ArticleResource.java +++ b/vipra-backend/src/main/java/de/vipra/rest/resource/ArticleResource.java @@ -71,7 +71,7 @@ public class ArticleResource { query.criteria("topicModel", new TopicModel(topicModel)); if (word != null && !word.isEmpty()) - query.criteria("words.word", word); + query.criteria("words.id", word); if (entity != null && !entity.isEmpty()) query.criteria("entities.entity", entity); diff --git a/vipra-backend/src/main/java/de/vipra/rest/resource/TopicResource.java b/vipra-backend/src/main/java/de/vipra/rest/resource/TopicResource.java index 136ff1143ea86a04642da44b16daee0df73570c8..70849ce76ee4b9f96c00bc5b7cc595684de2439f 100644 --- a/vipra-backend/src/main/java/de/vipra/rest/resource/TopicResource.java +++ b/vipra-backend/src/main/java/de/vipra/rest/resource/TopicResource.java @@ -65,7 +65,7 @@ public class TopicResource { query.criteria("topicModel", new TopicModel(topicModel)); if (word != null && !word.isEmpty()) - query.criteria("words.word", word); + query.criteria("words.id", word); final List<TopicFull> topics = dbTopics.getMultiple(query); diff --git a/vipra-cmd/src/main/java/de/vipra/cmd/text/SpotlightResponse.java b/vipra-cmd/src/main/java/de/vipra/cmd/text/SpotlightResponse.java index 084ae123cc5ff04604aac46259849a414e0e18b6..e1f904cfa0747716f8109fb8c178aa90d036d73f 100644 --- a/vipra-cmd/src/main/java/de/vipra/cmd/text/SpotlightResponse.java +++ b/vipra-cmd/src/main/java/de/vipra/cmd/text/SpotlightResponse.java @@ -2,6 +2,7 @@ package de.vipra.cmd.text; import java.util.ArrayList; import java.util.Collections; +import java.util.Comparator; import java.util.HashSet; import java.util.List; import java.util.Set; @@ -58,7 +59,7 @@ public class SpotlightResponse { // to list and sort final List<TextEntity> textEntitiesList = new ArrayList<>(textEntities); - Collections.sort(textEntitiesList); + Collections.sort(textEntitiesList, Comparator.reverseOrder()); return textEntitiesList; } diff --git a/vipra-ui/app/html/articles/index.html b/vipra-ui/app/html/articles/index.html index 93d1d6648d9e9557e6d4bdd2929b3b361b5dcfe9..048e680a7d41688a76d338577a4667c9200fd79b 100644 --- a/vipra-ui/app/html/articles/index.html +++ b/vipra-ui/app/html/articles/index.html @@ -11,15 +11,15 @@ Found <ng-pluralize count="articlesTotal||0" when="{0:'no articles',1:'1 article',other:'{} articles'}"></ng-pluralize> in the database. <span ng-show="articlesTotal"> - Sort by - <ol class="nya-bs-select nya-bs-condensed" ng-model="articlesIndexModels.sortkey"> - <li value="title" class="nya-bs-option"><a>Title</a></li> - <li value="date" class="nya-bs-option"><a>Date</a></li> - <li value="created" class="nya-bs-option"><a>Added</a></li> - <li value="topicsCount" class="nya-bs-option"><a># of topics</a></li> - </ol> - <sort-dir ng-model="articlesIndexModels.sortdir" /> - </span> + Sort by + <ol class="nya-bs-select nya-bs-condensed" ng-model="articlesIndexModels.sortkey"> + <li value="title" class="nya-bs-option"><a>Title</a></li> + <li value="date" class="nya-bs-option"><a>Date</a></li> + <li value="created" class="nya-bs-option"><a>Added</a></li> + <li value="topicsCount" class="nya-bs-option"><a># of topics</a></li> + </ol> + <sort-dir ng-model="articlesIndexModels.sortdir" /> + </span> </div> <table class="table table-hover table-condensed"> <tbody> diff --git a/vipra-ui/app/html/articles/show.html b/vipra-ui/app/html/articles/show.html index 2af0c21facfc9bd6a658825260919b7f1059631b..545e7f546a14d633b9c8982180f26ebed024f872 100644 --- a/vipra-ui/app/html/articles/show.html +++ b/vipra-ui/app/html/articles/show.html @@ -125,6 +125,7 @@ <div class="panel-footer"> <ng-pluralize count="entities.length" when="{0:'No entities',1:'First entity',other:'First {} entities'}"></ng-pluralize>. <button class="btn btn-default btn-sm" ng-click="showMoreEntities()" ng-show="entities.length<allEntities.length">Show more</button> + <button class="btn btn-default btn-sm" ng-click="showAllEntities()" ng-show="entities.length<allEntities.length">Show all</button> </div> </div> </div> @@ -162,6 +163,7 @@ <div class="panel-footer"> <ng-pluralize count="words.length" when="{0:'No words',1:'First word',other:'First {} words'}"></ng-pluralize>. <button class="btn btn-default btn-sm" ng-click="showMoreWords()" ng-show="words.length<allWords.length">Show more</button> + <button class="btn btn-default btn-sm" ng-click="showAllWords()" ng-show="words.length<allWords.length">Show all</button> </div> </div> </div> diff --git a/vipra-ui/app/html/topics/index.html b/vipra-ui/app/html/topics/index.html index 8f05f54ef21934390e3628d3c0e28cd04a70524e..956f11c41403a57f3354a5a64344a8383fd4d573 100644 --- a/vipra-ui/app/html/topics/index.html +++ b/vipra-ui/app/html/topics/index.html @@ -15,6 +15,7 @@ <ol class="nya-bs-select nya-bs-condensed" ng-model="topicsIndexModels.sortkey"> <li value="name" class="nya-bs-option"><a>Name</a></li> <li value="created" class="nya-bs-option"><a>Added</a></li> + <li value="articlesCount" class="nya-bs-option"><a># of articles</a></li> </ol> <sort-dir ng-model="topicsIndexModels.sortdir" /> </span> diff --git a/vipra-ui/app/js/controllers.js b/vipra-ui/app/js/controllers.js index 4b7ee2bb3371818ab9219dc20070c5d66965e8f5..8f10c902b06cfd3fa7f146ee42c1f586d6dff27d 100644 --- a/vipra-ui/app/js/controllers.js +++ b/vipra-ui/app/js/controllers.js @@ -715,6 +715,11 @@ $scope.words = $scope.allWords.slice(0, wordsCount); }; + $scope.showAllWords = function() { + wordsCount = $scope.allWords.length; + $scope.words = $scope.allWords; + }; + $scope.openTabEntities = function() { if($scope.entities) return; @@ -733,6 +738,11 @@ $scope.entities = $scope.allEntities.slice(0, entitiesCount); }; + $scope.showAllEntities = function() { + entitiesCount = $scope.allEntities.length; + $scope.entities = $scope.allEntities; + }; + var topicShareChartElement = $('#topic-share'); $scope.highlightSlice = function(id, toggle) { var highcharts = topicShareChartElement.highcharts(); @@ -1141,7 +1151,7 @@ limit: $scope.wordsArticlesModels.limit, sort: ($scope.wordsArticlesModels.sortdir ? '' : '-') + $scope.wordsArticlesModels.sortkey, topicModel: $scope.rootModels.topicModel.id, - word: $stateParams.word + word: $scope.word }, function(data, headers) { $scope.articles = data; $scope.articlesTotal = headers("V-Total");