public static function Notifications_Queue::queue_query in Notifications 6.4
Build query conditions for queue queries
Parameters
$params: Array of parameters, field => value form Special parameters 'max_squid' => max squid to delete 'rows' => array of squid values to delte
Return value
Array with 'where' and 'args' elements. Each of them is an array
4 calls to Notifications_Queue::queue_query()
- Notifications_Queue::process_rows in includes/
notifications_queue.class.inc - Process rows given query conditions
- Notifications_Queue::queue_count in includes/
notifications_queue.class.inc - Count the number of rows in queue
- Notifications_Queue::queue_delete in includes/
notifications_queue.class.inc - Delete rows from subscriptions queue
- Notifications_Queue::queue_update in includes/
notifications_queue.class.inc - Update queue rows with defined values
File
- includes/
notifications_queue.class.inc, line 836
Class
- Notifications_Queue
- Queue management and processing
Code
public static function queue_query($params, $table_alias = NULL) {
$where = $args = array();
// Special condition max_sqid
if (isset($params['max_sqid'])) {
$where[] = $table_alias ? "{$table_alias}.sqid <= %d" : "sqid <= %d";
$args[] = $params['max_sqid'];
unset($params['max_sqid']);
}
// Special condition send_time_after
if (isset($params['send_time_after'])) {
$where[] = $table_alias ? "{$table_alias}.send_time < %d" : "send_time < %d";
$args[] = $params['send_time_after'];
unset($params['send_time_after']);
}
// User generic query builder for the rest of fields
$values = _messaging_query_conditions('notifications_queue', $params, $table_alias);
$where = array_merge($where, $values['conditions']);
$args = array_merge($args, $values['args']);
return array(
'where' => $where,
'args' => $args,
);
}