_i18n_node_references
Drupal 7 _i18n_node_references($string, $match = 'contains', $params = array(), $limit = 10)
Find node title matches.
Parameters
$string: String to match against node title
$match: Match mode: 'contains', 'equals', 'starts_with'
$params: Other query arguments: type, language or numeric ones
2 calls to _i18n_node_references()
File
- sites/
all/ modules/ i18n/ i18n_node/ i18n_node.pages.inc, line 301 - User page callbacks for the translation module.
Code
function _i18n_node_references($string, $match = 'contains', $params = array(), $limit = 10) {
$query = db_select('node', 'n')
->fields('n', array('nid', 'title', 'type'))
->orderBy('n.title')
->orderBy('n.type')
->range(0, $limit);
foreach ($params as $key => $value) {
$query->condition($key, $value);
}
switch ($match) {
case 'equals':
$query->condition('n.title', $string);
break;
case 'starts_with':
$query->condition('n.title', $string . '%', 'LIKE');
break;
case 'contains':
default:
$query->condition('n.title', '%' . $string . '%', 'LIKE');
break;
}
// Disable and reenable i18n selection mode so no language conditions are inserted
i18n_select(false);
$references = array();
foreach ($query->execute() as $node) {
$references[$node->nid] = array(
'title' => $node->title,
'rendered' => check_plain($node->title),
);
}
i18n_select(true);
return $references;
}

