Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 2 Rev 5
Line 1... Line 1...
1
package org.tela_botanica.client.vues;
1
package org.tela_botanica.client.vues;
Line 2... Line -...
2
 
-
 
3
 
2
 
4
import org.tela_botanica.client.image.ImageMediateur;
3
import org.tela_botanica.client.image.ImageMediateur;
5
import org.tela_botanica.client.interfaces.Filtrable;
4
import org.tela_botanica.client.interfaces.Filtrable;
Line 6... Line 5...
6
import org.tela_botanica.client.interfaces.Rafraichissable;
5
import org.tela_botanica.client.interfaces.Rafraichissable;
7
 
6
 
8
import com.google.gwt.user.client.ui.Label;
7
import com.google.gwt.user.client.ui.Label;
Line 9... Line 8...
9
import com.gwtext.client.widgets.Panel;
8
import com.gwtext.client.widgets.Panel;
10
import com.gwtext.client.widgets.form.DateField;
9
import com.gwtext.client.widgets.form.DateField;
11
 
10
 
-
 
11
/**
12
/**
12
 * Classe implémentant un filtre qui permet de rechercher une aimge par rapport
13
 * Classe implémentant un filtre qui permet de rechercher une aimge par rapport à la date associée,
13
 * à la date associée, des critères plus fins viendront compléter cela
14
 * des critères plus fins viendront compléter cela 
14
 * 
15
 * @author aurelien
15
 * @author aurelien
Line 16... Line 16...
16
 *
16
 * 
17
 */
17
 */
