• Main Page
  • Modules
  • Classes
  • Files
  • File List

controllers/api/file/linkAction/DownloadLibraryFileLinkAction.inc.php

00001 <?php
00014 import('lib.pkp.classes.linkAction.LinkAction');
00015 
00016 class DownloadLibraryFileLinkAction extends LinkAction {
00017 
00024    function DownloadLibraryFileLinkAction(&$request, &$libraryFile) {
00025       // Instantiate the redirect action request.
00026       $router =& $request->getRouter();
00027       import('lib.pkp.classes.linkAction.request.PostAndRedirectAction');
00028       $redirectRequest = new PostAndRedirectAction(
00029          $router->url(
00030             $request, null, 'api.file.FileApiHandler', 'enableLinkAction',
00031             null, $this->getActionArgs($libraryFile)),
00032          $router->url(
00033             $request, null, 'api.file.FileApiHandler', 'downloadLibraryFile',
00034             null, $this->getActionArgs($libraryFile))
00035       );
00036 
00037       // Configure the file link action.
00038       parent::LinkAction(
00039          'downloadFile', $redirectRequest, $libraryFile->getLocalizedName(),
00040          $libraryFile->getDocumentType()
00041       );
00042    }
00043 
00049    function getActionArgs(&$libraryFile) {
00050       assert(is_a($libraryFile, 'LibraryFile'));
00051 
00052       // Create the action arguments array.
00053       $args =  array('libraryFileId' => $libraryFile->getId());
00054 
00055       if ($libraryFile->getMonographId()) {
00056          $args['monographId'] = $libraryFile->getMonographId();
00057       }
00058 
00059       return $args;
00060    }
00061 }
00062 
00063 ?>

Generated on Mon Sep 17 2012 13:58:55 for Open Monograph Press by  doxygen 1.7.1