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 |
|