Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 1165 Rev 1173
1
package org.tela_botanica.client.vues.accueil;
1
package org.tela_botanica.client.vues.accueil;
2
 
2
 
3
import org.tela_botanica.client.Mediateur;
3
import org.tela_botanica.client.Mediateur;
4
import org.tela_botanica.client.RegistreId;
4
import org.tela_botanica.client.RegistreId;
5
import org.tela_botanica.client.configuration.Configuration;
5
import org.tela_botanica.client.configuration.Configuration;
6
import org.tela_botanica.client.modeles.InterneValeur;
6
import org.tela_botanica.client.modeles.InterneValeur;
7
import org.tela_botanica.client.vues.Formulaire;
7
import org.tela_botanica.client.vues.Formulaire;
8
 
8
 
9
import com.extjs.gxt.ui.client.Registry;
9
import com.extjs.gxt.ui.client.Registry;
10
import com.extjs.gxt.ui.client.event.IconButtonEvent;
10
import com.extjs.gxt.ui.client.event.IconButtonEvent;
11
import com.extjs.gxt.ui.client.event.SelectionListener;
11
import com.extjs.gxt.ui.client.event.SelectionListener;
12
import com.extjs.gxt.ui.client.event.WindowEvent;
12
import com.extjs.gxt.ui.client.event.WindowEvent;
13
import com.extjs.gxt.ui.client.event.WindowListener;
13
import com.extjs.gxt.ui.client.event.WindowListener;
14
import com.extjs.gxt.ui.client.store.ListStore;
14
import com.extjs.gxt.ui.client.store.ListStore;
15
import com.extjs.gxt.ui.client.widget.ContentPanel;
15
import com.extjs.gxt.ui.client.widget.ContentPanel;
16
import com.extjs.gxt.ui.client.widget.Dialog;
16
import com.extjs.gxt.ui.client.widget.Dialog;
17
import com.extjs.gxt.ui.client.widget.HtmlContainer;
17
import com.extjs.gxt.ui.client.widget.HtmlContainer;
18
import com.extjs.gxt.ui.client.widget.form.ComboBox;
18
import com.extjs.gxt.ui.client.widget.form.ComboBox;
19
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
19
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
20
import com.extjs.gxt.ui.client.widget.form.FormPanel.LabelAlign;
20
import com.extjs.gxt.ui.client.widget.form.FormPanel.LabelAlign;
21
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
21
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
22
 
22
 
