123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- <?php
- /**
- * @file
- * API documentation for Addressfield.
- */
- /**
- * Format generation callback.
- *
- * @param $format
- * The address format being generated.
- * @param $address
- * The address this format is generated for.
- * @param $context
- * An associative array of context information pertaining to how the address
- * format should be generated. If no mode is given, it will initialize to the
- * default value. The remaining context keys should only be present when the
- * address format is being generated for a field:
- * - mode: either 'form' or 'render'; defaults to 'render'.
- * - field: the field info array.
- * - instance: the field instance array.
- * - langcode: the langcode of the language the field is being rendered in.
- * - delta: the delta value of the given address.
- *
- * @ingroup addressfield_format
- */
- function CALLBACK_addressfield_format_callback(&$format, $address, $context = array()) {
- // No example.
- }
- /**
- * Allows modules to alter the default values for an address field.
- *
- * @param $default_values
- * The array of default values. The country is populated from the
- * 'default_country' widget setting.
- * @param $context
- * An array with the following keys:
- * - field: The field array.
- * - instance: The instance array.
- * - address: The current address values. Allows for per-country defaults.
- */
- function hook_addressfield_default_values_alter(&$default_values, $context) {
- // If no other default country was provided, set it to France.
- // Note: you might want to check $context['instance']['required'] and
- // skip setting the default country if the field is optional.
- if (empty($default_values['country'])) {
- $default_values['country'] = 'FR';
- }
- // Determine the country for which other defaults should be provided.
- $selected_country = $default_values['country'];
- if (isset($context['address']['country'])) {
- $selected_country = $context['address']['country'];
- }
- // Add defaults for the US.
- if ($selected_country == 'US') {
- $default_values['locality'] = 'New York';
- $default_values['administrative_area'] = 'NY';
- }
- }
- /**
- * Allows modules to alter the predefined address formats.
- *
- * @param $address_formats
- * The array of all predefined address formats.
- *
- * @see addressfield_get_address_format()
- */
- function hook_addressfield_address_formats_alter(&$address_formats) {
- // Remove the postal_code from the list of required fields for China.
- $address_formats['CN']['required_fields'] = array('locality', 'administrative_area');
- }
- /**
- * Allows modules to alter the predefined administrative areas.
- *
- * @param $administrative_areas
- * The array of all predefined administrative areas.
- *
- * @see addressfield_get_administrative_areas()
- */
- function hook_addressfield_administrative_areas_alter(&$administrative_areas) {
- // Alter the label of the Spanish administrative area with the iso code PM.
- $administrative_areas['ES']['PM'] = t('Balears / Baleares');
- // Add administrative areas for imaginary country XT, keyed by their
- // imaginary ISO codes.
- $administrative_areas['XT'] = array(
- 'A' => t('Aland'),
- 'B' => t('Bland'),
- );
- }
- /**
- * Allows modules to add arbitrary AJAX commands to the array returned from the
- * standard address field widget refresh.
- *
- * @param &$commands
- * The array of AJAX commands used to refresh the address field widget.
- * @param $form
- * The rebuilt form array.
- * @param $form_state
- * The form state array from the form.
- *
- * @see addressfield_standard_widget_refresh()
- */
- function hook_addressfield_standard_widget_refresh_alter(&$commands, $form, $form_state) {
- // Display an alert message.
- $commands[] = ajax_command_alert(t('The address field widget has been updated.'));
- }
|