Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 135 → Rev 140

/src/org/tela_botanica/del/client/vues/plateformedetermination/formulaireproposition/FormulairePropositionPresenteur.java
9,7 → 9,8
import org.tela_botanica.del.client.composants.validation.NumericFormValidator;
import org.tela_botanica.del.client.composants.validation.TextNotNullFormValidator;
import org.tela_botanica.del.client.exceptions.ExceptionClient;
import org.tela_botanica.del.client.modeles.ObservationValidation;
import org.tela_botanica.del.client.modeles.Commentaire;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
import org.tela_botanica.del.client.utils.GwtObservable;
import org.tela_botanica.del.client.utils.GwtObserver;
import org.tela_botanica.del.client.utils.MockDatasource;
22,20 → 23,13
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.HasWidgets;
 
public class FormulairePropositionPresenteur implements GwtObserver {
public class FormulairePropositionPresenteur {
 
private ArrayList<String> propositionsTaxons;
 
private FormulairePropositionVue formulairePropositionVue = new FormulairePropositionVue();
 
public void go(HasWidgets composite) {
CacheClient.getInstance().getCurrentObservation().addObserver(this);
 
propositionsTaxons = CacheClient.getInstance().getCurrentObservation().getPropositionsTaxonsData();
formulairePropositionVue.chargerPropositionsTaxons(propositionsTaxons);
formulairePropositionVue.chargerPourcentagesConfiance(MockDatasource.getInstance().getPourcentagesConfiance());
composite.add(formulairePropositionVue);
gererEvenements();
50,7 → 44,7
if(!validerSaisieProposition()) {
return;
} else {
ObservationValidation propositionAjoutee = collecterValeursSaisieProposition();
PropositionDetermination propositionAjoutee = collecterValeursSaisieProposition();
CacheClient.getInstance().getCurrentObservation().addImageCelValidationData(propositionAjoutee);
}
}
59,33 → 53,29
private boolean validerSaisieProposition() {
TextNotNullFormValidator validateurNomPrenom = new TextNotNullFormValidator(formulairePropositionVue.getNomPrenom());
boolean nomPreNomSaisi = validateurNomPrenom.validate();
TextNotNullFormValidator validateurTaxon = new TextNotNullFormValidator(formulairePropositionVue.getNomPrenom());
boolean taxonSaisi = validateurTaxon.validate();
return nomPreNomSaisi;
return taxonSaisi;
}
private ObservationValidation collecterValeursSaisieProposition() {
private PropositionDetermination collecterValeursSaisieProposition() {
ObservationValidation propositionAjoutee = new ObservationValidation();
PropositionDetermination propositionAjoutee = new PropositionDetermination();
propositionAjoutee.setId(CacheClient.getInstance().getCurrentObservation().getIdImage());
propositionAjoutee.setCommentaire(formulairePropositionVue.getCommentaires().getText());
propositionAjoutee.setContributeur(formulairePropositionVue.getNomPrenom().getText());
String auteur = formulairePropositionVue.getNomPrenom().getText();
if(formulairePropositionVue.getCommentaires().getText() != "") {
String contenuCommentaire = formulairePropositionVue.getCommentaires().getText();
Commentaire comm = new Commentaire(auteur, new Date(),contenuCommentaire);
propositionAjoutee.ajouterCommentaire(comm);
}
propositionAjoutee.setContributeur(auteur);
propositionAjoutee.setDate(new Date());
if (formulairePropositionVue.getAutreProposition().getValue() != "") {
propositionAjoutee.setEspece(formulairePropositionVue.getAutreProposition().getText());
} else {
propositionAjoutee.setEspece(formulairePropositionVue.getChoixProposition().getItemText(formulairePropositionVue.getChoixProposition().getSelectedIndex()));
}
propositionAjoutee.setEspece(formulairePropositionVue.getPropositionTaxon().getText());
propositionAjoutee.setPourcentageConfiance(formulairePropositionVue.getPourcentageConfiance().getValue(formulairePropositionVue.getPourcentageConfiance().getSelectedIndex()));
return propositionAjoutee;
}
 
@Override
public void update(GwtObservable observable, Object data) {
propositionsTaxons = CacheClient.getInstance().getCurrentObservation().getPropositionsTaxonsData();
formulairePropositionVue.chargerPropositionsTaxons(propositionsTaxons);
}
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/formulaireproposition/FormulairePropositionVue.java
20,14 → 20,11
@UiField(provided = true)
public TextBox nomPrenom = new TextBox();
@UiField(provided = true)
public ListBox choixProposition = new ListBox();
public TextBox propositionTaxon = new TextBox();
@UiField(provided = true)
public TextBox autreProposition = new TextBox();
@UiField(provided = true)
public ListBox pourcentageConfiance = new ListBox();
@UiField(provided = true)
43,15 → 40,6
initWidget(uiBinder.createAndBindUi(this));
}
public void chargerPropositionsTaxons(ArrayList<String> propositionsTaxons) {
choixProposition.clear();
for(Iterator<String> it = propositionsTaxons.iterator(); it.hasNext();) {
choixProposition.addItem(it.next());
}
}
public void chargerPourcentagesConfiance(ArrayList<String> pourcentagesConfiance) {
pourcentageConfiance.clear();
65,14 → 53,10
return nomPrenom;
}
 
public ListBox getChoixProposition() {
return choixProposition;
public TextBox getPropositionTaxon() {
return propositionTaxon;
}
 
public TextBox getAutreProposition() {
return autreProposition;
}
 
public ListBox getPourcentageConfiance() {
return pourcentageConfiance;
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/formulaireproposition/FormulairePropositionVue.ui.xml
18,8 → 18,7
<g:HTML><br /></g:HTML>
<g:Label text="{constants.choisir_un_taxon}" styleName="sousTitre"/>
<g:HTML HTML="{constants.infoTaxon}" styleName="petit"/>
<g:ListBox ui:field="choixProposition" />
<g:TextBox ui:field="autreProposition" />
<g:TextBox ui:field="propositionTaxon" />
<g:HTML><br /></g:HTML>
<g:Label text="{constants.fiabilite}" styleName="sousTitre"/>
<g:Label text="{constants.infoFiabilite}" styleName="petit"/>
/src/org/tela_botanica/del/client/vues/plateformedetermination/DeterminationVue.ui.xml
9,6 → 9,7
<g:HorizontalPanel styleName="{style.zoneDetermination}">
<g:VerticalPanel styleName="{style.zoneDetailImage}">
<g:VerticalPanel ui:field="detailImageObservation" styleName="{style.zoneImage}"/>
<g:VerticalPanel ui:field="barreRepartition" styleName="plein"/>
<g:VerticalPanel ui:field="formulaireRechercheEflore"/>
</g:VerticalPanel>
<g:VerticalPanel styleName="{style.zoneVote}">
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/EnsembleVotesPresenteur.java
3,7 → 3,7
import java.util.List;
 
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.modeles.ObservationValidation;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
import org.tela_botanica.del.client.modeles.Protocole;
import org.tela_botanica.del.client.utils.MockDatasource;
import org.tela_botanica.del.client.vues.plateformedetermination.vote.protocole.moyenne.MoyenneVoteProtocolePresenteur;
26,11 → 26,11
String idImageCourante = CacheClient.getInstance().getCurrentObservation().getIdImage();
 
Protocole protocoleEsthetisme = validationService.getProtocole(Protocole.ESTHETISME);
List<ObservationValidation> observationValidationsEsthetisme = validationService.getValidationDataByImageAndProtocol(idImageCourante, Protocole.ESTHETISME);
List<PropositionDetermination> observationValidationsEsthetisme = validationService.getValidationDataByImageAndProtocol(idImageCourante, Protocole.ESTHETISME);
new MoyenneVoteProtocolePresenteur(protocoleEsthetisme, observationValidationsEsthetisme).go(vue.getPanneauVotes());
 
Protocole protocoleIdentification = validationService.getProtocole(Protocole.IDENTIFICATION_AUTOMATIQUE);
List<ObservationValidation> observationValidationsIdentification = validationService.getValidationDataByImageAndProtocol(idImageCourante, Protocole.IDENTIFICATION_AUTOMATIQUE);
List<PropositionDetermination> observationValidationsIdentification = validationService.getValidationDataByImageAndProtocol(idImageCourante, Protocole.IDENTIFICATION_AUTOMATIQUE);
new MoyenneVoteProtocolePresenteur(protocoleIdentification, observationValidationsIdentification).go(vue.getPanneauVotes());
}
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/barrerepartition/barreRepartitionVue.css
--- vote/barrerepartition/BarreRepartitionVoteVue.ui.xml (revision 0)
+++ vote/barrerepartition/BarreRepartitionVoteVue.ui.xml (revision 140)
@@ -0,0 +1,6 @@
+<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
+<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
+ xmlns:g="urn:import:com.google.gwt.user.client.ui">
+<ui:with field="constants" type="org.tela_botanica.del.client.i18n.Vocabulary" />
+ <g:HTML ui:field="barreRepartitionHtmlBrut" />
+</ui:UiBinder>
\ No newline at end of file
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/barrerepartition/BarreRepartitionVotePresenteur.java
New file
0,0 → 1,32
package org.tela_botanica.del.client.vues.plateformedetermination.vote.barrerepartition;
 
import java.util.List;
 
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
import org.tela_botanica.del.client.modeles.Protocole;
import org.tela_botanica.del.client.utils.MockDatasource;
import org.tela_botanica.del.client.vues.plateformedetermination.vote.EnsembleVotesVue;
import org.tela_botanica.del.client.vues.plateformedetermination.vote.protocole.moyenne.MoyenneVoteProtocolePresenteur;
 
import com.google.gwt.user.client.ui.HasWidgets;
 
public class BarreRepartitionVotePresenteur {
private BarreRepartitionVoteVue vue = new BarreRepartitionVoteVue();
 
private MockDatasource validationService = MockDatasource.getInstance();
 
public void go(HasWidgets container) {
container.add(vue);
afficherVotes();
}
 
private void afficherVotes() {
vue.afficherVotes(70);
}
public BarreRepartitionVoteVue getBarreRepartitionVoteVue() {
return vue;
}
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/barrerepartition/BarreRepartitionVoteVue.java
New file
0,0 → 1,36
package org.tela_botanica.del.client.vues.plateformedetermination.vote.barrerepartition;
 
import org.tela_botanica.del.client.vues.plateformedetermination.vote.EnsembleVotesVue;
 
import com.google.gwt.core.client.GWT;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Widget;
 
public class BarreRepartitionVoteVue extends Composite {
interface MyUiBinder extends UiBinder<Widget, BarreRepartitionVoteVue> {}
 
private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);
private int pourcentage = 0;
@UiField(provided = true)
public HTML barreRepartitionHtmlBrut = new HTML("<div class=\"barreRepartition\"></div>");
public BarreRepartitionVoteVue() {
afficherVotes(70);
initWidget(uiBinder.createAndBindUi(this));
}
public void afficherVotes(int pourcentage) {
this.pourcentage = pourcentage;
String chaineHtml = "<div class=\"barreRepartition\">"+
"<div style=\"width:"+pourcentage+"%\" class=\"elementBarreRepartition voteOui\"></div>"+
"</div>";
barreRepartitionHtmlBrut = new HTML(chaineHtml);
}
 
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/protocole/moyenne/MoyenneVoteProtocoleVue.java
3,7 → 3,7
import java.util.List;
 
import org.cobogw.gwt.user.client.ui.Rating;
import org.tela_botanica.del.client.modeles.ObservationValidation;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
import org.tela_botanica.del.client.modeles.Protocole;
 
import com.google.gwt.core.client.GWT;
27,7 → 27,7
@UiField
Label nbVotes, nomProtocole;
 
protected MoyenneVoteProtocoleVue(Protocole protocole, List<ObservationValidation> validationDatas) {
protected MoyenneVoteProtocoleVue(Protocole protocole, List<PropositionDetermination> validationDatas) {
initWidget(uiBinder.createAndBindUi(this));
 
nomProtocole.setText(protocole.getNom());
34,9 → 34,9
 
int meanVote = 0;
int nbVote = 0;
for (ObservationValidation validationData : validationDatas) {
for (PropositionDetermination validationData : validationDatas) {
 
meanVote += validationData.getVote();
//meanVote += validationData.getVote();
nbVote++;
}
if (nbVote > 0)
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/protocole/moyenne/MoyenneVoteProtocolePresenteur.java
2,7 → 2,7
 
import java.util.List;
 
import org.tela_botanica.del.client.modeles.ObservationValidation;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
import org.tela_botanica.del.client.modeles.Protocole;
import org.tela_botanica.del.client.vues.plateformedetermination.vote.protocole.personnel.MonVoteProtocolePresenteur;
 
14,7 → 14,7
private Protocole protocole;
 
public MoyenneVoteProtocolePresenteur(Protocole protocole, List<ObservationValidation> validationDatas) {
public MoyenneVoteProtocolePresenteur(Protocole protocole, List<PropositionDetermination> validationDatas) {
view = new MoyenneVoteProtocoleVue(protocole, validationDatas);
}
 
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/protocole/VoteProtocolePresenteur.java
2,7 → 2,7
 
import java.util.List;
 
import org.tela_botanica.del.client.modeles.ObservationValidation;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
import org.tela_botanica.del.client.modeles.Protocole;
import org.tela_botanica.del.client.vues.plateformedetermination.vote.protocole.moyenne.MoyenneVoteProtocolePresenteur;
import org.tela_botanica.del.client.vues.plateformedetermination.vote.protocole.personnel.MonVoteProtocolePresenteur;
15,9 → 15,9
 
private Protocole protocole;
 
private List<ObservationValidation> validationDatas;
private List<PropositionDetermination> validationDatas;
 
public VoteProtocolePresenteur(Protocole protocole, List<ObservationValidation> validationDatas) {
public VoteProtocolePresenteur(Protocole protocole, List<PropositionDetermination> validationDatas) {
this.protocole = protocole;
this.validationDatas = validationDatas;
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/DeterminationPresenteur.java
5,6 → 5,7
import org.tela_botanica.del.client.vues.plateformedetermination.formulairerechercheeflore.FormulaireRechercheEflorePresenteur;
import org.tela_botanica.del.client.vues.plateformedetermination.forum.ForumPresenteur;
import org.tela_botanica.del.client.vues.plateformedetermination.vote.EnsembleVotesPresenteur;
import org.tela_botanica.del.client.vues.plateformedetermination.vote.barrerepartition.BarreRepartitionVotePresenteur;
 
import com.google.gwt.user.client.ui.HasWidgets;
 
23,6 → 24,7
new ForumPresenteur().go(determinationVue.getForum());
new FormulairePropositionPresenteur().go(determinationVue.getFormulaireProposition());
new FormulaireRechercheEflorePresenteur().go(determinationVue.getFormulaireRechercheEflore());
new BarreRepartitionVotePresenteur().go(determinationVue.getBarreRepartition());
 
composite.add(determinationVue);
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/DeterminationVue.java
4,6 → 4,7
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;
 
10,7 → 11,7
public class DeterminationVue extends Composite {
 
@UiField
VerticalPanel forum, detailImageObservation, formulaireProposition, formulaireRechercheEflore, vote;
VerticalPanel forum, detailImageObservation, formulaireProposition, formulaireRechercheEflore, vote, barreRepartition;
 
interface DeterminationUIiBinder extends UiBinder<Widget, DeterminationVue> {
};
40,4 → 41,8
public VerticalPanel getVote() {
return vote;
}
public VerticalPanel getBarreRepartition() {
return barreRepartition;
}
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/forum/ForumPresenteur.java
2,7 → 2,7
 
import java.util.List;
 
import org.tela_botanica.del.client.modeles.ObservationValidation;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
import org.tela_botanica.del.client.utils.GwtObservable;
import org.tela_botanica.del.client.utils.GwtObserver;
import org.tela_botanica.del.client.cache.CacheClient;
21,7 → 21,7
 
private ForumVue forumVue = new ForumVue();
 
private List<ObservationValidation> determinations;
private List<PropositionDetermination> determinations;
 
public void go(HasWidgets composite) {
 
/src/org/tela_botanica/del/client/vues/plateformedetermination/forum/ForumVue.java
1,11 → 1,16
package org.tela_botanica.del.client.vues.plateformedetermination.forum;
 
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
 
import org.tela_botanica.del.client.i18n.I18n;
import org.tela_botanica.del.client.modeles.ObservationValidation;
import org.tela_botanica.del.client.modeles.Commentaire;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
 
import com.google.gwt.core.client.GWT;
import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Composite;
24,7 → 29,7
initWidget(uiBinder.createAndBindUi(this));
}
public void chargerObservations(List<ObservationValidation> determinations) {
public void chargerObservations(List<PropositionDetermination> determinations) {
String ligne = "<table>"+
"<tr>"+
35,20 → 40,39
"<th> "+I18n.getVocabulary().commentaire()+" </th>"+
"</tr>";
for (ObservationValidation observationDetermination : determinations) {
String commentaire = (observationDetermination.getCommentaire() != null) ? observationDetermination.getCommentaire() : "";
for (PropositionDetermination observationDetermination : determinations) {
ligne += "<tr>"+
"<td>"+observationDetermination.getEspece()+"</td>"+
"<td>"+observationDetermination.getContributeur()+"</td>"+
"<td>"+observationDetermination.getPourcentageConfiance()+"</td>"+
"<td>"+observationDetermination.getDate()+"</td>"+
"<td>"+commentaire+"</td>"+
"<td>"+formaterDatePourForum(observationDetermination.getDate())+"</td>"+
"<td>"+creerListeCommentaireRecursive(observationDetermination.getCommentaires())+"</td>"+
"</tr>";
}
ligne += "</table>";
htmlTableau.setHTML(ligne);
}
private String creerListeCommentaireRecursive(ArrayList<Commentaire> commentaires) {
String commentairesHtml = "<ul class=\"liste_commentaire\">";
for (Commentaire commentaire : commentaires) {
commentairesHtml += "<li class=\"commentaire\">";
commentairesHtml += "<div class=\"commentaire_texte\">"+commentaire.getCommentaire()+"</div>";
commentairesHtml += "<span class=\"commentaire_auteur\">"+commentaire.getAuteur()+"</span>";
commentairesHtml += "<span class=\"commentaire_date\">"+formaterDatePourForum(commentaire.getDate())+"</span>";
if(commentaire.getListeCommentaires().size() != 0) {
commentairesHtml += creerListeCommentaireRecursive(commentaire.getListeCommentaires());
}
commentairesHtml += "</li>";
}
return commentairesHtml;
}
private String formaterDatePourForum(Date date) {
return DateTimeFormat.getFormat(PredefinedFormat.DATE_SHORT).format(date);
}
 
}