-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathunsubscribe.php
More file actions
129 lines (104 loc) · 4.17 KB
/
Copy pathunsubscribe.php
File metadata and controls
129 lines (104 loc) · 4.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?php
session_start();
include_once $_SERVER['DOCUMENT_ROOT'].'/assets/config/functions.inc.php';
$outil = new Outils;
$isConnected = $outil->isConnected();
// ---- PARTIE VERIFICATION ---- \\
//Récupère les données de l'utilisateur
$user = new User(
[
'IdUser' => $_SESSION['idUser']
]
);
$userManager = new UserManager($db);
$dataUser = $userManager->recupData($user);
//Vérifier si l'utilisateur est connecté
if(!$isConnected) {
$outil->redirectUrl('/profil.php');
}
//Vérifier si l'utilisateur est photographe pour personnalisé le message de désinscrition
if($dataUser['rankUser'] != 2) {
$messageDesinscription = "Attention, veuillez noter que si vous vous désinscrivez, vous perdrez toutes les photos achetées et vos crédits.";
} else {
$messageDesinscription = "Attention, veuillez noter que si vous vous désinscrivez, vous perdrez toutes les photos de votre catalogue et vos crédits.";
}
//Vérifier et récupère les articles de l'utilisateur si il est client ou photographe
$photo = new Photo([
"IsBuyPhoto" => (int) $_SESSION['idUser'],
"IdUserPhotographer" => (int) $_SESSION['idUser']
]);
$photoManager = new PhotoManager($db);
// ---- PARTIE SUPPRESSION ---- \\
//Génère la liste pour un photographe
if(isset($_POST['valid'])) {
if($dataUser['rankUser'] == 2) {
$listPhoto = $photoManager->recupAllArticlesPhotographerNoBuy($photo);
} else {
//Génère la liste pour un client
$listPhoto = $photoManager->recupArticlesBuyUser($photo);
}
//Fabrique la liste des id des photos a supprimer
$listIdPhoto = [];
foreach($listPhoto as $photo) {
array_push($listIdPhoto, (int) $photo['idPhoto']);
}
//Permet de supprimer les photos
$image = scandir("assets/images/photos");
for($i=0;$i<count($image);$i++) {
if($image[$i] != "." and $image[$i] != "..") {
$image[$i] = explode("_", $image[$i]);
for($c=0;$c<count($listIdPhoto);$c++) {
if($image[$i][0] == $listIdPhoto[$c]) {
$linkImage = $_SERVER['DOCUMENT_ROOT'].'/assets/images/photos/'.$image[$i][0].'_'.$image[$i][1].'_'.$image[$i][2];
unlink($linkImage);
}
}
}
}
//supprime en base de données les photos concerné
for($c=0;$c<count($listIdPhoto);$c++) {
$photo = new Photo(
[
'IdPhoto' => (int) $listIdPhoto[$c]
]
);
$photoManager = new PhotoManager($db);
// Supprimer les photos du photographe
if($dataUser['rankUser'] == 2) {
$photoManager->deletePhotoForPhotographer($photo);
} else {
// Supprimer les photos des clients
$photoManager->deletePhotoForClient($photo);
}
}
//Supprime le compte de l'utilisateur
$userManager->deleteAccount($user);
// redirection une fois finie
session_destroy();
$outil->redirectUrl("/");
}
?>
<!DOCTYPE html>
<html lang="<?= $defaultLanguage; ?>">
<head>
<?php include_once($headerMeta); ?>
<?php include_once($headerLink); ?>
<title>Profil</title>
</head>
<body>
<?php include_once($headerPath); ?>
<main>
<?= $outil->generateTitleBlok("Désinscription",$messageDesinscription); ?>
<div class="px-5 text-center">
<form method="post" enctype="multipart/form-data" class="needs-validation px-5">
<div class="mt-3">
<button type="submit" name="valid" class="btn btn-primary">Valider</button>
<a href="/profil.php" class="btn btn-danger my-2">Annuler</a>
</div>
</form>
</div>
</main>
<?php include_once($footerPath); ?>
<?php include_once($script); ?>
</body>
</html>