Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 2630 Rev 2657
1
package org.tela_botanica.client.vues.observation;
1
package org.tela_botanica.client.vues.observation;
-
 
2
 
-
 
3
import java.util.Iterator;
-
 
4
import java.util.Map;
2
 
5
 
3
import org.tela_botanica.client.i18n.Msg;
6
import org.tela_botanica.client.i18n.Msg;
4
import org.tela_botanica.client.modeles.objets.Configuration;
7
import org.tela_botanica.client.modeles.objets.Configuration;
5
import org.tela_botanica.client.modeles.objets.Utilisateur;
8
import org.tela_botanica.client.modeles.objets.Utilisateur;
6
import org.tela_botanica.client.observation.ObservationMediateur;
9
import org.tela_botanica.client.observation.ObservationMediateur;
-
 
10
import org.tela_botanica.client.util.Util;
7
 
11
 
8
import com.google.gwt.user.client.ui.FileUpload;
12
import com.google.gwt.user.client.ui.FileUpload;
9
import com.google.gwt.user.client.ui.FormPanel;
13
import com.google.gwt.user.client.ui.FormPanel;
10
import com.google.gwt.user.client.ui.FormPanel.SubmitCompleteEvent;
14
import com.google.gwt.user.client.ui.FormPanel.SubmitCompleteEvent;
11
import com.google.gwt.user.client.ui.FormPanel.SubmitCompleteHandler;
15
import com.google.gwt.user.client.ui.FormPanel.SubmitCompleteHandler;
12
import com.google.gwt.user.client.ui.HTML;
16
import com.google.gwt.user.client.ui.HTML;
13
import com.google.gwt.user.client.ui.HasAlignment;
17
import com.google.gwt.user.client.ui.HasAlignment;
14
import com.google.gwt.user.client.ui.HasHorizontalAlignment;
18
import com.google.gwt.user.client.ui.HasHorizontalAlignment;
15
import com.google.gwt.user.client.ui.Hidden;
19
import com.google.gwt.user.client.ui.Hidden;
16
import com.google.gwt.user.client.ui.VerticalPanel;
20
import com.google.gwt.user.client.ui.VerticalPanel;
17
import com.gwtext.client.core.EventObject;
21
import com.gwtext.client.core.EventObject;
18
import com.gwtext.client.widgets.Button;
22
import com.gwtext.client.widgets.Button;
19
import com.gwtext.client.widgets.Window;
23
import com.gwtext.client.widgets.Window;
20
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
24
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
21
 
25
 
