From 978bc177683328bf81a5dd996f70aa4cfb4ce1d6 Mon Sep 17 00:00:00 2001 From: Hunter Long Date: Thu, 16 Jan 2020 01:29:49 -0800 Subject: [PATCH] updates --- Makefile | 3 + frontend/package.json | 1 + frontend/src/App.vue | 7 +- frontend/src/assets/banner.png | Bin 0 -> 98711 bytes frontend/src/components/API.js | 45 + .../components/Dashboard/DashboardIndex.vue | 44 + .../Dashboard/DashboardMessages.vue | 181 +++ .../Dashboard/DashboardServices.vue | 146 ++ .../components/Dashboard/DashboardUsers.vue | 114 ++ .../src/components/Dashboard/ServiceInfo.vue | 36 + frontend/src/components/Dashboard/TopNav.vue | 61 + frontend/src/components/Footer.vue | 8 +- .../src/components/Service/ServiceBlock.vue | 5 +- frontend/src/main.js | 52 +- frontend/src/pages/Dashboard.vue | 80 +- frontend/src/pages/Index.vue | 20 +- frontend/src/pages/Login.vue | 61 + frontend/src/pages/Service.vue | 451 +++++- frontend/src/pages/Services.vue | 17 +- frontend/src/pages/Settings.vue | 1413 ++++++++++++++++- frontend/yarn.lock | 2 +- go.mod | 1 + go.sum | 2 + handlers/dashboard.go | 77 +- handlers/handlers.go | 65 +- handlers/routes.go | 10 +- 26 files changed, 2745 insertions(+), 157 deletions(-) create mode 100644 frontend/src/assets/banner.png create mode 100644 frontend/src/components/Dashboard/DashboardIndex.vue create mode 100644 frontend/src/components/Dashboard/DashboardMessages.vue create mode 100644 frontend/src/components/Dashboard/DashboardServices.vue create mode 100644 frontend/src/components/Dashboard/DashboardUsers.vue create mode 100644 frontend/src/components/Dashboard/ServiceInfo.vue create mode 100644 frontend/src/components/Dashboard/TopNav.vue create mode 100644 frontend/src/pages/Login.vue diff --git a/Makefile b/Makefile index 8dd8ebca..638f7ab6 100644 --- a/Makefile +++ b/Makefile @@ -20,6 +20,9 @@ release: dev-deps frontend: cd frontend && yarn serve +frontend-build: + cd frontend && rm -rf dist && yarn build + # build and push the images to docker hub docker: docker-build-all docker-publish-all diff --git a/frontend/package.json b/frontend/package.json index ef5410ce..f30bffe6 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -11,6 +11,7 @@ "apexcharts": "^3.15.0", "axios": "^0.19.1", "core-js": "^3.4.4", + "querystring": "^0.2.0", "vue": "^2.6.10", "vue-apexcharts": "^1.5.2", "vue-router": "^3.1.3" diff --git a/frontend/src/App.vue b/frontend/src/App.vue index 645d852f..527a5de1 100644 --- a/frontend/src/App.vue +++ b/frontend/src/App.vue @@ -1,13 +1,14 @@ + + + diff --git a/frontend/src/components/Dashboard/DashboardMessages.vue b/frontend/src/components/Dashboard/DashboardMessages.vue new file mode 100644 index 00000000..2a7467c1 --- /dev/null +++ b/frontend/src/components/Dashboard/DashboardMessages.vue @@ -0,0 +1,181 @@ + + + + + + + + diff --git a/frontend/src/components/Dashboard/DashboardServices.vue b/frontend/src/components/Dashboard/DashboardServices.vue new file mode 100644 index 00000000..47eb7333 --- /dev/null +++ b/frontend/src/components/Dashboard/DashboardServices.vue @@ -0,0 +1,146 @@ + + + + + + + + diff --git a/frontend/src/components/Dashboard/DashboardUsers.vue b/frontend/src/components/Dashboard/DashboardUsers.vue new file mode 100644 index 00000000..f50d41cb --- /dev/null +++ b/frontend/src/components/Dashboard/DashboardUsers.vue @@ -0,0 +1,114 @@ + + + + + + + + diff --git a/frontend/src/components/Dashboard/ServiceInfo.vue b/frontend/src/components/Dashboard/ServiceInfo.vue new file mode 100644 index 00000000..ec029f98 --- /dev/null +++ b/frontend/src/components/Dashboard/ServiceInfo.vue @@ -0,0 +1,36 @@ + + + + + + diff --git a/frontend/src/components/Dashboard/TopNav.vue b/frontend/src/components/Dashboard/TopNav.vue new file mode 100644 index 00000000..11d71f98 --- /dev/null +++ b/frontend/src/components/Dashboard/TopNav.vue @@ -0,0 +1,61 @@ + + + + + + diff --git a/frontend/src/components/Footer.vue b/frontend/src/components/Footer.vue index b43e4ea2..fed531c1 100644 --- a/frontend/src/components/Footer.vue +++ b/frontend/src/components/Footer.vue @@ -1,14 +1,18 @@ diff --git a/frontend/src/components/Service/ServiceBlock.vue b/frontend/src/components/Service/ServiceBlock.vue index 8dbe7ed3..875ea6e5 100644 --- a/frontend/src/components/Service/ServiceBlock.vue +++ b/frontend/src/components/Service/ServiceBlock.vue @@ -3,7 +3,8 @@
-

