X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModule%2FStatistics.php;h=88b01e255e392adf19705654c0ecbc04db34ed62;hb=69b7923df2beed71419bc38e61ca9755fad24b12;hp=566ace333144e4d0066b7cbbdd57d132f3951b6a;hpb=51210af22157327376954721bfdca7161b66a7be;p=friendica.git diff --git a/src/Module/Statistics.php b/src/Module/Statistics.php index 566ace3331..88b01e255e 100644 --- a/src/Module/Statistics.php +++ b/src/Module/Statistics.php @@ -1,30 +1,56 @@ . + * + */ namespace Friendica\Module; +use Friendica\App; use Friendica\BaseModule; use Friendica\Core\Addon; -use Friendica\Core\System; +use Friendica\Core\Config\Capability\IManageConfigValues; +use Friendica\Core\L10n; +use Friendica\Network\HTTPException\NotFoundException; +use Friendica\Util\Profiler; +use Psr\Log\LoggerInterface; class Statistics extends BaseModule { - public static function init() + /** @var IManageConfigValues */ + protected $config; + + public function __construct(L10n $l10n, App\BaseURL $baseUrl, App\Arguments $args, LoggerInterface $logger, Profiler $profiler, IManageConfigValues $config, Response $response, array $server, array $parameters = []) { - $config = self::getApp()->getConfig(); + parent::__construct($l10n, $baseUrl, $args, $logger, $profiler, $response, $server, $parameters); + + $this->config = $config; - if (!$config->get("system", "nodeinfo")) { - System::httpExit(404); + if (!$this->config->get("system", "nodeinfo")) { + throw new NotFoundException(); } } - public static function rawContent() + protected function rawContent(array $request = []) { - $config = self::getApp()->getConfig(); - $logger = self::getApp()->getLogger(); - $registration_open = - intval($config->get('config', 'register_policy')) !== Register::CLOSED - && !$config->get('config', 'invitation_only'); + intval($this->config->get('config', 'register_policy')) !== Register::CLOSED + && !$this->config->get('config', 'invitation_only'); /// @todo mark the "service" addons and load them dynamically here $services = [ @@ -41,20 +67,20 @@ class Statistics extends BaseModule ]; $statistics = array_merge([ - 'name' => $config->get('config', 'sitename'), + 'name' => $this->config->get('config', 'sitename'), 'network' => FRIENDICA_PLATFORM, 'version' => FRIENDICA_VERSION . '-' . DB_UPDATE_VERSION, 'registrations_open' => $registration_open, - 'total_users' => $config->get('nodeinfo', 'total_users'), - 'active_users_halfyear' => $config->get('nodeinfo', 'active_users_halfyear'), - 'active_users_monthly' => $config->get('nodeinfo', 'active_users_monthly'), - 'local_posts' => $config->get('nodeinfo', 'local_posts'), + 'total_users' => $this->config->get('nodeinfo', 'total_users'), + 'active_users_halfyear' => $this->config->get('nodeinfo', 'active_users_halfyear'), + 'active_users_monthly' => $this->config->get('nodeinfo', 'active_users_monthly'), + 'local_posts' => $this->config->get('nodeinfo', 'local_posts'), 'services' => $services, ], $services); header("Content-Type: application/json"); echo json_encode($statistics, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES); - $logger->debug("statistics.", ['statistics' => $statistics]); + $this->logger->debug("statistics.", ['statistics' => $statistics]); exit(); } }