23
public class AppletteStatistique extends Applette {
23
public class AppletteStatistique extends Applette {
24
	
24
	
25
	private String baseUrl = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl();
25
	private String baseUrl = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl();
26
 
26
 
27
	
27
	
28
	public AppletteStatistique(Mediateur mediateurCourrant) {
28
	public AppletteStatistique(Mediateur mediateurCourrant) {
29
		initialiserAppletteStatistique(mediateurCourrant, null);
29
		initialiserAppletteStatistique(mediateurCourrant, null);
30
	}
30
	}
31
	
31
	
32
	public AppletteStatistique(Mediateur mediateurCourrant, String contenu) {
32
	public AppletteStatistique(Mediateur mediateurCourrant, String contenu) {
33
		initialiserAppletteStatistique(mediateurCourrant, contenu);
33
		initialiserAppletteStatistique(mediateurCourrant, contenu);
34
	}
34
	}
35
	
35
	
36
	private void initialiserAppletteStatistique(Mediateur mediateurCourrant, String contenu) {
36
	private void initialiserAppletteStatistique(Mediateur mediateurCourrant, String contenu) {
37
		String titre = "Statistiques des collections";
37
		String titre = "Statistiques des collections";
38
		initialiserApplette(mediateurCourrant, titre);
38
		initialiserApplette(mediateurCourrant, titre);
39
		
39
		
40
		SelectionListener<IconButtonEvent> configurationListener = new SelectionListener<IconButtonEvent>() {
40
		SelectionListener<IconButtonEvent> configurationListener = new SelectionListener<IconButtonEvent>() {
41
			@Override
41
			@Override
42
			public void componentSelected(IconButtonEvent ce) {
42
			public void componentSelected(IconButtonEvent ce) {
43
				ContentPanel panneau = new ContentPanel();
43
				ContentPanel panneau = new ContentPanel();
44
				panneau.setHeaderVisible(false);
44
				panneau.setHeaderVisible(false);
45
				panneau.setLayout(Formulaire.creerFormLayout(350, LabelAlign.TOP));
45
				panneau.setLayout(Formulaire.creerFormLayout(350, LabelAlign.TOP));
46
				
46
				
47
				ListStore<InterneValeur> appletteStore = new ListStore<InterneValeur>();
47
				ListStore<InterneValeur> appletteStore = new ListStore<InterneValeur>();
48
				appletteStore.add(new InterneValeur("NombreDonnees", "Nombre de données"));
48
				appletteStore.add(new InterneValeur("NombreDonnees", "Nombre de données"));
-
 
49
				appletteStore.add(new InterneValeur("MesDonnees", "Ma participation"));
49
				appletteStore.add(new InterneValeur("TypeDepot", "Types de dépôt des collections"));
50
				appletteStore.add(new InterneValeur("TypeDepot", "Types de dépôt des collections"));
50
				appletteStore.add(new InterneValeur("NombreCollectionParStructure", "Nombre de collections par institution"));
51
				appletteStore.add(new InterneValeur("NombreCollectionParStructure", "Nombre de collections par institution"));
51
				
52
				
52
				final ComboBox<InterneValeur> applettesCombo = new ComboBox<InterneValeur>();
53
				final ComboBox<InterneValeur> applettesCombo = new ComboBox<InterneValeur>();
53
				applettesCombo.setFieldLabel("Veuillez sélectionner le type d'applette");
54
				applettesCombo.setFieldLabel("Veuillez sélectionner le type d'applette");
54
				applettesCombo.setForceSelection(true);
55
				applettesCombo.setForceSelection(true);
55
				applettesCombo.setTriggerAction(TriggerAction.ALL);
56
				applettesCombo.setTriggerAction(TriggerAction.ALL);
56
				applettesCombo.setDisplayField("nom");
57
				applettesCombo.setDisplayField("nom");
57
				applettesCombo.setStore(appletteStore);
58
				applettesCombo.setStore(appletteStore);
58
				applettesCombo.setEditable(false);
59
				applettesCombo.setEditable(false);
59
				applettesCombo.setWidth(300);
60
				applettesCombo.setWidth(300);
60
				
61
				
61
				panneau.add(applettesCombo);
62
				panneau.add(applettesCombo);
62
				
63
				
63
				final Dialog configurationFenetre = new Dialog();  
64
				final Dialog configurationFenetre = new Dialog();  
64
				configurationFenetre.setHeading("Configuration de l'applette");
65
				configurationFenetre.setHeading("Configuration de l'applette");
65
				configurationFenetre.setButtons(Dialog.OK);
66
				configurationFenetre.setButtons(Dialog.OK);
66
				configurationFenetre.setSize(350, 150);  
67
				configurationFenetre.setSize(350, 150);  
67
				configurationFenetre.setPlain(true);  
68
				configurationFenetre.setPlain(true);  
68
				configurationFenetre.setModal(true);
69
				configurationFenetre.setModal(true);
69
				configurationFenetre.setBlinkModal(true);  
70
				configurationFenetre.setBlinkModal(true);  
70
				configurationFenetre.setLayout(new FitLayout());
71
				configurationFenetre.setLayout(new FitLayout());
71
				configurationFenetre.setHideOnButtonClick(true);
72
				configurationFenetre.setHideOnButtonClick(true);
72
				configurationFenetre.addWindowListener(new WindowListener(){
73
				configurationFenetre.addWindowListener(new WindowListener(){
73
					public void windowHide(WindowEvent we) {
74
					public void windowHide(WindowEvent we) {
74
						String abreviation = applettesCombo.getValue().getAbr();
75
						String abreviation = applettesCombo.getValue().getAbr();
75
						attribuerContenu(abreviation);
76
						attribuerContenu(abreviation);
76
					}
77
					}
77
				});
78
				});
78
				configurationFenetre.add(panneau);
79
				configurationFenetre.add(panneau);
79
				configurationFenetre.show();
80
				configurationFenetre.show();
80
			}
81
			}
81
		};
82
		};
82
		ajouterConfigurationListener(configurationListener);
83
		ajouterConfigurationListener(configurationListener);
83
		
84
		
84
		attribuerContenu(contenu);
85
		attribuerContenu(contenu);
85
	}
86
	}
86
 
87
 
87
	private void attribuerContenu(String abreviation) {
88
	private void attribuerContenu(String abreviation) {
88
		if (abreviation == null) {
89
		if (abreviation == null) {
89
			abreviation = "NombreDonnees";
90
			abreviation = "NombreDonnees";
90
		}
91
		}
91
		setData("contenu", abreviation);
92
		setData("contenu", abreviation);
92
		String url = baseUrl+"CoelStatistique/"+abreviation;
93
		String url = baseUrl+"CoelStatistique/"+abreviation;
93
		
94
		
94
		if (abreviation.equals("MesDonnees")) {
95
		if (abreviation.equals("MesDonnees")) {
95
			url += "/"+mediateur.getUtilisateurId();
96
			url += "/"+mediateur.getUtilisateurId();
96
		}
97
		}
97
		
98
		
98
		HtmlContainer conteneurHtml = new HtmlContainer();
99
		HtmlContainer conteneurHtml = new HtmlContainer();
99
		conteneurHtml.setUrl(url);
100
		conteneurHtml.setUrl(url);
100
		conteneurHtml.recalculate();
101
		conteneurHtml.recalculate();
101
		
102
		
102
		removeAll();
103
		removeAll();
103
		add(conteneurHtml);
104
		add(conteneurHtml);
104
		layout();
105
		layout();
105
	}
106
	}
106
}
107
}