Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 108 → Rev 109

/trunk/src/org/tela_botanica/client/vues/FormStructureVue.java
34,6 → 34,8
import com.extjs.gxt.ui.client.widget.form.FormPanel;
import com.extjs.gxt.ui.client.widget.form.LabelField;
import com.extjs.gxt.ui.client.widget.form.NumberField;
import com.extjs.gxt.ui.client.widget.form.Radio;
import com.extjs.gxt.ui.client.widget.form.RadioGroup;
import com.extjs.gxt.ui.client.widget.form.TextField;
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
import com.extjs.gxt.ui.client.widget.form.FormPanel.LabelAlign;
49,7 → 51,6
import com.extjs.gxt.ui.client.widget.layout.FlowLayout;
import com.extjs.gxt.ui.client.widget.layout.FormData;
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
import com.extjs.gxt.ui.client.widget.layout.LayoutData;
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
import com.extjs.gxt.ui.client.widget.toolbar.TextToolItem;
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
81,6 → 82,8
private ContentPanel trukLocalStockageCp = null;
private CheckBoxGroup trukMeubleStockageCacGrpChp = null;
private ContentPanel trukMeubleStockageCp = null;
private CheckBoxGroup trukParametreStockageCacGrpChp = null;
private ContentPanel trukParametreStockageCp = null;
public FormStructureVue() {
//+-----------------------------------------------------------------------------------------------------------+
407,44 → 410,34
conservationOnglet.setText("Conservation");
conservationOnglet.setLayout(creerFormLayout(650, LabelAlign.TOP, null));
CheckBoxGroup markFormationCacGrpChp = new CheckBoxGroup();
CheckBox ouiMarkFormationCac = new CheckBox();
ouiMarkFormationCac.setBoxLabel("Oui");
CheckBox nonMarkFormationCac = new CheckBox();
nonMarkFormationCac.setBoxLabel("Non");
markFormationCacGrpChp.setFieldLabel("Le personnel s'occupant des collections a-t-il suivi des formations en conservations ?");
markFormationCacGrpChp.add(ouiMarkFormationCac);
markFormationCacGrpChp.add(nonMarkFormationCac);
conservationOnglet.add(markFormationCacGrpChp);
RadioGroup markFormationRGrpChp = new RadioGroup("mark_formation_grp");
markFormationRGrpChp.setFieldLabel("Le personnel s'occupant des collections a-t-il suivi des formations en conservations ?");
creerChoixUniqueBr(markFormationRGrpChp, "mark_formation");
conservationOnglet.add(markFormationRGrpChp);
TextField<String> formationChp = new TextField<String>();
formationChp.setFieldLabel("Lesquelles ?");
conservationOnglet.add(formationChp);
CheckBoxGroup markInteretFormationCacGrpChp = new CheckBoxGroup();
CheckBox ouiMarkInteretFormationCac = new CheckBox();
ouiMarkInteretFormationCac.setBoxLabel("Oui");
CheckBox nonMarkInteretFormationCac = new CheckBox();
nonMarkInteretFormationCac.setBoxLabel("Non");
markInteretFormationCacGrpChp.setFieldLabel("Seriez vous intéressé par une formation à la conservation et à la restauration d'herbier ?");
markInteretFormationCacGrpChp.add(ouiMarkInteretFormationCac);
markInteretFormationCacGrpChp.add(nonMarkInteretFormationCac);
conservationOnglet.add(markInteretFormationCacGrpChp);
RadioGroup markInteretFormationRGrpChp = new RadioGroup("mark_interet_formation_grp");
markInteretFormationRGrpChp.setFieldLabel("Seriez vous intéressé par une formation à la conservation et à la restauration d'herbier ?");
creerChoixUniqueBr(markInteretFormationRGrpChp, "mark_interet_formation_grp");
conservationOnglet.add(markInteretFormationRGrpChp);
coelModele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId("localStockage"));
trukLocalStockageCp = new ContentPanel();
trukLocalStockageCp.setLayout(creerFormLayout(650, LabelAlign.TOP, 0));
trukLocalStockageCp.setWidth(800);
trukLocalStockageCp.setHeaderVisible(false);
trukLocalStockageCp = creerChoixMultipleCp("localStockage");
conservationOnglet.add(trukLocalStockageCp);
coelModele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId("meubleStockage"));
trukMeubleStockageCp = new ContentPanel();
trukMeubleStockageCp.setLayout(creerFormLayout(650, LabelAlign.TOP, 0));
trukMeubleStockageCp.setWidth(800);
trukMeubleStockageCp.setHeaderVisible(false);
trukMeubleStockageCp = creerChoixMultipleCp("meubleStockage");
conservationOnglet.add(trukMeubleStockageCp);
trukParametreStockageCp = creerChoixMultipleCp("parametreStockage");
conservationOnglet.add(trukParametreStockageCp);
RadioGroup markCollectionCommuneRGrpChp = new RadioGroup("mark_collection_commune_grp");
markCollectionCommuneRGrpChp.setFieldLabel("Les collections botaniques sont-elles conservées avec d'autres collections dans les mêmes locaux (problème de conservation en commun) ?");
creerChoixUniqueBr(markCollectionCommuneRGrpChp, "mark_collection_commune");
conservationOnglet.add(markCollectionCommuneRGrpChp);
return conservationOnglet;
}
680,6 → 673,87
return formLayout;
}
/** Méthode simplifiant la création de bouton radio oui/non
*
* @param listeNom nom de la liste de valeur
* @return
*/
private void creerChoixUniqueBr(RadioGroup radioGroup, String attributNom ) {
Radio ouiRadio = new Radio();
ouiRadio.setName(attributNom);
ouiRadio.setBoxLabel("Oui");
//ouiRadio.setValue(true);
Radio nonRadio = new Radio();
nonRadio.setName(attributNom);
nonRadio.setBoxLabel("Non");
radioGroup.add(ouiRadio);
radioGroup.add(nonRadio);
}
/** Méthode simplifiant la création de choix multiple sous forme de case à cocher.
* Apelle un service retournant la liste des valeurs représentant les cases à cocher.
* Ajoute ou pas un champ "Autre".
*
* @param listeNom nom de la liste de valeur
* @return
*/
private ContentPanel creerChoixMultipleCp(String listeNom) {
coelModele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(listeNom));
ContentPanel cp = new ContentPanel();
cp.setLayout(creerFormLayout(650, LabelAlign.TOP, 0));
cp.setWidth("100%");
cp.setHeaderVisible(false);
return cp;
}
/** Méthode simplifiant la création de choix multiple sous forme de case à cocher.
* Apelle un service retournant la liste des valeurs représentant les cases à cocher.
* Ajoute ou pas un champ "Autre".
*
* @param cp panneau conteant le groupe de case à cocher
* @param cacGroup le groupe de case à cocher
* @param labelTxt le texte du champ
* @param listeValeurs la liste de valeurs à transformer en case à cocher
* @param boolAutreChp booléen indiquant si oui ou non le champ autre doit apparaître
* @return
*/
private void creerChoixMultipleCac(ContentPanel cp, CheckBoxGroup cacGroupe, String labelTxt, ValeurListe listeValeurs, Boolean boolAutreChp) {
cacGroupe.setFieldLabel(labelTxt);
for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
String nom = listeValeurs.get(it.next()).get("nom");
CheckBox cac = new CheckBox();
GWT.log("Taille '"+nom+"' : "+nom.length(), null);
// Calcul de la largeur de la checkbox en fonction de la taille du label
int largeur = nom.length()*10;
if (nom.length() > 15) {
largeur = 170;
}
if (nom.length() > 25) {
largeur = 250;
}
cac.setWidth(largeur);
cac.setBoxLabel(nom);
cacGroupe.add(cac);
}
cp.add(cacGroupe);
if (boolAutreChp == true) {
ContentPanel autreCp = new ContentPanel();
autreCp.setLayout(creerFormLayout(75, LabelAlign.TOP, 0));
autreCp.setHeaderVisible(false);
TextField<String> autreTrukLocalStockageChp = new TextField<String>();
autreTrukLocalStockageChp.setFieldLabel("Autre");
autreTrukLocalStockageChp.setLabelStyle("font-weight:normal;");
autreTrukLocalStockageChp.setWidth(300);
autreCp.add(autreTrukLocalStockageChp);
cp.add(autreCp);
}
cp.layout();
}
public void rafraichir(Object nouvelleDonnees) {
if (nouvelleDonnees instanceof ValeurListe) {
ValeurListe listeValeurs = (ValeurListe) nouvelleDonnees;
713,63 → 787,19
}
if (listeValeurs.getId().equals(config.getListeId("localStockage"))) {
trukLocalStockageCacGrpChp = new CheckBoxGroup();
trukLocalStockageCacGrpChp.setFieldLabel("Avez vous des locaux spécifiques de stockage des collections botaniques ?");
for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
String nom = listeValeurs.get(it.next()).get("nom");
CheckBox trukLocalStockageCac = new CheckBox();
// Calcul de la largeur de la checkbox en fonction de la taille du label
int largeur = nom.length()*10;
if (nom.length() > 20) {
largeur = 170;
}
trukLocalStockageCac.setWidth(largeur);
trukLocalStockageCac.setBoxLabel(nom);
trukLocalStockageCacGrpChp.add(trukLocalStockageCac);
}
trukLocalStockageCp.add(trukLocalStockageCacGrpChp);
ContentPanel autreCp = new ContentPanel();
autreCp.setLayout(creerFormLayout(75, LabelAlign.TOP, 0));
autreCp.setHeaderVisible(false);
TextField<String> autreTrukLocalStockageChp = new TextField<String>();
autreTrukLocalStockageChp.setFieldLabel("Autre");
autreTrukLocalStockageChp.setLabelStyle("font-weight:normal;");
autreTrukLocalStockageChp.setWidth(300);
autreCp.add(autreTrukLocalStockageChp);
trukLocalStockageCp.add(autreCp);
trukLocalStockageCp.layout();
String labelTxt = "Avez vous des locaux spécifiques de stockage des collections botaniques ?";
creerChoixMultipleCac(trukLocalStockageCp, trukLocalStockageCacGrpChp, labelTxt, listeValeurs, true);
}
if (listeValeurs.getId().equals(config.getListeId("meubleStockage"))) {
trukMeubleStockageCacGrpChp = new CheckBoxGroup();
trukMeubleStockageCacGrpChp.setFieldLabel("Avez vous des meubles spécifiques au stockage des collections botaniques ?");
for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
String nom = listeValeurs.get(it.next()).get("nom");
CheckBox trukMeubleStockageCac = new CheckBox();
GWT.log("Taille : "+nom.length(), null);
// Calcul de la largeur de la checkbox en fonction de la taille du label
int largeur = nom.length()*8;
if (nom.length() > 20) {
largeur = 170;
}
trukMeubleStockageCac.setWidth(largeur);
trukMeubleStockageCac.setBoxLabel(nom);
trukMeubleStockageCacGrpChp.add(trukMeubleStockageCac);
}
trukMeubleStockageCp.add(trukMeubleStockageCacGrpChp);
ContentPanel autreCp = new ContentPanel();
autreCp.setLayout(creerFormLayout(75, LabelAlign.TOP, 0));
autreCp.setHeaderVisible(false);
TextField<String> autreTrukLocalStockageChp = new TextField<String>();
autreTrukLocalStockageChp.setFieldLabel("Autre");
autreTrukLocalStockageChp.setLabelStyle("font-weight:normal;");
autreTrukLocalStockageChp.setWidth(300);
autreCp.add(autreTrukLocalStockageChp);
trukMeubleStockageCp.add(autreCp);
trukMeubleStockageCp.layout();
String labelTxt = "Avez vous des meubles spécifiques au stockage des collections botaniques ?";
creerChoixMultipleCac(trukMeubleStockageCp, trukMeubleStockageCacGrpChp, labelTxt, listeValeurs, true);
}
if (listeValeurs.getId().equals(config.getListeId("parametreStockage"))) {
trukParametreStockageCacGrpChp = new CheckBoxGroup();
String labelTxt = "Quels paramètres maîtrisez vous ?";
creerChoixMultipleCac(trukParametreStockageCp, trukParametreStockageCacGrpChp, labelTxt, listeValeurs, true);
}
GWT.log("La liste #"+listeValeurs.getId()+" a été reçue!", null);
} else {
GWT.log("La liste #"+listeValeurs.getId()+" ne contient aucune valeurs!", null);
/trunk/src/org/tela_botanica/client/modeles/Configuration.java
42,6 → 42,7
listesId.put("fonction", Integer.valueOf(configuration.get("listeFonction")));
listesId.put("localStockage", Integer.valueOf(configuration.get("listeStockageLocal")));
listesId.put("meubleStockage", Integer.valueOf(configuration.get("listeStockageMeuble")));
listesId.put("parametreStockage", Integer.valueOf(configuration.get("listeStockageParametre")));
}
 
/**
/trunk/src/org/tela_botanica/public/config.js
1,16 → 1,18
var configuration = {
celUrl:"http://www.tela-botanica.org/cel/www/org.tela_botanica.Cel/Cel.html",
serviceBaseUrl:"http://localhost/jrest/",
// liste_09 : Liste des fonctions d'une personne au sein d'une structure
// liste 09 : Liste des fonctions d'une personne au sein d'une structure
listeFonction:1012,
// liste_10 : Liste des statuts d'une personne au sein d'une structure
// liste 10 : Liste des statuts d'une personne au sein d'une structure
listeStatut:1013,
// liste_12 : Liste des types de structure privé
// liste 12 : Liste des types de structure privé
listeStpr:1015,
// liste_13 : Liste des types de structure public
// liste 13 : Liste des types de structure public
listeStpu:1016,
// liste_15 : Liste des types de local de stockage de collections
// liste 15 : Liste des types de local de stockage de collections
listeStockageLocal:1018,
// liste_16 : Liste des types de mobilier de stockage de collections
listeStockageMeuble:1019
// liste 16 : Liste des types de mobilier de stockage de collections
listeStockageMeuble:1019,
// liste 17 : Liste des paramètres de contrôle environnemental d'un local
listeStockageParametre:1020
};