/trunk/src/org/tela_botanica/client/vues/personne/PersonneFormPublication.java |
---|
7,6 → 7,7 |
import org.tela_botanica.client.ComposantClass; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.composants.InfoLogger; |
import org.tela_botanica.client.images.Images; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Information; |
81,6 → 82,9 |
private FenetreForm fenetreFormulaire = null; |
public PersonneFormPublication(Formulaire formulaireCourrant) { |
Debug.log("|> PersonneFormPublication : [constructeur]"); |
initialiserOnglet(formulaireCourrant); |
setId("publication"); |
setText(Mediateur.i18nC.collectionPublication()); |
97,6 → 101,9 |
} |
private void initialiser() { |
Debug.log("|> PersonneFormPublication.initialiser()"); |
// Remise à zéro des modification dans la liste des auteurs |
idGenere = 1; |
publicationsAjoutees = new PublicationAPersonneListe(); |
107,10 → 114,35 |
} |
public void mettreAJourPersonne() { |
Debug.log("|> *** BEGIN PersonneFormPublication.mettreAJourPersonne()"); |
personneSelectionnee = ((PersonneForm) formulaire).personneSelectionnee; |
Debug.log("|--> PersonneFormPublication.mettreAJourPersonne : personneSelectionnee="+personneSelectionnee.toString()); |
if (personneSelectionnee==null) Debug.log("|> *** (personneSelectionnee==null)"); |
else Debug.log("|> *** (personneSelectionnee!=null)"); |
//Boucle sur les role pour trouver les publication à personne |
if ((roles != null) && (personneSelectionnee!=null)) { |
// FIXME ! |
//------------------- |
// Author : Cyprien |
//------------------- |
// J'ai rajouté le test (toString()!="") parce que bien que l'objet personneSelectionne soit vide, (personneSelectionnee!=null) retournait |
// tout de meme VRAI |
// Mais le vrai problème, c'est que personneSelectionne puisse être nul ! personneSelectionne devrait toujours etre affecté à quelqu'un. |
// De plus, il y a un étrange comportement lorsque l'on clique sur "modifier" une personne : je ne sais pas pourquoi mais les opérations |
// s'effectuent deux fois au lieu d'une, c-a-d que le formulaire lance deux fois l'operation rafraichir au lieu d'une ... et l'opération |
// rafraichir lance à son tour de nombreuses opérations qui en conséquence sont effectuées deux fois au lieu d'une |
if ((roles != null) && (personneSelectionnee!=null) && (!personneSelectionnee.toString().equals(""))) { |
mediateur.selectionnerPublicationAPersonne(this, null, personneSelectionnee.getId(), roles); |
Debug.log("|--> PersonneFormPublication.mettreAJourPersonne : selectionnerPublicationAPersonne(this, null, personneSelectionnee.getId(), roles)"); |
Debug.log("| avec personneSelectionnee.getId()="+personneSelectionnee.getId()); |
Debug.log("|> END PersonneFormPublication.mettreAJourPersonne()"); |
} |
} |
176,7 → 208,7 |
PublicationAPersonne publicationSaisieSelectionnee = grille.getSelectionModel().getSelectedItem(); |
if (publicationSaisieSelectionnee == null) { |
Info.display(i18nC.informationTitreGenerique(), i18nC.selectionnerPublication()); |
InfoLogger.display(i18nC.informationTitreGenerique(), i18nC.selectionnerPublication()); |
} else { |
fenetreFormulaire = creerFenetreModaleAvecFormulairePersonne(Formulaire.MODE_MODIFIER); |
fenetreFormulaire.show(); |
247,7 → 279,7 |
public void componentSelected(ButtonEvent ce) { |
PublicationAPersonne publicationSaisieSelectionnee = grille.getSelectionModel().getSelectedItem(); |
if (publicationSaisieSelectionnee == null) { |
Info.display(i18nC.informationTitreGenerique(), i18nC.selectionnerPublication()); |
InfoLogger.display(i18nC.informationTitreGenerique(), i18nC.selectionnerPublication()); |
} else { |
supprimerDansGrille(publicationSaisieSelectionnee); |
} |
269,6 → 301,9 |
} |
private void actualiserGrille() { |
Debug.log("|> PersonneFormPublication.actualiserGrille()"); |
if (mode.equals(Formulaire.MODE_MODIFIER)) { |
mediateur.selectionnerPublicationAPersonne(this, null, personneSelectionnee.getId(), "%"); |
} else { |
314,8 → 349,9 |
} |
private void ajouterDansGrille(Publication publication, int index) { |
Debug.log("|> PersonneFormPublication.ajouterDansGrille(Publication publication, int index)"); |
if (publication != null) { |
Debug.log("|--> publication != null"); |
if (!listePublicationsLiees.containsKey(publication.getId())) { |
PublicationAPersonne publicationLiee = new PublicationAPersonne(); |
publicationLiee.setPersonne(personneSelectionnee); |
323,6 → 359,9 |
publicationLiee.setIdPublication(publication.getId()); |
publicationLiee.set("_etat_", aDonnee.ETAT_AJOUTE); |
listePublicationsLiees.put(publication.getId(), publicationLiee); |
Debug.log("|--> personneSelectionneeID="+personneSelectionnee.getId()); |
Debug.log("|--> publicationID="+publication.getId()); |
// Ajout à la grille |
grille.stopEditing(); |
330,7 → 369,7 |
grille.startEditing(index, 0); |
grille.getSelectionModel().select(index, false); |
} else { |
Info.display("Information", "La publication choisie existe déjà dans la liste."); |
InfoLogger.display("Information", "La publication choisie existe déjà dans la liste."); |
} |
} |
} |
339,6 → 378,9 |
* Met à jour la grille avec les informations contenus dans la variable listePublicationsLiees |
*/ |
private void mettreAJourGrille() { |
Debug.log("|> PersonneFormPublication.mettreAJourGrille()"); |
grille.getStore().removeAll(); |
grille.getStore().add(listePublicationsLiees.toList()); |
} |
361,6 → 403,9 |
} |
private EditorGrid<PublicationAPersonne> creerGrille() { |
Debug.log("|> PersonneFormPublication.creerGrille()"); |
ListStore<PublicationAPersonne> storeGrille = new ListStore<PublicationAPersonne>(); |
storeGrille.addListener(Store.Add, new Listener<StoreEvent<PublicationAPersonne>>() { |
public void handleEvent(StoreEvent<PublicationAPersonne> ce) { |
404,7 → 449,6 |
public Object preProcessValue(Object valeur) { |
Valeur retour = null; |
if (valeur != null ) { |
Debug.log(valeur.toString()); |
if (typeRelationCombo.getStore().findModel("nom", valeur.toString()) != null) { |
retour = typeRelationCombo.getStore().findModel("nom", valeur.toString()); |
} else if (typeRelationCombo.getStore().findModel("abr", valeur.toString()) != null) { |
522,10 → 566,16 |
} |
public void rafraichir(Object nouvellesDonnees) { |
Debug.log("|> PersonneFormPublication.rafraichir() BEGIN"); |
if (nouvellesDonnees instanceof Information) { |
Information info = (Information) nouvellesDonnees; |
rafraichirInformation(info); |
} else if (nouvellesDonnees instanceof ValeurListe) { |
Debug.log("|--> instanceof ValeurListe"); |
ValeurListe listeValeurs = (ValeurListe) nouvellesDonnees; |
if (listeValeurs.getId().equals(config.getListeId("relationPersonnePublication"))) { |
Formulaire.rafraichirComboBox(listeValeurs, typeRelationCombo); |
533,26 → 583,45 |
mettreAJourPersonne(); |
} |
} else if (nouvellesDonnees instanceof PublicationListe) { |
Debug.log("|--> instanceof PublicationListe"); |
PublicationListe listePublications = (PublicationListe) nouvellesDonnees; |
rafraichirPublicationListe(listePublications); |
} else if (nouvellesDonnees instanceof PublicationAPersonneListe) { |
Debug.log("|--> instanceof PublicationAPersonneListe"); |
PublicationAPersonneListe papl = (PublicationAPersonneListe) nouvellesDonnees; |
List<PublicationAPersonne> paplListe = papl.toList(); |
if (paplListe.size()>0){ |
Debug.log("|--> paplListe.size()>0"); |
Debug.log("|--> paplListe="+paplListe.toString()); |
Iterator<PublicationAPersonne> it = paplListe.iterator(); |
while (it.hasNext()) { |
PublicationAPersonne pap = it.next(); |
Debug.log("|--> listePublicationsLiees.size="+listePublicationsLiees.size()); |
listePublicationsLiees.put(pap.getPublicationLiee().getId(), pap); |
} |
mettreAJourGrille(); |
} |
else { |
Debug.log("|--> paplListe.size()<=0"); |
} |
} else { |
GWT.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null); |
} |
Debug.log("|> PersonneFormPublication.rafraichir() END"); |
} |
private void rafraichirPublicationListe(PublicationListe listePublications) { |
Debug.log("|> PersonneFormPublication.rafraichirPublicationListe(PublicationListe listePublications)"); |
publicationsSaisiesComboBox.getStore().removeAll(); |
publicationsSaisiesComboBox.getStore().add(listePublications.toList()); |
publicationsSaisiesComboBox.expand(); |
559,6 → 628,9 |
} |
public void rafraichirInformation(Information info) { |
Debug.log("|> PersonneFormPublication.rafraichirInformation(Information info) BEGIN"); |
if (info.getMessages() != null && !info.getMessages().toString().equals("[]")) { |
GWT.log("MESSAGES:\n"+info.getMessages().toString(), null); |
} |
583,9 → 655,9 |
ajouterDansGrille(publication); |
} |
} else if (type.equals("suppression_collection_a_publication")) { |
Info.display("Suppression des publications liées à la collection", info.toString()); |
InfoLogger.display("Suppression des publications liées à la collection", info.toString()); |
} else if (type.equals("ajout_collection_a_publication")) { |
Info.display("Ajout des publications liées à la collection", info.toString()); |
InfoLogger.display("Ajout des publications liées à la collection", info.toString()); |
} else { |
GWT.log(Mediateur.i18nM.erreurRafraichir(info.getClass(), this.getClass()), null); |
} |
595,11 → 667,14 |
grille.getStore().removeAll(); |
grille.getStore().add(personneSelectionnee.getPublicationsLiees().toList()); |
layout(); |
Info.display(i18nC.chargementPublication(), i18nC.ok()); |
InfoLogger.display(i18nC.chargementPublication(), i18nC.ok()); |
} |
public void collecter() { |
Debug.log("|*** PersonneFormPublication.collecter() BEGIN"); |
if (etreAccede()) { |
int nbrePublication = grille.getStore().getCount(); |
for (int i = 0; i < nbrePublication; i++) { |
608,14 → 683,16 |
if (publicationLiee.get("_etat_").equals(aDonnee.ETAT_MODIFIE)) { |
// Comme il est impossible de modifier les relations nous supprimons l'ancien enregistrement et ajoutons un nouveau avec le nouveau id_role |
publicationsSupprimees.put("id"+idGenere++, publicationLiee); |
Debug.log("|--> PersonneFormPublication.collecter(), ETAT_MODIFIE, relationAAjouter, clonage de publicationLiee"); |
PublicationAPersonne relationAAjouter = (PublicationAPersonne) publicationLiee.cloner(new PublicationAPersonne()); |
publicationsAjoutees.put("id"+idGenere++, relationAAjouter); |
Debug.log(publicationLiee.toString()); |
Debug.log("|--> ETAT_MODIFE, PublicationLiee = "+publicationLiee.toString()); |
} |
if (publicationLiee.get("_etat_").equals(aDonnee.ETAT_AJOUTE)) { |
publicationsAjoutees.put("id"+idGenere++, publicationLiee); |
Debug.log(publicationLiee.toString()); |
Debug.log("|--> ETAT_AJOUTE, PublicationLiee = "+publicationLiee.toString()); |
} |
// Initialisation de la grille |
publicationLiee.set("_etat_", ""); |
624,9 → 701,13 |
} |
grille.getStore().commitChanges(); |
} |
Debug.log("|*** PersonneFormPublication.collecter() END"); |
} |
public List verifier() { |
Debug.log("|> PersonneFormPublication.verifier()"); |
List lstMessageErreur = new LinkedList<String>(); |
//Vérifier les roles |
642,21 → 723,30 |
} |
public void soumettre() { |
Debug.log("<8-8> BEGIN PersonneFormPublication.soumettre()"); |
if (mode.equals(Formulaire.MODE_MODIFIER)) { |
if (publicationsAjoutees.size() == 0 && publicationsSupprimees.size() == 0) { |
Info.display("Modification des publications liées", "Rien n'a été enregistré car le formulaire n'a pas été modifié."); |
InfoLogger.display("Modification des publications liées", "Rien n'a été enregistré car le formulaire n'a pas été modifié."); |
} else { |
// Ajout des relations CollectionAPublication |
// Ajout des relations PublicationAPersonne |
if (publicationsAjoutees.size() != 0) { |
//TODO : utiliser le role d'une liste déroulante |
Debug.log("<8-8> PersonneFormPublication - Appel à mediateur.ajouterPublicationAPersonne()"); |
mediateur.ajouterPublicationAPersonne(this, publicationsAjoutees, personneSelectionnee.getId(), null); |
} |
// Suppression des relations CollectionAPublication |
// Suppression des relations PublicationAPersonne |
if (publicationsSupprimees.size() != 0) { |
Debug.log("<8-8> PersonneFormPublication - Appel à mediateur.supprimerPublicationAPersonne()"); |
mediateur.supprimerPublicationAPersonne(this, publicationsSupprimees); |
} |
} |
} |
Debug.log("<8-8> END PersonneFormPublication.soumettre()"); |
} |
private void obtenirPublicationsSaisies(String nom) { |
/trunk/src/org/tela_botanica/client/vues/collection/CollectionDetailVue.java |
---|
1033,7 → 1033,7 |
inventaireParams.set("i18n_digital", i18nC.digitalInventaireCollectionDetail()); |
inventaireParams.set("i18n_digital_pourcent", i18nC.pourcentDigitalInventaireCollectionDetail()); |
inventaireParams.set("i18n_etat", i18nC.etatInventaireCollectionDetail()); |
inventaireParams.set("i18n_type_donnee", i18nC.typeDonneeInventaireCollectionDetail()); |
//DELETEME inventaireParams.set("i18n_type_donnee", i18nC.typeDonneeInventaireCollectionDetail()); |
CollectionBotanique collectionBotanique = collection.getBotanique(); |
String existence = construireTxtListeOntologie(collectionBotanique.getInventaire()); |
1049,7 → 1049,7 |
inventaireParams.set("digital", digital); |
inventaireParams.set("digital_pourcent", digitalPourcent); |
inventaireParams.set("etat", etat); |
inventaireParams.set("type_donnee", collectionBotanique.getInventaireDonneesTypes()); |
//DELETEME inventaireParams.set("type_donnee", collectionBotanique.getInventaireDonneesTypes()); |
afficherOnglet(inventaireTpl, inventaireParams, inventaireOnglet); |
} |
/trunk/src/org/tela_botanica/client/vues/collection/CollectionFormInventaire.java |
---|
28,7 → 28,7 |
private ChampCaseACocher digitalInventaireChp = null; |
private ChampSliderPourcentage pourcentDigitalInventaireChp = null; |
private ChampComboBoxListeValeurs etatInventaireCombo = null; |
private TextArea typeDonneeInventaireChp = null; |
//DELETEME private TextArea typeDonneeInventaireChp = null; |
public CollectionFormInventaire(Formulaire formulaireCourrant) { |
initialiserOnglet(formulaireCourrant); |
65,10 → 65,12 |
etatInventaireCombo.setTabIndex(tabIndex++); |
add(etatInventaireCombo, new FormData(300, 0)); |
/*DELETEME |
typeDonneeInventaireChp = new TextArea(); |
typeDonneeInventaireChp.setTabIndex(tabIndex++); |
typeDonneeInventaireChp.setFieldLabel(i18nC.typeDonneeInventaireCollection()); |
add(typeDonneeInventaireChp, new FormData(550, 0)); |
add(typeDonneeInventaireChp, new FormData(550, 0));*/ |
} |
public void peupler() { |
81,13 → 83,13 |
digitalInventaireChp.peupler(collectionBotanique.getInventaireDigital()); |
pourcentDigitalInventaireChp.peupler(collectionBotanique.getInventaireDigitalPourcent()); |
etatInventaireCombo.peupler(collectionBotanique.getInventaireEtat()); |
typeDonneeInventaireChp.setValue(collectionBotanique.getInventaireDonneesTypes()); |
//DELETEME typeDonneeInventaireChp.setValue(collectionBotanique.getInventaireDonneesTypes()); |
} |
} |
public void collecter() { |
initialiserCollection(); |
if (etreAccede()) { |
if (etreAccede()) { |
collectionBotaniqueCollectee.setInventaire(existenceInventaireCombo.getValeur()); |
collectionBotaniqueCollectee.setInventaireAuteur(auteurInventaireCombo.getValeur()); |
collectionBotaniqueCollectee.setInventaireForme(formeInventaireCombo.getValeur()); |
95,7 → 97,7 |
collectionBotaniqueCollectee.setInventaireDigital(digitalInventaireChp.getValeur()); |
collectionBotaniqueCollectee.setInventaireDigitalPourcent(pourcentDigitalInventaireChp.getValeur()); |
collectionBotaniqueCollectee.setInventaireEtat(etatInventaireCombo.getValeur()); |
collectionBotaniqueCollectee.setInventaireDonneesTypes(typeDonneeInventaireChp.getValue()); |
//DELETEME collectionBotaniqueCollectee.setInventaireDonneesTypes(typeDonneeInventaireChp.getValue()); |
} |
} |
/trunk/src/org/tela_botanica/client/vues/structure/StructureForm.java |
---|
7,6 → 7,7 |
import org.tela_botanica.client.ComposantClass; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.RegistreId; |
import org.tela_botanica.client.composants.InfoLogger; |
import org.tela_botanica.client.images.Images; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Information; |
24,6 → 25,7 |
import org.tela_botanica.client.modeles.structure.StructureAPersonneListe; |
import org.tela_botanica.client.modeles.structure.StructureConservation; |
import org.tela_botanica.client.modeles.structure.StructureValorisation; |
import org.tela_botanica.client.util.Debug; |
import org.tela_botanica.client.util.Pattern; |
import org.tela_botanica.client.util.UtilArray; |
import org.tela_botanica.client.util.UtilString; |
34,6 → 36,7 |
import com.extjs.gxt.ui.client.event.BaseEvent; |
import com.extjs.gxt.ui.client.event.ButtonEvent; |
import com.extjs.gxt.ui.client.event.ComponentEvent; |
import com.extjs.gxt.ui.client.event.EventType; |
import com.extjs.gxt.ui.client.event.KeyListener; |
import com.extjs.gxt.ui.client.event.Listener; |
import com.extjs.gxt.ui.client.event.SelectionChangedEvent; |
257,6 → 260,9 |
} |
public boolean soumettreFormulaire() { |
Debug.log("===> BEGIN StructureForm.soumettreFormulaire()"); |
// Vérification de la validité des champs du formulaire |
boolean fomulaireValide = verifierFormulaire(); |
if (fomulaireValide) { |
272,14 → 278,20 |
// L'ajout des relations StructureAPersonne se fait quand la structure a été ajoutée |
// Voir la méthode rafraichir(). |
} else if (mode.equals(MODE_MODIFIER)) { |
Debug.log("===> StructureForm.soumettreFormulaire(), mode="+mode); |
// Modification des informations sur la Structure |
if (structure == null && conservation == null && valorisation == null) { |
Info.display("Modification d'une institution", "Rien n'a été enregistré car le formulaire n'a pas été modifié."); |
InfoLogger.display("Modification d'une institution", "Rien n'a été enregistré car le formulaire n'a pas été modifié."); |
} else { |
mediateur.modifierStructure(this, identification.getId(), structure, conservation, valorisation); |
} |
Debug.log("===> StructureForm.soumettreFormulaire(), personnelModifie.size="+personnelModifie.size() + ", personnelAjoute.size()="+personnelAjoute.size()); |
if (personnelModifie.size() == 0 && personnelAjoute.size() == 0 && personnelSupprime.size() == 0) { |
Info.display("Modification du personnel", "Rien n'a été enregistré car le formulaire n'a pas été modifié."); |
InfoLogger.display("Modification du personnel", "Rien n'a été enregistré car le formulaire n'a pas été modifié."); |
} else { |
if (personnelModifie.size() != 0) { |
decompteRafraichissementPersonnel++; |
298,6 → 310,9 |
} |
} |
} |
Debug.log("===> END StructureForm.soumettreFormulaire()"); |
return fomulaireValide; |
} |
1027,11 → 1042,14 |
int nbrePersonne = personnelGrilleMagazin.getCount(); |
for (int i = 0; i < nbrePersonne; i++) { |
StructureAPersonne personne = personnelGrilleMagazin.getAt(i); |
Debug.log(":::> StructureForm.collecterStructurePersonnel()"); |
Debug.log(":::> etat="+personne.get("etat")); |
// Seules les lignes ajoutées ou modifiées sont prises en compte. |
Record record = personnelGrilleMagazin.getRecord(personne); |
if (personnelGrilleMagazin.getModifiedRecords().contains(record) == true |
|| (personne.get("etat") != null && personne.get("etat").equals(StructureAPersonne.ETAT_AJOUTE) )) { |
|| (personne.get("etat") != null && (personne.get("etat").equals(StructureAPersonne.ETAT_AJOUTE) || personne.get("etat").equals(StructureAPersonne.ETAT_MODIFIE)) )) { |
// Gestion de l'id de la structure |
if (mode.equals("MODIF")) { |
1055,6 → 1073,10 |
} else { |
personne.setFonction(""); |
} |
// Gestion du nom complet |
String nomComplet = personne.getPrenom()+" "+personne.getNom(); |
personne.setNomComplet(nomComplet); |
// Gestion de la notion de "contact" |
personne.setContact(false); |
1132,6 → 1154,16 |
personnel.get(index).set("statut", personnel.get(index).getStatut().replaceFirst("AUTRE##", "")); |
} |
// Gestion de la specialite |
if (((String) personnel.get(index).getSpecialite()).matches("^[0-9]+$")) { |
// Author : Cyprien |
// TODO |
// Ici faire un combobox ? |
// ... |
} else { |
personnel.get(index).set("specialite", personnel.get(index).getSpecialite().replaceFirst("AUTRE##", "")); |
} |
// Gestion du temps de travail |
String tps = personnel.get(index).getBotaTravailHebdoTps(); |
personnel.get(index).set("travail", (tps.matches("^[0-9]+$") ? Integer.parseInt(tps) : 0)); |
1157,6 → 1189,9 |
personnelOnglet.setStyleAttribute("padding", "0"); |
personnelOnglet.addListener(Events.Select, new Listener<ComponentEvent>() { |
public void handleEvent(ComponentEvent be) { |
Debug.log(":::> StructureForm.creerOngletPersonnel.HandleEvent()"); |
// Indique que l'onglet a été rempli et a pu être modifié pour la méthode collecter... |
personnelOnglet.setData("acces", true); |
1164,6 → 1199,9 |
if (mode.equals(MODE_AJOUTER)) { |
rafraichirPersonnel(); |
} |
else { |
initialiserGrillePersonnelEnModification(); |
} |
} |
}); |
1177,8 → 1215,9 |
cp.setFrame(true); |
personnelGrilleMagazin = new ListStore<StructureAPersonne>(); |
personnelGrilleMagazin.setMonitorChanges(true); |
personnelGrilleMagazin.addListener(Store.Add, new Listener<StoreEvent<StructureAPersonne>>() { |
public void handleEvent(StoreEvent<StructureAPersonne> ce) { |
// Activation du bouton supprimer si la grille contient un élément |
if (grillePersonnel.getStore().getCount() > 0) { |
1188,6 → 1227,17 |
} |
}); |
/* TODELETE |
personnelGrilleMagazin.addListener(Store.Update, new Listener<StoreEvent<StructureAPersonne>>() { |
public void handleEvent(StoreEvent<StructureAPersonne> ce) { |
personnelGrilleMagazin.getAt(ce.getIndex()).set("etat", StructureAPersonne.ETAT_MODIFIE); |
Debug.log("Modification de : "+personnelGrilleMagazin.getAt(ce.getIndex()).getNom()); |
} |
}); |
*/ |
RowNumberer r = new RowNumberer(); |
List<ColumnConfig> configs = new ArrayList<ColumnConfig>(); |
1452,6 → 1502,9 |
grillePersonnel.setAutoExpandColumn("specialite"); |
grillePersonnel.setStripeRows(true); |
grillePersonnel.setTrackMouseOver(true); |
grillePersonnel.addListener(null, sm); |
cp.add(grillePersonnel); |
personnelOnglet.add(cp); |
1950,6 → 2003,9 |
} |
public void rafraichir(Object nouvellesDonnees) { |
Debug.log("|0> StructureForm.rafraichir, nouvellesDonnees.getClass() = "+nouvellesDonnees.getClass()); |
try { |
if (nouvellesDonnees instanceof Information) { |
Information info = (Information) nouvellesDonnees; |
1974,33 → 2030,35 |
if (info.getMessages() != null && !info.getMessages().toString().equals("[]")) { |
GWT.log("MESSAGES:\n"+info.getMessages().toString(), null); |
} |
Debug.log("|0> StructureForm.rafraichirInformation, info.getType() = "+info.getType()); |
if (info.getType().equals("modif_structure")) { |
Info.display("Modification d'une institution", info.toString()); |
InfoLogger.display("Modification d'une institution", info.toString()); |
} else if (info.getType().equals("ajout_structure")) { |
if (info.getDonnee(0) != null && info.getDonnee(0) instanceof String) { |
String structureId = (String) info.getDonnee(0); |
Info.display("Ajout d'une Institution", "L'intitution '"+structureId+"' a bien été ajoutée"); |
InfoLogger.display("Ajout d'une Institution", "L'intitution '"+structureId+"' a bien été ajoutée"); |
// Suite à la récupération de l'id de l'institution nouvellement ajoutée nous ajoutons le personnel |
mediateur.ajouterStructureAPersonne(this, structureId, personnelAjoute); |
} else { |
Info.display("Ajout d'une Institution", info.toString()); |
InfoLogger.display("Ajout d'une Institution", info.toString()); |
} |
} else if (info.getType().equals("modif_structure_a_personne")) { |
Info.display("Modification du Personnel", info.toString()); |
InfoLogger.display("Modification du Personnel", info.toString()); |
GWT.log("Decompte:"+decompteRafraichissementPersonnel, null); |
testerLancementRafraichirPersonnel(); |
} else if (info.getType().equals("suppression_structure_a_personne")) { |
Info.display("Suppression du Personnel", info.toString()); |
InfoLogger.display("Suppression du Personnel", info.toString()); |
GWT.log("Decompte:"+decompteRafraichissementPersonnel, null); |
testerLancementRafraichirPersonnel(); |
} else if (info.getType().equals("ajout_structure_a_personne")) { |
Info.display("Ajout du Personnel", info.toString()); |
InfoLogger.display("Ajout du Personnel", info.toString()); |
GWT.log("Decompte:"+decompteRafraichissementPersonnel, null); |
testerLancementRafraichirPersonnel(); |
} else if (info.getType().equals("selection_structure")) { |
Info.display("Modification d'une institution", info.toString()); |
InfoLogger.display("Modification d'une institution", info.toString()); |
String titre = i18nC.titreModifFormStructurePanneau(); |
if (info.getDonnee(0) != null) { |
identification = (Structure) info.getDonnee(0); |
2024,14 → 2082,23 |
} |
} |
} |
panneauFormulaire.setHeading(titre); |
} else if (info.getType().equals("liste_structure_a_personne")) { |
Debug.log("==> StructureForm.rafraichirInformation, typeInfo=liste_structure_a_personne"); |
if (info.getDonnee(0) != null) { |
personnel = (StructureAPersonneListe) info.getDonnee(0); |
peuplerStructurePersonnel(); |
/* TODELETE |
int nbPersonnel = this.personnelGrilleMagazin.getCount(); |
for (int i=0; i<nbPersonnel; i++){ |
Debug.log("==> setEtat(ETAT_MODIFIE) : personne="+this.personnelGrilleMagazin.getAt(i).getId()); |
this.personnelGrilleMagazin.getAt(i).set("etat", StructureAPersonne.ETAT_MODIFIE); |
} |
*/ |
personnelOnglet.layout(); |
Info.display("Chargement du Personnel", "ok"); |
InfoLogger.display("Chargement du Personnel", "ok"); |
// Remise à zéro des modification dans la liste du personnel |
personnelModifie = new StructureAPersonneListe(); |
2173,14 → 2240,19 |
} |
private void testerLancementRafraichirPersonnel() { |
Debug.log("==> BEGIN StructureForm.testerLancementRafraichirPersonnel()"); |
decompteRafraichissementPersonnel--; |
if (decompteRafraichissementPersonnel == 0) { |
// Nous rechargeons la liste du Personnel |
rafraichirPersonnel(); |
} |
} |
Debug.log("==> END StructureForm.testerLancementRafraichirPersonnel()"); |
} |
private void rafraichirPersonnel() { |
Debug.log("==> BEGIN StructureForm.rafraichirPersonnel()"); |
decompteRafraichissementPersonnel = 0; |
if (mode.equals(MODE_MODIFIER)) { |
initialiserGrillePersonnelEnModification(); |
2187,6 → 2259,7 |
} else if (mode.equals(MODE_AJOUTER)) { |
initialiserGrillePersonnelEnAjout(); |
} |
Debug.log("==> END StructureForm.rafraichirPersonnel()"); |
} |
private void rafraichirPersonneExistante(String nom) { |
2208,7 → 2281,7 |
personnelOnglet.layout(); |
} |
private void initialiserGrillePersonnelEnModification() { |
mediateur.selectionnerStructureAPersonne(this, identification.getId(), StructureAPersonne.ROLE_EQUIPE); |
private void initialiserGrillePersonnelEnModification() { |
mediateur.selectionnerStructureAPersonne(this, identification.getId(), StructureAPersonne.ROLE_EQUIPE); |
} |
} |
} |
/trunk/src/org/tela_botanica/client/vues/FenetreJournal.java |
---|
New file |
0,0 → 1,105 |
package org.tela_botanica.client.vues; |
import java.util.ArrayList; |
import java.util.Date; |
import java.util.List; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Valeur; |
import com.extjs.gxt.ui.client.Style.SortDir; |
import com.extjs.gxt.ui.client.core.XTemplate; |
import com.extjs.gxt.ui.client.event.BaseEvent; |
import com.extjs.gxt.ui.client.event.ButtonEvent; |
import com.extjs.gxt.ui.client.event.Events; |
import com.extjs.gxt.ui.client.event.Listener; |
import com.extjs.gxt.ui.client.event.SelectionChangedEvent; |
import com.extjs.gxt.ui.client.event.SelectionChangedListener; |
import com.extjs.gxt.ui.client.event.SelectionListener; |
import com.extjs.gxt.ui.client.store.ListStore; |
import com.extjs.gxt.ui.client.widget.Dialog; |
import com.extjs.gxt.ui.client.widget.InfoConfig; |
import com.extjs.gxt.ui.client.widget.button.Button; |
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig; |
import com.extjs.gxt.ui.client.widget.grid.ColumnModel; |
import com.extjs.gxt.ui.client.widget.grid.EditorGrid; |
import com.extjs.gxt.ui.client.widget.grid.Grid; |
import com.extjs.gxt.ui.client.widget.grid.GridSelectionModel; |
import com.extjs.gxt.ui.client.widget.grid.RowExpander; |
import com.extjs.gxt.ui.client.widget.grid.RowNumberer; |
import com.extjs.gxt.ui.client.widget.layout.FitLayout; |
import com.google.gwt.i18n.client.DateTimeFormat; |
import com.google.gwt.i18n.client.Dictionary; |
public class FenetreJournal extends Dialog implements Rafraichissable{ |
private int id = 0; |
private EditorGrid<Valeur> grille; |
//private int nbLogs = Integer.valueOf(((Dictionary) Dictionary.getDictionary("configuration")).get("nbLogs")); |
private ListStore<Valeur> store; |
public FenetreJournal(Mediateur mediateur) { |
this.setHeading(mediateur.i18nC.titreJournal()); |
this.setWidth(500); |
this.setHeight(500); |
setLayout(new FitLayout()); |
// Définition des colomnes de la grille: |
RowNumberer numeroPlugin = new RowNumberer(); |
numeroPlugin.setHeader("#"); |
XTemplate infoTpl = XTemplate.create("<p>"+ |
"<b>" + mediateur.i18nC.heureMessage() + " : </b>{heure}<br />" + |
"<b>" + mediateur.i18nC.message() + " : </b>{description}<br />" + |
"</p>"); |
RowExpander expansionPlugin = new RowExpander(); |
expansionPlugin.setTemplate(infoTpl); |
List<ColumnConfig> lstColumns = new ArrayList<ColumnConfig>(); |
lstColumns.add(expansionPlugin); |
lstColumns.add(new ColumnConfig("nom", mediateur.i18nC.publicationTitre(), 200)); |
lstColumns.add(new ColumnConfig("description", mediateur.i18nC.message() , 400)); |
ColumnModel modeleColonnes = new ColumnModel(lstColumns); |
store = new ListStore<Valeur>(); |
grille = new EditorGrid<Valeur>(store, modeleColonnes); |
grille.addPlugin(expansionPlugin); |
grille.setAutoExpandColumn("description"); |
grille.getView().setAutoFill(true); |
grille.getView().setForceFit(true); |
store.sort("id", SortDir.DESC); |
add(grille); |
} |
@Override |
public void rafraichir(Object nouvellesDonnees) { |
if (nouvellesDonnees instanceof InfoConfig) { |
InfoConfig info = (InfoConfig) nouvellesDonnees; |
id++; |
Valeur v = new Valeur(String.valueOf(id), info.title, null, info.text); |
v.set("heure", getDate()); |
store.add(v); |
//if (store.getModels().size() > nbLogs) { |
//store.remove(store.getAt(nbLogs)); |
//} |
} |
} |
public String getDate() { |
Date date = new Date(); |
return String.valueOf(DateTimeFormat.getFormat("HH:mm:ss").format(date)); |
} |
@Override |
protected void createButtons() { |
//Pas de boutons, merci |
} |
} |
/trunk/src/org/tela_botanica/client/vues/accueil/AccueilVue.java |
---|
6,6 → 6,7 |
import java.util.TreeMap; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.composants.InfoLogger; |
import org.tela_botanica.client.i18n.Constantes; |
import org.tela_botanica.client.images.Images; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
12,6 → 13,7 |
import org.tela_botanica.client.modeles.Information; |
import org.tela_botanica.client.util.Debug; |
import com.extjs.gxt.ui.client.GXT; |
import com.extjs.gxt.ui.client.event.ButtonEvent; |
import com.extjs.gxt.ui.client.event.SelectionListener; |
import com.extjs.gxt.ui.client.widget.ContentPanel; |
62,7 → 64,7 |
if (enregistrementEnCours == false) { |
enregistrerParametres(); |
} else { |
Info.display(i18nC.accueilEnregistrement(), i18nC.accueilEnregistrementEnCours()); |
InfoLogger.display(i18nC.accueilEnregistrement(), i18nC.accueilEnregistrementEnCours()); |
} |
} |
}); |
97,7 → 99,7 |
portail.getItem(2).removeAll(); |
} |
private void chargerParametres() { |
private void chargerParametres() { |
viderPortail(); |
Document paramXml = XMLParser.parse(mediateur.getUtilisateur().getParametre()); |
106,7 → 108,7 |
// Récupération du noeud accueil |
Node accueilNoeud = null; |
if (nbreAccueilNoeud == 0) { |
if (nbreAccueilNoeud == 0) { |
ajouterPortlet(); |
} else if (nbreAccueilNoeud == 1) { |
accueilNoeud = listeAccueilNoeud.item(0); |
114,7 → 116,7 |
// Lecture des noeuds "applette" |
NodeList listeAppletteNoeud = accueilNoeud.getChildNodes(); |
int nbreAppletteNoeud = listeAppletteNoeud.getLength(); |
TreeMap<String, HashMap<String, String>> tableApplettes = new TreeMap<String, HashMap<String, String>>(); |
TreeMap<String, HashMap<String, String>> tableApplettes = new TreeMap<String, HashMap<String, String>>(); |
for (int i = 0; i < nbreAppletteNoeud ; i++) { |
Element appletteNoeud = (Element) listeAppletteNoeud.item(i); |
int colonne = Integer.parseInt(appletteNoeud.getAttribute("colonne")); |
135,11 → 137,11 |
boolean reduite = (infoApplette.get("reduite") != null && infoApplette.get("reduite").equals("true")) ? true : false; |
boolean epingle = (infoApplette.get("epingle") != null && infoApplette.get("epingle").equals("true")) ? true : false; |
int index = Integer.parseInt(infoApplette.get("index")); |
int colonne = Integer.parseInt(infoApplette.get("colonne")); |
ajouterPortlet(reduite, epingle, infoApplette.get("type"), colonne, index, infoApplette.get("contenu")); |
int colonne = Integer.parseInt(infoApplette.get("colonne")); |
ajouterPortlet(reduite, epingle, infoApplette.get("type"), colonne, index, infoApplette.get("contenu")); |
} |
} |
layout(); |
layout(); |
} |
private void enregistrerParametres() { |
214,19 → 216,18 |
private void ajouterPortlet(boolean reduite, boolean epingle, String type, int colonne, int index, String contenu) { |
Applette applette = null; |
if (type.equals("statistique")) { |
if (type.equals("statistique")) { |
applette = new AppletteStatistique(mediateur, contenu); |
} |
if (reduite) { |
applette.collapse(); |
} |
portail.insert(applette, index, colonne); |
applette.setEpingler(epingle); |
portail.insert(applette, index, colonne); |
applette.setEpingler(epingle); |
layout(); |
} |
public void rafraichir(Object nouvellesDonnees) { |
public void rafraichir(Object nouvellesDonnees) { |
if (nouvellesDonnees instanceof Information) { |
Information info = (Information) nouvellesDonnees; |
String type = info.getType(); |
233,10 → 234,10 |
if (type.equals("maj_utilisateur")) { |
if (enregistrementEnCours == true) { |
enregistrementEnCours = false; |
Info.display(i18nC.accueilEnregistrement(), i18nC.accueilEnregistrementSucces()); |
InfoLogger.display(i18nC.accueilEnregistrement(), i18nC.accueilEnregistrementSucces()); |
} else { |
chargerParametres(); |
Info.display(i18nC.accueil(), i18nC.accueilChargementSucces()); |
InfoLogger.display(i18nC.accueil(), i18nC.accueilChargementSucces()); |
} |
} |
} else { |
/trunk/src/org/tela_botanica/client/vues/accueil/Applette.java |
---|
76,7 → 76,7 |
epingleBouton.setStyleName("x-tool-pin x-tool"); |
setPinned(false); |
} |
Debug.log(epingleBouton.getStyleName()); |
Debug.log("epingleBouton.getStyleName() = "+epingleBouton.getStyleName()); |
layout(); |
} |