From d26faec0778cfafeeda0ccceb7ac29b9d3b50b05 Mon Sep 17 00:00:00 2001 From: hunterlong Date: Fri, 21 Aug 2020 18:44:10 -0700 Subject: [PATCH] UI changes --- database/grouping.go | 4 -- frontend/src/API.js | 62 +++++++++---------- frontend/src/assets/scss/layout.scss | 2 +- .../components/Dashboard/DashboardIndex.vue | 19 +++--- .../components/Dashboard/GroupedServices.vue | 53 ++++++++++++++++ .../components/Dashboard/ServiceEvents.vue | 11 ++-- .../src/components/Dashboard/ServiceInfo.vue | 20 +++--- .../components/Index/GroupServiceFailures.vue | 7 ++- frontend/src/mixin.js | 22 ++++++- 9 files changed, 130 insertions(+), 70 deletions(-) create mode 100644 frontend/src/components/Dashboard/GroupedServices.vue diff --git a/database/grouping.go b/database/grouping.go index d140b86c..ff953e24 100644 --- a/database/grouping.go +++ b/database/grouping.go @@ -233,10 +233,6 @@ func ParseQueries(r *http.Request, o isObject) (*GroupQuery, error) { if endField == 0 { query.End = utils.Now() } - if query.End.After(utils.Now()) { - query.End = utils.Now() - } - if query.Limit != 0 { q = q.Limit(query.Limit) } diff --git a/frontend/src/API.js b/frontend/src/API.js index 63bf66b7..8ec33868 100644 --- a/frontend/src/API.js +++ b/frontend/src/API.js @@ -52,17 +52,17 @@ class Api { return axios.post('api/services/' + data.id, data).then(response => (response.data)) } - async service_hits(id, start, end, group, fill=true) { + async service_hits(id, start, end, group, fill = true) { return axios.get('api/services/' + id + '/hits_data?start=' + start + '&end=' + end + '&group=' + group + '&fill=' + fill).then(response => (response.data)) } - async service_ping(id, start, end, group, fill=true) { - return axios.get('api/services/' + id + '/ping_data?start=' + start + '&end=' + end + '&group=' + group + '&fill=' + fill).then(response => (response.data)) - } + async service_ping(id, start, end, group, fill = true) { + return axios.get('api/services/' + id + '/ping_data?start=' + start + '&end=' + end + '&group=' + group + '&fill=' + fill).then(response => (response.data)) + } - async service_failures_data(id, start, end, group, fill=true) { - return axios.get('api/services/' + id + '/failure_data?start=' + start + '&end=' + end + '&group=' + group + '&fill=' + fill).then(response => (response.data)) - } + async service_failures_data(id, start, end, group, fill = true) { + return axios.get('api/services/' + id + '/failure_data?start=' + start + '&end=' + end + '&group=' + group + '&fill=' + fill).then(response => (response.data)) + } async service_uptime(id, start, end) { return axios.get('api/services/' + id + '/uptime_data?start=' + start + '&end=' + end).then(response => (response.data)) @@ -73,7 +73,7 @@ class Api { } async service_failures(id, start, end, limit = 999, offset = 0) { - return axios.get('api/services/' + id + '/failures?start=' + start + '&end=' + end + '&limit=' + limit+ '&offset=' + offset).then(response => (response.data)) + return axios.get('api/services/' + id + '/failures?start=' + start + '&end=' + end + '&limit=' + limit + '&offset=' + offset).then(response => (response.data)) } async service_failures_delete(service) { @@ -88,16 +88,16 @@ class Api { return axios.post('api/reorder/services', data).then(response => (response.data)) } - async checkins() { - return axios.get('api/checkins').then(response => (response.data)) - } + async checkins() { + return axios.get('api/checkins').then(response => (response.data)) + } async groups() { return axios.get('api/groups').then(response => (response.data)) } async groups_reorder(data) { - window.console.log('api/reorder/groups', data) + window.console.log('api/reorder/groups', data) return axios.post('api/reorder/groups', data).then(response => (response.data)) } @@ -130,40 +130,40 @@ class Api { } async incident_updates(incident) { - return axios.get('api/incidents/'+incident.id+'/updates').then(response => (response.data)) + return axios.get('api/incidents/' + incident.id + '/updates').then(response => (response.data)) } async incident_update_create(update) { - return axios.post('api/incidents/'+update.incident+'/updates', update).then(response => (response.data)) + return axios.post('api/incidents/' + update.incident + '/updates', update).then(response => (response.data)) } async incident_update_delete(update) { - return axios.delete('api/incidents/'+update.incident+'/updates/'+update.id).then(response => (response.data)) + return axios.delete('api/incidents/' + update.incident + '/updates/' + update.id).then(response => (response.data)) } - async incidents_service(id) { - return axios.get('api/services/'+id+'/incidents').then(response => (response.data)) - } + async incidents_service(id) { + return axios.get('api/services/' + id + '/incidents').then(response => (response.data)) + } - async incident_create(service_id, data) { - return axios.post('api/services/'+service_id+'/incidents', data).then(response => (response.data)) - } + async incident_create(service_id, data) { + return axios.post('api/services/' + service_id + '/incidents', data).then(response => (response.data)) + } - async incident_delete(incident) { - return axios.delete('api/incidents/'+incident.id).then(response => (response.data)) - } + async incident_delete(incident) { + return axios.delete('api/incidents/' + incident.id).then(response => (response.data)) + } async checkin(api) { - return axios.get('api/checkins/'+api).then(response => (response.data)) + return axios.get('api/checkins/' + api).then(response => (response.data)) } - async checkin_create(data) { - return axios.post('api/checkins', data).then(response => (response.data)) - } + async checkin_create(data) { + return axios.post('api/checkins', data).then(response => (response.data)) + } - async checkin_delete(checkin) { - return axios.delete('api/checkins/'+checkin.api_key).then(response => (response.data)) - } + async checkin_delete(checkin) { + return axios.delete('api/checkins/' + checkin.api_key).then(response => (response.data)) + } async messages() { return axios.get('api/messages').then(response => (response.data)) diff --git a/frontend/src/assets/scss/layout.scss b/frontend/src/assets/scss/layout.scss index 51c20253..2bd6e5ec 100644 --- a/frontend/src/assets/scss/layout.scss +++ b/frontend/src/assets/scss/layout.scss @@ -113,7 +113,7 @@ A:HOVER { .list-group-item:HOVER { background-color: lighten($group-list-background, 5%) !important; - box-shadow: #00000014 0px 4px 4px 2px; + box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px 1px; -webkit-transition-duration: 300ms; -moz-transition-duration: 300ms; -o-transition-duration: 300ms; diff --git a/frontend/src/components/Dashboard/DashboardIndex.vue b/frontend/src/components/Dashboard/DashboardIndex.vue index a41a7104..7f161ff2 100644 --- a/frontend/src/components/Dashboard/DashboardIndex.vue +++ b/frontend/src/components/Dashboard/DashboardIndex.vue @@ -1,6 +1,5 @@ diff --git a/frontend/src/components/Dashboard/ServiceEvents.vue b/frontend/src/components/Dashboard/ServiceEvents.vue index 73e4ed78..eb842ff1 100644 --- a/frontend/src/components/Dashboard/ServiceEvents.vue +++ b/frontend/src/components/Dashboard/ServiceEvents.vue @@ -1,26 +1,27 @@