Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 2623 Rev 2636
1
/**
1
/**
2
 David Delon david.delon@clapas.net 2007
2
 David Delon david.delon@clapas.net 2007
3
 
3
 
4
 */
4
 */
5
 
5
 
6
/*
6
/*
7
 * EtatConnexionVue.java  : affichage information portant sur le statut de la connexion utilisateur
7
 * EtatConnexionVue.java  : affichage information portant sur le statut de la connexion utilisateur
8
 * 
8
 * 
9
 * 
9
 * 
10
 * 1: Le programme affiche le statut connecte si l'utilisateur s'est connecte precedemment, sinon s'affiche le statut deconnecte
10
 * 1: Le programme affiche le statut connecte si l'utilisateur s'est connecte precedemment, sinon s'affiche le statut deconnecte
11
 * 2: Le programme arme les actions liees a la connection ou a la deconnection
11
 * 2: Le programme arme les actions liees a la connection ou a la deconnection
12
 *    - Connection : affichage de la boite de connexion
12
 *    - Connection : affichage de la boite de connexion
13
 *    - Deconnexion : appel du service de deconnexion, et appel de la re-initialisation de l'affichage pour le nouvel identifiant utilisateur obtenu (identifiant  de session)
13
 *    - Deconnexion : appel du service de deconnexion, et appel de la re-initialisation de l'affichage pour le nouvel identifiant utilisateur obtenu (identifiant  de session)
14
 */
14
 */
15
 
15
 
16
package org.tela_botanica.client.vues;
16
package org.tela_botanica.client.vues;
17
 
17
 
18
import org.tela_botanica.client.CarnetEnLigneMediateur;
18
import org.tela_botanica.client.CarnetEnLigneMediateur;
19
import org.tela_botanica.client.i18n.Msg;
19
import org.tela_botanica.client.i18n.Msg;
20
import org.tela_botanica.client.modeles.objets.Configuration;
20
import org.tela_botanica.client.modeles.objets.Configuration;
21
 
21
 
22
import com.google.gwt.http.client.URL;
22
import com.google.gwt.http.client.URL;
23
import com.google.gwt.user.client.Window;
23
import com.google.gwt.user.client.Window;
24
import com.gwtext.client.core.EventCallback;
24
import com.gwtext.client.core.EventCallback;
25
import com.gwtext.client.core.EventObject;
25
import com.gwtext.client.core.EventObject;
26
import com.gwtext.client.core.Ext;
26
import com.gwtext.client.core.Ext;
27
import com.gwtext.client.core.ExtElement;
27
import com.gwtext.client.core.ExtElement;
28
import com.gwtext.client.widgets.Container;
28
import com.gwtext.client.widgets.Container;
29
import com.gwtext.client.widgets.Panel;
29
import com.gwtext.client.widgets.Panel;
30
import com.gwtext.client.widgets.event.ContainerListenerAdapter;
30
import com.gwtext.client.widgets.event.ContainerListenerAdapter;
31
 
31
 
32
/**
32
/**
33
 * Un indicateur d'etat de connexion
33
 * Un indicateur d'etat de connexion
34
 * 
34
 * 
35
 * @author David Delon
35
 * @author David Delon
36
 *
36
 *
37
 */
37
 */
38
 
38
 
