From 7db81cde444f6bc95e79527af0997de1788d48c7 Mon Sep 17 00:00:00 2001 From: tobi <31960611+tsmethurst@users.noreply.github.com> Date: Sun, 19 Mar 2023 13:11:46 +0100 Subject: [feature] Email notifications for new / closed moderation reports (#1628) * start fiddling about with email sending to allow multiple recipients * do some fiddling * notifs working * notify on closed report * finishing up * envparsing * use strings.ContainsAny --- web/template/email_confirm.tmpl | 28 +++++++++++++++++++++ web/template/email_confirm_html.tmpl | 47 ----------------------------------- web/template/email_confirm_text.tmpl | 27 -------------------- web/template/email_new_report.tmpl | 26 +++++++++++++++++++ web/template/email_report_closed.tmpl | 27 ++++++++++++++++++++ web/template/email_reset.tmpl | 28 +++++++++++++++++++++ web/template/email_reset_html.tmpl | 47 ----------------------------------- web/template/email_reset_text.tmpl | 27 -------------------- web/template/email_test.tmpl | 24 ++++++++++++++++++ web/template/email_test_text.tmpl | 24 ------------------ 10 files changed, 133 insertions(+), 172 deletions(-) create mode 100644 web/template/email_confirm.tmpl delete mode 100644 web/template/email_confirm_html.tmpl delete mode 100644 web/template/email_confirm_text.tmpl create mode 100644 web/template/email_new_report.tmpl create mode 100644 web/template/email_report_closed.tmpl create mode 100644 web/template/email_reset.tmpl delete mode 100644 web/template/email_reset_html.tmpl delete mode 100644 web/template/email_reset_text.tmpl create mode 100644 web/template/email_test.tmpl delete mode 100644 web/template/email_test_text.tmpl (limited to 'web/template') diff --git a/web/template/email_confirm.tmpl b/web/template/email_confirm.tmpl new file mode 100644 index 000000000..17926fdde --- /dev/null +++ b/web/template/email_confirm.tmpl @@ -0,0 +1,28 @@ +{{- /* +// GoToSocial +// Copyright (C) GoToSocial Authors admin@gotosocial.org +// SPDX-License-Identifier: AGPL-3.0-or-later +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . +*/ -}} + +Hello {{.Username}}! + +You are receiving this mail because you've requested an account on {{.InstanceURL}}. + +We just need to confirm that this is your email address. To confirm your email, paste the following in your browser's address bar: + +{{.ConfirmLink}} + +If you believe you've been sent this email in error, feel free to ignore it, or contact the administrator of {{.InstanceURL}} diff --git a/web/template/email_confirm_html.tmpl b/web/template/email_confirm_html.tmpl deleted file mode 100644 index 3fb9b234b..000000000 --- a/web/template/email_confirm_html.tmpl +++ /dev/null @@ -1,47 +0,0 @@ -{{- /* - GoToSocial - Copyright (C) 2021-2023 GoToSocial Authors admin@gotosocial.org - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . -*/ -}} - - - - - -
-

- Hello {{.Username}}! -

-
-
-

- You are receiving this mail because you've requested an account on {{.InstanceName}}. -

-

- We just need to confirm that this is your email address. To confirm your email, click here or paste the following in your browser's address bar: -

-

- - {{.ConfirmLink}} - -

-
-
-

- If you believe you've been sent this email in error, feel free to ignore it, or contact the administrator of {{.InstanceName}}. -

-
- - \ No newline at end of file diff --git a/web/template/email_confirm_text.tmpl b/web/template/email_confirm_text.tmpl deleted file mode 100644 index 738f6fd37..000000000 --- a/web/template/email_confirm_text.tmpl +++ /dev/null @@ -1,27 +0,0 @@ -{{- /* - GoToSocial - Copyright (C) 2021-2023 GoToSocial Authors admin@gotosocial.org - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . -*/ -}} - -Hello {{.Username}}! - -You are receiving this mail because you've requested an account on {{.InstanceURL}}. - -We just need to confirm that this is your email address. To confirm your email, paste the following in your browser's address bar: - -{{.ConfirmLink}} - -If you believe you've been sent this email in error, feel free to ignore it, or contact the administrator of {{.InstanceURL}} diff --git a/web/template/email_new_report.tmpl b/web/template/email_new_report.tmpl new file mode 100644 index 000000000..af98579c4 --- /dev/null +++ b/web/template/email_new_report.tmpl @@ -0,0 +1,26 @@ +{{- /* +// GoToSocial +// Copyright (C) GoToSocial Authors admin@gotosocial.org +// SPDX-License-Identifier: AGPL-3.0-or-later +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . +*/ -}} + +Hello moderator of {{ .InstanceName }} ({{ .InstanceURL }})! + +{{ if .ReportDomain }}Someone from {{ .ReportDomain }} has reported a user from your instance. +{{- else if .ReportTargetDomain }}Someone from your instance has reported a user from {{ .ReportTargetDomain }}. +{{- else }}Someone from your instance has reported another user from your instance.{{ end }} + +To view the report, paste the following link into your browser: {{ .ReportURL }} diff --git a/web/template/email_report_closed.tmpl b/web/template/email_report_closed.tmpl new file mode 100644 index 000000000..878e5b63f --- /dev/null +++ b/web/template/email_report_closed.tmpl @@ -0,0 +1,27 @@ +{{- /* +// GoToSocial +// Copyright (C) GoToSocial Authors admin@gotosocial.org +// SPDX-License-Identifier: AGPL-3.0-or-later +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . +*/ -}} + +Hello {{.Username}}! + +You recently reported the account @{{ .ReportTargetUsername }}{{ if .ReportTargetDomain }}@{{ .ReportTargetDomain }}{{ end }} to the moderator(s) of {{ .InstanceName }} ({{ .InstanceURL }}). + +The report you submitted has now been closed. + +{{ if .ActionTakenComment }}The moderator who closed the report left the following comment: {{ .ActionTakenComment }} +{{- else }}The moderator who closed the report did not leave a comment.{{ end }} diff --git a/web/template/email_reset.tmpl b/web/template/email_reset.tmpl new file mode 100644 index 000000000..789470efc --- /dev/null +++ b/web/template/email_reset.tmpl @@ -0,0 +1,28 @@ +{{- /* +// GoToSocial +// Copyright (C) GoToSocial Authors admin@gotosocial.org +// SPDX-License-Identifier: AGPL-3.0-or-later +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . +*/ -}} + +Hello {{.Username}}! + +You are receiving this mail because a password reset has been requested for your account on {{.InstanceURL}}. + +To reset your password, paste the following in your browser's address bar: + +{{.ResetLink}} + +If you believe you've been sent this email in error, feel free to ignore it, or contact the administrator of {{.InstanceURL}}. diff --git a/web/template/email_reset_html.tmpl b/web/template/email_reset_html.tmpl deleted file mode 100644 index 4da26de15..000000000 --- a/web/template/email_reset_html.tmpl +++ /dev/null @@ -1,47 +0,0 @@ -{{- /* - GoToSocial - Copyright (C) 2021-2023 GoToSocial Authors admin@gotosocial.org - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . -*/ -}} - - - - - -
-

- Hello {{.Username}}! -

-
-
-

- You are receiving this mail because a password reset has been requested for your account on {{.InstanceName}}. -

-

- To reset your password, click here or paste the following in your browser's address bar: -

-

- - {{.ResetLink}} - -

-
-
-

- If you believe you've been sent this email in error, feel free to ignore it, or contact the administrator of {{.InstanceName}}. -

-
- - \ No newline at end of file diff --git a/web/template/email_reset_text.tmpl b/web/template/email_reset_text.tmpl deleted file mode 100644 index 378bf3f7e..000000000 --- a/web/template/email_reset_text.tmpl +++ /dev/null @@ -1,27 +0,0 @@ -{{- /* - GoToSocial - Copyright (C) 2021-2023 GoToSocial Authors admin@gotosocial.org - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . -*/ -}} - -Hello {{.Username}}! - -You are receiving this mail because a password reset has been requested for your account on {{.InstanceURL}}. - -To reset your password, paste the following in your browser's address bar: - -{{.ResetLink}} - -If you believe you've been sent this email in error, feel free to ignore it, or contact the administrator of {{.InstanceURL}}. diff --git a/web/template/email_test.tmpl b/web/template/email_test.tmpl new file mode 100644 index 000000000..d7af4d161 --- /dev/null +++ b/web/template/email_test.tmpl @@ -0,0 +1,24 @@ +{{- /* +// GoToSocial +// Copyright (C) GoToSocial Authors admin@gotosocial.org +// SPDX-License-Identifier: AGPL-3.0-or-later +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . +*/ -}} + +This is a test email from {{.InstanceName}} ({{.InstanceURL}}). + +If you're seeing this email, that means the SMTP configuration is correct! + +This email was sent by the admin user @{{.SendingUsername}}. diff --git a/web/template/email_test_text.tmpl b/web/template/email_test_text.tmpl deleted file mode 100644 index d7af4d161..000000000 --- a/web/template/email_test_text.tmpl +++ /dev/null @@ -1,24 +0,0 @@ -{{- /* -// GoToSocial -// Copyright (C) GoToSocial Authors admin@gotosocial.org -// SPDX-License-Identifier: AGPL-3.0-or-later -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . -*/ -}} - -This is a test email from {{.InstanceName}} ({{.InstanceURL}}). - -If you're seeing this email, that means the SMTP configuration is correct! - -This email was sent by the admin user @{{.SendingUsername}}. -- cgit v1.3