, Jam Warehouse (Pty) Ltd, South Africa * @package presentation.lookAndFeel.knowledgeTree.documentmanagement */ require_once("../../../../config/dmsDefaults.php"); require_once("$default->fileSystemRoot/lib/security/permission.inc"); require_once("$default->fileSystemRoot/lib/documentmanagement/PhysicalDocumentManager.inc"); require_once("$default->fileSystemRoot/lib/documentmanagement/DocumentTransaction.inc"); require_once("$default->fileSystemRoot/lib/documentmanagement/Document.inc"); require_once("$default->fileSystemRoot/lib/visualpatterns/PatternCustom.inc"); if (checkSession()) { if (isset($fDocumentID)) { $oDocument = Document::get($fDocumentID); if (Permission::userHasDocumentReadPermission($fDocumentID)) { if (isset($fForInlineView)) { $oDocumentTransaction = & new DocumentTransaction($fDocumentID, "Inline view", VIEW); $oDocumentTransaction->create(); PhysicalDocumentManager::inlineViewPhysicalDocument($fDocumentID); } else { //if the user has document read permission, perform the download if (isset($fVersion)) { // we're downloading an old version of the document $oDocumentTransaction = & new DocumentTransaction($fDocumentID, "Document version $fVersion downloaded", DOWNLOAD); $oDocumentTransaction->create(); // if the document is currently checked out, and we're the version we're downloading // is the same as the current version, then download the current version of the document if ($oDocument->getIsCheckedOut() && ($fVersion == $oDocument->getVersion())) { PhysicalDocumentManager::downloadPhysicalDocument($fDocumentID); } else { PhysicalDocumentManager::downloadVersionedPhysicalDocument($fDocumentID, $fVersion); } } else { // download the current version $oDocumentTransaction = & new DocumentTransaction($fDocumentID, "Document downloaded", DOWNLOAD); $oDocumentTransaction->create(); PhysicalDocumentManager::downloadPhysicalDocument($fDocumentID); } exit; } } else { require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc"); $oPatternCustom = new PatternCustom(); if ($oDocument) { $oPatternCustom->setHtml("graphicsUrl/widgets/back.gif\" border=\"0\" />\n"); } else { $oPatternCustom->setHtml("graphicsUrl/widgets/back.gif\" border=\"0\" />\n"); } $main->setErrorMessage("Either you do not have permission to view this document, or the document you have chosen no longer exists on the file system."); $main->setCentralPayload($oPatternCustom); $main->render(); } } else { require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc"); $oPatternCustom = new PatternCustom(); $oPatternCustom->setHtml("graphicsUrl/widgets/back.gif\" border=\"0\" />\n"); $main->setErrorMessage("You have not chosen a document to view"); $main->setCentralPayload($oPatternCustom); $main->render(); } } ?>