UI and API improvements for working with large repositories

- Change the tag check bar to only select the current page (by default), but allow for selecting ALL tags
- Limit the number of tags compared in the visualization view to 10
- Fix the multiselect dropdown to limit itself to 10 items selected
- Remove saving the selected tags in the URL, as it is too slow and overloads the URLs in Chrome when there are 1000+ tags selected
- Change the images API to not return locations: By skipping the extra join and looping, it made the /images API call 10x faster (in hand tests)

Fixes #292
Fixes #293
This commit is contained in:
Joseph Schorr 2015-07-31 16:31:29 -04:00
parent 55a0b83ddf
commit 4160b720f9
9 changed files with 125 additions and 54 deletions

View file

@ -1,7 +1,12 @@
<div class="multiselect-dropdown-element">
<div class="dropdown" style="text-align: left;">
<button class="btn-dropdown btn btn-default" data-toggle="dropdown">
<span class="selected-item-template" ng-repeat="item in selectedItems" ng-transcope></span>
<span class="selected-item-template" ng-repeat="item in selectedItems | limitTo:10" ng-transcope></span>
<span class="selected-item-template"
ng-if="(selectedItems | limitTo:11).length > 10">
and {{ selectedItems.length - 10 }} more...
</span>
<span class="none" ng-if="!selectedItems.length">(No {{ itemName }}s selected)</span>
<span class="caret" ng-if="!readOnly"></span>
</button>
@ -25,7 +30,7 @@
</div>
</div>
</li>
<li role="presentation" ng-if="(items | filter:filter).length == 0">
<li role="presentation" ng-if="(items | filter:filter | limitTo:1).length == 0">
<div class="empty">
<div class="empty-primary-msg">No matching {{ itemName }}s found</div>
<div class="empty-secondary-msg">