mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-26 06:39:56 +09:00
added a checked password page when information of member before modify.
git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.3.2@11099 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
103fe3a2c0
commit
4f984d4f91
6 changed files with 130 additions and 8 deletions
|
|
@ -42,6 +42,7 @@
|
|||
<action name="procMemberCheckValue" type="controller" standalone="true" />
|
||||
<action name="procMemberInsert" type="controller" standalone="true" ruleset="@insertMember" />
|
||||
<action name="procMemberModifyEmailAddress" type="controller" ruleset="modifyEmailAddress" />
|
||||
<action name="procMemberModifyInfoBefore" type="controller" ruleset="recheckedPassword" />
|
||||
<action name="procMemberModifyInfo" type="controller" standalone="true" ruleset="@insertMember" />
|
||||
<action name="procMemberModifyPassword" type="controller" standalone="true" ruleset="modifyPassword" />
|
||||
<action name="procMemberLeave" type="controller" standalone="true" ruleset="leaveMember" />
|
||||
|
|
|
|||
|
|
@ -1308,6 +1308,10 @@
|
|||
<value xml:lang="tr"><![CDATA[Üye Ekle]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Thêm thành viên]]></value>
|
||||
</item>
|
||||
<item name="msg_rechecked_password">
|
||||
<value xml:lang="ko"><![CDATA[비밀번호 재확인]]></value>
|
||||
<value xml:lang="en"><![CDATA[Re-checked password]]></value>
|
||||
</item>
|
||||
<item name="msg_update_member">
|
||||
<value xml:lang="ko"><![CDATA[회원 정보 수정]]></value>
|
||||
<value xml:lang="en"><![CDATA[Modify User Info]]></value>
|
||||
|
|
@ -1570,6 +1574,9 @@
|
|||
<value xml:lang="tr"><![CDATA[Bu kimlik, %s Tarihinden sonra kullanılabilir]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Bạn được phép sử dụng đến ngày %s]]></value>
|
||||
</item>
|
||||
<item name="about_rechecked_password">
|
||||
<value xml:lang="ko"><![CDATA[회원의 정보를 안전하게 보호하기 위해 비밀번호를 다시 한번 확인 합니다.]]></value>
|
||||
</item>
|
||||
<item name="about_user_id">
|
||||
<value xml:lang="ko"><![CDATA[회원 ID는 3~20자 사이의 영문+숫자로 이루어져야 하며 영문으로 시작해야 합니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[User ID should be 3~20 characters long, consist of alphanumeric and start with a letter.]]></value>
|
||||
|
|
|
|||
|
|
@ -360,6 +360,48 @@
|
|||
$this->setRedirectUrl($returnUrl);
|
||||
}
|
||||
|
||||
|
||||
function procMemberModifyInfoBefore()
|
||||
{
|
||||
if(!$_SESSION['rechecked_password_step'])
|
||||
{
|
||||
return $this->stop('msg_invalid_request');
|
||||
}
|
||||
|
||||
if(!Context::get('is_logged'))
|
||||
{
|
||||
return $this->stop('msg_not_logged');
|
||||
}
|
||||
|
||||
$password = Context::get('password');
|
||||
|
||||
if(!$password)
|
||||
{
|
||||
return $this->stop('msg_invalid_request');
|
||||
}
|
||||
|
||||
$oMemberModel = &getModel('member');
|
||||
|
||||
if(!$this->memberInfo->password)
|
||||
{
|
||||
$columnList = array('member_srl', 'password');
|
||||
$memberInfo = $oMemberModel->getMemberInfoByMemberSrl($member_srl, 0, $columnList);
|
||||
$this->memberInfo->password = $memberInfo->password;
|
||||
}
|
||||
// Verify the cuttent password
|
||||
if(!$oMemberModel->isValidPassword($this->memberInfo->password, $password))
|
||||
{
|
||||
return new Object(-1, 'invalid_password');
|
||||
}
|
||||
|
||||
$_SESSION['rechecked_password'] = TRUE;
|
||||
$_SESSION['rechecked_password_step'] = FALSE;
|
||||
|
||||
$redirectUrl = getUrl('', 'act', 'dispMemberModifyInfo');
|
||||
$this->setRedirectUrl($redirectUrl);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Edit member profile
|
||||
*
|
||||
|
|
@ -403,9 +445,7 @@
|
|||
// Add extra vars after excluding necessary information from all the requested arguments
|
||||
$extra_vars = delObjectVars($all_args, $args);
|
||||
$args->extra_vars = serialize($extra_vars);
|
||||
// Create a member model object
|
||||
$oMemberModel = &getModel('member');
|
||||
|
||||
|
||||
// remove whitespace
|
||||
$checkInfos = array('user_id', 'nick_name', 'email_address');
|
||||
$replaceStr = array("\r\n", "\r", "\n", " ", "\t", "\xC2\xAD");
|
||||
|
|
|
|||
|
|
@ -146,12 +146,11 @@
|
|||
{
|
||||
$item->title = $extendFormInfo[$formInfo->member_join_form_srl]->column_title;
|
||||
$orgValue = $extendFormInfo[$formInfo->member_join_form_srl]->value;
|
||||
|
||||
if($formInfo->type=='tel')
|
||||
if($formInfo->type=='tel' && is_array($orgValue))
|
||||
{
|
||||
$item->value = implode('-', $orgValue);
|
||||
}
|
||||
elseif($formInfo->type=='kr_zip')
|
||||
elseif($formInfo->type=='kr_zip' && is_array($orgValue))
|
||||
{
|
||||
$item->value = implode(' ', $orgValue);
|
||||
}
|
||||
|
|
@ -211,11 +210,54 @@
|
|||
$this->setTemplateFile('signup_form');
|
||||
}
|
||||
|
||||
|
||||
function dispMemberModifyInfoBefore()
|
||||
{
|
||||
$logged_info = Context::get('logged_info');
|
||||
$oMemberModel = &getModel('member');
|
||||
if(!$oMemberModel->isLogged() || empty($logged_info))
|
||||
{
|
||||
return $this->stop('msg_not_logged');
|
||||
}
|
||||
|
||||
$_SESSION['rechecked_password'] = FALSE;
|
||||
$_SESSION['rechecked_password_step'] = TRUE;
|
||||
|
||||
$templateFile = $this->getTemplatePath().'rechecked_password.html';
|
||||
if(!is_readable($templateFile))
|
||||
{
|
||||
$templatePath = sprintf('%sskins/default', $this->module_path);
|
||||
$this->setTemplatePath($templatePath);
|
||||
}
|
||||
|
||||
if ($this->member_config->identifier == 'email_address')
|
||||
{
|
||||
Context::set('identifierTitle', Context::getLang('email_address'));
|
||||
Context::set('identifierValue', $logged_info->email_address);
|
||||
}
|
||||
else
|
||||
{
|
||||
Context::set('identifierTitle', Context::getLang('user_id'));
|
||||
Context::set('identifierValue', $logged_info->user_id);
|
||||
}
|
||||
|
||||
$this->setTemplateFile('rechecked_password');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Modify member information
|
||||
**/
|
||||
function dispMemberModifyInfo() {
|
||||
$member_config = $this->member_config;
|
||||
function dispMemberModifyInfo()
|
||||
{
|
||||
if(!$_SESSION['rechecked_password'])
|
||||
{
|
||||
$this->dispMemberModifyInfoBefore();
|
||||
return;
|
||||
}
|
||||
|
||||
$_SESSION['rechecked_password'] = FALSE;
|
||||
|
||||
$member_config = $this->member_config;
|
||||
|
||||
$oMemberModel = &getModel('member');
|
||||
// A message appears if the user is not logged-in
|
||||
|
|
|
|||
8
modules/member/ruleset/recheckedPassword.xml
Normal file
8
modules/member/ruleset/recheckedPassword.xml
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ruleset version="1.5.0">
|
||||
<customrules>
|
||||
</customrules>
|
||||
<fields>
|
||||
<field name="password" required="true" />
|
||||
</fields>
|
||||
</ruleset>
|
||||
24
modules/member/skins/default/rechecked_password.html
Normal file
24
modules/member/skins/default/rechecked_password.html
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<include target="./common_header.html" />
|
||||
<h1 class="h1">{$lang->msg_rechecked_password}</h1>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form class="form" action="./index.php" method="post" ruleset="recheckedPassword">
|
||||
<input type="hidden" name="act" value="procMemberModifyInfoBefore" />
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<ul>
|
||||
<li>
|
||||
<p class="q">{$identifierTitle}</p>
|
||||
<p class="a">{$identifierValue}</p>
|
||||
</li>
|
||||
<li>
|
||||
<p class="q">{$lang->password}</p>
|
||||
<p class="a"><input type="password" name="password" /></p>
|
||||
<p class="desc">{$lang->about_rechecked_password}</p>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><input type="submit" value="{$lang->cmd_confirm}" /></span>
|
||||
<span class="btn"><a href="{getUrl('act','dispMemberInfo','member_srl','')}">{$lang->cmd_cancel}</a></span>
|
||||
</div>
|
||||
</form>
|
||||
Loading…
Add table
Add a link
Reference in a new issue