Close Connection when there is no connection value.

git-svn-id: http://xe-core.googlecode.com/svn/branches/maserati@13161 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
misol 2013-09-25 15:29:32 +00:00
parent 034a5c0288
commit f70ce644ce
1410 changed files with 7188 additions and 53541 deletions

View file

@ -164,6 +164,19 @@ class commentAdminController extends comment
// call a trigger for calling "send mail to subscribers" (for moment just for forum)
ModuleHandler::triggerCall("comment.procCommentAdminChangeStatus", "after", $comment_srl_list);
}
// for message send - start
$message_content = Context::get('message_content');
if($message_content)
{
$message_content = nl2br($message_content);
}
if($message_content)
{
$this->_sendMessageForComment($message_content, $comment_srl_list);
}
// for message send - end
}
/**
@ -208,34 +221,13 @@ class commentAdminController extends comment
if($message_content)
{
$oCommunicationController = getController('communication');
$oCommentModel = getModel('comment');
$logged_info = Context::get('logged_info');
$title = cut_str($message_content, 10, '...');
$sender_member_srl = $logged_info->member_srl;
for($i = 0; $i < $comment_count; $i++)
{
$comment_srl = $comment_srl_list[$i];
$oComment = $oCommentModel->getComment($comment_srl, TRUE);
if(!$oComment->get('member_srl') || $oComment->get('member_srl') == $sender_member_srl)
{
continue;
}
$content = sprintf("<div>%s</div><hr /><div style=\"font-weight:bold\">%s</div>", $message_content, $oComment->getContentText(20));
$oCommunicationController->sendMessage($sender_member_srl, $oComment->get('member_srl'), $title, $content, FALSE);
}
$this->_sendMessageForComment($message_content, $comment_srl_list);
}
// for message send - end
// comment into trash
if($isTrash == 'true')
{
$this->_moveCommentToTrash($comment_srl_list, $oCommentController, $oDB);
$this->_moveCommentToTrash($comment_srl_list, $oCommentController, $oDB, $message_content);
}
$deleted_count = 0;
@ -281,11 +273,38 @@ class commentAdminController extends comment
$this->setRedirectUrl($returnUrl);
}
private function _sendMessageForComment($message_content, $comment_srl_list)
{
$oCommunicationController = getController('communication');
$oCommentModel = getModel('comment');
$logged_info = Context::get('logged_info');
$title = cut_str($message_content, 10, '...');
$sender_member_srl = $logged_info->member_srl;
$comment_count = count($comment_srl_list);
for($i = 0; $i < $comment_count; $i++)
{
$comment_srl = $comment_srl_list[$i];
$oComment = $oCommentModel->getComment($comment_srl, TRUE);
if(!$oComment->get('member_srl') || $oComment->get('member_srl') == $sender_member_srl)
{
continue;
}
$content = sprintf("<div>%s</div><hr /><div style=\"font-weight:bold\">%s</div>", $message_content, $oComment->getContentText(20));
$oCommunicationController->sendMessage($sender_member_srl, $oComment->get('member_srl'), $title, $content, FALSE);
}
}
/**
* comment move to trash
* @return void|object
*/
function _moveCommentToTrash($commentSrlList, &$oCommentController, &$oDB)
function _moveCommentToTrash($commentSrlList, &$oCommentController, &$oDB, $message_content = NULL)
{
require_once(_XE_PATH_ . 'modules/trash/model/TrashVO.php');
@ -303,6 +322,7 @@ class commentAdminController extends comment
$oTrashVO->setTitle(trim(strip_tags($oComment->variables['content'])));
$oTrashVO->setOriginModule('comment');
$oTrashVO->setSerializedObject(serialize($oComment->variables));
$oTrashVO->setDescription($message_content);
$output = $oTrashAdminController->insertTrash($oTrashVO);
if(!$output->toBool())

View file

@ -161,7 +161,7 @@ class commentController extends comment
*/
function isModuleUsingPublishValidation($module_srl = NULL)
{
if(!$module_srl == NULL)
if($module_srl == NULL)
{
return FALSE;
}
@ -221,7 +221,6 @@ class commentController extends comment
$obj->status = 0;
}
}
$obj->__isupdate = FALSE;
// call a trigger (before)
@ -271,9 +270,11 @@ class commentController extends comment
{
$logged_info = Context::get('logged_info');
$obj->member_srl = $logged_info->member_srl;
$obj->user_id = $logged_info->user_id;
$obj->user_name = $logged_info->user_name;
$obj->nick_name = $logged_info->nick_name;
// user_id, user_name and nick_name already encoded
$obj->user_id = htmlspecialchars_decode($logged_info->user_id);
$obj->user_name = htmlspecialchars_decode($logged_info->user_name);
$obj->nick_name = htmlspecialchars_decode($logged_info->nick_name);
$obj->email_address = $logged_info->email_address;
$obj->homepage = $logged_info->homepage;
}
@ -823,15 +824,19 @@ class commentController extends comment
// update the number of comments
$comment_count = $oCommentModel->getCommentCount($document_srl);
// create the controller object of the document
$oDocumentController = getController('document');
// update comment count of the article posting
$output = $oDocumentController->updateCommentCount($document_srl, $comment_count, NULL, FALSE);
if(!$output->toBool())
// only document is exists
if(isset($comment_count))
{
$oDB->rollback();
return $output;
// create the controller object of the document
$oDocumentController = getController('document');
// update comment count of the article posting
$output = $oDocumentController->updateCommentCount($document_srl, $comment_count, NULL, FALSE);
if(!$output->toBool())
{
$oDB->rollback();
return $output;
}
}
// call a trigger (after)
@ -1081,7 +1086,7 @@ class commentController extends comment
$obj = new stdClass();
$obj->member_srl = $oComment->get('member_srl');
$obj->module_srl = $oComment->get('module_srl');
$obj->comment_srl = $oComment->get('comment');
$obj->comment_srl = $oComment->get('comment_srl');
$obj->update_target = ($point < 0) ? 'blamed_count' : 'voted_count';
$obj->point = $point;
$obj->before_point = ($point < 0) ? $oComment->get('blamed_count') : $oComment->get('voted_count');
@ -1329,6 +1334,9 @@ class commentController extends comment
$this->setMessage($lang->no_documents);
}
$oSecurity = new Security($commentList);
$oSecurity->encodeHTML('..variables.', '..');
$this->add('comment_list', $commentList);
}

