1 <md-list class="yangmanModule__requests-list__collections-list"
3 ng-controller="RequestsListCtrl as reqList"
4 ng-init="reqList.init('collections')">
6 <md-content class="searchBox yangmanModule__left-panel__search" layout="row">
9 <md-input-container layout="row" md-no-float class="modules-list-search" flex>
10 <!-- search icon, form, clear button -->
11 <md-icon class="material-icons">search</md-icon>
12 <input class="ng-pristine ng-valid ng-touched"
15 placeholder="{{'YANGMAN_SEARCH' | translate}}"
16 ng-model="reqList.search"
17 aria-invalid="false" />
18 <md-button aria-label="{{'YANGMAN_CLEAR_SEARCH'| translate}}" flex="none"
19 ng-click="reqList.clearFilter()"
20 ng-if="reqList.search">
21 <md-icon class="material-icons clickable">
24 <md-tooltip md-direction="bottom">{{'YANGMAN_CLEAR_SEARCH'| translate}}</md-tooltip>
26 <!-- /search icon, form, clear button -->
30 <span class="collection-button-container">
31 <md-button ng-click="reqList.toggleCollectionsSort()"
32 ng-disabled="reqList.collectionList.collections.length <= 1">
33 <md-icon class="material-icons clickable" > sort</md-icon>
35 <md-tooltip md-direction="bottom">
36 {{ ( reqList.collectionsSortAsc ? 'YANGMAN_SORT_COLLECTIONS_DESC' : 'YANGMAN_SORT_COLLECTIONS_ASC' )| translate}}
42 <span class="collection-button-container">
43 <md-button ng-click="reqList.showDgSaveReq($event)"
44 ng-disabled="reqList.mainList.getSelectedItems(reqList.filterCollReq).length === 0">
45 <md-icon class="material-icons clickable">
49 <md-tooltip md-direction="bottom">{{'YANGMAN_REQS_SAVE_TO_COL'| translate}}</md-tooltip>
54 <span class="collection-button-container">
55 <input type="file" accept=".json" id="importCollection" on-read-file="reqList.readCollectionFromFile($fileContent)">
57 <label for="importCollection">
58 <md-icon class="material-icons clickable" >
63 <md-tooltip md-direction="bottom">{{'YANGMAN_IMPORT_COLLECTION'| translate}}</md-tooltip>
67 <md-menu layout-align="center start">
68 <md-button ng-disabled="!reqList.mainList.list.length" aria-label="menu" ng-click="$mdOpenMenu()">
69 <md-icon class="material-icons clickable"> delete</md-icon>
70 <md-tooltip md-direction="bottom">{{'YANGMAN_DELETE_OPTIONS' | translate}}</md-tooltip>
73 <!-- delete selected -->
75 <md-button aria-label="{{'YANGMAN_REQS_DELETE'| translate}}"
76 ng-click="reqList.showDgDeleteRequests($event)"
77 ng-disabled="reqList.mainList.getSelectedItems(reqList.filterCollReq).length === 0">
78 <md-icon class="material-icons clickable">
81 {{'YANGMAN_REQS_DELETE'| translate}}
84 <!-- / delete selected -->
85 <!-- clear collections -->
87 <md-button aria-label="{{'YANGMAN_DELETE_COLLECTIONS' | translate}}"
88 ng-click="reqList.clearCollectionList($event)">
89 <md-icon class="material-icons clickable">
92 {{'YANGMAN_DELETE_COLLECTIONS' | translate}}
95 <!-- / clear history -->
98 <!-- / menu for deleting and clearing -->
100 <!-- menu for selecting and deselecting-->
101 <md-menu layout-align="center start">
102 <md-button ng-disabled="( !reqList.mainList.list.length)" aria-label="menu" ng-click="$mdOpenMenu()">
103 <md-icon class="material-icons clickable">
106 <md-tooltip md-direction="bottom">{{'YANGMAN_SELECT_OPTIONS' | translate}}</md-tooltip>
111 <md-button aria-label="{{'YANGMAN_SELECT_ALL' | translate}}"
112 ng-click="reqList.selectAllFilteredRequests()">
113 <md-icon class="material-icons clickable">
116 {{'YANGMAN_SELECT_ALL' | translate}}
120 <!-- deselect all -->
122 <md-button aria-label="{{'YANGMAN_DESELECT_ALL' | translate}}"
123 ng-click="reqList.deselectAllFilteredRequests()"
124 ng-disabled="reqList.mainList.getSelectedItems(reqList.filterCollReq).length === 0">
125 <md-icon class="material-icons clickable">
128 {{'YANGMAN_DESELECT_ALL' | translate}}
131 <!-- / deselect all -->
134 <!-- / menu for selecting and deselecting -->
137 <md-divider></md-divider>
139 <!-- collection list -->
140 <md-content class="scrollableY">
142 <div ng-repeat="collection in reqList.mainList.collections | filter: reqList.filterCol | orderBy: (reqList.collectionsSortAsc ? '' : '-')+'name'">
146 <md-list-item class="yangmanModule__requests-list__collection"
148 ng-class="{'expanded' : collection.expanded, 'selected': collection.expanded}"
149 ng-click="collection.toggleExpanded()">
152 <md-icon md-font-set="material-icons" class="top-icon">
155 <div layout="column">
158 <span md-highlight-text="reqList.search" md-highlight-flags="i">
162 <span class="desc" ng-if="reqList.search && !reqList.filterColName(collection)">{{'YANGMAN_MATCHING'| translate}} {{reqList.colMatchingReqsCount(collection)}} / </span>
163 {{collection.data.length}} {{(collection.data.length>1 ? 'YANGMAN_COLLECTION_REQUESTS' : 'YANGMAN_COLLECTION_REQUEST')| translate}}
170 <md-menu class="yangmanModule__requests-list__group__collectionMenu"
172 layout-align="center start">
173 <md-button aria-label="menu" class="md-primary" ng-click="$mdOpenMenu()">
174 <i class="material-icons">menu</i>
176 <md-menu-content class="reqMenu">
178 <md-button aria-label="Duplicate collection"
179 ng-click="reqList.showDgEditCollection($event, collection, false)">
180 <i class="material-icons">mode_edit</i>
181 {{'YANGMAN_COLLECTION_EDIT'| translate}}
185 <md-button aria-label="{{'YANGMAN_COLLECTION_DUPLICATE'| translate}}"
186 ng-click="reqList.showDgEditCollection($event, collection, true)">
187 <i class="material-icons">control_point_duplicate</i>
188 {{'YANGMAN_COLLECTION_DUPLICATE'| translate}}
192 <md-button aria-label="{{'YANGMAN_COLLECTION_DOWNLOAD'| translate}}"
193 ng-click="reqList.downloadCollection(collection)">
194 <i class="material-icons">file_download</i>
195 {{'YANGMAN_COLLECTION_DOWNLOAD'| translate}}
199 <md-button aria-label="{{'YANGMAN_COLLECTION_DELETE'| translate}}"
200 ng-click="reqList.showDgDeleteCollection($event, collection)">
201 <i class="material-icons">delete</i>
202 {{'YANGMAN_COLLECTION_DELETE'| translate}}
210 <md-list ng-show="collection.expanded" class="yangmanModule__requests-list__collection__requests">
211 <div ng-repeat="request in collection.data | filter: reqList.filterReq"
213 class="yangmanModule__requests-list__item-container"
214 ng-include src="globalViewPath + 'leftpanel/request-item.tpl.html'">
217 <md-divider></md-divider>