function _flipping_book_reference_potential_references_standard in Flipping Book 7
Helper function for flipping_book_reference_potential_references().
List of referenceable flipping_books defined by content types.
1 call to _flipping_book_reference_potential_references_standard()
- flipping_book_reference_potential_references in ./
flipping_book_reference.module - Retrieves an array of candidate referenceable flipping_books.
File
- ./
flipping_book_reference.module, line 620 - Defines a field type for referencing one flipping_book from a node.
Code
function _flipping_book_reference_potential_references_standard($field, $options) {
$query = db_select('flipping_book', 'f');
$query
->addField('f', 'fbid');
$flipping_book_title_alias = $query
->addField('f', 'title', 'flipping_book_title');
$flipping_book_dir_alias = $query
->addField('f', 'dir', 'flipping_book_dir');
if ($options['string'] !== '') {
switch ($options['match']) {
case 'contains':
$query
->condition('f.title', '%' . $options['string'] . '%', 'LIKE');
break;
case 'starts_with':
$query
->condition('f.title', $options['string'] . '%', 'LIKE');
break;
case 'equals':
// No match type or incorrect match type: use "="
default:
$query
->condition('f.title', $options['string']);
break;
}
}
if ($options['ids']) {
$query
->condition('f.fbid', $options['ids'], 'IN');
}
if ($options['limit']) {
$query
->range(0, $options['limit']);
}
$query
->orderBy($flipping_book_title_alias)
->orderBy($flipping_book_dir_alias);
$result = $query
->execute()
->fetchAll();
$references = array();
foreach ($result as $flipping_book) {
$references[$flipping_book->fbid] = array(
'title' => $flipping_book->flipping_book_title,
'rendered' => check_plain($flipping_book->flipping_book_title),
);
}
return $references;
}