mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-03 16:51:40 +09:00
issue 1118 add a function that sync member info and document/comment in member configuration page.
git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.3.2@10990 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
8e4a8dc4ed
commit
72e620a9b2
10 changed files with 119 additions and 6 deletions
|
|
@ -93,15 +93,22 @@
|
|||
* @return void
|
||||
*/
|
||||
function procImporterAdminSync() {
|
||||
$oMemberModel = &getModel('member');
|
||||
$member_config = $oMemberModel->getMemberConfig();
|
||||
|
||||
$postFix = ($member_config->identifier == 'email_address') ? 'ByEmail' : '';
|
||||
|
||||
// 계정이 이메일인 경우 이메일 정보로 사용자를 싱크하도록 한다. 이때 변수명은 그대로 user_id를 사용한다.
|
||||
|
||||
/* DBMS가 CUBRID인 경우 MySQL과 동일한 방법으로는 문서 및 댓글에 대한 사용자 정보를 동기화 할 수 없으므로 예외 처리 합니다.
|
||||
CUBRID를 사용하지 않는 경우에만 보편적인 기존 질의문을 사용합니다. */
|
||||
$db_info = Context::getDBInfo ();
|
||||
if ($db_info->db_type != "cubrid") {
|
||||
$output = executeQuery('importer.updateDocumentSync');
|
||||
$output = executeQuery('importer.updateCommentSync');
|
||||
$output = executeQuery('importer.updateDocumentSync'.$postFix);
|
||||
$output = executeQuery('importer.updateCommentSync'.$postFix);
|
||||
}
|
||||
else {
|
||||
$output = executeQueryArray ('importer.getDocumentMemberSrlWithUserID');
|
||||
$output = executeQueryArray ('importer.getDocumentMemberSrlWithUserID'.$postFix);
|
||||
if (is_array ($output->data) && count ($output->data)) {
|
||||
$success_count = 0;
|
||||
$error_count = 0;
|
||||
|
|
@ -109,7 +116,7 @@
|
|||
foreach ($output->data as $val) {
|
||||
$args->user_id = $val->user_id;
|
||||
$args->member_srl = $val->member_srl;
|
||||
$tmp = executeQuery ('importer.updateDocumentSyncForCUBRID', $args);
|
||||
$tmp = executeQuery ('importer.updateDocumentSyncForCUBRID'.$postFix, $args);
|
||||
if ($tmp->toBool () === true) {
|
||||
$success_count++;
|
||||
}
|
||||
|
|
@ -120,7 +127,7 @@
|
|||
}
|
||||
} // documents section
|
||||
|
||||
$output = executeQueryArray ('importer.getCommentMemberSrlWithUserID');
|
||||
$output = executeQueryArray ('importer.getCommentMemberSrlWithUserID'.$postFix);
|
||||
if (is_array ($output->data) && count ($output->data)) {
|
||||
$success_count = 0;
|
||||
$error_count = 0;
|
||||
|
|
@ -128,7 +135,7 @@
|
|||
foreach ($output->data as $val) {
|
||||
$args->user_id = $val->user_id;
|
||||
$args->member_srl = $val->member_srl;
|
||||
$tmp = executeQuery ('importer.updateCommentSyncForCUBRID', $args);
|
||||
$tmp = executeQuery ('importer.updateCommentSyncForCUBRID'.$postFix, $args);
|
||||
if ($tmp->toBool () === true) {
|
||||
$success_count++;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,19 @@
|
|||
<query id="getCommentMemberSrlWithUserIDByEmail" action="select">
|
||||
<tables>
|
||||
<table name="member" alias="member" />
|
||||
<table name="comments" alias="comments" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="member.member_srl" alias="member_srl" />
|
||||
<column name="member.email_address" alias="user_id" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="comments.email_address" default="member.email_address" />
|
||||
</conditions>
|
||||
<groups>
|
||||
<group column="member_srl" />
|
||||
</groups>
|
||||
<navigation>
|
||||
<index var="member_srl" default="member_srl" order="asc" />
|
||||
</navigation>
|
||||
</query>
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
<query id="getDocumentMemberSrlWithUserIDByEmail" action="select">
|
||||
<tables>
|
||||
<table name="member" alias="member" />
|
||||
<table name="documents" alias="documents" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="member.member_srl" alias="member_srl" />
|
||||
<column name="member.email_address" alias="user_id" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="documents.email_address" default="member.email_address" />
|
||||
</conditions>
|
||||
<groups>
|
||||
<group column="member_srl" />
|
||||
</groups>
|
||||
<navigation>
|
||||
<index var="member_srl" default="member_srl" order="asc" />
|
||||
</navigation>
|
||||
</query>
|
||||
12
modules/importer/queries/updateCommentSyncByEmail.xml
Normal file
12
modules/importer/queries/updateCommentSyncByEmail.xml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<query id="updateCommentSyncByEmail" action="update">
|
||||
<tables>
|
||||
<table name="comments" alias="comments" />
|
||||
<table name="member" alias="member" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="comments.member_srl" default="member.member_srl" filter="number" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="comments.email_address" default="member.email_address" />
|
||||
</conditions>
|
||||
</query>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<query id="updateCommentSyncForCUBRIDByEmail" action="update">
|
||||
<tables>
|
||||
<table name="comments" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="member_srl" var="member_srl" filter="number" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="email_address" var="user_id" />
|
||||
</conditions>
|
||||
</query>
|
||||
12
modules/importer/queries/updateDocumentSyncByEmail.xml
Normal file
12
modules/importer/queries/updateDocumentSyncByEmail.xml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<query id="updateDocumentSyncByEmail" action="update">
|
||||
<tables>
|
||||
<table name="documents" alias="documents" />
|
||||
<table name="member" alias="member" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="documents.member_srl" default="member.member_srl" filter="number" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="documents.email_address" default="member.email_address" />
|
||||
</conditions>
|
||||
</query>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<query id="updateDocumentSyncForCUBRIDByEmail" action="update">
|
||||
<tables>
|
||||
<table name="documents" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="member_srl" var="member_srl" filter="number" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="email_address" var="user_id" />
|
||||
</conditions>
|
||||
</query>
|
||||
|
|
@ -2442,6 +2442,12 @@ Bạn có thể quản lý thành viên bằng cách tạo những nhóm mới,
|
|||
<value xml:lang="en"><![CDATA[Member Configuration]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[會員設定]]></value>
|
||||
</item>
|
||||
<item name="cmd_member_sync">
|
||||
<value xml:lang="ko"><![CDATA[회원정보 동기화]]></value>
|
||||
</item>
|
||||
<item name="about_member_sync">
|
||||
<value xml:lang="ko"><![CDATA[회원정보와 게시물과 댓글 정보를 동기화 합니다. 데이터가 많은 경우 시간이 오래 소요될 수 있습니다. 이용자가 많은 경우 반드시 서비스를 중단하시고 진행하시기 바랍니다.]]></value>
|
||||
</item>
|
||||
<item name="msg_success_modify_email_address">
|
||||
<value xml:lang="ko"><![CDATA[이메일 주소가 정상적으로 변경되었습니다. 변경된 이메일 주소로 로그인 가능합니다.]]></value>
|
||||
</item>
|
||||
|
|
|
|||
|
|
@ -192,4 +192,13 @@ jQuery(function($){
|
|||
}
|
||||
});
|
||||
|
||||
$('.__sync').click(function (){
|
||||
exec_xml(
|
||||
'importer', // module
|
||||
'procImporterAdminSync', // act
|
||||
null,
|
||||
function(ret){if(ret && (!ret.error || ret.error == '0'))alert(ret.message);}, // callback
|
||||
resp = ['error','message'] // response tags
|
||||
);
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
|
||||
<form action="./" class="form" ruleset="insertConfig" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminInsertConfig" />
|
||||
|
|
@ -220,6 +221,12 @@
|
|||
<span class="btn medium"><input type="submit" value="{$lang->cmd_save}" /></span>
|
||||
</div>
|
||||
</form>
|
||||
<h2 class="h2">{$lang->cmd_member_sync}</h2>
|
||||
<div class="form">
|
||||
<span class="btn small"><input type="button" value="{$lang->cmd_member_sync}" class="__sync" /></span>
|
||||
<p class="description">{$lang->about_member_sync}</p>
|
||||
</div>
|
||||
|
||||
<div class="modal" id="userDefine">
|
||||
<form action="./" class="fg form" ruleset="insertJoinForm" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue