diff --git a/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/client/ui/CreateDatasetForm.java b/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/client/ui/CreateDatasetForm.java index 90f65ba..3476bc2 100644 --- a/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/client/ui/CreateDatasetForm.java +++ b/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/client/ui/CreateDatasetForm.java @@ -157,6 +157,7 @@ public class CreateDatasetForm extends Composite{ @UiField Icon infoIconResources; @UiField FocusPanel focusPanelResources; @UiField Popover popoverResources; + @UiField ControlGroup metadataProfilesControlGroup; protected static final String ERROR_PRODUCT_CREATION = "There was an error while trying to publish your product, sorry.. Retry later"; @@ -192,7 +193,7 @@ public class CreateDatasetForm extends Composite{ // resource table private ResourcesTable resourcesTable; - + // List of opened popup'ids List popupOpenedIds = new ArrayList(); @@ -204,7 +205,7 @@ public class CreateDatasetForm extends Composite{ initWidget(uiBinder.createAndBindUi(this)); this.owner = owner; - + // save event bus this.eventBus = eventBus; @@ -315,7 +316,7 @@ public class CreateDatasetForm extends Composite{ initWidget(uiBinder.createAndBindUi(this)); this.owner = owner; - + // save event bus this.eventBus = eventBus; @@ -469,29 +470,34 @@ public class CreateDatasetForm extends Composite{ List beans = receivedBean.getMetadataList(); - for(MetaDataProfileBean metadataBean: beans){ + if(beans != null && !beans.isEmpty()){ + for(MetaDataProfileBean metadataBean: beans){ - metadataProfilesFormatListbox.addItem(metadataBean.getType().getName()); + metadataProfilesFormatListbox.addItem(metadataBean.getType().getName()); - // add handler on select - metadataProfilesFormatListbox.addChangeHandler(new ChangeHandler() { + // add handler on select + metadataProfilesFormatListbox.addChangeHandler(new ChangeHandler() { - @Override - public void onChange(ChangeEvent event) { + @Override + public void onChange(ChangeEvent event) { - String selectedItem = metadataProfilesFormatListbox.getSelectedItemText(); + String selectedItem = metadataProfilesFormatListbox.getSelectedItemText(); - if(selectedItem.equals("none")){ - // hide the panel - metadataFieldsPanel.clear(); - metadataFieldsPanel.setVisible(false); - }else{ + if(selectedItem.equals("none")){ + // hide the panel + metadataFieldsPanel.clear(); + metadataFieldsPanel.setVisible(false); + }else{ - metadataFieldsPanel.clear(); - addFields(selectedItem); + metadataFieldsPanel.clear(); + addFields(selectedItem); + } } - } - }); + }); + } + }else{ + // just hide this listbox + metadataProfilesControlGroup.setVisible(true); } } @@ -534,17 +540,17 @@ public class CreateDatasetForm extends Composite{ } }); - + // on close form eventBus.addHandler(CloseCreationFormEvent.TYPE, new CloseCreationFormEventHandler() { - + @Override public void onClose(CloseCreationFormEvent event) { - + closeDialogBox(); - + } - + }); } @@ -811,7 +817,7 @@ public class CreateDatasetForm extends Composite{ popoverTags, focusPanelTags ); - + // licenses preparePopupPanelAndPopover( InfoIconsLabels.LICENSES_INFO_ID_POPUP, @@ -1288,12 +1294,12 @@ public class CreateDatasetForm extends Composite{ tagsPanel.clear(); } - + /** * Close any dialog box opened */ private void closeDialogBox() { - + for (String popupid : popupOpenedIds) { GcubeDialogExtended popup = null; try{ @@ -1350,7 +1356,7 @@ public class CreateDatasetForm extends Composite{ popup = new GcubeDialogExtended(captionText, text); popup.getElement().setId(popupId); popup.setModal(false); - + // add its id popupOpenedIds.add(popupId); diff --git a/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/client/ui/CreateDatasetForm.ui.xml b/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/client/ui/CreateDatasetForm.ui.xml index f6e1a1f..ca426c5 100644 --- a/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/client/ui/CreateDatasetForm.ui.xml +++ b/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/client/ui/CreateDatasetForm.ui.xml @@ -251,7 +251,7 @@ - + Product Profile: