diff --git a/op/op.ApproveDocument.php b/op/op.ApproveDocument.php index 5d84b477b..08f980201 100644 --- a/op/op.ApproveDocument.php +++ b/op/op.ApproveDocument.php @@ -27,6 +27,7 @@ include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.ClassEmail.php"); include("../inc/inc.DBInit.php"); +include("../inc/inc.ClassAccessOperation.php"); include("../inc/inc.Authentication.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.ClassController.php"); @@ -73,9 +74,12 @@ if ($latestContent->getVersion()!=$version) { UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("invalid_version")); } +/* Create object for checking access to certain operations */ +$accessop = new SeedDMS_AccessOperation($document, $user, $settings); + $olddocstatus = $content->getStatus(); -// verify if document has expired -if ($document->hasExpired()){ +// verify if document may be approved +if ($accessop->mayApprove()){ UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("access_denied")); } diff --git a/out/out.ApproveDocument.php b/out/out.ApproveDocument.php index dc343eb95..4b9efa878 100644 --- a/out/out.ApproveDocument.php +++ b/out/out.ApproveDocument.php @@ -61,8 +61,9 @@ $latestContent = $document->getLatestContent(); if ($latestContent->getVersion()!=$version) { UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("invalid_version")); } -// verify if document has expired -if ($document->hasExpired()){ + +// verify if document may be approved +if ($accessop->mayApprove()){ UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("access_denied")); }