diff --git a/classes/module/ModuleObject.class.php b/classes/module/ModuleObject.class.php
index 2ce21b7d0..765b95ad0 100644
--- a/classes/module/ModuleObject.class.php
+++ b/classes/module/ModuleObject.class.php
@@ -277,9 +277,9 @@ class ModuleObject extends BaseObject
}
// Check permission
- if($this->checkPermission($grant) !== true)
+ if(!$this->checkPermission($grant, $this->user))
{
- $this->stop('msg_not_permitted_act');
+ $this->stop($this->user->isMember() ? 'msg_not_permitted_act' : 'msg_not_logged');
return false;
}
}
@@ -293,9 +293,9 @@ class ModuleObject extends BaseObject
$grant = ModuleModel::getInstance()->getGrant($this->module_info, $this->user, $this->xml_info);
// Check permission
- if($this->checkPermission($grant) !== true)
+ if(!$this->checkPermission($grant, $this->user))
{
- $this->stop('msg_not_permitted_act');
+ $this->stop($this->user->isMember() ? 'msg_not_permitted_act' : 'msg_not_logged');
return false;
}
}
@@ -357,7 +357,7 @@ class ModuleObject extends BaseObject
// If permission is 'member', check logged-in
else if($permission == 'member')
{
- if(Context::get('is_logged'))
+ if($member_info->member_srl)
{
return true;
}
diff --git a/modules/board/board.view.php b/modules/board/board.view.php
index 26a03a65d..f2be096aa 100644
--- a/modules/board/board.view.php
+++ b/modules/board/board.view.php
@@ -131,7 +131,7 @@ class boardView extends board
**/
if(!$this->grant->access || !$this->grant->list)
{
- return $this->dispBoardMessage('msg_not_permitted');
+ $this->dispBoardMessage($this->user->isMember() ? 'msg_not_permitted' : 'msg_not_logged');
}
/**
@@ -180,6 +180,10 @@ class boardView extends board
$this->setRedirectUrl($output->getPermanentUrl());
return;
}
+ if ($this->getHttpStatusCode() > 200)
+ {
+ return;
+ }
// list config, columnList setting
$this->listConfig = BoardModel::getListConfig($this->module_info->module_srl);
@@ -285,8 +289,8 @@ class boardView extends board
else
{
// if the document is not existed, then alert a warning message
- Context::set('document_srl','',true);
- $this->alertMessage('msg_not_founded', 404);
+ Context::set('document_srl', null, true);
+ $this->dispBoardMessage('msg_not_founded', 404);
}
/**
@@ -306,8 +310,8 @@ class boardView extends board
if(!$this->grant->view && !$oDocument->isGranted())
{
$oDocument = DocumentModel::getDocument(0);
- Context::set('document_srl','',true);
- $this->alertMessage('msg_not_permitted', 403);
+ Context::set('document_srl', null, true);
+ $this->dispBoardMessage($this->user->isMember() ? 'msg_not_permitted' : 'msg_not_logged');
}
else
{
@@ -778,7 +782,7 @@ class boardView extends board
// check grant
if(!$this->grant->write_document)
{
- return $this->dispBoardMessage('msg_not_permitted');
+ return $this->dispBoardMessage($this->user->isMember() ? 'msg_not_permitted' : 'msg_not_logged');
}
/**
@@ -964,7 +968,7 @@ class boardView extends board
// check grant
if(!$this->grant->write_document)
{
- return $this->dispBoardMessage('msg_not_permitted');
+ return $this->dispBoardMessage($this->user->isMember() ? 'msg_not_permitted' : 'msg_not_logged');
}
// get the document_srl from request
@@ -1035,14 +1039,14 @@ class boardView extends board
// check grant
if(!$this->grant->write_comment)
{
- return $this->dispBoardMessage('msg_not_permitted');
+ return $this->dispBoardMessage($this->user->isMember() ? 'msg_not_permitted' : 'msg_not_logged');
}
// get the document information
$oDocument = DocumentModel::getDocument($document_srl);
if(!$oDocument->isExists())
{
- return $this->dispBoardMessage('msg_not_founded');
+ return $this->dispBoardMessage('msg_not_founded', 404);
}
// Check allow comment
@@ -1077,7 +1081,7 @@ class boardView extends board
// check grant
if(!$this->grant->write_comment)
{
- return $this->dispBoardMessage('msg_not_permitted');
+ return $this->dispBoardMessage($this->user->isMember() ? 'msg_not_permitted' : 'msg_not_logged');
}
// get the parent comment ID
@@ -1095,11 +1099,11 @@ class boardView extends board
// if the comment is not existed, opoup an error message
if(!$oSourceComment->isExists())
{
- return $this->dispBoardMessage('msg_not_founded');
+ return $this->dispBoardMessage('msg_not_founded', 404);
}
if(Context::get('document_srl') && $oSourceComment->get('document_srl') != Context::get('document_srl'))
{
- return $this->dispBoardMessage('msg_not_founded');
+ return $this->dispBoardMessage('msg_not_founded', 404);
}
// Check allow comment
@@ -1135,7 +1139,7 @@ class boardView extends board
// check grant
if(!$this->grant->write_comment)
{
- return $this->dispBoardMessage('msg_not_permitted');
+ return $this->dispBoardMessage($this->user->isMember() ? 'msg_not_permitted' : 'msg_not_logged');
}
// get the document_srl and comment_srl
@@ -1212,7 +1216,7 @@ class boardView extends board
// check grant
if(!$this->grant->write_comment)
{
- return $this->dispBoardMessage('msg_not_permitted');
+ return $this->dispBoardMessage($this->user->isMember() ? 'msg_not_permitted' : 'msg_not_logged');
}
// get the comment_srl to be deleted
@@ -1311,17 +1315,6 @@ class boardView extends board
$this->setTemplateFile('delete_trackback_form');
}
- /**
- * @brief display board message
- **/
- function dispBoardMessage($msg_code)
- {
- Context::set('message', lang($msg_code));
-
- $this->setHttpStatusCode(403);
- $this->setTemplateFile('message');
- }
-
function dispBoardUpdateLog()
{
if($this->grant->update_view !== true)
@@ -1448,21 +1441,47 @@ class boardView extends board
$this->setTemplateFile('vote_log');
}
+ /**
+ * Default 404 Handler.
+ */
function dispBoardNotFound()
{
- $this->alertMessage('msg_not_founded', 404);
+ $this->dispBoardMessage('msg_not_founded', 404);
}
/**
- * @brief the method for displaying the warning messages
- * display an error message if it has not a special design
- **/
- function alertMessage($message, $code = 403)
+ * Display an error page.
+ *
+ * @param string $msg_code
+ * @param int $http_code
+ * @return void
+ */
+ function dispBoardMessage($msg_code, $http_code = 403)
{
- $script = sprintf('', lang($message));
+ //Context::set('message', lang($msg_code));
+ //$this->setTemplateFile('message');
+ $oMessageObject = MessageView::getInstance();
+ $oMessageObject->setMessage($msg_code);
+ $oMessageObject->dispMessage();
+ $this->setTemplatePath($oMessageObject->getTemplatePath());
+ $this->setTemplateFile($oMessageObject->getTemplateFile());
+ $this->setHttpStatusCode($http_code);
+ }
+
+ /**
+ * Display an alert window on top of the page.
+ *
+ * @deprecated
+ *
+ * @param string $msg_code
+ * @param int $http_code
+ * @return void
+ */
+ function alertMessage($msg_code, $http_code = 403)
+ {
+ $script = sprintf('', json_encode(lang($msg_code)));
Context::addHtmlFooter($script);
-
- $this->setHttpStatusCode($code);
+ $this->setHttpStatusCode($http_code);
}
}