Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 188 → Rev 189

/trunk/src/org/tela_botanica/client/vues/PanneauPersonneListe.java
28,6 → 28,7
import com.extjs.gxt.ui.client.widget.table.TableColumnModel;
import com.extjs.gxt.ui.client.widget.toolbar.TextToolItem;
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Window;
 
public class PanneauPersonneListe extends ContentPanel implements Rafraichissable {
112,6 → 113,7
 
public void rafraichir(Object nouvelleDonnees) {
if (nouvelleDonnees instanceof PersonneListe) {
store.removeAll();
setHeading("Personnes");
PersonneListe listePersonnes = (PersonneListe) nouvelleDonnees;
122,9 → 124,16
liste.add(listePersonnes.get(it.next()));
}
store.removeAll();
store.add((List<Personne>) liste);
}
}
}
 
 
 
 
 
 
/trunk/src/org/tela_botanica/client/vues/PersonneDetailPanneauVue.java
1,7 → 1,12
package org.tela_botanica.client.vues;
 
 
 
import java.util.List;
 
import org.tela_botanica.client.RegistreId;
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.modeles.Information;
import org.tela_botanica.client.modeles.Personne;
import org.tela_botanica.client.modeles.Projet;
import org.tela_botanica.client.modeles.ProjetsListeAsyncDao;
14,66 → 19,96
import com.extjs.gxt.ui.client.util.Params;
import com.extjs.gxt.ui.client.widget.ContentPanel;
import com.extjs.gxt.ui.client.widget.Html;
import com.extjs.gxt.ui.client.widget.TabItem;
import com.extjs.gxt.ui.client.widget.TabPanel;
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
import com.google.gwt.user.client.ui.FlexTable;
import com.google.gwt.user.client.ui.Grid;
import com.google.gwt.user.client.ui.Hyperlink;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;
import com.google.gwt.user.client.ui.FlexTable.FlexCellFormatter;
import com.google.gwt.user.client.ui.HTMLTable.CellFormatter;
 
public class PersonneDetailPanneauVue extends ContentPanel implements Rafraichissable {
public class PersonneDetailPanneauVue extends TabPanel implements Rafraichissable {
 
private ContentPanel content;
private Html header;
private String enteteHTML = "<div class='coel-detail'><h1>{0}</h1><h2><a href=\"mailto:{1}\">{1}</a></h2></div>";
private String contenuHTML = "<div style='padding: 12px;'><p>{0}</p><b>Adresse: </b>{1}<br />{2}<br /></div>";
private String structureNom = null;
private String structureVille = null;
private String structureDescription = null;
 
//TABS
// Informations générales : nom, prénom, adresse, cp, ville, adresse email, sexe, projet
private TabItem infoGenerales;
private String contenuInfo = "<div style='padding: 12px;'><h1>{0}</h1><a href=\"{1}\">{1}</a><br /><br /><p><b>Adresse: </b>{2}<br />{3}<br />{4} {5}<br /> {7}</p><br />{6}</div>";
private TabItem infoBio;
private String contenuBio = "";
// <div style='padding: 12px;'><h1>{0} {1} {2}</h1><h2>{3}</h2><br><b>Date de naissance: </b>{4}<br /><b>Date de décès:{5}</b><p>{6}</p></div>";
public PersonneDetailPanneauVue() {
Registry.register(RegistreId.PANNEAU_PERSONNE_DETAIL, this);
setLayout(new FitLayout());
setHeaderVisible(false);
setLayout(new FitLayout());
 
content = new ContentPanel();
content.setBodyBorder(false);
content.setHeaderVisible(false);
content.setScrollMode(Scroll.AUTO);
 
header = new Html();
header.setStyleName("coel-detail");
content.setTopComponent(header);
 
add(content);
infoGenerales = new TabItem("Informations Générales");
this.add(infoGenerales);
infoBio = new TabItem("Biographie");
infoBio.disable();
this.add(infoBio);
}
 
public void ajouterParam(Params parametres, String nomChamp, Personne personne) {
parametres.add(personne.obtenirValeurChamp(nomChamp));
//return parametres;
private void ajouterParam(Params parametres, String nomChamp, Personne personne) {
Object valeur = personne.obtenirValeurChamp(nomChamp);
parametres.add(valeur);
}
public void afficherDetailPersonne(Personne personne) {
if (personne != null) {
content.removeAll();
infoGenerales.removeAll();
infoBio.removeAll();
infoBio.disable();
//Header
Params enteteParams = new Params();
ajouterParam(enteteParams, "fmt_nom_complet", personne);
ajouterParam(enteteParams, "truk_courriel", personne);
//Contenu
Params infoGenParams = new Params();
ajouterParam(infoGenParams, "fmt_nom_complet", personne);
ajouterParam(infoGenParams, "truk_courriel", personne);
ajouterParam(infoGenParams, "adresse_01", personne);
ajouterParam(infoGenParams, "adresse_02", personne);
ajouterParam(infoGenParams, "code_postal", personne);
ajouterParam(infoGenParams, "ville", personne);
ajouterParam(infoGenParams, "description", personne);
ajouterParam(infoGenParams, "cp_truk_fax", personne);
header.getElement().setInnerHTML(Format.substitute(enteteHTML, enteteParams));
//Info générales
infoGenerales.addText(Format.substitute(contenuInfo, infoGenParams));
//Contenu
Params contenuParams = new Params();
ajouterParam(contenuParams, "description", personne);
Params bioParams = new Params();
// Nécessaire que si une biographie existe...
// FIXME : remplacer par un id role?
if ((personne.obtenirValeurChamp("biographie")!=null)&&(!((String) personne.obtenirValeurChamp("biographie")).trim().equals(""))) {
contenuBio = "<div style='padding: 12px;'><h1>{0} {1} {2}</h1><h2>{3}</h2><br><b>Date de naissance: </b>{4}<br /><b>Date de décès:{5}</b><p>a{6}a</p></div>";
ajouterParam(bioParams, "ce_truk_prefix", personne);
ajouterParam(bioParams, "fmt_nom_complet", personne);
ajouterParam(bioParams, "ce_truk_suffix", personne);
ajouterParam(bioParams, "abreviation", personne);
ajouterParam(bioParams, "naissance_date", personne);
ajouterParam(bioParams, "deces_date", personne);
ajouterParam(bioParams, "biographie", personne);
infoBio.enable();
}
ajouterParam(contenuParams, "adresse_01", personne);
ajouterParam(contenuParams, "adresse_02", personne);
content.addText(Format.substitute(contenuHTML, contenuParams));
 
infoBio.addText(Format.substitute(contenuBio, bioParams));
layout();
} else {
header.setHtml("");
content.removeAll();
}
}