1 queue_example.module | queue_example_add_remove_form_delete($form, &$form_state) |
Submit function for "Claim and delete" button.
Related topics
File
- modules/
examples/ queue_example/ queue_example.module, line 224 - Hook implementations for the Queue Example module.
Code
function queue_example_add_remove_form_delete($form, &$form_state) {
$queue = BackdropQueue::get($form_state['values']['queue_name']);
// There is no harm in trying to recreate existing.
$queue->createQueue();
$count = $queue->numberOfItems();
$item = $queue->claimItem(60);
if (!empty($item)) {
backdrop_set_message(
t('Claimed and deleted item id=@item_id string=@string for @seconds seconds. There are @count items in the queue.',
array(
'@count' => $count,
'@item_id' => $item->item_id,
'@string' => $item->data,
'@seconds' => $form_state['values']['claim_time'],
)
)
);
$queue->deleteItem($item);
$count = $queue->numberOfItems();
backdrop_set_message(t('There are now @count items in the queue.', array('@count' => $count)));
}
else {
$count = $queue->numberOfItems();
backdrop_set_message(t('There were no items in the queue available to claim/delete. There are currently @count items in the queue.', array('@count' => $count)));
}
$form_state['rebuild'] = TRUE;
}