39
public class EtatConnexionVue  extends Panel  {
39
public class EtatConnexionVue  extends Panel  {
40
 
40
 
41
	/**
41
	/**
42
	 * Médiateur associé à la vue
42
	 * Médiateur associé à la vue
43
	 */
43
	 */
44
	private CarnetEnLigneMediateur carnetEnLigneMediateur = null ;	
44
	private CarnetEnLigneMediateur carnetEnLigneMediateur = null ;	
45
	
45
	
46
  /**
46
  /**
47
   * Texte lié à la connexion.
47
   * Texte lié à la connexion.
48
   * 
48
   * 
49
   */
49
   */
50
  
50
  
51
  private String labelEtatConnexion = null;
51
  private String labelEtatConnexion = null;
52
 
52
 
53
  /**
53
  /**
54
   * Ouh c'est pas beau, ça ! Mais avec Google Web Toolshit, ça
54
   * Ouh c'est pas beau, ça ! Mais avec Google Web Toolshit, ça
55
   * marche toujours mieux que quand on fait des trucs beaux :-)
55
   * marche toujours mieux que quand on fait des trucs beaux :-)
56
   */
56
   */
57
  private String liens = "<div id=\"liensExt\">"
57
  private String liens = "<div id=\"liensExt\">"
58
		  + "<a id=\"lienRemarques\" title=\""+Msg.get("adresser-remarque-probleme")+"\""
58
		  + "<a id=\"lienRemarques\" title=\""+Msg.get("adresser-remarque-probleme")+"\""
59
		  + 	" href=\"" + Configuration.getRemarquesBaseUrl() + "?service=" + Configuration.getServiceContact()
59
		  + 	" href=\"" + Configuration.getRemarquesBaseUrl() + "?lang=" + Msg.getLangue() + "&service=" + Configuration.getServiceContact()
60
		  + 	"&pageSource=" + URL.encodeQueryString(Window.Location.getHref()) + "\""
60
		  + 	"&pageSource=" + URL.encodeQueryString(Window.Location.getHref()) + "\""
61
		  + " onClick=\"javascript:window.open(this.getAttribute('href'), 'Tela Botanica - Remarques', config='height=700, width=640, scrollbars=yes, resizable=yes'); return false;\""
61
		  + " onClick=\"javascript:window.open(this.getAttribute('href'), 'Tela Botanica - Remarques', config='height=700, width=640, scrollbars=yes, resizable=yes'); return false;\""
62
		  + " target=\"_blank\""
62
		  + " target=\"_blank\""
63
		  + ">"+Msg.get("remarques")+"</a>"
63
		  + ">"+Msg.get("remarques")+"</a>"
64
		  + "<a href=\"#\" id=\"lienAide\">"+Msg.get("aide")+"</a>"
64
		  + "<a href=\"#\" id=\"lienAide\">"+Msg.get("aide")+"</a>"
65
		  + "</div>" ;
65
		  + "</div>" ;
66
  
66
  
67
  /**
67
  /**
68
   * Booleen indiquant si utilisateur est connecte 
68
   * Booleen indiquant si utilisateur est connecte 
69
   * 
69
   * 
70
   */
70
   */
71
  public EtatConnexionVue(CarnetEnLigneMediateur cm)  {
71
  public EtatConnexionVue(CarnetEnLigneMediateur cm)  {
72
	  
72
	  
73
	carnetEnLigneMediateur=cm;
73
	carnetEnLigneMediateur=cm;
74
 
74
 
75
    this.setBodyBorder(false) ;
75
    this.setBodyBorder(false) ;
76
    this.setBorder(false) ;
76
    this.setBorder(false) ;
77
    this.setId("panneau_etat_connexion");
77
    this.setId("panneau_etat_connexion");
78
	
78
	
79
	// Pas de word wrap
79
	// Pas de word wrap
80
	labelEtatConnexion="";
80
	labelEtatConnexion="";
81
	
81
	
82
	this.setHtml(labelEtatConnexion+liens);
82
	this.setHtml(labelEtatConnexion+liens);
83
 
83
 
84
	
84
	
85
	ajouterListeners();
85
	ajouterListeners();
86
	
86
	
87
		
87
		
88
  	}
88
  	}
89
	
89
	
90
   public void ajouterListeners() {
90
   public void ajouterListeners() {
91
		
91
		
92
	   ExtElement lienAide = Ext.get("lienAide");
92
	   ExtElement lienAide = Ext.get("lienAide");
93
		if(lienAide != null) 
93
		if(lienAide != null) 
94
		{	
94
		{	
95
			lienAide.removeAllListeners();
95
			lienAide.removeAllListeners();
96
			lienAide.addListener("click", new EventCallback() {
96
			lienAide.addListener("click", new EventCallback() {
97
	
97
	
98
				@Override
98
				@Override
99
				public void execute(EventObject e) {
99
				public void execute(EventObject e) {
100
					String aideUrl = Configuration.getAideBaseUrl() ;
100
					String aideUrl = Configuration.getAideBaseUrl() ;
101
					Window.open(aideUrl, "", "") ;		
101
					Window.open(aideUrl, "", "") ;		
102
				}
102
				}
103
			});
103
			});
104
		}
104
		}
105
		else
105
		else
106
		{
106
		{
107
			addListener(new ContainerListenerAdapter() {
107
			addListener(new ContainerListenerAdapter() {
108
				@Override
108
				@Override
109
				public void onAfterLayout(Container c) {
109
				public void onAfterLayout(Container c) {
110
					
110
					
111
					ExtElement lienAide = Ext.get("lienAide");
111
					ExtElement lienAide = Ext.get("lienAide");
112
					if(lienAide != null) 
112
					if(lienAide != null) 
113
					{	
113
					{	
114
						lienAide.removeAllListeners();
114
						lienAide.removeAllListeners();
115
						lienAide.addListener("click", new EventCallback() {
115
						lienAide.addListener("click", new EventCallback() {
116
				
116
				
117
							@Override
117
							@Override
118
							public void execute(EventObject e) {
118
							public void execute(EventObject e) {
119
								String aideUrl = Configuration.getAideBaseUrl() ;
119
								String aideUrl = Configuration.getAideBaseUrl() ;
120
								Window.open(aideUrl, "", "") ;		
120
								Window.open(aideUrl, "", "") ;		
121
							}
121
							}
122
						});
122
						});
123
					}
123
					}
124
				}
124
				}
125
			});
125
			});
126
		}
126
		}
127
	}
127
	}
128
 
128
 
129
/**
129
/**
130
 * Affichage de l'etat de connexion
130
 * Affichage de l'etat de connexion
131
 * @param text
131
 * @param text
132
 * @param connecte
132
 * @param connecte
133
 */
133
 */
134
public void setEtat(String identifiant, boolean connecte) {
134
public void setEtat(String identifiant, boolean connecte) {
135
 
135
 
136
	if(connecte) {
136
	if(connecte) {
137
		String[] params = {identifiant};
137
		String[] params = {identifiant};
138
		labelEtatConnexion = "<div id=\"etatConnexion\">"+Msg.get("connecte-en-tant-que", params)+" <a id=\"lienDeconnexion\" href=\"#\">("+Msg.get("deconnexion")+")</a>" ;
138
		labelEtatConnexion = "<div id=\"etatConnexion\">"+Msg.get("connecte-en-tant-que", params)+" <a id=\"lienDeconnexion\" href=\"#\">("+Msg.get("deconnexion")+")</a>" ;
139
		labelEtatConnexion += "</div>" ;
139
		labelEtatConnexion += "</div>" ;
140
		
140
		
141
		
141
		
142
		labelEtatConnexion += liens ;
142
		labelEtatConnexion += liens ;
143
		setHtml(labelEtatConnexion);
143
		setHtml(labelEtatConnexion);
144
 
144
 
145
		ExtElement lienDeco = Ext.get("lienDeconnexion");
145
		ExtElement lienDeco = Ext.get("lienDeconnexion");
146
		if(lienDeco != null) 
146
		if(lienDeco != null) 
147
		{
147
		{
148
			lienDeco.addListener("click", new EventCallback() {
148
			lienDeco.addListener("click", new EventCallback() {
149
 
149
 
150
				@Override
150
				@Override
151
				public void execute(EventObject e) {
151
				public void execute(EventObject e) {
152
					carnetEnLigneMediateur.deconnecterUtilisateur();
152
					carnetEnLigneMediateur.deconnecterUtilisateur();
153
				}
153
				}
154
				
154
				
155
			});
155
			});
156
		}
156
		}
157
		else
157
		else
158
		{
158
		{
159
			addListener(new ContainerListenerAdapter() 
159
			addListener(new ContainerListenerAdapter() 
160
			{
160
			{
161
				@Override
161
				@Override
162
				public void onAfterLayout(Container c) 
162
				public void onAfterLayout(Container c) 
163
				{
163
				{
164
					ExtElement lienDeco = Ext.get("etatConnexion");
164
					ExtElement lienDeco = Ext.get("etatConnexion");
165
					
165
					
166
					lienDeco.addListener("click", new EventCallback() {
166
					lienDeco.addListener("click", new EventCallback() {
167
 
167
 
168
						@Override
168
						@Override
169
						public void execute(EventObject e) {
169
						public void execute(EventObject e) {
170
							carnetEnLigneMediateur.deconnecterUtilisateur();
170
							carnetEnLigneMediateur.deconnecterUtilisateur();
171
							setEtat(null, false);
171
							setEtat(null, false);
172
						}
172
						}
173
						
173
						
174
					});
174
					});
175
				}
175
				}
176
			});
176
			});
177
		}
177
		}
178
	}
178
	}
179
	else
179
	else
180
	{
180
	{
181
		labelEtatConnexion = "<div id=\"etatConnexion\"> "+Msg.get("cel-utilisation")+", <a id=\"lienConnexion\" href=\"#\">"+Msg.get("identifiez-vous")+"</a> "+Msg.get("pour-transmettre-tela")+"</div>";
181
		labelEtatConnexion = "<div id=\"etatConnexion\"> "+Msg.get("cel-utilisation")+", <a id=\"lienConnexion\" href=\"#\">"+Msg.get("identifiez-vous")+"</a> "+Msg.get("pour-transmettre-tela")+"</div>";
182
		labelEtatConnexion += liens ;
182
		labelEtatConnexion += liens ;
183
		setHtml(labelEtatConnexion);
183
		setHtml(labelEtatConnexion);
184
		ExtElement lienCo = Ext.get("etatConnexion");
184
		ExtElement lienCo = Ext.get("etatConnexion");
185
		if(lienCo != null) {
185
		if(lienCo != null) {
186
			lienCo.addListener("click", new EventCallback() {
186
			lienCo.addListener("click", new EventCallback() {
187
 
187
 
188
				@Override
188
				@Override
189
				public void execute(EventObject e) {
189
				public void execute(EventObject e) {
190
					
190
					
191
					carnetEnLigneMediateur.afficherDialogueConnexion();
191
					carnetEnLigneMediateur.afficherDialogueConnexion();
192
				}
192
				}
193
				
193
				
194
			});
194
			});
195
		}
195
		}
196
		else 
196
		else 
197
		{
197
		{
198
			addListener(new ContainerListenerAdapter() {
198
			addListener(new ContainerListenerAdapter() {
199
				@Override
199
				@Override
200
				public void onAfterLayout(Container c) {
200
				public void onAfterLayout(Container c) {
201
					
201
					
202
					ExtElement lienCo = Ext.get("etatConnexion");
202
					ExtElement lienCo = Ext.get("etatConnexion");
203
					
203
					
204
					lienCo.addListener("click", new EventCallback() {
204
					lienCo.addListener("click", new EventCallback() {
205
 
205
 
206
						@Override
206
						@Override
207
						public void execute(EventObject e) {
207
						public void execute(EventObject e) {
208
							
208
							
209
							carnetEnLigneMediateur.afficherDialogueConnexion();
209
							carnetEnLigneMediateur.afficherDialogueConnexion();
210
						}
210
						}
211
						
211
						
212
					});
212
					});
213
				}
213
				}
214
			});
214
			});
215
		}
215
		}
216
	}
216
	}
217
		
217
		
218
	ExtElement lienAide = Ext.get("lienAide");
218
	ExtElement lienAide = Ext.get("lienAide");
219
	if(lienAide != null) 
219
	if(lienAide != null) 
220
	{	
220
	{	
221
		lienAide.removeAllListeners();
221
		lienAide.removeAllListeners();
222
		lienAide.addListener("click", new EventCallback() {
222
		lienAide.addListener("click", new EventCallback() {
223
 
223
 
224
			@Override
224
			@Override
225
			public void execute(EventObject e) {
225
			public void execute(EventObject e) {
226
				String aideUrl = Configuration.getAideBaseUrl() ;
226
				String aideUrl = Configuration.getAideBaseUrl() ;
227
				Window.open(aideUrl, "", "") ;		
227
				Window.open(aideUrl, "", "") ;		
228
			}
228
			}
229
		});
229
		});
230
	}
230
	}
231
	else
231
	else
232
	{
232
	{
233
		addListener(new ContainerListenerAdapter() {
233
		addListener(new ContainerListenerAdapter() {
234
			@Override
234
			@Override
235
			public void onAfterLayout(Container c) {
235
			public void onAfterLayout(Container c) {
236
				
236
				
237
				ExtElement lienAide = Ext.get("lienAide");
237
				ExtElement lienAide = Ext.get("lienAide");
238
				if(lienAide != null) 
238
				if(lienAide != null) 
239
				{	
239
				{	
240
					lienAide.removeAllListeners();
240
					lienAide.removeAllListeners();
241
					lienAide.addListener("click", new EventCallback() {
241
					lienAide.addListener("click", new EventCallback() {
242
			
242
			
243
						@Override
243
						@Override
244
						public void execute(EventObject e) {
244
						public void execute(EventObject e) {
245
							String aideUrl = Configuration.getAideBaseUrl() ;
245
							String aideUrl = Configuration.getAideBaseUrl() ;
246
							Window.open(aideUrl, "", "") ;		
246
							Window.open(aideUrl, "", "") ;		
247
						}
247
						}
248
					});
248
					});
249
				}
249
				}
250
			}
250
			}
251
		});
251
		});
252
	}
252
	}
253
 
253
 
254
	
254
	
255
}
255
}
256
 
256
 
257
}
257
}
258
 
