1,6 → 1,5 |
package org.tela_botanica.client.vues; |
|
|
import org.tela_botanica.client.image.ImageMediateur; |
import org.tela_botanica.client.interfaces.Filtrable; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
10,10 → 9,11 |
import com.gwtext.client.widgets.form.DateField; |
|
/** |
* Classe implémentant un filtre qui permet de rechercher une aimge par rapport à la date associée, |
* des critères plus fins viendront compléter cela |
* Classe implémentant un filtre qui permet de rechercher une aimge par rapport |
* à la date associée, des critères plus fins viendront compléter cela |
* |
* @author aurelien |
* |
* |
*/ |
public class DateFiltreVue extends Panel implements Rafraichissable, Filtrable { |
|
20,86 → 20,86 |
/** |
* Le médiateur associé à la vue |
*/ |
private ImageMediateur iMediateur = null ; |
|
private ImageMediateur iMediateur = null; |
|
/** |
* Le widget calendrier |
*/ |
private DateField filtreDate = null ; |
private DateField filtreDate = null; |
|
/** |
* Booleen d'état du filtre |
*/ |
private boolean filtreModifie = false ; |
private boolean filtreModifie = false; |
|
/** |
* Constructeur sans argument (privé car ne doit pas être utilisé) |
*/ |
@SuppressWarnings("unused") |
private DateFiltreVue() |
{ |
super() ; |
private DateFiltreVue() { |
super(); |
} |
|
|
/** |
* Constructeur avec arguments |
* @param im le médiateur à associer |
* |
* @param im |
* le médiateur à associer |
*/ |
public DateFiltreVue(ImageMediateur im) |
{ |
super() ; |
setPaddings(5) ; |
setCollapsible(true) ; |
setBorder(false) ; |
iMediateur = im ; |
|
Label labelRecherche = new Label("Date :") ; |
add(labelRecherche) ; |
|
// on crée le calendrier et on définit le format de la date "jj/mm/aaaa" |
filtreDate = new DateField() ; |
filtreDate.setAutoWidth(true) ; |
filtreDate.setFormat("d/m/Y") ; |
|
public DateFiltreVue(ImageMediateur im) { |
super(); |
setPaddings(5); |
setCollapsible(true); |
setBorder(false); |
iMediateur = im; |
|
Label labelRecherche = new Label("Date :"); |
add(labelRecherche); |
|
// on crée le calendrier et on définit le format de la date "jj/mm/aaaa" |
filtreDate = new DateField(); |
filtreDate.setAutoWidth(true); |
filtreDate.setFormat("d/m/Y"); |
|
add(filtreDate); |
ajouterListeners() ; |
ajouterListeners(); |
} |
|
|
/** |
* Ajoute les listeners |
*/ |
public void ajouterListeners() |
{ |
|
public void ajouterListeners() { |
|
} |
|
|
/** |
* Méthode héritée de l'interface rafraichissable |
*/ |
public void rafraichir(Object nouvelleDonnees, |
boolean repandreRaffraichissement) { |
|
filtreModifie = false ; |
|
|
filtreModifie = false; |
|
} |
|
|
/** |
* Méthode héritée de l'interface filtrable |
*/ |
public void valider() { |
|
filtreModifie = true ; |
|
|
filtreModifie = true; |
|
} |
|
/** |
* Accesseur pour le médiateur |
* |
* @return le médiateur associé à la vue |
*/ |
@SuppressWarnings("unused") |
private ImageMediateur getIMediateur() { |
|
return iMediateur ; |
|
return iMediateur; |
} |
|
/** |
106,8 → 106,8 |
* Méthode héritée de l'interface filtrable |
*/ |
public boolean renvoyerEtatFiltre() { |
|
return filtreModifie ; |
|
return filtreModifie; |
} |
|
/** |
114,8 → 114,8 |
* Méthode héritée de l'interface filtrable |
*/ |
public String renvoyerNomFiltre() { |
|
return "Recherche par date" ; |
|
return "Recherche par date"; |
} |
|
/** |
122,27 → 122,28 |
* Méthode héritée de l'interface filtrable |
*/ |
public String[] renvoyerValeursAFiltrer() { |
|
|
// si la date est valide |
if(filtreDate.isValid()) |
{ |
if (filtreDate.isValid()) { |
// on en sépare les composants |
String dt = filtreDate.getRawValue() ; |
String[] dates = dt.split("/") ; |
if(dates.length == 3) |
{ |
// qu'on réassemble dans un autre format (américain) pour la base de donnée "aaaa-mm-jj" |
String dateFormatee = dates[2]+"-"+dates[1]+"-"+dates[0] ; |
String[] valeursFiltres = {"ci_meta_date" , dateFormatee } ; |
return valeursFiltres ; |
String dt = filtreDate.getRawValue(); |
String[] dates = dt.split("/"); |
if (dates.length == 3) { |
// qu'on réassemble dans un autre format (américain) pour la |
// base de donnée "aaaa-mm-jj" |
String dateFormatee = dates[2] + "-" + dates[1] + "-" |
+ dates[0]; |
String[] valeursFiltres = { "ci_meta_date", dateFormatee }; |
return valeursFiltres; |
} |
} |
|
// si la date n'estp as valide on renvoie une chaine vide (ce qui correspond à n'importe qu'elle date) |
String dateFormatee = "" ; |
String[] valeursFiltres = {"ci_meta_date" , dateFormatee } ; |
return valeursFiltres ; |
|
|
// si la date n'estp as valide on renvoie une chaine vide (ce qui |
// correspond à n'importe qu'elle date) |
String dateFormatee = ""; |
String[] valeursFiltres = { "ci_meta_date", dateFormatee }; |
return valeursFiltres; |
|
} |
|
} |