<?php
namespace Claromentis\Main\Controller;

$GLOBALS["__65da1b1ec2d" . "6653e8a0ab784" . "8e536215"] = (@$GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"] ?: array()) + array("_bf2c6b6e584a35001891ad" . "e22e2f0d7f" => base64_decode("ZXh0cmFfc" . "3R5bGVzLm" . "JvZHlfaHR" . "tbA=="), "_d5e3acfe493fa211" . "1d22dfb93da33d87" => base64_decode("X" . "1" . "8" . "="), "_a6a875455efd86c023adfa" . "39b53ced69" => base64_decode("ZXJyb3JfbWVzc2FnZ" . "V9zaW1wbGUuYm9keQ" . "=="), "_88ded35c" . "42da1dc40" . "c31feff4d" . "5ad27e" => base64_decode("VW5oYW5kbGVkIGV4Y2Vwd" . "Glvbjog"), "_6a0c33f2ce951b8a26b36ac1c8e819" . "f8" => base64_decode("ZGVidWdfc3R5bGVzLnZpc" . "2libGU="), "_5e3f28494fd2" . "b91b13299d42d" . "953005d" => base64_decode("ZXJyb3JfbWVzc2FnZS5ib2R5X2h" . "0bWw="), "_aed8da0f19091214b78f80351" . "048517c" => base64_decode("c3R" . "ybG" . "Vu"), "_e55bdd1709343f5b9" . "bb62e0c63f7a9a7" => base64_decode("aXNfb3RoZX" . "JfZXJyb3Iu" . "dmlzaWJsZQ" . "=="), "_6f43ab9e47ba8" . "90815846460580" . "ecc2b" => base64_decode("bWFpbi9lcnJv" . "cl9wYWdlLmh0" . "bWw="), "_f5c8a46a9b42bf027f02ec31d65" . "a30d0" => base64_decode("UGFnZSBub" . "3QgZm91bm" . "Q="), "_ce564760d6a8f" . "682527469ac784" . "d529e" => base64_decode("aXNfcGFnZV9ub3RfZm91bmQudmlzaWJsZQ=" . "="), "_fc9d731" . "4a9d9958" . "d8fa0a40" . "3ba8ff19" . "7" => base64_decode("Z2V0X" . "2NsYX" . "Nz"), "_573f5b707c86cf80841982d72" . "fc63a6e" => base64_decode("ZXJyb3JfbWVzc2FnZV9zaW1wbGVf" . "dmlzaWJsZS52aXNpYmxl"), "_2966c403895" . "516e0181c0b4" . "8bc2d8708" => base64_decode("U29tZXRoaW5nIHdlbnQgd" . "3JvbmcgYW5kIHRoYXQncy" . "BhbGwgd2Uga25vdw=="));
use Claromentis\Core\Http\TemplaterCallResponse;
use Psr\Log\LoggerInterface;
use Psr\Log\NullLogger;
use Symfony\Component\ErrorHandler\ErrorRenderer\HtmlErrorRenderer;
use Symfony\Component\HttpKernel\Exception\HttpException;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;




class ErrorPageController
{
    protected bool $debug;
    protected LoggerInterface $logger;
    public function __construct(bool $debug = false, LoggerInterface $logger = null)
    {
        $this->debug = $debug;
        $this->logger = $logger ?? new NullLogger();
    }
    public function ShowError(\Exception $e, $request, $code)
    {
        if (!$e instanceof HttpException) {
            $this->logger->error($GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"]["_88ded35c42da1dc40c3" . "1feff4d5ad27e"] . $GLOBALS["__65da1b1ec2d6653e8a0" . "ab7848e536215"]["_fc9d7314a9d9958d8fa0a403ba8ff19" . "7"]($e), $e->getTrace());
        }
        $template = $GLOBALS["__65da1b1ec2d6653e" . "8a0ab7848e536215"]["_6f43ab9e47ba890815846460" . "580ecc2b"];
        $args = [];
        $message = $e->getMessage();
        if ($GLOBALS["__65da1b1ec2d665" . "3e8a0ab7848e5362" . "15"]["_aed8da0f19091214" . "b78f80351048517c"]($message) == 0) {
            $message = $GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["_2966c403895516e018" . "1c0b48bc2d8708"];
        }
        $_ca8a1c63136e75bc7ff724f753b8595f = false;
        if ($e instanceof NotFoundHttpException) {
            $message = $GLOBALS["__65da1b1ec2d66" . "53e8a0ab7848e53" . "6215"]["_d5e3acfe493f" . "a2111d22dfb93" . "da33d87"]($GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"]["_f5c8a46a9b42bf027f02ec31d65a30d" . "0"]);
            $_ca8a1c63136e75bc7ff724f753b8595f = true;
        }
        if ($this->debug && 1) {
            
            
            
            $_dcf28f63b8bc197606f5dfbeeebd2513 = new HtmlErrorRenderer($this->debug);
            $args[$GLOBALS["__65da1b1ec2d6653e8a0ab7848e5362" . "15"]["_5e3f28494fd2b91b13299d42d95" . "3005d"]] = $_dcf28f63b8bc197606f5dfbeeebd2513->render($e)->getAsString();
            $args[$GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["_bf2c6b6e584a35001891ade22e2f0d7" . "f"]] = $_dcf28f63b8bc197606f5dfbeeebd2513->getStylesheet();
            $args[$GLOBALS["__65da1b1ec2d6653e8" . "a0ab7848e536215"]["_6a0c33f2ce951b8a" . "26b36ac1c8e819f8"]] = true;
        } else {
            $args[$GLOBALS["__65da1b1ec2d66" . "53e8a0ab7848e53" . "6215"]["_573f5b707c86cf80841982d72fc63a" . "6e"]] = 1;
            $args[$GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"]["_ce564760d6a8f682527469ac" . "784d529e"]] = $_ca8a1c63136e75bc7ff724f753b8595f;
            $args[$GLOBALS["__65da1b1ec" . "2d6653e8a0a" . "b7848e53621" . "5"]["_e55bdd1709343f5b" . "9bb62e0c63f7a9a7"]] = !$_ca8a1c63136e75bc7ff724f753b8595f;
            $args[$GLOBALS["__65da1b1ec2d6653e8a0ab" . "7848e536215"]["_a6a875455efd86c023adfa39b53c" . "ed69"]] = $message;
        }
        $_678d945258a520c3df1c42fe4b558f34 = $message;
        $_fd5a3a643834299cbdadfc3540ba0bcb = new TemplaterCallResponse($template, $args, $_678d945258a520c3df1c42fe4b558f34);
        $_fd5a3a643834299cbdadfc3540ba0bcb->http_status = $code;
        return $_fd5a3a643834299cbdadfc3540ba0bcb;
    }
}