HEX
Server: Apache
System: Linux distracted-cartwright 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64
User: hvmbertogarza.com_s2ctmc9wn9 (10011)
PHP: 8.3.30
Disabled: opcache_get_status
Upload Files
File: /var/www/vhosts/hvmbertogarza.com/httpdocs/wp-content/plugins/site-mailer/modules/logs/module.php
<?php

namespace SiteMailer\Modules\Logs;

use SiteMailer\Classes\Module_Base;
use SiteMailer\Modules\Logs\Classes\Log_Handler;
use SiteMailer\Modules\Logs\Database\Logs_Table;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Class Module
 */
class Module extends Module_Base {

	/**
	 * Get module name.
	 * Retrieve the module name.
	 * @access public
	 * @return string Module name.
	 */
	public function get_name(): string {
		return 'logs';
	}

	public static function component_list(): array {
		return [
			'Log_Pull',
		];
	}


	public static function routes_list() : array {
		return [
			'Get_Logs',
			'Delete_Logs',
			'Refresh_Statuses',
		];
	}

	public function __construct() {
		$this->register_components();

		// this make sure the database table is created and or updated when needed
		Logs_Table::install();

		// Add actions for retry update logs
		Log_Handler::add_retry_actions();

		// Add cron daily cron jobs for remove expired logs
		Log_Handler::add_daily_job();

		$this->register_routes();
	}
}