![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mets.corals.io/wp-content/plugins/wp-smushit/core/modules/ |
<?php /** * Abstract module class: Abstract_Module * * @since 3.0 * @package Smush\Core\Modules */ namespace Smush\Core\Modules; use Smush\Core\Settings; use WP_Smush; if ( ! defined( 'WPINC' ) ) { die; } /** * Class Abstract_Module * * @since 3.0 */ abstract class Abstract_Module { /** * Module slug. * * @var string */ protected $slug; /** * Whether module is pro or not. * * @var string */ protected $is_pro = false; /** * Settings instance. * * @since 3.0 * @var Settings */ protected $settings; /** * Abstract_Module constructor. * * @since 3.0 */ public function __construct() { $this->settings = Settings::get_instance(); $this->init(); } /** * Initialize the module. * * Do not use __construct in modules, instead use init(). * * @since 3.0 */ protected function init() {} /** * Return true if the module is activated. * * @return boolean */ public function is_active() { if ( $this->slug ) { if ( ! $this->is_pro ) { return (bool) $this->settings->get( $this->slug ); } else { return WP_Smush::is_pro() && $this->settings->get( $this->slug ); } } return true; } /** * Return module slug. * * @return string. */ public function get_slug() { return $this->slug; } }