diff --git a/bin/encryptext.php b/bin/encryptext.php index 3fc03b64e7..45ebf6fbdb 100644 --- a/bin/encryptext.php +++ b/bin/encryptext.php @@ -13,6 +13,38 @@ $defaultValue = ""; $moduleDir = $filePath . '/module/'; $modules = glob($moduleDir . '*'); echo "Seting default value for control\n"; +$notice = << + + + + Error + + +您版本的用户数是{\$properties['user']},已经超过该版本的人数限制,请联系我们
+email:zentao@cnezsoft.com
+电话:4006 889923
+网址:www.zentao.net
+

+The number of users is {\$properties['user']} for the edition and has exceeded the limit, please contact us.
+email:zentao@cnezsoft.com
+tel:4006 889923
+Web:www.zentao.net
+ + +EOD; +$limitUser =<<dao->select("COUNT('*') as count")->from(TABLE_USER)->where('deleted')->eq(0)->fetch(); +if(!empty(\$properties) and \$properties['user'] < \$user->count) die("$notice"); +EOD; +$limitFunc =<<getFileName(); + $controlContent = file_get_contents($controlPath); + $controlLines = explode("\n", $controlContent); + if($controlPath == $fileName) + { + $endLine = $construct->getEndLine() - 1; + $controlLines[$endLine] = $limitUser . "\n" . $controlLines[$endLine]; + } + else + { + $methods = $reflection->getMethods(); + $startLine = $methods[0]->getStartLine() - 1; + $controlLines[$startLine] = $limitFunc . "\n" . $controlLines[$startLine]; + } + $controlContent = join("\n", $controlLines); + file_put_contents($controlPath, $controlContent); + } foreach($reflection->getMethods(ReflectionMethod::IS_PUBLIC) as $method) { $methodName = strtolower($method->name); @@ -54,7 +106,7 @@ foreach($modules as $module) $line = trim($line); if(preg_match("/^class +($className) +extends +/i", $line, $class) == 1) $extClassName = strtolower($class[1]); if(preg_match("/^class +(my$className) +extends +/i", $line, $class) == 1) $extClassName = strtolower($class[1]); - if(preg_match("/^public +function +$methodName/i", $line) == 1) + if(preg_match("/^(public)?\s+function\s+$methodName/i", $line) == 1) { $params = strstr($line, '('); if(preg_match('/^(.+)$/', $params) == 0) continue; @@ -119,7 +171,7 @@ foreach(glob("$file/module/*/ext/model/*.php") as $fileName) /* encrypt file*/ echo "Encrypting extension\n"; if(!is_dir('/tmp/encrypt'))mkdir("/tmp/encrypt"); -exec("/home/z/ioncubeEncoder/ioncube_encoder$phpVersion --expire-in 30d --copy config.php --copy phpexcel/ --copy tmp/ --copy hook --copy framework/ --copy config/ --copy view/ --copy lang/ $file --update-target --into /tmp/encrypt/", $outError); +exec("/home/z/ioncubeEncoder/ioncube_encoder$phpVersion --expire-in 180d --property user=3 --copy config.php --copy phpexcel/ --copy tmp/ --copy hook --copy framework/ --copy config/ --copy view/ --copy lang/ $file --update-target --into /tmp/encrypt/", $outError); foreach($outError as $error) { $errorFile = substr($error, 0 , strpos($error, ':'));