pageRenderer = $pageRenderer; $this->tasksState = $tasksState; $this->cronHelper = $cronHelper; $this->helpscoutBeacon = $helpscoutBeacon; $this->bridge = $bridge; } public function render() { $systemInfoData = $this->helpscoutBeacon->getData(true); try { $cronPingUrl = $this->cronHelper->getCronUrl(CronDaemon::ACTION_PING); $cronPingResponse = $this->cronHelper->pingDaemon(); } catch (\Exception $e) { $cronPingResponse = __('Can‘t generate cron URL.', 'mailpoet') . ' (' . $e->getMessage() . ')'; $cronPingUrl = $cronPingResponse; } $mailerLog = MailerLog::getMailerLog(); $mailerLog['sent'] = MailerLog::sentSince(); $systemStatusData = [ 'cron' => [ 'url' => $cronPingUrl, 'isReachable' => $this->cronHelper->validatePingResponse($cronPingResponse), 'pingResponse' => $cronPingResponse, ], 'mss' => [ 'enabled' => $this->bridge->isMailpoetSendingServiceEnabled(), 'isReachable' => $this->bridge->pingBridge(), ], 'cronStatus' => $this->cronHelper->getDaemon(), 'queueStatus' => $mailerLog, ]; $systemStatusData['cronStatus']['accessible'] = $this->cronHelper->isDaemonAccessible(); $systemStatusData['queueStatus']['tasksStatusCounts'] = $this->tasksState->getCountsPerStatus(); $systemStatusData['queueStatus']['latestTasks'] = $this->tasksState->getLatestTasks(Sending::TASK_TYPE); $this->pageRenderer->displayPage( 'help.html', [ 'systemInfoData' => $systemInfoData, 'systemStatusData' => $systemStatusData, ] ); } }