웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
제로보드XE가입 -> 트랙자동가입 기능
2008.10.14 11:04
제로보드XE와 트랙을 같이 사용하는 사이트를 구성하다가.
항상 두가지를 따로 따로 가입해야 된다는 점이 매우 매우 불편하여 어제 밤새도록 삽질을 시도해서 성공했습니다.
우선 저는 TOW를 사용하여 Trac을 설치하였고 TOW의 Apache\htdoc 폴더에 웹페이지를 구동하였습니다.
1. 회원 가입 폼에 필수 항목으로 JoinTrac이라는 이름으로 트랙 가입 여부 체크 박스를 추가하였습니다.
2. /zbxe/modules/member/member.admin.comtroller.php (관리자 페이지에서 회원 가입)
-- line 21
$args = Context::gets('member_srl','user_id','user_name','nick_name','homepage','blog','birthday','email_address','password','allow_mailing','allow_message','denied','is_admin','description','group_srl_list','limit_date');
--->
$args = Context::gets('member_srl','user_id','user_name','nick_name','homepage','blog','birthday','email_address','password','allow_mailing','allow_message','denied','is_admin','description','group_srl_list','limit_date','jointrac');
$pass = $args->password; // 패스워드값이 암호화 되기 전에 미리 변수에 저장(암호화는 Trac가입시에)
--line 56 ~ 71
// 서명 저장
$signature = Context::get('signature');
$oMemberController->putSignature($args->member_srl, $signature);
// 결과 리턴
$this->add('member_srl', $args->member_srl);
$this->setMessage($msg_code);
-->
// 서명 저장
$signature = Context::get('signature');
$oMemberController->putSignature($args->member_srl, $signature);
$fp = popen('D:\\TOW\\Apache\\bin\htpasswd -b D:\\TOW\\SvnRepo\\Projects\\trac.htpasswd '.$args->user_id.' '.$pass,'w');
pclose($fp);
if($args->jointrac=="AA"){
$fp = popen('D:\\TOW\\add-perm AA '.$args->user_id.' dev2','w');
pclose($fp);
}else if($args->jointrac=="BB"){
$fp = popen('D:\\TOW\\add-perm BB '.$args->user_id.' dev','w');
pclose($fp);
}
// htpasswd 실행하여 회원 정보 저장
// 필수 항목 체크 박스인 JoinTrac 항목에서 프로젝트AA에 체크 되어있으면 AA프로젝트의 Dev2 그룹 권한 추가
// BBB 프로젝트에 체크되어있으면 BB프로젝트의 Dev3 그룹 권한 추가
// 결과 리턴
$this->add('member_srl', $args->member_srl);
$this->setMessage($msg_code);
회원 개인적으로 가입 기능을 사용 안해서 관리자 쪽만 수정했지만 member.controller 를 사용하면 일반회원이 가입폼을 통해서도 Trac가입이 가능할 것으로 생각됩니다~
이제 로그인 연동도 가능하면 알아봐야 겠네요 ^^;;
항상 두가지를 따로 따로 가입해야 된다는 점이 매우 매우 불편하여 어제 밤새도록 삽질을 시도해서 성공했습니다.
우선 저는 TOW를 사용하여 Trac을 설치하였고 TOW의 Apache\htdoc 폴더에 웹페이지를 구동하였습니다.
1. 회원 가입 폼에 필수 항목으로 JoinTrac이라는 이름으로 트랙 가입 여부 체크 박스를 추가하였습니다.
2. /zbxe/modules/member/member.admin.comtroller.php (관리자 페이지에서 회원 가입)
-- line 21
$args = Context::gets('member_srl','user_id','user_name','nick_name','homepage','blog','birthday','email_address','password','allow_mailing','allow_message','denied','is_admin','description','group_srl_list','limit_date');
--->
$args = Context::gets('member_srl','user_id','user_name','nick_name','homepage','blog','birthday','email_address','password','allow_mailing','allow_message','denied','is_admin','description','group_srl_list','limit_date','jointrac');
$pass = $args->password; // 패스워드값이 암호화 되기 전에 미리 변수에 저장(암호화는 Trac가입시에)
--line 56 ~ 71
// 서명 저장
$signature = Context::get('signature');
$oMemberController->putSignature($args->member_srl, $signature);
// 결과 리턴
$this->add('member_srl', $args->member_srl);
$this->setMessage($msg_code);
-->
// 서명 저장
$signature = Context::get('signature');
$oMemberController->putSignature($args->member_srl, $signature);
$fp = popen('D:\\TOW\\Apache\\bin\htpasswd -b D:\\TOW\\SvnRepo\\Projects\\trac.htpasswd '.$args->user_id.' '.$pass,'w');
pclose($fp);
if($args->jointrac=="AA"){
$fp = popen('D:\\TOW\\add-perm AA '.$args->user_id.' dev2','w');
pclose($fp);
}else if($args->jointrac=="BB"){
$fp = popen('D:\\TOW\\add-perm BB '.$args->user_id.' dev','w');
pclose($fp);
}
// htpasswd 실행하여 회원 정보 저장
// 필수 항목 체크 박스인 JoinTrac 항목에서 프로젝트AA에 체크 되어있으면 AA프로젝트의 Dev2 그룹 권한 추가
// BBB 프로젝트에 체크되어있으면 BB프로젝트의 Dev3 그룹 권한 추가
// 결과 리턴
$this->add('member_srl', $args->member_srl);
$this->setMessage($msg_code);
회원 개인적으로 가입 기능을 사용 안해서 관리자 쪽만 수정했지만 member.controller 를 사용하면 일반회원이 가입폼을 통해서도 Trac가입이 가능할 것으로 생각됩니다~
이제 로그인 연동도 가능하면 알아봐야 겠네요 ^^;;
댓글 0
제목 | 글쓴이 | 날짜 |
---|---|---|
주소록 구현 (외부 페이지) [17] | CSLab | 2008.09.15 |
● 탈퇴버튼 없애기 - - ; [4] | Eris | 2008.09.23 |
[권한이 없습니다] 권한에 따른 다른 메시지 출력하기 [10] [1] | 반도체맨 | 2008.10.03 |
제로보드XE가입 -> 트랙자동가입 기능 | 개돌 | 2008.10.14 |
회원 관리 리스트에 생일/설명/활동량 추가하기
[16]
![]() | 老姜君 | 2008.11.21 |
[초간단]회원팝업메뉴에 메뉴넣기 [1] | Pw-NET | 2008.11.30 |
회원정보 이미지 항목 추가 [3] | 개돌 | 2008.12.22 |
회원약관 추가
[7]
![]() | 애치티 | 2009.01.15 |
관리자 여러명 만들기 팁
[1]
![]() | 만쓰별(정만) | 2009.02.03 |
주민등록번호 입력 폼 추가 (1.1.5 기준) [39] | 개돌 | 2009.02.16 |
테스트용 아이디 탈퇴 막기 [1] | SMaker | 2009.02.26 |
제로보드의 아이콘을 내 맘대로 변경하기...(1)
[3]
![]() | winter548 | 2009.03.23 |
제로보드의 아이콘을 내 맘대로 변경하기...(2)
[2]
![]() | winter548 | 2009.03.23 |
클릭마다 조회수 올리기 [1.4.0]
[12]
![]() | 지B | 2009.04.04 |
주민등록 입력 폼 1.2.0
[55]
![]() | 개돌 | 2009.04.10 |
별도 페이지 로그인방법 | cornet | 2009.05.21 |
로그인 페이지 만드는 방법 [5] | 산토 | 2009.06.12 |
확장변수에 회원정보를 넣어보자
[10]
![]() | 개돌 | 2009.06.30 |
회원정보 손쉽게 엑셀 파일로 저장하기 [34] | thejeon | 2009.08.05 |
까오천사님의 만기일 팁을 1.2.4에 맞게 수정했어요.
[15]
![]() | 도파 | 2009.08.27 |