120 lines
4.0 KiB
Java
120 lines
4.0 KiB
Java
package org.gcube.portlets.user.geoportaldataviewer.client.ui.products.concessioni;
|
|
|
|
import java.util.List;
|
|
|
|
import org.gcube.application.geoportalcommon.shared.products.content.WorkspaceContentDV;
|
|
import org.gcube.application.geoportalcommon.shared.products.model.AbstractRelazioneScavoDV;
|
|
import org.gcube.application.geoportalcommon.shared.products.model.RelazioneScavoDV;
|
|
import org.gcube.portlets.user.geoportaldataviewer.client.GeoportalDataViewerConstants;
|
|
import org.gcube.portlets.user.geoportaldataviewer.client.ui.util.CustomFlexTable;
|
|
|
|
import com.github.gwtbootstrap.client.ui.Button;
|
|
import com.github.gwtbootstrap.client.ui.Paragraph;
|
|
import com.google.gwt.core.client.GWT;
|
|
import com.google.gwt.event.dom.client.ClickEvent;
|
|
import com.google.gwt.event.dom.client.ClickHandler;
|
|
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.HTMLPanel;
|
|
import com.google.gwt.user.client.ui.Widget;
|
|
|
|
public class RelazioneScavoView extends Composite {
|
|
|
|
private static final String SHOW_ITALIAN_DESCR = "Italian description";
|
|
|
|
private static final String SHOW_ENGLISH_DESCR = "English description";
|
|
|
|
private static RelazioneScavoViewUiBinder uiBinder = GWT.create(RelazioneScavoViewUiBinder.class);
|
|
|
|
interface RelazioneScavoViewUiBinder extends UiBinder<Widget, RelazioneScavoView> {
|
|
}
|
|
|
|
@UiField
|
|
HTMLPanel relazioneScavoPanel;
|
|
|
|
@UiField
|
|
Paragraph abstractParagraphIta;
|
|
|
|
@UiField
|
|
Paragraph abstractParagraphEng;
|
|
|
|
@UiField
|
|
Button linkAbstractLanguage;
|
|
|
|
private CustomFlexTable customTable = new CustomFlexTable();
|
|
|
|
public RelazioneScavoView(AbstractRelazioneScavoDV abstractRelazioneDV, RelazioneScavoDV relazioneScavoDV) {
|
|
initWidget(uiBinder.createAndBindUi(this));
|
|
GWT.log("Showing abstract: "+abstractRelazioneDV);
|
|
GWT.log("Showing relazioneScavoDV: "+relazioneScavoDV);
|
|
|
|
if (abstractRelazioneDV != null) {
|
|
relazioneScavoPanel.setVisible(true);
|
|
if (abstractRelazioneDV.getAbstractSectionIta() != null) {
|
|
abstractParagraphIta.setText(abstractRelazioneDV.getAbstractSectionIta());
|
|
if (abstractRelazioneDV.getAbstractSectionEng() != null) {
|
|
linkAbstractLanguage.setVisible(true);
|
|
abstractParagraphEng.setText(abstractRelazioneDV.getAbstractSectionEng());
|
|
linkAbstractLanguage.setText(SHOW_ENGLISH_DESCR);
|
|
}
|
|
}
|
|
|
|
showLinkToDownloadWsContent("Abstract Relazione", abstractRelazioneDV.getListWsContent());
|
|
}
|
|
|
|
linkAbstractLanguage.addClickHandler(new ClickHandler() {
|
|
|
|
@Override
|
|
public void onClick(ClickEvent event) {
|
|
GWT.log("Clicked");
|
|
if (abstractParagraphIta.isVisible()) {
|
|
linkAbstractLanguage.setText(SHOW_ITALIAN_DESCR);
|
|
abstractParagraphIta.setVisible(false);
|
|
abstractParagraphEng.setVisible(true);
|
|
} else {
|
|
linkAbstractLanguage.setText(SHOW_ENGLISH_DESCR);
|
|
abstractParagraphIta.setVisible(true);
|
|
abstractParagraphEng.setVisible(false);
|
|
}
|
|
|
|
}
|
|
});
|
|
|
|
if (relazioneScavoDV != null) {
|
|
relazioneScavoPanel.setVisible(true);
|
|
// customTable.addNextKeyValue("Created", relazioneScavoDV.getCreationTime());
|
|
// customTable.addNextKeyValue("ID Licenza", relazioneScavoDV.getLicenseID());
|
|
customTable.addNextKeyValues("Responsabili", relazioneScavoDV.getResponsabili(),
|
|
GeoportalDataViewerConstants.NEW_LINE_BR);
|
|
|
|
showLinkToDownloadWsContent("Relazione", relazioneScavoDV.getListWsContent());
|
|
}
|
|
|
|
relazioneScavoPanel.add(customTable);
|
|
}
|
|
|
|
private void showLinkToDownloadWsContent(String title, List<WorkspaceContentDV> listContent) {
|
|
if (listContent != null) {
|
|
int i = 0;
|
|
String fieldLabel = title;
|
|
for (WorkspaceContentDV workspaceContentDV : listContent) {
|
|
|
|
if (i > 0) {
|
|
fieldLabel = "";
|
|
}
|
|
|
|
String downloadLabel = "download";
|
|
if(workspaceContentDV.getName()!=null) {
|
|
downloadLabel = workspaceContentDV.getName();
|
|
}
|
|
|
|
customTable.addNextKeyWidget(fieldLabel, new HTML(
|
|
"<a href=\"" + workspaceContentDV.getLink() + "\">" + downloadLabel + "</a>"));
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|