From 05483543ffb26c314dbeebcf6499fbddc4c037f3 Mon Sep 17 00:00:00 2001 From: zero Date: Fri, 13 Apr 2007 05:39:58 +0000 Subject: [PATCH] git-svn-id: http://xe-core.googlecode.com/svn/trunk@1127 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- modules/member/lang/ko.lang.php | 7 +++++++ modules/member/member.controller.php | 12 +++++++++++- modules/member/queries/insertMember.xml | 1 + modules/member/schemas/member.xml | 1 + modules/member/skins/default/js/member.js | 4 +++- modules/member/tpl/insert_member.html | 11 +++++++++++ modules/member/tpl/member_config.html | 7 +++++++ modules/member/tpl/member_info.html | 8 ++++++++ 8 files changed, 49 insertions(+), 2 deletions(-) diff --git a/modules/member/lang/ko.lang.php b/modules/member/lang/ko.lang.php index 9d5c17d20..a8ed7ac59 100644 --- a/modules/member/lang/ko.lang.php +++ b/modules/member/lang/ko.lang.php @@ -38,6 +38,8 @@ $lang->image_mark_max_width = '가로 제한 크기'; $lang->image_mark_max_height = '세로 제한 크기'; $lang->enable_join = '회원 가입 허가'; + $lang->limit_day = '임시 제한 일자'; + $lang->limit_date = '제한일'; $lang->redirect_url = '회원 가입후 이동할 페이지'; $lang->agreement = '회원 가입 약관'; $lang->accept_agreement = '약관동의'; @@ -114,6 +116,9 @@ $lang->msg_accept_agreement = '약관에 동의하셔야 합니다'; + $lang->msg_user_denied = '입력하신 아이디의 사용이 중지되셨습니다'; + $lang->msg_user_limited = '입력하신 아이디는 %s 이후부터 사용하실 수 있습니다'; + $lang->about_user_id = '사용자 ID는 3~20자 사이의 영문+숫자로 이루어져야 하며 영문으로 시작되어야 합니다'; $lang->about_password = '비밀번호는 6~20자로 되어야 합니다'; $lang->about_user_name = '이름은 2~20자 이내여야 합니다'; @@ -137,6 +142,8 @@ $lang->about_required = '체크하시면 회원가입시 필수항목으로 입력하도록 됩니다'; $lang->about_enable_join = '체크를 하셔야 사용자들이 회원가입을 할 수 있습니다'; + $lang->about_limit_day = '회원 가입후 정해진 일자동안 인증 제한을 할 수 있습니다'; + $lang->about_limit_date = '지정된 일자까지 해당 사용자는 로그인을 할 수 없습니다'; $lang->about_redirect_url = '회원 가입후 이동할 url을 입력해 주세요. 비어 있으면 가입 이전 페이지로 돌아갑니다'; $lang->about_agreement = '회원가입약관이 없을 경우 표시되지 않습니다'; diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index 5fb026dd2..d0cd8f8d0 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -455,10 +455,11 @@ **/ function procMemberAdminInsertConfig() { // 기본 정보를 받음 - $args = Context::gets('enable_join','redirect_url','content','image_name','image_mark', 'image_name_max_width', 'image_name_max_height','image_mark_max_width','image_mark_max_height'); + $args = Context::gets('enable_join','limit_day','redirect_url','content','image_name','image_mark', 'image_name_max_width', 'image_name_max_height','image_mark_max_width','image_mark_max_height'); if($args->enable_join!='Y') $args->enable_join = 'N'; if($args->image_name!='Y') $args->image_name = 'N'; if($args->image_mark!='Y') $args->image_mark = 'N'; + $args->limit_day = (int)$args->limit_day; $args->agreement = $args->content; unset($args->content); @@ -849,6 +850,12 @@ if($member_info->user_id != $user_id) return new Object(-1, 'invalid_user_id'); if($password && $member_info->password != md5($password)) return new Object(-1, 'invalid_password'); + // denied == 'Y' 이면 알림 + if($member_info->denied == 'Y') return new Object(-1,'msg_user_denied'); + + // denied_date가 현 시간보다 적으면 알림 + if($member_info->limit_date && $member_info->limit_date >= date("YmdHis")) return new Object(-1,sprintf(Context::getLang('msg_user_limited'),zdate($member_info->limit_date,"Y-m-d H:i"))); + // 로그인 처리 $_SESSION['is_logged'] = true; $_SESSION['ipaddress'] = $_SERVER['REMOTE_ADDR']; @@ -880,6 +887,9 @@ return new Object(-1, 'msg_accept_agreement'); } + // 임시 제한 일자가 있을 경우 제한 일자에 내용 추가 + if($config->limit_day) $args->limit_date = date("YmdHis", time()+$config->limit_day*60*60*24); + // 필수 변수들의 조절 if($args->allow_mailing!='Y') $args->allow_mailing = 'N'; if(!in_array($args->allow_message, array('Y','N','F'))) $args->allow_message= 'Y'; diff --git a/modules/member/queries/insertMember.xml b/modules/member/queries/insertMember.xml index 71781f963..d47025596 100644 --- a/modules/member/queries/insertMember.xml +++ b/modules/member/queries/insertMember.xml @@ -17,6 +17,7 @@ + diff --git a/modules/member/schemas/member.xml b/modules/member/schemas/member.xml index a1e761772..9d75750b3 100644 --- a/modules/member/schemas/member.xml +++ b/modules/member/schemas/member.xml @@ -13,6 +13,7 @@ + diff --git a/modules/member/skins/default/js/member.js b/modules/member/skins/default/js/member.js index bbca757a9..23cb00526 100644 --- a/modules/member/skins/default/js/member.js +++ b/modules/member/skins/default/js/member.js @@ -63,8 +63,10 @@ function doFocusUserId(fo_id) { if(xGetCookie('user_id')) { fo_obj.user_id.value = xGetCookie('user_id'); fo_obj.remember_user_id.checked = true; + fo_obj.password.focus(); + } else { + fo_obj.user_id.focus(); } - fo_obj.user_id.focus(); } /* 로그인 후 */ diff --git a/modules/member/tpl/insert_member.html b/modules/member/tpl/insert_member.html index ce92ecc6b..4c67775c3 100644 --- a/modules/member/tpl/insert_member.html +++ b/modules/member/tpl/insert_member.html @@ -126,6 +126,17 @@ {$lang->about_denied} + + {$lang->limit_date} + + + {zdate($member_info->limit_date,"Y-m-d")} + [{$lang->cmd_open_calendar}] + + + + {$lang->about_limit_date} + {$lang->is_admin} is_admin=='Y')-->checked="true"/> diff --git a/modules/member/tpl/member_config.html b/modules/member/tpl/member_config.html index f83fdd805..5d987fdf7 100644 --- a/modules/member/tpl/member_config.html +++ b/modules/member/tpl/member_config.html @@ -21,6 +21,13 @@ {$lang->about_enable_join} + + {$lang->limit_day} + {$lang->unit_day} + + + {$lang->about_limit_day} + {$lang->image_name} diff --git a/modules/member/tpl/member_info.html b/modules/member/tpl/member_info.html index e7cfbe25c..4fdcb54fd 100644 --- a/modules/member/tpl/member_info.html +++ b/modules/member/tpl/member_info.html @@ -92,6 +92,14 @@ {$lang->denied} {$member_info->denied} + + {$lang->limit_date} + + + {zdate($member_info->limit_date,"Y-m-d H:i")} + + + {$lang->is_admin} {$member_info->is_admin}