Server : Apache System : Linux pod-100823:apache2_74:v0.5.7 5.4.0-1138-gcp #147~18.04.1-Ubuntu SMP Mon Oct 7 21:46:26 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33.7 Disable Function : apache_child_terminate,apache_get_modules,apache_get_version,apache_getenv,apache_note,apache_setenv,disk_free_space,disk_total_space,diskfreespace,dl,exec,fastcgi_finish_request,link,opcache_compile_file,opcache_get_configuration,opcache_invalidate,opcache_is_script_cached,opcache_reset,passthru,pclose,pcntl_exec,popen,posix_getpid,posix_getppid,posix_getpwuid,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_uname,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,realpath_cache_get,shell_exec,show_source,symlink,system Directory : /nas/content/live/attorneyexperi/wp-content/plugins/ugslot/MWP/Action/ |
<?php /* * This file is part of the ManageWP Worker plugin. * * (c) ManageWP LLC <contact@managewp.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ class MWP_Action_GetComponentsStats extends MWP_Action_Abstract { /** @var wpdb */ private $wpdb; public function execute(array $params = array()) { $this->wpdb = $this->container->getWordPressContext()->getDb(); if ($this->container->getWordPressContext()->isMultisite()) { return $this->getNetworkStats($params); } $options = $this->getOptions($params); $stateAction = new MWP_Action_GetState(); $stateAction->setContainer($this->container); $stateData = $stateAction->execute($options); $siteUrl = $this->container->getWordPressContext()->getSiteUrl(); return array( 'multisite' => false, 'data' => array( $siteUrl => $stateData ) ); } private function getNetworkStats(array $params = array()) { $network_blogs = $this->wpdb->get_results("select `blog_id`, `site_id`, `domain`, `path` from `{$this->wpdb->blogs}`"); if (empty($network_blogs)) { return array( 'multisite' => true, 'data' => array() ); } $data = array(); $options = $this->getOptions($params); /** @handled function */ $current_blog_id = get_current_blog_id(); foreach ($network_blogs as $network_blog) { /** @handled function */ switch_to_blog($network_blog->blog_id); $stateAction = new MWP_Action_GetState(); $stateAction->setContainer($this->container); $network_blog_url = rtrim($network_blog->domain, '/').'/'.trim($network_blog->path, '/'); $data[$network_blog_url] = $stateAction->execute($options); } /** @handled function */ switch_to_blog($current_blog_id); return array( 'multisite' => true, 'data' => $data ); } private function getOptions(array $params = array()) { $options = array(); if (isset($params['getPluginStats']) && $params['getPluginStats'] === true) { $options['plugins'] = array( 'type' => 'plugins', 'options' => array() ); } if (isset($params['getThemeStats']) && $params['getThemeStats'] === true) { $options['themes'] = array( 'type' => 'themes', 'options' => array() ); } return $options; } }