function flipping_book_reference_field_formatter_prepare_view in Flipping Book 7
Implements hook_field_formatter_prepare_view().
Preload all flipping_books referenced by items using 'full entity' formatters.
File
- ./
flipping_book_reference.module, line 253 - Defines a field type for referencing one flipping_book from a node.
Code
function flipping_book_reference_field_formatter_prepare_view($entity_type, $entities, $field, $instances, $langcode, &$items, $displays) {
// Load the referenced flipping books, except for the
// 'flipping_book_reference_fbid' which does not need full objects.
// Collect ids to load.
$ids = array();
foreach ($displays as $id => $display) {
if ($display['type'] != 'flipping_book_reference_fbid') {
foreach ($items[$id] as $delta => $item) {
$ids[$item['fbid']] = $item['fbid'];
}
}
}
$flipping_books = flipping_book_load_multiple($ids);
// Add the loaded flipping_books to the items.
foreach ($displays as $id => $display) {
if ($display['type'] != 'flipping_book_reference_fbid') {
foreach ($items[$id] as $delta => $item) {
$items[$id][$delta]['flipping_book'] = $flipping_books[$item['fbid']];
}
}
}
}