function commerce_wishlist_views_default_views_alter in Commerce Wishlist 7.3
Implements hook_views_default_views_alter().
File
- includes/
views/ commerce_wishlist.views_default.inc, line 11 - Default views for the default Wishlist UI.
Code
function commerce_wishlist_views_default_views_alter(&$views) {
// For every view that is filtering out orders in the cart state, alter it to
// also filter out the wishlist state.
foreach ($views as $name => $view) {
if ($view->base_table == 'commerce_order') {
// Cycle through every display.
foreach ($view->display as $display_name => $display) {
// And now we go through the filters.
if (isset($display->display_options['filters'])) {
foreach ($display->display_options['filters'] as $filter_key => $filter_options) {
// If the view is showing orders whose state is 'not in' 'cart', add
// our value since it probably won't want wishlists.
if (isset($filter_options['field']) && isset($filter_options['operator']) && $filter_options['field'] == 'state' && $filter_options['operator'] == 'not in' && in_array('cart', $filter_options['value'])) {
$views[$name]->display[$display_name]->display_options['filters'][$filter_key]['value']['wishlist'] = 'wishlist';
}
}
}
}
}
}
}