protected function loadPublicletData($file)
 {
     $lines = file($file);
     $id = str_replace(".php", "", basename($file));
     $code = $lines[3] . $lines[4] . $lines[5];
     eval($code);
     $dataModified = md5($inputData) != $id;
     $publicletData = unserialize($inputData);
     $publicletData["SECURITY_MODIFIED"] = $dataModified;
     require_once INSTALL_PATH . "/server/classes/class.PublicletCounter.php";
     $publicletData["DOWNLOAD_COUNT"] = PublicletCounter::getCount($id);
     return $publicletData;
 }
示例#2
0
 public function getCurrentDownloadCounter($hash)
 {
     return PublicletCounter::getCount($hash);
 }
示例#3
0
 public static function loadPublicletData($id)
 {
     $dlFolder = ConfService::getCoreConf("PUBLIC_DOWNLOAD_FOLDER");
     $file = $dlFolder . "/" . $id . ".php";
     if (!is_file($file)) {
         return array();
     }
     $lines = file($file);
     $inputData = '';
     $code = $lines[3] . $lines[4] . $lines[5];
     eval($code);
     $dataModified = self::checkHash($inputData, $id);
     //(md5($inputData) != $id);
     $publicletData = unserialize($inputData);
     $publicletData["SECURITY_MODIFIED"] = $dataModified;
     if (!isset($publicletData["REPOSITORY"])) {
         $publicletData["DOWNLOAD_COUNT"] = PublicletCounter::getCount($id);
     }
     $publicletData["PUBLICLET_PATH"] = $file;
     return $publicletData;
 }
示例#4
0
 /**
  * Find all expired shares and remove them.
  * @param bool|true $currentUser
  * @return array
  */
 public function clearExpiredFiles($currentUser = true)
 {
     if ($currentUser) {
         $loggedUser = AuthService::getLoggedUser();
         $userId = $loggedUser->getId();
         $originalUser = null;
     } else {
         $originalUser = AuthService::getLoggedUser()->getId();
         $userId = null;
     }
     $deleted = array();
     $switchBackToOriginal = false;
     $publicLets = $this->listShares($currentUser ? $userId : '');
     foreach ($publicLets as $hash => $publicletData) {
         if ($publicletData === false) {
             continue;
         }
         if ($currentUser && (!isset($publicletData["OWNER_ID"]) || $publicletData["OWNER_ID"] != $userId)) {
             continue;
         }
         if (isset($publicletData["EXPIRE_TIME"]) && is_numeric($publicletData["EXPIRE_TIME"]) && $publicletData["EXPIRE_TIME"] > 0 && $publicletData["EXPIRE_TIME"] < time() || isset($publicletData["DOWNLOAD_LIMIT"]) && $publicletData["DOWNLOAD_LIMIT"] > 0 && $publicletData["DOWNLOAD_LIMIT"] <= PublicletCounter::getCount($hash)) {
             if (!$currentUser) {
                 $switchBackToOriginal = true;
             }
             $this->deleteExpiredPubliclet($hash, $publicletData);
             $deleted[] = $publicletData["FILE_PATH"];
         }
     }
     if ($switchBackToOriginal) {
         AuthService::logUser($originalUser, "", true);
     }
     return $deleted;
 }
 public static function loadPublicletData($id)
 {
     $dlFolder = ConfService::getCoreConf("PUBLIC_DOWNLOAD_FOLDER");
     $file = $dlFolder . "/" . $id . ".php";
     $lines = file($file);
     $inputData = '';
     $code = $lines[3] . $lines[4] . $lines[5];
     eval($code);
     $dataModified = md5($inputData) != $id;
     $publicletData = unserialize($inputData);
     $publicletData["SECURITY_MODIFIED"] = $dataModified;
     $publicletData["DOWNLOAD_COUNT"] = PublicletCounter::getCount($id);
     $publicletData["PUBLICLET_PATH"] = $file;
     return $publicletData;
 }