<?php
/**
 * HappyFenceNG Total Enterprise Security Plugin
 * HAPPYWPRESS is a RazorVue Trademark.
 *
 * @package     HappyFenceNG
 * @developer   Simonluca Scillitani
 * @copyright   2025 RazorVue di Scillitani Simonluca
 * @link        https://razorvue.it
 * @author      RazorVue di Scillitani Simonluca
 * @brand       HappyWPress
 * @uri         https://happywpress.com
 * @set all
 */

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

/**PHPCS -> code compliance: we put useful comments where needed.. */
enum HappyFenceNGSym: string {

		case M01 = 'EXM-CA-M-SYM-FUN';
		case M02 = 'EXM-CA-M-SYM-PRE';
		case M03 = 'EXM-CA-M-SYM-BUN';
		case M04 = 'EXM-CA-M-SYM-CFL';
		case M05 = 'EXM-CA-M-SYM-DSE';
		case M06 = 'EXM-CA-M-SYM-PFL';
		case M07 = 'EXM-CA-M-SYM-GIP';

		case M08 = 'EXM-CA-M-SYM-ICK';
		case M09 = 'EXM-CA-M-SYM-NGL';
		case M10 = 'EXM-CA-M-SYM-MLG';
		case M11 = 'EXM-CA-M-SYM-MFA';
		case M12 = 'EXM-CA-M-SYM-PRV';
		case M13 = 'EXM-CA-M-SYM-RSH';
		case M14 = 'EXM-CA-M-SYM-AGG';

		case M15 = 'EXM-CA-M-SYM-SUS';
		case M16 = 'EXM-CA-M-SYM-UGD';
		case M17 = 'EXM-CA-IO-COR';
		case M18 = 'EXM-CA-IO-EBK';
		case M19 = 'EXM-CA-IO-FSC';
		case M20 = 'EXM-CA-IO-ICK';
		case M21 = 'EXM-CA-IO-LRE';

		case M22 = 'EXM-CA-IO-PGW';
		case M23 = 'EXM-CA-IO-RBL';
		case M24 = 'EXM-CA-IO-RBT';
		case M25 = 'EXM-CA-IO-SUS';
		case M26 = 'EXM-CA-IO-RIP';
		case M27 = 'EXM-CA-IO-MFK';
		case M28 = 'EXM-CA-IO-FAU';

		case M29 = 'EXM-CA-IO-404';
		case M30 = 'EXM-CA-IO-CFG';
		case M31 = 'EXM-CA-IO-IPB';
		case M32 = 'EXM-CA-IO-LET';
		case M33 = 'EXM-CA-IO-MAE';
		case M34 = 'EXM-CA-IO-PFS';
		case M35 = 'EXM-CA-IO-RSS';

		case M36 = 'EXM-CA-IO-UGD';
		case M37 = 'EXM-CA-IO-HPR';
		case M38 = 'EXM-CA-M-SYM-WPC';
		case M39 = 'EXM-CA-IO-IPBL';
		case M40 = 'EXM-CA-M-SYM-IPBL';
		case M41 = 'EXS-SC-D-OBJ-SS';
		case M42 = 'EMPTY-42';

		case M99 = 'EXM-CA-M-ACO';
		case E00 = 'CORE ERROR->';
		case E01 = 'EEP-IPBL-CO';
		case E02 = 'EEP-CFC-CO';
		case E03 = 'EEP-AGG-CO';
		case E04 = 'EEP-BUN-CO';
		case E05 = 'EEP-DSEC-CO';
		case E06 = 'EEP-FUN-CO';
		case E07 = 'EEP-GEO-CO';
		case E08 = 'EEP-CLISEC-CO';
		case E09 = 'EEP-INTE-CO';
		case E10 = 'EEP-MFA-CO';
		case E11 = 'EEP-MLOG-CO';
		case E12 = 'EEP-PF-CO';
		case E13 = 'EEP-PRE-CO';
		case E14 = 'EEP-PRI-CO';
		case E15 = 'EEP-RESH-CO';
		case E16 = 'EEP-SUSQ-CO';
		case E17 = 'EEP-UPG-CO';

	/**PHPCS -> code compliance: we put useful comments where needed..
	 *
	 * @param string $ty ....
	 * @param string $cl ....
	 */
	public static function err( $ty, $cl ): string {
		return self::E00->value . $cl . '->' . $ty->value;
	}
}
