summaryrefslogtreecommitdiffstats
path: root/webapp
diff options
context:
space:
mode:
authorUdo Walter2019-04-15 05:36:13 +0200
committerUdo Walter2019-04-15 05:36:13 +0200
commit9050fe25049560964f03cf1264dcab1a83f6b92f (patch)
tree83f27ac68c915c70d4b36bad01d812764d77f0a1 /webapp
parent[webapp/datatable] add sort by number and ipv4 (diff)
downloadbas-9050fe25049560964f03cf1264dcab1a83f6b92f.tar.gz
bas-9050fe25049560964f03cf1264dcab1a83f6b92f.tar.xz
bas-9050fe25049560964f03cf1264dcab1a83f6b92f.zip
[configurator] add ability to mark a config as default
Diffstat (limited to 'webapp')
-rw-r--r--webapp/src/components/ConfiguratorModule.vue26
1 files changed, 22 insertions, 4 deletions
diff --git a/webapp/src/components/ConfiguratorModule.vue b/webapp/src/components/ConfiguratorModule.vue
index 0641221..a08eb47 100644
--- a/webapp/src/components/ConfiguratorModule.vue
+++ b/webapp/src/components/ConfiguratorModule.vue
@@ -9,7 +9,9 @@
"deleteConfigs": "Delete one config | Delete {0} configs",
"createConfig": "Create config",
"deleteEntries": "Delete one entry | Delete {0} entries",
- "createEntry": "Create entry"
+ "createEntry": "Create entry",
+ "successSetAsDefault": "Successfully set config as default.",
+ "defaultConfig": "Default Config"
},
"de": {
"id": "ID",
@@ -20,7 +22,9 @@
"deleteConfigs": "Eine Konfiguration löschen | {0} Konfigurationen löschen",
"createConfig": "Konfiguration erstellen",
"deleteEntries": "Einen Eintrag löschen | {0} Einträge löschen",
- "createEntry": "Eintrag erstellen"
+ "createEntry": "Eintrag erstellen",
+ "successSetAsDefault": "Konfiguration erfolgreich als Standard gesetzt.",
+ "defaultConfig": "Standard Konfiguration"
}
}
</i18n>
@@ -40,7 +44,16 @@
<v-subheader>{{ $t('configs') }}</v-subheader>
<v-card>
<data-table v-model="selectedConfigs" :headers="configHeaders" :items="configs" min-width="800px" @dblclick="editConfig($event)">
- <div slot="actions" slot-scope="row" style="text-align: right">
+ <div slot="actions" slot-scope="row" style="display: flex; justify-content: flex-end; align-items: center">
+ <v-tooltip top v-if="row.item.isDefault">
+ <template #activator="{ on }">
+ <v-icon v-on="on" color="success" style="margin-right: 14px">flag</v-icon>
+ </template>
+ <span>{{ $t('defaultConfig') }}</span>
+ </v-tooltip>
+ <v-btn v-else icon @click.stop="setAsDefault(row.item.id)">
+ <v-icon style="opacity: 0.2">outlined_flag</v-icon>
+ </v-btn>
<v-btn flat small @click.stop="assignConfig(row.item)">
<span class="mr-1">{{ row.item.groupCount }}</span><v-icon small>category</v-icon>
<span class="mx-1">/</span>
@@ -131,7 +144,7 @@ export default {
{ key: 'id', text: this.$t('id'), width: '50px' },
{ key: 'name', text: this.$t('name'), width: '220px' },
{ key: 'description', text: this.$t('description') },
- { key: 'actions', width: '200px' }
+ { key: 'actions', width: '210px' }
]
},
entryHeaders () {
@@ -168,6 +181,11 @@ export default {
},
editEntry (item) {
this.setDialog({ show: true, type: 'entry', info: item })
+ },
+ async setAsDefault (id) {
+ await this.$http.put('/api/ipxeconfigs/' + id + '/default')
+ this.$snackbar({ text: this.$t('successSetAsDefault'), color: 'success', timeout: 2000 })
+ this.$store.dispatch('configurator/loadData')
}
},
created () {