웹마스터 팁
회원 가입시 admin이 가입 승인이후 동작시키도록 변경!!
2008.06.02 13:56
관리자로 로그인 한후 회원 설정에서 이메일 인증을 활성화 시킵니다.
modules/member/member.controller.php의 인증 메일 보내는 부분 주석처리
// 메일 인증 모드 사용시(가입된 회원이 denied일 때) 인증 메일 발송
if ($args->denied == 'Y') {
// 인증 DB에 데이터를 넣음
$auth_args->user_id = $args->user_id;
$auth_args->member_srl = $args->member_srl;
$auth_args->new_password = $args->password;
$auth_args->auth_key = md5(rand(0, 999999));
$auth_args->is_register = 'Y';
$output = executeQuery('member.insertAuthMail', $auth_args);
if (!$output->toBool()) {
$oDB->rollback();
return $output;
}
// 메일 내용을 구함
Context::set('auth_args', $auth_args);
Context::set('member_info', $args);
$oTemplate = &TemplateHandler::getInstance();
$content = $oTemplate->compile($this->module_path.'tpl', 'confirm_member_account_mail');
// 사이트 웹마스터 정보를 구함
$oModuleModel = &getModel('module');
$member_config = $oModuleModel->getModuleConfig('member');
// 메일 발송
$oMail = new Mail();
$oMail->setTitle( Context::getLang('msg_confirm_account_title') );
$oMail->setContent($content);
$oMail->setSender( $member_config->webmaster_name?$member_config->webmaster_name:'webmaster', $member_config->webmaster_email);
$oMail->setReceiptor( $args->user_name, $args->email_address );
$oMail->send();
}
이부분에서 위 적어놓은 부분 전체를 삭제하거나,
// $oMail->send(); 이 부분만 주석처리
혹은 적어 놓은 부분을 전체를 주석처리 하면 됩니다.
(서버 부하를 주리기 위해서는 전체 삭제나 전체 주석처리를 추천합니다.)
저같은 경우 코드를 손상시키기 싫어 다음과 같이 수정했습니다. 절대로 이루어질수 없는 경우죠 ^^;
// 메일 인증 모드 사용시(가입된 회원이 denied일 때) 인증 메일 발송
if ($args->denied == 'Y' && $args->denied == 'N') {
그럼 admin 로그인후 관리자 페이지 에서 가입자 중, 회원 -> 가입되어있는 사람 중
부분을 N으로 풀어주게 되면 승인한 것으로 동작합니다.
사용중지
Y
또한, 사용 중지된 사용자가 로그인 시도시 나타나는 메시지가
이메일을 확인하라는 내용이 나타나게 되는대
해당 메시지를 수정해야합니다.
modules/member/lang 에보면 각 언어가 있습니다.
각 언어에 맞게 수정해주시가 바랍니다.
한글을 기준으로 ko.lang.php의 168번재 라인을 아래와 같이 수정하면 되겠지요.
ps. 업데이트할 경우, 해당 부분들을 다시 수정해야 합니다.
저같은 경우, 가입대기자 를 기본 가입 그룹으로 만들고
가입대기자 / 회원 / 관리자 형식으로 분류하여
가입시 가입대기자로 분류되며 기본상태는 사용중지 상태!!
가입자가 가입신청을하게되면 가입대기자 & 사용 중지 가 되는 거죠;
그리고 전에 적어놓았던 email 전송 부분을 사용 admin이 이메일을 수신하게 되고
admin이 관리자 페이지로 이동하여 승인 결정을 하게 됩니다.
승인 결정을 한후, 회원으로 등급시키던지 삭제하던지....
등업 시킬경우 사용중지 상태를 필히!! 삭제해야하고요