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

controllers/grid/settings/library/form/NewLibraryFileForm.inc.php

00001 <?php
00002 
00016 import('controllers.grid.files.form.LibraryFileForm');
00017 
00018 class NewLibraryFileForm extends LibraryFileForm {
00023    function NewLibraryFileForm($pressId) {
00024       parent::LibraryFileForm('controllers/grid/settings/library/form/newFileForm.tpl', $pressId);
00025       $this->addCheck(new FormValidator($this, 'temporaryFileId', 'required', 'settings.libraryFiles.fileRequired'));
00026    }
00027 
00032    function readInputData() {
00033       $this->readUserVars(array('temporaryFileId'));
00034       return parent::readInputData();
00035    }
00036 
00042    function execute($userId) {
00043       // Fetch the temporary file storing the uploaded library file
00044       $temporaryFileDao =& DAORegistry::getDAO('TemporaryFileDAO');
00045       $temporaryFile =& $temporaryFileDao->getTemporaryFile(
00046          $this->getData('temporaryFileId'),
00047          $userId
00048       );
00049       $libraryFileDao =& DAORegistry::getDAO('LibraryFileDAO');
00050       $libraryFileManager = new LibraryFileManager($this->pressId);
00051 
00052       // Convert the temporary file to a library file and store
00053       $libraryFile =& $libraryFileManager->copyFromTemporaryFile($temporaryFile, $this->getData('fileType'));
00054       assert($libraryFile);
00055       $libraryFile->setPressId($this->pressId);
00056       $libraryFile->setName($this->getData('libraryFileName'), null); // Localized
00057       $libraryFile->setType($this->getData('fileType'));
00058 
00059       $fileId = $libraryFileDao->insertObject($libraryFile);
00060 
00061       // Clean up the temporary file
00062       import('classes.file.TemporaryFileManager');
00063       $temporaryFileManager = new TemporaryFileManager();
00064       $temporaryFileManager->deleteFile($this->getData('temporaryFileId'), $userId);
00065 
00066       return $fileId;
00067    }
00068 }
00069 
00070 ?>

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