Implemented the Moderation init reading the query_string parameter

This commit is contained in:
Francesco Mangiacrapa 2022-05-04 11:07:11 +02:00
parent 6ea7e68657
commit d861865879
3 changed files with 32 additions and 15 deletions

View File

@ -37,6 +37,7 @@ import org.gcube.portlets.widgets.ckan2zenodopublisher.client.CkanToZendoPublish
import org.gcube.portlets.widgets.ckan2zenodopublisher.shared.CatalogueItem;
import org.gcube.portlets.widgets.ckancontentmoderator.client.CkanContentModeratorCheckConfigs;
import org.gcube.portlets.widgets.ckancontentmoderator.client.CkanContentModeratorWidgetTrusted;
import org.gcube.portlets.widgets.ckancontentmoderator.client.ContentModeratorWidgetConstants;
import org.gcube.portlets.widgets.ckancontentmoderator.shared.DISPLAY_FIELD;
import org.gcube.portlets.widgets.ckandatapublisherwidget.client.ui.form.CreateDatasetForm;
import org.gcube.portlets_widgets.catalogue_sharing_widget.client.ShareCatalogueWidget;
@ -248,8 +249,7 @@ public class CkanEventHandlerManager {
}
if (sortByFields == null) {
sortByFields = new DISPLAY_FIELD[] { DISPLAY_FIELD.NAME, DISPLAY_FIELD.TITLE, DISPLAY_FIELD.CREATED,
DISPLAY_FIELD.LAST_UPDATE, DISPLAY_FIELD.TYPE };
sortByFields = ContentModeratorWidgetConstants.DEFAULT_SORT_BY_FIELDS;
}
final CkanContentModeratorWidgetTrusted cmsTrusted = new CkanContentModeratorWidgetTrusted(

View File

@ -7,25 +7,23 @@ import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.RootPanel;
/**
* The Class GCubeCkanDataCatalog.
*
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
* Nov 4, 2016
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it Nov 4, 2016
*/
public class GCubeCkanDataCatalog implements EntryPoint {
/**
* Create a remote service proxy to talk to the server-side Greeting
* service.
* Create a remote service proxy to talk to the server-side Greeting service.
*/
public static final GcubeCkanDataCatalogServiceAsync service = GWT.create(GcubeCkanDataCatalogService.class);
public static final String CKAN_LOGUT_SERVICE = GWT.getModuleBaseURL() +"gcubeckanlogout";
public static final String CKAN_LOGUT_SERVICE = GWT.getModuleBaseURL() + "gcubeckanlogout";
private final String DIV_PORTLET_ID = "gCubeCkanDataCatalog";
private CkanEventHandlerManager eventManager = new CkanEventHandlerManager();
public static final String GET_PATH_PARAMETER = "path";
public static final String GET_QUERY_PARAMETER = "query";
public static final String GET_QUERY_STRING_PARAMETER = "query_string";
public static final String REVERT_QUERY_PARAM = "manage";
public static final String GCUBE_CKAN_IFRAME = "gcube-ckan-iframe";
@ -34,13 +32,14 @@ public class GCubeCkanDataCatalog implements EntryPoint {
*/
public void onModuleLoad() {
GCubeCkanDataCatalogPanel panel = new GCubeCkanDataCatalogPanel(RootPanel.get(DIV_PORTLET_ID), eventManager.getEventBus());
GCubeCkanDataCatalogPanel panel = new GCubeCkanDataCatalogPanel(RootPanel.get(DIV_PORTLET_ID),
eventManager.getEventBus());
eventManager.setPanel(panel);
/*
CkanContentModeratorWidget ccmw = new CkanContentModeratorWidget();
ccmw.showAsModal("Manage Items");
*/
* CkanContentModeratorWidget ccmw = new CkanContentModeratorWidget();
* ccmw.showAsModal("Manage Items");
*/
}
}

View File

@ -17,6 +17,10 @@ import org.gcube.portlets.gcubeckan.gcubeckandatacatalog.shared.CkanConnectorAcc
import org.gcube.portlets.gcubeckan.gcubeckandatacatalog.shared.ManageProductResponse;
import org.gcube.portlets.widgets.ckan2zenodopublisher.client.CkanToZenodoPublisherServiceAsync;
import org.gcube.portlets.widgets.ckancontentmoderator.client.CkanContentModeratorCheckConfigs;
import org.gcube.portlets.widgets.ckancontentmoderator.client.CkanContentModeratorWidget;
import org.gcube.portlets.widgets.ckancontentmoderator.client.util.ModerationQueryStringUtil;
import org.gcube.portlets.widgets.ckancontentmoderator.client.util.ModerationQueryStringUtil.ModerationBuilder;
import org.gcube.portlets.widgets.ckancontentmoderator.client.util.QueryStringUtil;
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.logical.shared.ResizeEvent;
@ -88,7 +92,7 @@ public class GCubeCkanDataCatalogPanel extends BaseViewTemplate {
setTopPanelVisible(true);
// decode parameters (they could have been encoded)
final Map<String, String> paramsMap = new HashMap<String, String>(2);
final Map<String, String> paramsMap = new HashMap<String, String>(3);
String queryParameters = Window.Location.getQueryString();
if (queryParameters != null && !queryParameters.isEmpty()) {
String decoded = URL.decodeQueryString(queryParameters); // equals should be encoded too (%3D)
@ -102,6 +106,20 @@ public class GCubeCkanDataCatalogPanel extends BaseViewTemplate {
String pathParameter = paramsMap.get(GCubeCkanDataCatalog.GET_PATH_PARAMETER); // Window.Location.getParameter(GCubeCkanDataCatalog.GET_PATH_PARAMETER);
String queryParameter = paramsMap.get(GCubeCkanDataCatalog.GET_QUERY_PARAMETER);// Window.Location.getParameter(GCubeCkanDataCatalog.GET_QUERY_PARAMETER);
String queryStringParameter = paramsMap.get(GCubeCkanDataCatalog.GET_QUERY_STRING_PARAMETER);
if (queryStringParameter != null) {
GWT.log("Read "+GCubeCkanDataCatalog.GET_QUERY_STRING_PARAMETER+ " as: "+queryStringParameter);
String base64DecodeQueryString = QueryStringUtil.base64DecodeQueryString(queryStringParameter);
ModerationBuilder moderationBuilder = new ModerationQueryStringUtil()
.toModerationBuilder(base64DecodeQueryString);
if (moderationBuilder != null) {
GWT.log("Moderation Builder is: "+moderationBuilder);
CkanContentModeratorWidget ccmw = new CkanContentModeratorWidget(moderationBuilder);
ccmw.showAsModal("Manage Items");
}
}
String browserLocationURL = getBrowserLocationURL();
@ -243,7 +261,7 @@ public class GCubeCkanDataCatalogPanel extends BaseViewTemplate {
} catch (Exception e) {
GWT.log("Command - Check configs error: " + e.getMessage());
}
ckanModeratorCheckConfig = moderatorcheckConfig;
GWT.log("Moderation is enabled? " + isContentModerationEnabled);