summaryrefslogtreecommitdiffstats
path: root/webapp/src/store/backends.js
diff options
context:
space:
mode:
authorJannik Schönartz2018-07-20 06:01:04 +0200
committerJannik Schönartz2018-07-20 06:01:04 +0200
commit42e3165eb42a182cbefe03322fbb46f8da359ac3 (patch)
tree3925abf46ebc961d6daf70d299ef41f0ca7e16d6 /webapp/src/store/backends.js
parent[webapp/settings] added switch to enable colored tab panels (diff)
downloadbas-42e3165eb42a182cbefe03322fbb46f8da359ac3.tar.gz
bas-42e3165eb42a182cbefe03322fbb46f8da359ac3.tar.xz
bas-42e3165eb42a182cbefe03322fbb46f8da359ac3.zip
[webapp/external-backends] Switched from emits to vuex storage system. Added Tab-Panel for more consistency.
Diffstat (limited to 'webapp/src/store/backends.js')
-rw-r--r--webapp/src/store/backends.js54
1 files changed, 54 insertions, 0 deletions
diff --git a/webapp/src/store/backends.js b/webapp/src/store/backends.js
new file mode 100644
index 0000000..bc99669
--- /dev/null
+++ b/webapp/src/store/backends.js
@@ -0,0 +1,54 @@
+import axios from 'axios'
+
+export default {
+ namespaced: true,
+ state: {
+ backends: [],
+ dialog: false,
+ deleteDialog: false,
+ selected: [],
+ backendId: ''
+ },
+ mutations: {
+ setDialog (state, value) {
+ state.dialog = value.show
+ state.deleteDialog = value.del
+ },
+ setSelected (state, value) {
+ state.selected = value
+ },
+ setBackends (state, value) {
+ state.backends = value
+ },
+ editBackend (state, value) {
+ state.backendId = value
+ state.dialog = true
+ state.deleteDialog = false
+ }
+ },
+ actions: {
+ deleteSelectedBackends (context) {
+ // Filter selected array to get a list of ids.
+ const filteredArray = context.state.selected.map(x => x.id)
+ axios.post('/api/backends/deleteBackends', {
+ id: filteredArray
+ }).then(response => {
+ context.dispatch('loadData')
+ context.commit('setSelected', [])
+ })
+ },
+ loadData (context) {
+ axios.get('/api/backends/getBackendList').then(response => {
+ // Needed for initializing the diffrent dynamic loading buttons.
+ var tmpItems = response.data
+ tmpItems.forEach(function (item) {
+ // Variable for the loading animation.
+ item.loading = false
+ // Variable for the test connection color
+ item.connection = 'primary'
+ })
+ context.commit('setBackends', tmpItems)
+ })
+ }
+ }
+}