258
 
259
 
259
 
260
/* +--Fin du code ---------------------------------------------------------------------------------------+
260
/* +--Fin du code ---------------------------------------------------------------------------------------+
261
* $Log$
261
* $Log$
262
* Revision 1.1  2008-11-13 11:27:05  ddelon
262
* Revision 1.1  2008-11-13 11:27:05  ddelon
263
* Reecriture gwt-ext
263
* Reecriture gwt-ext
264
*
264
*
265
* Revision 1.1  2008-06-09 14:19:37  ddelon
265
* Revision 1.1  2008-06-09 14:19:37  ddelon
266
* Initialisation observation
266
* Initialisation observation
267
*
267
*
268
* Revision 1.2  2008-04-28 13:10:44  ddelon
268
* Revision 1.2  2008-04-28 13:10:44  ddelon
269
* Integration MyGwt
269
* Integration MyGwt
270
*
270
*
271
* Revision 1.1  2008-01-02 21:26:04  ddelon
271
* Revision 1.1  2008-01-02 21:26:04  ddelon
272
* mise en place mygwt
272
* mise en place mygwt
273
*
273
*
274
* Revision 1.6  2007-12-22 14:48:53  ddelon
274
* Revision 1.6  2007-12-22 14:48:53  ddelon
275
* Documentation et refactorisation
275
* Documentation et refactorisation
276
*
276
*
277
* Revision 1.5  2007-09-17 19:25:34  ddelon
277
* Revision 1.5  2007-09-17 19:25:34  ddelon
278
* Documentation
278
* Documentation
279
*
279
*
280
* 
280
* 
281
*/
281
*/