[ 'Logs/Download_Monitor/Logtivity_Download_Monitor', ], 'MeprCtrlFactory' => [ 'Logs/Memberpress/Logtivity_Memberpress', ] ]; public function __construct() { $this->loadDependancies(); add_filter( 'plugin_action_links_' . plugin_basename(__FILE__), [$this, 'addSettingsLinkFromPluginsPage'] ); } public static function log($action = null, $meta = null, $user_id = null) { return Logtivity_Logger::log($action, $meta, $user_id); } public function loadDependancies() { foreach ($this->dependancies as $filePath) { $this->loadFile($filePath); } $this->maybeLoadLogClasses(); $this->loadIntegrationDependancies(); } public function maybeLoadLogClasses() { if ($this->defaultLoggingDisabled()) { return; } foreach ($this->logClasses as $filePath) { $this->loadFile($filePath); } } /** * Is the default Event logging from within the plugin enabled * * @return bool */ public function defaultLoggingDisabled() { return (new Logtivity_Options)->getOption('logtivity_disable_default_logging'); } public function loadIntegrationDependancies() { foreach ($this->integrationDependancies as $key => $value) { if (class_exists($key)) { foreach ($value as $filePath) { $this->loadFile($filePath); } } } } public function loadFile($filePath) { require_once plugin_dir_path( __FILE__ ) . $filePath .'.php'; } public function addSettingsLinkFromPluginsPage($links) { $settings_links = array( 'Settings', ); return array_merge($settings_links, $links); } } $logtivity = new Logtivity;