diff --git a/bin/encryptext.php b/bin/encryptext.php
index 45ebf6fbdb..a78efa9297 100644
--- a/bin/encryptext.php
+++ b/bin/encryptext.php
@@ -1,8 +1,12 @@
Error
-您版本的用户数是{\$properties['user']},已经超过该版本的人数限制,请联系我们
+您版本的用户数是{\$properties['user']['value']},已经超过该版本的人数限制,请联系我们
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.
+The number of users is {\$properties['user']['value']} for the edition and has exceeded the limit, please contact us.
email:zentao@cnezsoft.com
tel:4006 889923
Web:www.zentao.net
@@ -34,15 +38,15 @@ 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");
+if(!empty(\$properties['user']) and \$properties['user']['value'] < \$user->count) die("$notice");
EOD;
$limitFunc =<<$line)
- {
- if(strpos(trim($line), 'account = $company;
+$order->users = $users;
+$order->ip = $ip;
+$order->mac = $mac;
+$order->type = $type;
+$passphrase = empty($order->account) ? 'try' : $order->account;
+createLicense($order, $dirName, '/tmp/encrypt/');
+$withLicense = "--with-license config/license/" . basename($file) . $order->account . ".txt --passphrase $passphrase";
+
+exec("/usr/local/ioncube/ioncube_encoder5 --copy config.php --copy phpexcel/ --copy tmp/ --copy hook/ --copy framework/ --copy config/ --copy view/ --copy lang/ $withLicense $file --update-target --into /tmp/encrypt/", $outError);
foreach($outError as $error)
{
$errorFile = substr($error, 0 , strpos($error, ':'));
@@ -180,5 +174,25 @@ foreach($outError as $error)
`cp $errorFile /tmp/encrypt/$relativeFile`;
}
echo "Ziping extension\n";
-`cd /tmp/encrypt/; zip -rm -9 $dirName$phpVersion.zip $dirName`;
+if(file_exists("/tmp/encrypt/$dirName$company.zip")) `rm /tmp/encrypt/$dirName$company.zip`;
+`cd /tmp/encrypt/; zip -rm -9 $dirName$company.zip $dirName`;
echo "Finished\n";
+
+function createLicense($order, $saveName, $encryptPath)
+{
+ echo "Creating license.\n";
+ $property = $order->users == 0 ? '' : "--property user=$order->users";
+ $expire = empty($order->account) ? '--expire-in 180d' : '';
+ if(!is_dir($encryptPath . $saveName))mkdir($encryptPath . $saveName);
+ if(!is_dir($encryptPath . $saveName . "/config"))mkdir($encryptPath . $saveName . '/config');
+ if(!is_dir($encryptPath . $saveName . "/config/license"))mkdir($encryptPath . $saveName . "/config/license");
+ $server = empty($order->ip) ? '' : $order->ip;
+ $server = !empty($order->mac) ? empty($server) ? "'{{$order->mac}}'" : "'$server{{$order->mac}}'" : $server;
+ $server = empty($server) ? '' : '--allowed-server ' . $server;
+ $expire = $order->type == 'year' ? "--expire-in 365d" : $expire;
+ $expire = $order->type == 'try' ? "--expire-in 30d" : $expire;
+ $expire = is_numeric($order->type) ? "--expire-in {$order->type}d" : $expire;
+ $passphrase = empty($order->account) ? 'try' : $order->account;
+ $license = $encryptPath . $saveName . '/config/license/' . $saveName . $order->account . '.txt';
+ echo `/usr/local/ioncube/make_license $property $expire --passphrase $passphrase -o $license`;
+}
diff --git a/bin/mklicense.php b/bin/mklicense.php
new file mode 100644
index 0000000000..c66b422a41
--- /dev/null
+++ b/bin/mklicense.php
@@ -0,0 +1,37 @@
+account = $company;
+$order->users = $users;
+$order->ip = $ip;
+$order->mac = $mac;
+$order->type = $type;
+createLicense($order, $dirName, '/tmp/encrypt/');
+echo "Ziping extension\n";
+if(file_exists("license$dirName$company.zip")) `rm license$dirName$company.zip`;
+`cd /tmp/encrypt/; zip -rm -9 license$dirName$company.zip $dirName`;
+echo "Finished\n";
+
+function createLicense($order, $saveName, $encryptPath)
+{
+ echo "Creating license.\n";
+ $property = $order->users == 0 ? '' : "--property user=$order->users";
+ $expire = empty($order->account) ? '--expire-in 180d' : '';
+ if(!is_dir($encryptPath . $saveName))mkdir($encryptPath . $saveName);
+ if(!is_dir($encryptPath . $saveName . "/config"))mkdir($encryptPath . $saveName . '/config');
+ if(!is_dir($encryptPath . $saveName . "/config/license"))mkdir($encryptPath . $saveName . "/config/license");
+ $server = empty($order->ip) ? '' : $order->ip;
+ $server = !empty($order->mac) ? empty($server) ? "'{{$order->mac}}'" : "'$server{{$order->mac}}'" : $server;
+ $server = empty($server) ? '' : '--allowed-server ' . $server;
+ $expire = $order->type == 'year' ? "--expire-in 365d" : $expire;
+ $expire = $order->type == 'try' ? "--expire-in 30d" : $expire;
+ $passphrase = empty($order->account) ? 'try' : $order->account;
+ $license = $encryptPath . $saveName . '/config/license/' . $saveName . $order->account . '.txt';
+ echo `/usr/local/ioncube/make_license $property $expire --passphrase $passphrase -o $license`;
+}
diff --git a/bin/syncext.php b/bin/syncext.php
index 0800c6ac29..8f41494aff 100644
--- a/bin/syncext.php
+++ b/bin/syncext.php
@@ -7,9 +7,9 @@
* @version $Id$
*/
-sudo pecl install channel://pecl.php.net/inotify-0.1.5
+//sudo pecl install channel://pecl.php.net/inotify-0.1.5
-extension=inotify.so" to php.ini
+//extension=inotify.so" to php.ini
/* Get params from argvs. */
if(!isset($argv[1])) die("php syncext.php from target sleep\n");