View file

@ -254,7 +254,7 @@ class commentItem extends Object
$url = "http://" . $url;
}
return $url;
return htmlspecialchars($url);
}
function getMemberSrl()

View file

@ -298,4 +298,8 @@
<value xml:lang="ko"><![CDATA[페이지]]></value>
<value xml:lang="en"><![CDATA[Page]]></value>
</item>
<item name="msg_not_selected_comment">
<value xml:lang="ko"><![CDATA[선택한 댓글이 없습니다.]]></value>
<value xml:lang="en"><![CDATA[There are no selected comment.]]></value>
</item>
</lang>

View file

@ -24,6 +24,6 @@
<column name="last_update" var="last_update" default="curdate()" />
<column name="ipaddress" var="ipaddress" default="ipaddress()" />
<column name="list_order" var="list_order" default="0" />
<column name="status" var="status" notnull="notnull" default="1" />
<column name="status" var="status" notnull="notnull" filter="number" />
</columns>
</query>

View file

@ -3,7 +3,7 @@
xe.lang.msg_empty_search_target = '{$lang->msg_empty_search_target}';
xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
</script>
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/comment/tpl/comment_list/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
<p>{$XE_VALIDATOR_MESSAGE}</p>
</div>
<form id="fo_list" action="./" method="post">
@ -46,9 +46,9 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
</thead>
<tbody>
<tr loop="$comment_list => $no, $val">
{@ $comment = cut_str(trim(strip_tags($val->content)), 200, '...')}
{@ $comment = $val->getContentText(200)}
<td><a href="{getUrl('','document_srl',$val->document_srl)}#comment_{$val->comment_srl}" target="_blank"><!--@if(strlen($comment))-->{$comment}<!--@else--><em>{$lang->no_text_comment}</em><!--@end--></a></td>
<td class="nowr"><a href="#popup_menu_area" class="member_{$val->member_srl}">{$val->nick_name}</a></td>
<td class="nowr"><a href="#popup_menu_area" class="member_{$val->member_srl}">{$val->getNickName()}</a></td>
<td class="nowr">{number_format($val->get('voted_count'))}/{number_format($val->get('blamed_count'))}</td>
<td class="nowr">{(zdate($val->regdate,"Y-m-d\nH:i:s"))}</td>
<td class="nowr"><a href="{getUrl('search_target','ipaddress','search_keyword',$val->ipaddress)}">{$val->ipaddress}</a></td>
@ -122,7 +122,7 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
</select>
<input type="search" name="search_keyword" value="{htmlspecialchars($search_keyword)}" />
<button type="submit" class="x_btn x_btn-inverse">{$lang->cmd_search}</button>
<button class="x_btn" type="button" onclick="document.location.href='{getUrl('','module',$module,'act',$act)}'">{$lang->cmd_cancel}</button>
<a href="{getUrl('','module',$module,'act',$act)}" class="x_btn">{$lang->cmd_cancel}</a>
</form>
<form ruleset="deleteChecked" action="./" method="post" class="x_modal x" id="listManager">
@ -133,6 +133,7 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
<input type="hidden" name="will_publish" value="0" />
<input type="hidden" name="search_target" value="{$search_target}" />
<input type="hidden" name="search_keyword" value="{$search_keyword}" />
<input type="hidden" name="xe_validator_id" value="modules/comment/tpl/comment_list/1" />
<div class="x_modal-header">
<h1>{$lang->comment_manager}: <span class="_sub"></span></h1>
</div>
@ -174,10 +175,10 @@ jQuery(function($){
}
}).change();
// Button action
$('a[data-value]').click(function(){
$('a[data-value]').bind('before-open.mw', function(){
if($docTable.find('tbody :checked').length == 0){
$('body').css('overflow','auto');
alert('{$lang->msg_not_selected_document}');
alert('{$lang->msg_not_selected_comment}');
return false;
} else {
var $this = $(this);
@ -192,4 +193,4 @@ jQuery(function($){
doChangePublishedStatus($(this).val());
});
});
</script>
</script>

View file

@ -8,7 +8,7 @@
<div class="x_control-group">
<label for="comment_count" class="x_control-label">{$lang->comment_count}</label>
<div class="x_controls">
<input type="number" min="1" name="comment_count" id="comment_count" value="{$comment_config->comment_count}" style="width:50px" />
<input type="number" min="1" name="comment_count" id="comment_count" value="{$comment_config->comment_count}" />
<p class="x_help-inline">{$lang->about_comment_count}</p>
</div>
</div>

View file

@ -1,5 +1,5 @@
<include target="header.html" />
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/comment/tpl/declared_list/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
<p>{$XE_VALIDATOR_MESSAGE}</p>
</div>
<form ruleset="deleteChecked" id="fo_list" action="./" method="post">
@ -8,6 +8,7 @@
<input type="hidden" value="{getUrl('', 'module', $module, 'act', $act)}" name="success_return_url">
<input type="hidden" name="page" value="{$page}" />
<input type="hidden" name="is_trash" value="false" />
<input type="hidden" name="xe_validator_id" value="modules/comment/tpl/declared_list/1" />
<!-- 목록 -->
<table id="commentListTable" class="x_table x_table-striped x_table-hover">

View file

@ -1,4 +1,4 @@
<load target="js/comment_admin.js" usecdn="true" />
<div class="x_page-header">
<h1>{$lang->comment} {$lang->cmd_management} <a class="x_icon-question-sign" href="./help/index.html#UMAN_content_comment" target="_blank">{$lang->help}</a></h1>
<h1>{$lang->comment} {$lang->cmd_management} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_content_comment" target="_blank">{$lang->help}</a></h1>
</div>