blob: d83537e0c9ea49ce8149a1bd66836d9e31d97abf (
plain) (
tree)
|
|
<?php
/*
* SCROTT IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* For more information, please refer to UNLICENSE
*/
require_once "class/form.class.php";
require_once "class/user.class.php";
/*
* Action: deleteaccount - Remove one's own user account
*/
if (isAction("deleteaccount"))
{
$form = new form();
$form->text("passwd", false);
if (!$form->populate(input()))
return;
if (!($user = user::getCurrent()))
{
logError(ERROR, "You must be logged in to close your account");
return;
}
if (!$user->validatePasswd($form->passwd))
{
logError(WARNING, "Account not deleted, password was incorrect");
return;
}
if ($user->admin == 1 && count(user::getAllAdmin_ordByUname()) == 1)
{
logError(ERROR, "Account not deleted, can not remove the last administrator");
return;
}
$user->delObj();
location("/");
}
?>
|