13,9 → 13,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.FlexTable; |
import com.google.gwt.user.client.ui.Tree; |
import com.google.gwt.user.client.ui.TreeItem; |
import com.google.gwt.user.client.ui.HTML; |
import com.google.gwt.user.client.ui.Widget; |
|
public class ForumVue extends Composite { |
25,56 → 23,40 |
interface ForumUIiBinder extends UiBinder<Widget, ForumVue> { |
}; |
|
@UiField |
FlexTable htmlTableau; |
@UiField(provided = true) |
HTML htmlTableau = new HTML(); |
|
public ForumVue() { |
initWidget(uiBinder.createAndBindUi(this)); |
} |
|
public void chargerDeterminations(List<PropositionDetermination> determinations) { |
public void chargerObservations(List<PropositionDetermination> determinations) { |
|
htmlTableau.setHTML(1, 1, I18n.getVocabulary().nom()); |
htmlTableau.setHTML(1, 2, I18n.getVocabulary().contributeur()); |
htmlTableau.setHTML(1, 3, I18n.getVocabulary().fiabilite()); |
htmlTableau.setHTML(1, 4, I18n.getVocabulary().date()); |
htmlTableau.setHTML(1, 5, I18n.getVocabulary().commentaire()); |
String ligne = "<table>" + "<tr>" + "<th> " + I18n.getVocabulary().nom() + " </th>" + "<th> " + I18n.getVocabulary().contributeur() + " </th>" + "<th> " + I18n.getVocabulary().fiabilite() + " </th>" + "<th> " + I18n.getVocabulary().date() + " </th>" + "<th> " + I18n.getVocabulary().commentaire() + " </th>" + "</tr>"; |
|
for (PropositionDetermination determination : determinations) { |
chargerDetermination(determination); |
for (PropositionDetermination observationDetermination : determinations) { |
|
ligne += "<tr>" + "<td>" + observationDetermination.getEspece() + "</td>" + "<td>" + observationDetermination.getContributeur() + "</td>" + "<td>" + observationDetermination.getPourcentageConfiance() + "</td>" + "<td>" + formaterDatePourForum(observationDetermination.getDate()) + "</td>" + "<td>" + creerListeCommentaireRecursive(observationDetermination.getCommentaires()) + "</td>" + "</tr>"; |
} |
|
ligne += "</table>"; |
htmlTableau.setHTML(ligne); |
} |
|
public void chargerDetermination(PropositionDetermination determination) { |
private String creerListeCommentaireRecursive(List<Commentaire> commentaires) { |
|
Tree arbreCommentaires = new Tree(); |
TreeItem racineArbreCommentaires = new TreeItem(); |
arbreCommentaires.addItem(racineArbreCommentaires); |
creerListeCommentaireRecursive(racineArbreCommentaires, determination.getCommentaires()); |
|
int ligne = htmlTableau.getRowCount() + 1; |
htmlTableau.setHTML(ligne, 1, determination.getEspece()); |
htmlTableau.setHTML(ligne, 2, determination.getContributeur()); |
htmlTableau.setHTML(ligne, 3, determination.getPourcentageConfiance()); |
htmlTableau.setHTML(ligne, 4, DateTimeFormat.getFormat(PredefinedFormat.DATE_SHORT).format(determination.getDate())); |
htmlTableau.setWidget(ligne, 5, arbreCommentaires); |
|
} |
|
private void creerListeCommentaireRecursive(TreeItem parentTreeItem, List<Commentaire> commentaires) { |
|
String commentairesHtml = "<ul class=\"liste_commentaire\">"; |
for (Commentaire commentaire : commentaires) { |
String commentaireHTML = commentaire.getCommentaire() +" "+ commentaire.getAuteur() + "-"+formaterDatePourForum(commentaire.getDate()); |
parentTreeItem.setHTML(commentaireHTML); |
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) { |
TreeItem childTreeItem = new TreeItem(); |
parentTreeItem.addItem(childTreeItem); |
creerListeCommentaireRecursive(childTreeItem, commentaire.getListeCommentaires()); |
commentairesHtml += creerListeCommentaireRecursive(commentaire.getListeCommentaires()); |
} |
commentairesHtml += "</li>"; |
} |
parentTreeItem.setState(true); |
|
return commentairesHtml; |
} |
|
private String formaterDatePourForum(Date date) { |