css 및 js 호출순서 조정기능 추가

git-svn-id: http://xe-core.googlecode.com/svn/sandbox@5785 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
ngleader 2009-03-06 05:33:56 +00:00
parent 4f380d9c48
commit 61851f1dfe
2149 changed files with 109090 additions and 18689 deletions

View file

@ -28,23 +28,6 @@
</author>
<extra_vars>
<var id="title">
<type>text</type>
<name xml:lang="ko">제목</name>
<name xml:lang="zh-CN">栏目名</name>
<name xml:lang="jp">タイトル</name>
<name xml:lang="en">Title</name>
<name xml:lang="es">Título</name>
<name xml:lang="ru">Заголовок</name>
<name xml:lang="zh-TW">標題</name>
<description xml:lang="ko">최근 게시물의 제목으로 출력됩니다.</description>
<description xml:lang="zh-CN">显示为最新主题列表的标题。</description>
<description xml:lang="jp">最新の書き込みのタイトルとして表示されます。</description>
<description xml:lang="en">It will be the title of the newest articles.</description>
<description xml:lang="es">Este será el título de los documentos recientes.</description>
<description xml:lang="ru">Это будет заголовком последних статей.</description>
<description xml:lang="zh-TW">顯示最新主題列表的標題。</description>
</var>
<var id="order_target">
<type>select</type>
<name xml:lang="ko">정렬 대상</name>
@ -206,7 +189,7 @@
<name xml:lang="ru">Модуль назначения</name>
<name xml:lang="zh-TW">目標模組</name>
<description xml:lang="ko">선택하신 모듈에 등록된 글을 대상으로 합니다.</description>
<description xml:lang="zh-CN">将把选模块当中的主题作为对象。</description>
<description xml:lang="zh-CN">将把选模块当中的主题作为对象。</description>
<description xml:lang="jp">チェックされたモジュールに登録されたコンテンツ(書き込み)を対象とします。</description>
<description xml:lang="en">The target articles to be sorted will be the ones submitted in the selected module.</description>
<description xml:lang="es">El objetivo de los documentos agregados serán los del módulo selccionado.</description>

View file

