friendica_2021-01/mod/removeme.php
Andrej Stieben db949bb802 Updated modules to allow for partial overrides without errors
Only define functions if they have not been defined before, e.g. in themes. This makes it possible to override parts of a module and still use the other functions.
2016-02-05 21:52:39 +01:00

57 lines
1.3 KiB
PHP

<?php
if(! function_exists('removeme_post')) {
function removeme_post(&$a) {
if(! local_user())
return;
if(x($_SESSION,'submanage') && intval($_SESSION['submanage']))
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
}
}
}
if(! function_exists('removeme_content')) {
function removeme_content(&$a) {
if(! local_user())
goaway(z_root());
$hash = random_string();
require_once("mod/settings.php");
settings_init($a);
$_SESSION['remove_account_verify'] = $hash;
$tpl = get_markup_template('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;
}
}