22
public class FormulaireImportObservationVue {
26
public class FormulaireImportObservationVue {
23
	
27
	
24
	private ObservationMediateur oMediateur = null;
28
	private ObservationMediateur oMediateur = null;
25
	private  Window nPan = null;
29
	private  Window nPan = null;
26
	private Hidden identifiant = null;
30
	private Hidden identifiant = null;
27
	
31
	
28
	
32
	
29
	public FormulaireImportObservationVue(ObservationMediateur om) {
33
	public FormulaireImportObservationVue(ObservationMediateur om) {
30
	
34
	
31
		this.oMediateur = om;
35
		this.oMediateur = om;
32
 
36
 
33
		nPan = new Window(Msg.get("import-observations"));
37
		nPan = new Window(Msg.get("import-observations"));
34
		identifiant = new Hidden();
38
		identifiant = new Hidden();
35
		identifiant.setName("utilisateur");
39
		identifiant.setName("utilisateur");
36
		identifiant.setValue(Utilisateur.getInstance().getIdentifiantUtilisateurConsulte());
40
		identifiant.setValue(Utilisateur.getInstance().getIdentifiantUtilisateurConsulte());
37
		
41
		
38
		final FormPanel form = new FormPanel();
42
		final FormPanel form = new FormPanel();
39
		final Button boutonValidation = new Button(Msg.get("envoyer"));
43
		final Button boutonValidation = new Button(Msg.get("envoyer"));
40
		
44
		
41
		form.setEncoding(FormPanel.ENCODING_MULTIPART);
45
		form.setEncoding(FormPanel.ENCODING_MULTIPART);
42
		form.setMethod(FormPanel.METHOD_POST);
46
		form.setMethod(FormPanel.METHOD_POST);
43
		form.setWidth("275px");
47
		form.setWidth("275px");
44
		nPan.setWidth("275px");
48
		nPan.setWidth("275px");
45
 
49
 
46
		VerticalPanel holder = new VerticalPanel();
50
		VerticalPanel holder = new VerticalPanel();
47
 
51
 
48
		FileUpload upload = new FileUpload();
52
		FileUpload upload = new FileUpload();
49
		upload.setName("upload");
53
		upload.setName("upload");
50
		holder.add(upload);
54
		holder.add(upload);
51
		holder.add(boutonValidation);
55
		holder.add(boutonValidation);
52
		holder.add(identifiant);
56
		holder.add(identifiant);
53
		
57
		
54
		HTML lienVersDocumentModele = new HTML("<a href=\"modele_import.xls\">" + Msg.get("telecharger-modele") + "</a>");
58
		HTML lienVersDocumentModele = new HTML("<a href=\"modele_import.xls\">" + Msg.get("telecharger-modele") + "</a>");
55
		
59
		
56
		holder.add(lienVersDocumentModele);
60
		holder.add(lienVersDocumentModele);
57
 
61
 
58
		holder.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT);
62
		holder.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT);
59
		
63
		
60
		boutonValidation.addListener(new ButtonListenerAdapter() {
64
		boutonValidation.addListener(new ButtonListenerAdapter() {
61
						
65
						
62
			@Override
66
			@Override
63
			public void onClick(Button button, EventObject e) {
67
			public void onClick(Button button, EventObject e) {
64
				form.submit();
68
				form.submit();
65
			}
69
			}
66
		});
70
		});
67
 
71
 
68
		form.add(holder);
72
		form.add(holder);
69
		
73
		
70
		nPan.add(form);
74
		nPan.add(form);
71
		form.setAction(Configuration.getServiceBaseUrl() + "/ImportXLS");
75
		form.setAction(Configuration.getServiceBaseUrl() + "/ImportXLS");
72
		
76
		
73
		form.addSubmitCompleteHandler(new SubmitCompleteHandler() {
77
		form.addSubmitCompleteHandler(new SubmitCompleteHandler() {
74
			
78
			
75
			@Override
79
			@Override
76
			public void onSubmitComplete(SubmitCompleteEvent event) {
80
			public void onSubmitComplete(SubmitCompleteEvent event) {
77
				nPan.close();
81
				nPan.close();
-
 
82
				String message = "";
-
 
83
				Map<String, String> retourImport = Util.parserRetourImportObs(event.getResults());
-
 
84
				for (Iterator<String> iterator = retourImport.keySet().iterator(); iterator
-
 
85
						.hasNext();) {
-
 
86
					String indexRapport = iterator.next();
78
				// TODO: le résultat est du texte, mais à l'avenir il faudrait utiliser du JSON
87
					// on ne met pas de "-" dans les clés json, mais par contre nos clé i18n
-
 
88
					// sont séparées par des tirets, donc on remplace
-
 
89
					String cleI18n = indexRapport.replace("_", "-");
-
 
90
					Util.LogVersFirebug(cleI18n);
-
 
91
					String[] StrParams = {retourImport.get(indexRapport)};
-
 
92
					message += Msg.get(cleI18n, StrParams)+"\n";
-
 
93
				}
79
				com.google.gwt.user.client.Window.alert(event.getResults());
94
				com.google.gwt.user.client.Window.alert(message);	
80
				oMediateur.obtenirDernierePageObservation();
95
				oMediateur.obtenirDernierePageObservation();
81
			}
96
			}
82
		});
97
		});
83
	}
98
	}
84
	
99
	
85
	public void afficher() {
100
	public void afficher() {
86
		nPan.show();
101
		nPan.show();
87
	}
102
	}
88
}
103
}