mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-08 19:42:15 +09:00
Merge branch 'develop' into pr/new-config-format
Conflicts: classes/context/Context.class.php
This commit is contained in:
commit
5afefc063c
42 changed files with 435 additions and 58 deletions
|
|
@ -21,6 +21,7 @@
|
|||
<action name="dispMemberResendAuthMail" type="view" standalone="true" />
|
||||
<action name="dispSavedDocumentList" type="view" standalone="true" />
|
||||
<action name="dispMemberSpammer" type="view" standalone="true" />
|
||||
<action name="dispMemberModifyNicknameLog" type="view" standalone="true" />
|
||||
|
||||
<action name="dispMemberAdminList" type="view" index="true" admin_index="true" menu_name="userList" menu_index="true"/>
|
||||
<!--action name="dispMemberAdminConfig" type="view" menu_name="userSetting" menu_index="true" /-->
|
||||
|
|
|
|||
|
|
@ -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 = '<p>지정된 회원을 차단하고, 회원이 남
|
|||
$lang->btn_spammer_delete_all = '모두 삭제';
|
||||
$lang->spammer_move_to_trash = '휴지통으로 이동';
|
||||
$lang->msg_spammer_complete = '완료되었습니다.';
|
||||
$lang->nick_name_before_changing = '닉네임 변경 전';
|
||||
$lang->nick_name_after_changing = '닉네임 변경 후';
|
||||
|
|
|
|||
|
|
@ -36,6 +36,14 @@
|
|||
.lt{margin:0;padding:0;list-style:none;background:#f8f8f8;font-size:14px}
|
||||
.lt li{border-bottom:1px solid #ccc8be;overflow:hidden}
|
||||
.lt a{box-sizing: border-box;width:100%;display:inline-block;float:left;text-decoration:none;color:#000;padding:10px}
|
||||
.lt span{
|
||||
display:inline-block;
|
||||
padding:5px;
|
||||
}
|
||||
.lt span.before-color:after{
|
||||
content:"→";
|
||||
margin-left:10px;
|
||||
}
|
||||
.lt .memberInfo{float:right;}
|
||||
.lt .notice{display:inline-block;background:#a06acd;font-weight:bold;color:#fff;font-size:12px;padding:1px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px}
|
||||
.lt .title{display:block;margin:0 0 5px 0}
|
||||
|
|
|
|||
18
modules/member/m.skins/default/member_nick.html
Normal file
18
modules/member/m.skins/default/member_nick.html
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
<include target="./common_header.html" />
|
||||
<div class="xm">
|
||||
<h2 class="hx h2">{$member_title = $lang->cmd_modify_nickname_log}</h2>
|
||||
<ul class="lt">
|
||||
<li loop="$nickname_list => $val">
|
||||
{zdate($val->regdate, "Y-m-d")}
|
||||
<span class="before-color">{$val->before_nick_name}</span>
|
||||
<span class="after-color">{$val->after_nick_name}</span>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="pn">
|
||||
<a cond="$page != 1" href="{getUrl('page',$page-1,'module_srl','')}" class="prev">{$lang->cmd_prev}</a>
|
||||
<strong>{$page} / {$page_navigation->last_page}</strong>
|
||||
<a cond="$page != $page_navigation->last_page" href="{getUrl('page',$page+1,'module_srl','')}" class="next">{$lang->cmd_next}</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<include target="./common_footer.html" />
|
||||
|
|
@ -24,12 +24,12 @@ class memberAdminController extends member
|
|||
// if(Context::getRequestMethod() == "GET") return new Object(-1, "msg_invalid_request");
|
||||
// Extract the necessary information in advance
|
||||
$logged_info = Context::get('logged_info');
|
||||
if($logged_info->is_admin !== 'Y' || !checkCSRF())
|
||||
if($logged_info->is_admin != 'Y' || !checkCSRF())
|
||||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
||||
$args = new stdClass;
|
||||
$args = Context::gets('member_srl','email_address','find_account_answer', 'allow_mailing','allow_message','denied','is_admin','description','group_srl_list','limit_date');
|
||||
$oMemberModel = &getModel ('member');
|
||||
$config = $oMemberModel->getMemberConfig ();
|
||||
$getVars = array();
|
||||
|
|
@ -47,7 +47,7 @@ class memberAdminController extends member
|
|||
{
|
||||
$args->{$val} = Context::get($val);
|
||||
}
|
||||
$args = Context::gets('member_srl','email_address','find_account_answer', 'allow_mailing', 'allow_message', 'denied', 'is_admin', 'description', 'group_srl_list', 'limit_date');
|
||||
$args->member_srl = Context::get('member_srl');
|
||||
if(Context::get('reset_password'))
|
||||
$args->password = Context::get('reset_password');
|
||||
else unset($args->password);
|
||||
|
|
@ -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();
|
||||
|
|
|
|||
|
|
@ -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,18 @@ 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);
|
||||
}
|
||||
}
|
||||
|
||||
if($args->group_srl_list)
|
||||
{
|
||||
|
|
@ -2397,6 +2410,7 @@ class memberController extends member
|
|||
$oDB->rollback();
|
||||
return $output;
|
||||
}
|
||||
executeQuery('member.deleteMemberModifyNickNameLog', $args);
|
||||
|
||||
// TODO: If the table is not an upgrade may fail.
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -685,6 +685,7 @@ class memberModel extends member
|
|||
$column_title = $join_form_list[$i]->column_title;
|
||||
$default_value = $join_form_list[$i]->default_value;
|
||||
// Add language variable
|
||||
if(!isset($lang->extend_vars)) $lang->extend_vars = array();
|
||||
$lang->extend_vars[$column_name] = $column_title;
|
||||
// unserialize if the data type if checkbox, select and so on
|
||||
if(in_array($column_type, array('checkbox','select','radio')))
|
||||
|
|
|
|||
|
|
@ -688,7 +688,40 @@ 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');
|
||||
$logged_info = Context::get('logged_info');
|
||||
if(!$member_srl)
|
||||
{
|
||||
$member_srl = $logged_info->member_srl;
|
||||
}
|
||||
else
|
||||
{
|
||||
if($logged_info->is_admin != 'Y')
|
||||
{
|
||||
return new Object(-1, 'msg_not_permitted');
|
||||
}
|
||||
}
|
||||
|
||||
$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 */
|
||||
|
|
|
|||
8
modules/member/queries/deleteMemberModifyNickNameLog.xml
Normal file
8
modules/member/queries/deleteMemberModifyNickNameLog.xml
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<query id="deleteMemberModifyNickNameLog" action="delete">
|
||||
<tables>
|
||||
<table name="member_nickname_log" />
|
||||
</tables>
|
||||
<conditions>
|
||||
<condition operation="equal" column="member_srl" var="member_srl" filter="number" notnull="notnull" />
|
||||
</conditions>
|
||||
</query>
|
||||
17
modules/member/queries/getMemberModifyNickName.xml
Normal file
17
modules/member/queries/getMemberModifyNickName.xml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
<query id="getMemberModifyNickName" action="select">
|
||||
<tables>
|
||||
<table name="member_nickname_log" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="*"/>
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="member_srl" var="member_srl" notnull="notnull" />
|
||||
</conditions>
|
||||
<navigation>
|
||||
<index var="sort_index" default="regdate" order="desc" />
|
||||
<list_count var="list_count" default="20" />
|
||||
<page_count var="page_count" default="10" />
|
||||
<page var="page" defailt="1" />
|
||||
</navigation>
|
||||
</query>
|
||||
12
modules/member/queries/insertMemberModifyNickName.xml
Normal file
12
modules/member/queries/insertMemberModifyNickName.xml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<query id="insertMemberModifyNickName" action="insert">
|
||||
<tables>
|
||||
<table name="member_nickname_log" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="member_srl" var="member_srl" filter="number" notnull="notnull" />
|
||||
<column name="before_nick_name" var="before_nick_name" notnull="notnull" />
|
||||
<column name="after_nick_name" var="after_nick_name" notnull="notnull" />
|
||||
<column name="user_id" var="user_id" notnull="notnull" />
|
||||
<column name="regdate" var="regdate" default="curdate()" />
|
||||
</columns>
|
||||
</query>
|
||||
7
modules/member/schemas/member_nickname_log.xml
Normal file
7
modules/member/schemas/member_nickname_log.xml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<table name="member_nickname_log">
|
||||
<column name="member_srl" type="number" size="11" notnull="notnull" />
|
||||
<column name="before_nick_name" type="varchar" size="80" notnull="notnull" />
|
||||
<column name="after_nick_name" type="varchar" size="80" notnull="notnull" />
|
||||
<column name="regdate" type="date" index="idx_regdate" />
|
||||
<column name="user_id" type="varchar" size="80" />
|
||||
</table>
|
||||
35
modules/member/skins/default/member_nick.html
Normal file
35
modules/member/skins/default/member_nick.html
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
<include target="./common_header.html" />
|
||||
<h1>{$member_title = $lang->cmd_modify_nickname_log}</h1>
|
||||
<table class="table table-striped table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{$lang->date}</th>
|
||||
<th>{$lang->nick_name_before_changing}</th>
|
||||
<th class="title">{$lang->nick_name_after_changing}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr loop="$nickname_list => $val">
|
||||
<td>
|
||||
{zdate($val->regdate,"Y-m-d H:i:s")}
|
||||
</td>
|
||||
<td>
|
||||
{$val->before_nick_name}
|
||||
</td>
|
||||
<td>
|
||||
{$val->after_nick_name}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="pagination pagination-centered">
|
||||
<ul>
|
||||
<li><a href="{getUrl('page','','module_srl','')}" class="direction">« {$lang->first_page}</a></li>
|
||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
||||
<li class="active"|cond="$page == $page_no"><a href="{getUrl('page',$page_no,'module_srl','')}">{$page_no}</a></li>
|
||||
<!--@end-->
|
||||
<li><a href="{getUrl('page',$page_navigation->last_page,'module_srl','')}" class="direction">{$lang->last_page} »</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<include target="./common_footer.html" />
|
||||
|
|
@ -20,6 +20,14 @@
|
|||
<p class="x_help-block">{$lang->about_enable_confirm}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<div class="x_control-label">{$lang->cmd_modify_nickname_log}</div>
|
||||
<div class="x_controls">
|
||||
<label class="x_inline" for="update_nickname_log_yes"><input type="radio" name="update_nickname_log" id="update_nickname_log_yes" value="Y" checked="checked"|cond="$config->update_nickname_log == 'Y'" /> {$lang->cmd_yes}</label>
|
||||
<label class="x_inline" for="update_nickname_log_no"><input type="radio" name="update_nickname_log" id="update_nickname_log_no" value="N" checked="checked"|cond="$config->update_nickname_log != 'Y'"/> {$lang->cmd_no}</label>
|
||||
<p class="x_help-block">{$lang->about_update_nickname_log}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<div class="x_control-label">{$lang->enable_find_account_question}</div>
|
||||
<div class="x_controls">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue