function _views_bulk_operations_get_selection_full in Views Bulk Operations (VBO) 6
Compute the actual selected objects based on the settings.
2 calls to _views_bulk_operations_get_selection_full()
- views_bulk_operations_form in ./
views_bulk_operations.module - Form implementation for main VBO multistep form.
- views_bulk_operations_form_submit in ./
views_bulk_operations.module - Form submit function for views_bulk_operations_form().
File
- ./
views_bulk_operations.module, line 808 - Allows operations to be performed on items selected in a view.
Code
function _views_bulk_operations_get_selection_full($plugin, $form_state) {
// Get the objects from the view if selectall was chosen.
$view = $plugin->view;
if ($form_state['storage']['selectall']) {
$view_copy = views_get_view($view->name);
$view_copy
->set_exposed_input($view->exposed_input);
$view_copy
->set_arguments($view->args);
$view_copy
->set_items_per_page(0);
$view_copy->skip_render = TRUE;
// signal our plugin to skip the rendering
$view_copy
->render($view->current_display);
$objects = array();
foreach ($view_copy->result as $row) {
$objects[_views_bulk_operations_hash_object($row, $view_copy)] = $row;
}
$view_copy
->destroy();
$objects = array_diff_key($objects, $form_state['storage']['selection']);
}
else {
$objects = $form_state['storage']['selection'];
}
return $objects;
}