{{service.name}} +

+ {{service.name}} {{service.online ? "ONLINE" : "OFFLINE"}}

@@ -34,7 +35,7 @@ Online, last Failure was Wednesday 1:16:49PM, Dec 18 2019
- View Service + View Service
diff --git a/frontend/src/main.js b/frontend/src/main.js index 4c6ca7b6..bd6911e5 100644 --- a/frontend/src/main.js +++ b/frontend/src/main.js @@ -3,29 +3,43 @@ import App from './App.vue' import VueRouter from 'vue-router' import Index from "./pages/Index"; import Dashboard from "./pages/Dashboard"; +import Login from "./pages/Login"; import Settings from "./pages/Settings"; -import Service from "./pages/Service"; import Services from "./pages/Services"; +import Service from "./pages/Service"; require("./assets/css/bootstrap.min.css") require("./assets/css/base.css") +// require("./assets/js/bootstrap.min") +// require("./assets/js/flatpickr") +// require("./assets/js/inputTags.min") +// require("./assets/js/rangePlugin") +// require("./assets/js/sortable.min") + const routes = [ - { - path: '/', - name: 'Index', - component: Index - }, - { - path: '/dashboard', - name: 'Dashboard', - component: Dashboard - }, - { - path: '/settings', - name: 'Settings', - component: Settings - }, + { + path: '/', + name: 'Index', + component: Index + }, + { + path: '/dashboard', + name: 'Dashboard', + component: Dashboard, + alias: ['/dashboard/settings', '/dashboard/services', '/dashboard/messages', '/dashboard/groups', '/dashboard/users', '/dashboard/logs', '/dashboard/help'] + }, + { + path: '/login', + name: 'Login', + component: Login + }, + { path: '/logout', redirect: '/' }, + { + path: '/settings', + name: 'Settings', + component: Settings + }, { path: '/services', name: 'Services', @@ -34,12 +48,12 @@ const routes = [ { path: '/service/:id', name: 'Service', - component: Service + component: Service, + props: true } ]; -const router = new VueRouter -({ +const router = new VueRouter({ mode: 'history', routes }) diff --git a/frontend/src/pages/Dashboard.vue b/frontend/src/pages/Dashboard.vue index f2b1f338..9463cb04 100644 --- a/frontend/src/pages/Dashboard.vue +++ b/frontend/src/pages/Dashboard.vue @@ -1,53 +1,85 @@ + + + diff --git a/frontend/src/pages/Service.vue b/frontend/src/pages/Service.vue index b2b29ba1..42385fee 100644 --- a/frontend/src/pages/Service.vue +++ b/frontend/src/pages/Service.vue @@ -1,16 +1,443 @@ diff --git a/frontend/src/pages/Settings.vue b/frontend/src/pages/Settings.vue index 329f27b4..9abe2af3 100644 --- a/frontend/src/pages/Settings.vue +++ b/frontend/src/pages/Settings.vue @@ -1,23 +1,1365 @@