/**
  * Process partial/complete file download
  * @param array $args - array containing session id as an element with a key es_id 
  */
 public static function serve($args)
 {
     $session = new Db\Session();
     $session->load(@$args['es_id']);
     self::preDispatchGuest();
     $filename = $session->getGenesisUrl() ? $session->getGenesisUrl() : '';
     $download = new Download($session->getOwner(), $filename);
     $download->sendResponse();
 }
 /**
  * Process partial/complete file download
  * @param array $args - array containing session id as an element with a key es_id 
  */
 public static function serve($args)
 {
     $session = new Db_Session();
     $sessionData = $session->load(@$args['es_id'])->getData();
     $file = new File(@$sessionData['file_id']);
     if (!$file->isPublicShare()) {
         self::preDispatch(false);
     } else {
         self::preDispatchGuest(false);
     }
     $filename = isset($sessionData['genesis_url']) ? $sessionData['genesis_url'] : '';
     $download = new Download($sessionData['owner'], $filename);
     $download->sendResponse();
 }
Example #3
0
<?php

/**
 * ownCloud - Documents App
 *
 * @author Victor Dubiniuk
 * @copyright 2013 Victor Dubiniuk victor.dubiniuk@gmail.com
 *
 * This file is licensed under the Affero General Public License version 3 or
 * later.
 */
namespace OCA\Documents;

\OCP\JSON::checkLoggedIn();
$path = Helper::getArrayValueByKey($_GET, 'path');
if (!empty($path)) {
    if (\OC\Files\Filesystem::getMimeType($path) !== Filter_Office::NATIVE_MIMETYPE) {
        $fileInfo = \OC\Files\Filesystem::getFileInfo($path);
        $file = new File($fileInfo->getId());
        $genesis = new Genesis($file);
        $fullPath = $genesis->getPath();
    } else {
        $fullPath = '/files' . $path;
    }
    $download = new Download(\OCP\User::getUser(), $fullPath);
    $download->sendResponse();
}
exit;