Esempio n. 1
0
 /**
  * Create packages for any deposits that don't have any or have been updated
  */
 function _processNeedPackaging(&$journal)
 {
     $depositDao =& DAORegistry::getDAO('DepositDAO');
     $depositQueue =& $depositDao->getNeedPackaging($journal->getId());
     $fileManager = new JournalFileManager($journal);
     $plnDir = $fileManager->filesDir . PLN_PLUGIN_ARCHIVE_FOLDER;
     // make sure the pln work directory exists
     // TOOD: use FileManager calls instead of PHP ones where possible
     if ($fileManager->fileExists($plnDir, 'dir') !== true) {
         $fileManager->mkdirtree($plnDir);
     }
     // loop though all of the deposits that need packaging
     while ($deposit =& $depositQueue->next()) {
         $depositPackage = new DepositPackage($deposit, $this);
         $depositPackage->packageDeposit();
         unset($deposit);
     }
 }