function _openlayers_layers_settings_form in Openlayers 6
Abstracted Form Elements for Layer Settings
Since the Domain module would like to know about our form elements, we abstract them into this function so that we can re-use code properly.
Return value
From array
2 calls to _openlayers_layers_settings_form()
- openlayers_layers_admin_settings in modules/
openlayers_layers/ includes/ openlayers_layers.admin.inc - Menu callback; displays the openlayers_layers module settings page.
- openlayers_layers_domainconf in modules/
openlayers_layers/ openlayers_layers.module - Implementation of hook_domainconf().
File
- modules/
openlayers_layers/ includes/ openlayers_layers.admin.inc, line 31 - This file holds the functions for the openlayers layers Admin settings.
Code
function _openlayers_layers_settings_form() {
$form = array();
// Google Map API Key
$form['openlayers_google'] = array(
'#type' => 'fieldset',
'#title' => t('Google Layer Settings'),
'#description' => t('The settings needed to get the Google layer working.'),
'#collapsible' => TRUE,
'#collapsed' => FALSE,
);
$form['openlayers_google']['openlayers_layers_google_api'] = array(
'#type' => 'textfield',
'#title' => t('Google Maps API Key'),
'#description' => t('Your personal Googlemaps API key. You must get this for each separate website at <a href="!google_url">Google Map API website</a>.', array(
'!google_url' => 'http://www.google.com/apis/maps/',
)),
'#default_value' => variable_get('openlayers_layers_google_api', variable_get('googlemap_api_key', '')),
);
// Yahoo Map API Key
$form['openlayers_yahoo'] = array(
'#type' => 'fieldset',
'#title' => t('Yahoo Layer Settings'),
'#description' => t('The settings needed to get the Yahoo layer working.'),
'#collapsible' => TRUE,
'#collapsed' => FALSE,
);
$form['openlayers_yahoo']['openlayers_layers_yahoo_api'] = array(
'#type' => 'textfield',
'#title' => t('Yahoo Maps API Key'),
'#description' => t('Your personal Yahoo API key. You must get this for each separate website at <a href="!yahoo_url">Yahoo Maps API website</a>.', array(
'!yahoo_url' => 'http://developer.yahoo.com/maps/',
)),
'#default_value' => variable_get('openlayers_layers_yahoo_api', ''),
);
// Cloud Made Settings
$form['openlayers_cloudmade'] = array(
'#type' => 'fieldset',
'#title' => t('CloudMade Layer Settings'),
'#description' => t('The settings needed to get the CloudMade layer working.'),
'#collapsible' => TRUE,
'#collapsed' => FALSE,
);
$form['openlayers_cloudmade']['openlayers_layers_cloudmade_api'] = array(
'#type' => 'textfield',
'#title' => t('CloudMade API Key'),
'#description' => t('Your personal CloudMade API key. You must get this for each separate website at <a href="!cloudmade_url">CloudMade Developer Page</a>.', array(
'!cloudmade_url' => 'http://developers.cloudmade.com/projects',
)),
'#default_value' => variable_get('openlayers_layers_cloudmade_api', ''),
);
$form['openlayers_cloudmade']['openlayers_layers_cloudmade_style'] = array(
'#type' => 'textfield',
'#title' => t('CloudMade Style ID'),
'#description' => t('CloudMade allows you to syle your map and assigns it an ID. Create a new style at the <a href="!cloudmade_style_url">CloudMade Style Editor</a>.', array(
'!cloudmade_style_url' => 'http://maps.cloudmade.com/editor',
)),
'#default_value' => variable_get('openlayers_layers_cloudmade_style', ''),
);
$form['openlayers_cloudmade']['openlayers_layers_cloudmade_js'] = array(
'#type' => 'textfield',
'#title' => t('CloudMade OpenLayers JS Library Path'),
'#description' => t('Enter the Drupal path to where the CloudMade OpenLayers JS library is located. You down load it from the <a href="!cloudmade_js_url">CloudMade OpenLayers Page</a>.', array(
'!cloudmade_js_url' => 'http://developers.cloudmade.com/wiki/openlayers-api/CloudMade_Tiles',
)),
'#default_value' => variable_get('openlayers_layers_cloudmade_js', ''),
);
return $form;
}