location_fax_locationapi
Drupal 7 location_fax_locationapi(&$location, $op, $a3 = NULL, $a4 = NULL)
Implements hook_locationapi().
File
- sites/
all/ modules/ location/ contrib/ location_fax/ location_fax.module, line 11 - Add fax number fields to Location address.
Code
function location_fax_locationapi(&$location, $op, $a3 = NULL, $a4 = NULL) {
switch ($op) {
case 'fields':
return array('fax' => t('Fax number'));
case 'defaults':
return array(
'fax' => array('default' => '', 'collect' => 0, 'weight' => 30),
);
case 'field_expand':
if ($a3 == 'fax') {
return array(
'#type' => 'textfield',
'#title' => t('Fax number'),
'#size' => 31,
'#maxlength' => 31,
'#description' => NULL,
'#required' => ($a4 == 2),
'#default_value' => $location,
);
}
break;
case 'save':
db_delete('location_fax')
->condition('lid', $location['lid'])
->execute();
if (!empty($location['fax'])) {
db_insert('location_fax')
->fields(array(
'lid' => $location['lid'],
'fax' => $location['fax'],
))
->execute();
}
break;
case 'load':
$fields = array();
$fax = db_query('SELECT fax FROM {location_fax} WHERE lid = :lid', array(':lid' => $location['lid']))->fetchField();
$fields['fax'] = $fax ? $fax : '';
return $fields;
case 'delete':
db_delete('location_fax')
->condition('lid', $location['lid'])
->execute();
break;
}
}

