function otw_sbm_get_total_not_excluded($otw_sidebar_id, $widget, $wp_item_type) { global $wp_registered_sidebars; $total_selected = 0; $total_valid = 0; $items = otw_sbm_get_filtered_items($wp_item_type, '', $otw_sidebar_id, 0); $valid_items = array(); if (count($items[1])) { foreach ($items[1] as $wpItem) { $valid_items[otw_wp_item_attribute($wp_item_type, 'ID', $wpItem)] = otw_wp_item_attribute($wp_item_type, 'ID', $wpItem); } } if (isset($wp_registered_sidebars[$otw_sidebar_id]['validfor'][$wp_item_type]) && !isset($wp_registered_sidebars[$otw_sidebar_id]['validfor'][$wp_item_type]['all'])) { $tmp_valid_items = $valid_items; foreach ($tmp_valid_items as $item_id) { if (!array_key_exists($item_id, $wp_registered_sidebars[$otw_sidebar_id]['validfor'][$wp_item_type])) { unset($valid_items[$item_id]); } } } $total_valid = count($valid_items); if ($total_valid) { $otw_widget_settings = get_option('otw_widget_settings'); if (isset($otw_widget_settings[$otw_sidebar_id][$wp_item_type]['_otw_wc']) && isset($otw_widget_settings[$otw_sidebar_id][$wp_item_type]['_otw_wc'][$widget])) { if ($otw_widget_settings[$otw_sidebar_id][$wp_item_type]['_otw_wc'][$widget] == 'vis') { $total_selected = count($valid_items); } elseif ($otw_widget_settings[$otw_sidebar_id][$wp_item_type]['_otw_wc'][$widget] == 'invis') { $total_selected = 0; } } else { if (isset($otw_widget_settings[$otw_sidebar_id][$wp_item_type])) { foreach ($otw_widget_settings[$otw_sidebar_id][$wp_item_type] as $item_type_id => $item_widget_data) { if ($item_type_id == '_otw_wc') { continue; } if (!in_array($item_type_id, $valid_items)) { continue; } if (isset($item_widget_data['exclude_widgets']) && isset($item_widget_data['exclude_widgets'][$widget])) { unset($valid_items[$item_type_id]); } } } $total_selected = count($valid_items); } } return array($total_valid, $total_selected); }
$page_title = __('Edit Sidebar', 'otw_sbm'); } } //apply post values if (isset($_POST['otw_action'])) { foreach ($otw_sidebar_values as $otw_field_key => $otw_field_default_value) { if (isset($_POST[$otw_field_key])) { $otw_sidebar_values[$otw_field_key] = $_POST[$otw_field_key]; } } } foreach ($wp_sbm_int_items as $wp_item_type => $wp_item_data) { if (isset($otw_sidebar_values['sbm_validfor'][$wp_item_type])) { $sbm_valid_for_values[$wp_item_type] = implode(',', array_keys($otw_sidebar_values['sbm_validfor'][$wp_item_type])); } elseif (!$otw_sidebar_values['sbm_loaded'] && in_array($wp_item_type, array('wpmllanguages', 'userroles'))) { $db_full_items = otw_sbm_get_filtered_items($wp_item_type, '', 0, 0); $keys = array('all'); if (isset($db_full_items[1]) && is_array($db_full_items[1])) { foreach ($db_full_items[1] as $db_full_wpItem) { $key = otw_wp_item_attribute($wp_item_type, 'ID', $db_full_wpItem); $keys[$key] = $key; } } $sbm_valid_for_values[$wp_item_type] = implode(",", $keys); } else { $sbm_valid_for_values[$wp_item_type] = ''; } if (isset($_POST['otw_smb_' . $wp_item_type . '_validfor'])) { $sbm_valid_for_values[$wp_item_type] = $_POST['otw_smb_' . $wp_item_type . '_validfor']; } //$wp_sbm_int_items[ $wp_item_type ][0] = otw_get_wp_items( $wp_item_type );
$id_in_list = array_keys($wp_registered_sidebars[$otw_sidebar_id]['validfor'][$wp_item_type]); } if (!count($id_in_list)) { $id_in_list[] = 'otw_0_0'; } break; case 'all_unselected': $otw_sidebars = get_option('otw_sidebars'); if (isset($wp_registered_sidebars[$otw_sidebar_id]['validfor'][$wp_item_type]) && !isset($wp_registered_sidebars[$otw_sidebar_id]['validfor'][$wp_item_type]['all'])) { $id_not_in_list = array_keys($wp_registered_sidebars[$otw_sidebar_id]['validfor'][$wp_item_type]); } elseif (isset($wp_registered_sidebars[$otw_sidebar_id]['validfor'][$wp_item_type]) && isset($wp_registered_sidebars[$otw_sidebar_id]['validfor'][$wp_item_type]['all'])) { $id_not_in_list = array_keys($wp_registered_sidebars[$otw_sidebar_id]['validfor'][$wp_item_type]); } break; } $db_items = otw_sbm_get_filtered_items($wp_item_type, $string_filter, $otw_sidebar_id, $items_limit, $id_in_list, $id_not_in_list, $show, $order, $current_page); $items = array(); $total_items = 0; if (isset($db_items[1])) { $total_items = $db_items[0]; $items = $db_items[1]; $pager_data = $db_items[2]; if (isset($pager_data['current'])) { $current_page = $pager_data['current']; } } } $wp_item_data = $wp_sbm_int_items[$wp_item_type]; if ($format == 'a_dialog') { ?> <?php