18
public class DateFiltreVue extends Panel implements Rafraichissable, Filtrable {
18
public class DateFiltreVue extends Panel implements Rafraichissable, Filtrable {
19
 
19
 
20
	/**
20
	/**
21
	 * Le médiateur associé à la vue
21
	 * Le médiateur associé à la vue
22
	 */
22
	 */
23
	private ImageMediateur iMediateur = null ;
23
	private ImageMediateur iMediateur = null;
24
	
24
 
Line 25... Line 25...
25
	/**
25
	/**
26
	 * Le widget calendrier
26
	 * Le widget calendrier
27
	 */
27
	 */
28
	private DateField filtreDate = null ;
28
	private DateField filtreDate = null;
Line 29... Line 29...
29
 
29
 
30
	/**
30
	/**
31
	 * Booleen d'état du filtre
31
	 * Booleen d'état du filtre
32
	 */
32
	 */
33
	private boolean filtreModifie = false ;
33
	private boolean filtreModifie = false;
34
 
-
 
35
	/**
34
 
36
	 * Constructeur sans argument (privé car ne doit pas être utilisé)
35
	/**
37
	 */
36
	 * Constructeur sans argument (privé car ne doit pas être utilisé)
38
	@SuppressWarnings("unused")
37
	 */
39
	private DateFiltreVue()
38
	@SuppressWarnings("unused")
-
 
39
	private DateFiltreVue() {
-
 
40
		super();
40
	{
41
	}
41
		super() ;
42
 
42
	}
43
	/**
43
	
-
 
44
	/**
44
	 * Constructeur avec arguments
45
	 * Constructeur avec arguments
45
	 * 
46
	 * @param im le médiateur à associer
46
	 * @param im
47
	 */
47
	 *            le médiateur à associer
48
	public DateFiltreVue(ImageMediateur im)
48
	 */
49
	{
49
	public DateFiltreVue(ImageMediateur im) {
50
		super() ;
50
		super();
51
		setPaddings(5) ;
51
		setPaddings(5);
52
		setCollapsible(true) ;
52
		setCollapsible(true);
53
		setBorder(false) ;
53
		setBorder(false);
54
		iMediateur = im ;
54
		iMediateur = im;
55
		
55
 
56
		Label labelRecherche = new Label("Date :") ;
56
		Label labelRecherche = new Label("Date :");
57
		add(labelRecherche) ;
57
		add(labelRecherche);
58
		
58
 
59
		// on crée le calendrier et on définit le format de la date "jj/mm/aaaa" 
59
		// on crée le calendrier et on définit le format de la date "jj/mm/aaaa"
60
		filtreDate = new DateField() ;
60
		filtreDate = new DateField();
61
		filtreDate.setAutoWidth(true) ;
61
		filtreDate.setAutoWidth(true);
62
		filtreDate.setFormat("d/m/Y") ;	
62
		filtreDate.setFormat("d/m/Y");
63
		
63
 
64
		add(filtreDate);
64
		add(filtreDate);
65
		ajouterListeners() ;
65
		ajouterListeners();
66
	}
-
 
67
	
66
	}
68
	/**
67
 
69
	 * Ajoute les listeners
68
	/**
70
	 */
69
	 * Ajoute les listeners
71
	public void ajouterListeners() 
70
	 */
72
	{
71
	public void ajouterListeners() {
73
	
72
 
74
	}
73
	}
75
	
74
 
76
	/**
75
	/**
77
	 * Méthode héritée de l'interface rafraichissable
76
	 * Méthode héritée de l'interface rafraichissable
78
	 */
77
	 */
79
	public void rafraichir(Object nouvelleDonnees,
78
	public void rafraichir(Object nouvelleDonnees,
80
			boolean repandreRaffraichissement) {
79
			boolean repandreRaffraichissement) {
81
		
80
 
82
		filtreModifie = false ;
81
		filtreModifie = false;
83
		
82
 
84
	}
83
	}
85
	
84
 
86
	/**
85
	/**
87
	 * Méthode héritée de l'interface filtrable
86
	 * Méthode héritée de l'interface filtrable
Line 88... Line 87...
88
	 */
87
	 */
89
	public void valider() {
88
	public void valider() {
-
 
89
 
90
		
90
		filtreModifie = true;
91
		filtreModifie = true ;
91
 
92
		
92
	}
93
	}
93
 
94
 
94
	/**
95
	/**
95
	 * Accesseur pour le médiateur
96
	 * Accesseur pour le médiateur
96
	 * 
Line 97... Line 97...
97
	 * @return le médiateur associé à la vue
97
	 * @return le médiateur associé à la vue
98
	 */
98
	 */
99
	@SuppressWarnings("unused")
99
	@SuppressWarnings("unused")
100
	private ImageMediateur getIMediateur() {
100
	private ImageMediateur getIMediateur() {
101
		
101
 
102
		return iMediateur ;
102
		return iMediateur;
103
	}
103
	}
Line 104... Line 104...
104
 
104
 
105
	/**
105
	/**
106
	 * Méthode héritée de l'interface filtrable
106
	 * Méthode héritée de l'interface filtrable
107
	 */
107
	 */
108
	public boolean renvoyerEtatFiltre() {
108
	public boolean renvoyerEtatFiltre() {
109
		
109
 
110
		return filtreModifie  ;
110
		return filtreModifie;
Line 111... Line 111...
111
	}
111
	}
112
 
112
 
113
	/**
113
	/**
114
	 * Méthode héritée de l'interface filtrable
114
	 * Méthode héritée de l'interface filtrable
115
	 */
115
	 */
116
	public String renvoyerNomFiltre() {
116
	public String renvoyerNomFiltre() {
117
		
117
 
118
		return "Recherche par date" ;
-
 
119
	}
118
		return "Recherche par date";
120
 
119
	}
121
	/**
120
 
122
	 * Méthode héritée de l'interface filtrable
121
	/**
123
	 */
-
 
124
	public String[] renvoyerValeursAFiltrer() {
122
	 * Méthode héritée de l'interface filtrable
-
 
123
	 */
125
		
124
	public String[] renvoyerValeursAFiltrer() {
-
 
125
 
126
		// si la date est valide
126
		// si la date est valide
127
		if(filtreDate.isValid())
127
		if (filtreDate.isValid()) {
128
		{
128
			// on en sépare les composants
129
			// on en sépare les composants
129
			String dt = filtreDate.getRawValue();
130
			String dt = filtreDate.getRawValue() ;
130
			String[] dates = dt.split("/");
131
			String[] dates = dt.split("/") ;
131
			if (dates.length == 3) {
-
 
132
				// qu'on réassemble dans un autre format (américain) pour la
132
			if(dates.length == 3)
133
				// base de donnée "aaaa-mm-jj"
133
			{
134
				String dateFormatee = dates[2] + "-" + dates[1] + "-"
134
				// qu'on réassemble dans un autre format (américain) pour la base de donnée "aaaa-mm-jj"
135
						+ dates[0];
135
				String dateFormatee = dates[2]+"-"+dates[1]+"-"+dates[0] ;
136
				String[] valeursFiltres = { "ci_meta_date", dateFormatee };
136
				String[] valeursFiltres = {"ci_meta_date" , dateFormatee } ;
137
				return valeursFiltres;
Line 137... Line 138...
137
				return valeursFiltres ;
138
			}