35,7 → 35,6 |
$this->masque = $conteneur->getMasque(); |
$this->gestionBdd = $conteneur->getGestionBdd(); |
$this->bdd = $this->gestionBdd->getBdd(); |
|
} |
|
/** |
74,7 → 73,6 |
* Initialiser les attributs de la classe avec les parametres |
* */ |
public function configurer() { |
|
$this->mappingCommentaire = $this->conteneur->getParametre('mapping_commentaire');; |
//TODO : Gérer le cas d'une proposition |
} |
83,7 → 81,6 |
* Vérifier que le service est bien configuré |
* */ |
public function verifierConfiguration() { |
|
$erreurs = array(); |
|
if (empty($this->mappingCommentaire)) { |
178,11 → 175,16 |
* @param $utilisateur array le tableau de l'utilisateur |
* */ |
private function estValideDansBdd($utilisateur) { |
$requete = "SELECT id_utilisateur as 'auteur.id', nom as 'auteur.nom', prenom as 'auteur.prenom', courriel as 'auteur.courriel' ". |
'FROM '.$this->gestionBdd->formaterTable('del_utilisateur'). |
'WHERE courriel = '.$this->bdd->proteger($utilisateur['auteur.courriel']). |
' AND nom = '.$this->bdd->proteger($utilisateur['auteur.nom']). |
' AND prenom = '.$this->bdd->proteger($utilisateur['auteur.prenom']); |
$nom = $this->bdd->proteger($utilisateur['auteur.nom']); |
$prenom = $this->bdd->proteger($utilisateur['auteur.prenom']); |
$courriel = $this->bdd->proteger($utilisateur['auteur.courriel']); |
|
$requete = "SELECT id_utilisateur AS 'auteur.id', nom AS 'auteur.nom', prenom AS 'auteur.prenom', ". |
" courriel AS 'auteur.courriel' ". |
'FROM del_utilisateur '. |
"WHERE courriel = $courriel ". |
" AND nom = $nom ". |
" AND prenom = $prenom "; |
$utilisateurBdd = $this->bdd->recuperer($requete); |
return $utilisateurBdd; |
} |
192,14 → 194,13 |
* @param $utilisateur array la liste des paramètres utilisateur |
* */ |
private function insererCommentaire($utilisateur) { |
$requete = 'INSERT INTO del_commentaire '. |
'('.$this->genererEntete($utilisateur).') '. |
'VALUES ('.$this->genererValues().')'; |
|
$requete = 'INSERT INTO '.$this->gestionBdd->formaterTable('del_commentaire'); |
$requete .= '('.$this->genererEntete($utilisateur).') '; |
$requete .= 'VALUES ('.$this->genererValues().')'; |
|
$retour = $this->bdd->requeter($requete); |
if ($retour == null) { |
$e = 'Erreur inopinée lors de l\insertion'; |
$e = "Erreur inopinée lors de l'insertion"; |
throw new Exception($e, RestServeur::HTTP_CODE_ERREUR); |
} |
|
217,42 → 218,42 |
} |
|
private function propositionInitialeExiste($id_observation) { |
|
$requete = "SELECT COUNT(*) >= 1 as existe FROM del_commentaire WHERE ce_observation = ".$id_observation." ". |
"AND proposition_initiale = 1"; |
$requete = 'SELECT COUNT(*) >= 1 AS existe '. |
'FROM del_commentaire '. |
"WHERE ce_observation = $id_observation ". |
' AND proposition_initiale = 1'; |
$resultat = $this->bdd->recuperer($requete); |
return $resultat['existe'] == 1; |
} |
|
private function creerPropositionAPartirObservation($id_observation) { |
$idObs = $this->bdd->proteger($id_observation); |
$insertion = 'INSERT IGNORE INTO del_commentaire '. |
'(ce_observation, ce_utilisateur, utilisateur_prenom, utilisateur_nom, utilisateur_courriel, '. |
'nom_sel, nom_sel_nn, nom_ret, nom_ret_nn, nt, famille, nom_referentiel, proposition_initiale) '. |
'SELECT id_observation, ce_utilisateur, prenom, nom, '. |
' courriel, nom_sel, nom_sel_nn, nom_ret, nom_ret_nn, '. |
' nt, famille, "bdtfx_v1", "1" '. |
'FROM del_observation do '. |
' LEFT JOIN del_utilisateur du ON '. |
'do.ce_utilisateur = du.id_utilisateur '. |
'WHERE id_observation = '.$this->bdd->proteger($id_observation); |
" nt, famille, 'bdtfx_v1', '1' ". |
'FROM del_observation AS do '. |
' LEFT JOIN del_utilisateur AS du '. |
' ON do.ce_utilisateur = du.id_utilisateur '. |
"WHERE id_observation = $idObs "; |
|
$resultat = $this->bdd->requeter($insertion); |
|
return $resultat; |
} |
|
|
private function genererEntete($utilisateur) { |
$this->parametres = array_merge($this->parametres, $utilisateur); |
|
$entete = array(); |
|
foreach ($this->mappingCommentaire as $nomOriginal => $nomFinal) { |
if (isset($this->parametres[$nomFinal]) && $this->parametres[$nomFinal] != null) { |
$entete[] = $nomOriginal; |
} |
} |
$entete[] = 'date'; |
|
$entete[] = 'date'; |
return implode(', ', $entete); |
} |
|
263,8 → 264,8 |
$valeurs[] = $this->bdd->proteger($this->parametres[$nomFinal]); |
} |
} |
$valeurs[] = 'NOW()'; |
|
$valeurs[] = 'NOW()'; |
return implode(', ', $valeurs); |
} |
} |