Yangman - redesign menu items
[dlux.git] / modules / yangman-resources / src / main / resources / yangman / views / leftpanel / collections-tab.tpl.html
1 <md-list class="yangmanModule__requests-list__collections-list"
2          ng-cloak
3          ng-init="reqList.init(reqList.collectionList)"
4          ng-controller="RequestsListCtrl as reqList">
5
6     <md-content class="searchBox" layout="row">
7         <!-- search icon, form, clear button -->
8         <md-icon class="material-icons">search</md-icon>
9         <input class="ng-pristine ng-valid ng-touched"
10                type="text"
11                flex
12                placeholder="{{'YANGMAN_SEARCH' | translate}}"
13                ng-model="reqList.search"
14                aria-invalid="false" />
15         <md-button aria-label="{{'YANGMAN_CLEAR_SEARCH'| translate}}"
16                     ng-click="reqList.clearFilter()"
17                     ng-if="reqList.search">
18             <md-icon class="material-icons clickable" >
19                 close
20             </md-icon>
21             <md-tooltip md-direction="bottom">{{'YANGMAN_CLEAR_SEARCH'| translate}}</md-tooltip>
22         </md-button>
23         <!-- /search icon, form, clear button -->
24
25         <!-- sorting -->
26         <md-button  ng-click="reqList.toggleCollectionsSort()"
27                     ng-disabled="reqList.collectionList.collections.length <= 1">
28             <md-icon class="material-icons clickable" >
29                 sort
30             </md-icon>
31             <md-tooltip md-direction="bottom">{{ ( reqList.collectionsSortAsc ? 'YANGMAN_SORT_DESC' : 'YANGMAN_SORT_ASC' )| translate}}</md-tooltip>
32         </md-button>
33         <!-- /sorting -->
34
35         <!-- importing -->
36         <input type="file" accept=".json" id="importCollection" on-read-file="reqList.readCollectionFromFile($fileContent)">
37         <md-button>
38             <label for="importCollection">
39                 <md-icon class="material-icons clickable" >
40                     file_upload
41                 </md-icon>
42                 <md-tooltip md-direction="bottom">{{'YANGMAN_IMPORT_COLLECTION'| translate}}</md-tooltip>
43             </label>
44         </md-button>
45         <!-- /importing -->
46
47         <!-- delete collections -->
48         <md-button  ng-click="reqList.clearCollectionList($event)"
49                     ng-disabled="!reqList.mainList.collections.length">
50             <md-icon class="material-icons clickable" >
51                 delete_forever
52             </md-icon>
53             <md-tooltip md-direction="bottom">{{'YANGMAN_DELETE_COLLECTIONS' | translate}}</md-tooltip>
54         </md-button>
55         <!-- / delete collections -->
56     </md-content>
57
58     <md-divider></md-divider>
59
60     <md-content class="scrollableY">
61
62         <div ng-repeat="collection in reqList.mainList.collections | filter: reqList.filterCol | orderBy: (reqList.collectionsSortAsc ? '' : '-')+'name'">
63
64             <div layout="row">
65
66                 <md-list-item class="yangmanModule__requests-list__collection"
67                               flex
68                               ng-class="{'selected': collection.expanded}"
69                               ng-click="collection.toggleExpanded()">
70
71                     <div layout="row">
72                         <md-icon md-font-set="material-icons" class="top-icon">
73                             folder_open
74                         </md-icon>
75                         <div layout="column">
76
77                             <p flex>
78                             <span md-highlight-text="reqList.search" >
79                                 {{collection.name}}
80                             </span><br />
81                             <span class="desc">
82                                 <span class="desc" ng-if="reqList.search && !reqList.filterColName(collection)">{{'YANGMAN_MATCHING'| translate}} {{reqList.colMatchingReqsCount(collection)}} / </span>
83                                 {{collection.data.length}} {{(collection.data.length>1 ? 'YANGMAN_COLLECTION_REQUESTS' : 'YANGMAN_COLLECTION_REQUEST')| translate}}
84                             </span>
85                             </p>
86                         </div>
87                     </div>
88
89                 </md-list-item>
90                 <md-menu class="yangmanModule__requests-list__group__collectionMenu"
91                          md-offset="35 15"
92                          layout-align="center start">
93                     <md-button aria-label="menu" class="md-primary" ng-click="$mdOpenMenu()">
94                         <i class="material-icons">menu</i>
95                     </md-button>
96                     <md-menu-content class="reqMenu">
97                         <md-menu-item>
98                             <md-button aria-label="Duplicate collection"
99                                        ng-click="reqList.showDgEditCollection($event, collection, false)">
100                                 <i class="material-icons">mode_edit</i>
101                                 {{'YANGMAN_COLLECTION_EDIT'| translate}}
102                             </md-button>
103                         </md-menu-item>
104                         <md-menu-item>
105                             <md-button aria-label="{{'YANGMAN_COLLECTION_DUPLICATE'| translate}}"
106                                        ng-click="reqList.showDgEditCollection($event, collection, true)">
107                                 <i class="material-icons">control_point_duplicate</i>
108                                 {{'YANGMAN_COLLECTION_DUPLICATE'| translate}}
109                             </md-button>
110                         </md-menu-item>
111                         <md-menu-item>
112                             <md-button aria-label="{{'YANGMAN_COLLECTION_DOWNLOAD'| translate}}"
113                                        ng-click="reqList.downloadCollection(collection)">
114                                 <i class="material-icons">file_download</i>
115                                 {{'YANGMAN_COLLECTION_DOWNLOAD'| translate}}
116                             </md-button>
117                         </md-menu-item>
118                         <md-menu-item>
119                             <md-button aria-label="{{'YANGMAN_COLLECTION_DELETE'| translate}}"
120                                        ng-click="reqList.showDgDeleteCollection($event, collection)">
121                                 <i class="material-icons">delete</i>
122                                 {{'YANGMAN_COLLECTION_DELETE'| translate}}
123                             </md-button>
124                         </md-menu-item>
125                     </md-menu-content>
126                 </md-menu>
127             </div>
128
129
130             <md-list ng-show="collection.expanded" class="yangmanModule__requests-list__collection__requests">
131                 <div ng-repeat="request in collection.data"
132                      layout="row"
133                      ng-include src="globalViewPath + 'leftpanel/request-item.tpl.html'">
134                 </div>
135             </md-list>
136             <md-divider></md-divider>
137
138         </div>
139     </md-content>
140
141 </md-list>
142