Ejemplo n.º 1
0
 /**
  * Checks whether a share has expired, calls unshareItem() if yes.
  * @param array $item Share data (usually database row)
  * @return boolean True if item was expired, false otherwise.
  */
 protected static function expireItem(array $item)
 {
     $result = false;
     // only use default expiration date for link shares
     if ((int) $item['share_type'] === self::SHARE_TYPE_LINK) {
         // calculate expiration date
         if (!empty($item['expiration'])) {
             $userDefinedExpire = new \DateTime($item['expiration']);
             $expires = $userDefinedExpire->getTimestamp();
         } else {
             $expires = null;
         }
         // get default expiration settings
         $defaultSettings = Helper::getDefaultExpireSetting();
         $expires = Helper::calculateExpireDate($defaultSettings, $item['stime'], $expires);
         if (is_int($expires)) {
             $now = time();
             if ($now > $expires) {
                 self::unshareItem($item);
                 $result = true;
             }
         }
     }
     return $result;
 }