aboutsummaryrefslogtreecommitdiffstats
path: root/mod
diff options
context:
space:
mode:
Diffstat (limited to 'mod')
-rw-r--r--mod/removeme.php50
1 files changed, 50 insertions, 0 deletions
diff --git a/mod/removeme.php b/mod/removeme.php
new file mode 100644
index 000000000..62b9a6d13
--- /dev/null
+++ b/mod/removeme.php
@@ -0,0 +1,50 @@
+<?php
+
+function removeme_post(&$a) {
+
+ if(! local_user())
+ return;
+
+ if((! x($_POST,'qxz_password')) || (! strlen(trim($_POST['qxz_password']))))
+ return;
+
+ if((! x($_POST,'verify')) || (! strlen(trim($_POST['verify']))))
+ return;
+
+ if($_POST['verify'] !== $_SESSION['remove_account_verify'])
+ return;
+
+ $encrypted = hash('whirlpool',trim($_POST['qxz_password']));
+
+ if((strlen($a->user['password'])) && ($encrypted === $a->user['password'])) {
+ require_once('include/Contact.php');
+ user_remove($a->user['uid']);
+ // NOTREACHED
+ }
+
+}
+
+
+
+function removeme_content(&$a) {
+
+ if(! local_user())
+ goaway($a->get_baseurl());
+
+ $hash = random_string();
+
+ $_SESSION['remove_account_verify'] = $hash;
+
+ $tpl = load_view_file('view/removeme.tpl');
+ $o .= replace_macros($tpl, array(
+ '$basedir' => $a->get_baseurl(),
+ '$hash' => $hash,
+ '$title' => t('Remove My Account'),
+ '$desc' => t('This will completely remove your account. Once this has been done it is not recoverable.'),
+ '$passwd' => t('Please enter your password for verification:'),
+ '$submit' => t('Remove My Account')
+ ));
+
+ return $o;
+
+} \ No newline at end of file