diff --git a/classes/module/ModuleHandler.class.php b/classes/module/ModuleHandler.class.php index d8581b0dc..7206adc91 100644 --- a/classes/module/ModuleHandler.class.php +++ b/classes/module/ModuleHandler.class.php @@ -207,6 +207,17 @@ class ModuleHandler extends Handler { unset($module_info); } + + // if the secret document permission does not have, specify HTTP 403 + if(Context::getRequestMethod() == 'GET') + { + $oDocumentModel = getModel('document'); + $oDocument = $oDocumentModel->getDocument($this->document_srl); + if($oDocument->isSecret() && !$oDocument->isGranted()) + { + $this->httpStatusCode = '403'; + } + } } } @@ -1050,6 +1061,12 @@ class ModuleHandler extends Handler } } + // Set http status code + if($this->httpStatusCode && (!$oModule->getHttpStatusCode() || $oModule->getHttpStatusCode() == '200')) + { + $oModule->setHttpStatusCode($this->httpStatusCode); + } + // Set http status message self::_setHttpStatusMessage($oModule->getHttpStatusCode());