getlocations_fields_entity.module in Get Locations 7
Same filename and directory in other branches
getlocations_fields_entity.module @author Bob Hutchinson http://drupal.org/user/52366 @copyright GNU GPL
Provides information about Getlocations Fields to Entity module. Thanks to rbruhn, http://drupal.org/user/1037754 for this code see issue http://drupal.org/node/1661362
File
modules/getlocations_fields_entity/getlocations_fields_entity.moduleView source
<?php
/**
* @file
* getlocations_fields_entity.module
* @author Bob Hutchinson http://drupal.org/user/52366
* @copyright GNU GPL
*
* Provides information about Getlocations Fields to Entity module.
* Thanks to rbruhn, http://drupal.org/user/1037754 for this code
* see issue http://drupal.org/node/1661362
*
*/
/**
* Implements hook_field_info_alter().
*/
function getlocations_fields_entity_field_info_alter(&$field_info) {
$field_info['getlocations_fields']['property_type'] = 'getlocations_fields';
$field_info['getlocations_fields']['property_callbacks'][] = 'getlocations_fields_entity_getlocations_fields_property_callback';
}
/**
* Property callback for getlocations fields.
*/
function getlocations_fields_entity_getlocations_fields_property_callback(&$info, $entity_type, $field, $instance, $field_type) {
$property =& $info[$entity_type]['bundles'][$instance['bundle']]['properties'][$field['field_name']];
$property['getter callback'] = 'entity_metadata_field_verbatim_get';
$property['setter callback'] = 'entity_metadata_field_verbatim_set';
foreach (getlocations_fields_entity_key_map() as $key => $item) {
$property['property info'][$key] = array(
'type' => $item['type'],
'label' => $item['label'],
'description' => $item['description'],
'getter callback' => 'entity_property_verbatim_get',
'setter callback' => 'entity_property_verbatim_set',
);
}
unset($property['query callback']);
}
/**
* Helper function that returns getlocations_fields key map array
*/
function getlocations_fields_entity_key_map() {
$keys = array(
'glid' => array(
'type' => 'integer',
'label' => t('glid'),
'description' => t('Getlocations Fields ID field'),
),
'name' => array(
'type' => 'text',
'label' => t('Name'),
'description' => t('Getlocations Fields name field'),
),
'street' => array(
'type' => 'text',
'label' => t('Street'),
'description' => t('GetLocations Fields street field'),
),
'additional' => array(
'type' => 'text',
'label' => t('Additional'),
'description' => t('Getlocations Fields additional field'),
),
'city' => array(
'type' => 'text',
'label' => t('City'),
'description' => t('Getlocations Fields city field'),
),
'province' => array(
'type' => 'text',
'label' => t('Province'),
'description' => t('Getlocations Fields province field'),
),
'postal_code' => array(
'type' => 'text',
'label' => t('Postal code'),
'description' => t('Getlocations Fields postal code field'),
),
'country' => array(
'type' => 'text',
'label' => t('Country'),
'description' => t('Getlocations Fields country field'),
),
'address' => array(
'type' => 'text',
'label' => t('Address'),
'description' => t('Getlocations Fields address field'),
),
'latitude' => array(
'type' => 'decimal',
'label' => t('Latitude'),
'description' => t('Getlocations Fields latitude field'),
),
'longitude' => array(
'type' => 'decimal',
'label' => t('Longitude'),
'description' => t('Getlocations Fields longitude field'),
),
'marker' => array(
'type' => 'text',
'label' => t('Marker'),
'description' => t('Getlocations Fields marker field'),
),
);
if (getlocations_fields_column_check('data')) {
$keys['data'] = array(
'type' => 'text',
'label' => t('Data'),
'description' => t('Getlocations Fields serialized data field'),
);
}
return $keys;
}
Functions
Name | Description |
---|---|
getlocations_fields_entity_field_info_alter | Implements hook_field_info_alter(). |
getlocations_fields_entity_getlocations_fields_property_callback | Property callback for getlocations fields. |
getlocations_fields_entity_key_map | Helper function that returns getlocations_fields key map array |