function gmap_location_admin_settings in GMap Module 6
Same name and namespace in other branches
- 5 gmap_location.module \gmap_location_admin_settings()
- 6.2 gmap_location.module \gmap_location_admin_settings()
- 7.2 gmap_location.module \gmap_location_admin_settings()
- 7 gmap_location.module \gmap_location_admin_settings()
Admin Settings Page
1 string reference to 'gmap_location_admin_settings'
- gmap_location_menu in ./
gmap_location.module - Implementation of hook_menu().
File
- ./
gmap_location.module, line 388 - GMap Location module is a module to add some gmap funcationality based on location.modules information.
Code
function gmap_location_admin_settings() {
$form['user'] = array(
'#type' => 'fieldset',
'#title' => t('User settings'),
);
// gmap_user_map defaults
$temp = variable_get('gmap_user_map', _gmap_location_user_map_defaults());
$form['user']['gmap_user_map'] = array(
'#type' => 'fieldset',
'#title' => t('User Map (<em>map/user</em>)'),
'#tree' => TRUE,
);
$form['user']['gmap_user_map']['macro'] = array(
'#type' => 'textfield',
'#title' => t('Macro'),
'#default_value' => $temp['macro'],
'#size' => 50,
'#maxlength' => 500,
'#description' => t('The gmap macro where the user information will be diplayed on.'),
);
$form['user']['gmap_user_map']['header'] = array(
'#type' => 'textarea',
'#title' => t('Page header'),
'#description' => t('Text at the top of the user map.', array(
'@url' => url('map/user'),
)),
'#default_value' => $temp['header'],
'#cols' => 50,
'#rows' => 6,
);
$form['user']['gmap_user_map']['footer'] = array(
'#type' => 'textarea',
'#title' => t('Page footer'),
'#description' => t('Text at the bottom of the user map.'),
'#default_value' => $temp['footer'],
'#cols' => 50,
'#rows' => 6,
);
$form['user']['gmap_user_map']['markermode'] = array(
'#type' => 'radios',
'#title' => t('Marker action'),
'#description' => t('Perform this action when a marker is clicked.'),
'#options' => array(
t('Do nothing'),
t('Open info window'),
t('Open link'),
),
'#default_value' => $temp['markermode'],
);
// Option to use a different marker for each role
$form['user']['gmap_role_markers'] = array(
'#type' => 'fieldset',
'#title' => t('Markers per role'),
'#description' => t('Choose a marker to represent each user role on the user map. If a user belongs to multiple roles, the marker for the highest Role ID will be used.'),
'#tree' => TRUE,
);
// Retrieve and sort list of roles, sans anonymous user
$roles = user_roles(TRUE);
//asort($roles);
$defaults = variable_get('gmap_role_markers', array());
// Create a selection box per role
foreach ($roles as $rid => $role) {
$form['user']['gmap_role_markers'][$rid] = array(
'#type' => 'gmap_markerchooser',
'#title' => t('%role (Role ID: %rid)', array(
'%role' => $role,
'%rid' => $rid,
)),
'#default_value' => isset($defaults[$rid]) ? $defaults[$rid] : 'drupal',
);
}
$form['node'] = array(
'#type' => 'fieldset',
'#title' => t('Node settings'),
);
// gmap_node_map defaults
$temp = variable_get('gmap_node_map', _gmap_location_node_map_defaults());
$form['node']['gmap_node_map'] = array(
'#type' => 'fieldset',
'#title' => t('Node Map (<em>map/node</em>)'),
'#tree' => TRUE,
);
$form['node']['gmap_node_map']['macro'] = array(
'#type' => 'textfield',
'#title' => t('Macro'),
'#default_value' => $temp['macro'],
'#size' => 50,
'#maxlength' => 500,
'#description' => t('The gmap macro where the node information will be diplayed on.'),
);
$form['node']['gmap_node_map']['header'] = array(
'#type' => 'textarea',
'#title' => t('Page header'),
'#description' => t('Text at the top of the node map.'),
'#default_value' => $temp['header'],
'#cols' => 50,
'#rows' => 6,
);
$form['node']['gmap_node_map']['footer'] = array(
'#type' => 'textarea',
'#title' => t('Page footer'),
'#description' => t('Text at the bottom of the node map.'),
'#default_value' => $temp['footer'],
'#cols' => 50,
'#rows' => 6,
);
$form['node']['gmap_node_map']['markermode'] = array(
'#type' => 'radios',
'#title' => t('Marker action'),
'#description' => t('Perform this action when a marker is clicked.'),
'#options' => array(
t('Do nothing'),
t('Open info window'),
t('Open link'),
),
'#default_value' => $temp['markermode'],
);
// Option to use a different marker for each content type.
$form['node']['gmap_node_markers'] = array(
'#type' => 'fieldset',
'#title' => t('Markers per content type'),
'#description' => t('Choose a marker to represent each type of content on the node map.'),
'#tree' => TRUE,
);
$ntypes = node_get_types();
$defaults = variable_get('gmap_node_markers', array());
foreach ($ntypes as $key => $value) {
$form['node']['gmap_node_markers'][$key] = array(
'#type' => 'gmap_markerchooser',
'#title' => t('Marker for %type', array(
'%type' => $value->name,
)),
'#default_value' => isset($defaults[$key]) ? $defaults[$key] : 'drupal',
);
$settings = variable_get("location_settings_node_{$key}", FALSE);
if (!(isset($settings['multiple']['max']) && $settings['multiple']['max'] || variable_get("location_maxnum_{$key}", 0))) {
$form['node']['gmap_node_markers'][$key]['#description'] = t('This content type is not currently Location enabled.');
}
}
return system_settings_form($form);
}