summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/jetpack/3rd-party/class.jetpack-modules-overrides.php')
-rw-r--r--plugins/jetpack/3rd-party/class.jetpack-modules-overrides.php143
1 files changed, 0 insertions, 143 deletions
diff --git a/plugins/jetpack/3rd-party/class.jetpack-modules-overrides.php b/plugins/jetpack/3rd-party/class.jetpack-modules-overrides.php
deleted file mode 100644
index f0d86be9..00000000
--- a/plugins/jetpack/3rd-party/class.jetpack-modules-overrides.php
+++ /dev/null
@@ -1,143 +0,0 @@
-<?php
-
-/**
- * Provides methods for dealing with module overrides.
- *
- * @since 5.9.0
- */
-class Jetpack_Modules_Overrides {
- /**
- * Used to cache module overrides so that we minimize how many times we appy the
- * option_jetpack_active_modules filter.
- *
- * @var null|array
- */
- private $overrides = null;
-
- /**
- * Clears the $overrides member used for caching.
- *
- * Since get_overrides() can be passed a falsey value to skip caching, this is probably
- * most useful for clearing cache between tests.
- *
- * @return void
- */
- public function clear_cache() {
- $this->overrides = null;
- }
-
- /**
- * Returns true if there is a filter on the jetpack_active_modules option.
- *
- * @return bool Whether there is a filter on the jetpack_active_modules option.
- */
- public function do_overrides_exist() {
- return (bool) ( has_filter( 'option_jetpack_active_modules' ) || has_filter( 'jetpack_active_modules' ) );
- }
-
- /**
- * Gets the override for a given module.
- *
- * @param string $module_slug The module's slug.
- * @param boolean $use_cache Whether or not cached overrides should be used.
- *
- * @return bool|string False if no override for module. 'active' or 'inactive' if there is an override.
- */
- public function get_module_override( $module_slug, $use_cache = true ) {
- $overrides = $this->get_overrides( $use_cache );
-
- if ( ! isset( $overrides[ $module_slug ] ) ) {
- return false;
- }
-
- return $overrides[ $module_slug ];
- }
-
- /**
- * Returns an array of module overrides where the key is the module slug and the value
- * is true if the module is forced on and false if the module is forced off.
- *
- * @param bool $use_cache Whether or not cached overrides should be used.
- *
- * @return array The array of module overrides.
- */
- public function get_overrides( $use_cache = true ) {
- if ( $use_cache && ! is_null( $this->overrides ) ) {
- return $this->overrides;
- }
-
- if ( ! $this->do_overrides_exist() ) {
- return array();
- }
-
- $available_modules = Jetpack::get_available_modules();
-
- /**
- * First, let's get all modules that have been forced on.
- */
-
- /** This filter is documented in wp-includes/option.php */
- $filtered = apply_filters( 'option_jetpack_active_modules', array() );
-
- /** This filter is documented in class.jetpack.php */
- $filtered = apply_filters( 'jetpack_active_modules', $filtered );
-
- $forced_on = array_diff( $filtered, array() );
-
- /**
- * Second, let's get all modules forced off.
- */
-
- /** This filter is documented in wp-includes/option.php */
- $filtered = apply_filters( 'option_jetpack_active_modules', $available_modules );
-
- /** This filter is documented in class.jetpack.php */
- $filtered = apply_filters( 'jetpack_active_modules', $filtered );
-
- $forced_off = array_diff( $available_modules, $filtered );
-
- /**
- * Last, build the return value.
- */
- $return_value = array();
- foreach ( $forced_on as $on ) {
- $return_value[ $on ] = 'active';
- }
-
- foreach ( $forced_off as $off ) {
- $return_value[ $off ] = 'inactive';
- }
-
- $this->overrides = $return_value;
-
- return $return_value;
- }
-
- /**
- * A reference to an instance of this class.
- *
- * @var Jetpack_Modules_Overrides
- */
- private static $instance = null;
-
- /**
- * Returns the singleton instance of Jetpack_Modules_Overrides
- *
- * @return Jetpack_Modules_Overrides
- */
- public static function instance() {
- if ( is_null( self::$instance ) ) {
- self::$instance = new Jetpack_Modules_Overrides();
- }
-
- return self::$instance;
- }
-
- /**
- * Private construct to enforce singleton.
- */
- private function __construct() {
- }
-}
-
-Jetpack_Modules_Overrides::instance();