You are here

function blockreference_autocomplete_value in Block reference 7.2

Same name and namespace in other branches
  1. 6 blockreference.module \blockreference_autocomplete_value()
  2. 7 blockreference.module \blockreference_autocomplete_value()

Value callback for a blockreference autocomplete element.

1 string reference to 'blockreference_autocomplete_value'
blockreference_field_widget_form in ./blockreference.field.inc
Implements hook_field_widget_form().

File

./blockreference.module, line 67

Code

function blockreference_autocomplete_value($element, $input = FALSE, $form_state) {
  $ac_string = $input !== FALSE ? $input : (isset($element['#value']) ? $element['#value'] : (string) @$element['#default_value']);
  $module = $delta = '';

  // Find module & delta from an ac string.
  if (is_string($ac_string)) {
    $block_arr = _blockreference_block_from_ac_string($ac_string);
    if ($block_arr) {
      list($module, $delta) = array_values($block_arr);
    }
  }

  // Found it? Does is exist?
  if ($module && $delta) {
    $infos = module_invoke($module, 'block_info');
    if (isset($infos[$delta])) {
      $block = _blockreference_block($module, $delta, $infos[$delta]);
      $value = trim($block->info) . '   [' . $block->module . ':' . $block->delta . ']';
      return $value;
    }
  }
  return '';
}