diff --git a/modules/member/conf/module.xml b/modules/member/conf/module.xml index 4d8781f14..ab452dea1 100644 --- a/modules/member/conf/module.xml +++ b/modules/member/conf/module.xml @@ -21,6 +21,7 @@ + diff --git a/modules/member/lang/ko.php b/modules/member/lang/ko.php index 740c1aa22..4da8f0cee 100644 --- a/modules/member/lang/ko.php +++ b/modules/member/lang/ko.php @@ -114,6 +114,7 @@ $lang->cmd_trace_comment = '작성 댓글 추적'; $lang->cmd_view_scrapped_document = '스크랩 보기'; $lang->cmd_view_saved_document = '저장함 보기'; $lang->cmd_send_email = '메일 보내기'; +$lang->cmd_modify_nickname_log = '닉네임 변경 기록'; $lang->msg_email_not_exists = '이메일 주소가 존재하지 않습니다.'; $lang->msg_alreay_scrapped = '이미 스크랩된 게시물입니다.'; $lang->msg_cart_is_null = '대상을 선택해주세요.'; @@ -216,6 +217,7 @@ $lang->about_ssl_port = '기본 포트 이외의 보안접속(SSL) 포트를 사 $lang->about_reset_auth_mail = '현재등록된 이메일 주소는 %s입니다. 이메일 주소를 변경하고자 하는 경우 새로운 이메일 주소로 회원정보 갱신 후 인증메일을 재발송할 수 있습니다.'; $lang->about_resend_auth_mail = '인증 메일을 받지 못한 경우 다시 받을 수 있습니다.'; $lang->about_reset_auth_mail_submit = '이메일을 로그인 계정으로 사용할 경우 신규 메일주소로 로그인해야 합니다.'; +$lang->about_update_nickname_log = '닉네임 로그를 기록합니다. 이 옵션을 사용하게 되면, 닉네임변경이력을 남기도록 할 수 있습니다.'; $lang->no_article = '글이 없습니다.'; $lang->find_account_question = '비밀번호 찾기 질문/답변'; $lang->find_account_answer = '비밀번호 찾기 답변'; @@ -309,3 +311,5 @@ $lang->spammer_description = '

