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
[ 'iconv', self::ENGINE_ICONV, 'iconv', ], 'recode' => [ 'recode_string', self::ENGINE_RECODE, 'recode', ], 'mb' => [ 'mb_convert_encoding', self::ENGINE_MB, 'mbstring', ], 'none' => [ 'isset', self::ENGINE_NONE, '', ], ]; /** * Order of automatic detection of engines * * @var array */ private static $engineorder = [ 'iconv', 'mb', 'recode', ]; /** * Kanji encodings list * * @var string */ private static $kanjiEncodings = 'ASCII,SJIS,EUC-JP,JIS'; /** * Initializes encoding engine detecting available backends. */ public static function initEngine(): void { $engine = 'auto'; if (isset($GLOBALS['cfg']['RecodingEngine'])) { $engine = $GLOBALS['cfg']['RecodingEngine']; } /* Use user configuration */ if (isset(self::$enginemap[$engine])) { if (function_exists(self::$enginemap[$engine][0])) { self::$engine = self::$enginemap[$engine][1]; return; } Core::warnMissingExtension(self::$enginemap[$engine][2]); } /* Autodetection */ foreach (self::$engineorder as $engine) { if (function_exists(self::$enginemap[$engine][0])) { self::$engine = self::$enginemap[$engine][1]; return; } } /* Fallback to none conversion */ self::$engine = self::ENGINE_NONE; } /** * Setter for engine. Use with caution, mostly useful for testing. * * @param int $engine Engine encoding */ public static function setEngine(int $engine): void { self::$engine = $engine; } /** * Checks whether there is any charset conversion supported */ public static function isSupported(): bool { if (self::$engine === null) { self::initEngine(); } return self::$engine != self::ENGINE_NONE; } /** * Converts encoding of text according to parameters with detected * conversion function. * * @param string $src_charset source charset * @param string $dest_charset target charset * @param string $what what to convert * * @return string converted text */ public static function convertString( string $src_charset, string $dest_charset, string $what ): string { if ($src_charset == $dest_charset) { return $what; } if (self::$engine === null) { self::initEngine(); } switch (self::$engine) { case self::ENGINE_RECODE: return recode_string($src_charset . '..' . $dest_charset, $what); case self::ENGINE_ICONV: return iconv($src_charset, $dest_charset . ($GLOBALS['cfg']['IconvExtraParams'] ?? ''), $what); case self::ENGINE_MB: return mb_convert_encoding($what, $dest_charset, $src_charset); default: return $what; } } /** * Detects whether Kanji encoding is available */ public static function canConvertKanji(): bool { return $GLOBALS['lang'] === 'ja'; } /** * Setter for Kanji encodings. Use with caution, mostly useful for testing. */ public static function getKanjiEncodings(): string { return self::$kanjiEncodings; } /** * Setter for Kanji encodings. Use with caution, mostly useful for testing. * * @param string $value Kanji encodings list */ public static function setKanjiEncodings(string $value): void { self::$kanjiEncodings = $value; } /** * Reverses SJIS & EUC-JP position in the encoding codes list */ public static function kanjiChangeOrder(): void { $parts = explode(',', self::$kanjiEncodings); if ($parts[1] === 'EUC-JP') { self::$kanjiEncodings = 'ASCII,SJIS,EUC-JP,JIS'; return; } self::$kanjiEncodings = 'ASCII,EUC-JP,SJIS,JIS'; } /** * Kanji string encoding convert * * @param string $str the string to convert * @param string $enc the destination encoding code * @param string $kana set 'kana' convert to JIS-X208-kana * * @return string the converted string */ public static function kanjiStrConv(string $str, string $enc, string $kana): string { if ($enc == '' && $kana == '') { return $str; } $string_encoding = mb_detect_encoding($str, self::$kanjiEncodings); if ($string_encoding === false) { $string_encoding = 'utf-8'; } if ($kana === 'kana') { $dist = mb_convert_kana($str, 'KV', $string_encoding); $str = $dist; } if ($string_encoding != $enc && $enc != '') { return mb_convert_encoding($str, $enc, $string_encoding); } return $str; } /** * Kanji file encoding convert * * @param string $file the name of the file to convert * @param string $enc the destination encoding code * @param string $kana set 'kana' convert to JIS-X208-kana * * @return string the name of the converted file */ public static function kanjiFileConv(string $file, string $enc, string $kana): string { if ($enc == '' && $kana == '') { return $file; } $tmpfname = (string) tempnam($GLOBALS['config']->getUploadTempDir(), $enc); $fpd = fopen($tmpfname, 'wb'); if ($fpd === false) { return $file; } $fps = fopen($file, 'r'); if ($fps === false) { return $file; } self::kanjiChangeOrder(); while (! feof($fps)) { $line = fgets($fps, 4096); if ($line === false) { continue; } $dist = self::kanjiStrConv($line, $enc, $kana); fwrite($fpd, $dist); } self::kanjiChangeOrder(); fclose($fps); fclose($fpd); unlink($file); return $tmpfname; } /** * Defines radio form fields to switch between encoding modes * * @return string HTML code for the radio controls */ public static function kanjiEncodingForm(): string { $template = new Template(); return $template->render('encoding/kanji_encoding_form'); } /** * Lists available encodings. * * @return array */ public static function listEncodings(): array { if (self::$engine === null) { self::initEngine(); } /* Most engines do not support listing */ if (self::$engine != self::ENGINE_MB) { return $GLOBALS['cfg']['AvailableCharsets']; } return array_intersect( array_map('strtolower', mb_list_encodings()), $GLOBALS['cfg']['AvailableCharsets'] ); } }