Subversion Repositories eFlore/Applications.cel

Rev

Rev 2 | Rev 12 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2 Rev 7
1
package org.tela_botanica.client.observation;
1
package org.tela_botanica.client.observation;
2
 
-
 
3
 
-
 
4
 
-
 
5
 
2
 
6
import org.tela_botanica.client.CarnetEnLigneMediateur;
3
import org.tela_botanica.client.CarnetEnLigneMediateur;
7
import org.tela_botanica.client.interfaces.iMediateur;
4
import org.tela_botanica.client.interfaces.iMediateur;
8
import org.tela_botanica.client.interfaces.iRetourObservation;
5
import org.tela_botanica.client.interfaces.iRetourObservation;
9
import org.tela_botanica.client.modeles.Observation;
6
import org.tela_botanica.client.modeles.Observation;
10
 
7
 
11
import com.google.gwt.user.client.Window;
8
import com.google.gwt.user.client.Window;
12
import com.google.gwt.user.client.ui.RootPanel;
9
import com.google.gwt.user.client.ui.RootPanel;
13
import com.google.gwt.user.client.ui.VerticalPanel;
10
import com.google.gwt.user.client.ui.VerticalPanel;
14
 
11
 
15
public class ObservationMediateur implements iMediateur{
-
 
16
 
12
public class ObservationMediateur implements iMediateur {
17
 
13
 
18
	// Evenenements
14
	// Evenenements
19
	final static public  int NOMBRE_OBSERVATION=1;
-
 
20
 
-
 
21
	final static public  int LISTE_OBSERVATION=2;
-
 
22
	
-
 
-
 
15
	final static public int NOMBRE_OBSERVATION = 1;
-
 
16
 
23
	
17
	final static public int LISTE_OBSERVATION = 2;
-
 
18
 
-
 
19
	private CarnetEnLigneMediateur carnetEnLigneMediateur = null; // Mediateur
24
	private CarnetEnLigneMediateur carnetEnLigneMediateur=null;  // Mediateur General
20
																	// General
25
	private final ObservationModele observationModele=new ObservationModele();
21
	private final ObservationModele observationModele = new ObservationModele();
26
 
22
 
27
	private Observation observation=null; 
23
	private Observation observation = null;
28
 
24
 
-
 
25
	// Variable interne
29
	// Variable interne 
26
	private final String texteDeconnexion = "Utilisez ce carnet en ligne pour saisir vos observations, <u>identifiez-vous</u> pour les transmettre à Tela Botanica";
-
 
27
 
-
 
28
	// Composants graphiques
-
 
29
 
30
	private final String texteDeconnexion="Utilisez ce carnet en ligne pour saisir vos observations, <u>identifiez-vous</u> pour les transmettre à Tela Botanica"; 
30
	private EtatConnexionVue etatConnexionVue = null; // Vue Etat de la
-
 
31
														// connexion utilisateur
31
 
32
	private FormulaireDeConnexionVue formulaireDeConnexionVue = null; // Formulaire
32
	// Composants graphiques
33
																		// de
33
	
-
 
34
	private EtatConnexionVue etatConnexionVue=null; // Vue Etat de la connexion utilisateur
34
																		// connexion
35
	private FormulaireDeConnexionVue formulaireDeConnexionVue=null; // Formulaire de connexion utilisateur
35
																		// utilisateur
36
	private ListeObservationsVue listeObservationsVue = null;  // Liste de releves
-
 
37
 
36
	private ListeObservationsVue listeObservationsVue = null; // Liste de
38
    // 
37
																// releves
39
		
38
 
40
	
39
	// 
41
	public ObservationMediateur(CarnetEnLigneMediateur carnetEnLigneMediateur) {
40
 
42
		
41
	public ObservationMediateur(CarnetEnLigneMediateur carnetEnLigneMediateur) {
43
 
42
 
44
		this.carnetEnLigneMediateur=carnetEnLigneMediateur;
43
		this.carnetEnLigneMediateur = carnetEnLigneMediateur;
45
		
44
 
46
		etatConnexionVue=new EtatConnexionVue(this);
45
		etatConnexionVue = new EtatConnexionVue(this);
47
		listeObservationsVue=new ListeObservationsVue(this);
-
 
48
		
46
		listeObservationsVue = new ListeObservationsVue(this);
49
		VerticalPanel panel=new VerticalPanel();
47
 
50
		
48
		VerticalPanel panel = new VerticalPanel();
51
		panel.add(etatConnexionVue);
49
 
52
	
50
		panel.add(etatConnexionVue);
53
		panel.add(listeObservationsVue);
-
 
54
	
51
 
55
 
52
		panel.add(listeObservationsVue);
56
		RootPanel.get().add(panel);
53
 
57
		
54
		RootPanel.get().add(panel);
58
		onInitialisation();
55
 
59
		
56
		onInitialisation();
60
	}
57
 
61
 
58
	}
62
	
59
 
63
	/// Methodes privees 
60
	// / Methodes privees
64
 
61
 
65
	/**
62
	/**
66
	 * 
63
	 * 
67
	 * Initialisations
64
	 * Initialisations
68
	 * 
65
	 * 
69
	 */
66
	 */
70
	
67
 
71
	private void onInitialisation() {
68
	private void onInitialisation() {
72
	
-
 
73
	
69
 
74
		afficheEtatConnexion();
70
		afficheEtatConnexion();
75
		onFiltrageListeObservation("all","all","all");
71
		onFiltrageListeObservation("all", "all", "all");
76
		
72
 
77
	
-
 
78
	}
73
	}
79
	
74
 
80
	// Filtre  selection lieu
75
	// Filtre selection lieu
81
	
76
 
82
	/**
77
	/**
83
	 * Action sur selection d'un lieu : affichage de la liste des taxons correspondants au filtrage
78
	 * Action sur selection d'un lieu : affichage de la liste des taxons
-
 
79
	 * correspondants au filtrage
84
	 */
80
	 */
85
	
81
 
86
	public void onFiltrageListeObservation(String id_loc, String loc,String lieu) {
82
	public void onFiltrageListeObservation(String id_loc, String loc,
-
 
83
			String lieu) {
87
 
84
 
88
		// Positionnement Filtre affichage
85
		// Positionnement Filtre affichage
89
		listeObservationsVue.setIdLocation(id_loc);
86
		listeObservationsVue.setIdLocation(id_loc);
90
		listeObservationsVue.setLocalite(loc);
87
		listeObservationsVue.setLocalite(loc);
91
		listeObservationsVue.setLieudit(lieu);
88
		listeObservationsVue.setLieudit(lieu);
92
		listeObservationsVue.initialiser();
89
		listeObservationsVue.initialiser();
93
 
90
 
94
		// Affichage des filtres
91
		// Affichage des filtres
95
		listeObservationsVue.displayFilter();
92
		listeObservationsVue.displayFilter();
96
 
-
 
97
		
93
 
98
	}
-
 
-
 
94
	}
99
	
-
 
100
 
-
 
101
 
-
 
102
 
-
 
103
	
-
 
104
	/// UTILISATEUR
95
 
105
 
96
	// / UTILISATEUR
106
	
97
 
107
	/**
-
 
108
	 *  Affichage etat de la connexion
98
	/**
109
	 */
99
	 * Affichage etat de la connexion
110
	
100
	 */
111
	
101
 
112
	private void afficheEtatConnexion() {
-
 
113
		 if (!carnetEnLigneMediateur.getUtilisateur().isIdentifie()) {
102
	private void afficheEtatConnexion() {
114
			    etatConnexionVue.setEtat(texteDeconnexion,false);
103
		if (!carnetEnLigneMediateur.getUtilisateur().isIdentifie()) {
-
 
104
			etatConnexionVue.setEtat(texteDeconnexion, false);
-
 
105
		} else {
115
		 }
106
			etatConnexionVue.setEtat(carnetEnLigneMediateur.getUtilisateur()
116
		 else {
107
					.getIdentifiant()
117
		    etatConnexionVue.setEtat(carnetEnLigneMediateur.getUtilisateur().getIdentifiant()+ " (deconnexion)",true);
108
					+ " (deconnexion)", true);
118
		 }
-
 
119
		
109
		}
120
	}
110
 
121
 
111
	}
122
	
112
 
123
	/**
113
	/**
124
	 * 
114
	 * 
125
	 * Affichage boite de connexion
115
	 * Affichage boite de connexion
126
	 *
116
	 * 
127
	 */
117
	 */
128
	
118
 
129
	public void afficherDialogueConnexion() {
119
	public void afficherDialogueConnexion() {
130
		
-
 
131
		  // TODO : singleton ? 
-
 
132
		  formulaireDeConnexionVue = new FormulaireDeConnexionVue(this);
-
 
-
 
120
 
-
 
121
		// TODO : singleton ?
-
 
122
		formulaireDeConnexionVue = new FormulaireDeConnexionVue(this);
133
 
123
 
134
		  // Position it roughly in the middle of the screen.
124
		// Position it roughly in the middle of the screen.
135
		  int left = (Window.getClientWidth() - 512) / 2;
125
		int left = (Window.getClientWidth() - 512) / 2;
136
		  int top = (Window.getClientHeight() - 256) / 2;
126
		int top = (Window.getClientHeight() - 256) / 2;
137
		  formulaireDeConnexionVue.setPopupPosition(left, top);
127
		formulaireDeConnexionVue.setPopupPosition(left, top);
138
		  formulaireDeConnexionVue.show();
128
		formulaireDeConnexionVue.show();
139
		
129
 
140
	}
-
 
141
 
130
	}
142
	
131
 
143
	/**
132
	/**
144
	 * Deconnexion de l'utilisateur en cours 
133
	 * Deconnexion de l'utilisateur en cours
145
	 */
134
	 */
146
	
135
 
147
	public void deconnecterUtilisateur() {
136
	public void deconnecterUtilisateur() {
148
		
137
 
149
	//	carnetEnLigneMediateur.addListener(CarnetEnLigneMediateur.DECONNEXION,this);
-
 
150
		carnetEnLigneMediateur.deconnecterUtilisateur();
-
 
-
 
138
		// carnetEnLigneMediateur.addListener(CarnetEnLigneMediateur.DECONNEXION,this);
151
	
139
		carnetEnLigneMediateur.deconnecterUtilisateur();
152
	}
140
 
153
 
141
	}
154
 
142
 
155
	/**
143
	/**
156
	 * Tentative de connexion utilisateur
144
	 * Tentative de connexion utilisateur
-
 
145
	 * 
157
	 * @param login
146
	 * @param login
158
	 * @param password
147
	 * @param password
159
	 */
148
	 */
160
	
-
 
161
	
149
 
162
	public void connecterUtilisateur(String login, String password) {
150
	public void connecterUtilisateur(String login, String password) {
163
		
151
 
164
	//	carnetEnLigneMediateur.addListener(CarnetEnLigneMediateur.CONNEXION,this);
152
		// carnetEnLigneMediateur.addListener(CarnetEnLigneMediateur.CONNEXION,this);
165
		carnetEnLigneMediateur.connecterUtilisateur(login, password);
153
		carnetEnLigneMediateur.connecterUtilisateur(login, password);
166
 
154
 
167
	}
155
	}
168
 
-
 
-
 
156
 
169
 
-
 
170
 
-
 
171
	/// OBSERVATION
157
	// / OBSERVATION
172
	
158
 
-
 
159
	/**
173
	/**
160
	 * Recherche nombre d'enregistrement pour l'utilisateur et la localite en
174
	 * Recherche nombre d'enregistrement pour l'utilisateur et la localite en cours
161
	 * cours
175
	 * 
-
 
176
	 */
-
 
177
	
-
 
178
	
-
 
179
	public void getNombreObservation (String identifiantLocalite, String localite, String annee,  String mois,  String jour, String lieudit, String rechercheLibre ) {
162
	 * 
-
 
163
	 */
180
		
164
 
-
 
165
	public void getNombreObservation(String identifiantLocalite,
-
 
166
			String localite, String annee, String mois, String jour,
181
 
167
			String lieudit, String rechercheLibre) {
182
		observationModele.getNombreObservation(
168
 
183
				new iRetourObservation() {
169
		observationModele.getNombreObservation(new iRetourObservation() {
184
					public void onRetour(Observation obs) {
170
			public void onRetour(Observation obs) {
-
 
171
				observation = obs;
-
 
172
				// fireEvent(NOMBRE_OBSERVATION);
-
 
173
			}
-
 
174
 
185
						observation=obs;
-
 
186
						//fireEvent(NOMBRE_OBSERVATION); 
-
 
187
					}
-
 
188
 
175
		}, carnetEnLigneMediateur.getUtilisateur().getIdentifiant(),
189
					
-
 
190
				}, carnetEnLigneMediateur.getUtilisateur().getIdentifiant(), identifiantLocalite, localite , annee, mois, jour, lieudit ,rechercheLibre
-
 
191
				
-
 
192
		);
-
 
193
		
-
 
-
 
176
				identifiantLocalite, localite, annee, mois, jour, lieudit,
-
 
177
				rechercheLibre
-
 
178
 
-
 
179
		);
194
		
180
 
195
		  
181
	}
196
	}
-
 
197
 
182
 
198
	 public void getListeObservation (String identifiantLocalite, String localite, String annee, String mois, String jour, String lieudit, String rechercheLibre, int debut, int longueur) {
183
	public void getListeObservation(String identifiantLocalite,
199
 
184
			String localite, String annee, String mois, String jour,
200
			
185
			String lieudit, String rechercheLibre, int debut, int longueur) {
-
 
186
 
-
 
187
		observationModele.getListeObservation(new iRetourObservation() {
-
 
188
			public void onRetour(Observation obs) {
-
 
189
				observation = obs;
201
			observationModele.getListeObservation(
-
 
202
					new iRetourObservation() {
-
 
203
						public void onRetour(Observation obs) {
-
 
204
							observation=obs;
190
				// fireEvent(LISTE_OBSERVATION);
205
							//fireEvent(LISTE_OBSERVATION); 
191
			}
206
						}
192
 
207
 
193
		}, carnetEnLigneMediateur.getUtilisateur().getIdentifiant(),
208
						
194
				identifiantLocalite, localite, annee, mois, jour, lieudit,
209
					}, carnetEnLigneMediateur.getUtilisateur().getIdentifiant(), identifiantLocalite, localite , annee, mois, jour, lieudit ,rechercheLibre, debut, longueur
195
				rechercheLibre, debut, longueur
210
					
196
 
211
			);
197
		);
212
 
198
 
213
	}
199
	}
214
 
-
 
215
 
-
 
216
			
200
 
217
	 public Observation getObservation() {
201
	public Observation getObservation() {
218
			return observation;
202
		return observation;
-
 
203
	}
219
	}
-
 
220
 
-
 
221
 
-
 
222
	
-
 
223
 
204
 
224
	/// EVENEMENTS 
205
	// / EVENEMENTS
225
	
206
 
226
/**
207
	/**
227
 * Evenements
208
	 * Evenements
228
 * 
209
	 * 
229
 */	
-
 
230
	/*
210
	 */
231
	public void handleEvent(BaseEvent be) {
-
 
232
		switch (be.type) {
-
 
233
			case CarnetEnLigneMediateur.DECONNEXION:
211
	/*
234
				afficheEtatConnexion();
212
	 * public void handleEvent(BaseEvent be) { switch (be.type) { case
235
				break;
213
	 * CarnetEnLigneMediateur.DECONNEXION: afficheEtatConnexion(); break; case
236
			case CarnetEnLigneMediateur.CONNEXION:
-
 
237
				if (carnetEnLigneMediateur.getUtilisateur().isIdentifie()) {
-
 
238
					formulaireDeConnexionVue.hide(); 
-
 
239
					afficheEtatConnexion();
214
	 * CarnetEnLigneMediateur.CONNEXION: if
240
				}
-
 
241
				else {
215
	 * (carnetEnLigneMediateur.getUtilisateur().isIdentifie()) {
242
					formulaireDeConnexionVue.afficherMessageAlerte(); // Erreur identification
216
	 * formulaireDeConnexionVue.hide(); afficheEtatConnexion(); } else {
243
				}
-
 
244
				break;
-
 
245
		}
217
	 * formulaireDeConnexionVue.afficherMessageAlerte(); // Erreur
246
	}
-
 
247
 
-
 
248
*/
-
 
249
 
-
 
250
 
-
 
251
 
-
 
252
 
218
	 * identification } break; } }
253
 
219
	 * 
254
			
220
	 */
255
 
221
 
256
}
222
}