geocoder_services.module in Geocoder 7.2
Geocoder Services module.
File
modules/geocoder_services/geocoder_services.moduleView source
<?php
/**
* @file
* Geocoder Services module.
*/
/**
* Implements hook_permission().
*
* We define permissions for accessing geocoder over AJAX / services.
* There is one global permission which gives access to everything,
* and one permission per handler. The site-administrator can therefore
* fine tune which handlers are accessible. Note that to use AJAX with
* geocoder these permissions need to be set.
*/
function geocoder_services_permission() {
$perms = array(
'bypass_geocoder_services_access' => array(
'title' => t('Bypass geocoder access control'),
),
);
foreach (\Drupal\geocoder\Geocoder::getPlugins('Provider') as $plugin_id) {
$perms['geocoder_services_plugin_' . $plugin_id] = array(
'title' => t('Can geocode using @plugin_id through AJAX / service', array(
'@plugin_id' => $plugin_id,
)),
);
}
return $perms;
}
/**
* Implements hook_services_resources().
*/
function geocoder_services_services_resources() {
return array(
'geocoder_geocode' => array(
'retrieve' => array(
'help' => 'Geocode data',
'file' => array(
'type' => 'inc',
'module' => 'geocoder_services',
'name' => 'geocoder_services.services',
),
'callback' => 'geocoder_services_geocoder_geocode_callback',
'access callback' => 'geocoder_services_services_access',
'access arguments append' => TRUE,
'args' => array(
array(
'name' => 'plugin',
'type' => 'string',
'description' => 'The geocoder plugin to use',
'source' => array(
'path' => '0',
),
'optional' => FALSE,
),
array(
'name' => 'data',
'type' => 'string',
'description' => 'Value to geocode',
'source' => array(
'param' => 'data',
),
'optional' => FALSE,
),
array(
'name' => 'output',
'type' => 'string',
'description' => 'Output format',
'source' => array(
'param' => 'output',
),
'optional' => TRUE,
'default value' => 'geojson',
),
),
),
'index' => array(
'help' => 'List Geocoder Capabilities',
'file' => array(
'type' => 'inc',
'module' => 'geocoder_services',
'name' => 'geocoder_services.services',
),
'callback' => 'geocoder_services_services_capabilities',
'access callback' => 'geocoder_services_services_capabilities_ac',
),
),
'geocoder_reverse' => array(
'retrieve' => array(
'help' => 'Reverse geocode data',
'file' => array(
'type' => 'inc',
'module' => 'geocoder_services',
'name' => 'geocoder_services.services',
),
'callback' => 'geocoder_services_geocoder_reverse_callback',
'access callback' => 'geocoder_services_services_access',
'access arguments append' => TRUE,
'args' => array(
array(
'name' => 'plugin',
'type' => 'string',
'description' => 'The geocoder plugin to use',
'source' => array(
'path' => '0',
),
'optional' => FALSE,
),
array(
'name' => 'data',
'type' => 'string',
'description' => 'Value to reverse geocode',
'source' => array(
'param' => 'data',
),
'optional' => FALSE,
),
array(
'name' => 'output',
'type' => 'string',
'description' => 'Output format',
'source' => array(
'param' => 'output',
),
'optional' => TRUE,
'default value' => 'geojson',
),
),
),
'index' => array(
'help' => 'List Geocoder Capabilities',
'file' => array(
'type' => 'inc',
'module' => 'geocoder_services',
'name' => 'geocoder_services.services',
),
'callback' => 'geocoder_services_services_capabilities',
'access callback' => 'geocoder_services_services_capabilities_ac',
),
),
);
}
Functions
Name![]() |
Description |
---|---|
geocoder_services_permission | Implements hook_permission(). |
geocoder_services_services_resources | Implements hook_services_resources(). |