function nodequeue_queue_front in Nodequeue 6.2
Same name and namespace in other branches
- 5.2 nodequeue.module \nodequeue_queue_front()
- 5 nodequeue.module \nodequeue_queue_front()
- 7.3 nodequeue.module \nodequeue_queue_front()
- 7.2 nodequeue.module \nodequeue_queue_front()
Move an item to the front of the queue.
1 call to nodequeue_queue_front()
File
- ./
nodequeue.module, line 1209 - Maintains queues of nodes in arbitrary order.
Code
function nodequeue_queue_front($subqueue, $position) {
if ($position < 2 || $position > $subqueue->count) {
return;
}
$entry = db_fetch_object(db_query("SELECT * FROM {nodequeue_nodes} WHERE sqid= %d AND position = %d", $subqueue->sqid, $position));
db_query("DELETE FROM {nodequeue_nodes} WHERE sqid = %d AND position = %d", $subqueue->sqid, $position);
db_query("UPDATE {nodequeue_nodes} SET position = position + 1 WHERE sqid= %d AND position < %d", $subqueue->sqid, $position);
db_query("INSERT INTO {nodequeue_nodes} (qid, sqid, nid, position, timestamp) VALUES (%d, %d, %d, 1, %d)", $entry->qid, $subqueue->sqid, $entry->nid, $entry->timestamp);
}