위젯 검출 정규 표현식을 수정

git-svn-id: http://xe-core.googlecode.com/svn/sandbox@2892 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
zero 2007-11-01 10:28:42 +00:00
parent f9896fe51a
commit 90aa62a6ac
993 changed files with 9190 additions and 10457 deletions

View file

@ -19,10 +19,287 @@
function init() {
}
/**
* @brief 회원가입 포인트 적용 trigger
**/
function triggerInsertMember(&$obj) {
// point 모듈 정보 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
// 가입한 회원의 member_srl을 구함
$member_srl = $obj->member_srl;
// 대상 회원의 포인트를 구함
$oPointModel = &getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
$point = $config->signup_point;
// 포인트 증감
$cur_point += $point;
$this->setPoint($member_srl,$cur_point);
return new Object();
}
/**
* @brief 회원 로그인 포인트 적용 trigger
**/
function triggerAfterLogin(&$obj) {
$member_srl = $obj->member_srl;
if(!$member_srl) return new Object();
// 바로 이전 로그인이 오늘이 아니어야 포인트를 줌
if(substr($obj->last_login,0,8)==date("Ymd")) return new Object();
// point 모듈 정보 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
// 대상 회원의 포인트를 구함
$oPointModel = &getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
$point = $config->login_point;
// 포인트 증감
$cur_point += $point;
$this->setPoint($member_srl,$cur_point);
return new Object();
}
/**
* @brief 게시글 등록 포인트 적용 trigger
**/
function triggerInsertDocument(&$obj) {
$module_srl = $obj->module_srl;
$member_srl = $obj->member_srl;
if(!$module_srl || !$member_srl) return new Object();
// point 모듈 정보 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
// 대상 회원의 포인트를 구함
$oPointModel = &getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
$point = $config->module_point[$module_srl]['insert_document'];
if(!isset($point)) $point = $config->insert_document;
// 포인트 증감
$cur_point += $point;
$this->setPoint($member_srl,$cur_point);
return new Object();
}
/**
* @brief 게시글 삭제 포인트 적용 trigger
**/
function triggerDeleteDocument(&$obj) {
$module_srl = $obj->module_srl;
$member_srl = $obj->member_srl;
if(!$module_srl || !$member_srl) return new Object();
// 로그인 상태일때만 실행
$logged_info = Context::get('logged_info');
if(!$logged_info->member_srl) return new Object();
// point 모듈 정보 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
// 대상 회원의 포인트를 구함
$oPointModel = &getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
$point = $config->module_point[$module_srl]['insert_document'];
if(!isset($point)) $point = $config->insert_document;
// 포인트 증감
$cur_point -= $point;
$this->setPoint($member_srl,$cur_point);
return new Object();
}
/**
* @brief 댓글 등록 포인트 적용 trigger
**/
function triggerInsertComment(&$obj) {
$module_srl = $obj->module_srl;
$member_srl = $obj->member_srl;
if(!$module_srl || !$member_srl) return new Object();
// point 모듈 정보 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
// 대상 회원의 포인트를 구함
$oPointModel = &getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
$point = $config->module_point[$module_srl]['insert_comment'];
if(!isset($point)) $point = $config->insert_comment;
// 포인트 증감
$cur_point += $point;
$this->setPoint($member_srl,$cur_point);
return new Object();
}
/**
* @brief 댓글 삭제 포인트 적용 trigger
**/
function triggerDeleteComment(&$obj) {
$module_srl = $obj->module_srl;
$member_srl = $obj->member_srl;
if(!$module_srl || !$member_srl) return new Object();
// point 모듈 정보 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
// 대상 회원의 포인트를 구함
$oPointModel = &getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
$point = $config->module_point[$module_srl]['insert_comment'];
if(!isset($point)) $point = $config->insert_comment;
// 포인트 증감
$cur_point -= $point;
$this->setPoint($member_srl,$cur_point);
return new Object();
}
/**
* @brief 파일 등록 trigger 추가
**/
function triggerInsertFile(&$obj) {
$module_srl = $obj->module_srl;
$member_srl = $obj->member_srl;
if(!$module_srl || !$member_srl) return new Object();
// point 모듈 정보 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
// 대상 회원의 포인트를 구함
$oPointModel = &getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
$point = $config->module_point[$module_srl]['upload_file'];
if(!isset($point)) $point = $config->upload_file;
// 포인트 증감
$cur_point += $point;
$this->setPoint($member_srl,$cur_point);
return new Object();
}
/**
* @brief 파일 삭제 포인트 적용 trigger
**/
function triggerDeleteFile(&$obj) {
$module_srl = $obj->module_srl;
$member_srl = $obj->member_srl;
if(!$module_srl || !$member_srl) return new Object();
// point 모듈 정보 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
// 대상 회원의 포인트를 구함
$oPointModel = &getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
$point = $config->module_point[$module_srl]['upload_file'];
if(!isset($point)) $point = $config->upload_file;
// 포인트 증감
$cur_point -= $point;
$this->setPoint($member_srl,$cur_point);
return new Object();
}
/**
* @brief 파일 다운로드 전에 호출되는 trigger
**/
function triggerBeforeDownloadFile(&$obj) {
// point 모듈 정보 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
// 포인트가 없으면 다운로드가 안되도록 하였으면 비로그인 회원일 경우 중지
if(!Context::get('is_logged') && $config->disable_download == 'Y') return new Object(-1,'msg_not_permitted_download');
// 로그인 상태일때만 실행
$logged_info = Context::get('logged_info');
if(!$logged_info->member_srl) return new Object();
$member_srl = $logged_info->member_srl;
$module_srl = $obj->module_srl;
if(!$module_srl) return new Object();
// 대상 회원의 포인트를 구함
$oPointModel = &getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
// 포인트를 구해옴
$point = $config->module_point[$module_srl]['download_file'];
if(!isset($point)) $point = $config->download_file;
// 포인트가 0보다 작고 포인트가 없으면 파일 다운로드가 안되도록 했다면 오류
if($cur_point + $point < 0 && $config->disable_download == 'Y') return new Object(-1,'msg_not_permitted_download');
return new Object();
}
/**
* @brief 파일 다운로드 포인트 적용 trigger
**/
function triggerDownloadFile(&$obj) {
// 로그인 상태일때만 실행
$logged_info = Context::get('logged_info');
if(!$logged_info->member_srl) return new Object();
$module_srl = $obj->module_srl;
$member_srl = $logged_info->member_srl;
if(!$module_srl) return new Object();
// point 모듈 정보 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('point');
// 대상 회원의 포인트를 구함
$oPointModel = &getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
// 포인트를 구해옴
$point = $config->module_point[$module_srl]['download_file'];
if(!isset($point)) $point = $config->download_file;
// 포인트 증감
$cur_point += $point;
$this->setPoint($member_srl,$cur_point);
return new Object();
}
/**
* @brief 포인트 설정
**/
function setPoint($member_srl, $point) {
if($point < 0) $point = 0;
// 변수 설정
$args->member_srl = $member_srl;
$args->point = $point;