Merge pull request #54 from ThomasRubini/user_delete_admin
This commit is contained in:
commit
40ef4800d7
@ -128,16 +128,38 @@ final class UserController
|
||||
}
|
||||
|
||||
public function deleteAction(Array $A_urlParams = null, Array $A_postParams = null)
|
||||
{
|
||||
if (count($A_urlParams) ==0 ) {
|
||||
self::userDeleteAction($A_urlParams, $A_postParams);
|
||||
}else{
|
||||
self::adminDeleteAction($A_urlParams, $A_postParams);
|
||||
}
|
||||
}
|
||||
|
||||
private function userDeleteAction(Array $A_urlParams = null, Array $A_postParams = null)
|
||||
{
|
||||
Session::login_or_die();
|
||||
|
||||
$O_userModel = new UserModel();
|
||||
|
||||
$O_userModel->deleteByID($_SESSION["ID"]);
|
||||
|
||||
Session::destroy_session();
|
||||
|
||||
header("Location: /");
|
||||
}
|
||||
|
||||
private function adminDeleteAction(Array $A_urlParams = null, Array $A_postParams = null)
|
||||
{
|
||||
Session::admin_or_die();
|
||||
|
||||
$I_user_id = Utils::intOrDie($A_urlParams[0]);
|
||||
|
||||
|
||||
$O_userModel = new UserModel();
|
||||
$O_userModel->deleteByID($I_user_id);
|
||||
|
||||
echo "Le compte à été supprimé avec succès";
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -74,7 +74,21 @@ final class UserModel extends UserSessionModel
|
||||
$stmt->execute();
|
||||
}
|
||||
|
||||
public function anonymiseByID($I_id){
|
||||
$O_model = Model::get();
|
||||
|
||||
$stmt = $O_model->prepare("UPDATE RECIPE SET AUTHOR_ID = NULL WHERE AUTHOR_ID = :id");
|
||||
$stmt->bindParam("id", $I_id);
|
||||
$stmt->execute();
|
||||
|
||||
$stmt = $O_model->prepare("UPDATE APPRECIATION SET AUTHOR_ID = NULL WHERE AUTHOR_ID = :id");
|
||||
$stmt->bindParam("id", $I_id);
|
||||
$stmt->execute();
|
||||
}
|
||||
|
||||
public function deleteByID($I_id){
|
||||
self::anonymiseByID($I_id);
|
||||
|
||||
$O_model = Model::get();
|
||||
$stmt = $O_model->prepare("DELETE FROM USER WHERE ID=:id");
|
||||
$stmt->bindParam("id", $I_id);
|
||||
|
Loading…
Reference in New Issue
Block a user