summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--webapp/src/components/ConfiguratorModuleConfig.vue3
-rw-r--r--webapp/src/components/GroupModule.vue1
-rw-r--r--webapp/src/components/GroupModuleClientView.vue6
-rw-r--r--webapp/src/components/GroupModuleGroupView.vue3
-rw-r--r--webapp/src/store/groups.js4
5 files changed, 13 insertions, 4 deletions
diff --git a/webapp/src/components/ConfiguratorModuleConfig.vue b/webapp/src/components/ConfiguratorModuleConfig.vue
index 7413a90..9cb450e 100644
--- a/webapp/src/components/ConfiguratorModuleConfig.vue
+++ b/webapp/src/components/ConfiguratorModuleConfig.vue
@@ -44,7 +44,7 @@
<v-text-field prepend-icon="label" :label="$t('name')" color="primary" v-model="name"></v-text-field>
</v-flex>
<v-flex class="text-xs-center">
- <div style="display: inline-block; max-width: 180px">
+ <div v-if="!expertMode" style="display: inline-block; max-width: 180px">
<v-text-field prepend-icon="timer" :label="$t('timeout')" color="primary" v-model="timeout" mask="######" suffix="ms"></v-text-field>
</div>
</v-flex>
@@ -135,6 +135,7 @@ export default {
this.timeout = value.info.timeout
this.script = value.info.script
if (this.script) this.expertMode = true
+ else this.expertMode = false
this.items = []
var result = await axios.get('/api/configurator/configs/' + value.info.id + '/entries')
this.items = result.data.map(x => ({
diff --git a/webapp/src/components/GroupModule.vue b/webapp/src/components/GroupModule.vue
index bc0c64b..8b23f40 100644
--- a/webapp/src/components/GroupModule.vue
+++ b/webapp/src/components/GroupModule.vue
@@ -87,6 +87,7 @@ export default {
}
},
created () {
+ this.$store.dispatch('groups/loadConfigs')
if (this.groupList.length === 0 || this.clientList.length === 0) this.$store.dispatch('groups/loadLists')
if (this.tabChain.length === 0) this.$store.dispatch('groups/loadGroup', { id: 0, tabIndex: 0 })
if (this.$route.params.id !== '0') this.loadItem(this.$route.name, this.$route.params.id)
diff --git a/webapp/src/components/GroupModuleClientView.vue b/webapp/src/components/GroupModuleClientView.vue
index 4ebdf73..281739c 100644
--- a/webapp/src/components/GroupModuleClientView.vue
+++ b/webapp/src/components/GroupModuleClientView.vue
@@ -66,7 +66,7 @@
</div>
</v-flex>
<v-flex>
- <v-select v-if="editMode" class="info-input" prepend-icon="list" item-text="name" item-value="id" offset-y :label="$t('config')" color="primary" v-model="info.configId" :items="configList"></v-select>
+ <v-select v-if="editMode" class="info-input" prepend-icon="list" clearable item-text="name" item-value="id" offset-y :label="$t('config')" color="primary" v-model="info.configId" :items="configList"></v-select>
<div v-else class="info-input">
<div class="body-2 info-heading"><v-icon>list</v-icon><span>{{ $t('config') }}</span></div>
<div class="info-text">{{ configName || '-' }}</div>
@@ -164,6 +164,9 @@ export default {
this.info.name = this.client.name
this.info.description = this.client.description
this.info.configId = this.client.configId
+ this.info.ip = this.client.ip
+ this.info.mac = this.client.mac
+ this.info.uuid = this.client.uuid
this.groupIds = this.client.groups ? this.client.groups.map(x => x.id) : []
},
cancelEdit () {
@@ -174,6 +177,7 @@ export default {
}
},
saveInfo () {
+ this.info.configId = this.info.configId === undefined ? null : this.info.configId
this.$store.dispatch('groups/saveClient', {
id: this.client.id,
info: this.info,
diff --git a/webapp/src/components/GroupModuleGroupView.vue b/webapp/src/components/GroupModuleGroupView.vue
index 35e4b18..413e3b4 100644
--- a/webapp/src/components/GroupModuleGroupView.vue
+++ b/webapp/src/components/GroupModuleGroupView.vue
@@ -70,7 +70,7 @@
</div>
</v-flex>
<v-flex>
- <v-select v-if="editMode" class="info-input" prepend-icon="list" item-text="name" item-value="id" offset-y :label="$t('config')" color="primary" v-model="info.configId" :items="configList"></v-select>
+ <v-select v-if="editMode" class="info-input" prepend-icon="list" clearable item-text="name" item-value="id" offset-y :label="$t('config')" color="primary" v-model="info.configId" :items="configList"></v-select>
<div v-else class="info-input">
<div class="body-2 info-heading"><v-icon>list</v-icon><span>{{ $t('config') }}</span></div>
<div class="info-text">{{ configName || '-' }}</div>
@@ -181,6 +181,7 @@ export default {
}
},
saveInfo () {
+ this.info.configId = this.info.configId === undefined ? null : this.info.configId
this.$store.dispatch('groups/saveGroup', {
id: this.group.id,
info: this.info,
diff --git a/webapp/src/store/groups.js b/webapp/src/store/groups.js
index 03b351d..12eea4f 100644
--- a/webapp/src/store/groups.js
+++ b/webapp/src/store/groups.js
@@ -40,10 +40,12 @@ export default {
}
},
actions: {
- loadLists (context) {
+ loadConfigs (context) {
axios.get('/api/configurator/configs').then(result => {
context.commit('setConfigList', result.data.map(x => ({ id: x.id, name: x.name || x.id })))
})
+ },
+ loadLists (context) {
Promise.all([axios.get('/api/groups/getList'), axios.get('/api/clients/getList')]).then(res => {
context.commit('setGroupList', res[0].data.map(x => ({ id: x.id, name: x.name || x.id })))
context.commit('setClientList', res[1].data.map(x => ({ id: x.id, name: x.name || x.id })))