From d149541dba6f7f548e1cddd9ce3eb5ed00881e62 Mon Sep 17 00:00:00 2001 From: Tobias Diekershoff Date: Sun, 15 Apr 2018 11:39:05 +0200 Subject: [PATCH] notify admin when user deletes account --- include/enotify.php | 2 +- mod/removeme.php | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/include/enotify.php b/include/enotify.php index 68208ec5ac..39c74fdc64 100644 --- a/include/enotify.php +++ b/include/enotify.php @@ -357,7 +357,7 @@ function notification($params) if ($params['type'] == NOTIFY_SYSTEM) { switch($params['event']) { case "SYSTEM_REGISTER_REQUEST": - $subject = L10n::t('[Friendica System:Notify] registration request'); + $subject = L10n::t('[Friendica System Notify]') . ' ' . L10n::t('registration request'); $preamble = L10n::t('You\'ve received a registration request from \'%1$s\' at %2$s', $params['source_name'], $sitename); $epreamble = L10n::t('You\'ve received a [url=%1$s]registration request[/url] from %2$s.', diff --git a/mod/removeme.php b/mod/removeme.php index 0363bf9f32..252357c80d 100644 --- a/mod/removeme.php +++ b/mod/removeme.php @@ -7,6 +7,8 @@ use Friendica\Core\L10n; use Friendica\Core\System; use Friendica\Model\User; +require_once 'include/enotify.php'; + function removeme_post(App $a) { if (!local_user()) { @@ -29,6 +31,25 @@ function removeme_post(App $a) return; } + // send notification to admins so that they can clean um the backups + // send email to admins + $admin_mail_list = "'" . implode("','", array_map(dbesc, explode(",", str_replace(" ", "", $a->config['admin_email'])))) . "'"; + $adminlist = q("SELECT uid, language, email FROM user WHERE email IN (%s)", + $admin_mail_list + ); + foreach ($adminlist as $admin) { + notification([ + 'type' => SYSTEM_EMAIL, + 'subject' => L10n::t('[Friendica System Notify]') . ' ' . L10n::t('User deleted their account'), + 'preamble' => L10n::t('On your Friendica node an user deleted their account. Please ensure that their data is removed from the backups.'), + 'body' => L10n::t('The user id is %d', local_user()), + 'to_email' => $admin['email'], + 'uid' => $admin['uid'], + 'language' => $admin['language'] ? $admin['language'] : 'en', + 'show_in_notification_page' => false + ]); + } + if (User::authenticate($a->user, trim($_POST['qxz_password']))) { User::remove($a->user['uid']); // NOTREACHED