Advertisement
Guest User

Untitled

a guest
Dec 28th, 2018
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.34 KB | None | 0 0
  1. <?php
  2. /**
  3. *
  4. * @ This file is created by http://DeZender.Net
  5. * @ deZender (PHP7 Decoder for ionCube Encoder)
  6. *
  7. * @ Version : 4.0.8.0
  8. * @ Author : DeZender
  9. * @ Release on : 12.11.2018
  10. * @ Official site : http://DeZender.Net
  11. *
  12. */
  13.  
  14. namespace core\framework;
  15.  
  16. class LicenseManager
  17. {
  18. const COMPONENT_SERVERLINK = 'SERVERLINK';
  19. const COMPONENT_FSSYNC = 'FSSYNC';
  20. const COMPONENT_ENTERPRISE = 'ENTERPRISE';
  21. const COMPONENT_SALESFORCE = 'SALESFORCE';
  22. const COMPONENT_PATTERNSEARCH = 'PATTERNSEARCH';
  23. const COMPONENT_FIPS140 = 'FIPS140';
  24.  
  25. private function getLicenseData($xmldata)
  26. {
  27. $findme1 = '<LicenseData>';
  28. $findme2 = '</LicenseData>';
  29. $pos1 = strpos($xmldata, $findme1);
  30. $pos2 = strpos($xmldata, $findme2) + 14;
  31. return rtrim(ltrim(substr($xmldata, $pos1, $pos2 - $pos1)));
  32. }
  33.  
  34. private function getExtensionData($xmldata)
  35. {
  36. $findme1 = '<ExtensionData>';
  37. $findme2 = '</ExtensionData>';
  38. $pos1 = strpos($xmldata, $findme1);
  39. $pos2 = strpos($xmldata, $findme2) + 16;
  40. return rtrim(ltrim(substr($xmldata, $pos1, $pos2 - $pos1)));
  41. }
  42.  
  43. private function getSignatureData($xmldata)
  44. {
  45. $findme1 = '<SignatureData>';
  46. $findme2 = '</SignatureData>';
  47. $pos1 = strpos($xmldata, $findme1);
  48. $pos2 = strpos($xmldata, $findme2) + 16;
  49. return rtrim(ltrim(substr($xmldata, $pos1, $pos2 - $pos1)));
  50. }
  51.  
  52. public function getLicenseInfo()
  53. {
  54. $xmldata = SettingsManager::getInstance()->getSetting('INSTALL_LICENSE', 'string', '');
  55.  
  56. if ($xmldata == '') {
  57. return false;
  58. }
  59.  
  60. $licensedata = $this->getLicenseData($xmldata);
  61. $signaturedata = $this->getSignatureData($xmldata);
  62. $signaturevalue = $this->getSignatureValue($signaturedata);
  63. $license = $this->getLicense($licensedata);
  64. $license->setSignatureData($signaturevalue);
  65. return $license;
  66. }
  67.  
  68. public function getActiveUsers()
  69. {
  70. $userdata = new UserDataStore();
  71. return $userdata->getLicensedUserCount();
  72. }
  73.  
  74. public function getMaxUserLimit()
  75. {
  76. return SettingsManager::getInstance()->getSuperAdminSetting('SITESUPERADMIN_MAX_NUMBEROFUSERS', 'int', '0');
  77. }
  78.  
  79. public function splaReport()
  80. {
  81. global $g_log;
  82. $g_log->logDebug('Doing SPLA Check...');
  83. $keyrds = new KeyRecordDataStore();
  84. $keyrds->deleteKeyRecord('splacheckerror');
  85.  
  86. if (!extension_loaded('curl')) {
  87. $key1 = new KeyRecord();
  88. $key1->setKey('splacheckerror');
  89. $key1->setValue('Activation Error: PHP CURL Not Found');
  90. $keyrds->addKeyRecord($key1);
  91. return NULL;
  92. }
  93.  
  94. $url = 'https://portal.getfilecloud.com/admin/';
  95. $rootDir = realpath(__DIR__ . '/../..');
  96. $certfile = $rootDir . DIRECTORY_SEPARATOR . 'core' . DIRECTORY_SEPARATOR . 'framework' . DIRECTORY_SEPARATOR . 'cacert.pem';
  97. $options = [CURLOPT_RETURNTRANSFER => true, CURLOPT_HEADER => false, CURLOPT_FOLLOWLOCATION => false, CURLOPT_ENCODING => '', CURLOPT_USERAGENT => 'fcserveragent', CURLOPT_AUTOREFERER => true, CURLOPT_CONNECTTIMEOUT => 120, CURLOPT_TIMEOUT => 120, CURLOPT_MAXREDIRS => 10, CURLOPT_SSL_VERIFYPEER => 0, CURLOPT_CAINFO => $certfile, CURLOPT_SSL_VERIFYHOST => 0];
  98. $count = $this->getActiveUsers();
  99. $serverurl = SettingsManager::getInstance()->getSetting('TONIDOCLOUD_SERVER_URL');
  100. $license = $this->getLicenseInfo();
  101. $params = 'op=splareport&licenseemailid=' . rawurlencode($license->getID()) . '&' . 'licensename=' . rawurlencode($license->getName()) . '&' . 'licensecompany=' . rawurlencode($license->getCompany()) . '&' . 'issuedate=' . rawurlencode($license->getIssueDate()) . '&' . 'expirydate=' . rawurlencode($license->getExpiryDate()) . '&' . 'sitehost=' . rawurlencode(gethostname()) . '&' . 'serverurl=' . rawurlencode($serverurl) . '&' . 'count=' . rawurlencode($count);
  102. $g_log->logDebug($params);
  103. $ch = curl_init($url);
  104. curl_setopt_array($ch, $options);
  105. curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
  106. $settingsMgr = SettingsManager::getInstance();
  107. $proxyurl = $settingsMgr->getProxyUrl();
  108. $proxyauth = $settingsMgr->getProxyAuth();
  109.  
  110. if ($proxyurl != '') {
  111. curl_setopt($ch, CURLOPT_PROXY, $proxyurl);
  112.  
  113. if ($proxyauth != '') {
  114. curl_setopt($ch, CURLOPT_PROXYUSERPWD, $proxyauth);
  115. }
  116. }
  117.  
  118. $content = curl_exec($ch);
  119. $err = curl_errno($ch);
  120. $errmsg = curl_error($ch);
  121. $header = curl_getinfo($ch);
  122. .................................................................
  123. .......................................
  124. ..............
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement