Updated at version 1.5.0
[Feature #13074] Trying to integrate with 'openlayer-basic-widgets' git-svn-id: http://svn.d4science-ii.research-infrastructures.eu/gcube/trunk/portlets/widgets/ckan-metadata-publisher-widget@177210 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
b3e9a91388
commit
de030a6c65
|
@ -0,0 +1,24 @@
|
|||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||
<link type="text/css" rel="stylesheet" href="CKanMetadataPublisher.css">
|
||||
<script type="text/javascript"
|
||||
src="CKanMetadataPublisher/CKanMetadataPublisher.nocache.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<!-- OPTIONAL: include this if you want history support -->
|
||||
<iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1'
|
||||
style="position: absolute; width: 0; height: 0; border: 0"></iframe>
|
||||
|
||||
<!-- RECOMMENDED if your web app will not function without JavaScript enabled -->
|
||||
<noscript>
|
||||
<div
|
||||
style="width: 22em; position: absolute; left: 50%; margin-left: -11em; color: red; background-color: white; border: 1px solid red; padding: 4px; font-family: sans-serif">
|
||||
Your web browser must have JavaScript enabled in order for this
|
||||
application to display correctly.</div>
|
||||
</noscript>
|
||||
<div id="ckan-metadata-publisher-div"></div>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,31 @@
|
|||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||
<link type="text/css" rel="stylesheet" href="CKanMetadataPublisher.css">
|
||||
|
||||
|
||||
<link type="text/css" rel="stylesheet" href="CKanMetadataPublisher/css/ol.css">
|
||||
<script type="text/javascript" src="CKanMetadataPublisher/js/jquery-1.11.1.min.js"></script>
|
||||
<script type="text/javascript" src="CKanMetadataPublisher/js/ol.js"></script>
|
||||
|
||||
<script type="text/javascript"
|
||||
src="CKanMetadataPublisher/CKanMetadataPublisher.nocache.js"></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<!-- OPTIONAL: include this if you want history support -->
|
||||
<iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1'
|
||||
style="position: absolute; width: 0; height: 0; border: 0"></iframe>
|
||||
|
||||
<!-- RECOMMENDED if your web app will not function without JavaScript enabled -->
|
||||
<noscript>
|
||||
<div
|
||||
style="width: 22em; position: absolute; left: 50%; margin-left: -11em; color: red; background-color: white; border: 1px solid red; padding: 4px; font-family: sans-serif">
|
||||
Your web browser must have JavaScript enabled in order for this
|
||||
application to display correctly.</div>
|
||||
</noscript>
|
||||
<div id="ckan-metadata-publisher-div"></div>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,25 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE web-app
|
||||
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
|
||||
"http://java.sun.com/dtd/web-app_2_3.dtd">
|
||||
|
||||
<web-app>
|
||||
|
||||
<!-- Servlets -->
|
||||
<servlet>
|
||||
<servlet-name>ckanpublisherservices</servlet-name>
|
||||
<servlet-class>org.gcube.portlets.widgets.ckandatapublisherwidget.server.CKANPublisherServicesImpl</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>ckanpublisherservices</servlet-name>
|
||||
<url-pattern>/CKanMetadataPublisher/ckanservices</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
|
||||
<!-- Default page to serve -->
|
||||
<welcome-file-list>
|
||||
<welcome-file>CKanMetadataPublisher.html</welcome-file>
|
||||
</welcome-file-list>
|
||||
|
||||
</web-app>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry including="**/*.java" kind="src" output="${webappDirectory}/WEB-INF/classes" path="src/main/java">
|
||||
<classpathentry including="**/*.java" kind="src" output="target/ckan-metadata-publisher-widget-1.5.0-SNAPSHOT/WEB-INF/classes" path="src/main/java">
|
||||
<attributes>
|
||||
<attribute name="optional" value="true"/>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
|
@ -17,7 +17,7 @@
|
|||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry excluding="**" kind="src" output="${webappDirectory}/WEB-INF/classes" path="src/main/resources">
|
||||
<classpathentry excluding="**" kind="src" output="target/ckan-metadata-publisher-widget-1.5.0-SNAPSHOT/WEB-INF/classes" path="src/main/resources">
|
||||
<attributes>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
|
@ -32,5 +32,5 @@
|
|||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="output" path="${webappDirectory}/WEB-INF/classes"/>
|
||||
<classpathentry kind="output" path="target/ckan-metadata-publisher-widget-1.5.0-SNAPSHOT/WEB-INF/classes"/>
|
||||
</classpath>
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
eclipse.preferences.version=1
|
||||
jarsExcludedFromWebInfLib=
|
||||
lastWarOutDir=/home/costantino/workspace/ckan-metadata-publisher-widget/target/ckan-metadata-publisher-widget-1.0.0-SNAPSHOT
|
||||
lastWarOutDir=/home/francesco-mangiacrapa/wseclipseluna/ckan-metadata-publisher-widget-TRUNK/${webappDirectory}
|
||||
launchConfigExternalUrlPrefix=
|
||||
warSrcDir=src/main/webapp
|
||||
warSrcDirIsOutput=false
|
||||
|
|
|
@ -1,4 +1,9 @@
|
|||
<ReleaseNotes>
|
||||
<Changeset
|
||||
component="org.gcube.portlets-widgets.ckan-metadata-publisher-widget.1-5-0"
|
||||
date="${buildDate}">
|
||||
<Change>[Feature #13074] Integrated with 'openlayer-basic-widgets'</Change>
|
||||
</Changeset>
|
||||
<Changeset
|
||||
component="org.gcube.portlets-widgets.ckan-metadata-publisher-widget.1-4-1"
|
||||
date="2018-11-20">
|
||||
|
|
8
pom.xml
8
pom.xml
|
@ -12,7 +12,7 @@
|
|||
|
||||
<groupId>org.gcube.portlets.widgets</groupId>
|
||||
<artifactId>ckan-metadata-publisher-widget</artifactId>
|
||||
<version>1.4.1-SNAPSHOT</version>
|
||||
<version>1.5.0-SNAPSHOT</version>
|
||||
<name>gCube Ckan metadata publisher widget</name>
|
||||
|
||||
<description>
|
||||
|
@ -27,6 +27,7 @@
|
|||
<properties>
|
||||
<!-- Convenience property to set the GWT version -->
|
||||
<gwtVersion>2.7.0</gwtVersion>
|
||||
<webappDirectory>${project.build.directory}/${project.build.finalName}</webappDirectory>
|
||||
<distroDirectory>distro</distroDirectory>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||
|
@ -82,6 +83,11 @@
|
|||
<artifactId>gwt-bootstrap</artifactId>
|
||||
<version>2.3.2.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.gcube.portlets.widgets</groupId>
|
||||
<artifactId>openlayer-basic-widgets</artifactId>
|
||||
<version>[1.0.0-SNAPSHOT, 2.0.0-SNAPSHOT)</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module rename-to='CKanMetadataPublisher'>
|
||||
<!-- Inherit the core Web Toolkit stuff. -->
|
||||
<inherits name='com.google.gwt.user.User' />
|
||||
|
||||
<!-- Other module inherits -->
|
||||
<inherits name="com.github.gwtbootstrap.Bootstrap" />
|
||||
<!-- Responsive design -->
|
||||
<set-property name="bootstrap.responsiveDesign" value="true" />
|
||||
<inherits name='com.github.gwtbootstrap.datetimepicker.Datetimepicker' />
|
||||
<inherits name='com.github.gwtbootstrap.datepicker.Datepicker' />
|
||||
<inherits name='org.gcube.datacatalogue.ckanutillibrary.CkanUtilLibrary' />
|
||||
<inherits name='org.gcube.portlets.user.gcubewidgets.WidgetFactory' />
|
||||
|
||||
<inherits name='com.google.gwt.json.JSON'/>
|
||||
|
||||
<inherits
|
||||
name='org.gcube.portlets.widgets.openlayerbasicwidgets.olbasicwidgets' />
|
||||
|
||||
<!-- Specify the app entry point class. -->
|
||||
<entry-point
|
||||
class='org.gcube.portlets.widgets.ckandatapublisherwidget.client.CKanMetadataPublisher' />
|
||||
|
||||
<!-- Specify the paths for translatable code -->
|
||||
<source path='client' />
|
||||
<source path='shared' />
|
||||
|
||||
<!-- Specify the application specific style sheet. -->
|
||||
<stylesheet src='CKanMetadataPublisher.css' />
|
||||
|
||||
</module>
|
|
@ -3,16 +3,20 @@ package org.gcube.portlets.widgets.ckandatapublisherwidget.client;
|
|||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.client.openlayerwidget.GeoJsonAreaSelectionDialog;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.client.ui.TwinColumnSelection.TwinColumnSelectionMainPanel;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.client.ui.form.CreateDatasetForm;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.client.ui.metadata.MetaDataFieldSkeleton;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.shared.ResourceElementBean;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.shared.metadata.DataTypeWrapper;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.shared.metadata.MetadataFieldWrapper;
|
||||
|
||||
import com.github.gwtbootstrap.client.ui.Button;
|
||||
import com.github.gwtbootstrap.client.ui.ListBox;
|
||||
import com.github.gwtbootstrap.client.ui.Modal;
|
||||
import com.google.gwt.core.client.EntryPoint;
|
||||
import com.google.gwt.core.client.Scheduler;
|
||||
import com.google.gwt.core.client.Scheduler.ScheduledCommand;
|
||||
import com.google.gwt.core.shared.GWT;
|
||||
import com.google.gwt.dom.client.SelectElement;
|
||||
import com.google.gwt.dom.client.Style.Unit;
|
||||
|
@ -40,10 +44,29 @@ public class CKanMetadataPublisher implements EntryPoint {
|
|||
|
||||
// remove comment to the below line for testing the widget
|
||||
// startExample();
|
||||
// testMetadata();
|
||||
testMetadata();
|
||||
// testSelectionPanel();
|
||||
// testHideOption();
|
||||
// startTwinColumn();
|
||||
|
||||
//testSpatialWidget();
|
||||
|
||||
}
|
||||
|
||||
private void testSpatialWidget(){
|
||||
//Use AreaSelectionDialog(GeometryType.Point)
|
||||
//for specific Geometry
|
||||
|
||||
Scheduler.get().scheduleDeferred(new ScheduledCommand() {
|
||||
@Override
|
||||
public void execute() {
|
||||
GeoJsonAreaSelectionDialog dialog=new GeoJsonAreaSelectionDialog();
|
||||
dialog.show();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
//RootPanel.get("ckan-metadata-publisher-div").add(listBox);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
|
@ -137,8 +160,12 @@ public class CKanMetadataPublisher implements EntryPoint {
|
|||
// checkbox
|
||||
//fields.add(new MetadataFieldWrapper("CheckBox", true, DataType.Boolean, "false", "Checkbox example", null, null));
|
||||
|
||||
|
||||
// spatial
|
||||
fields.add(new MetadataFieldWrapper("GeoJson", true, DataTypeWrapper.GeoJSON, "", "", null, null, null));
|
||||
|
||||
// number
|
||||
//fields.add(new MetadataFieldWrapper("Number", true, DataType.Number, "52", "Number example", null, null));
|
||||
fields.add(new MetadataFieldWrapper("Number", true, DataTypeWrapper.Number, "52", "Number example", null, null, null));
|
||||
|
||||
// other number
|
||||
//fields.add(new MetadataFieldWrapper("Number2", true, DataType.Number, null, "Number example 2", null, "[0-9]+"));
|
||||
|
|
|
@ -0,0 +1,116 @@
|
|||
/**
|
||||
*
|
||||
*/
|
||||
package org.gcube.portlets.widgets.ckandatapublisherwidget.client.openlayerwidget;
|
||||
|
||||
import org.gcube.portlets.widgets.openlayerbasicwidgets.client.event.SelectAreaDialogEvent;
|
||||
import org.gcube.portlets.widgets.openlayerbasicwidgets.client.event.SelectAreaDialogEvent.SelectAreaDialogEventHandler;
|
||||
import org.gcube.portlets.widgets.openlayerbasicwidgets.client.widgets.AreaSelectionDialog;
|
||||
|
||||
import com.google.gwt.core.client.GWT;
|
||||
import com.google.gwt.core.client.JavaScriptObject;
|
||||
import com.google.gwt.core.client.JsonUtils;
|
||||
import com.google.gwt.json.client.JSONObject;
|
||||
import com.google.gwt.user.client.Command;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* The Class GeoJsonAreaSelectionDialog.
|
||||
*
|
||||
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
||||
* Feb 20, 2019
|
||||
*/
|
||||
public class GeoJsonAreaSelectionDialog extends AreaSelectionDialog{
|
||||
|
||||
|
||||
private String wktArea;
|
||||
private Command onResponseCommand;
|
||||
|
||||
/**
|
||||
* Instantiates a new geo json area selection dialog.
|
||||
*/
|
||||
public GeoJsonAreaSelectionDialog() {
|
||||
|
||||
//THE HANDLER
|
||||
SelectAreaDialogEventHandler handler = new SelectAreaDialogEventHandler() {
|
||||
|
||||
@Override
|
||||
public void onResponse(SelectAreaDialogEvent event) {
|
||||
GWT.log("SelectAreaDialog Response: "+event);
|
||||
wktArea = event.getArea();
|
||||
onResponseCommand.execute();
|
||||
}
|
||||
};
|
||||
|
||||
addSelectAreaDialogEventHandler(handler);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fire command on response.
|
||||
*
|
||||
* @param command the command
|
||||
*/
|
||||
public void fireCommandOnResponse(Command command){
|
||||
this.onResponseCommand = command;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Convert wkt to geo json.
|
||||
*
|
||||
* @param wktData the wkt data
|
||||
* @return the string
|
||||
*/
|
||||
private static native String convertWKTToGeoJSON(String wktData) /*-{
|
||||
var ol = $wnd.ol;
|
||||
var geojson_options = {};
|
||||
var wkt_format = new ol.format.WKT();
|
||||
var testFeature = wkt_format.readFeature(wktData);
|
||||
var wkt_options = {};
|
||||
var geojson_format = new ol.format.GeoJSON(wkt_options);
|
||||
var out = geojson_format.writeFeature(testFeature);
|
||||
//window.getELementById("my-id").innerhtml(out);
|
||||
//alert(out);
|
||||
//console.log(out)
|
||||
return out;
|
||||
}-*/;
|
||||
|
||||
|
||||
/**
|
||||
* Wkt to geo json.
|
||||
*
|
||||
* @param wktTxt the wkt txt
|
||||
* @return the string
|
||||
*/
|
||||
public String wktToGeoJSON(String wktTxt){
|
||||
String geoJSON = convertWKTToGeoJSON(wktTxt);
|
||||
//Window.alert("geoJSON: "+geoJSON);
|
||||
GWT.log("geoJSON: "+geoJSON);
|
||||
JavaScriptObject toJSON = JsonUtils.safeEval(geoJSON);
|
||||
JSONObject objJson = new JSONObject(toJSON);
|
||||
return objJson.get("geometry").toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the WKT to geo json.
|
||||
*
|
||||
* @return the WKT to geo json
|
||||
*/
|
||||
public String getWKTToGeoJSON(){
|
||||
|
||||
return wktToGeoJSON(wktArea);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the wkt area.
|
||||
*
|
||||
* @return the wktArea
|
||||
*/
|
||||
public String getWktArea() {
|
||||
|
||||
return wktArea;
|
||||
}
|
||||
}
|
|
@ -5,6 +5,7 @@ import java.util.List;
|
|||
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.client.events.CloseCreationFormEvent;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.client.events.CloseCreationFormEventHandler;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.client.openlayerwidget.GeoJsonAreaSelectionDialog;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.client.ui.metadata.timeandreanges.DataTimeBox;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.client.ui.utils.GcubeDialogExtended;
|
||||
import org.gcube.portlets.widgets.ckandatapublisherwidget.shared.metadata.FieldAsGroup;
|
||||
|
@ -18,6 +19,7 @@ import com.github.gwtbootstrap.client.ui.ControlGroup;
|
|||
import com.github.gwtbootstrap.client.ui.ControlLabel;
|
||||
import com.github.gwtbootstrap.client.ui.Controls;
|
||||
import com.github.gwtbootstrap.client.ui.Icon;
|
||||
import com.github.gwtbootstrap.client.ui.InputAddOn;
|
||||
import com.github.gwtbootstrap.client.ui.ListBox;
|
||||
import com.github.gwtbootstrap.client.ui.Popover;
|
||||
import com.github.gwtbootstrap.client.ui.TextArea;
|
||||
|
@ -37,6 +39,7 @@ 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.uibinder.client.UiHandler;
|
||||
import com.google.gwt.user.client.Command;
|
||||
import com.google.gwt.user.client.Window;
|
||||
import com.google.gwt.user.client.ui.Composite;
|
||||
import com.google.gwt.user.client.ui.FlowPanel;
|
||||
|
@ -120,6 +123,43 @@ public class MetaDataFieldSkeleton extends Composite{
|
|||
break;
|
||||
|
||||
case GeoJSON:
|
||||
//MANAGED By FRANCESCO
|
||||
InputAddOn addOn = new InputAddOn();
|
||||
final TextArea textArea = new TextArea();
|
||||
|
||||
if(field.getDefaultValue() != null)
|
||||
textArea.setText(field.getDefaultValue());
|
||||
|
||||
addOn.add(textArea);
|
||||
Button butt = new Button();
|
||||
butt.setIcon(IconType.MAP_MARKER);
|
||||
butt.addClickHandler(new ClickHandler() {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
|
||||
final GeoJsonAreaSelectionDialog dialog=new GeoJsonAreaSelectionDialog();
|
||||
|
||||
Command fillGeoJSONArea = new Command() {
|
||||
public void execute() {
|
||||
textArea.setText(dialog.getWKTToGeoJSON());
|
||||
}
|
||||
};
|
||||
|
||||
dialog.fireCommandOnResponse(fillGeoJSONArea);
|
||||
|
||||
|
||||
dialog.show();
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
addOn.add(butt);
|
||||
holder = addOn;
|
||||
|
||||
break;
|
||||
|
||||
case Text:
|
||||
|
||||
holder = new TextArea();
|
||||
|
@ -161,7 +201,7 @@ public class MetaDataFieldSkeleton extends Composite{
|
|||
SimplePanel panelFirstRange = new SimplePanel();
|
||||
DataTimeBox rangeBoxFirst = new DataTimeBox(true);
|
||||
setRangeTimeInTimeBox(field.getDefaultValue(), rangeBoxFirst);
|
||||
((SimplePanel)panelFirstRange).add(rangeBoxFirst);
|
||||
panelFirstRange.add(rangeBoxFirst);
|
||||
rangesList.add(rangeBoxFirst);
|
||||
|
||||
// Add more button
|
||||
|
@ -574,9 +614,9 @@ public class MetaDataFieldSkeleton extends Composite{
|
|||
|
||||
String[] splitted = currentRange.split(DataTimeBox.RANGE_SEPARATOR_START_END);
|
||||
if(splitted[0].equals(splitted[1]))
|
||||
manipulatedTemp += (manipulatedTemp.isEmpty()) ? splitted[0] : RANGE_SEPARATOR + splitted[0];
|
||||
manipulatedTemp += manipulatedTemp.isEmpty() ? splitted[0] : RANGE_SEPARATOR + splitted[0];
|
||||
else
|
||||
manipulatedTemp += (manipulatedTemp.isEmpty()) ? splitted[0] + DataTimeBox.RANGE_SEPARATOR_START_END + splitted[1] :
|
||||
manipulatedTemp += manipulatedTemp.isEmpty() ? splitted[0] + DataTimeBox.RANGE_SEPARATOR_START_END + splitted[1] :
|
||||
RANGE_SEPARATOR + splitted[0] + DataTimeBox.RANGE_SEPARATOR_START_END + splitted[1];
|
||||
|
||||
}
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
|
||||
<!-- Other module inherits -->
|
||||
<inherits name="com.github.gwtbootstrap.Bootstrap" />
|
||||
|
||||
<!-- Responsive design -->
|
||||
<set-property name="bootstrap.responsiveDesign" value="true" />
|
||||
<inherits name='com.github.gwtbootstrap.datetimepicker.Datetimepicker' />
|
||||
|
@ -13,6 +12,11 @@
|
|||
<inherits name='org.gcube.datacatalogue.ckanutillibrary.CkanUtilLibrary' />
|
||||
<inherits name='org.gcube.portlets.user.gcubewidgets.WidgetFactory' />
|
||||
|
||||
<inherits name='com.google.gwt.json.JSON'/>
|
||||
|
||||
<inherits
|
||||
name='org.gcube.portlets.widgets.openlayerbasicwidgets.olbasicwidgets' />
|
||||
|
||||
<!-- Specify the app entry point class. -->
|
||||
<entry-point
|
||||
class='org.gcube.portlets.widgets.ckandatapublisherwidget.client.CKanMetadataPublisher' />
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||
<link type="text/css" rel="stylesheet" href="CKanMetadataPublisher.css">
|
||||
|
||||
|
||||
<link type="text/css" rel="stylesheet" href="CKanMetadataPublisher/css/ol.css">
|
||||
<script type="text/javascript" src="CKanMetadataPublisher/js/jquery-1.11.1.min.js"></script>
|
||||
<script type="text/javascript" src="CKanMetadataPublisher/js/ol.js"></script>
|
||||
|
||||
<script type="text/javascript"
|
||||
src="CKanMetadataPublisher/CKanMetadataPublisher.nocache.js"></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<!-- OPTIONAL: include this if you want history support -->
|
||||
<iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1'
|
||||
style="position: absolute; width: 0; height: 0; border: 0"></iframe>
|
||||
|
||||
<!-- RECOMMENDED if your web app will not function without JavaScript enabled -->
|
||||
<noscript>
|
||||
<div
|
||||
style="width: 22em; position: absolute; left: 50%; margin-left: -11em; color: red; background-color: white; border: 1px solid red; padding: 4px; font-family: sans-serif">
|
||||
Your web browser must have JavaScript enabled in order for this
|
||||
application to display correctly.</div>
|
||||
</noscript>
|
||||
<div id="ckan-metadata-publisher-div"></div>
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue