Subversion Repositories eFlore/Applications.cel

Rev

Rev 2120 | Rev 2334 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2120 Rev 2143
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;