From b06c635f1e48855186c5c473a185a14767882f7c Mon Sep 17 00:00:00 2001 From: Udo Walter Date: Wed, 1 May 2019 01:58:36 +0000 Subject: [webapp/groups] compact group view is now optional --- webapp/src/components/GroupModuleGroupInfo.vue | 336 +++++++++++++++++++ webapp/src/components/GroupModuleGroupView.vue | 448 +++++++------------------ webapp/src/store/groups.js | 7 + 3 files changed, 468 insertions(+), 323 deletions(-) create mode 100644 webapp/src/components/GroupModuleGroupInfo.vue (limited to 'webapp') diff --git a/webapp/src/components/GroupModuleGroupInfo.vue b/webapp/src/components/GroupModuleGroupInfo.vue new file mode 100644 index 0000000..8e06a3e --- /dev/null +++ b/webapp/src/components/GroupModuleGroupInfo.vue @@ -0,0 +1,336 @@ + +{ + "en": { + "info": "Info", + "groups": "Groups", + "subgroups": "Subgroups", + "clients": "Clients", + "name": "Name", + "description": "Description", + "ipranges": "IP Ranges", + "config": "iPXE Config", + "parents": "Parents", + "startIp": "Start IP", + "endIp": "End IP", + "more": "more" + }, + "de": { + "info": "Info", + "groups": "Groups", + "subgroups": "Untergruppen", + "clients": "Clients", + "name": "Name", + "description": "Beschreibung", + "ipranges": "IP Bereiche", + "config": "iPXE Konfiguration", + "parents": "Übergruppen", + "startIp": "Start IP", + "endIp": "End IP", + "more": "mehr" + } +} + + + + + + + + diff --git a/webapp/src/components/GroupModuleGroupView.vue b/webapp/src/components/GroupModuleGroupView.vue index 04b0be0..fe1017e 100644 --- a/webapp/src/components/GroupModuleGroupView.vue +++ b/webapp/src/components/GroupModuleGroupView.vue @@ -5,196 +5,129 @@ "showall": "All", "groups": "Groups", "subgroups": "Subgroups", - "clients": "Clients", - "name": "Name", - "description": "Description", - "ipranges": "IP Ranges", - "config": "iPXE Config", - "parents": "Parents", - "startIp": "Start IP", - "endIp": "End IP", - "selectParents": "Select parents", - "more": "more" + "clients": "Clients" }, "de": { "info": "Info", "showall": "Alle", "groups": "Groups", "subgroups": "Untergruppen", - "clients": "Clients", - "name": "Name", - "description": "Beschreibung", - "ipranges": "IP Bereiche", - "config": "iPXE Konfiguration", - "parents": "Übergruppen", - "startIp": "Start IP", - "endIp": "End IP", - "selectParents": "Übergruppen auswählen", - "more": "mehr" + "clients": "Clients" } } @@ -325,87 +194,20 @@ export default { align-items: center; } -.info-buttons { - margin: 0; -} - -.iprange { - display: flex; - align-items: center; - min-height: 34px; -} - -.iprange-add-wrapper { - height: 32px; - display: flex; - align-items: center; -} - -.iprange >>> .v-text-field.v-text-field--solo .v-input__control { - min-height: 32px; -} - -.iprange >>> .v-label, .iprange >>> input { - font-size: 14px; -} - -.chip-container { - display: flex; - flex-wrap: wrap; - width: 100%; -} - -.chip-container >>> .v-chip__content { - width: 100%; - cursor: pointer; -} - -.chip-text { - overflow: hidden; - text-overflow: ellipsis; -} - -.and-more { - font-size: 13px; - display: flex; - align-items: center; - margin: 4px 17px; -} - -.ip-seperator { - padding: 0 10px; -} - -.iprange-button { - margin: 0 8px 0 0; -} - -.info-box { - padding: 20px; -} - -.info-input { - margin: 0; - padding: 0 0 1px 0; - overflow: hidden; -} - -.info-heading { +.header-div { + user-select: none; + padding-left: 16px; + height: 48px; + font-weight: bold; display: flex; + flex-direction: row; align-items: center; - margin-bottom: 10px; -} - -.info-heading > span { - margin-left: 10px; } -.info-text { - overflow-x: auto; - margin-left: 34px; - font-family: 'Roboto Mono'; - min-height: 34px; +.header-div > .header-div-text { + flex: 1; display: flex; + flex-direction: row; align-items: center; } diff --git a/webapp/src/store/groups.js b/webapp/src/store/groups.js index 24f58d3..0f5e756 100644 --- a/webapp/src/store/groups.js +++ b/webapp/src/store/groups.js @@ -4,6 +4,9 @@ import axios from 'axios' export default { namespaced: true, state: { + settings: { + collapsedView: localStorage.getItem('settings.groups.collapsedView') === 'true' + }, groupList: [], clientList: [], configList: [], @@ -16,6 +19,10 @@ export default { adjustTabSlider: false }, mutations: { + setCollapsedView (state, value) { + state.settings.collapsedView = value + localStorage.setItem('settings.groups.collapsedView', value) + }, setGroupList: (state, list) => { state.groupList = list }, setClientList: (state, list) => { state.clientList = list }, setConfigList: (state, list) => { state.configList = list }, -- cgit v1.2.3-55-g7522