static function init() { if (is_null(self::$instance)) { self::$instance = new Jetpack_Admin(); } return self::$instance; }
function get_views() { $modules = Jetpack_Admin::init()->get_modules(); $array_of_module_tags = wp_list_pluck($modules, 'module_tags'); $module_tags = call_user_func_array('array_merge', $array_of_module_tags); $module_tags_unique = array_count_values($module_tags); ksort($module_tags_unique); $format = '<a href="%3$s"%4$s data-title="%1$s">%1$s <span class="count">(%2$s)</span></a>'; $title = __('All', 'jetpack'); $count = count($modules); $url = esc_url(remove_query_arg('module_tag')); $current = empty($_GET['module_tag']) ? ' class="current all"' : ' class="all"'; $views = array('all' => sprintf($format, $title, $count, $url, $current)); foreach ($module_tags_unique as $title => $count) { $key = sanitize_title($title); $display_title = esc_html(wptexturize($title)); $url = esc_url(add_query_arg('module_tag', urlencode($title))); $current = ''; if (!empty($_GET['module_tag']) && $title == $_GET['module_tag']) { $current = ' class="current"'; } $views[$key] = sprintf($format, $display_title, $count, $url, $current); } return $views; }
function dismiss_jetpack_notice() { if (!isset($_GET['jetpack-notice'])) { return; } switch ($_GET['jetpack-notice']) { case 'dismiss': if (check_admin_referer('jetpack-deactivate') && !is_plugin_active_for_network(plugin_basename(JETPACK__PLUGIN_DIR . 'jetpack.php'))) { require_once ABSPATH . 'wp-admin/includes/plugin.php'; deactivate_plugins(JETPACK__PLUGIN_DIR . 'jetpack.php', false, false); wp_safe_redirect(admin_url() . 'plugins.php?deactivate=true&plugin_status=all&paged=1&s='); } break; case 'jetpack-manage-opt-out': if (check_admin_referer('jetpack_manage_banner_opt_out')) { // Don't show the banner again Jetpack_Options::update_option('dismissed_manage_banner', true); // redirect back to the page that had the notice if (wp_get_referer()) { wp_safe_redirect(wp_get_referer()); } else { // Take me to Jetpack wp_safe_redirect(admin_url('admin.php?page=jetpack')); } } break; case 'jetpack-protect-multisite-opt-out': if (check_admin_referer('jetpack_protect_multisite_banner_opt_out')) { // Don't show the banner again update_site_option('jetpack_dismissed_protect_multisite_banner', true); // redirect back to the page that had the notice if (wp_get_referer()) { wp_safe_redirect(wp_get_referer()); } else { // Take me to Jetpack wp_safe_redirect(admin_url('admin.php?page=jetpack')); } } break; case 'jetpack-manage-opt-in': if (check_admin_referer('jetpack_manage_banner_opt_in')) { // This makes sure that we are redirect to jetpack home so that we can see the Success Message. $redirection_url = Jetpack::admin_url(); remove_action('jetpack_pre_activate_module', array(Jetpack_Admin::init(), 'fix_redirect')); // Don't redirect form the Jetpack Setting Page $referer_parsed = parse_url(wp_get_referer()); // check that we do have a wp_get_referer and the query paramater is set orderwise go to the Jetpack Home if (isset($referer_parsed['query']) && false !== strpos($referer_parsed['query'], 'page=jetpack_modules')) { // Take the user to Jetpack home except when on the setting page $redirection_url = wp_get_referer(); add_action('jetpack_pre_activate_module', array(Jetpack_Admin::init(), 'fix_redirect')); } // Also update the JSON API FULL MANAGEMENT Option Jetpack::activate_module('manage', false, false); // Special Message when option in. Jetpack::state('optin-manage', 'true'); // Activate the Module if not activated already // Redirect properly wp_safe_redirect($redirection_url); } break; } }
static function jumpstart_modules() { $modules = Jetpack_Admin::init()->get_modules(); $module_info = array(); foreach ($modules as $module => $value) { if (in_array('Jumpstart', $value['feature'])) { $module_info[] = array('slug' => $value['module'], 'name' => $value['name'], 'description' => $value['jumpstart_desc'], 'configure_url' => $value['configurable'] ? $value['configure_url'] : null); } } return $module_info; }
public static function get_modules() { require_once JETPACK__PLUGIN_DIR . 'class.jetpack-admin.php'; return Jetpack_Admin::init()->get_modules(); }
function page_admin_scripts() { // Enqueue jp.js and localize it wp_enqueue_script('jetpack-js', plugins_url('_inc/jp.js', JETPACK__PLUGIN_FILE), array('jquery', 'wp-util'), JETPACK__VERSION . '-20121111'); wp_localize_script('jetpack-js', 'jetpackL10n', array('ays_disconnect' => __("This will deactivate all Jetpack modules.\nAre you sure you want to disconnect?", 'jetpack'), 'ays_unlink' => __("This will prevent user-specific modules such as Publicize, Notifications and Post By Email from working.\nAre you sure you want to unlink?", 'jetpack'), 'ays_dismiss' => __("This will deactivate Jetpack.\nAre you sure you want to deactivate Jetpack?", 'jetpack'), 'view_all_features' => __('View all Jetpack features', 'jetpack'), 'no_modules_found' => sprintf(__('Sorry, no modules were found for the search term "%s"', 'jetpack'), '{term}'), 'modules' => Jetpack::get_translated_modules(array_values(Jetpack_Admin::init()->get_modules())), 'currentVersion' => JETPACK__VERSION, 'ajaxurl' => admin_url('admin-ajax.php'), 'show_jumpstart' => $this->jetpack_show_jumpstart(), 'activate_nonce' => wp_create_nonce('jetpack-jumpstart-nonce'), 'admin_nonce' => wp_create_nonce('jetpack-admin-nonce'), 'jumpstart_stats_urls' => $this->build_jumpstart_stats_urls(array('dismiss', 'jumpstarted', 'learnmore', 'viewed', 'manual')), 'admin_stats_urls' => $this->build_nux_admin_stats_urls(array('enabled', 'deactivated', 'learnmore')), 'site_url_manage' => Jetpack::build_raw_urls(get_site_url()))); }
/** * Get a list of all Jetpack modules and their information. * * @since 4.3.0 * * @return array Array of Jetpack modules. */ public function get_modules() { require_once JETPACK__PLUGIN_DIR . 'class.jetpack-admin.php'; $modules = Jetpack_Admin::init()->get_modules(); foreach ($modules as $slug => $properties) { $modules[$slug]['options'] = Jetpack_Core_Json_Api_Endpoints::prepare_options_for_response($slug); if (isset($modules[$slug]['requires_connection']) && $modules[$slug]['requires_connection'] && Jetpack::is_development_mode()) { $modules[$slug]['activated'] = false; } } $modules = Jetpack::get_translated_modules($modules); return Jetpack_Core_Json_Api_Endpoints::prepare_modules_for_response($modules); }
/** * Get a list of all Jetpack modules and their information. * * @since 4.1.0 * * @return array Array of Jetpack modules. */ public static function get_modules() { require_once JETPACK__PLUGIN_DIR . 'class.jetpack-admin.php'; $modules = Jetpack_Admin::init()->get_modules(); foreach ($modules as $slug => $properties) { $modules[$slug]['options'] = self::prepare_options_for_response($slug); } return $modules; }
function page_admin_scripts() { // Enqueue jp.js and localize it wp_enqueue_script('jetpack-js', plugins_url('_inc/jp.js', JETPACK__PLUGIN_FILE), array('jquery', 'wp-util'), JETPACK__VERSION . '-20121111'); wp_localize_script('jetpack-js', 'jetpackL10n', array('ays_disconnect' => __("This will deactivate all Jetpack modules.\nAre you sure you want to disconnect?", 'jetpack'), 'ays_unlink' => __("This will prevent user-specific modules such as Publicize, Notifications and Post By Email from working.\nAre you sure you want to unlink?", 'jetpack'), 'ays_dismiss' => __("This will deactivate Jetpack.\nAre you sure you want to deactivate Jetpack?", 'jetpack'), 'view_all_features' => __('View all Jetpack features', 'jetpack'), 'no_modules_found' => sprintf(__('Sorry, no modules were found for the search term "%s"', 'jetpack'), '{term}'), 'modules' => array_values(Jetpack_Admin::init()->get_modules()), 'currentVersion' => JETPACK__VERSION)); }