function globallink_build_filter_query in GlobalLink Connect for Drupal 7.7
Same name and namespace in other branches
- 7.5 globallink.inc \globallink_build_filter_query()
- 7.6 globallink.inc \globallink_build_filter_query()
Builds a filter query.
Parameters
SelectQuery $query: SelectQuery object.
array $filter_array: Array of filter parameters.
2 calls to globallink_build_filter_query()
- globallink_dashboard_node_form in ./
globallink_send_translations.inc - Builds form to create a GlobalLink submission.
- globallink_entity_dashboard_form in globallink_entity/
globallink_entity_send.inc - Builds form to create an entity submission.
File
- ./
globallink.inc, line 29 - Miscellaneous GlobalLink functions for node translations (non-entity).
Code
function globallink_build_filter_query(SelectQuery $query, $filter_array) {
$filters = globallink_build_filters(TRUE);
$count = 0;
foreach ($filter_array as $filter) {
list($key, $value) = $filter;
switch ($key) {
case 'modified':
case 'target_language':
continue 2;
break;
case 'modified-after':
$query
->condition($filters[$key]['field'], $value, '>=');
break;
case 'title':
$query
->condition($filters[$key]['field'], '%' . $value . '%', 'LIKE');
break;
case 'status':
if (module_exists('revisioning')) {
continue 2;
}
list($key, $value) = explode('-', $value, 2);
$query
->condition($key, $value, '=');
break;
case 'node_parent':
if ($value == 1) {
$query
->where('tnid = nid OR tnid = 0');
}
break;
default:
$query
->condition($filters[$key]['field'], $value);
}
$count++;
}
}