function _book_access_ui_reset_batch_operation in Book access 7.2
1 string reference to '_book_access_ui_reset_batch_operation'
- book_access_ui_reset_all_to_defaults_submit in ./
book_access_ui.admin.inc - Form submissions callback for book_access_ui_reset_all_to_defaults().
File
- ./
book_access_ui.admin.inc, line 428 - Administration interface for the Book access module.
Code
function _book_access_ui_reset_batch_operation($bid, &$context) {
if (!is_array($bid)) {
$bid = array(
$bid,
);
}
if (empty($context['sandbox'])) {
$context['sandbox']['current_node'] = 0;
$context['sandbox']['max'] = db_select('book', 'book')
->condition('book.bid', $bid, 'IN')
->fields('book', array(
'nid',
))
->distinct()
->countQuery()
->execute()
->fetchField();
$context['sandbox']['progress'] = 0;
}
$result = db_select('book', 'b')
->fields('b', array(
'bid',
'nid',
))
->condition('b.nid', $context['sandbox']['current_node'], '>')
->condition('b.bid', $bid, 'IN')
->orderBy('b.nid')
->distinct()
->range(0, 20)
->execute();
$list = '';
foreach ($result as $row) {
$node = node_load($row->nid);
BookAccess::resetToDefault($row->nid);
$list .= t('<li>%title</li>', array(
'%title' => $node->title,
));
$context['sandbox']['progress']++;
$context['sandbox']['current_node'] = $row->nid;
}
$context['message'] = t('Resetting permissions for:<ul>!list</ul>', array(
'!list' => $list,
));
if ($context['sandbox']['progress'] != $context['sandbox']['max']) {
$context['finished'] = $context['sandbox']['progress'] / $context['sandbox']['max'];
}
}