function flipping_book_reference_field_formatter_view in Flipping Book 7
Implements hook_field_formatter_view().
File
- ./
flipping_book_reference.module, line 280 - Defines a field type for referencing one flipping_book from a node.
Code
function flipping_book_reference_field_formatter_view($entity_type, $entity, $field, $instance, $langcode, $items, $display) {
$settings = $display['settings'];
$result = array();
switch ($display['type']) {
case 'flipping_book_reference_default':
case 'flipping_book_reference_plain':
foreach ($items as $delta => $item) {
$flipping_book = $item['flipping_book'];
if ($display['type'] == 'flipping_book_reference_default') {
$result[$delta] = array(
'#type' => 'link',
'#title' => $flipping_book->title,
'#href' => $flipping_book->url,
'#options' => array(
'attributes' => array(
'target' => $settings['target'],
),
),
);
}
else {
$result[$delta] = array(
'#markup' => check_plain($flipping_book->title),
);
}
}
break;
case 'flipping_book_reference_fbid':
foreach ($items as $delta => $item) {
$result[$delta] = array(
'#markup' => $item['fbid'],
);
}
break;
case 'flipping_book_reference_path':
foreach ($items as $delta => $item) {
$options = array(
'absolute' => $settings['absolute'],
);
$result[$delta] = array(
'#markup' => url($item['flipping_book']->path, $options),
);
}
break;
case 'flipping_book_reference_colorbox':
foreach ($items as $delta => $item) {
$flipping_book = $item['flipping_book'];
$query = array(
'width' => $settings['width'],
'height' => $settings['height'],
'iframe' => 'true',
);
$result[$delta] = array(
'#type' => 'link',
'#title' => !empty($settings['link_title']) ? t($settings['link_title']) : $flipping_book->title,
'#href' => url($flipping_book->url, array(
'query' => $query,
)),
'#options' => array(
'attributes' => array(
'class' => array(
'colorbox-load',
),
),
),
);
}
break;
}
return $result;
}