Loading...
 
Skip to main content

History: GeoCMS_Instructions_22

Source of version: 19 (current)

Copy to clipboard
            !
{FLUIDGRID()}This "__GeoCMS Maps 22__" Profile provides a quick setup to use geolocation capabilities in many Tiki features, that can be shown in customisable maps, in Tiki versions starting from [https://doc.tiki.org/Tiki22]. 

You are provided with a simple navigation module at the top bar to display partial content (by tiki feature), or all geolocated content together in a map. In addition, different map parameters are predefined to let you have quick different look and feels in them.
---
^::{img src="https://profiles.tiki.org/display4" width=200 thumb="zoombox"}::^
{FLUIDGRID}

{maketoc title="" levels="2,3"}

!!# Tiki Features
These Tiki features are enabled, and included some demo content with geolocation details:
* Wiki pages, Tracker items, Blog posts, articles and web services.

!!# Further configuration steps
!!! Rebuild unified search index
* You need to ensure that the [tiki-ajax_services.php?controller=search&action=rebuild|__unified search index__ is run] after you apply this profile.

!!! Add Web service 1 - with NO params
You need to setup your webservices here:
* System menu > Settings > __Webservices__ ([tiki-admin_webservices.php])

Add this information:
* u~~black:r~~l: -+~np~https://opendata-ajuntament.barcelona.cat/data/api/action/datastore_search?resource_id=8808bc24-e14c-45a5-9c24-5e67846f087a~/np~+-
* Type: __REST__
* Body of POST request: 
+ ''(leave this previous box empty)''
And click at ~~white,blue:| Lookup |~~ button.

Then, since there are no special parameters defined in this example, you can proceed to test it. 
Click at ~~white,blue:| Test Input |~~ button

This will produce some results a the "__Response Information__" box, in json format. And they should contain a section with 100 [[records] (out of the several thousand records available in total (with no filtering based on web service params) 

Then you can register this web service by means of:
# providing this short alphanumeric name for it: -+bcnternopar+- (since it's the predefined web service name expected by wiki pages created by this tiki profile; stands for 'Barcelona Terrasses No Params'), and 
# click at the ~~white,blue:| Register Service |~~ button

Once the web service is registered, then you can register a webservice __template__, providing this information in the form at the bottom of that page:
* Name: -+bcnternopartemplate+- (template name needs to be short and only with alphanumeric characters)
* Engine: __Index__
* Output: __Multi-index__
* (Text area field):
+ {CODE(ln="1" colors="json")}
											{
	"records": [
		{
			"EMPLACAMENT": {
				"type": "sortable",
				"field": "title"
			},
			"NOM_BARRI": {
				"type": "plaintext",
				"field": "type"
			},
			"LONGITUD": {
				"type": "numeric",
				"field": "lon"
			},
			"LATITUD": {
				"type": "numeric",
				"field": "lat"
			}
		}
	]
}
{CODE}

And click at ~~white,blue:| Register Template |~~ button.

Last, you will need to rebuild the unified search index again:
* [tiki-ajax_services.php?controller=search&action=rebuild|__Rebuild unified search index__] 

!!! Add Web service 2 - WITH params
You need to setup your webservices here:
* System menu > Settings > __Webservices__ ([tiki-admin_webservices.php])

Add this information:
* u~~black:r~~l: -+~np~https://opendata-ajuntament.barcelona.cat/data/api/action/datastore_search?limit=%n_limit%&q=%wsq%&resource_id=8808bc24-e14c-45a5-9c24-5e67846f087a~/np~+-
* Type: __REST__
* Body of POST request: 
+ ''(leave this previous box empty)''
And click at ~~white,blue:| Lookup |~~ button.

Then test the parameters defined. You can test with:
* n_limit: -+8+-
* wsq: -+{"NOM_DISTRICTE":"Sant Andreu"}+-
* Bypass cache (X) (leave it checked)

And click at ~~white,blue:| Test Input |~~ button

This will produce some results a the "__Response Information__" box, in json format. And they should contain a section with 8 [[records] (out of the 380 records available passing this filter of district name (NOM_DISTRICTE)

Then you can register this web service by means of:
# providing this short alphanumeric name for it: -+bcnterpar+- (since it's the predefined web service name expected by wiki pages created by this tiki profile; stands for 'Barcelona Terrasses Params'), and 
# click at the ~~white,blue:| Register Service |~~ button

Once the web service is registered, then you can register a webservice __template__, providing this information in the form at the bottom of that page:
* Name: -+bcnterpartemplate+- (template name needs to be short and only with alphanumeric characters)
* Engine: __Index__
* Output: __Multi-index__
* (Text area field):
+ {CODE(ln="1" colors="json")}
											{
	"records": [
		{
			"EMPLACAMENT": {
				"type": "sortable",
				"field": "title"
			},
			"NOM_BARRI": {
				"type": "plaintext",
				"field": "type"
			},
			"LONGITUD": {
				"type": "numeric",
				"field": "lon"
			},
			"LATITUD": {
				"type": "numeric",
				"field": "lat"
			}
		}
	]
}
{CODE}

And click at ~~white,blue:| Register Template |~~ button.

Last, you will need to rebuild the unified search index again:
* [tiki-ajax_services.php?controller=search&action=rebuild|__Rebuild unified search index__] 

!!! Map enhancements (optional)
Optionally:
* If you use [https://doc.tiki.org/Tiki20|Tiki version 20.1] or higher, you can use some extra background maps. Some of them require that you have an api key: 
** nextzen (vector tiles), 
** bing maps (which include satellite images, among other tilesets).
+ More information in the [tiki-admin.php?page=maps|Maps control panel]

!!# How to use it....
Browse geolocated content through the menu shown in the top bar module.

See further details on the parameters used in the documentation:
* https://doc.tiki.org/PluginMap
* https://doc.tiki.org/GeoLocation
* https://doc.tiki.org/PluginWebService

Last, but not least, remember that you can extend this profile!:
* https://profiles.tiki.org/GeoCMS_Maps_22