웹마스터 팁

회원약관 추가

2009.01.15 14:07

애치티




 modules/member/member.admin.controller.php
 /**
         * @brief 회원 관리용 기본 정보의 추가
81line
         **/
        function procMemberAdminInsertConfig() {
            // 기본 정보를 받음
            $args = Context::gets('webmaster_name','webmaster_email','skin','colorset','enable_openid','enable_join','enable_confirm','limit_day','after_login_url',
'after_logout_url','redirect_url','agreement','infor','profile_image','profile_image_max_width','profile_image_max_height','image_name',
'image_mark', 'image_name_max_width', 'image_name_max_height','image_mark_max_width','image_mark_max_height','signature_max_height','editor_skin',
'editor_colorset');
            if(!$args->skin) $args->skin = "default";
            if(!$args->colorset) $args->colorset = "white";
            if(!$args->editor_skin) $args->editor_skin= "default";
            if(!$args->editor_colorset) $args->editor_colorset = "white";
            if($args->enable_join!='Y') $args->enable_join = 'N';
            if($args->enable_openid!='Y') $args->enable_openid= 'N';
            if($args->profile_image !='Y') $args->profile_image = 'N';
            if($args->image_name!='Y') $args->image_name = 'N';
            if($args->image_mark!='Y') $args->image_mark = 'N';
            if(!trim(strip_tags($args->agreement))) $args->agreement = null;
            if(!trim(strip_tags($args->infor))) $args->infor = null;

 modules/member/member.controller.php
 416line
             // 약관에 동의하였는지 검사 (약관이 있을 경우만)
            if($config->agreement && Context::get('accept_agreement')!='Y') return $this->stop('msg_accept_agreement');

            // 약관에 동의하였는지 검사 (약관이 있을 경우만)
            if($config->infor && Context::get('accept_infor')!='+ '+ 'Y') return $this->stop('msg_accept_infor');

            // 필수 정보들을 미리 추출
            $args = Context::gets('user_id','user_name','nick_name'+ ','homepage','blog','birthday','email_address','password','allow_mailing');
            $args->member_srl = getNextSequence();

            // 넘어온 모든 변수중에서 몇가지 불필요한 것들 삭제
            $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);
            unset($all_args->body);
            unset($all_args->accept_agreement);
            unset($all_args->accept_infor);
            unset($all_args->signature);


474line
            // 넘어온 모든 변수중에서 몇가지 불필요한 것들 삭제
            $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);
            unset($all_args->body);
            unset($all_args->accept_agreement);
            unset($all_args->accept_infor);
            unset($all_args->signature);


 modules/member/lang/ko.lang.php
    $lang->agreement = '회원 가입 약관';
    $lang->infor = '정보이용약관';
    $lang->accept_agreement = '약관동의';
    $lang->accept_infor = '정보이용동의';

    $lang->msg_accept_agreement = '약관에 동의하셔야 합니다';
    $lang->msg_accept_infor = '정보이용에 동의하셔야 합니다';   

     $lang->about_agreement = '회원가입약관이 없을 경우 표시되지 않습니다';
    $lang->about_infor = '정보이용약관이 없을 경우 표시되지 않습니다'+ ';

    $lang->about_accept_agreement = '약관을 모두 읽었으며 동의합니다';
    $lang->about_accept_infor = '정보이용약관을 모두 읽었으며 동의합니다';


 modules/member/tpl/member_config.html
 1line
 <!--%import("filter/insert_config.xml")-->
<!--%import("../../editor/tpl/js/editor_module_config.js",optimized=false)-->

<!--#include("header.html")-->

<form action="./" method="get" onsubmit="return procFilter(this, insert_config)">
<input type="hidden" name="temp_srl" value="" />
<input type="hidden" name="agreement" value="{htmlspecialchars($config->agreement)}" />
<input type="hidden" name="infor" value="{htmlspecialchars($config->infor)}" />  :: 필요없습니다.

130line
<tr>
    <th scope="row"><div>{$lang->agreement}</div></th>
    <td>
        {$editor}
        <p>{$lang->about_agreement}</p>
    </td>
</tr>
<tr>
    <th scope="row"><div>{$lang->infor}</div></th>
    <td>
    <textarea name="{infor}" width=100% class="inputTypeTextArea wall">{$config->infor}</textarea>
        <p>{$lang->about_infor}</p>
    </td>