@ -15,6 +15,17 @@
* 결과를 만든후 print가 아니라 return 해주어야 한다
**/
function proc($args) {
// 대상 모듈 (mid_list는 기존 위젯의 호환을 위해서 처리하는 루틴을 유지. module_srls로 위젯에서 변경)
$oModuleModel = &getModel('module');
if($args->mid_list) {
$mid_list = explode(",",$args->mid_list);
if(count($mid_list)) {
$module_srls = $oModuleModel->getModuleSrlByMid($mid_list);
if(count($module_srls)) $args->module_srls = implode(',',$module_srls);
else $args->module_srls = null;
}
}
// 제목
$title = $args->title;
@ -38,28 +49,13 @@
$duration_new = $args->duration_new;
if(!$duration_new) $duration_new = 12;
// 대상 모듈 (mid_list는 기존 위젯의 호환을 위해서 처리하는 루틴을 유지. module_srl로 위젯에서 변경)
if($args->mid_list) {
$mid_list = explode(",",$args->mid_list);
$oModuleModel = &getModel('module');
if(count($mid_list)) {
$module_srl = $oModuleModel->getModuleSrlByMid($mid_list);
} else {
$site_module_info = Context::get('site_module_info');
if($site_module_info) {
$margs->site_srl = $site_module_info->site_srl;
$oModuleModel = &getModel('module');
$output = $oModuleModel->getMidList($margs);
if(count($output)) $mid_list = array_keys($output);
$module_srl = $oModuleModel->getModuleSrlByMid($mid_list);
}
}
} else $module_srl = explode(',',$args->module_srls);
// 대상 모듈이 선택되어 있지 않으면 해당 사이트의 전체 모듈을 대상으로 함
$site_module_info = Context::get('site_module_info');
if($args->module_srls) $obj->module_srl = $args->module_srls;
else if($site_module_info) $obj->site_srl = (int)$site_module_info->site_srl;
// newest_document 위젯에서 정의한 query문을 직접 사용
if(is_array($module_srl)) $obj->module_srl = implode(',',$module_srl);
else $obj->module_srl = $module_srl;
$obj->sort_index = $order_target;
$obj->sort_index = 'documents.'.$order_target;
$obj->order_type = $order_type=="desc"?"asc":"desc";
$obj->list_count = $list_count;
$output = executeQueryArray('widgets.newest_document.getNewestDocuments', $obj);
@ -71,8 +67,12 @@
if(!$output->toBool()) return;
// 결과가 있으면 각 문서 객체화를 시킴
$modules = array();
if(count($output->data)) {
foreach($output->data as $key => $attribute) {
$modules[$attribute->module_srl]->mid = $attribute->mid;
$modules[$attribute->module_srl]->site_srl = $attribute->site_srl;
$document_srl = $attribute->document_srl;
$oDocument = null;
@ -87,9 +87,23 @@
}
// 템플릿 파일에서 사용할 변수들을 세팅
if(count($mid_list)==1) $widget_info->module_name = $mid_list[0];
// 모듈이 하나만 선택되었을 경우 대상 모듈 이름과 링크를 생성
if(count($modules)==1) {
$info = array_shift($modules);
if($info) {
$widget_info->mid = $info->mid;
if($info->site_srl) {
$site_info = $oModuleModel->getSiteInfo($info->site_srl);
if($site_info->domain) {
$widget_info->more_link = getSiteUrl('http://'.$site_info->domain, '','mid', $widget_info->mid);
}
} else {
$widget_info->more_link = getUrl('','mid',$info->mid);
$widget_info->module_name = $info->mid;
}
}
}
$widget_info->title = $title;
$widget_info->document_list = $document_list;
$widget_info->subject_cut_size = $subject_cut_size;

View file

@ -1,16 +1,20 @@
<query id="getNewestDocuments" action="select">
<tables>
<table name="modules" />
<table name="documents" />
</tables>
<columns>
<column name="*" />
<column name="modules.site_srl" alias="site_srl"/>
<column name="modules.mid" alias="mid"/>
<column name="documents.*" />
</columns>
<conditions>
<condition operation="in" column="module_srl" var="module_srl" filter="number" />
<condition operation="equal" column="category_srl" var="category_srl" pipe="and" />
<condition operation="equal" column="modules.site_srl" var="site_srl" />
<condition operation="in" column="documents.module_srl" var="module_srl" filter="number" pipe="and" />
<condition operation="equal" column="modules.module_srl" default="documents.module_srl" filter="number" pipe="and" />
</conditions>
<navigation>
<index var="sort_index" default="list_order" order="order_type" />
<index var="sort_index" default="documents.list_order" order="order_type" />
<list_count var="list_count" default="20" />
</navigation>
</query>

View file

@ -66,4 +66,4 @@
<title xml:lang="zh-TW">紫色</title>
</color>
</colorset>
</skin>
</skin>

View file

@ -12,8 +12,8 @@
<div class="newest_document_default_box">
<div class="title_box">
<div class="title">{$widget_info->title}</div>
<!--@if($widget_info->module_name)-->
<div class="more"><a href="{getUrl('','mid',$widget_info->module_name)}">more</a></div>
<!--@if($widget_info->title && $widget_info->more_link)-->
<div class="more"><a href="{$widget_info->more_link">more</a></div>
<!--@end-->
</div>

View file

@ -26,7 +26,7 @@
</li>
<!--@end-->
</ul>
<!--@if($widget_info->title && $widget_info->module_name)-->
<a href="{getUrl('','mid',$widget_info->module_name)}" class="more">more</a>
<!--@if($widget_info->title && $widget_info->more_link)-->
<a href="{$widget_info->more_link}" class="more">more</a>
<!--@end-->
</div>