| Line 141... |
Line 141... |
| 141 |
$base_param = array(
|
141 |
$base_param = array(
|
| 142 |
'nom_sel_nn' => NULL,
|
142 |
'nom_sel_nn' => NULL,
|
| 143 |
'nom_sel' => NULL,
|
143 |
'nom_sel' => NULL,
|
| 144 |
'nom_ret_nn' => NULL,
|
144 |
'nom_ret_nn' => NULL,
|
| 145 |
'nom_referentiel' => NULL);
|
145 |
'nom_referentiel' => NULL);
|
| 146 |
// $parametres = array_merge($base_param, $parametres);
|
- |
|
| 147 |
|
- |
|
| 148 |
$requete_modification = "UPDATE cel_obs SET " ;
|
- |
|
| Line -... |
Line 146... |
| - |
|
146 |
|
| 149 |
|
147 |
$requete = "UPDATE cel_obs SET " ;
|
| 150 |
// si pas de nom_sel : on supprime les champs automatiques. et le référentiel.
|
148 |
// si pas de nom_sel : on supprime les champs automatiques. et le référentiel.
|
| 151 |
if (false && (!isset($parametres['nom_sel']) || !@$parametres['nom_sel'])) {
|
149 |
if (false && (!isset($parametres['nom_sel']) || !@$parametres['nom_sel'])) {
|
| 152 |
$parametres['nom_referentiel'] = NULL;
|
150 |
$parametres['nom_referentiel'] = NULL;
|
| 153 |
// pas d'update de traiterParametresObservationEtConstruireSousRequeteMaj()
|
151 |
// pas d'update de traiterParametresObservationEtConstruireSousRequeteMaj()
|
| 154 |
$requete_modification .= "nom_referentiel = NULL, nom_sel_nn = NULL, nom_ret_nn = NULL, nom_ret = NULL, nt = NULL, famille = NULL,";
|
152 |
$requete .= "nom_referentiel = NULL, nom_sel_nn = NULL, nom_ret_nn = NULL, nom_ret = NULL, nt = NULL, famille = NULL,";
|
| 155 |
} elseif (false) {
|
153 |
} elseif (false) {
|
| 156 |
/* TODO:
|
154 |
/* TODO:
|
| 157 |
* si (à l'origine) pas de nom_sel_nn (donc pas de référentiel) POSTé
|
155 |
* si (à l'origine) pas de nom_sel_nn (donc pas de référentiel) POSTé
|
| 158 |
* et aucun nom déterminés, alors on supprime les données automatiques:
|
156 |
* et aucun nom déterminés, alors on supprime les données automatiques:
|
| 159 |
* alors on test une différence de réferentiel...
|
157 |
* alors on test une différence de réferentiel...
|
| 160 |
*/
|
158 |
*/
|
| 161 |
$r = $parametres['nom_referentiel'];
|
- |
|
| 162 |
$requete_modification .= <<<EOF
|
159 |
$referentielP = Cel::db()->proteger($parametres['nom_referentiel']);
|
| 163 |
nom_sel_nn = IF(SUBSTR(nom_referentiel, 1, 5) != "$r", NULL, nom_sel_nn),
|
160 |
$requete .= "nom_sel_nn = IF(SUBSTR(nom_referentiel, 1, 5) != $referentielP, NULL, nom_sel_nn),".
|
| 164 |
nom_ret_nn = IF(SUBSTR(nom_referentiel, 1, 5) != "$r", NULL, nom_ret_nn),
|
161 |
"nom_ret_nn = IF(SUBSTR(nom_referentiel, 1, 5) != $referentielP, NULL, nom_ret_nn), ".
|
| 165 |
nom_ret = IF(SUBSTR(nom_referentiel, 1, 5) != "$r", NULL, nom_ret),
|
162 |
"nom_ret = IF(SUBSTR(nom_referentiel, 1, 5) != $referentielP, NULL, nom_ret), ".
|
| 166 |
nt = IF(SUBSTR(nom_referentiel, 1, 5) != "$r", NULL, nt),
|
163 |
"nt = IF(SUBSTR(nom_referentiel, 1, 5) != $referentielP, NULL, nt), ".
|
| 167 |
famille = IF(SUBSTR(nom_referentiel, 1, 5) != "$r", NULL, famille),
|
- |
|
| 168 |
EOF;
|
164 |
"famille = IF(SUBSTR(nom_referentiel, 1, 5) != $referentielP, NULL, famille), ";
|
| 169 |
} elseif (isset($parametres['nom_sel'])) {
|
165 |
} elseif (isset($parametres['nom_sel'])) {
|
| 170 |
// uniquement en cas de nom_sel présent
|
166 |
// uniquement en cas de nom_sel présent
|
| 171 |
$this->traiterEspece($parametres);
|
167 |
$this->traiterEspece($parametres);
|
| Line 172... |
Line 168... |
| 172 |
}
|
168 |
}
|
| Line 173... |
Line 169... |
| 173 |
|
169 |
|
| 174 |
self::formaterParametresObservation($parametres);
|
170 |
self::formaterParametresObservation($parametres);
|
| Line 175... |
Line -... |
| 175 |
|
- |
|
| 176 |
$champ_maj = self::traiterParametresObservationEtConstruireSousRequeteMaj($parametres);
|
171 |
|
| 177 |
$champ_maj[] = "date_modification = now()";
|
172 |
$champ_maj = self::traiterParametresObservationEtConstruireSousRequeteMaj($parametres);
|
| 178 |
|
173 |
$champ_maj[] = "date_modification = now()";
|
| Line 179... |
Line -... |
| 179 |
$requete_modification .=
|
- |
|
| 180 |
implode(', ', $champ_maj).
|
174 |
|
| 181 |
" WHERE ordre IN (".$ordre.") AND ce_utilisateur = ".Cel::db()->proteger($utilisateur).
|
175 |
$requete .= implode(', ', $champ_maj).
|
| 182 |
' -- ' . __FILE__ . ':' . __LINE__;
|
176 |
" WHERE ordre IN ($ordre) AND ce_utilisateur = ".Cel::db()->proteger($utilisateur).' '.
|
| 183 |
|
177 |
' -- ' . __FILE__ . ':' . __LINE__;
|
| Line 184... |
Line 178... |
| 184 |
|
178 |
|
| 185 |
// important ! ne pas utiliser la fonction executerRequete qui renvoie une erreur si la requete contient des | (pipes)
|
179 |
// important ! ne pas utiliser la fonction executerRequete qui renvoie une erreur si la requete contient des | (pipes)
|
| 186 |
// ce qui peut arriver dans les commentaires
|
180 |
// ce qui peut arriver dans les commentaires
|
| 187 |
// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple
|
181 |
// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple
|
| 188 |
$resultat_modification = Cel::db()->executerRequeteSimple($requete_modification);
|
182 |
$resultat = Cel::db()->executerRequeteSimple($requete);
|
| 189 |
|
183 |
|
| 190 |
$retour = true;
|
184 |
$retour = true;
|
| Line 191... |
Line 185... |
| 191 |
if ($resultat_modification === false) {
|
185 |
if ($resultat === false) {
|
| Line 249... |
Line 243... |
| 249 |
self::formaterParametresObservation($parametres);
|
243 |
self::formaterParametresObservation($parametres);
|
| Line 250... |
Line 244... |
| 250 |
|
244 |
|
| Line 251... |
Line 245... |
| 251 |
$retour = true;
|
245 |
$retour = true;
|
| 252 |
|
246 |
|
| Line 253... |
Line 247... |
| 253 |
$champ_maj = self::traiterParametresObservationEtConstruireSousRequeteMaj($parametres);
|
247 |
$champ_maj = self::traiterParametresObservationEtConstruireSousRequeteMaj($parametres);
|
| 254 |
$champ_maj[] = "date_modification = now()";
|
248 |
$champ_maj[] = 'date_modification = now()';
|
| 255 |
|
249 |
|
| 256 |
$requete_modification = "UPDATE cel_obs SET " .
|
250 |
$requete_modification = "UPDATE cel_obs SET " .
|
| Line 263... |
Line 257... |
| 263 |
// ce qui peut arriver dans les commentaires
|
257 |
// ce qui peut arriver dans les commentaires
|
| 264 |
// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple
|
258 |
// TODO: corriger la fonction ou bien continuer à utiliser executerRequeteSimple
|
| 265 |
$resultat_modification = Cel::db()->executerRequeteSimple($requete_modification . ' -- ' . __FILE__ . ':' . __LINE__);
|
259 |
$resultat_modification = Cel::db()->executerRequeteSimple($requete_modification . ' -- ' . __FILE__ . ':' . __LINE__);
|
| Line 266... |
Line 260... |
| 266 |
|
260 |
|
| 267 |
if ($resultat_modification === false) {
|
261 |
if ($resultat_modification === false) {
|
| 268 |
$this->logger("CEL_bugs","Erreur de mise à jour de l\'observation : ".$id);
|
262 |
$this->logger('CEL_bugs', "Erreur de mise à jour de l'observation : $id");
|
| Line 269... |
Line 263... |
| 269 |
}
|
263 |
}
|
| 270 |
|
264 |
|