diff --git a/lib/browse/CategoryBrowser.inc b/lib/browse/CategoryBrowser.inc index 5f42cca..ac86b40 100644 --- a/lib/browse/CategoryBrowser.inc +++ b/lib/browse/CategoryBrowser.inc @@ -106,9 +106,10 @@ class CategoryBrowser extends Browser { $results["accessDenied"] = false; while ($sql->next_record()) { // check permissions - if (Permission::userHasDocumentReadPermission($sql->f("document_id"))) { - $oDocument = & Document::get($sql->f("document_id")); - if ($oDocument->isLive()) { + $oDocument = & Document::get($sql->f("document_id")); + + if (Permission::userHasDocumentReadPermission($oDocument)) { + if ($oDocument->isLive()) { $results["documents"][] = $oDocument; } } else { diff --git a/lib/browse/DocumentTypeBrowser.inc b/lib/browse/DocumentTypeBrowser.inc index 3226f84..0dc7677 100644 --- a/lib/browse/DocumentTypeBrowser.inc +++ b/lib/browse/DocumentTypeBrowser.inc @@ -98,8 +98,9 @@ class DocumentTypeBrowser extends Browser { $results["accessDenied"] = false; while ($sql->next_record()) { // check permission - if (Permission::userHasDocumentReadPermission($sql->f("id"))) { - $oDocument = & Document::get($sql->f("id")); + $oDocument = & Document::get($sql->f("id")); + if (Permission::userHasDocumentReadPermission($oDocument)) { + if ($oDocument->isLive()) { $results["documents"][] = $oDocument; } diff --git a/presentation/lookAndFeel/knowledgeTree/documentmanagement/downloadBL.php b/presentation/lookAndFeel/knowledgeTree/documentmanagement/downloadBL.php index cc11604..6a3b0e4 100644 --- a/presentation/lookAndFeel/knowledgeTree/documentmanagement/downloadBL.php +++ b/presentation/lookAndFeel/knowledgeTree/documentmanagement/downloadBL.php @@ -40,7 +40,7 @@ require_once("$default->fileSystemRoot/lib/visualpatterns/PatternCustom.inc"); if (checkSession(true)) { if (isset($fDocumentID)) { $oDocument = Document::get($fDocumentID); - if (Permission::userHasDocumentReadPermission($fDocumentID)) { + if (Permission::userHasDocumentReadPermission($oDocument)) { if (isset($fForInlineView)) { $oDocumentTransaction = & new DocumentTransaction($fDocumentID, "Inline view", VIEW); $oDocumentTransaction->create(); diff --git a/presentation/lookAndFeel/knowledgeTree/documentmanagement/emailBL.php b/presentation/lookAndFeel/knowledgeTree/documentmanagement/emailBL.php index 3e19d5f..724a09b 100644 --- a/presentation/lookAndFeel/knowledgeTree/documentmanagement/emailBL.php +++ b/presentation/lookAndFeel/knowledgeTree/documentmanagement/emailBL.php @@ -141,7 +141,7 @@ if (checkSession()) { $oDocument = Document::get($fDocumentID); //if the user can view the document, they can email a link to it - if (Permission::userHasDocumentReadPermission($fDocumentID)) { + if (Permission::userHasDocumentReadPermission($oDocument)) { if (isset($fSendEmail)) { // explode group and user ids $aGroupIDs = explode(",", $groupNewRight); diff --git a/presentation/lookAndFeel/knowledgeTree/documentmanagement/viewHistoryBL.php b/presentation/lookAndFeel/knowledgeTree/documentmanagement/viewHistoryBL.php index 4a1295b..b71ca63 100644 --- a/presentation/lookAndFeel/knowledgeTree/documentmanagement/viewHistoryBL.php +++ b/presentation/lookAndFeel/knowledgeTree/documentmanagement/viewHistoryBL.php @@ -52,8 +52,9 @@ require_once("$default->fileSystemRoot/presentation/Html.inc"); if (checkSession()) { require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc"); if (isset($fDocumentID)) { - if (Permission::userHasDocumentReadPermission($fDocumentID)) { - $oDocument = & Document::get($fDocumentID); + $oDocument = & Document::get($fDocumentID); + if (Permission::userHasDocumentReadPermission($oDocument)) { + $oPatternCustom = & new PatternCustom(); $oPatternCustom->setHtml(getPage($oDocument->getID(), $oDocument->getFolderID(), $oDocument->getName())); $main->setCentralPayload($oPatternCustom); diff --git a/presentation/lookAndFeel/knowledgeTree/subscriptions/addSubscriptionBL.php b/presentation/lookAndFeel/knowledgeTree/subscriptions/addSubscriptionBL.php index 7c45bcc..0079692 100644 --- a/presentation/lookAndFeel/knowledgeTree/subscriptions/addSubscriptionBL.php +++ b/presentation/lookAndFeel/knowledgeTree/subscriptions/addSubscriptionBL.php @@ -42,10 +42,12 @@ require_once("$default->fileSystemRoot/presentation/Html.inc"); * @param integer the subscription type */ function checkPermission($iExternalID, $iSubscriptionType) { - if ($iSubscriptionType == SubscriptionConstants::subscriptionType("FolderSubscription")) { - return Permission::userHasFolderReadPermission($iExternalID); + if ($iSubscriptionType == SubscriptionConstants::subscriptionType("FolderSubscription")) { + $oFolder = Folder::get($iExternalID); + return Permission::userHasFolderReadPermission($oFolder); } else { - return Permission::userHasDocumentReadPermission($iExternalID); + $oDocument = Document::get($iExternalID); + return Permission::userHasDocumentReadPermission($oDocument); } } // only if we have a valid session @@ -53,6 +55,8 @@ if (checkSession()) { require_once("$default->fileSystemRoot/lib/visualpatterns/PatternCustom.inc"); require_once("subscriptionUI.inc"); + require_once("$default->fileSystemRoot/lib/foldermanagement/Folder.inc"); + require_once("$default->fileSystemRoot/lib/documentmanagement/Document.inc"); $oPatternCustom = & new PatternCustom();