Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 102 → Rev 103

/src/org/tela_botanica/del/client/i18n/Vocabulary.properties
47,4 → 47,8
valide_par=Valide par
date_validation=Date de derniere validation
taxon=Taxon
transmis_le=Transmis le
transmis_le=Transmis le
 
#ecran votes protcoles
protocole_esthetisme=Esthetisme
protocole_identification_auto=Identification automatique
/src/org/tela_botanica/del/client/i18n/Vocabulary.java
295,6 → 295,24
String proposer_validation();
 
/**
* Translated "Esthetisme".
*
* @return translated "Esthetisme"
*/
@DefaultStringValue("Esthetisme")
@Key("protocole_esthetisme")
String protocole_esthetisme();
 
/**
* Translated "Identification automatique".
*
* @return translated "Identification automatique"
*/
@DefaultStringValue("Identification automatique")
@Key("protocole_identification_auto")
String protocole_identification_auto();
 
/**
* Translated "Rechercher une image".
*
* @return translated "Rechercher une image"
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/EnsembleVotesPresenteur.java
New file
0,0 → 1,35
package org.tela_botanica.del.client.vues.plateformedetermination.vote;
 
import java.util.List;
 
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.i18n.I18n;
import org.tela_botanica.del.client.modeles.ObservationValidation;
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.protocol.MoyenneVoteProtocolePresenteur;
 
import com.google.gwt.user.client.ui.HasWidgets;
 
public class EnsembleVotesPresenteur {
 
private EnsembleVotesVue vue = new EnsembleVotesVue();
 
private MockDatasource validationService = MockDatasource.getInstance();
 
public void go(HasWidgets container) {
container.add(vue);
afficherVotes();
}
 
private void afficherVotes() {
 
String idImageCourante = CacheClient.getInstance().getCurrentObservation().getIdImage();
List<ObservationValidation> observationValidationsEsthetisme = validationService.getValidationDataByImageAndProtocol(idImageCourante, Protocole.ESTHETISME);
new MoyenneVoteProtocolePresenteur(I18n.getVocabulary().protocole_esthetisme(), observationValidationsEsthetisme).go(vue.getPanneauVotes());
 
List<ObservationValidation> observationValidationsIdentification = validationService.getValidationDataByImageAndProtocol(idImageCourante, Protocole.IDENTIFICATION_AUTOMATIQUE);
new MoyenneVoteProtocolePresenteur(I18n.getVocabulary().protocole_identification_auto(), observationValidationsIdentification).go(vue.getPanneauVotes());
}
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/EnsembleVotesVue.java
New file
0,0 → 1,33
package org.tela_botanica.del.client.vues.plateformedetermination.vote;
 
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.HorizontalPanel;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;
 
public class EnsembleVotesVue extends Composite {
 
interface MyUiBinder extends UiBinder<Widget, EnsembleVotesVue> {
}
 
private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);
 
@UiField()
VerticalPanel panneauVotes;
 
public EnsembleVotesVue() {
initWidget(uiBinder.createAndBindUi(this));
}
 
public VerticalPanel getPanneauVotes() {
return panneauVotes;
}
 
public void setPanneauVotes(VerticalPanel panneauVotes) {
this.panneauVotes = panneauVotes;
}
 
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/protocol/MoyenneVoteProtocoleVue.java
New file
0,0 → 1,51
package org.tela_botanica.del.client.vues.plateformedetermination.vote.protocol;
 
import java.util.List;
 
import org.cobogw.gwt.user.client.ui.Rating;
import org.tela_botanica.del.client.modeles.ObservationValidation;
 
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.FocusPanel;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;
 
public class MoyenneVoteProtocoleVue extends Composite {
 
 
interface MyUiBinder extends UiBinder<Widget, MoyenneVoteProtocoleVue> {
}
 
private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);
 
@UiField
FocusPanel voter;
 
@UiField
Label nbVotes, nomProtocole;
 
protected MoyenneVoteProtocoleVue(String protocole, List<ObservationValidation> validationDatas) {
initWidget(uiBinder.createAndBindUi(this));
nomProtocole.setText(protocole);
 
int meanVote = 0;
int nbVote = 0;
for (ObservationValidation validationData : validationDatas) {
 
meanVote += validationData.getVote();
nbVote++;
}
if (nbVote > 0)
meanVote /= nbVote;
Rating rating = new Rating(meanVote, 5);
rating.setReadOnly(true);
voter.add(rating);
 
nbVotes.setText(String.valueOf(validationDatas.size()));
 
}
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/protocol/MoyenneVoteProtocoleVue.ui.xml
New file
0,0 → 1,19
<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
xmlns:g='urn:import:com.google.gwt.user.client.ui' ui:generateFormat='com.google.gwt.i18n.rebind.format.PropertiesFormat'
ui:generateKeys="com.google.gwt.i18n.rebind.keygen.MD5KeyGenerator"
ui:generateLocales="default">
 
<ui:with field="constants" type="org.tela_botanica.del.client.i18n.Vocabulary" />
 
 
<g:HTMLPanel>
 
<g:HorizontalPanel>
<g:Label ui:field="nomProtocole" text="{constants.chargement}" />
<g:FocusPanel ui:field="voter" />
<g:Label text="Votes :" />
<g:Label ui:field="nbVotes" />
</g:HorizontalPanel>
 
</g:HTMLPanel>
</ui:UiBinder>
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/protocol/MoyenneVoteProtocolePresenteur.java
New file
0,0 → 1,20
package org.tela_botanica.del.client.vues.plateformedetermination.vote.protocol;
 
import java.util.List;
 
import org.tela_botanica.del.client.modeles.ObservationValidation;
 
import com.google.gwt.user.client.ui.HasWidgets;
 
public class MoyenneVoteProtocolePresenteur {
 
private MoyenneVoteProtocoleVue view;
 
public MoyenneVoteProtocolePresenteur(String nomProtocole, List<ObservationValidation> validationDatas) {
view = new MoyenneVoteProtocoleVue(nomProtocole, validationDatas);
}
 
public void go(HasWidgets container) {
container.add(view);
}
}
/src/org/tela_botanica/del/client/vues/plateformedetermination/vote/EnsembleVotesVue.ui.xml
New file
0,0 → 1,12
<!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:HTMLPanel>
<g:Label text="Votes :" />
<g:VerticalPanel ui:field="panneauVotes">
</g:VerticalPanel>
</g:HTMLPanel>
</ui:UiBinder>
/src/org/tela_botanica/del/client/vues/plateformedetermination/DeterminationPresenteur.java
2,9 → 2,9
 
import org.tela_botanica.del.client.vues.plateformedetermination.detail.DetailImageObservationPresenteur;
import org.tela_botanica.del.client.vues.plateformedetermination.formulaireproposition.FormulairePropositionPresenteur;
import org.tela_botanica.del.client.vues.plateformedetermination.formulaireproposition.FormulairePropositionVue;
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 com.google.gwt.user.client.ui.HasWidgets;
 
19,6 → 19,7
public void go(HasWidgets composite) {
new DetailImageObservationPresenteur().go(determinationVue.getDetailImageObservation());
new EnsembleVotesPresenteur().go(determinationVue.getVote());
new ForumPresenteur().go(determinationVue.getForum());
new FormulairePropositionPresenteur().go(determinationVue.getFormulaireProposition());
new FormulaireRechercheEflorePresenteur().go(determinationVue.getFormulaireProposition());
/src/org/tela_botanica/del/client/composants/validation/TextNotNullFormValidator.java
13,12 → 13,11
 
@Override
public boolean validate() {
if(getTextBox().getText().length()>=0&&!getTextBox().getText().equals("")){
if (getTextBox().getText().length() >= 0 && !getTextBox().getText().equals("")) {
getSideHTML().setHTML("");
return true;
}
else {
getSideHTML().setHTML("<font color='red'>"+I18n.getVocabulary().texteNonNull()+"</font>");
} else {
getSideHTML().setHTML("<font color='red'>" + I18n.getVocabulary().texteNonNull() + "</font>");
return false;
}
}
/src/org/tela_botanica/del/client/modeles/Protocol.java
File deleted
/src/org/tela_botanica/del/client/modeles/ObservationValidation.java
23,7 → 23,7
 
private Date date;
private Protocol protocol;
private Protocole protocol;
 
public int getVote() {
return vote;
89,11 → 89,11
this.espece = espece;
}
 
public Protocol getProtocol() {
public Protocole getProtocol() {
return protocol;
}
 
public void setProtocol(Protocol protocol) {
public void setProtocol(Protocole protocol) {
this.protocol = protocol;
}
 
/src/org/tela_botanica/del/client/modeles/Protocole.java
New file
0,0 → 1,29
package org.tela_botanica.del.client.modeles;
 
public class Protocole {
 
private int id;
 
private String nom;
public static String ESTHETISME="Esthetisme";
public static String IDENTIFICATION_AUTOMATIQUE="Identification automatique";
 
public int getId() {
return id;
}
 
public void setId(int id) {
this.id = id;
}
 
public String getNom() {
return nom;
}
 
public void setNom(String nom) {
this.nom = nom;
}
 
}
/src/org/tela_botanica/del/client/utils/MockDatasource.java
9,7 → 9,7
import org.tela_botanica.del.client.exceptions.ExceptionClient;
import org.tela_botanica.del.client.modeles.Observation;
import org.tela_botanica.del.client.modeles.ObservationValidation;
import org.tela_botanica.del.client.modeles.Protocol;
import org.tela_botanica.del.client.modeles.Protocole;
 
import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat;
55,32 → 55,14
 
Iterator<String> auteurs = auteurObs.keySet().iterator();
 
for (int i = 0; i < 20; i++) {
 
Observation observation = new Observation();
String auteur = auteurs.next();
observation.setAuteur(auteur);
observation.setSpecies(auteurObs.get(auteur));
 
int numobs = 44120 + i;
observation.setUrl("http://www.tela-botanica.org/appli:cel-img:0000" + String.valueOf(numobs) + "CRS.jpg");
observation.setNumNomenclatural("num nomenclatural " + i);
observation.setIdImage("id image " + i);
observation.setDate(DateTimeFormat.getFormat(PredefinedFormat.DATE_SHORT).format(new Date()));
observation.setFamille("famille " + i);
observation.setLocalite("localite " + i);
observation.setNomRetenu("nom retenu " + i);
observation.setMotsClefs(motsClefs);
 
observations.add(observation);
}
 
Protocol protocol1 = new Protocol();
protocol1.setName("Esthetisme");
Protocole protocol1 = new Protocole();
protocol1.setNom(Protocole.ESTHETISME);
protocol1.setId(1);
 
Protocol protocol2 = new Protocol();
protocol2.setName("Identification automatique");
Protocole protocol2 = new Protocole();
protocol2.setNom(Protocole.IDENTIFICATION_AUTOMATIQUE);
protocol2.setId(2);
 
ObservationValidation observationValidationData = new ObservationValidation();
101,7 → 83,7
observationValidationData2.setVote(2);
observationValidationData2.setPourcentageConfiance(50);
observationValidationData2.setDate(new Date());
observationValidationData2.setProtocol(protocol2);
observationValidationData2.setProtocol(protocol1);
observationValidationDatas.add(observationValidationData2);
 
ObservationValidation observationValidationData3 = new ObservationValidation();
113,6 → 95,7
observationValidationData2.setVote(3);
observationValidationData3.setPourcentageConfiance(90);
observationValidationData3.setDate(new Date());
observationValidationData3.setProtocol(protocol1);
observationValidationDatas.add(observationValidationData3);
 
ObservationValidation observationValidationData4 = new ObservationValidation();
121,9 → 104,10
observationValidationData4.setCommentaire("Public chéri mon amour !");
observationValidationData4.setId("2");
observationValidationData4.setIdImage("id image 1");
observationValidationData2.setVote(1);
observationValidationData4.setVote(1);
observationValidationData4.setPourcentageConfiance(30);
observationValidationData4.setDate(new Date());
observationValidationData4.setProtocol(protocol2);
observationValidationDatas.add(observationValidationData4);
 
ObservationValidation observationValidationData5 = new ObservationValidation();
132,11 → 116,33
observationValidationData5.setCommentaire("Tout est affaire de décor");
observationValidationData5.setId("2");
observationValidationData5.setIdImage("id image 1");
observationValidationData2.setVote(2);
observationValidationData5.setVote(2);
observationValidationData5.setPourcentageConfiance(50);
observationValidationData5.setDate(new Date());
observationValidationData5.setProtocol(protocol2);
observationValidationDatas.add(observationValidationData5);
for (int i = 0; i < 20; i++) {
 
Observation observation = new Observation();
String auteur = auteurs.next();
observation.setAuteur(auteur);
observation.setSpecies(auteurObs.get(auteur));
 
int numobs = 44120 + i;
observation.setUrl("http://www.tela-botanica.org/appli:cel-img:0000" + String.valueOf(numobs) + "CRS.jpg");
observation.setNumNomenclatural("num nomenclatural " + i);
observation.setIdImage("id image " + i);
observation.setDate(DateTimeFormat.getFormat(PredefinedFormat.DATE_SHORT).format(new Date()));
observation.setFamille("famille " + i);
observation.setLocalite("localite " + i);
observation.setNomRetenu("nom retenu " + i);
observation.setMotsClefs(motsClefs);
observation.setImageCelValidationDatas(observationValidationDatas);
 
observations.add(observation);
}
 
propositionsTaxonDatas.add("Acer monsp. L.");
propositionsTaxonDatas.add("Acer aceras aus.");
propositionsTaxonDatas.add("Acer monsp subsp. monsp.");
149,10 → 155,19
}
 
public List<ObservationValidation> getValidationData(String idImage) {
 
return observationValidationDatas;
}
 
public List<ObservationValidation> getValidationDataByImageAndProtocol(String idImage, String protocolName) {
List<ObservationValidation> validations = new ArrayList<ObservationValidation>();
for (ObservationValidation observationValidation : observationValidationDatas) {
if (observationValidation.getProtocol().getNom().equals(protocolName)) {
validations.add(observationValidation);
}
}
return validations;
}
 
public ArrayList<String> getPropositionsTaxonsData(String idImage) {
 
return propositionsTaxonDatas;