Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 1548 Rev 1571
Line 85... Line 85...
85
			return;	
85
			return;	
86
		}
86
		}
Line 87... Line 87...
87
		
87
		
Line 88... Line 88...
88
		$uid[1] = rtrim($uid[1],',');
88
		$uid[1] = rtrim($uid[1],',');
89
		
89
		
Line 90... Line 90...
90
		$champs_etendus = isset($pairs['obs_etendue']) ? $pairs['obs_etendue'] : null;
90
		$champs_etendus = isset($pairs['obs_etendue']) ? json_decode($pairs['obs_etendue'],true) : null;
91
		$this->supprimerChampsEtendusDesParametres($pairs);
91
		unset($pairs['obs_etendue']);
Line 92... Line 92...
92
		
92
		
93
		$gestionnaire_observation = new GestionObservation($this->config);
93
		$gestionnaire_observation = new GestionObservation($this->config);
94
		$modification_observation = $gestionnaire_observation->modifierObservation($uid[0],$uid[1],$pairs);	
94
		$modification_observation = $gestionnaire_observation->modifierObservation($uid[0],$uid[1],$pairs);	
95
		
95
		
-
 
96
		if($champs_etendus != null) {
-
 
97
			$gestion_champs_etendus = new GestionChampsEtendus($this->config, 'obs');
-
 
98
			$id_obs = $gestionnaire_observation->renvoyerIdPourOrdre($uid[0],$uid[1]);
-
 
99
			foreach($champs_etendus as &$champ_etendu) {
96
		if($champs_etendus != null) {
100
	 			$objet_champ_etendu = new ChampEtendu();
-
 
101
	 			$objet_champ_etendu->id = $id_obs;
97
			$gestion_champs_etendus = new GestionChampsEtendus($this->config, 'obs');
102
	 			$objet_champ_etendu->cle = $champ_etendu['cle'];
-
 
103
	 			$objet_champ_etendu->label = $champ_etendu['label'];		
-
 
104
	 			$objet_champ_etendu->valeur = $champ_etendu['valeur'];	
98
			$id_obs = $gestionnaire_observation->renvoyerIdPourOrdre($uid[0],$uid[1]);
105
	 			$champ_etendu = $objet_champ_etendu;
99
			foreach($champs_etendus as $cle => $valeur) {
106
	 		}
100
				$gestion_champs_etendus->modifierChampEtendu($id_obs, $cle, $valeur);
107
	 		// ajouterParLots modifie les champs et ajoute ceux qui existent déjà
101
			}
108
	 		$champs_supp = $gestion_champs_etendus->ajouterParLots($champs_etendus);
Line 102... Line 109...
102
		}
109
		}
103
       	 
110
		       	 
104
        return true;
111
        return true;
Line 105... Line 112...
105
	}
112
	}
106
 
113
 
Line 107... Line 114...
107
	function createElement($pairs) {
114
	function createElement($pairs) {
108
	 	// Controle detournement utilisateur
115
	 	// Controle detournement utilisateur
Line 109... Line 116...
109
	 	$this->controleUtilisateur($pairs['ce_utilisateur']);
116
	 	$this->controleUtilisateur($pairs['ce_utilisateur']);
110
	 	
117
	 	
-
 
118
	 	$champs_etendus = isset($pairs['obs_etendue']) ? json_decode($pairs['obs_etendue'],true) : null;
-
 
119
	 	unset($pairs['obs_etendue']);
-
 
120
	 	
-
 
121
	 	$gestionnaire_observation = new GestionObservation($this->config);
-
 
122
	 	$id_nouvelle_obs = $gestionnaire_observation->ajouterObservation($pairs['ce_utilisateur'], $pairs);
-
 
123
 
-
 
124
	 	if($champs_etendus != null) {
-
 
125
	 		$gestion_champs_etendus = new GestionChampsEtendus($this->config, 'obs');
-
 
126
	 		foreach($champs_etendus as &$champ_etendu) {
111
	 	$champs_etendus = isset($pairs['obs_etendue']) ? $pairs['obs_etendue'] : null;
127
	 			$objet_champ_etendu = new ChampEtendu();
112
	 	$this->supprimerChampsEtendusDesParametres($pairs);
128
	 			$objet_champ_etendu->id = $id_nouvelle_obs;
Line 113... Line 129...
113
	 	
129
	 			$objet_champ_etendu->cle = $champ_etendu['cle'];
114
	 	$gestionnaire_observation = new GestionObservation($this->config);
130
	 			$objet_champ_etendu->label = $champ_etendu['label'];		
Line 115... Line -...
115
	 	$id_nouvelle_obs = $gestionnaire_observation->ajouterObservation($pairs['ce_utilisateur'], $pairs);
-
 
116
 
-
 
117
	 	if($champs_etendus != null) {
-
 
118
	 		$gestion_champs_etendus = new GestionChampsEtendus($this->config, 'obs');
-
 
119
	 		$champs_supp = $gestion_champs_etendus->ajouterChampsEtendusMultiples($id_nouvelle_obs, $champs_etendus);
-
 
120
	 	}
-
 
121
	 	
-
 
122
        return true;
-
 
123
	}
-
 
124
	
131
	 			$objet_champ_etendu->valeur = $champ_etendu['valeur'];	
125
	function supprimerChampsEtendusDesParametres(&$parametres) {
132
	 			$champ_etendu = $objet_champ_etendu;
126
		unset($parametres['obs_etendue']);
133
	 		}
127
		foreach($parametres as $cle => $valeur) {
134
 
128
			if(strpos($cle, "obs_etendue") === 0) {
135
	 		$champs_supp = $gestion_champs_etendus->ajouterParLots($champs_etendus);
Line 146... Line 153...
146
			//TODO: envoyer un message d'erreur
153
			//TODO: envoyer un message d'erreur
147
			return;	
154
			return;	
148
		}
155
		}
Line 149... Line 156...
149
		
156
		
150
		$uid[1] = rtrim($uid[1],',');
-
 
151
		
157
		$uid[1] = rtrim($uid[1],',');
Line 152... Line 158...
152
		$id_obs = $gestionnaire_observation->renvoyerIdPourOrdre($uid[0],$uid[1]);
158
		$id_obs = $gestionnaire_observation->renvoyerIdPourOrdre($uid[0],$uid[1]);
153
		
159
		
Line 154... Line 160...
154
		$gestionnaire_observation = new GestionObservation($this->config);
160
		$gestionnaire_observation = new GestionObservation($this->config);
155
		$suppression_observation = $gestionnaire_observation->supprimerObservation($uid[0],$uid[1]);	
161
		$suppression_observation = $gestionnaire_observation->supprimerObservation($uid[0],$uid[1]);	
Line 156... Line 162...
156
		
162
		
157
		$gestion_champs_etendus = new GestionChampsEtendus($this->config, 'obs');
163
		$gestion_champs_etendus = new GestionChampsEtendus($this->config, 'obs');
158
		$champs_supp = $gestion_champs_etendus->supprimerChampsEtendusAElement($id_obs);
164
		$champs_supp = $gestion_champs_etendus->vider($id_obs);