diff --git a/modules/ncenterlite/lang/ko.php b/modules/ncenterlite/lang/ko.php index a46fd168e..66d5ccf82 100644 --- a/modules/ncenterlite/lang/ko.php +++ b/modules/ncenterlite/lang/ko.php @@ -36,15 +36,15 @@ $lang->ncenterlite_activate = '사용'; $lang->ncenterlite_inactivate = '사용 안함'; $lang->ncenterlite_userconfig_about_warning = '주의! 당신은 관리자 권한으로 다른 사용자의 설정창에 접속하였습니다.'; $lang->ncenterlite_article = '%1$s님이 "%2$s"라고 글을 남겼습니다.'; -$lang->ncenterlite_board = '%1$s님이 게시판 "%2$s""%3$s"라고 글을 남겼습니다.'; +$lang->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" %s에서 회원님을 언급하였습니다.'; $lang->ncenterlite_message_string = '%d개의 읽지 않은 메시지가 있습니다.'; -$lang->ncenterlite_message_mention = '%s님께서 "%s"라고 메시지를 보내셨습니다.'; -$lang->ncenterlite_test_noti = '%s님! 스킨 테스트 알림을 완료했습니다.'; -$lang->ncenterlite_vote = '%s님이 "%s" 글을 추천하였습니다.'; -$lang->ncenterlite_admin_content_message = '%1$s님이 "%2$s"게시판에 "%3$s"라고 글을 남겼습니다.'; +$lang->ncenterlite_message_mention = '%s님이 "%s"라고 메시지를 보내셨습니다.'; +$lang->ncenterlite_test_noti = '%s님! 테스트 알림입니다.'; +$lang->ncenterlite_vote = '%s님이 회원님의 "%s" %s을 추천하였습니다.'; +$lang->ncenterlite_admin_content_message = '%1$s님이 "%2$s" 게시판에 "%3$s"라고 글을 남겼습니다.'; $lang->ncenterlite_ago = '전'; $lang->ncenterlite_date['0'] = '년'; $lang->ncenterlite_date['1'] = '개월'; diff --git a/modules/ncenterlite/ncenterlite.admin.model.php b/modules/ncenterlite/ncenterlite.admin.model.php index 4e5a9ecb9..f715b3cee 100644 --- a/modules/ncenterlite/ncenterlite.admin.model.php +++ b/modules/ncenterlite/ncenterlite.admin.model.php @@ -18,75 +18,7 @@ class ncenterliteAdminModel extends ncenterlite foreach($list as $k => $v) { - $target_member = $v->target_nick_name; - - switch($v->type) - { - case 'D': - $type = $lang->ncenterlite_document; //$type = '글'; - break; - case 'C': - $type = $lang->ncenterlite_comment; //$type = '댓글'; - break; - // 메시지. 쪽지 - case 'E': - $type = $lang->ncenterlite_type_message; //$type = '쪽지'; - break; - } - - switch($v->target_type) - { - case 'C': - $str = sprintf($lang->ncenterlite_commented, $target_member, $type, $v->target_summary); - //$str = sprintf('%s님이 회원님의 %s에 "%s" 댓글을 남겼습니다.', $target_member, $type, $v->target_summary); - break; - case 'A': - $str = sprintf($lang->ncenterlite_commented_board, $target_member, $v->target_browser, $v->target_summary); - //$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('%s님이 "%s" %s에서 회원님을 언급하였습니다.', $target_member, $v->target_summary, $type); - break; - // 메시지. 쪽지 - case 'E': - if(version_compare(__XE_VERSION__, '1.7.4', '>=')) - { - $str = sprintf($lang->ncenterlite_message_mention, $target_member, $v->target_summary); - //%s님께서 "%s"라고 메세지를 보내셨습니다. - } - else - { - $str = sprintf($lang->ncenterlite_message_string, $v->target_summary); - } - break; - case 'T': - $str = sprintf($lang->ncenterlite_test_noti, $target_member); - break; - case 'P': - $str = sprintf($lang->ncenterlite_board, $target_member, $v->target_browser, $v->target_summary); - //%1$s님이 게시판 "%2$s""%3$s"라고 글을 남겼습니다. - break; - case 'S': - if($v->target_browser) - { - $str = sprintf($lang->ncenterlite_board, $target_member, $v->target_browser, $v->target_summary); - } - else - { - $str = sprintf($lang->ncenterlite_article, $target_member, $v->target_summary); - } - break; - case 'V': - $str = sprintf($lang->ncenterlite_vote, $target_member, $v->target_summary); - break; - } - - if($v->type=='U') - { - $str = $oNcenterliteModel->getNotifyTypeString($v->notify_type,unserialize($v->target_body)); - } - $v->text = $str; + $v->text = $oNcenterliteModel->getNotificationText($v); $v->ago = $oNcenterliteModel->getAgo($v->regdate); $v->url = getUrl('','act','procNcenterliteRedirect', 'notify', $v->notify, 'url', $v->target_url); if($v->target_member_srl) @@ -102,4 +34,4 @@ class ncenterliteAdminModel extends ncenterlite return $output; } -} \ No newline at end of file +} diff --git a/modules/ncenterlite/ncenterlite.model.php b/modules/ncenterlite/ncenterlite.model.php index b92f126e8..2af2a8baa 100644 --- a/modules/ncenterlite/ncenterlite.model.php +++ b/modules/ncenterlite/ncenterlite.model.php @@ -124,8 +124,6 @@ class ncenterliteModel extends ncenterlite function getMyNotifyList($member_srl=null, $page=1, $readed='N') { - global $lang; - $act = Context::get('act'); if($act=='dispNcenterliteNotifyList') { @@ -141,71 +139,7 @@ class ncenterliteModel extends ncenterlite foreach($list as $k => $v) { - - $target_member = $v->target_nick_name; - - switch($v->type) - { - case 'D': - $type = $lang->ncenterlite_document; //$type = '글'; - break; - case 'C': - $type = $lang->ncenterlite_comment; //$type = '댓글'; - break; - // 메시지. 쪽지 - case 'E': - $type = $lang->ncenterlite_type_message; //$type = '쪽지'; - break; - } - - switch($v->target_type) - { - case 'C': - $str = sprintf($lang->ncenterlite_commented, $target_member, $type, $v->target_summary); - //$str = sprintf('%s님이 회원님의 %s에 "%s" 댓글을 남겼습니다.', $target_member, $type, $v->target_summary); - break; - case 'A': - $str = sprintf($lang->ncenterlite_commented_board, $target_member, $v->target_browser, $v->target_summary); - //$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_browser, $v->target_summary); - //$str = sprintf('%s님이 "%s" %s에서 회원님을 언급하였습니다.', $target_member, $v->target_summary, $type); - break; - // 메시지. 쪽지 - case 'E': - $str = sprintf($lang->ncenterlite_message_mention,$target_member, $v->target_summary); - break; - case 'T': - $str = sprintf($lang->ncenterlite_test_noti, $target_member); - break; - case 'P': - $str = sprintf($lang->ncenterlite_board, $target_member, $v->target_browser, $v->target_summary); - break; - case 'S': - if($v->target_browser) - { - $str = sprintf($lang->ncenterlite_board, $target_member, $v->target_browser, $v->target_summary); - } - else - { - $str = sprintf($lang->ncenterlite_article, $target_member, $v->target_summary); - } - break; - case 'V': - $str = sprintf($lang->ncenterlite_vote, $target_member, $v->target_summary); - break; - case 'B': - $str = sprintf($lang->ncenterlite_admin_content_message, $target_member, $v->target_browser, $v->target_summary); - break; - } - - if($v->type=='U') - { - $str = $this->getNotifyTypeString($v->notify_type,unserialize($v->target_body)); - } - - $v->text = $str; + $v->text = $this->getNotificationText($v); $v->ago = $this->getAgo($v->regdate); $v->url = getUrl('','act','procNcenterliteRedirect', 'notify', $v->notify, 'url', $v->target_url); if($v->target_member_srl) @@ -360,7 +294,104 @@ class ncenterliteModel extends ncenterlite if(count($colorset_list)) $colorsets = implode("\n", $colorset_list); $this->add('colorset_list', $colorsets); } - + + /** + * Return the notification text. + * + * @param object $notification + * @return string + */ + public function getNotificationText($notification) + { + global $lang; + + // Get the type of notification. + switch ($notification->type) + { + // Document. + case 'D': + $type = $lang->ncenterlite_document; + break; + + // Comment. + case 'C': + $type = $lang->ncenterlite_comment; + break; + + // Message. + case 'E': + $type = $lang->ncenterlite_type_message; + break; + + // Other. + case 'U': + default: + return $this->getNotifyTypeString($notification->notify_type, unserialize($notification->target_body)); + } + + // Get the notification text. + switch ($notification->target_type) + { + // Comment on your document. + case 'C': + $str = sprintf($lang->ncenterlite_commented, $notification->target_nick_name, $type, $notification->target_summary); + break; + + // Comment on a board. + case 'A': + $str = sprintf($lang->ncenterlite_commented_board, $notification->target_nick_name, $notification->target_browser, $notification->target_summary); + break; + + // Mentioned. + case 'M': + $str = sprintf($lang->ncenterlite_mentioned, $notification->target_nick_name, $notification->target_browser, $notification->target_summary, $type); + break; + + // Message arrived. + case 'E': + $str = sprintf($lang->ncenterlite_message_mention, $notification->target_nick_name, $notification->target_summary); + break; + + // Test notification. + case 'T': + $str = sprintf($lang->ncenterlite_test_noti, $notification->target_nick_name); + break; + + // New document on a board. + case 'P': + $str = sprintf($lang->ncenterlite_board, $notification->target_nick_name, $notification->target_browser, $notification->target_summary); + break; + + // New document. + case 'S': + if($notification->target_browser) + { + $str = sprintf($lang->ncenterlite_board, $notification->target_nick_name, $notification->target_browser, $notification->target_summary); + } + else + { + $str = sprintf($lang->ncenterlite_article, $notification->target_nick_name, $notification->target_summary); + } + break; + + // Voted. + case 'V': + $str = sprintf($lang->ncenterlite_vote, $notification->target_nick_name, $notification->target_summary, $type); + break; + + // Admin notification. + case 'B': + $str = sprintf($lang->ncenterlite_admin_content_message, $notification->target_nick_name, $notification->target_browser, $notification->target_summary); + break; + + // Other. + default: + $str = $lang->ncenterlite; + } + + return $str; + } + /** * @brief 주어진 시간이 얼마 전 인지 반환 * @param string YmdHis