mirror of https://github.com/BOINC/boinc.git
74 lines
2.8 KiB
PHP
74 lines
2.8 KiB
PHP
<?php
|
|
// This file is part of BOINC.
|
|
// https://boinc.berkeley.edu
|
|
// Copyright (C) 2018 University of California
|
|
//
|
|
// BOINC is free software; you can redistribute it and/or modify it
|
|
// under the terms of the GNU Lesser General Public License
|
|
// as published by the Free Software Foundation,
|
|
// either version 3 of the License, or (at your option) any later version.
|
|
//
|
|
// BOINC 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 Lesser General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU Lesser General Public License
|
|
// along with BOINC. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
require_once("../inc/util.inc");
|
|
require_once("../inc/account.inc");
|
|
require_once("../inc/delete_account.inc");
|
|
require_once("../inc/user_util.inc");
|
|
require_once("../inc/email.inc");
|
|
|
|
$config = get_config();
|
|
if (!parse_bool($config, "enable_delete_account")) {
|
|
error_page(
|
|
tra("This feature is disabled. Please contact the project administrator.")
|
|
);
|
|
}
|
|
|
|
$user = get_logged_in_user();
|
|
|
|
if ($user->email_addr_change_time + 7*86400 > time()) {
|
|
error_page(tra("You are not allowed to delete your account until after 7 days from when you last changed your email address."));
|
|
}
|
|
|
|
function delete_account_request_form($user) {
|
|
page_head(tra("Delete Account"));
|
|
|
|
echo "<p>".tra("You have the ability to delete your account. Please note that this <b>cannot be undone</b> once it is completed.")."</p>"
|
|
."<p>".tra("The process works as follows:")."</p>"
|
|
."<ul>"
|
|
."<li>".tra("Enter in your password below and click on the \"Send Confirmation Email\" button")."</li>"
|
|
."<li>".tra("You will receive an email which contains a link. Click on that link")."</li>"
|
|
."<li>".tra("On the page displayed, you will need to re-enter your password and then click \"Delete Account\"")."</li>"
|
|
."<li>".tra("Your account will then be immediately deleted")
|
|
."</ul><br/>";
|
|
|
|
form_start(secure_url_base()."delete_account_request.php", "post");
|
|
form_input_text(tra("Password"), "passwd", "", "password", 'id="passwd"', passwd_visible_checkbox("passwd"));
|
|
form_submit(tra("Send Confirmation Email"));
|
|
form_end();
|
|
|
|
page_tail();
|
|
}
|
|
|
|
function delete_account_request_action($user) {
|
|
$passwd = post_str("passwd");
|
|
check_passwd_ui($user, $passwd);
|
|
send_confirm_delete_email($user);
|
|
|
|
page_head(tra("Confirmation Email Sent"));
|
|
echo "<p>".tra("The email to confirm your request to delete your account has been sent.")."</p>";
|
|
page_tail();
|
|
}
|
|
|
|
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|
delete_account_request_action($user);
|
|
} else {
|
|
delete_account_request_form($user);
|
|
}
|
|
|
|
?>
|