Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 187 → Rev 188

/trunk/src/org/tela_botanica/client/Mediateur.java
17,6 → 17,7
import org.tela_botanica.client.modeles.Publication;
import org.tela_botanica.client.modeles.PublicationListe;
import org.tela_botanica.client.modeles.Structure;
import org.tela_botanica.client.modeles.StructureConservation;
import org.tela_botanica.client.modeles.StructureListe;
import org.tela_botanica.client.modeles.Utilisateur;
import org.tela_botanica.client.modeles.ValeurListe;
354,8 → 355,8
}
public void modifierStructure(Rafraichissable vue, Structure structure) {
modele.modifierStructure(vue, getUtilisateurId(), structure);
public void modifierStructure(Rafraichissable vue, Structure structure, StructureConservation conservation) {
modele.modifierStructure(vue, getUtilisateurId(), structure, conservation);
}
//+----------------------------------------------------------------------------------------------------------------+
/trunk/src/org/tela_botanica/client/vues/FormStructureVue.java
16,6 → 16,7
import org.tela_botanica.client.modeles.InterneValeurListe;
import org.tela_botanica.client.modeles.Personne;
import org.tela_botanica.client.modeles.Structure;
import org.tela_botanica.client.modeles.StructureConservation;
import org.tela_botanica.client.modeles.Valeur;
import org.tela_botanica.client.modeles.ValeurListe;
 
37,6 → 38,7
import com.extjs.gxt.ui.client.widget.LayoutContainer;
import com.extjs.gxt.ui.client.widget.TabItem;
import com.extjs.gxt.ui.client.widget.TabPanel;
import com.extjs.gxt.ui.client.widget.WidgetComponent;
import com.extjs.gxt.ui.client.widget.button.Button;
import com.extjs.gxt.ui.client.widget.form.CheckBox;
import com.extjs.gxt.ui.client.widget.form.CheckBoxGroup;
74,6 → 76,8
import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.i18n.client.NumberFormat;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Widget;
 
public class FormStructureVue extends LayoutContainer implements Rafraichissable {
151,6 → 155,34
private ListStore<Valeur> magazinPays;
private ComboBox<Valeur> comboPays;
private HiddenField<String> idStructureChp;
private RadioGroup formationMarkRGrpChp;
private RadioGroup interetFormationMarkRGrpChp;
private RadioGroup collectionCommuneMarkRGrpChp;
private RadioGroup accesControleMarkRGrpChp;
private RadioGroup restaurationMarkRGrpChp;
private RadioGroup traitementMarkRGrpChp;
private RadioGroup collectionAcquisitionMarkRGrpChp;
private RadioGroup echantillonAcquisitionMarkRGrpChp;
private NumberField nbreTotalPersonneStructureChp;
private TextField<String> localStockageAutreChp;
private TextField<String> meubleStockageAutreChp;
private TextField<String> parametreStockageAutreChp;
private TextField<String> collectionAutreAutreChp;
private TextField<String> autreCollectionAutreChp;
private TextField<String> opRestauAutreChp;
private TextField<String> autreMaterielAutreChp;
private TextField<String> poisonTraitementAutreChp;
private TextField<String> traitementAutreChp;
private TextField<String> insecteTraitementAutreChp;
private TextField<String> actionAutreChp;
private TextField<String> provenanceRechercheAutreChp;
private TextField<String> typeRecherche;
private RadioGroup futureActionMarkRGrpChp;
private RadioGroup rechercheMarkRGrpChp;
private RadioGroup sansMotifAccesMarkRGrpChp;
private RadioGroup avecMotifAccesMarkRGrpChp;
private TextField<String> publicationChp;
private ContentPanel materielConservationCp;
public FormStructureVue() {
//+-----------------------------------------------------------------------------------------------------------+
196,7 → 228,7
// Gestion du FORMULAIRE GÉNÉRAL
// Sélection de l'onglet par défaut
//onglets.setSelection(valorisationOnglet);
onglets.setSelection(conservationOnglet);
// Ajout des onglets au formulaire général
structureFormPanneau.add(onglets);
228,16 → 260,46
private void soumettreFormulaire() {
GWT.log("Soumission du formulaire", null);
Structure structure = collecterDonnees();
Structure structure = collecterDonneesIdentification();
StructureConservation conservation = collecterDonneesConservation();
if (mode == "AJOUT") {
//mediateur.ajouterStructure(this, structure);
GWT.log("Structure non ajouté :"+structure.toString(), null);
} else if (mode == "MODIF") {
mediateur.modifierStructure(this, structure);
mediateur.modifierStructure(this, structure, conservation);
}
//GWT.log("Info Structure envoyées :\n"+structure.toString(), null);
}
private Structure collecterDonnees() {
private StructureConservation collecterDonneesConservation() {
// Création de l'objet
StructureConservation conservation = new StructureConservation();
if (formationMarkRGrpChp.getValue() != null) {
conservation.setFormationMark(formationMarkRGrpChp.getValue().getValueAttribute());
}
conservation.setFormation(formationChp.getValue());
if (interetFormationMarkRGrpChp.getValue() != null) {
conservation.setFormationInteret(interetFormationMarkRGrpChp.getValue().getValueAttribute());
}
conservation.setStockageLocal(creerTruk(localStockageTrukCacGrpChp.getValues()));
if (localStockageAutreChp.getValue() != null) {
conservation.setStockageLocal("AUTRE", localStockageAutreChp.getValue());
}
 
// Retour de l'objet
GWT.log(conservation.toString(), null);
return conservation;
}
private void peuplerStructureConservation(StructureConservation strCons) {
Radio radioBtn = new Radio();
radioBtn.setId(strCons.getFormationMark()+"_"+formationMarkRGrpChp.getName());
formationMarkRGrpChp.get(formationMarkRGrpChp.getAll().indexOf(radioBtn)).setValue((strCons.getFormationMark().equals("1") ? true : false));
}
private Structure collecterDonneesIdentification() {
// IDENTIFICATION
Structure structure = new Structure();
structure.setId(idStructureChp.getValue());
structure.setNom(nomStructureChp.getValue());
258,9 → 320,9
if (comboTypeStructure.getValue() != null) {
String typeStructure = comboTypeStructure.getValue().getAbr();
GWT.log("Statut : "+typeStructure, null);
if (typeStructure == "stpu") {
if (typeStructure == "stpu" && comboLstpu.getValue() != null) {
structure.setTypePublic(comboLstpu.getValue().getId());
} else if (typeStructure == "stpr") {
} else if (typeStructure == "stpr" && comboLstpr.getValue() != null) {
structure.setTypePrive(comboLstpr.getValue().getId());
}
}
280,14 → 342,26
structure.setTelephone(telChp.getValue());
structure.setFax(faxChp.getValue());
structure.setCourriel(emailChp.getValue());
structure.setUrl(urlChp.getValue());
structure.setUrl(Structure.URL_SITE, urlChp.getValue());
// CONSERVATION
return structure;
}
private void peuplerFormulaire(Structure str) {
private void peuplerStructure(Structure str) {
idStructureChp.setValue(str.getId());
nomStructureChp.setValue(str.getNom());
if (!str.getIdAlternatif().isEmpty()) {
String[] acronyme = str.getIdAlternatif().split("##");
if (acronyme[0].matches("^IH$")) {
comboAcronyme.setValue(InterneValeurListe.getTypeAcronymeIH());
ihChp.setValue(acronyme[1]);
} else if (acronyme[0].matches("^MNHN$")) {
comboAcronyme.setValue(InterneValeurListe.getTypeAcronymeMNHN());
mnhnChp.setValue(acronyme[1]);
}
}
if (!str.getTypePrive().isEmpty()) {
if (str.getTypePrive().matches("^[0-9]+$")) {
comboTypeStructure.setValue(InterneValeurListe.getTypePrivee());
303,6 → 377,7
adrChp.setValue(str.getAdresse());
cpChp.setValue(str.getCodePostal());
GWT.log("Classe :"+this.getClass(), null);
villeChp.setValue(str.getVille());
regionChp.setValue(str.getRegion());
if (str.getPays().matches("^[A-Z]{2}$")) {
316,6 → 391,18
emailChp.setValue(str.getCourriel());
urlChp.setValue(str.getUrl("WEB"));
}
 
private String creerTruk(List<CheckBox> liste) {
String identifiants = "";
int taille = liste.size();
for (int i = 0; i < taille; i++) {
CheckBox cac = liste.get(i);
if (cac.isEnabled()) {
identifiants = identifiants.concat(";"+cac.getData("id"));
}
}
return identifiants.replaceFirst("^;", "");
}
private TabItem creerOngletValorisation() {
valorisationOnglet = new TabItem();
334,7 → 421,7
actionTrukCacGrpChp.setFieldLabel("Si oui, lesquelles ?");
valorisationOnglet.add(actionTrukCp);
TextField<String> publicationChp = new TextField<String>();
publicationChp = new TextField<String>();
publicationChp.setFieldLabel("Quelques titres des ouvrages, articles scientifiques, ...");
valorisationOnglet.add(publicationChp);
343,7 → 430,7
autreCollectionTrukCacGrpChp.setFieldLabel("L'organisme dispose-t-il d'autres collections (permettant une valorisation pluridisciplinaire) ?");
valorisationOnglet.add(autreCollectionTrukCp);
RadioGroup futureActionMarkRGrpChp = creerChoixUniqueRadioGroupe("future_action_mark", "ouiNon");
futureActionMarkRGrpChp = creerChoixUniqueRadioGroupe("future_action_mark", "ouiNon");
futureActionMarkRGrpChp.setFieldLabel("Envisagez vous des actions de valorisation dans le cadre de votre politique culturelle ?");
valorisationOnglet.add(futureActionMarkRGrpChp);
352,7 → 439,7
futureActionChp.hide();
valorisationOnglet.add(futureActionChp);
RadioGroup rechercheMarkRGrpChp = creerChoixUniqueRadioGroupe("recherche_mark", "ouiNon");
rechercheMarkRGrpChp = creerChoixUniqueRadioGroupe("recherche_mark", "ouiNon");
rechercheMarkRGrpChp.setFieldLabel("Vos collections botaniques sont-elles utilisées pour des recherches scientifiques ?");
valorisationOnglet.add(rechercheMarkRGrpChp);
368,7 → 455,7
typeRechercheTrukCacGrpChp.setFieldLabel("Et pour quelles recherches ?");
valorisationOnglet.add(typeRechercheTrukCp);
RadioGroup sansMotifAccesMarkRGrpChp = creerChoixUniqueRadioGroupe("sans_motif_acces_mark", "ouiNon");
sansMotifAccesMarkRGrpChp = creerChoixUniqueRadioGroupe("sans_motif_acces_mark", "ouiNon");
sansMotifAccesMarkRGrpChp.setFieldLabel("Peut-on consulter vos collections botaniques sans motif de recherches scientifiques ?");
valorisationOnglet.add(sansMotifAccesMarkRGrpChp);
377,7 → 464,7
sansMotifAccesChp.setFieldLabel("Si oui, quelles démarches doit-on faire pour les consulter ?");
valorisationOnglet.add(sansMotifAccesChp);
RadioGroup avecMotifAccesMarkRGrpChp = creerChoixUniqueRadioGroupe("avec_motif_acces_mark", "ouiNon");
avecMotifAccesMarkRGrpChp = creerChoixUniqueRadioGroupe("avec_motif_acces_mark", "ouiNon");
avecMotifAccesMarkRGrpChp.setFieldLabel("Peut-on visiter vos collections botaniques avec des objectifs de recherches scientifiques ?");
valorisationOnglet.add(avecMotifAccesMarkRGrpChp);
394,9 → 481,9
conservationOnglet.setScrollMode(Scroll.AUTO);
conservationOnglet.setLayout(creerFormLayout(650, LabelAlign.TOP, null));
RadioGroup markFormationRGrpChp = creerChoixUniqueRadioGroupe("formation_mark", "ouiNon");
markFormationRGrpChp.setFieldLabel("Le personnel s'occupant des collections a-t-il suivi des formations en conservations ?");
conservationOnglet.add(markFormationRGrpChp);
formationMarkRGrpChp = creerChoixUniqueRadioGroupe("formation_mark", "ouiNon");
formationMarkRGrpChp.setFieldLabel("Le personnel s'occupant des collections a-t-il suivi des formations en conservations ?");
conservationOnglet.add(formationMarkRGrpChp);
formationChp = new TextField<String>();
formationChp.hide();
403,9 → 490,9
formationChp.setFieldLabel("Si oui, lesquelles ?");
conservationOnglet.add(formationChp);
RadioGroup markInteretFormationRGrpChp = creerChoixUniqueRadioGroupe("interet_formation_mark", "ouiNon");
markInteretFormationRGrpChp.setFieldLabel("Seriez vous intéressé par une formation à la conservation et à la restauration d'herbier ?");
conservationOnglet.add(markInteretFormationRGrpChp);
interetFormationMarkRGrpChp = creerChoixUniqueRadioGroupe("interet_formation_mark", "ouiNon");
interetFormationMarkRGrpChp.setFieldLabel("Seriez vous intéressé par une formation à la conservation et à la restauration d'herbier ?");
conservationOnglet.add(interetFormationMarkRGrpChp);
localStockageTrukCp = creerChoixMultipleCp("localStockage");
localStockageTrukCacGrpChp = new CheckBoxGroup();
422,7 → 509,7
parametreStockageTrukCacGrpChp.setFieldLabel("Quels paramètres maîtrisez vous ?");
conservationOnglet.add(parametreStockageTrukCp);
RadioGroup collectionCommuneMarkRGrpChp = creerChoixUniqueRadioGroupe("collection_commune_mark", "ouiNon");
collectionCommuneMarkRGrpChp = creerChoixUniqueRadioGroupe("collection_commune_mark", "ouiNon");
collectionCommuneMarkRGrpChp.setFieldLabel("Les collections botaniques sont-elles conservées avec d'autres collections dans les mêmes locaux (problème de conservation en commun) ?");
conservationOnglet.add(collectionCommuneMarkRGrpChp);
432,11 → 519,11
collectionAutreTrukCp.hide();
conservationOnglet.add(collectionAutreTrukCp);
RadioGroup accesControleMarkRGrpChp = creerChoixUniqueRadioGroupe("mark_acces_controle", "ouiNon");
accesControleMarkRGrpChp = creerChoixUniqueRadioGroupe("mark_acces_controle", "ouiNon");
accesControleMarkRGrpChp.setFieldLabel("L'accès à vos collections botanique est-il contrôlé (ex. : manipulation réservées à des personnes compétentes) ?");
conservationOnglet.add(accesControleMarkRGrpChp);
RadioGroup restaurationMarkRGrpChp = creerChoixUniqueRadioGroupe("restauration_mark", "ouiNon");
restaurationMarkRGrpChp = creerChoixUniqueRadioGroupe("restauration_mark", "ouiNon");
restaurationMarkRGrpChp.setFieldLabel("Effectuez vous des opérations de restauration ou de remise en état de vos collections botaniques ?");
conservationOnglet.add(restaurationMarkRGrpChp);
446,10 → 533,13
opRestauTrukCp.hide();
conservationOnglet.add(opRestauTrukCp);
// Création d'un ContentPanel vide et du groupe de bouton radio
// Le groupe de bouton radio recevra les boutons au moment de la réception des données (rafraichir()) et ser à ce moment là ajouter au ContenetPanel
materielConservationCp = creerChoixMultipleCp("onep");
conservationOnglet.add(materielConservationCp);
materielConservationCeRGrpChp = creerChoixUniqueRadioGroupe("materiel_conservation_ce", "onep");
materielConservationCeRGrpChp.setFieldLabel("Utilisez vous du matériel de conservation ?");
materielConservationCeRGrpChp.setToolTip(new ToolTipConfig("Matériel de conservation", "matériel spécialisé pour la conservation des archives ou du patrimoine fragile. Ce matériel possède des propriétés mécaniques et chimiques qui font qu'il résiste dans le temps et que sa dégradation n'entraîne pas de dommages sur le matériel qu'il aide à conserver. Exemples : papier neutre, papier gommé, etc..."));
conservationOnglet.add(materielConservationCeRGrpChp);
autreMaterielTrukCp = creerChoixMultipleCp("autreMateriel");
autreMaterielTrukCp.hide();
457,9 → 547,9
autreMaterielTrukCacGrpChp.setFieldLabel("Si non, qu'utilisez vous comme matériel ?");
conservationOnglet.add(autreMaterielTrukCp);
RadioGroup markTraitementRGrpChp = creerChoixUniqueRadioGroupe("traitement_mark", "ouiNon");
markTraitementRGrpChp.setFieldLabel("Réalisez vous actuellement des traitements globaux contre les insectes ?");
conservationOnglet.add(markTraitementRGrpChp);
traitementMarkRGrpChp = creerChoixUniqueRadioGroupe("traitement_mark", "ouiNon");
traitementMarkRGrpChp.setFieldLabel("Réalisez vous actuellement des traitements globaux contre les insectes ?");
conservationOnglet.add(traitementMarkRGrpChp);
traitementTrukCp = creerChoixMultipleCp("insecteTraitement");
traitementTrukCp.hide();
467,13 → 557,13
traitementTrukCacGrpChp.setFieldLabel("Si oui, lesquels ?");
conservationOnglet.add(traitementTrukCp);
RadioGroup markCollectionAcquisitionRGrpChp = creerChoixUniqueRadioGroupe("collection_acquisition_mark", "ouiNon");
markCollectionAcquisitionRGrpChp.setFieldLabel("Actuellement, vos collections botaniques s'accroissent-elles de nouvelles acquisitions ?");
conservationOnglet.add(markCollectionAcquisitionRGrpChp);
collectionAcquisitionMarkRGrpChp = creerChoixUniqueRadioGroupe("collection_acquisition_mark", "ouiNon");
collectionAcquisitionMarkRGrpChp.setFieldLabel("Actuellement, vos collections botaniques s'accroissent-elles de nouvelles acquisitions ?");
conservationOnglet.add(collectionAcquisitionMarkRGrpChp);
RadioGroup markEchantillonAcquisitionRGrpChp = creerChoixUniqueRadioGroupe("echantillon_acquisition_mark", "ouiNon");
markEchantillonAcquisitionRGrpChp.setFieldLabel("Actuellement, mettez vous en herbier de nouveaux échantillons ?");
conservationOnglet.add(markEchantillonAcquisitionRGrpChp);
echantillonAcquisitionMarkRGrpChp = creerChoixUniqueRadioGroupe("echantillon_acquisition_mark", "ouiNon");
echantillonAcquisitionMarkRGrpChp.setFieldLabel("Actuellement, mettez vous en herbier de nouveaux échantillons ?");
conservationOnglet.add(echantillonAcquisitionMarkRGrpChp);
 
traitementAcquisitionMarkRGrpChp = creerChoixUniqueRadioGroupe("traitement_acquisition_mark", "ouiNon");
traitementAcquisitionMarkRGrpChp.hide();
510,7 → 600,7
personnelOnglet.setScrollMode(Scroll.AUTO);
personnelOnglet.setLayout(creerFormLayout(400, LabelAlign.LEFT, null));
NumberField nbreTotalPersonneStructureChp = new NumberField();
nbreTotalPersonneStructureChp = new NumberField();
nbreTotalPersonneStructureChp.setFieldLabel("Nombre de personne travaillant dans l'institution");
nbreTotalPersonneStructureChp.setFormat(NumberFormat.getFormat("#"));
nbreTotalPersonneStructureChp.setToolTip("Ce champ doit contenir un nombre");
1034,12 → 1124,12
RadioGroup radioGroup = new RadioGroup(groupeNom);
radioGroup.setName(groupeNom);
 
if (! listeNom.equals("ouiNon")) {
modele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(listeNom));
} else {
if (listeNom.equals("ouiNon")) {
// modele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(listeNom));
//} else {
ValeurListe ouiNonListe = new ValeurListe();
ouiNonListe.ajouter(new Valeur("000999", "Oui", "NULL", "NULL"));
ouiNonListe.ajouter(new Valeur("000998", "Non", "NULL", "NULL"));
ouiNonListe.ajouter(new Valeur("1", "Oui", "NULL", "NULL"));
ouiNonListe.ajouter(new Valeur("0", "Non", "NULL", "NULL"));
creerChoixUniqueBoutonRadio(radioGroup, ouiNonListe);
}
1051,10 → 1141,10
Valeur val = listeValeurs.get(it.next());
Radio radioBtn = new Radio();
radioGroupe.add(radioBtn);
radioBtn.setName(radioGroupe.getName().replace("_grp", ""));
//radioBtn.setId(val.getId()+"_"+radioBtn.getName());
radioBtn.setId(val.getId()+"_"+radioBtn.getName());
radioBtn.setBoxLabel(val.getNom());
radioBtn.setValueAttribute(val.getId());
radioBtn.addListener(Events.Change, new Listener<ComponentEvent>() {
public void handleEvent(ComponentEvent be) {
1067,6 → 1157,7
if (! val.getDescription().equals("NULL")) {
radioBtn.setToolTip(new ToolTipConfig(val.getNom(), val.getDescription()));
}
radioGroupe.add(radioBtn);
}
}
1156,13 → 1247,15
* @param boolAutreChp booléen indiquant si oui ou non le champ autre doit apparaître
* @return
*/
private void creerChoixMultipleCac(ContentPanel cp, CheckBoxGroup cacGroupe, ValeurListe listeValeurs, Boolean boolAutreChp) {
private void creerChoixMultipleCac(ContentPanel cp, CheckBoxGroup cacGroupe, ValeurListe listeValeurs, Field<String> autreChp) {
cacGroupe.setAutoWidth(true);
cacGroupe.setData("liste_id", listeValeurs.getId());
for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
Valeur val = listeValeurs.get(it.next());
String nom = val.get("nom");
CheckBox cac = new CheckBox();
cac.setId("val-"+val.getId());
cac.setData("id", val.getId());
cac.setBoxLabel(nom);
if (! val.getDescription().equals("NULL")) {
cac.setToolTip(new ToolTipConfig(val.getNom(), val.getDescription()));
1171,11 → 1264,11
}
cp.add(cacGroupe);
if (boolAutreChp == true) {
if (autreChp != null) {
ContentPanel autreCp = new ContentPanel();
autreCp.setLayout(creerFormLayout(75, LabelAlign.TOP, 0));
autreCp.setHeaderVisible(false);
TextField<String> autreChp = new TextField<String>();
autreChp.setId("autre-"+listeValeurs.getId());
autreChp.setFieldLabel("Autre");
autreChp.setLabelStyle("font-weight:normal;");
autreCp.add(autreChp);
1197,11 → 1290,19
Info.display("Ajout d'une Institution", info.toString());
} else if (info.getType().equals("selection_structure")) {
Info.display("Modification d'une institution", info.toString());
Structure str = (Structure) info.getDonnee(0);
mode = "MODIF";
GWT.log(mode, null);
structureFormPanneau.setHeading(i18nC.titreModifFormStructurePanneau()+" - ID : "+str.getId());
peuplerFormulaire(str);
String titre = i18nC.titreModifFormStructurePanneau();
if (info.getDonnee(0) != null) {
Structure str = (Structure) info.getDonnee(0);
titre += " - ID : "+str.getId();
peuplerStructure(str);
}
if (info.getDonnee(1) != null) {
StructureConservation strConservation = (StructureConservation) info.getDonnee(1);
peuplerStructureConservation(strConservation);
}
structureFormPanneau.setHeading(titre);
}
} else if (nouvelleDonnees instanceof ValeurListe) {
ValeurListe listeValeurs = (ValeurListe) nouvelleDonnees;
1239,54 → 1340,69
comboPays.setStore(magazinPays);
}
if (listeValeurs.getId().equals(config.getListeId("localStockage"))) {
creerChoixMultipleCac(localStockageTrukCp, localStockageTrukCacGrpChp, listeValeurs, true);
localStockageAutreChp = new TextField<String>();
creerChoixMultipleCac(localStockageTrukCp, localStockageTrukCacGrpChp, listeValeurs, localStockageAutreChp);
}
if (listeValeurs.getId().equals(config.getListeId("meubleStockage"))) {
creerChoixMultipleCac(meubleStockageTrukCp, meubleStockageTrukCacGrpChp, listeValeurs, true);
meubleStockageAutreChp = new TextField<String>();
creerChoixMultipleCac(meubleStockageTrukCp, meubleStockageTrukCacGrpChp, listeValeurs, meubleStockageAutreChp);
}
if (listeValeurs.getId().equals(config.getListeId("parametreStockage"))) {
creerChoixMultipleCac(parametreStockageTrukCp, parametreStockageTrukCacGrpChp, listeValeurs, true);
parametreStockageAutreChp = new TextField<String>();
creerChoixMultipleCac(parametreStockageTrukCp, parametreStockageTrukCacGrpChp, listeValeurs, parametreStockageAutreChp);
}
if (listeValeurs.getId().equals(config.getListeId("autreCollection"))) {
if (collectionAutreTrukCp.getItemByItemId("collectionAutreTrukCacGrpChp") == null) {
collectionAutreTrukCacGrpChp.setId("collectionAutreTrukCacGrpChp");
creerChoixMultipleCac(collectionAutreTrukCp, collectionAutreTrukCacGrpChp, listeValeurs, true);
collectionAutreAutreChp = new TextField<String>();
creerChoixMultipleCac(collectionAutreTrukCp, collectionAutreTrukCacGrpChp, listeValeurs, collectionAutreAutreChp);
}
if (autreCollectionTrukCp.getItemByItemId("autreCollectionTrukCacGrpChp") == null) {
autreCollectionTrukCacGrpChp.setId("autreCollectionTrukCacGrpChp");
creerChoixMultipleCac(autreCollectionTrukCp, autreCollectionTrukCacGrpChp, listeValeurs, true);
autreCollectionAutreChp = new TextField<String>();
creerChoixMultipleCac(autreCollectionTrukCp, autreCollectionTrukCacGrpChp, listeValeurs, autreCollectionAutreChp);
}
}
if (listeValeurs.getId().equals(config.getListeId("opRestau"))) {
creerChoixMultipleCac(opRestauTrukCp, opRestauTrukCacGrpChp, listeValeurs, true);
opRestauAutreChp = new TextField<String>();
creerChoixMultipleCac(opRestauTrukCp, opRestauTrukCacGrpChp, listeValeurs, opRestauAutreChp);
}
if (listeValeurs.getId().equals(config.getListeId("onep"))) {
creerChoixUniqueBoutonRadio(materielConservationCeRGrpChp, listeValeurs);
materielConservationCp.add(materielConservationCeRGrpChp);
materielConservationCp.layout();
}
if (listeValeurs.getId().equals(config.getListeId("autreMateriel"))) {
creerChoixMultipleCac(autreMaterielTrukCp, autreMaterielTrukCacGrpChp, listeValeurs, true);
autreMaterielAutreChp = new TextField<String>();
creerChoixMultipleCac(autreMaterielTrukCp, autreMaterielTrukCacGrpChp, listeValeurs, autreMaterielAutreChp);
}
if (listeValeurs.getId().equals(config.getListeId("poisonTraitement"))) {
creerChoixMultipleCac(poisonTraitementTrukCp, poisonTraitementTrukCacGrpChp, listeValeurs, true);
poisonTraitementAutreChp = new TextField<String>();
creerChoixMultipleCac(poisonTraitementTrukCp, poisonTraitementTrukCacGrpChp, listeValeurs, poisonTraitementAutreChp);
}
if (listeValeurs.getId().equals(config.getListeId("insecteTraitement"))) {
if (traitementTrukCp.getItemByItemId("traitementTrukCacGrpChp") == null) {
traitementTrukCacGrpChp.setId("traitementTrukCacGrpChp");
creerChoixMultipleCac(traitementTrukCp, traitementTrukCacGrpChp, listeValeurs, true);
traitementAutreChp = new TextField<String>();
creerChoixMultipleCac(traitementTrukCp, traitementTrukCacGrpChp, listeValeurs, traitementAutreChp);
}
if (insecteTraitementTrukCp.getItemByItemId("insecteTraitementTrukCacGrpChp") == null) {
insecteTraitementTrukCacGrpChp.setId("insecteTraitementTrukCacGrpChp");
creerChoixMultipleCac(insecteTraitementTrukCp, insecteTraitementTrukCacGrpChp, listeValeurs, true);
insecteTraitementAutreChp = new TextField<String>();
creerChoixMultipleCac(insecteTraitementTrukCp, insecteTraitementTrukCacGrpChp, listeValeurs, insecteTraitementAutreChp);
}
}
if (listeValeurs.getId().equals(config.getListeId("actionValorisation"))) {
creerChoixMultipleCac(actionTrukCp, actionTrukCacGrpChp, listeValeurs, true);
actionAutreChp = new TextField<String>();
creerChoixMultipleCac(actionTrukCp, actionTrukCacGrpChp, listeValeurs, actionAutreChp);
}
if (listeValeurs.getId().equals(config.getListeId("continentEtFr"))) {
creerChoixMultipleCac(provenanceRechercheTrukCp, provenanceRechercheTrukCacGrpChp, listeValeurs, true);
provenanceRechercheAutreChp = new TextField<String>();
creerChoixMultipleCac(provenanceRechercheTrukCp, provenanceRechercheTrukCacGrpChp, listeValeurs, provenanceRechercheAutreChp);
}
if (listeValeurs.getId().equals(config.getListeId("typeRecherche"))) {
creerChoixMultipleCac(typeRechercheTrukCp, typeRechercheTrukCacGrpChp, listeValeurs, true);
typeRecherche = new TextField<String>();
creerChoixMultipleCac(typeRechercheTrukCp, typeRechercheTrukCacGrpChp, listeValeurs, typeRecherche);
}
//GWT.log("La liste #"+listeValeurs.getId()+" a été reçue!", null);
} else {
/trunk/src/org/tela_botanica/client/Modele.java
9,6 → 9,7
import org.tela_botanica.client.modeles.PublicationListeAsyncDao;
import org.tela_botanica.client.modeles.Structure;
import org.tela_botanica.client.modeles.StructureAsyncDao;
import org.tela_botanica.client.modeles.StructureConservation;
import org.tela_botanica.client.modeles.StructureListe;
import org.tela_botanica.client.modeles.Utilisateur;
import org.tela_botanica.client.modeles.UtilisateurAsyncDao;
95,9 → 96,9
structureDao.supprimer(vue, idUtilisateur, idStr);
}
public void modifierStructure(Rafraichissable vue, String utilisateurId, Structure structure) {
public void modifierStructure(Rafraichissable vue, String utilisateurId, Structure structure, StructureConservation conservation) {
StructureAsyncDao structureDao = new StructureAsyncDao();
structureDao.modifier(vue, utilisateurId, structure);
structureDao.modifier(vue, utilisateurId, structure, conservation);
}
public void obtenirListeProjets () {
/trunk/src/org/tela_botanica/client/modeles/StructureConservation.java
41,21 → 41,41
}
}
public String getFormationMark() {
return renvoyerValeurCorrecte("mark_formation");
}
public void setFormationMark(String mf) {
this.set("mark_formation", mf);
}
public String getFormation() {
return renvoyerValeurCorrecte("formation");
}
public void setFormation(String f) {
this.set("formation", f);
}
public String getFormationInteret() {
return renvoyerValeurCorrecte("mark_formation_interet");
}
public void setFormationInteret(String f) {
this.set("mark_formation_interet", f);
}
 
public String getStockageLocal() {
return renvoyerValeurCorrecte("truk_stockage_local");
}
public void setStockageLocal(String sl) {
this.set("truk_stockage_local", sl);
}
public void setStockageLocal(String type, String valeur) {
String chaineExistante = renvoyerValeurCorrecte("truk_stockage_local");
if (chaineExistante.equals("")) {
this.set("truk_stockage_local", type+"##"+valeur);
} else {
this.set("truk_stockage_local", chaineExistante+";"+type+"##"+valeur);
}
}
public void setStockageMeuble(String sm) {
this.set("truk_stockage_meuble", sm);
/trunk/src/org/tela_botanica/client/modeles/aDonnee.java
1,8 → 1,10
package org.tela_botanica.client.modeles;
 
import java.io.Serializable;
import java.util.List;
 
import com.extjs.gxt.ui.client.data.BaseModelData;
import com.extjs.gxt.ui.client.widget.form.CheckBox;
 
public abstract class aDonnee extends BaseModelData implements Serializable {
 
20,19 → 22,17
* @return la valeur associée à la clé
*/
public String renvoyerValeurCorrecte(String cle) {
String sortie = "";
if (this.get(cle) != null) {
String valeur = this.get(cle);
if (valeur.equals("null")) {
return "";
} else {
if (! valeur.equals("null")) {
char nullChar = '\u0000';
String sNull = "" + nullChar;
valeur = valeur.replaceAll(sNull, "");
return valeur;
sortie = valeur;
}
} else {
return "";
}
return sortie;
}
public String getDateModification() {
/trunk/src/org/tela_botanica/client/modeles/StructureAsyncDao.java
56,7 → 56,10
final JSONObject reponse = responseValue.isObject();
// Transformation du tableau JSON réponse en ListeInstitution
Structure structure = new Structure(reponse);
Information info = new Information("selection_structure", structure);
StructureConservation structureConservation = new StructureConservation(reponse);
Information info = new Information("selection_structure");
info.setDonnee(0, structure);
info.setDonnee(1, structureConservation);
r.rafraichir(info);
} else if (responseValue.isArray() != null) {
final JSONArray reponse = responseValue.isArray();
233,7 → 236,7
}
}
 
public void modifier(final Rafraichissable r, String utilisateurId, Structure str) {
public void modifier(final Rafraichissable r, String utilisateurId, Structure str, StructureConservation conservation) {
final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() +
"CoelStructureListe/" +
str.getId()
263,6 → 266,7
"&cs_courriel =" + URL.encodeComponent(str.getCourriel()) +
"&cs_truk_url =" + URL.encodeComponent(str.getUrl()) +
"&cs_nbre_personne =" + URL.encodeComponent(str.getNbrePersonne()) +
"&csc_mark_formation =" + URL.encodeComponent(conservation.getFormationMark()) +
"";
try {
/trunk/src/org/tela_botanica/client/modeles/Information.java
12,13 → 12,17
public Information() {
messages = new ArrayList<String>();
donnees = new ArrayList<Object>();
}
 
public Information(String t) {
donnees = new ArrayList<Object>();
messages = new ArrayList<String>();
type = t;
}
public Information(String t, String m) {
donnees = new ArrayList<Object>();
messages = new ArrayList<String>();
messages.add(m);
type = t;
25,6 → 29,7
}
public Information(String t, JSONArray jsonArray) {
donnees = new ArrayList<Object>();
messages = new ArrayList<String>();
for(int i = 0 ; i < jsonArray.size() ; i++) {
if (jsonArray.get(i).isString() != null) {
35,6 → 40,7
}
 
public Information(String t, Object o) {
messages = new ArrayList<String>();
donnees = new ArrayList<Object>();
donnees.add(o);
type = t;
62,8 → 68,17
public void setDonnee(Object objet) {
donnees.add(objet);
}
public void setDonnee(int index, Object objet) {
if (objet != null) {
donnees.add(index, objet);
}
}
public Object getDonnee(int index) {
return donnees.get(index);
try {
return donnees.get(index);
} catch (Exception e) {
return null;
}
}
public ArrayList<Object> getDonnees() {