minor fixes

This commit is contained in:
Francesco Mangiacrapa 2022-11-08 13:55:52 +01:00
parent 42f52dfa50
commit 7c646b3ead
5 changed files with 24 additions and 545 deletions

View File

@ -128,6 +128,8 @@ public class GeoportalDataViewer implements EntryPoint {
private TimelineManagerStatus timelineMS = new TimelineManagerStatus(applicationBus);
private boolean initApplication;
/**
* This is the entry point method.
*/
@ -172,6 +174,8 @@ public class GeoportalDataViewer implements EntryPoint {
}
private void initApplication() {
initApplication = true;
Scheduler.get().scheduleDeferred(new ScheduledCommand() {
@Override
@ -418,7 +422,11 @@ public class GeoportalDataViewer implements EntryPoint {
attempt = 0;
if (paramGeonaItemID != null) { // waiting for record retrieved by service before calling the WFS
if (paramGeonaItemID != null && initApplication) { // waiting for record retrieved by service before calling the WFS
//forcing once at init time
initApplication = false;
final int MAX_RETRY = 15;
Timer timer = new com.google.gwt.user.client.Timer() {

View File

@ -538,7 +538,7 @@ public abstract class OpenLayerMap {
if (wmsDetailsLayerMap == null)
return;
GWT.log("Removing layers: " + wmsDetailsLayerMap.keySet() + " from map");
GWT.log("Removing wmsDetailsLayerMap: " + wmsDetailsLayerMap.keySet() + " from map");
for (String key : wmsDetailsLayerMap.keySet()) {
Image layer = wmsDetailsLayerMap.get(key);

View File

@ -1,475 +0,0 @@
//package org.gcube.portlets.user.geoportaldataviewer.client.ui;
//
//import java.util.ArrayList;
//import java.util.Arrays;
//import java.util.HashMap;
//import java.util.List;
//import java.util.Map;
//
//import org.gcube.application.geoportalcommon.shared.ResultSetPaginatedData;
//import org.gcube.application.geoportalcommon.shared.SearchingFilter;
//import org.gcube.application.geoportalcommon.shared.SearchingFilter.LOGICAL_OP;
//import org.gcube.application.geoportalcommon.shared.SearchingFilter.ORDER;
//import org.gcube.application.geoportalcommon.shared.WhereClause;
//import org.gcube.application.geoportalcommon.shared.geoportal.config.ItemFieldDV;
//import org.gcube.portlets.user.geoportaldataviewer.client.GeoportalDataViewerServiceAsync;
//import org.gcube.portlets.user.geoportaldataviewer.client.events.SearchPerformedEvent;
//import org.gcube.portlets.user.geoportaldataviewer.client.util.LoaderIcon;
//
//import com.github.gwtbootstrap.client.ui.Alert;
//import com.github.gwtbootstrap.client.ui.Button;
//import com.github.gwtbootstrap.client.ui.DropdownButton;
//import com.github.gwtbootstrap.client.ui.ListBox;
//import com.github.gwtbootstrap.client.ui.NavLink;
//import com.github.gwtbootstrap.client.ui.TextBox;
//import com.github.gwtbootstrap.client.ui.constants.AlertType;
//import com.github.gwtbootstrap.client.ui.constants.ButtonType;
//import com.google.gwt.core.client.GWT;
//import com.google.gwt.event.dom.client.ChangeEvent;
//import com.google.gwt.event.dom.client.ChangeHandler;
//import com.google.gwt.event.dom.client.ClickEvent;
//import com.google.gwt.event.dom.client.ClickHandler;
//import com.google.gwt.event.dom.client.KeyPressEvent;
//import com.google.gwt.event.dom.client.KeyPressHandler;
//import com.google.gwt.event.shared.HandlerManager;
//import com.google.gwt.uibinder.client.UiBinder;
//import com.google.gwt.uibinder.client.UiField;
//import com.google.gwt.user.client.Window;
//import com.google.gwt.user.client.rpc.AsyncCallback;
//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.HorizontalPanel;
//import com.google.gwt.user.client.ui.Widget;
//
//
///**
// * The Class SearchFacilityUI.
// *
// * @author Francesco Mangiacrapa at ISTI-CNR francesco.mangiacrapa@isti.cnr.it
// *
// * Dec 14, 2021
// */
//public class SearchFacilityUI extends Composite {
//
// private static SearchFacilityPanelUiBinder uiBinder = GWT.create(SearchFacilityPanelUiBinder.class);
//
// protected static final int MIN_LENGHT_SERCHING_STRING = 3;
//
// @UiField
// ListBox listBoxSortBy;
//
// @UiField
// ListBox listBoxSearchFor;
//
// @UiField
// TextBox searchField;
//
// @UiField
// NavLink sortByToogle;
//
// @UiField
// Button resetSearch;
//
// @UiField
// HTMLPanel panelResults;
//
// @UiField
// HorizontalPanel toogleSortBy;
//
// private List<ItemFieldDV> searchForFields;
//
// private List<ItemFieldDV> sortByFields;
//
// private SearchingFilter currentSortFilter;
//
// private HandlerManager appManagerBus;
//
// private static final String LABEL_FILTER_SEPARATOR = " - ";
//
// private ResultSetPaginatedData latestResult;
//
// private DropdownButton searchFacilityButton;
//
// /**
// * The Interface SearchFacilityPanelUiBinder.
// *
// * @author Francesco Mangiacrapa at ISTI-CNR francesco.mangiacrapa@isti.cnr.it
// *
// * Dec 14, 2021
// */
// interface SearchFacilityPanelUiBinder extends UiBinder<Widget, SearchFacilityUI> {
// }
//
// /**
// * Instantiates a new search facility UI.
// *
// * @param appManagerBus the app manager bus
// * @param sortByFields the sort by fields
// * @param searchForFields the search for fields
// * @param initialSortFilter the initial sort filter
// */
// public SearchFacilityUI(HandlerManager appManagerBus, List<ItemFieldDV> sortByFields, List<ItemFieldDV> searchForFields,
// SearchingFilter initialSortFilter) {
// initWidget(uiBinder.createAndBindUi(this));
// this.searchForFields = searchForFields;
// this.currentSortFilter = initialSortFilter;
// this.sortByFields = sortByFields;
// this.appManagerBus = appManagerBus;
//
// resetSearch.setType(ButtonType.LINK);
//
// listBoxSortBy.setWidth("180px");
// listBoxSearchFor.setWidth("140px");
//
// bindEvents();
// }
//
// /**
// * To label filter.
// *
// * @param itemField the item field
// * @param direction the direction
// * @return the string
// */
// private String toLabelFilter(ItemFieldDV itemField, ORDER direction) {
// String labelFilter = itemField.getDisplayName() + LABEL_FILTER_SEPARATOR + direction.name();
// return labelFilter;
// }
//
// /**
// * Bind events.
// */
// private void bindEvents() {
//
// for (ItemFieldDV record_FIELD : sortByFields) {
// if(record_FIELD.isSortable()) {
// String labelASC = toLabelFilter(record_FIELD, ORDER.ASC);
// String labelDESC = toLabelFilter(record_FIELD, ORDER.DESC);
// listBoxSortBy.addItem(labelASC);
// listBoxSortBy.addItem(labelDESC);
// }
// }
//
// listBoxSortBy.addChangeHandler(new ChangeHandler() {
//
// @Override
// public void onChange(ChangeEvent event) {
// if(latestResult!=null && latestResult.getData().size()>0) {
// doSearchEvent();
// }
// }
// });
//
// for (ItemFieldDV record_FIELD : searchForFields) {
// GWT.log("search for: "+record_FIELD);
// if(record_FIELD.isSearchable()) {
// listBoxSearchFor.addItem(record_FIELD.getDisplayName());
// }
// }
//
// listBoxSearchFor.addChangeHandler(new ChangeHandler() {
//
// @Override
// public void onChange(ChangeEvent event) {
// if (searchField.getText().length() >= MIN_LENGHT_SERCHING_STRING) {
// doSearchEvent();
// }
//
// }
// });
//
// sortByToogle.addClickHandler(new ClickHandler() {
//
// @Override
// public void onClick(ClickEvent event) {
// if (toogleSortBy.isVisible())
// toogleSortBy.setVisible(false);
// else
// toogleSortBy.setVisible(true);
//
// }
// });
//
// searchField.addKeyPressHandler(new KeyPressHandler() {
//
// @Override
// public void onKeyPress(KeyPressEvent event) {
// if (com.google.gwt.event.dom.client.KeyCodes.KEY_ENTER == event.getCharCode()) {
// GWT.log(searchField.getText());
// doSearchEvent();
// }
//
// }
// });
//
// resetSearch.addClickHandler(new ClickHandler() {
//
// @Override
// public void onClick(ClickEvent event) {
// searchField.setText("");
// resetSearch.setVisible(false);
// panelResults.clear();
// latestResult = null;
// appManagerBus.fireEvent(new SearchPerformedEvent(null,true));
// setSearchEnabled(false);
// }
// });
//
// }
//
// private void setSearchEnabled(boolean bool) {
// if(bool) {
// searchFacilityButton.getElement().addClassName("highlight-button");
// }
// else {
// searchFacilityButton.getElement().removeClassName("highlight-button");
// }
// }
//
// /**
// * Search concessioni.
// */
// private void searchConcessioni() {
//
// SearchingFilter filter = getCurrentSortFilter();
// panelResults.clear();
// panelResults.add(new HTML("<hr>"));
// panelResults.add(new LoaderIcon("Searching..."));
// GeoportalDataViewerServiceAsync.Util.getInstance().getListConcessioni(0, 30, filter, false,
// new AsyncCallback<ResultSetPaginatedData>() {
//
//
//
// @Override
// public void onFailure(Throwable caught) {
//// showLoading(false);
//// Window.alert(caught.getMessage());
// panelResults.clear();
// panelResults.add(new HTML("<hr>"));
// Alert alert = new Alert("Error on searching. Please, refresh or change the search");
// alert.setType(AlertType.ERROR);
// alert.setClose(false);
// panelResults.add(alert);
// }
//
// @Override
// public void onSuccess(ResultSetPaginatedData result) {
//
// Window.alert("searchConcessioni must be revisited");
// /*
// appManagerBus.fireEvent(new SearchPerformedEvent(result.getData(),false));
//
//
// setSearchEnabled(true);
// latestResult = result;
//
// panelResults.clear();
// panelResults.add(new HTML("<hr>"));
//
// if (result.getData().size() == 0) {
// panelResults.add(new HTML("No result found"));
// return;
// }
//
// FlexTable ft = new FlexTable();
// ft.getElement().setClassName("table-results");
// int i = 1;
// ft.setWidget(0, i, new HTML("Nome Progetto"));
//
// String selValue = listBoxSearchFor.getSelectedValue().toLowerCase();
//
// boolean addIntroduction = false;
// if(selValue.startsWith("proj") || selValue.startsWith("any")) {
// ft.setWidget(0, ++i, new HTML("Introduzione"));
// addIntroduction = true;
// }
//
// boolean addStaff = false;
// if(selValue.startsWith("director")) {
// ft.setWidget(0, ++i, new HTML("Autori"));
// ft.setWidget(0, ++i, new HTML("Responsabile"));
// ft.setWidget(0, ++i, new HTML("Editore"));
// ft.setWidget(0, ++i, new HTML("Titolari"));
// ft.setWidget(0, ++i, new HTML("Contributore"));
// addStaff = true;
// }
// boolean addParole = false;
// if(selValue.startsWith("keyword")) {
// ft.setWidget(0, ++i, new HTML("Parole Libere"));
// ft.setWidget(0, ++i, new HTML("Parole Cronologia"));
// addParole = true;
// }
//
// i = 1;
// for (DocumentDV concessione : result.getData()) {
// int j = -1;
//
// NavLink locateOnMap = new NavLink("Show");
// locateOnMap.setTitle("Locate on the Map and show details");
// locateOnMap.setIcon(IconType.MAP_MARKER);
//
// locateOnMap.addClickHandler(new ClickHandler() {
//
// @Override
// public void onClick(ClickEvent event) {
// GeoportalItemReferences gir = new GeoportalItemReferences(concessione.getItemId(), GeoportalDataViewerConstants.RECORD_TYPE.CONCESSIONE.toString());
// appManagerBus.fireEvent(new ShowDetailsEvent(gir, null, null));
// appManagerBus.fireEvent(new ShowPopupOnCentroiEvent(concessione));
//
// }
// });
//
// ft.setWidget(i, ++j, locateOnMap);
//
//
// ft.setWidget(i, ++j, new HTML(concessione.getNome()));
// if(addIntroduction)
// ft.setWidget(i, ++j, new HTML(StringUtil.ellipsize(concessione.getIntroduzione(), 200)));
//
// if(addStaff) {
// ft.setWidget(i, ++j, new HTML(toDisplayList(concessione.getAuthors())));
// ft.setWidget(i, ++j, new HTML(toDisplayList(Arrays.asList(concessione.getResponsabile()))));
// ft.setWidget(i, ++j, new HTML(toDisplayList(Arrays.asList(concessione.getEditore()))));
// ft.setWidget(i, ++j, new HTML(toDisplayList(concessione.getTitolari())));
// ft.setWidget(i, ++j, new HTML(toDisplayList(Arrays.asList(concessione.getContributore()))));
// }
//
// if(addParole) {
// ft.setWidget(i, ++j, new HTML(toDisplayList(concessione.getParoleChiaveLibere())));
// ft.setWidget(i, ++j, new HTML(toDisplayList(concessione.getParoleChiaveICCD())));
// }
//
//
//
// i++;
// }
//
// panelResults.add(ft);
// */
//
// }
// });
// }
//
// /**
// * To display authors.
// *
// * @param listValues the list values
// * @return the string
// */
// private String toDisplayList(List<String> listValues) {
// String toDisplay = "";
// if (listValues == null)
// return toDisplay;
//
// for (String author : listValues) {
// toDisplay += author + "; ";
// }
// return toDisplay;
// }
//
// /**
// * Do search event.
// */
// private void doSearchEvent() {
// String searchText = searchField.getText();
// if (searchText.length() < MIN_LENGHT_SERCHING_STRING) {
// Window.alert("Please enter at least " + MIN_LENGHT_SERCHING_STRING + " characters");
// return;
// }
//
// resetSearch.setVisible(true);
// // appManagerBus.fireEvent(new GetListOfRecordsEvent(RECORD_TYPE.CONCESSIONE,
// // getCurrentSortFilter()));
//
// searchConcessioni();
// }
//
// /**
// * To sort filter.
// *
// * @param labelFilter the label filter
// * @return the searching filter
// */
// public SearchingFilter toSortFilter(String labelFilter) {
// GWT.log("toSortFilter for label " + labelFilter);
// String[] array = labelFilter.split(LABEL_FILTER_SEPARATOR);
//
// SearchingFilter sortFilter = null;
// try {
// ItemFieldDV recordField = null;
// for (ItemFieldDV value : sortByFields) {
// if (array[0].equalsIgnoreCase(value.getDisplayName())) {
// recordField = value;
// break;
// }
// }
// ORDER orderField = ORDER.valueOf(array[1]);
// sortFilter = new SearchingFilter(Arrays.asList(recordField), orderField);
// } catch (Exception e) {
//
// }
// GWT.log("toSortFilter Got " + sortFilter);
// return sortFilter;
//
// }
//
// /**
// * Built searching filter.
// *
// * @return the searching filter
// */
// private SearchingFilter builtSearchingFilter() {
// SearchingFilter searchingFilter = toSortFilter(listBoxSortBy.getSelectedValue());
// String searchText = searchField.getText();
// if (searchText != null && !searchText.isEmpty()) {
// Map<String, Object> searchInto = new HashMap<String, Object>();
//
// List<String> listOfSeachingFields = new ArrayList<String>();
//
// for (ItemFieldDV recordField : searchForFields) {
// if (recordField.getDisplayName().equals(listBoxSearchFor.getSelectedValue())) {
// listOfSeachingFields = recordField.getJsonFields();
// continue;
// }
// }
//
// if(listOfSeachingFields.size()==0) {
// listOfSeachingFields.add("nome");
// }
// for (String fieldname : listOfSeachingFields) {
// searchInto.put(fieldname, searchText);
// }
//
// WhereClause where = new WhereClause();
// where.setSearchInto(searchInto);
// where.setOperator(LOGICAL_OP.OR);
//
// //THIS CLAUSE IS ADDED IN ORDER TO SEARCH ONLY PUBLISHED PRODUCT (WITH SUCCESS)
// Map<String, Object> searchInto2 = new HashMap<String, Object>();
// searchInto2.put("report.status", "PASSED");
// WhereClause where2 = new WhereClause(LOGICAL_OP.AND, searchInto2);
//
// searchingFilter.setConditions(Arrays.asList(where, where2));
// }
// return searchingFilter;
// }
//
// /**
// * Gets the current sort filter.
// *
// * @return the current sort filter
// */
// public SearchingFilter getCurrentSortFilter() {
// currentSortFilter = builtSearchingFilter();
// GWT.log("currentSortFilter: " + currentSortFilter);
// return currentSortFilter;
// }
//
// public void setSearchButton(DropdownButton searchFacilityButton) {
// this.searchFacilityButton = searchFacilityButton;
//
// }
//
//}

View File

@ -1,60 +0,0 @@
<!-- <!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"
xmlns:b="urn:import:com.github.gwtbootstrap.client.ui"
xmlns:c="urn:import:org.gcube.portlets.user.geoportaldataviewer.client.ui">
<ui:style>
.important {
font-weight: bold;
}
.container-panel {
padding: 10px;
}
.add-margin-right {
margin-right: 5px;
}
.add-margin-right-23 {
margin-right: 23px;
}
.margin-top-5 {
margin-top: 5px;
}
.font-size-12 {
font-size: 12px;
}
</ui:style>
<g:HTMLPanel addStyleNames="{style.container-panel}">
<g:FlowPanel>
<g:FlowPanel>
<g:FlowPanel>
<g:HorizontalPanel>
<g:Label addStyleNames="{style.add-margin-right}">Search for: </g:Label>
<b:ListBox title="Search for"
ui:field="listBoxSearchFor"
addStyleNames="{style.add-margin-right}">
</b:ListBox>
<b:TextBox ui:field="searchField"
addStyleNames="search-textbox" placeholder="type a text..."></b:TextBox>
<b:Button icon="REMOVE_CIRCLE" ui:field="resetSearch"
title="Reset the search" visible="false">Reset</b:Button>
</g:HorizontalPanel>
</g:FlowPanel>
<g:FlowPanel>
<b:NavLink ui:field="sortByToogle" addStyleNames="{style.font-size-12}">Sort Results</b:NavLink>
<g:HorizontalPanel ui:field="toogleSortBy"
addStyleNames="{style.margin-top-5}" visible="false">
<g:Label addStyleNames="{style.add-margin-right-23}">Sort by: </g:Label>
<b:ListBox ui:field="listBoxSortBy">
</b:ListBox>
</g:HorizontalPanel>
</g:FlowPanel>
</g:FlowPanel>
<g:HTMLPanel ui:field="panelResults">
</g:HTMLPanel>
</g:FlowPanel>
</g:HTMLPanel>
</ui:UiBinder> -->

View File

@ -83,12 +83,13 @@ public class ProjectViewer extends Composite {
pageViewDetails.getElement().setId("page-view-details");
}
public ProjectViewer(HandlerManager applicationBus, GeoportalItemReferences geoportalItemRefs, ProjectView projectView) {
public ProjectViewer(HandlerManager applicationBus, GeoportalItemReferences geoportalItemRefs,
ProjectView projectView) {
this(applicationBus, geoportalItemRefs, projectView, true, true);
}
public ProjectViewer(HandlerManager applicationBus, GeoportalItemReferences geoportalItemRefs, final ProjectView projectView,
boolean viewImageButtonVisible, boolean openImageButtonVisible) {
public ProjectViewer(HandlerManager applicationBus, GeoportalItemReferences geoportalItemRefs,
final ProjectView projectView, boolean viewImageButtonVisible, boolean openImageButtonVisible) {
this();
GWT.log("Rendering " + projectView.getTheProjectDV().getId());
this.theProjectView = projectView;
@ -128,6 +129,7 @@ public class ProjectViewer extends Composite {
ProjectViewer cv = new ProjectViewer(applicationBus, geoportalItemReferences, theProjectView, false,
openImageButtonVisible);
cv.setExpandViewButtonVisible(false);
cv.setRelationshipsButtonVisible(false);
int width = Window.getClientWidth() * 75 / 100;
int height = Window.getClientHeight() * 70 / 100;
ModalWindow mw = new ModalWindow(theTitle, width, height);
@ -148,14 +150,14 @@ public class ProjectViewer extends Composite {
relationshipsButton.setVisible(true);
} else
relationshipsButton.setVisible(false);
relationshipsButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
applicationBus.fireEvent(new TimelineProjectRelationsEvent(theProjectView.getTheProjectDV(), EVENT_TYPE.SHOW));
applicationBus.fireEvent(
new TimelineProjectRelationsEvent(theProjectView.getTheProjectDV(), EVENT_TYPE.SHOW));
}
});
@ -215,4 +217,8 @@ public class ProjectViewer extends Composite {
expandButton.setVisible(bool);
}
protected void setRelationshipsButtonVisible(boolean bool) {
relationshipsButton.setVisible(bool);
}
}