diff --git a/modules/ncenterlite/lang/en.php b/modules/ncenterlite/lang/en.php index a05dba585..e3f7c70ae 100644 --- a/modules/ncenterlite/lang/en.php +++ b/modules/ncenterlite/lang/en.php @@ -29,7 +29,7 @@ $lang->ncenterlite_article = '%1$s wrote an article as "%2$s".' $lang->ncenterlite_board = '%1$s wrote an article as "%3$s" on the board %2$s.'; $lang->ncenterlite_commented = '%1$s commented as "%3$s" on your %2$s.'; $lang->ncenterlite_commented_board = '%1$s commented as "%3$s" on the board %2$s.'; -$lang->ncenterlite_mentioned = '%s mentioned you on "%s" %s.'; +$lang->ncenterlite_mentioned = '%s mentioned you on "%s"board to "%s" .'; $lang->ncenterlite_message_string = 'You have %d new message(s).'; $lang->ncenterlite_message_mention = '%1$s sent a message as "%2$s".'; $lang->ncenterlite_test_noti = '%s! Skin test notification has been done.'; diff --git a/modules/ncenterlite/lang/ko.php b/modules/ncenterlite/lang/ko.php index 517776007..1f21b7fe2 100644 --- a/modules/ncenterlite/lang/ko.php +++ b/modules/ncenterlite/lang/ko.php @@ -38,7 +38,7 @@ $lang->ncenterlite_article = '%1$s님이 "%2$s"ncenterlite_board = '%1$s님이 게시판 "%2$s""%3$s"라고 글을 남겼습니다.'; $lang->ncenterlite_commented = '%1$s님이 회원님의 %2$s에 "%3$s"라고 댓글을 남겼습니다.'; $lang->ncenterlite_commented_board = '%1$s님이 "%2$s"게시판에 "%3$s"라고 댓글을 남겼습니다.'; -$lang->ncenterlite_mentioned = '%s님이 "%s" %s에서 회원님을 언급하였습니다.'; +$lang->ncenterlite_mentioned = '%s님이 "%s"게시판에서 "%s" 게시글작성하며 회원님을 언급하였습니다.'; $lang->ncenterlite_message_string = '%d개의 읽지 않은 메시지가 있습니다.'; $lang->ncenterlite_message_mention = '%s님께서 "%s"라고 메시지를 보내셨습니다.'; $lang->ncenterlite_test_noti = '%s님! 스킨 테스트 알림을 완료했습니다.'; diff --git a/modules/ncenterlite/ncenterlite.controller.php b/modules/ncenterlite/ncenterlite.controller.php index de297d525..b285f6216 100644 --- a/modules/ncenterlite/ncenterlite.controller.php +++ b/modules/ncenterlite/ncenterlite.controller.php @@ -88,8 +88,48 @@ class ncenterliteController extends ncenterlite $logged_info = Context::get('logged_info'); $admin_list = $oNcenterliteModel->getMemberAdmins(); - $admin_document_notify = false; - if(isset($config->use['admin_content']) && is_array($config->admin_notify_module_srls) && in_array($module_info->module_srl, $config->admin_notify_module_srls)) + // 맨션 알림일경우 맨션알림 시작. + if(!empty($mention_targets)) + { + if(!$mention_targets && !count($mention_targets) || !isset($config->use['mention'])) + { + return new Object(); + } + + // !TODO 공용 메소드로 분리 + foreach($mention_targets as $mention_member_srl) + { + $target_member_config = $oNcenterliteModel->getMemberConfig($mention_member_srl); + $notify_member_config = $target_member_config->data; + + if($notify_member_config->mention_notify == 'N') + { + continue; + } + + $args = new stdClass(); + $args->member_srl = $mention_member_srl; + $args->srl = $obj->document_srl; + $args->target_p_srl = $obj->document_srl; + $args->target_srl = $obj->document_srl; + $args->type = $this->_TYPE_DOCUMENT; + $args->target_type = $this->_TYPE_MENTION; + $args->target_url = getNotEncodedFullUrl('', 'document_srl', $obj->document_srl); + $args->target_summary = cut_str(strip_tags($obj->title), 50); + $args->target_nick_name = $obj->nick_name; + $args->target_email_address = $obj->email_address; + $args->regdate = date('YmdHis'); + $args->target_browser = $module_info->browser_title; + $args->notify = $this->_getNotifyId($args); + $output = $this->_insertNotify($args, $is_anonymous); + if(!$output->toBool()) + { + return $output; + } + } + } + + if(isset($config->use['admin_content']) && is_array($config->admin_notify_module_srls) && in_array($module_info->module_srl, $config->admin_notify_module_srls) && empty($mention_targets)) { foreach($admin_list as $admins) { @@ -115,56 +155,6 @@ class ncenterliteController extends ncenterlite { return $output; } - else - { - $admin_document_notify = true; - } - } - } - - if(!$mention_targets && !count($mention_targets) || !isset($config->use['mention'])) - { - return new Object(); - } - - // 맨션 알림일경우 맨션알림 시작. - if($mention_targets) - { - // !TODO 공용 메소드로 분리 - foreach($mention_targets as $mention_member_srl) - { - $target_member_config = $oNcenterliteModel->getMemberConfig($mention_member_srl); - $notify_member_config = $target_member_config->data; - - if($notify_member_config->mention_notify == 'N') - { - continue; - } - - if(is_array($admin_list) && in_array($mention_member_srl, $admin_list) && isset($config->use['admin_content']) && $admin_document_notify == true) - { - continue; - } - - $args = new stdClass(); - $args->member_srl = $mention_member_srl; - $args->srl = $obj->document_srl; - $args->target_p_srl = $obj->document_srl; - $args->target_srl = $obj->document_srl; - $args->type = $this->_TYPE_DOCUMENT; - $args->target_type = $this->_TYPE_MENTION; - $args->target_url = getNotEncodedFullUrl('', 'document_srl', $obj->document_srl); - $args->target_summary = cut_str(strip_tags($obj->title), 50); - $args->target_nick_name = $obj->nick_name; - $args->target_email_address = $obj->email_address; - $args->regdate = date('YmdHis'); - $args->target_browser = $module_info->browser_title; - $args->notify = $this->_getNotifyId($args); - $output = $this->_insertNotify($args, $is_anonymous); - if(!$output->toBool()) - { - return $output; - } } } diff --git a/modules/ncenterlite/ncenterlite.model.php b/modules/ncenterlite/ncenterlite.model.php index ddc2e2f12..f943467c1 100644 --- a/modules/ncenterlite/ncenterlite.model.php +++ b/modules/ncenterlite/ncenterlite.model.php @@ -168,7 +168,7 @@ class ncenterliteModel extends ncenterlite //$str = sprintf('%1$s님이 게시판 "%2$s""%3$s"라고 댓글을 남겼습니다.', $target_member, $type, $v->target_summary); break; case 'M': - $str = sprintf($lang->ncenterlite_mentioned, $target_member, $v->target_summary, $type); + $str = sprintf($lang->ncenterlite_mentioned, $target_member, $v->target_browser, $v->target_summary); //$str = sprintf('%s님이 "%s" %s에서 회원님을 언급하였습니다.', $target_member, $v->target_summary, $type); break; // 메시지. 쪽지