git-svn-id: http://xe-core.googlecode.com/svn/trunk@887 201d5d3c-b55e-5fd7-737f-ddc643e51545

This commit is contained in:
zero 2007-04-02 06:42:57 +00:00
parent 9e573df09a
commit cf8e6380e9
11 changed files with 258 additions and 39 deletions

View file

@ -286,7 +286,8 @@
**/
function procMemberInsert() {
// 필수 정보들을 미리 추출
$args = Context::gets('member_srl','user_id','user_name','nick_name','email_address','password','allow_mailing','signature');
$args = Context::gets('user_id','user_name','nick_name','email_address','password','allow_mailing','signature');
$args->member_srl = getNextSequence();
// 넘어온 모든 변수중에서 몇가지 불필요한 것들 삭제
$all_args = Context::getRequestVars();
@ -300,31 +301,51 @@
$extra_vars = delObjectVars($all_args, $args);
$args->extra_vars = serialize($extra_vars);
// member_srl이 넘어오면 원 회원이 있는지 확인
if($args->member_srl) {
// 멤버 모델 객체 생성
$oMemberModel = &getModel('member');
// 회원 정보 구하기
$member_info = $oMemberModel->getMemberInfoByMemberSrl($args->member_srl);
// 만약 원래 회원이 없으면 새로 입력하기 위한 처리
if($member_info->member_srl != $args->member_srl) unset($args->member_srl);
}
// member_srl의 값에 따라 insert/update
if(!$args->member_srl) {
$output = $this->insertMember($args);
$msg_code = 'success_registed';
} else {
$output = $this->updateMember($args);
$msg_code = 'success_updated';
}
$output = $this->insertMember($args);
if(!$output->toBool()) return $output;
$this->add('member_srl', $args->member_srl);
$this->setMessage($msg_code);
$this->setMessage('success_registed');
}
/**
* @brief 회원 가입 or 정보 수정
**/
function procMemberModifyInfo() {
if(!Context::get('is_logged')) return $this->stop('msg_not_logged');
// 필수 정보들을 미리 추출
$args = Context::gets('nick_name','email_address','allow_mailing','signature');
// 로그인 정보
$logged_info = Context::get('logged_info');
$args->member_srl = $logged_info->member_srl;
// 넘어온 모든 변수중에서 몇가지 불필요한 것들 삭제
$all_args = Context::getRequestVars();
unset($all_args->module);
unset($all_args->act);
unset($all_args->is_admin);
unset($all_args->description);
unset($all_args->group_srl_list);
// 모든 request argument에서 필수 정보만 제외 한 후 추가 데이터로 입력
$extra_vars = delObjectVars($all_args, $args);
$args->extra_vars = serialize($extra_vars);
// 멤버 모델 객체 생성
$oMemberModel = &getModel('member');
// 회원 정보 구하기
$member_info = $oMemberModel->getMemberInfoByMemberSrl($args->member_srl);
// member_srl의 값에 따라 insert/update
$output = $this->updateMember($args);
if(!$output->toBool()) return $output;
$this->add('member_srl', $args->member_srl);
$this->setMessage('success_updated');
}
@ -517,6 +538,7 @@
if(!$args->is_admin) unset($args->is_admin);
list($args->email_id, $args->email_host) = explode('@', $args->email_address);
// 아이디, 닉네임, email address 의 중복 체크
$member_srl = $oMemberModel->getMemberSrlByUserID($args->user_id);
if($member_srl&&$args->member_srl!=$member_srl) return new Object(-1,'msg_exists_user_id');
@ -530,6 +552,7 @@
// DB에 update
if($args->password) $args->password = md5($args->password);
else $args->password = $member_info->password;
if(!$args->user_name) $args->user_name = $member_info->user_name;
$output = executeQuery('member.updateMember', $args);
if(!$output->toBool()) return $output;