| Line 16... |
Line 16... |
| 16 |
*/
|
16 |
*/
|
| Line 17... |
Line 17... |
| 17 |
|
17 |
|
| Line 18... |
Line 18... |
| 18 |
class ValiderDetermination {
|
18 |
class ValiderDetermination {
|
| 19 |
|
- |
|
| 20 |
private $conteneur;
|
19 |
|
| 21 |
private $gestionBdd;
|
20 |
private $conteneur;
|
| 22 |
private $bdd;
|
21 |
private $bdd;
|
| 23 |
private $idObs = null;
|
22 |
private $idObs = null;
|
| 24 |
private $idProposition = null;
|
23 |
private $idProposition = null;
|
| Line 25... |
Line 24... |
| 25 |
private $idAuteurObs = null;
|
24 |
private $idAuteurObs = null;
|
| 26 |
private $idValidateurObs = null;
|
25 |
private $idValidateurObs = null;
|
| 27 |
|
26 |
|
| 28 |
public function __construct(Conteneur $conteneur = null) {
|
- |
|
| 29 |
$this->conteneur = $conteneur == null ? new Conteneur() : $conteneur;
|
27 |
public function __construct(Conteneur $conteneur = null) {
|
| 30 |
$this->conteneur->chargerConfiguration('config_determinations.ini');
|
28 |
$this->conteneur = $conteneur == null ? new Conteneur() : $conteneur;
|
| Line 31... |
Line 29... |
| 31 |
$this->gestionBdd = $conteneur->getGestionBdd();
|
29 |
$this->conteneur->chargerConfiguration('config_determinations.ini');
|
| 32 |
$this->bdd = $this->gestionBdd->getBdd();
|
30 |
$this->bdd = $this->conteneur->getBdd();
|
| 33 |
}
|
31 |
}
|
| Line 43... |
Line 41... |
| 43 |
$code = RestServeur::HTTP_CODE_ERREUR;
|
41 |
$code = RestServeur::HTTP_CODE_ERREUR;
|
| 44 |
throw new Exception($msg, $code);
|
42 |
throw new Exception($msg, $code);
|
| 45 |
}
|
43 |
}
|
| 46 |
return 'OK';
|
44 |
return 'OK';
|
| 47 |
}
|
45 |
}
|
| 48 |
|
46 |
|
| 49 |
private function validateurEstPresent($parametres) {
|
47 |
private function validateurEstPresent($parametres) {
|
| 50 |
return isset($parametres['validateur.id']) && is_numeric($parametres['validateur.id']) && $parametres['validateur.id'] != 0;
|
48 |
return isset($parametres['validateur.id']) && is_numeric($parametres['validateur.id']) && $parametres['validateur.id'] != 0;
|
| 51 |
}
|
49 |
}
|
| Line 52... |
Line 50... |
| 52 |
|
50 |
|
| Line 59... |
Line 57... |
| 59 |
// Le paramètre auteur.id (id de l'auteur de la détermination)
|
57 |
// Le paramètre auteur.id (id de l'auteur de la détermination)
|
| 60 |
// est là pour éviter que le $_POST ne soit vide
|
58 |
// est là pour éviter que le $_POST ne soit vide
|
| 61 |
if (!isset($parametres['auteur.id'])) {
|
59 |
if (!isset($parametres['auteur.id'])) {
|
| 62 |
$erreurs[] = "- le paramètre 'auteur.id' est manquant";
|
60 |
$erreurs[] = "- le paramètre 'auteur.id' est manquant";
|
| 63 |
}
|
61 |
}
|
| 64 |
|
62 |
|
| 65 |
// Le paramètre validateur.id (id de la personne validant la détemrinatiuon)
|
63 |
// Le paramètre validateur.id (id de la personne validant la détemrinatiuon)
|
| 66 |
// est là pour éviter que le $_POST ne soit vide
|
64 |
// est là pour éviter que le $_POST ne soit vide
|
| 67 |
if (isset($parametres['validateur.id']) && !is_numeric($parametres['validateur.id'])) {
|
65 |
if (isset($parametres['validateur.id']) && !is_numeric($parametres['validateur.id'])) {
|
| 68 |
$erreurs[] = "- le paramètre 'validateur.id' doit être un entier";
|
66 |
$erreurs[] = "- le paramètre 'validateur.id' doit être un entier";
|
| 69 |
}
|
67 |
}
|
| Line 70... |
Line 68... |
| 70 |
|
68 |
|
| 71 |
if ($erreurs) {
|
69 |
if ($erreurs) {
|
| 72 |
$msg = "Erreur dans les paramètres d'appel au web service :\n" . implode("\n", $erreurs);
|
70 |
$msg = "Erreur dans les paramètres d'appel au web service :\n" . implode("\n", $erreurs);
|
| Line 129... |
Line 127... |
| 129 |
|
127 |
|
| 130 |
private function verifierDroitUtilisateur() {
|
128 |
private function verifierDroitUtilisateur() {
|
| 131 |
$controleAcces = $this->conteneur->getControleAcces();
|
129 |
$controleAcces = $this->conteneur->getControleAcces();
|
| 132 |
$utilisateurInfos = $controleAcces->getInfosUtilisateurConnecte();
|
130 |
$utilisateurInfos = $controleAcces->getInfosUtilisateurConnecte();
|
| 133 |
$utilisateurId = $utilisateurInfos['id_utilisateur'];
|
131 |
$utilisateurId = $utilisateurInfos['id_utilisateur'];
|
| 134 |
|
132 |
|
| 135 |
// si l'utilisateur connecté n'est ni auteur de l'observation, ni au moins administrateur de niveau 1
|
133 |
// si l'utilisateur connecté n'est ni auteur de l'observation, ni au moins administrateur de niveau 1
|
| 136 |
if (($this->idAuteurObs != $utilisateurId) && $utilisateurInfos['admin'] < 1) {
|
134 |
if (($this->idAuteurObs != $utilisateurId) && $utilisateurInfos['admin'] < 1) {
|
| 137 |
$msg = "Seul l'utilisateur ayant saisi l'observation, un administrateur ou un validateur peut la valider : veuillez vous identifier.\n";
|
135 |
$msg = "Seul l'utilisateur ayant saisi l'observation, un administrateur ou un validateur peut la valider : veuillez vous identifier.\n";
|
| 138 |
throw new Exception($msg, RestServeur::HTTP_CODE_ERREUR);
|
136 |
throw new Exception($msg, RestServeur::HTTP_CODE_ERREUR);
|