private function _get_items_from_wp() { $tab = !empty($_REQUEST['tab']) ? $_REQUEST['tab'] : ''; if (!$tab) { return; } $plugins = learn_press_get_add_ons_from_wp(); if ($tab == 'bundle_activate' && sizeof($plugins)) { global $learn_press_add_ons; $_plugins = array_values($plugins); $plugins = array(); $bundle_activate = $learn_press_add_ons['bundle_activate']; for ($n = sizeof($_plugins), $i = $n - 1; $i >= 0; $i--) { foreach ($bundle_activate as $slug) { if (false !== strpos($slug, $_plugins[$i]->slug) || false !== strpos($_plugins[$i]->slug, $slug)) { $plugins[] = $_plugins[$i]; } } } } $this->items = $plugins; }
<?php /** * @file */ if (!defined('ABSPATH')) { exit; // Exit if accessed directly } global $learn_press_add_ons; $learn_press_add_ons['bundle_activate'] = array('learnpress-course-review', 'learnpress-import-export', 'learnpress-prerequisites-courses', 'learnpress-wishlist'); $wp_plugins = learn_press_get_add_ons_from_wp(array('exclude' => $learn_press_add_ons['bundle_activate'])); if ($wp_plugins) { $wp_plugins = array_map(create_function('$a', 'return $a->slug;'), $wp_plugins); $learn_press_add_ons['more'] = $wp_plugins; } else { $learn_press_add_ons['more'] = array(); } require_once LPR_PLUGIN_PATH . '/inc/admin/class-lpr-upgrader.php'; /** * Default tabs for add ons page * * @return array */ function learn_press_get_add_on_tabs() { global $learn_press_add_ons; $all_plugins = learn_press_get_add_ons(); $defaults = array('all' => array('text' => sprintf(__('All <span class="count">(%s)</span>', 'learn_press'), sizeof($all_plugins)), 'class' => '', 'url' => ''), 'bundle_activate' => array('text' => sprintf(__('Bundle Activate <span class="count">(%s)</span>', 'learn_press'), sizeof($learn_press_add_ons['bundle_activate'])), __('', 'learn_press'), 'class' => '', 'url' => ''), 'more' => array('text' => sprintf(__('Get more <span class="count">(%s)</span>', 'learn_press'), sizeof($learn_press_add_ons['more'])), __('', 'learn_press'), 'class' => '', 'url' => '')); return apply_filters('learn_press_add_on_tabs', $defaults); }
function learn_press_add_ons_content_tab_bundle_activate($current) { $add_ons = learn_press_get_add_ons_from_wp(array('transient_key' => 'lp_ba_add_ons', 'include' => learn_press_get_bundle_activate_add_ons(), 'force' => wp_verify_nonce(learn_press_get_request('check'), 'check_bundle_activate'))); $time = get_option('_transient_timeout_lp_ba_add_ons'); $description = __('All add-ons that provide basic features for your LMS site.', 'learn_press'); $description .= ' ' . sprintf(__('Last checked %s ago'), human_time_diff($time - LP_ADD_ON_TRANSIENT_TIME)); $description .= ' ' . sprintf(__('<a href="%s">%s</a>'), admin_url('admin.php?page=learn_press_add_ons&tab=bundle_activate&check=' . wp_create_nonce('check_bundle_activate')), __('Check again!', 'learn_press')); learn_press_add_on_tab_description($description); learn_press_output_add_ons_list($add_ons, $current); }