Commit Graph

56 Commits

Author SHA1 Message Date
amercader 2f28c8c5c7 [#37] Add support for MapBox tiles and others
The common map function has been extended to allow configuring different
options for the base layer. There are default presets for MapQuest and
MapBox, but any XYZ layer can be added configuration options. The
options are passed to the templates via a helper function and to the js
modules via data-module attributes. Full docs included.
2013-10-06 23:22:04 +01:00
amercader 28042d2b6f [#28] Fix function name 2013-07-29 17:25:04 +01:00
amercader 14048a153c [#31] Check if sort parameter exists 2013-07-29 17:23:21 +01:00
amercader 9eec88b320 [#15] Check CKAN version when using the Solr Search backend 2013-06-14 15:59:45 +01:00
amercader b4a7cf2289 [#15] Reenable the Solr backend on master
It can be used against CKAN core master (eventually 2.1)
2013-05-14 14:34:10 +01:00
amercader ce8747198f Merge branch 'release-v2.0'
Conflicts:
	README.rst
	ckanext/spatial/commands/validation.py
	ckanext/spatial/controllers/api.py
	ckanext/spatial/harvesters/gemini.py
	ckanext/spatial/plugin.py
	ckanext/spatial/tests/lib/test_spatial.py
	ckanext/spatial/tests/model/test_harvested_metadata.py
	ckanext/spatial/tests/test_harvest.py
2013-05-14 14:02:28 +01:00
amercader 7919a19f7c Revert "[#15] Add suport for Solr spatial indexing and querying"
Reverting #15 as CKAN 2.0 does not include the necessary changes.

This reverts commit c7a9cc660f.
2013-05-13 18:55:32 +01:00
amercader 83d903f84f Revert "[#15] Ensure that bounding boxes are defined counter-clockwise"
Reverting #15 as CKAN 2.0 does not include the necessary changes.

This reverts commit fede0b0831.
2013-05-13 18:55:27 +01:00
amercader 5e35ac0fcb Revert "[#15] Read search backend config option once only"
Reverting #15 as CKAN 2.0 does not include the necessary changes.

This reverts commit d11693f076.

Conflicts:

	ckanext/spatial/plugin.py
2013-05-13 18:55:12 +01:00
amercader 17796c4ad0 Revert "[#15] Add a new Solr search backend based on boost function"
Reverting #15 as CKAN 2.0 does not include the necessary changes.

This reverts commit bddfdf6fba.

Conflicts:

	ckanext/spatial/plugin.py
2013-05-13 18:53:09 +01:00
amercader 72127fa151 Revert "[#15] Tweak doc to remove paper"
Reverting #15 as CKAN 2.0 does not include the necessary changes.

This reverts commit cf22017b7d.
2013-05-13 18:51:44 +01:00
amercader 6f3c699311 [#7] Remove old genshi spatial query widget 2013-05-13 17:13:19 +01:00
amercader a4c86d26e3 [#15] Better checks following 27d4d5 2013-04-12 16:44:52 +01:00
Ian Ward 27d4d5b2c9 make spatial field optional 2013-04-12 16:39:38 +01:00
amercader cf22017b7d [#15] Tweak doc to remove paper 2013-04-12 10:06:50 +01:00
amercader bddfdf6fba [#15] Add a new Solr search backend based on boost function
This backend does not use the spatial field on Solr, but indexes the
area and coordinates of the dataset's extent. On query time, a boost
function is used to calculate a ratio between the query area and the
dataset extent, which will give a value of 0 for areas that don't
overlap and 1 for a perfect fit. The same function is used both for
sorting and filtering.
2013-04-11 19:29:41 +01:00
amercader d11693f076 [#15] Read search backend config option once only 2013-04-11 17:13:53 +01:00
amercader fede0b0831 [#15] Ensure that bounding boxes are defined counter-clockwise
To return correct results on a spatial query, rectangle geometries must
be defined in counter-clockwise order [1]. This changeset adds a small
sanity check to before_index when we are dealing with a Polygon geometry
that has 5 coordinate pairs. Shapely is used to generate a LinearRing
from the polygon coordinates and check if they are ccw. If not, they are
reordered and a new polygon is generated so the WKT sent to Solr is
properly ordered.

The GeoJSON template used for extents in the base spatial harvester has
been also updated to define the coordinates counter-clockwise.

[1]
http://wiki.apache.org/solr/SolrAdaptersForLuceneSpatial4#JTS_.2BAC8_WKT_.2BAC8_Polygon_notes
2013-03-23 19:28:31 +00:00
amercader c7a9cc660f [#15] Add suport for Solr spatial indexing and querying
When the 'ckanext.spatial.search_backend' config option is set to
'solr', the extension will index geometries stored in the 'spatial'
extra on the spatial field of the Solr index (named 'spatial_geom').
This is done on the 'before_index' extension point.

Also, when doing a query, if the same config option is in place, the
necessary fq parameter will be set to pass the spatial query to Solr.
2013-03-20 16:54:55 +00:00
amercader a727aa815b Add helper functions useful to format extras coming from the spatial harvesters 2013-03-18 15:59:20 +00:00
amercader 4638b3899f Revert "[#8] Don't use object id so messages can be grouped"
This reverts commit 032cc4d961.
2013-03-14 12:36:39 +00:00
amercader 032cc4d961 [#8] Don't use object id so messages can be grouped 2013-03-14 12:34:20 +00:00
amercader 5aeaa209ed Fix bug in spatial query sorting 2013-02-20 12:09:50 +00:00
amercader 34d3e372b8 [#10] Improve harvested metadata API
Some improvements on the endpoints that return the contents of the
harvest objects:

* Nicer URLs with redirects to the old ones
* Returning the raw harvest object content is available on the main
 harvest extension, so just redirect there
* Support for showing the original document of a harvest object, if
 present
* Suport for defining a custom XSLT for the HTML view, via

ckanext.spatial.harvest.xslt_html_content
ckanext.spatial.harvest.xslt_html_content_original
2013-02-19 18:31:40 +00:00
David Read bcdf360b01 Spatial query can now be ordered. Does not play nicely with SOLR options - just uses that to get the facets counts and return each result. Have added performance tests for two alternative queries.
- Added a config option ('ckanext.spatial.use_postgis_sorting') to
activate this as this behaviour will be deprecated in the future
in favour of Solr 4 spatial sorting capabilities.
Also fixed the tests

Conflicts:

	ckanext/spatial/plugin.py
2013-02-08 17:28:37 +00:00
David Read 8e0f7c7148 Added lower level tests for bbox search (at the lib level), complementing the API level ones.
Conflicts:

	ckanext/spatial/plugin.py
2013-02-08 16:41:02 +00:00
amercader 3da5807eb4 [#6] Update dataset map to be a pure snippet
No need to load an extension.
2013-01-18 13:07:26 +00:00
amercader 21a85a6b3f [#4] Register resources only once for all plugins
spatial_metadata will load the resources (public, templates and
resources) for all plugins to use, as it needs to be loaded anyway.
2013-01-15 20:00:46 +00:00
amercader 7abfb4eb61 Use plugins toolkit whenver possible on plugin.py 2013-01-15 19:57:31 +00:00
David Read 6fcbf878c2 Spatial query can now be ordered. Does not play nicely with SOLR options - just uses that to get the facets counts and return each result. Have added performance tests for two alternative queries. 2012-12-06 18:17:45 +00:00
David Read 68f22147bc Added lower level tests for bbox search (at the lib level), complementing the API level ones. 2012-12-05 15:01:16 +00:00
David Read 20e8f12615 Merged in ckanext-inspire.
Tests are passing, apart from a couple which didn't work before:
* test_functional.py -> functional/test_package.py (3 failures in 4)
* functional/test_dataset_map.py (1 fail in 1)
There may be some code errors still untested.
Renamed Validator -> Validators to make more sense.
2012-10-19 11:19:01 +01:00
David Read 8181b3d3bf Merged in ckanext-csw @44d5a04656dff084e6bca57dda7b63deec69778c. Not tested yet. 2012-10-17 16:59:02 +01:00
David Read 745bed4e77 Customising extent map for dgu. 2012-05-22 10:51:44 +01:00
David Read e19227fe61 Added option for OS tiles (subject to licence). 2012-04-27 13:06:20 +01:00
David Read 8f4ae04570 Allow extent map to be shown on configurable routes. 2012-04-27 10:44:15 +01:00
David Read 2ecb8498bf Geographic extent now looks for id="dataset" because DGU templates use multiple classes for the root dataset div (as might other customised templates), yet having only one value for id is a reasonable assumption. Also works for core CKAN templates. 2012-04-12 21:35:38 +01:00
amercader 939e4e4efa [plugin] Fix import from the core logic layer 2012-03-07 15:07:37 +00:00
amercader a77e0ef2c3 [plugins, docs] Rearrange plugins
Separate different features to make it more flexible for users
to load different stuff depending on their needs and the CKAN
version they are using.
2012-02-21 12:00:47 +00:00
amercader 1f829b3031 [search] Add option to define a default extent 2012-02-21 11:05:13 +00:00
amercader 1d1f88195f Merge from master 2012-02-20 18:13:33 +00:00
amercader 43c997dee7 [model,tests] Better handling of model initialization on startup 2012-02-07 16:50:46 +00:00
amercader a20688a453 [search][#1469] Map widget for the spatial search UI
TODO: integrate better with the general look and feel.
2012-01-18 11:03:21 +00:00
amercader 03fd4c2b3c [search] Use before_search approach to integrate with Solr search
If filtering the results after the search, recalculating the facets
is too complicated, so we use the alternative approach of doing the
spatial search first and adding the ids as a filter in the Solr query.
2012-01-17 17:20:16 +00:00
amercader 95b6db2cfe [search] Update search plugin hook name 2012-01-17 10:44:25 +00:00
amercader 203558e97b [search] Integrate spatial search with the default CKAN search
Search results coming from the default CKAN search (which are received
via the `search` method of the `IPackageController` interface) are
filtered to only contain the ones intersecting the provided bbox.

The search form temporarily shows a text field, which will be replaced
by a nice map widget.
2011-12-13 17:40:47 +00:00
Adrià Mercader ab52106f20 Separate non-GEOS/PostGIS plugins to avoid needing to install them if not needed
I.e for the WMS preview plugin. Also add tests for the WMS preview plugin and
use dataset instead of package on the UI.
2011-10-28 13:03:31 +01:00
Adrià Mercader 571a27a274 [tests] Add tests 2011-10-16 23:40:19 +01:00
Adrià Mercader 0b7808cd4b Use datasets instead of packages 2011-10-03 13:39:18 +01:00
Adrià Mercader 1798f63a08 [wms_preview] Fix for #1166 (Less stringent filters for WMS preview)
If one of the dataset resources has a 'WMS' format, the link will be
displayed. Also support for URLs with query params.
2011-09-30 12:15:53 +01:00