mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-25 14:19:58 +09:00
git-svn-id: http://xe-core.googlecode.com/svn/trunk@789 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
fdffc30fec
commit
810f30cf6b
21 changed files with 99 additions and 94 deletions
|
|
@ -4,7 +4,7 @@
|
|||
<author email_address="zero@zeroboard.com" link="http://www.zeroboard.com" date="2007. 2. 28">
|
||||
<name xml:lang="ko">제로</name>
|
||||
<description xml:lang="ko">
|
||||
사용자의 이름을 이미지로 대체하거나 마크이미지를 나타내는 애드온
|
||||
사용자의 이름을 이미지로 대체하거나 마크이미지를 나타내는 애드온입니다.
|
||||
회원 관리에서 이미지이름이나 마크이미지를 설정하여야 한다.
|
||||
</description>
|
||||
</author>
|
||||
|
|
|
|||
|
|
@ -6,13 +6,19 @@
|
|||
* @author zero (zero@nzeo.com)
|
||||
* @brief 사용자의 이름을 이미지로 바꾸거나 닉 아이콘을 추가하는 애드온
|
||||
*
|
||||
* 이 addOn은 화면을 출력하는 바로 앞 단계에서 요청이 올때 작동하도록 한다.
|
||||
* 이 addOn은 모든 처리가 끝나고 화면에 출력하기 바로 전에 요청이 되어서
|
||||
* 사용자의 이름으로 등록된 부분을 찾아서 정규표현식으로 변환을 합니다.
|
||||
* 사용자의 이름은 <div class="member_회원번호">....</div> 로 정의가 되어야 합니다.
|
||||
* 이렇게 정의된 부분의 회원번호를 구해서 이미지이름, 이미지마크가 있는지를 확인하여 있으면
|
||||
* 내용을 변경해버립니다.
|
||||
*
|
||||
* 내용 변경은 MemberController::transImageName method를 이용해서 변경합니다.
|
||||
**/
|
||||
|
||||
// 출력 되기 바로 직전이 아니라면 모두 무시
|
||||
if($called_position != "before_display_content") return;
|
||||
|
||||
// 출력문서중에서 <div class="member_번호">content</div>를 찾아서 변경
|
||||
// 출력문서중에서 <div class="member_번호">content</div>를 찾아 MemberController::transImageName() 를 이용하여 변경
|
||||
$oMemberController = &getController('member');
|
||||
$output = preg_replace_callback('!<div([^\>]*)member_([0-9]*)([^\>]*)>(.*?)\<\/div\>!is', array($oMemberController, 'transImageName'), $output);
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -4,9 +4,8 @@
|
|||
<author email_address="zero@zeroboard.com" link="http://www.zeroboard.com" date="2007. 2. 28">
|
||||
<name xml:lang="ko">제로</name>
|
||||
<description xml:lang="ko">
|
||||
1. 새쪽지가 올 경우 팝업으로 알려줍니다.
|
||||
2. 다른 회원의 아이디 클릭시 나타나는 팝업메뉴에 쪽지 보내기를 추가합니다.
|
||||
3. 로그인 플러그인이나 게시판 상단에 쪽지의 갯수를 표시합니다.
|
||||
1. 다른 회원의 아이디 클릭시 나타나는 팝업메뉴에 쪽지 보내기를 추가합니다.
|
||||
2. 새쪽지가 올 경우 팝업으로 알려줍니다.
|
||||
</description>
|
||||
</author>
|
||||
</addon>
|
||||
|
|
|
|||
|
|
@ -2,15 +2,18 @@
|
|||
if(!__ZBXE__) exit();
|
||||
|
||||
/**
|
||||
* @file message.addon.php
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief 쪽지기능을 사이트내에 연결
|
||||
*
|
||||
* 1. MemberModel::getMemberMenu 다음 -> menu_list에 쪽지 보내기 기능 추가
|
||||
* 2. before
|
||||
**/
|
||||
* @file message.addon.php
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief 쪽지기능을 사이트내에 연결
|
||||
*
|
||||
* 1. 게시판등의 페이지에서 사용자 이름을 클릭시 요청되는 MemberModel::getMemberMenu 후에 $menu_list에 쪽지 발송 링크 추가
|
||||
* 2. 새로운 쪽지가 왔을 경우 팝업으로 띄움
|
||||
**/
|
||||
|
||||
// MemberModel::getMemberMenu의 결과값인 menu_list에 쪽지 관련 기능 추가 (아이디 클릭시 팝업메뉴)
|
||||
/**
|
||||
* 1. 게시판등의 페이지에서 사용자 이름을 클릭시 요청되는 MemberModel::getMemberMenu 후에 $menu_list에 쪽지 발송 링크 추가
|
||||
* 조건 : called_position == 'after_module_proc', module = 'member', act = 'getMemberMenu'
|
||||
**/
|
||||
if($called_position == 'after_module_proc' && $this->module == 'member' && $this->act == 'getMemberMenu') {
|
||||
|
||||
// 비로그인 사용자라면 패스
|
||||
|
|
@ -26,18 +29,26 @@
|
|||
// 언어파일 읽음
|
||||
Context::loadLang($addon_path."lang");
|
||||
|
||||
// 템플릿에서 사용되기 전의 menu_list
|
||||
// 템플릿에서 사용되기 전의 menu_list를 가져옴
|
||||
$menu_list = $this->get('menu_list');
|
||||
|
||||
$menu_list .= sprintf("\n%s,winopen('%s','messageBox','width=10,height=10,left=10,top=10,resizable=no,scrollbars=no,toolbars=no')", Context::getLang('cmd_send_message'), './?module=message&act=dispSendMessage&target_member_srl='.$member_srl);
|
||||
// 쪽지 발송 메뉴를 만듬
|
||||
$menu_str = Context::getLang('cmd_send_message');
|
||||
$menu_link = sprintf('./?module=message&act=dispSendMessage&target_member_srl=%s',$member_srl);
|
||||
|
||||
// 메뉴에 새로 만든 쪽지 발송 메뉴를 추가
|
||||
$menu_list .= sprintf("\n%s,%s", $menu_str, $menu_link);
|
||||
|
||||
// 템플릿에 적용되게 하기 위해 module의 variables에 재등록
|
||||
$this->add('menu_list', $menu_list);
|
||||
|
||||
// 출력 되기 바로 직전일 경우
|
||||
} else if($called_position == "before_display_content") {
|
||||
/**
|
||||
* 2. 새로운 쪽지가 왔을 경우 팝업으로 띄움
|
||||
* 조건 : called_position = 'before_display_content'
|
||||
**/
|
||||
} else if($called_position == 'before_display_content') {
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<addon version="0.1">
|
||||
<title xml:lang="ko">네이버 검색 연동 애드온</title>
|
||||
<title xml:lang="en">naver search addon</title>
|
||||
<author email_address="zero@zeroboard.com" link="http://www.zeroboard.com" date="2007. 2. 28">
|
||||
<name xml:lang="ko">제로</name>
|
||||
<name xml:lang="en">zero</name>
|
||||
<description xml:lang="ko">
|
||||
글을 작성시 네이버의 검색서버에 해당 글의 상황을 보냅니다.
|
||||
내용을 보내는 것이 아니라 글의 url만 보내고 글에서 선택한 공개옵션에 따라서 크롤링을 하게 됩니다.
|
||||
네이버 검색서버 연동을 하시면 사이트의 검색 기능을 네이버의 검색서버를 이용하실 수 있게 됩니다.
|
||||
</description>
|
||||
<description xml:lang="en">naver search addon</description>
|
||||
</author>
|
||||
</addon>
|
||||
|
|
|
|||
|
|
@ -6,24 +6,17 @@
|
|||
* @author zero (zero@nzeo.com)
|
||||
* @brief 네이버 검색 연동 애드온
|
||||
*
|
||||
* addOn은 ModuleObject 에서 모듈이 불러지기 전/후에 include되는 것으로 실행을 한다.
|
||||
* 즉 별도의 interface가 필요한 것이 아니고 모듈의 일부라고 판단하여 코드를 작성하면 된다.
|
||||
* 네이버 검색 연동 애드온은 모듈이 실행된 후에 동작을 한다.
|
||||
* board 모듈의 procInsertDocument, procDeleteDocument action일 때만 특정 서버로 발송을 한다.
|
||||
**/
|
||||
|
||||
// called_position이 before일때만 실행
|
||||
if($called_position != 'after_module_proc') return;
|
||||
|
||||
// 이 애드온이 동작할 대상 (이 부분은 특별히 정해진 규약이 없다)
|
||||
$effecived_target = array(
|
||||
'board' => array('procInsertDocument', 'procDeleteDocument'),
|
||||
);
|
||||
if($this->module != 'board' && ($this->act != 'procInsertDocument' || $this->act != 'procDeleteDocument')) return;
|
||||
|
||||
// spam filter모듈이 적용될 module+act를 체크
|
||||
if(!in_array($this->act, $effecived_target[$this->module])) return;
|
||||
|
||||
// 해당 글의 URL을 구함
|
||||
// 검색 서버로 발송할 url을 구함
|
||||
$url = sprintf('%s?document_srl=%s',Context::getRequestUri(), Context::get('document_srl'));
|
||||
|
||||
// URL을 네이버 검색 서버로 발송
|
||||
//@todo 차후 개발
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,14 +1,11 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<addon version="0.1">
|
||||
<title xml:lang="ko">레인보우 링크 애드온</title>
|
||||
<title xml:lang="en">rainbow link addon</title>
|
||||
<author email_address="zero@zeroboard.com" link="http://www.zeroboard.com" date="2007. 2. 28">
|
||||
<name xml:lang="ko">제로</name>
|
||||
<name xml:lang="en">zero</name>
|
||||
<description xml:lang="ko">
|
||||
링크가 걸린 글의 색을 무지개색으로 나타냅니다.
|
||||
rainbow.js를 header에 추가하여 링크가 걸린 글의 색을 무지개색으로 나타냅니다.
|
||||
이 애드온의 rainbow.js는 <a href="http://www.dynamicdrive.com" target="_blank">Dynamicdrive.com</a>에 저작권이 있습니다.
|
||||
</description>
|
||||
<description xml:lang="en">rainbow link</description>
|
||||
</author>
|
||||
</addon>
|
||||
|
|
|
|||
|
|
@ -2,25 +2,17 @@
|
|||
if(!__ZBXE__) exit();
|
||||
|
||||
/**
|
||||
* @file spamfilter.addon.php
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief Rainbow link addon
|
||||
*
|
||||
* 링크가 걸린 텍스트에 마우스 오버를 하면 무지개색으로 변하게 하는 애드온입니다.
|
||||
* rainbow.js는 http://www.dynamicdrive.com에서 제작하였으며 저작권을 가지고 있습니다.
|
||||
**/
|
||||
* @file rainbow.addon.php
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief Rainbow link addon
|
||||
*
|
||||
* 링크가 걸린 텍스트에 마우스 오버를 하면 무지개색으로 변하게 하는 애드온입니다.
|
||||
* rainbow.js 파일만 추가하는 것으로 끝납니다.
|
||||
* rainbow.js는 http://www.dynamicdrive.com에서 제작하였으며 저작권을 가지고 있습니다.
|
||||
* before_display_content 에서만 요청이 됩니다.
|
||||
**/
|
||||
|
||||
// admin 모듈의 경우 무조건 패스
|
||||
/*
|
||||
if(Context::get('module') == 'admin') {
|
||||
$this->rainbow_link_is_called = true;
|
||||
return;
|
||||
}
|
||||
*/
|
||||
|
||||
// 한번이라도 요청이 되었다면 패스
|
||||
if($GLOBALS['_rainbow_link_is_called']) return;
|
||||
$GLOBALS['_rainbow_link_is_called'] = true;
|
||||
if($called_position != 'before_display_content') return;
|
||||
|
||||
// 현재 애드온의 위치를 구함
|
||||
$oAddOnModel = &getModel('addon');
|
||||
|
|
|
|||
|
|
@ -1,14 +1,11 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<addon version="0.1">
|
||||
<title xml:lang="ko">스팸필터 애드온</title>
|
||||
<title xml:lang="en">spamfilter addon</title>
|
||||
<author email_address="zero@zeroboard.com" link="http://www.zeroboard.com" date="2007. 2. 28">
|
||||
<name xml:lang="ko">제로</name>
|
||||
<name xml:lang="en">zero</name>
|
||||
<description xml:lang="ko">
|
||||
스팸 필터링을 담당합니다.
|
||||
SpamFilter 모듈을 이용하여 글/코멘트/트랙백 등록 이전에 스팸 필터링 및 도배 방지를 합니다.
|
||||
자세한 설정은 " 스팸필터 모듈" 에서 해주세요.
|
||||
</description>
|
||||
<description xml:lang="en">do spam filtering</description>
|
||||
</author>
|
||||
</addon>
|
||||
|
|
|
|||
|
|
@ -2,15 +2,15 @@
|
|||
if(!__ZBXE__) exit();
|
||||
|
||||
/**
|
||||
* @file spamfilter.addon.php
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief 스팸필터링 애드온
|
||||
*
|
||||
* addOn은 ModuleObject 에서 모듈이 불러지기 전/후에 include되는 것으로 실행을 한다.
|
||||
* 즉 별도의 interface가 필요한 것이 아니고 모듈의 일부라고 판단하여 코드를 작성하면 된다.
|
||||
**/
|
||||
* @file spamfilter.addon.php
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief 스팸필터링 애드온
|
||||
*
|
||||
* 스팸필터 애드온은 SpamFilter 모듈을 이용합니다.
|
||||
* 글/코멘트/트랙백 등록 이전에만 실행이 됩니다.
|
||||
**/
|
||||
|
||||
// called_position가 before일때만 실행
|
||||
// called_position가 before_module_proc 일때만 실행
|
||||
if($this->called_position != 'before_module_proc') return;
|
||||
|
||||
// 이 애드온이 동작할 대상 (이 부분은 특별히 정해진 규약이 없다)
|
||||
|
|
@ -43,10 +43,10 @@
|
|||
break;
|
||||
}
|
||||
|
||||
// 현재 모듈의 관리자이거나 그에 준하는 manager권한이면 그냥 패스~
|
||||
// 현재 모듈의 관리자이거나 그에 준하는 manager권한이면 그냥 패스
|
||||
if($this->grant->is_admin || $this->grant->manager) return;
|
||||
|
||||
// 현 접속자의 ip address를 변수화
|
||||
// 현 접속자의 ip address를 구함
|
||||
$ipaddress = $_SERVER['REMOTE_ADDR'];
|
||||
|
||||
// spamfilter 모듈 객체 생성
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue