From 0c3c59df4e3093b98e814cb68fd051d7313d6156 Mon Sep 17 00:00:00 2001 From: Nelson Chan Date: Tue, 3 Aug 2021 17:42:57 +0800 Subject: [PATCH 01/21] Fix: [DB] Add default for created_date in monitor --- db/patch5.sql | 66 ++++++++++++++++++++++++++++++++++++++++++++++ server/database.js | 2 +- 2 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 db/patch5.sql diff --git a/db/patch5.sql b/db/patch5.sql new file mode 100644 index 000000000..f67af8b63 --- /dev/null +++ b/db/patch5.sql @@ -0,0 +1,66 @@ +-- You should not modify if this have pushed to Github, unless it does serious wrong with the db. +PRAGMA foreign_keys = off; + +BEGIN TRANSACTION; + +create table monitor_dg_tmp ( + id INTEGER not null primary key autoincrement, + name VARCHAR(150), + active BOOLEAN default 1 not null, + user_id INTEGER references user on update cascade on delete + set + null, + interval INTEGER default 20 not null, + url TEXT, + type VARCHAR(20), + weight INTEGER default 2000, + hostname VARCHAR(255), + port INTEGER, + created_date DATETIME default (DATETIME('now')) not null, + keyword VARCHAR(255), + maxretries INTEGER NOT NULL DEFAULT 0, + ignore_tls BOOLEAN default 0 not null, + upside_down BOOLEAN default 0 not null +); + +insert into + monitor_dg_tmp( + id, + name, + active, + user_id, + interval, + url, + type, + weight, + hostname, + port, + keyword, + maxretries + ) +select + id, + name, + active, + user_id, + interval, + url, + type, + weight, + hostname, + port, + keyword, + maxretries +from + monitor; + +drop table monitor; + +alter table + monitor_dg_tmp rename to monitor; + +create index user_id on monitor (user_id); + +COMMIT; + +PRAGMA foreign_keys = on; \ No newline at end of file diff --git a/server/database.js b/server/database.js index 571313bc4..4accbc32e 100644 --- a/server/database.js +++ b/server/database.js @@ -9,7 +9,7 @@ class Database { static templatePath = "./db/kuma.db" static path = "./data/kuma.db"; - static latestVersion = 4; + static latestVersion = 5; static noReject = true; static async patch() { From 377d475e05e6fc5374634d6e18ff957adf59b296 Mon Sep 17 00:00:00 2001 From: Nelson Chan Date: Tue, 3 Aug 2021 17:43:39 +0800 Subject: [PATCH 02/21] Fix: Add now columns --- db/patch5.sql | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/db/patch5.sql b/db/patch5.sql index f67af8b63..16e1c282e 100644 --- a/db/patch5.sql +++ b/db/patch5.sql @@ -36,7 +36,9 @@ insert into hostname, port, keyword, - maxretries + maxretries, + ignore_tls, + upside_down ) select id, @@ -50,7 +52,9 @@ select hostname, port, keyword, - maxretries + maxretries, + ignore_tls, + upside_down from monitor; From 221aad55de4f7350221032f7c21854eca35b1981 Mon Sep 17 00:00:00 2001 From: Nelson Chan Date: Tue, 3 Aug 2021 17:46:09 +0800 Subject: [PATCH 03/21] Chore: Add new line at EOF --- db/patch5.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/db/patch5.sql b/db/patch5.sql index 16e1c282e..5730b2dde 100644 --- a/db/patch5.sql +++ b/db/patch5.sql @@ -67,4 +67,4 @@ create index user_id on monitor (user_id); COMMIT; -PRAGMA foreign_keys = on; \ No newline at end of file +PRAGMA foreign_keys = on; From e34a8e2e4aa2e2b0879e53a7e467d761d470d5d1 Mon Sep 17 00:00:00 2001 From: Philipp Dormann <17651032+philippdormann@users.noreply.github.com> Date: Tue, 3 Aug 2021 17:14:27 +0200 Subject: [PATCH 04/21] FEAT: PUSHY Notifier (#154) FEAT: PUSHY Notifier (#154) --- server/notification.js | 18 ++++++++++++++++++ src/components/NotificationDialog.vue | 18 ++++++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/server/notification.js b/server/notification.js index 0e963a128..f53b681a1 100644 --- a/server/notification.js +++ b/server/notification.js @@ -137,6 +137,24 @@ class Notification { throwGeneralAxiosError(error) } + } else if (notification.type === "pushy") { + try { + await axios.post(`https://api.pushy.me/push?api_key=${notification.pushyAPIKey}`, { + "to": notification.pushyToken, + "data": { + "message": "Uptime-Kuma" + }, + "notification": { + "body": msg, + "badge": 1, + "sound": "ping.aiff" + } + }) + return true; + } catch (error) { + console.log(error) + return false; + } } else if (notification.type === "slack") { try { if (heartbeatJSON == null) { diff --git a/src/components/NotificationDialog.vue b/src/components/NotificationDialog.vue index 4af1ffa57..4eea85d66 100644 --- a/src/components/NotificationDialog.vue +++ b/src/components/NotificationDialog.vue @@ -21,6 +21,7 @@ + @@ -229,6 +230,23 @@ + +