|
1 | 1 | <template> |
2 | 2 | <v-card> |
3 | | - <v-card-title class="card-title table-controls"> |
4 | | - <v-layout row wrap> |
5 | | - <v-flex xs12 lg4> |
6 | | - <data-table-controls |
7 | | - :deleteMode="deleteMode" |
8 | | - @create="create" |
9 | | - @editSelected="editSelected" |
10 | | - @suspendSelected="suspendSelected" |
11 | | - @restoreSelected="restoreSelected" |
12 | | - @destroySelected="destroySelected" |
13 | | - @refreshTable="refreshTable" |
14 | | - ></data-table-controls> |
15 | | - </v-flex> |
16 | | - |
17 | | - <v-flex xs12 lg8 text-xs-left text-lg-right> |
18 | | - <!-- Search by fields --> |
19 | | - <v-menu offset-y :close-on-content-click="false" style="margin-right:30px;"> |
20 | | - <v-btn small fab dark slot="activator" class="primary"> |
21 | | - <v-icon>filter_list</v-icon> |
22 | | - </v-btn> |
23 | | - <v-list style="overflow-y:false;"> |
24 | | - <v-list-tile v-for="(item, index) in filterColumns" :key="index"> |
25 | | - <v-autocomplete |
26 | | - :items="filterModes" |
27 | | - v-model="item.mode" |
28 | | - item-text="text" |
29 | | - item-value="name" |
30 | | - :label="$t('global.datatable.filterModes.label')" |
31 | | - hide-details |
32 | | - @input="updateColumnFilterMode($event, index)" |
33 | | - ></v-autocomplete> |
34 | | - <v-text-field |
35 | | - v-model="item.value" |
36 | | - hide-details |
37 | | - :label="item.text" |
38 | | - @input="updateFilterColumns($event, index)" |
39 | | - ></v-text-field> |
40 | | - </v-list-tile> |
41 | | - </v-list> |
42 | | - </v-menu> |
43 | | - |
44 | | - <!-- Search in table --> |
45 | | - <span style="margin-right:30px;display:inline-block;width:250px;"> |
46 | | - <v-text-field |
47 | | - append-icon="search" |
48 | | - :label="$t('global.datatable.search')" |
49 | | - single-line |
50 | | - hide-details |
51 | | - v-model="search" |
52 | | - min-width="200" |
53 | | - ></v-text-field> |
54 | | - </span> |
55 | | - |
56 | | - <!-- Select statuses (active/inactive) --> |
57 | | - <template v-if="['soft', 'both'].includes(deleteMode)"> |
58 | | - <span style="margin-right:30px;display:inline-block;width:250px;"> |
| 3 | + <data-table-controls |
| 4 | + :deleteMode="deleteMode" |
| 5 | + @create="create" |
| 6 | + @editSelected="editSelected" |
| 7 | + @suspendSelected="suspendSelected" |
| 8 | + @restoreSelected="restoreSelected" |
| 9 | + @destroySelected="destroySelected" |
| 10 | + @refreshTable="refreshTable" |
| 11 | + @clearFilters="clearFilters" |
| 12 | + > |
| 13 | + <template slot="center"> |
| 14 | + <!-- Search by fields --> |
| 15 | + <v-menu offset-y :close-on-content-click="false" style="margin-right:30px;"> |
| 16 | + <v-btn small fab dark slot="activator" class="primary"> |
| 17 | + <v-icon>filter_list</v-icon> |
| 18 | + </v-btn> |
| 19 | + <v-list style="overflow-y:false;"> |
| 20 | + <v-list-tile v-for="(item, index) in filterColumns" :key="index"> |
59 | 21 | <v-autocomplete |
60 | | - :label="$t('global.datatable.status.title')" |
61 | | - v-bind:items="statuses" |
62 | | - v-model="selectedStatuses" |
63 | | - single-line |
| 22 | + :items="filterModes" |
| 23 | + v-model="item.mode" |
64 | 24 | item-text="text" |
65 | | - item-value="value" |
66 | | - multiple |
67 | | - chips |
| 25 | + item-value="name" |
| 26 | + :label="$t('global.datatable.filterModes.label')" |
| 27 | + hide-details |
| 28 | + @input="updateColumnFilterMode($event, index)" |
68 | 29 | ></v-autocomplete> |
69 | | - </span> |
70 | | - </template> |
| 30 | + <v-text-field |
| 31 | + v-model="item.value" |
| 32 | + hide-details |
| 33 | + :label="item.text" |
| 34 | + @input="updateFilterColumns($event, index)" |
| 35 | + ></v-text-field> |
| 36 | + </v-list-tile> |
| 37 | + </v-list> |
| 38 | + </v-menu> |
71 | 39 |
|
72 | | - <v-tooltip left> |
73 | | - <v-btn class="white--text" fab small color="green darken-4" @click="exportToExcel()" slot="activator" :loading="excelLoading"> |
74 | | - <v-icon>save_alt</v-icon> |
75 | | - </v-btn> |
76 | | - <span>{{ $t('global.datatable.buttons.copyToExcel') }}</span> |
77 | | - </v-tooltip> |
| 40 | + <!-- Search in table --> |
| 41 | + <span style="margin-right:30px;display:inline-block;width:250px;"> |
| 42 | + <v-text-field |
| 43 | + append-icon="search" |
| 44 | + :label="$t('global.datatable.search')" |
| 45 | + single-line |
| 46 | + hide-details |
| 47 | + v-model="search" |
| 48 | + min-width="200" |
| 49 | + ></v-text-field> |
| 50 | + </span> |
78 | 51 |
|
79 | | - </v-flex> |
80 | | - </v-layout> |
81 | | - </v-card-title> |
| 52 | + <!-- Select statuses (active/inactive) --> |
| 53 | + <template v-if="['soft', 'both'].includes(deleteMode)"> |
| 54 | + <span style="margin-right:30px;display:inline-block;width:250px;"> |
| 55 | + <v-autocomplete |
| 56 | + :label="$t('global.datatable.status.title')" |
| 57 | + v-bind:items="statuses" |
| 58 | + v-model="selectedStatuses" |
| 59 | + single-line |
| 60 | + item-text="text" |
| 61 | + item-value="value" |
| 62 | + multiple |
| 63 | + chips |
| 64 | + ></v-autocomplete> |
| 65 | + </span> |
| 66 | + </template> |
| 67 | + </template> |
| 68 | + <template slot="right"> |
| 69 | + <v-tooltip left> |
| 70 | + <v-btn class="white--text" fab small color="green darken-4" @click="exportToExcel()" slot="activator" :loading="excelLoading"> |
| 71 | + <v-icon>save_alt</v-icon> |
| 72 | + </v-btn> |
| 73 | + <span>{{ $t('global.datatable.buttons.copyToExcel') }}</span> |
| 74 | + </v-tooltip> |
| 75 | + </template> |
| 76 | + </data-table-controls> |
82 | 77 | <!-- Table --> |
83 | 78 | <v-data-table |
84 | 79 | class="datatable" |
@@ -164,5 +159,3 @@ export default { |
164 | 159 | } |
165 | 160 | }; |
166 | 161 | </script> |
167 | | -<style scoped> |
168 | | -</style> |
0 commit comments