Subversion Repositories eFlore/Applications.cel

Compare Revisions

No changes between revisions

Ignore whitespace Rev 2827 → Rev 2828

/trunk/jrest/services/CelWidgetSaisie.php
64,7 → 64,8
 
$this->debug[] = 'Courriel : '.$utilisateur['courriel'];
$utilisateur = $this->affecterChampsManquantsUtilisateur($utilisateur);
extract($utilisateur);
extract($utilisateur); // @TODO pendre le paltoquet qui a écrit ça !!!
// $id_utilisateur vient du extract() de $utilisateur['id_utilisateur']
$this->utilisateur_id = $id_utilisateur;
$ordre = $this->getMaxOrdre($id_utilisateur);
if (!is_null($ordre)) {
146,7 → 147,7
 
// Insertion dans la base
$obs_a_taguer_ordres = array();
$img_a_taguer_ids = array();
$img_a_taguer_ids_noms = array();
foreach ($observations as $infos) {
$obs = $infos['obs'];
$img = $infos['img'];
168,12 → 169,12
// si le formulaire contient une image on la traite
if ($img != null) {
$this->nettoyerImagesUploades();
$img_a_taguer_ids = $this->stockerImagesEtLierAObs($idNouvelleObs, $img, $utilisateur);
if ($img_a_taguer_ids === false) {
$img_a_taguer_ids_noms = $this->stockerImagesEtLierAObs($idNouvelleObs, $img, $utilisateur);
if ($img_a_taguer_ids_noms === false) {
$erreursDurantTraitement = true;
$this->messages[] = "Au moins une des images n'a pas pu être enregistrée.";
} else {
$cmd = sprintf($this->config['cel']['commande_script_images'],implode(',', $img_a_taguer_ids));
$cmd = sprintf($this->config['cel']['commande_script_images'],implode(',', array_keys($img_a_taguer_ids_noms)));
pclose(popen($cmd,"r"));
}
}
184,8 → 185,8
 
$obs_a_taguer_ids = $this->obtenirIdsObsPourTableauOrdres($this->utilisateur_id, $obs_a_taguer_ordres);
$this->taguerObs($obs_a_taguer_ids);
if ($img_a_taguer_ids !== false) {
$this->taguerImg($img_a_taguer_ids);
if ($img_a_taguer_ids_noms !== false) {
$this->taguerImg(array_keys($img_a_taguer_ids_noms));
}
 
// Les champs taggés sont des champs supplémentaires stockés sous forme de clé => valeur
202,8 → 203,8
} else {
// On annule l'écriture des images enregistrées sur le disque dur - la transaction
// se charge de les retirer de la base de données
if ($img_a_taguer_ids !== false) {
foreach ($img_a_taguer_ids as $idImageASupprimer) {
if ($img_a_taguer_ids_noms !== false) {
foreach (array_keys($img_a_taguer_ids_noms) as $idImageASupprimer) {
$this->effacerImageDuDd($idImageASupprimer);
}
}
227,7 → 228,19
} else {
$msg = 'ok';
}
$retour = (object) array('msg' => $msg, 'id' => $idNouvelleObs);
// renvoi des infos d'images (id, nom) ordonnées, en plus des infos obs.
$infosImages = array();
foreach ($img_a_taguer_ids_noms as $id => $nom) {
$infosImages[] = array(
'id' => $id,
'nom' => $nom
);
}
$retour = (object) array(
'msg' => $msg,
'id' => $idNouvelleObs,
'images' => $infosImages
);
$this->envoyerJson($retour);
exit;
}
327,7 → 340,7
$img = $imgTmp;
}
 
$img_a_taguer_ids = array();
$img_a_taguer_ids_noms = array();
foreach ($img as $image) {
$nomFichierImg = $this->traiterNomFichierImage($image['nom']);
$cheminImage = $this->config['cel']['chemin_stockage_temp']."/$nomFichierImg";
339,7 → 352,7
$this->debug[] = 'Nom fichier img debut :'.$nomFichierImg;
$idImg = $this->ajouterImageSurDdEtBdd($id_obs, $utilisateur, $cheminImage, $nomFichierImg);
if ($idImg !== false) {
$img_a_taguer_ids[] = $idImg;
$img_a_taguer_ids_noms[$idImg] = $nomFichierImg;
if (isset($image['tags'])) {
$this->correspondanceIdImgTags[$idImg] = $image['tags'];
}
347,14 → 360,14
// L'image n'a pas pu être écrite.
// On annule l'écriture des précédentes et on s'arrête là - la transaction
// se chargera de les retirer de la base de données
foreach ($img_a_taguer_ids as $idImageASupprimer) {
foreach (array_keys($img_a_taguer_ids_noms) as $idImageASupprimer) {
$this->effacerImageDuDd($idImageASupprimer);
}
$img_a_taguer_ids = false;
$img_a_taguer_ids_noms = false;
break;
}
}
return $img_a_taguer_ids;
return $img_a_taguer_ids_noms;
}
 
private function affecterChampsManquantsUtilisateur($utilisateur) {
/trunk/jrest/services
Property changes:
Modified: svn:mergeinfo
Merged /branches/v2.24-sarcloir/jrest/services:r2827
/trunk/jrest/.
Property changes:
Modified: svn:mergeinfo
Merged /branches/v2.24-sarcloir/jrest:r2827