At the end of the changes press the "Update" button to
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/edit/UpdateFileset.java b/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/edit/UpdateFileset.java
index b7617f3..2f75123 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/edit/UpdateFileset.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/edit/UpdateFileset.java
@@ -1,7 +1,9 @@
package org.gcube.portlets.user.geoportaldataentry.client.ui.edit;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import org.gcube.application.geoportalcommon.shared.products.BaseConcessioneDV;
import org.gcube.application.geoportalcommon.shared.products.ConcessioneDV;
@@ -25,6 +27,7 @@ import com.github.gwtbootstrap.client.ui.ControlGroup;
import com.github.gwtbootstrap.client.ui.Controls;
import com.github.gwtbootstrap.client.ui.Label;
import com.github.gwtbootstrap.client.ui.ListBox;
+import com.github.gwtbootstrap.client.ui.constants.IconType;
import com.github.gwtbootstrap.client.ui.constants.LabelType;
import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.Style.Unit;
@@ -52,7 +55,7 @@ import com.google.gwt.user.client.ui.Widget;
*/
public class UpdateFileset extends Composite {
- private static final String _FORM_FIELDS_SIZE = "740px";
+ private static final String _FORM_WIDTH_FIELDS_SIZE = "730px";
private static UpdateFilesetUiBinder uiBinder = GWT.create(UpdateFilesetUiBinder.class);
@@ -96,9 +99,11 @@ public class UpdateFileset extends Composite {
private HandlerManager uiBus = new HandlerManager(null);
private MetaDataField fieldUploadWidget;
-
+
private Integer pathIndex = null;
+ private Map mapForCCUploading = null;
+
/**
* Instantiates a new update fileset.
*
@@ -113,7 +118,7 @@ public class UpdateFileset extends Composite {
for (String path : listFileSetPaths) {
listBoxPaths.addItem(path);
}
- listBoxPaths.setWidth(_FORM_FIELDS_SIZE);
+ listBoxPaths.setWidth(_FORM_WIDTH_FIELDS_SIZE);
// add handler on select
listBoxPaths.addChangeHandler(new ChangeHandler() {
@@ -190,12 +195,13 @@ public class UpdateFileset extends Composite {
placeholderListBoxIndex = true;
fieldUploadWidget = null;
pathIndex = null;
+ mapForCCUploading = null;
// listBoxIndex.clear();
cgSelectFile.setVisible(true);
ListBox listBoxContentIndex = new ListBox();
- listBoxContentIndex.setWidth(_FORM_FIELDS_SIZE);
+ listBoxContentIndex.setWidth(_FORM_WIDTH_FIELDS_SIZE);
listBoxContentIndex.addItem("Select a content...");
if (listBoxPaths.getSelectedItemText().contains("abstract_relazione")) {
@@ -250,13 +256,20 @@ public class UpdateFileset extends Composite {
}
int posizIndex = 0;
for (LayerConcessioneDV lcDV : piante) {
- fillListBoxToBeReplaced(listBoxContentIndex, "piante", posizIndex, lcDV.getTitolo(), lcDV.getListWsContent());
+ fillListBoxToBeReplaced(listBoxContentIndex, "piante", posizIndex, lcDV.getTitolo(),
+ lcDV.getListWsContent());
posizIndex++;
}
}
controlsContent.add(listBoxContentIndex);
+
+
+ if(listBoxContentIndex.getItemCount()==1) {
+ listBoxContentIndex.setSelectedIndex(0);
+ listBoxContentIndex.setSelectedValue(listBoxContentIndex.getItemText(0));
+ }
}
@@ -294,7 +307,16 @@ public class UpdateFileset extends Composite {
private void showFileBrowseInteraction(int pathContentIndex, List listWSC) {
uploadFileContainer.clear();
pathIndex = pathContentIndex;
-
+
+ // map for current content uploading
+ mapForCCUploading = new HashMap(listWSC.size());
+ int index = 0;
+ for (WorkspaceContentDV workspaceContentDV : listWSC) {
+ workspaceContentDV.setCliendId(index);
+ mapForCCUploading.put(index, workspaceContentDV);
+ index++;
+ }
+
if (listWSC.size() > 0) {
FlexTable table = new FlexTable();
table.addStyleName("table-current-content");
@@ -302,12 +324,27 @@ public class UpdateFileset extends Composite {
table.setHTML(1, 0, "Filename");
table.setHTML(1, 1, "MimeType");
table.setHTML(1, 2, "Link");
+
int i = 2;
- for (WorkspaceContentDV wsContent : listWSC) {
+ for (final WorkspaceContentDV wsContent : listWSC) {
table.setHTML(i, 0, wsContent.getName());
table.setHTML(i, 1, wsContent.getMimetype());
- String link = "Download";
+ String link = "View";
table.setHTML(i, 2, link);
+
+ final int rowIndexToRem = i;
+ Button buttonRemoveFile = new Button();
+ buttonRemoveFile.setIcon(IconType.TRASH);
+ buttonRemoveFile.setTitle("Remove this file");
+ buttonRemoveFile.addClickHandler(new ClickHandler() {
+
+ @Override
+ public void onClick(ClickEvent event) {
+ mapForCCUploading.remove(wsContent.getCliendId());
+ table.getRowFormatter().getElement(rowIndexToRem).setAttribute("hidden", "hidden");
+ }
+ });
+ table.setWidget(i, 3, buttonRemoveFile);
i++;
}
@@ -316,7 +353,8 @@ public class UpdateFileset extends Composite {
HTML label = new HTML();
label.getElement().getStyle().setMarginTop(10, Unit.PX);
- label.setHTML("With new content:");
+ label.getElement().getStyle().setMarginBottom(10, Unit.PX);
+ label.setHTML("Add new file/s:");
uploadFileContainer.add(label);
// mDU = new MultipleDilaogUpload();
@@ -328,12 +366,10 @@ public class UpdateFileset extends Composite {
try {
fieldUploadWidget = new MetaDataField(uploadField, uiBus);
- // BrowseFilePanel fieldsetContent = new BrowseFilePanel(fieldUploadWidget);
uploadFileContainer.add(fieldUploadWidget);
buttonUpdate.setVisible(true);
} catch (Exception e) {
- // TODO Auto-generated catch block
e.printStackTrace();
}
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/edit/UpdateFileset.ui.xml b/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/edit/UpdateFileset.ui.xml
index ac27ab0..47d529b 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/edit/UpdateFileset.ui.xml
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/edit/UpdateFileset.ui.xml
@@ -23,7 +23,7 @@
- Replace the content
+ Manage the content of
@@ -31,7 +31,7 @@
-
+
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/BuildValidationReport.java b/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/BuildValidationReport.java
index f1aa06d..1b68850 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/BuildValidationReport.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/BuildValidationReport.java
@@ -48,7 +48,7 @@ public class BuildValidationReport extends FlowPanel {
break;
}
- rTToHTML = new ReportTemplateToHTML(validationReport.getAsJSONString());
+ rTToHTML = new ReportTemplateToHTML(validationReport.getAsJSONString(), true);
add(recordPublished);
add(rTToHTML);
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/ReportTemplateToHTML.java b/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/ReportTemplateToHTML.java
index 5bf287e..329f95c 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/ReportTemplateToHTML.java
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/ReportTemplateToHTML.java
@@ -2,7 +2,13 @@ package org.gcube.portlets.user.geoportaldataentry.client.ui.report;
import org.gcube.portlets.user.geoportaldataentry.client.ui.utils.ExternalLib;
+import com.github.gwtbootstrap.client.ui.AccordionGroup;
import com.github.gwtbootstrap.client.ui.Paragraph;
+import com.github.gwtbootstrap.client.ui.constants.IconType;
+import com.github.gwtbootstrap.client.ui.event.HiddenEvent;
+import com.github.gwtbootstrap.client.ui.event.HiddenHandler;
+import com.github.gwtbootstrap.client.ui.event.ShowEvent;
+import com.github.gwtbootstrap.client.ui.event.ShowHandler;
import com.google.gwt.core.client.GWT;
import com.google.gwt.json.client.JSONArray;
import com.google.gwt.json.client.JSONObject;
@@ -41,6 +47,9 @@ public class ReportTemplateToHTML extends Composite {
@UiField
VerticalPanel htmlContainer;
+
+ @UiField
+ AccordionGroup showReportAsJSON;
@UiField
Paragraph reportJSON;
@@ -52,9 +61,37 @@ public class ReportTemplateToHTML extends Composite {
*
* @param reportAsJSON the report as JSON
*/
- public ReportTemplateToHTML(String reportAsJSON) {
+ public ReportTemplateToHTML(String reportAsJSON, boolean openJSONReport) {
initWidget(uiBinder.createAndBindUi(this));
vpContainer.setVisible(false);
+ showReportAsJSON.setDefaultOpen(openJSONReport);
+ //showReportAsJSON.setIconPosition(IconPosition.RIGHT);
+
+ if(openJSONReport) {
+ showReportAsJSON.setIcon(IconType.ARROW_DOWN);
+ }else {
+ showReportAsJSON.setIcon(IconType.ARROW_RIGHT);
+ }
+
+ showReportAsJSON.addShowHandler(new ShowHandler() {
+
+ @Override
+ public void onShow(ShowEvent showEvent) {
+ showReportAsJSON.setIcon(IconType.ARROW_DOWN);
+
+ }
+ });
+
+ showReportAsJSON.addHiddenHandler(new HiddenHandler() {
+
+ @Override
+ public void onHidden(HiddenEvent hiddenEvent) {
+ showReportAsJSON.setIcon(IconType.ARROW_RIGHT);
+
+ }
+ });
+
+
if (reportAsJSON != null) {
GWT.log("report is: " + reportAsJSON);
vpContainer.setVisible(true);
diff --git a/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/ReportTemplateToHTML.ui.xml b/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/ReportTemplateToHTML.ui.xml
index 0081bcb..572b030 100644
--- a/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/ReportTemplateToHTML.ui.xml
+++ b/src/main/java/org/gcube/portlets/user/geoportaldataentry/client/ui/report/ReportTemplateToHTML.ui.xml
@@ -17,7 +17,7 @@
Publication Report:
-
+
diff --git a/src/main/webapp/GeoPortalDataEntryApp.css b/src/main/webapp/GeoPortalDataEntryApp.css
index e5e8797..384138f 100644
--- a/src/main/webapp/GeoPortalDataEntryApp.css
+++ b/src/main/webapp/GeoPortalDataEntryApp.css
@@ -83,7 +83,8 @@ h1 {
position: -webkit-sticky;
position: sticky;
top: 0;
- background-color: #eeeeee;
+ background-color: #f8f8f8;
+ border-radius: 20px;
}
.modal-body-custom {
@@ -108,3 +109,11 @@ h1 {
.table-current-content td {
padding: 5px;
}
+
+.upload-file-container .control-group {
+ display: inline-flex;
+}
+
+.upload-file-container .control-group div {
+ margin-left: 10px;
+}