search.html 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <div ng-controller="SearchCtrl" ng-init="init()" class="search-box">
  2. <div class="search-field-wrapper">
  3. <span style="position: relative;">
  4. <input type="text" placeholder="Find dashboards by name" give-focus="giveSearchFocus" tabindex="1"
  5. ng-keydown="keyDown($event)" ng-model="query.query" ng-model-options="{ debounce: 500 }" spellcheck='false' ng-change="search()" />
  6. </span>
  7. <div class="search-switches">
  8. <i class="fa fa-filter"></i>
  9. <a class="pointer" href="javascript:void 0;" ng-click="showStarred()" tabindex="2">
  10. <i class="fa fa-remove" ng-show="query.starred"></i>
  11. starred
  12. </a> |
  13. <a class="pointer" href="javascript:void 0;" ng-click="getTags()" tabindex="3">
  14. <i class="fa fa-remove" ng-show="tagsMode"></i>
  15. tags
  16. </a>
  17. <span ng-if="query.tag.length">
  18. |
  19. <span ng-repeat="tagName in query.tag">
  20. <a ng-click="removeTag(tagName, $event)" tag-color-from-name="tagName" class="label label-tag">
  21. <i class="fa fa-remove"></i>
  22. {{tagName}}
  23. </a>
  24. </span>
  25. </span>
  26. </div>
  27. </div>
  28. <div class="search-results-container" ng-if="tagsMode">
  29. <div class="row">
  30. <div class="span6 offset1">
  31. <div ng-repeat="tag in results" class="pointer" style="width: 180px; float: left;"
  32. ng-class="{'selected': $index === selectedIndex }"
  33. ng-click="filterByTag(tag.term, $event)">
  34. <a class="search-result-tag label label-tag" tag-color-from-name="tag.term">
  35. <i class="fa fa-tag"></i>
  36. <span>{{tag.term}} &nbsp;({{tag.count}})</span>
  37. </a>
  38. </div>
  39. </div>
  40. </div>
  41. </div>
  42. <div class="search-results-container" ng-if="!tagsMode">
  43. <h6 ng-hide="results.length">No dashboards matching your query were found.</h6>
  44. <a class="search-item pointer search-item-{{row.type}}" bindonce ng-repeat="row in results"
  45. ng-class="{'selected': $index == selectedIndex}" ng-href="{{row.url}}">
  46. <span class="search-result-tags">
  47. <span ng-click="filterByTag(tag, $event)" ng-repeat="tag in row.tags" tag-color-from-name="tag" class="label label-tag">
  48. {{tag}}
  49. </span>
  50. <i class="fa" ng-class="{'fa-star': row.isStarred, 'fa-star-o': !row.isStarred}"></i>
  51. </span>
  52. <span class="search-result-link">
  53. <i class="fa search-result-icon"></i>
  54. <span bo-text="row.title"></span>
  55. </span>
  56. </a>
  57. </div>
  58. <div class="search-button-row">
  59. <button class="btn btn-inverse pull-left" ng-click="newDashboard()" ng-show="contextSrv.isEditor">
  60. <i class="fa fa-plus"></i>
  61. New
  62. </button>
  63. <a class="btn btn-inverse pull-left" href="import/dashboard" ng-show="contextSrv.isEditor">
  64. <i class="fa fa-download"></i>
  65. Import
  66. </a>
  67. <button class="btn btn-inverse pull-left" dash-editor-link="app/partials/playlist.html" editor-scope="isolated" ng-click="dismiss();">
  68. <i class="fa fa-play"></i>
  69. Playlist
  70. </button>
  71. <div class="clearfix"></div>
  72. </div>
  73. </div>