Line 135... |
Line 135... |
135 |
|
135 |
|
136 |
$champs = implode(', ', array_keys($obs));
|
136 |
$champs = implode(', ', array_keys($obs));
|
137 |
$valeurs = implode(', ', $obs);
|
137 |
$valeurs = implode(', ', $obs);
|
Line 138... |
Line 138... |
138 |
$requete = "INSERT INTO cel_obs ($champs) VALUES ($valeurs) ";
|
138 |
$requete = "INSERT INTO cel_obs ($champs) VALUES ($valeurs) ";
|
139 |
|
139 |
|
140 |
if (Cel::db()->executerRequeteSimple($requete) === false) {
|
140 |
if (Cel::db()->executer($requete) === false) {
|
141 |
$this->messages[] = "Un problème est survenu lors de l'insertion de l'obs dans la base de données.";
|
141 |
$this->messages[] = "Un problème est survenu lors de l'insertion de l'obs dans la base de données.";
|
142 |
} else {
|
142 |
} else {
|
Line 149... |
Line 149... |
149 |
$img_a_taguer_ids = $this->stockerImagesEtLierAObs($img, $id_utilisateur, $utilisateur);
|
149 |
$img_a_taguer_ids = $this->stockerImagesEtLierAObs($img, $id_utilisateur, $utilisateur);
|
150 |
$cmd = sprintf($this->config['cel']['commande_script_images'],implode(',', $img_a_taguer_ids));
|
150 |
$cmd = sprintf($this->config['cel']['commande_script_images'],implode(',', $img_a_taguer_ids));
|
151 |
pclose(popen($cmd,"r"));
|
151 |
pclose(popen($cmd,"r"));
|
152 |
}
|
152 |
}
|
153 |
}
|
153 |
}
|
154 |
|
154 |
|
155 |
$this->gestionMotsClesObs = new GestionMotsClesChemin($this->config,'obs');
|
155 |
$this->gestionMotsClesObs = new GestionMotsClesChemin($this->config,'obs');
|
156 |
$this->gestionMotsClesImages = new GestionMotsClesChemin($this->config,'images');
|
156 |
$this->gestionMotsClesImages = new GestionMotsClesChemin($this->config,'images');
|
Line 157... |
Line 157... |
157 |
|
157 |
|
158 |
$obs_a_taguer_ids = $this->obtenirIdsObsPourTableauOrdres($this->utilisateur_id, $obs_a_taguer_ordres);
|
158 |
$obs_a_taguer_ids = $this->obtenirIdsObsPourTableauOrdres($this->utilisateur_id, $obs_a_taguer_ordres);
|
Line 345... |
Line 345... |
345 |
$identifiant = Cel::db()->quote($id_utilisateur);
|
345 |
$identifiant = Cel::db()->quote($id_utilisateur);
|
346 |
$requete = "SELECT MAX(ordre) AS ordre ".
|
346 |
$requete = "SELECT MAX(ordre) AS ordre ".
|
347 |
"FROM cel_obs ".
|
347 |
"FROM cel_obs ".
|
348 |
"WHERE ce_utilisateur = ".Cel::db()->proteger($id_utilisateur)." ";
|
348 |
"WHERE ce_utilisateur = ".Cel::db()->proteger($id_utilisateur)." ";
|
Line 349... |
Line 349... |
349 |
|
349 |
|
350 |
$ordre_max = Cel::db()->executerRequete($requete, 'Column');
|
350 |
$ordre_max = Cel::db()->requeterValeurUnique($requete);
|
351 |
if ($ordre_max !== false) {
|
351 |
if ($ordre_max !== false) {
|
352 |
$ordre = $ordre_max + 1;
|
352 |
$ordre = $ordre_max + 1;
|
353 |
}
|
353 |
}
|
354 |
return $ordre;
|
354 |
return $ordre;
|
Line 429... |
Line 429... |
429 |
private function lierImgAMotsCles($images_ids, $tags) {
|
429 |
private function lierImgAMotsCles($images_ids, $tags) {
|
430 |
$chemin_parent = "/";
|
430 |
$chemin_parent = "/";
|
431 |
$listeIdsTags = array();
|
431 |
$listeIdsTags = array();
|
432 |
foreach ($tags as $tag) {
|
432 |
foreach ($tags as $tag) {
|
433 |
$tag = $this->nettoyerTag($tag);
|
433 |
$tag = $this->nettoyerTag($tag);
|
434 |
if ($tag != '') {
|
434 |
if ($tag != '') {
|
435 |
$id_mot_cle = $this->gestionMotsClesImages->insererParCheminSiInexistant($tag, $chemin_parent, $this->utilisateur_id);
|
435 |
$id_mot_cle = $this->gestionMotsClesImages->insererParCheminSiInexistant($tag, $chemin_parent, $this->utilisateur_id);
|
436 |
if ($id_mot_cle !== false) {
|
436 |
if ($id_mot_cle !== false) {
|
437 |
$listeIdsTags[] = $id_mot_cle;
|
437 |
$listeIdsTags[] = $id_mot_cle;
|
438 |
$chemin_parent .= $tag."/";
|
438 |
$chemin_parent .= $tag."/";
|
439 |
}
|
439 |
}
|
Line 486... |
Line 486... |
486 |
' (id_image, id_observation, date_liaison) '.
|
486 |
' (id_image, id_observation, date_liaison) '.
|
487 |
"VALUES ($id_image, $id_obs, NOW()) ".
|
487 |
"VALUES ($id_image, $id_obs, NOW()) ".
|
488 |
' ON DUPLICATE KEY UPDATE id_image = id_image';
|
488 |
' ON DUPLICATE KEY UPDATE id_image = id_image';
|
Line 489... |
Line 489... |
489 |
|
489 |
|
490 |
$liaison = true;
|
490 |
$liaison = true;
|
491 |
if (Cel::db()->executerRequeteSimple($requete) === false) {
|
491 |
if (Cel::db()->executer($requete) === false) {
|
492 |
$this->messages[] = "La requête de liaison de l'obs $id_obs à l'image $id_image pour l'utilisateur $id_utilisateur a échouée.";
|
492 |
$this->messages[] = "La requête de liaison de l'obs $id_obs à l'image $id_image pour l'utilisateur $id_utilisateur a échouée.";
|
493 |
$liaison = false;
|
493 |
$liaison = false;
|
494 |
}
|
494 |
}
|
495 |
return $liaison;
|
495 |
return $liaison;
|
Line 503... |
Line 503... |
503 |
$requete = 'SELECT id_observation '.
|
503 |
$requete = 'SELECT id_observation '.
|
504 |
'FROM cel_obs '.
|
504 |
'FROM cel_obs '.
|
505 |
"WHERE ce_utilisateur = $id_utilisateur ".
|
505 |
"WHERE ce_utilisateur = $id_utilisateur ".
|
506 |
" AND ordre = $ordre ";
|
506 |
" AND ordre = $ordre ";
|
Line 507... |
Line 507... |
507 |
|
507 |
|
Line 508... |
Line 508... |
508 |
$resultat = Cel::db()->executerRequete($requete);
|
508 |
$resultat = Cel::db()->requeter($requete);
|
509 |
|
509 |
|
510 |
$id_obs = (count($resultat) > 0) ? $resultat[0]['id_observation'] : false;
|
510 |
$id_obs = (count($resultat) > 0) ? $resultat[0]['id_observation'] : false;
|
Line 519... |
Line 519... |
519 |
$requete = 'SELECT id_observation '.
|
519 |
$requete = 'SELECT id_observation '.
|
520 |
'FROM cel_obs '.
|
520 |
'FROM cel_obs '.
|
521 |
"WHERE ce_utilisateur = $id_utilisateur ".
|
521 |
"WHERE ce_utilisateur = $id_utilisateur ".
|
522 |
" AND ordre IN (".implode(',',$ordres).") ";
|
522 |
" AND ordre IN (".implode(',',$ordres).") ";
|
523 |
$this->debug[] = $requete;
|
523 |
$this->debug[] = $requete;
|
524 |
$resultat = Cel::db()->executerRequete($requete);
|
524 |
$resultat = Cel::db()->requeter($requete);
|
525 |
$ids = array();
|
525 |
$ids = array();
|
526 |
foreach($resultat as $id) {
|
526 |
foreach($resultat as $id) {
|
527 |
$ids[] = $id['id_observation'];
|
527 |
$ids[] = $id['id_observation'];
|
528 |
}
|
528 |
}
|
529 |
return $ids;
|
529 |
return $ids;
|
Line 576... |
Line 576... |
576 |
$infosImage['nom_utilisateur'] = $utilisateur['nom'];
|
576 |
$infosImage['nom_utilisateur'] = $utilisateur['nom'];
|
577 |
$infosImage['prenom_utilisateur'] = $utilisateur['prenom'];
|
577 |
$infosImage['prenom_utilisateur'] = $utilisateur['prenom'];
|
578 |
$infosImage['md5'] = md5_file($cheminImage);
|
578 |
$infosImage['md5'] = md5_file($cheminImage);
|
579 |
$this->debug[] = 'Nom fichier img meta :'.$nomFichierImage;
|
579 |
$this->debug[] = 'Nom fichier img meta :'.$nomFichierImage;
|
580 |
$requete = $this->construireRequeteInsertionImage($infosImage);
|
580 |
$requete = $this->construireRequeteInsertionImage($infosImage);
|
581 |
$resultat = Cel::db()->executerRequeteSimple($requete);
|
581 |
$resultat = Cel::db()->executer($requete);
|
582 |
if ($resultat !== false) {
|
582 |
if ($resultat !== false) {
|
583 |
$idImage = $this->obtenirIdImagePourIdentifiantEtOrdre($idUtilisateur, $nouvelOrdre);
|
583 |
$idImage = $this->obtenirIdImagePourIdentifiantEtOrdre($idUtilisateur, $nouvelOrdre);
|
584 |
if ($idImage !== false) {
|
584 |
if ($idImage !== false) {
|
585 |
$manipulateurImage = new ImageRecreation($this->config);
|
585 |
$manipulateurImage = new ImageRecreation($this->config);
|
586 |
$stockageOk = $manipulateurImage->stockerFichierOriginal($cheminImage, $idImage);
|
586 |
$stockageOk = $manipulateurImage->stockerFichierOriginal($cheminImage, $idImage);
|
Line 617... |
Line 617... |
617 |
$id_utilisateur = Cel::db()->proteger($id_utilisateur);
|
617 |
$id_utilisateur = Cel::db()->proteger($id_utilisateur);
|
Line 618... |
Line 618... |
618 |
|
618 |
|
619 |
$requete = 'SELECT MAX(ordre) as max_ordre '.
|
619 |
$requete = 'SELECT MAX(ordre) as max_ordre '.
|
620 |
'FROM cel_images '.
|
620 |
'FROM cel_images '.
|
621 |
"WHERE ce_utilisateur = $id_utilisateur ";
|
621 |
"WHERE ce_utilisateur = $id_utilisateur ";
|
Line 622... |
Line 622... |
622 |
$resultat = Cel::db()->executerRequete($requete);
|
622 |
$resultat = Cel::db()->requeter($requete);
|
623 |
|
623 |
|
624 |
$ordre = ($resultat) ? ++$resultat[0]['max_ordre'] : 0;
|
624 |
$ordre = ($resultat) ? ++$resultat[0]['max_ordre'] : 0;
|
Line 631... |
Line 631... |
631 |
|
631 |
|
632 |
$requete = 'SELECT id_image '.
|
632 |
$requete = 'SELECT id_image '.
|
633 |
'FROM cel_images '.
|
633 |
'FROM cel_images '.
|
634 |
"WHERE ce_utilisateur = $id_utilisateur ".
|
634 |
"WHERE ce_utilisateur = $id_utilisateur ".
|
635 |
" AND ordre = $ordre ";
|
635 |
" AND ordre = $ordre ";
|
Line 636... |
Line 636... |
636 |
$resultat = Cel::db()->executerRequete($requete);
|
636 |
$resultat = Cel::db()->requeter($requete);
|
637 |
|
637 |
|
Line 638... |
Line 638... |
638 |
$id_image = (count($resultat) > 0) ? $resultat[0]['id_image'] : false;
|
638 |
$id_image = (count($resultat) > 0) ? $resultat[0]['id_image'] : false;
|