diff --git a/ui/src/components/Login.vue b/ui/src/components/Login.vue new file mode 100644 index 0000000..fe8ddde --- /dev/null +++ b/ui/src/components/Login.vue @@ -0,0 +1,73 @@ + + + + + diff --git a/ui/src/components/Settings.vue b/ui/src/components/Settings.vue deleted file mode 100644 index 4f6ccb9..0000000 --- a/ui/src/components/Settings.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - \ No newline at end of file diff --git a/ui/src/components/Dashboard.vue b/ui/src/components/dashboard/Dashboard.vue similarity index 100% rename from ui/src/components/Dashboard.vue rename to ui/src/components/dashboard/Dashboard.vue diff --git a/ui/src/components/TimeSeries.vue b/ui/src/components/dashboard/TimeSeries.vue similarity index 87% rename from ui/src/components/TimeSeries.vue rename to ui/src/components/dashboard/TimeSeries.vue index 43d58c3..7882fb4 100644 --- a/ui/src/components/TimeSeries.vue +++ b/ui/src/components/dashboard/TimeSeries.vue @@ -51,6 +51,14 @@ export default { }, options: { animation: false, + legend: { + display: false + }, + scales: { + xAxes: [{ + display: false + }] + }, }, }); diff --git a/ui/src/components/Value.vue b/ui/src/components/dashboard/Value.vue similarity index 100% rename from ui/src/components/Value.vue rename to ui/src/components/dashboard/Value.vue diff --git a/ui/src/components/settings/Settings.vue b/ui/src/components/settings/Settings.vue new file mode 100644 index 0000000..9b9fd09 --- /dev/null +++ b/ui/src/components/settings/Settings.vue @@ -0,0 +1,22 @@ + + + \ No newline at end of file diff --git a/ui/src/components/settings/Wifi.vue b/ui/src/components/settings/Wifi.vue new file mode 100644 index 0000000..b78635a --- /dev/null +++ b/ui/src/components/settings/Wifi.vue @@ -0,0 +1,83 @@ + + + + + diff --git a/ui/src/main.js b/ui/src/main.js index 93b8f4c..7bc6553 100644 --- a/ui/src/main.js +++ b/ui/src/main.js @@ -23,6 +23,6 @@ new Vue({ router, store, template: '', - components: { App } + components: { App }, }) diff --git a/ui/src/router.js b/ui/src/router.js index f14b4f4..38b330d 100644 --- a/ui/src/router.js +++ b/ui/src/router.js @@ -1,8 +1,8 @@ import Vue from 'vue' import Router from 'vue-router' -import Dashboard from './components/Dashboard.vue' +import Dashboard from './components/dashboard/Dashboard.vue' import About from './components/About.vue' -import Settings from './components/Settings.vue' +import Settings from './components/settings/Settings.vue' Vue.use(Router) diff --git a/ui/src/store.js b/ui/src/store.js index 5aff7f5..de68c31 100644 --- a/ui/src/store.js +++ b/ui/src/store.js @@ -9,6 +9,11 @@ Vue.use(Vuex); const state = { series: [], + token: null, + wifi: { + available: [], + current: '', + }, } const getters = { @@ -26,25 +31,55 @@ const getters = { return last[key]; } return 'NA'; - } + }, + isLogged: (state) => () => { + return (state.token !== null); + }, + getToken: (state) => () => { + return state.token; + }, + getWifiList: (state) => () => { + let wifis = state.wifi.available; + let filtered = wifis.filter(function(item, pos) { + return wifis.indexOf(item) == pos; + }) + return filtered; + }, + getCurrentWifi: (state) => () => { + return state.wifi.current; + }, } const actions = { requestSeries({ commit }) { - Vue.http.get('data?format=json').then(response => { + Vue.http.get('series?format=json').then(response => { commit('setSeries', response.body); }); }, addRandomValues({ commit }) { commit('setSeries', [ { 'UTCUnixTime': 123123, 'TemperatureC': 26.0 } ]); - } + }, + requestWifi({ commit }) { + let params = { + token: state.token, + }; + Vue.http.get('wifi', { params }).then(response => { + commit('setWifi', response.body); + }); + }, } const mutations = { setSeries(state, data) { state.series.push(...data); state.series = state.series.slice(-SERIES_MAX_SIZE); - } + }, + setAuth(state, token) { + state.token = token; + }, + setWifi(state, data) { + state.wifi = data; + }, } export default new Vuex.Store({