mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-04-30 15:52:17 +09:00
위젯 검출 정규 표현식을 수정
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@2892 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
f9896fe51a
commit
90aa62a6ac
993 changed files with 9190 additions and 10457 deletions
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<module version="0.1">
|
||||
<module version="0.1" category="utility">
|
||||
<title xml:lang="ko">RSS</title>
|
||||
<title xml:lang="zh-CN">RSS</title>
|
||||
<title xml:lang="jp">RSS</title>
|
||||
|
|
|
|||
|
|
@ -3,5 +3,6 @@
|
|||
<grants />
|
||||
<actions>
|
||||
<action name="rss" type="view" standalone="true" />
|
||||
<action name="procRssAdminInsertModuleConfig" type="controller" standalone="true" />
|
||||
</actions>
|
||||
</module>
|
||||
|
|
|
|||
|
|
@ -8,10 +8,17 @@
|
|||
// general words
|
||||
$lang->rss_disable = "Disable RSS";
|
||||
$lang->rss_type = "RSS feed type";
|
||||
$lang->open_rss = 'Open RSS';
|
||||
$lang->open_rss_types = array(
|
||||
'Y' => 'Open all',
|
||||
'H' => 'Open summary',
|
||||
'N' => 'Not open',
|
||||
);
|
||||
|
||||
// for description
|
||||
$lang->about_rss_disable = "If checked, RSS will be disabled.";
|
||||
$lang->about_rss_type = "You can assign RSS feed type.";
|
||||
$lang->about_open_rss = 'You can select RSS on the current module to be open to the public.\nNo matter the view permission of article , RSS will be open to the public by its option.';
|
||||
|
||||
// for error message
|
||||
$lang->msg_rss_is_disabled = "RSS function is disabled.";
|
||||
|
|
|
|||
|
|
@ -8,10 +8,17 @@
|
|||
// palabras generales
|
||||
$lang->rss_disable = "Desactivar RSS";
|
||||
$lang->rss_type = "Tipo de RSS a imprimir";
|
||||
$lang->open_rss = 'Abrir RSS';
|
||||
$lang->open_rss_types = array(
|
||||
'Y' => 'Abrir todo',
|
||||
'H' => 'Abrir el sumario',
|
||||
'N' => 'No abrir',
|
||||
);
|
||||
|
||||
// para la descripcion
|
||||
$lang->about_rss_disable = "Si selecciona esta opción, RSS será desactivado.";
|
||||
$lang->about_rss_type = "Usted puede asignar el tipo de RSS a imprimir.";
|
||||
$lang->about_open_rss = 'Usted puede seleccionar RSS abierto al público en el módulo actual.\nIndependiente de la atribución de ver, dependiendo de la opción de RSS puede ser abierto al público.';
|
||||
|
||||
// mensajes de error
|
||||
$lang->msg_rss_is_disabled = "Función de RSS esta desactivada.";
|
||||
|
|
|
|||
|
|
@ -8,10 +8,17 @@
|
|||
// 一般用語
|
||||
$lang->rss_disable = "RSS機能ロック";
|
||||
$lang->rss_type = "出力するRSSタイプ";
|
||||
$lang->open_rss = 'RSS配信';
|
||||
$lang->open_rss_types = array(
|
||||
'Y' => '全文配信 ',
|
||||
'H' => '要約配信',
|
||||
'N' => '配信しない',
|
||||
);
|
||||
|
||||
// 説明文
|
||||
$lang->about_rss_disable = "チェックするとRSSの出力を行いません。";
|
||||
$lang->about_rss_type = "出力するRSSタイプを指定することができます。";
|
||||
$lang->about_open_rss = '現在のモジュールに対して「RSS配信」を選択することができます。書き込みの内容が読める権限とは関係なくオプションによってRSSが配信されます。';
|
||||
|
||||
// エラーメッセージ
|
||||
$lang->msg_rss_is_disabled = "RSS機能がロックされています。";
|
||||
|
|
|
|||
|
|
@ -8,10 +8,17 @@
|
|||
// 일반 단어들
|
||||
$lang->rss_disable = "RSS 끄기";
|
||||
$lang->rss_type = "출력할 RSS 형식";
|
||||
$lang->open_rss = 'RSS 공개';
|
||||
$lang->open_rss_types = array(
|
||||
'Y' => '전문 공개 ',
|
||||
'H' => '요약 공개',
|
||||
'N' => '공개하지 않음',
|
||||
);
|
||||
|
||||
// 설명문
|
||||
$lang->about_rss_disable = "체크하시면 RSS 출력을 하지 않습니다";
|
||||
$lang->about_rss_type = "출력하실 RSS 형식을 지정하실 수 있습니다";
|
||||
$lang->about_open_rss = '현재 모듈에 대한 RSS 공개를 선택하실 수 있습니다. 글 보는 권한과 상관없이 옵션에 따라 RSS가 공개됩니다';
|
||||
|
||||
// 에러 메세지들
|
||||
$lang->msg_rss_is_disabled = "RSS 기능이 잠겨 있습니다";
|
||||
|
|
|
|||
|
|
@ -8,10 +8,17 @@
|
|||
// 一般单词
|
||||
$lang->rss_disable = "关闭RSS";
|
||||
$lang->rss_type = "将显示的RSS形式";
|
||||
$lang->open_rss = '公开RSS';
|
||||
$lang->open_rss_types = array(
|
||||
'Y' => '公开全文',
|
||||
'H' => '公开摘要',
|
||||
'N' => '不公开',
|
||||
);
|
||||
|
||||
// 说明文
|
||||
$lang->about_rss_disable = "选此项不显示RSS。";
|
||||
$lang->about_rss_type = "可以指定要显示的RSS形式。";
|
||||
$lang->about_open_rss = '可以选择对该模块的RSS公开程度。RSS公开将不受查看内容权限的限制,随公开RSS的选项公开RSS。';
|
||||
|
||||
// 错误提示
|
||||
$lang->msg_rss_is_disabled = "RSS功能处于锁定状态。";
|
||||
|
|
|
|||
52
modules/rss/rss.admin.controller.php
Normal file
52
modules/rss/rss.admin.controller.php
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
<?php
|
||||
/**
|
||||
* @class rssAdminController
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief rss module의 admin controller class
|
||||
*
|
||||
* RSS 2.0형식으로 문서 출력
|
||||
*
|
||||
**/
|
||||
|
||||
class rssAdminController extends rss {
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief RSS 모듈별 설정
|
||||
**/
|
||||
function procRssAdminInsertModuleConfig() {
|
||||
// 필요한 변수를 받아옴
|
||||
$module_srl = Context::get('target_module_srl');
|
||||
$open_rss = Context::get('open_rss');
|
||||
if(!$module_srl || !$open_rss) return new Object(-1, 'msg_invalid_request');
|
||||
|
||||
if(!in_array($open_rss, array('Y','H','N'))) $open_rss = 'N';
|
||||
|
||||
// 설정 저장
|
||||
$output = $this->setRssModuleConfig($module_srl, $open_rss);
|
||||
|
||||
$this->setMessage('success_registed');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief RSS 모듈별 설정 함수
|
||||
**/
|
||||
function setRssModuleConfig($module_srl, $open_rss) {
|
||||
$oModuleModel = &getModel('module');
|
||||
$oModuleController = &getController('module');
|
||||
|
||||
$rss_config = $oModuleModel->getModuleConfig('rss');
|
||||
$rss_config->module_config[$module_srl]->module_srl = $module_srl;
|
||||
$rss_config->module_config[$module_srl]->open_rss = $open_rss;
|
||||
|
||||
$oModuleController->insertModuleConfig('rss', $rss_config);
|
||||
|
||||
return new Object();
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
@ -13,8 +13,15 @@
|
|||
function moduleInstall() {
|
||||
// action forward에 등록
|
||||
$oModuleController = &getController('module');
|
||||
|
||||
$oModuleController->insertActionForward('rss', 'view', 'rss');
|
||||
|
||||
// 2007. 10. 18 서비스형 모듈의 추가 설정에 참여하기 위한 trigger 추가
|
||||
$oModuleController->insertTrigger('module.dispAdditionSetup', 'rss', 'view', 'triggerDispRssAdditionSetup', 'before');
|
||||
|
||||
// 2007. 10. 19 출력하기 전에 rss url을 세팅하는 트리거 호출
|
||||
$oModuleController->insertTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before');
|
||||
|
||||
return new Object();
|
||||
}
|
||||
|
||||
|
|
@ -22,6 +29,14 @@
|
|||
* @brief 설치가 이상이 없는지 체크하는 method
|
||||
**/
|
||||
function checkUpdate() {
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
// 2007. 10. 18 서비스형 모듈의 추가 설정에 참여하기 위한 trigger 추가
|
||||
if(!$oModuleModel->getTrigger('module.dispAdditionSetup', 'rss', 'view', 'triggerDispRssAdditionSetup', 'before')) return true;
|
||||
|
||||
// 2007. 10. 19 출력하기 전에 rss url을 세팅하는 트리거 호출
|
||||
if(!$oModuleModel->getTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before')) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
@ -29,7 +44,18 @@
|
|||
* @brief 업데이트 실행
|
||||
**/
|
||||
function moduleUpdate() {
|
||||
return new Object();
|
||||
$oModuleModel = &getModel('module');
|
||||
$oModuleController = &getController('module');
|
||||
|
||||
// 2007. 10. 18 서비스형 모듈의 추가 설정에 참여하기 위한 trigger 추가
|
||||
if(!$oModuleModel->getTrigger('module.dispAdditionSetup', 'rss', 'view', 'triggerDispRssAdditionSetup', 'before'))
|
||||
$oModuleController->insertTrigger('module.dispAdditionSetup', 'rss', 'view', 'triggerDispRssAdditionSetup', 'before');
|
||||
|
||||
// 2007. 10. 19 출력하기 전에 rss url을 세팅하는 트리거 호출
|
||||
if(!$oModuleModel->getTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before'))
|
||||
$oModuleController->insertTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before');
|
||||
|
||||
return new Object(0, 'success_updated');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
42
modules/rss/rss.controller.php
Normal file
42
modules/rss/rss.controller.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* @class rssController
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief rss module의 controller class
|
||||
*
|
||||
* RSS 2.0형식으로 문서 출력
|
||||
*
|
||||
**/
|
||||
|
||||
class rssController extends rss {
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief RSS 사용 유무를 체크하여 rss url 추가
|
||||
**/
|
||||
function triggerRssUrlInsert() {
|
||||
$current_module_srl = Context::get('module_srl');
|
||||
|
||||
if(!$current_module_srl) {
|
||||
// 선택된 모듈의 정보를 가져옴
|
||||
$current_module_info = Context::get('current_module_info');
|
||||
$current_module_srl = $current_module_info->module_srl;
|
||||
}
|
||||
|
||||
if(!$current_module_srl) return new Object();
|
||||
|
||||
// 선택된 모듈의 rss설정을 가져옴
|
||||
$oRssModel = &getModel('rss');
|
||||
$rss_config = $oRssModel->getRssModuleConfig($current_module_srl);
|
||||
|
||||
if($rss_config->open_rss != 'N') Context::set('rss_url', getUrl('','mid',Context::get('mid'),'act','rss'));
|
||||
|
||||
return new Object();
|
||||
}
|
||||
}
|
||||
?>
|
||||
30
modules/rss/rss.model.php
Normal file
30
modules/rss/rss.model.php
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
<?php
|
||||
/**
|
||||
* @class rssModel
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief rss module의 model class
|
||||
*
|
||||
* RSS 2.0형식으로 문서 출력
|
||||
*
|
||||
**/
|
||||
|
||||
class rssModel extends rss {
|
||||
|
||||
/**
|
||||
* @brief 특정 모듈의 rss 설정을 return
|
||||
**/
|
||||
function getRssModuleConfig($module_srl) {
|
||||
// rss 모듈의 config를 가져옴
|
||||
$oModuleModel = &getModel('module');
|
||||
$rss_config = $oModuleModel->getModuleConfig('rss');
|
||||
|
||||
$module_rss_config = $rss_config->module_config[$module_srl];
|
||||
|
||||
if(!$module_rss_config->module_srl) {
|
||||
$module_rss_config->module_srl = $module_srl;
|
||||
$module_rss_config->open_rss = 'N';
|
||||
}
|
||||
return $module_rss_config;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
@ -37,21 +37,39 @@
|
|||
$end_date = Context::get('end_date'); ///< 종료 일자, 없으면 무시
|
||||
if(strlen($end_date)!=14 || !ereg("^([0-9]){14}$", $end_date) ) unset($end_date);
|
||||
|
||||
// rss module config를 가져옴
|
||||
$oModuleModel = &getModel('module');
|
||||
$rss_config = $oModuleModel->getModuleConfig('rss');
|
||||
|
||||
/**
|
||||
* 요청된 모듈 혹은 전체 모듈의 정보를 구하고 open_rss의 값을 체크
|
||||
**/
|
||||
$oModuleModel = &getModel('module');
|
||||
$mid_list = array();
|
||||
|
||||
// mid값이 없으면 전체 mid중 open_rss == 'Y|H'인 걸 고름
|
||||
if(!$mid) {
|
||||
$args->open_rss = "'Y','H'";
|
||||
|
||||
$module_srl_list = null;
|
||||
|
||||
// rss config에 등록된 모듈중 rss 공개하는 것들의 module_srl을 고름
|
||||
if($rss_config->module_config && count($rss_config->module_config)) {
|
||||
foreach($rss_config->module_config as $key => $val) {
|
||||
if($val->open_rss == 'N') continue;
|
||||
$module_srl_list[] = $val->module_srl;
|
||||
}
|
||||
}
|
||||
// 선택된 모듈이 없으면 패스
|
||||
if(!$module_srl_list || !count($module_srl_list)) return $this->dispError();
|
||||
|
||||
// 선택된 모듈들을 정리
|
||||
$args->module_srls = implode(',',$module_srl_list);
|
||||
$module_list = $oModuleModel->getMidList($args);
|
||||
if(!$module_list) return $this->dispError();
|
||||
|
||||
// 대상 모듈을 정리함
|
||||
$module_srl_list = array();
|
||||
foreach($module_list as $mid => $val) {
|
||||
$val->open_rss = $rss_config->module_config[$val->module_srl]->open_rss;
|
||||
$module_srl_list[] = $val->module_srl;
|
||||
$mid_list[$val->module_srl] = $val;
|
||||
}
|
||||
|
|
@ -67,10 +85,14 @@
|
|||
$module_info = $oModuleModel->getModuleInfoByMid($mid);
|
||||
if($module_info->mid != $mid) return $this->dispError();
|
||||
|
||||
// 해당 모듈이 rss를 사용하는지 확인
|
||||
$rss_module_config = $rss_config->module_config[$module_info->module_srl];
|
||||
|
||||
// RSS 비활성화 되었는지 체크하여 비활성화시 에러 출력
|
||||
if($module_info->open_rss == 'N') return $this->dispError();
|
||||
if($rss_module_config->open_rss == 'N') return $this->dispError();
|
||||
|
||||
$module_srl = $module_info->module_srl;
|
||||
$module_info->open_rss = $rss_module_config->open_rss;
|
||||
$mid_list[$module_info->module_srl] = $module_info;
|
||||
|
||||
unset($args);
|
||||
|
|
@ -138,5 +160,33 @@
|
|||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile("error");
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 서비스형 모듈의 추가 설정을 위한 부분
|
||||
* rss의 사용 형태에 대한 설정만 받음
|
||||
**/
|
||||
function triggerDispRssAdditionSetup(&$obj) {
|
||||
$current_module_srl = Context::get('module_srl');
|
||||
|
||||
if(!$current_module_srl) {
|
||||
// 선택된 모듈의 정보를 가져옴
|
||||
$current_module_info = Context::get('current_module_info');
|
||||
$current_module_srl = $current_module_info->module_srl;
|
||||
}
|
||||
|
||||
if(!$current_module_srl) return new Object();
|
||||
|
||||
// 선택된 모듈의 rss설정을 가져옴
|
||||
$oRssModel = &getModel('rss');
|
||||
$rss_config = $oRssModel->getRssModuleConfig($current_module_srl);
|
||||
Context::set('rss_config', $rss_config);
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
$tpl = $oTemplate->compile($this->module_path.'tpl', 'rss_module_config');
|
||||
$obj .= $tpl;
|
||||
|
||||
return new Object();
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,7 +0,0 @@
|
|||
<filter name="insert_config" module="rss" act="procRssAdminInsertConfig" confirm_msg_code="confirm_submit">
|
||||
<form />
|
||||
<response>
|
||||
<tag name="error" />
|
||||
<tag name="message" />
|
||||
</response>
|
||||
</filter>
|
||||
7
modules/rss/tpl/filter/insert_rss_module_config.xml
Normal file
7
modules/rss/tpl/filter/insert_rss_module_config.xml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<filter name="insert_rss_module_config" module="rss" act="procRssAdminInsertModuleConfig" confirm_msg_code="confirm_submit">
|
||||
<form />
|
||||
<response>
|
||||
<tag name="error" />
|
||||
<tag name="message" />
|
||||
</response>
|
||||
</filter>
|
||||
29
modules/rss/tpl/rss_module_config.html
Normal file
29
modules/rss/tpl/rss_module_config.html
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
<!--%import("filter/insert_rss_module_config.xml")-->
|
||||
|
||||
<form action="./" method="post" onsubmit="return procFilter(this, insert_rss_module_config)">
|
||||
<input type="hidden" name="target_module_srl" value="{$rss_config->module_srl}" />
|
||||
|
||||
<table cellspacing="0" class="adminTable">
|
||||
<col width="150" />
|
||||
<col />
|
||||
<col width="100" />
|
||||
<caption>{$lang->open_rss}</caption>
|
||||
<tr>
|
||||
<th scope="row">{$lang->open_rss}</th>
|
||||
<td>
|
||||
<select name="open_rss" class="w200">
|
||||
<!--@foreach($lang->open_rss_types as $key=>$val)-->
|
||||
<option value="{$key}" <!--@if($rss_config->open_rss==$key)-->selected="selected"<!--@end-->>{$val}</option>
|
||||
<!--@end-->
|
||||
</select>
|
||||
<p>{$lang->about_open_rss}</p>
|
||||
</td>
|
||||
<th class="centerButton">
|
||||
<span class="button"><input type="submit" value="{$lang->cmd_save}"/></span>
|
||||
</th>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</form>
|
||||
|
||||
<div class="gap1"></div>
|
||||
Loading…
Add table
Add a link
Reference in a new issue