</tr>


 modules/member/skins/default/signup_form.html
  <!--@if(!$is_logged && $member_config->agreement)-->
    <div class="agreementBox">
        {nl2br($member_config->agreement)}
    </div>
    <div class="agreementButton">
        <input type="checkbox" name="accept_agreement" value="Y" id="accept_agree" />
        <label for="accept_agree">{$lang->about_accept_agreement}</label>
    </div>
    <!--@end-->
    <!--@if(!$is_logged && $member_config->infor)-->
    <div class="agreementBox">
        {nl2br($member_config->infor)}
    </div>
    <div class="agreementButton">
        <input type="checkbox" name="accept_infor" value="Y" id="accept_inform" />
        <label for="accept_inform">{$lang->about_accept_infor}</label>
    </div>
    <
!--@end
-->


modules/member/skins/default/filter/modify_info.xml
 <filter name="modify_info" module="member" act="procMemberModifyInfo" extend_filter="member.getJoinFormList" confirm_msg_code="confirm_submit">
    <form>
        <node target="user_name" required="true" minlength="2" maxlength="40"/>
        <node target="nick_name" required="true" minlength="2" maxlength="40"/>
        <node target="email_address" required="true" minlength="1" maxlength="200" filter="email"/>
    </form>
    <parameter>
        <param name="accept_agreement" target="accept_agreement" />
        <param name="accept_infor" target="accept_infor" />

 modules/member/skins/default/filter/signup.xml
 <filter name="signup" module="member" act="procMemberInsert" extend_filter="member.getJoinFormList" confirm_msg_code="confirm_submit">
    <form>
        <node target="user_id" required="true" minlength="2" maxlength="80" filter="userid" />
        <node target="password1" required="true" minlength="6" maxlength="20" />
        <node target="password2" required="true" minlength="6" maxlength="20" equalto="password1" />
        <node target="user_name" required="true" minlength="2" maxlength="40" />
        <node target="nick_name" required="true" minlength="2" maxlength="40" />
        <node target="email_address" required="true" minlength="1" maxlength="200" filter="email"/>
    </form>
    <parameter>
        <param name="accept_agreement" target="accept_agreement" />
        <param name="accept_infor" target="accept_infor" />


빨간색부분 추가하면 됨니다.
추가 약관 에디터모듈에서 TEXTAREA로 변경
제목 글쓴이 날짜
회원약관 추가 [7] file 애치티 2009.01.15
(재 수정) 제로보드 XE 신버젼에 Lavalic 2 설치하기 [4] 조성우371 2009.01.16
제로보드 DTREE 메뉴 적용하기 ( 카테고리 선택기 흉내 냈습니다.) [5] file 조성우371 2009.01.17
제로보드XE 외부출석부 [1] file noirzo 2009.01.18
계시글 제목이 짤려서 나오는데 어디를 수정해야 할까요... [2] file 지우빠 2009.01.20
쪽지보내기에 대하여 문의 [1] 도봉산사랑 2009.01.22
첨부 파일 용량 문제 - 이것도 저것도 않될때 [4] file DeJavu346 2009.01.22
1.1.5 이후 버전 업데이트후 외부페이지에서 다음위젯이 표시안될때~ [3] 정박사닷컴 2009.01.23
공식레이아웃에 언어선택 부분 빼는 방법 아주 간단합니다. [1] file 만쓰별(정만) 2009.01.23
미지원 언어 추가하기(기존에꺼 하나 골라서 수정하는 방식으로) 만쓰별(정만) 2009.01.23
페이지 모듈에도 게시판제목 처럼 다는 쉬운방법... [2] 만쓰별(정만) 2009.01.23
프레임셋을 이용하여 도메인 명만 보여주기 /xe ~~ 와 같은 것 없애기 [5] 만쓰별(정만) 2009.01.23
전체글 보기 게시판 만들어보기 관련 연구 응용 링크 모음 [5] 만쓰별(정만) 2009.01.23
회원을 그룹으로 나누어 화면에 출력할 수 있나요? 아키수 2009.01.24
묻고 답하기용 게시판 [1] yunesb 2009.01.24
메뉴활성화에 따라 원하는 위치에 레이어 넣고 바꾸기.. 왼쪽 플래시 메뉴 메뉴따라서 바꾸기 [4] 만쓰별(정만) 2009.01.24
XpressEngine 초보자를 위해서! [1] 바라기군 2009.01.25
인터넷 익스플로러 vs 파이어 폭스 속도 차이 [3] Jiwoon Kim 2009.01.25
매일 매일 업데이트 되는 사이트 내용부분만 아이프레임으로 긁어오기... [1] 만쓰별(정만) 2009.01.25
pdf 파일 embeded in XE 게시판 [4] file 자반튀김 2009.01.27