2760 |
aurelien |
1 |
<?php
|
|
|
2 |
/**
|
|
|
3 |
* PHP Version 5
|
|
|
4 |
*
|
|
|
5 |
* @category PHP
|
|
|
6 |
* @package cel
|
|
|
7 |
* @author aurelien <aurelien@tela-botanica.org>
|
|
|
8 |
* @copyright 2015 Tela-Botanica
|
|
|
9 |
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
|
|
|
10 |
* @version SVN: <svn_id>
|
|
|
11 |
*/
|
|
|
12 |
|
|
|
13 |
|
|
|
14 |
class Modification extends Cel {
|
|
|
15 |
|
|
|
16 |
public $table_image = "cel_images";
|
|
|
17 |
public $table_obs = "cel_obs";
|
|
|
18 |
|
|
|
19 |
public function getElement($uid) {
|
|
|
20 |
|
|
|
21 |
$id_utilisateur = (isset($_GET['id_utilisateur'])) ? $_GET['id_utilisateur'] : false;
|
|
|
22 |
$mail = (isset($_GET['mail'])) ? $_GET['mail'] : false;
|
|
|
23 |
$nouveau_mail = (isset($_GET['nouveau_mail'])) ? $_GET['nouveau_mail'] : false;
|
|
|
24 |
|
|
|
25 |
if(!$mail || !$id_utilisateur) {
|
|
|
26 |
$this->envoyer("false");
|
|
|
27 |
}
|
|
|
28 |
|
|
|
29 |
$ancien_mail = $mail;
|
|
|
30 |
$nouveau_mail = $nouveau_mail;
|
|
|
31 |
|
|
|
32 |
// si le mail n'a pas changé, on ne change rien
|
|
|
33 |
if($ancien_mail == $nouveau_mail) {
|
|
|
34 |
$this->envoyer("OK");
|
|
|
35 |
return;
|
|
|
36 |
}
|
|
|
37 |
|
2761 |
aurelien |
38 |
// Sinon on doit changer des trucs dans les obs et les images
|
2760 |
aurelien |
39 |
|
2761 |
aurelien |
40 |
// Une clé existe sur ordre, id_utilisateur et courriel utilisateur
|
|
|
41 |
|
|
|
42 |
// Décalage de l'ordre d'éventuelles observations déjà existantes
|
|
|
43 |
$requete_decalage_ordre_obs_1 = "UPDATE ".$this->table_obs." SET ordre = ordre + 9999999 ".
|
|
|
44 |
"WHERE courriel_utilisateur = ".Cel::db()->proteger($nouveau_mail);
|
|
|
45 |
$requete_decalage_ordre_obs_2 = "UPDATE ".$this->table_obs." SET ordre = ordre + 19999999 ".
|
|
|
46 |
"WHERE courriel_utilisateur = ".Cel::db()->proteger($ancien_mail);
|
|
|
47 |
|
|
|
48 |
Cel::db()->executer($requete_decalage_ordre_obs_1);
|
|
|
49 |
Cel::db()->executer($requete_decalage_ordre_obs_2);
|
|
|
50 |
|
2760 |
aurelien |
51 |
$requete_maj_mail_obs = "UPDATE ".$this->table_obs." SET courriel_utilisateur = ".Cel::db()->proteger($nouveau_mail)." ".
|
|
|
52 |
"WHERE courriel_utilisateur = ".Cel::db()->proteger($ancien_mail);
|
|
|
53 |
|
|
|
54 |
Cel::db()->executer($requete_maj_mail_obs);
|
|
|
55 |
|
|
|
56 |
$requete_maj_ordre_obs = "SELECT @ordval := 0; ".
|
|
|
57 |
"UPDATE ".$this->table_obs." ".
|
|
|
58 |
"SET ordre = (SELECT @ordval := @ordval + 1) ".
|
|
|
59 |
"WHERE courriel_utilisateur = ".Cel::db()->proteger($nouveau_mail)." ".
|
2761 |
aurelien |
60 |
"ORDER BY date_creation ";
|
2760 |
aurelien |
61 |
|
2761 |
aurelien |
62 |
Cel::db()->executerRequete($requete_maj_ordre_obs);
|
2760 |
aurelien |
63 |
|
2761 |
aurelien |
64 |
// Décalage de l'ordre d'éventuelles images déjà existantes
|
|
|
65 |
$requete_decalage_ordre_img_1 = "UPDATE ".$this->table_image." SET ordre = ordre + 9999999 ".
|
|
|
66 |
"WHERE courriel_utilisateur = ".Cel::db()->proteger($nouveau_mail);
|
|
|
67 |
|
|
|
68 |
$requete_decalage_ordre_img_2 = "UPDATE ".$this->table_image." SET ordre = ordre + 19999999 ".
|
2760 |
aurelien |
69 |
"WHERE courriel_utilisateur = ".Cel::db()->proteger($ancien_mail);
|
|
|
70 |
|
2761 |
aurelien |
71 |
Cel::db()->executer($requete_decalage_ordre_img_1);
|
|
|
72 |
Cel::db()->executer($requete_decalage_ordre_img_2);
|
|
|
73 |
|
|
|
74 |
$requete_maj_mail_img = "UPDATE ".$this->table_image." SET courriel_utilisateur = ".Cel::db()->proteger($nouveau_mail)." ".
|
|
|
75 |
"WHERE courriel_utilisateur = ".Cel::db()->proteger($ancien_mail);
|
|
|
76 |
|
2760 |
aurelien |
77 |
Cel::db()->executer($requete_maj_mail_img);
|
|
|
78 |
|
|
|
79 |
$requete_maj_ordre_img = "SELECT @ordval := 0; ".
|
2761 |
aurelien |
80 |
"UPDATE ".$this->table_image." ".
|
2760 |
aurelien |
81 |
"SET ordre = (SELECT @ordval := @ordval + 1) ".
|
|
|
82 |
"WHERE courriel_utilisateur = ".Cel::db()->proteger($nouveau_mail)." ".
|
2761 |
aurelien |
83 |
"ORDER BY date_creation ";
|
2760 |
aurelien |
84 |
|
2761 |
aurelien |
85 |
Cel::db()->executerRequete($requete_maj_ordre_img);
|
2760 |
aurelien |
86 |
|
|
|
87 |
$this->envoyer("OK");
|
|
|
88 |
return;
|
|
|
89 |
}
|
|
|
90 |
}
|