지정된 회원을 차단하고, 회원이 남 $lang->btn_spammer_delete_all = '모두 삭제'; $lang->spammer_move_to_trash = '휴지통으로 이동'; $lang->msg_spammer_complete = '완료되었습니다.'; +$lang->nick_name_before_changing = '닉네임 변경 전'; +$lang->nick_name_after_changing = '닉네임 변경 후'; diff --git a/modules/member/member.admin.controller.php b/modules/member/member.admin.controller.php index c844f636d..a9b8dfec6 100644 --- a/modules/member/member.admin.controller.php +++ b/modules/member/member.admin.controller.php @@ -162,7 +162,8 @@ class memberAdminController extends member 'password_strength', 'password_hashing_algorithm', 'password_hashing_work_factor', - 'password_hashing_auto_upgrade' + 'password_hashing_auto_upgrade', + 'update_nickname_log' ); $oPassword = new Password(); diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index e2f1e2de7..14b46f980 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -1885,6 +1885,7 @@ class memberController extends member $this->addMemberMenu( 'dispMemberScrappedDocument', 'cmd_view_scrapped_document'); $this->addMemberMenu( 'dispMemberSavedDocument', 'cmd_view_saved_document'); $this->addMemberMenu( 'dispMemberOwnDocument', 'cmd_view_own_document'); + $this->addMemberMenu( 'dispMemberModifyNicknameLog', 'cmd_modify_nickname_log'); } /** @@ -2273,6 +2274,19 @@ class memberController extends member $oDB->rollback(); return $output; } + else + { + if($args->nick_name != $orgMemberInfo->nick_name && $config->update_nick_log == 'Y') + { + $log_args = new stdClass(); + $log_args->member_srl = $args->member_srl; + $log_args->before_nick_name = $orgMemberInfo->nick_name; + $log_args->after_nick_name = $args->nick_name; + $log_args->user_id = $args->user_id; + $log_output = executeQuery('member.insertMemberModifyNickName', $log_args); + debugPrint($config); + } + } if($args->group_srl_list) { @@ -2397,6 +2411,7 @@ class memberController extends member $oDB->rollback(); return $output; } + executeQuery('member.deleteMemberModifyNickNameLog', $args); // TODO: If the table is not an upgrade may fail. /* diff --git a/modules/member/member.view.php b/modules/member/member.view.php index 8a21d6e67..259fb97f8 100644 --- a/modules/member/member.view.php +++ b/modules/member/member.view.php @@ -688,7 +688,34 @@ class memberView extends member $this->setTemplatePath($this->module_path.'tpl'); $this->setTemplateFile('spammer'); } - + + /** + * Member Nickname Log + * @return void + */ + function dispMemberModifyNicknameLog() + { + $member_srl = Context::get('member_srl'); + + if(!$member_srl) + { + $logged_info = Context::get('logged_info'); + $member_srl = $logged_info->member_srl; + } + + $args = new stdClass(); + $args->member_srl = $member_srl; + $args->page = Context::get('page'); + $output = executeQuery('member.getMemberModifyNickName', $args); + + Context::set('total_count', $output->page_navigation->total_count); + Context::set('total_page', $output->page_navigation->total_page); + Context::set('page', $output->page); + Context::set('nickname_list', $output->data); + Context::set('page_navigation', $output->page_navigation); + + $this->setTemplateFile('member_nick'); + } } /* End of file member.view.php */ /* Location: ./modules/member/member.view.php */ diff --git a/modules/member/queries/deleteMemberModifyNickNameLog.xml b/modules/member/queries/deleteMemberModifyNickNameLog.xml new file mode 100644 index 000000000..caa8e0596 --- /dev/null +++ b/modules/member/queries/deleteMemberModifyNickNameLog.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/modules/member/queries/getMemberModifyNickName.xml b/modules/member/queries/getMemberModifyNickName.xml new file mode 100644 index 000000000..3dea7f6bb --- /dev/null +++ b/modules/member/queries/getMemberModifyNickName.xml @@ -0,0 +1,17 @@ + + +
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/member/queries/insertMemberModifyNickName.xml b/modules/member/queries/insertMemberModifyNickName.xml new file mode 100644 index 000000000..aa2fa9f52 --- /dev/null +++ b/modules/member/queries/insertMemberModifyNickName.xml @@ -0,0 +1,12 @@ + + +
+ + + + + + + + + diff --git a/modules/member/schemas/member_nickname_log.xml b/modules/member/schemas/member_nickname_log.xml new file mode 100644 index 000000000..ea44dc3f5 --- /dev/null +++ b/modules/member/schemas/member_nickname_log.xml @@ -0,0 +1,7 @@ +
+ + + + + +
diff --git a/modules/member/skins/default/member_nick.html b/modules/member/skins/default/member_nick.html new file mode 100644 index 000000000..417757395 --- /dev/null +++ b/modules/member/skins/default/member_nick.html @@ -0,0 +1,38 @@ + +

{$member_title = $lang->cmd_modify_nickname_log}

+ + + + + + + + + + + {@ + debugPrint($val); + } + + + + + + +
{$lang->date}{$lang->nick_name_before_changing}{$lang->nick_name_after_changing}
+ {zdate($val->regdate,"Y-m-d H:i:s")} + + {$val->before_nick_name} + + {$val->after_nick_name} +
+ + \ No newline at end of file diff --git a/modules/member/tpl/default_config.html b/modules/member/tpl/default_config.html index 114a2d592..48f303295 100644 --- a/modules/member/tpl/default_config.html +++ b/modules/member/tpl/default_config.html @@ -20,6 +20,14 @@

{$lang->about_enable_confirm}

+
+
{$lang->cmd_modify_nickname_log}
+
+ + +

{$lang->about_update_nickname_log}

+
+
{$lang->enable_find_account_question}