mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-08 19:42:15 +09:00
모듈 선택기능 추가 (위젯의 단일/다수 위젯 선택, 첵크된 게시글 이동/복사시) 사용되며 virtualSite외의 사이트들도 검색후 선택이 가능하도록 개선
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@5298 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
3345d21c4e
commit
906bb46d19
83 changed files with 970 additions and 543 deletions
|
|
@ -15,24 +15,36 @@
|
|||
* 결과를 만든후 print가 아니라 return 해주어야 한다
|
||||
**/
|
||||
function proc($args) {
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
// 기존에 mid_list, mid를 쓸 때의 코드를 위하여 하위 호환 유지 코드
|
||||
if($args->mid_list) {
|
||||
$tmp_mid = explode(",",$args->mid_list);
|
||||
$mid = $tmp_mid[0];
|
||||
} else {
|
||||
} elseif($args->mid) {
|
||||
$mid = $args->mid;
|
||||
}
|
||||
if($mid) {
|
||||
$module_srl = $oModuleModel->getModuleSrlByMid($mid);
|
||||
}
|
||||
|
||||
if($args->srl) $module_srl = $args->srl;
|
||||
|
||||
// DocumentModel::getMonthlyArchivedList()를 이용하기 위한 변수 정리
|
||||
$obj->mid = $mid;
|
||||
$obj->module_srl = $module_srl;
|
||||
|
||||
// 선택된 모듈이 없으면 실행 취소
|
||||
if(!$obj->module_srl) return;
|
||||
|
||||
// 모듈의 정보를 구함
|
||||
$module_info = $oModuleModel->getModuleInfoByModuleSrl($obj->module_srl);
|
||||
|
||||
// document 모듈의 model 객체를 받아서 getMonthlyArchivedList() method를 실행
|
||||
$oDocumentModel = &getModel('document');
|
||||
$output = $oDocumentModel->getMonthlyArchivedList($obj);
|
||||
|
||||
// 템플릿 파일에서 사용할 변수들을 세팅
|
||||
$widget_info->module_name = $mid;
|
||||
$widget_info->mid = $mid;
|
||||
|
||||
$widget_info->mid = $widget_info->module_name = $module_info->mid;
|
||||
$widget_info->title = $args->title;
|
||||
$widget_info->archive_list = $output->data;
|
||||
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@
|
|||
<description xml:lang="en">Это будет заголовком отчета.</description>
|
||||
<description xml:lang="zh-TW">顯示封存標題。</description>
|
||||
</var>
|
||||
<var id="mid">
|
||||
<var id="srl">
|
||||
<type>mid</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="zh-CN">对象模块</name>
|
||||
|
|
@ -84,4 +84,4 @@
|
|||
<description xml:lang="zh-TW">將所選擇的模組作為統計目標。</description>
|
||||
</var>
|
||||
</extra_vars>
|
||||
</widget>
|
||||
</widget>
|
||||
|
|
|
|||
|
|
@ -15,32 +15,43 @@
|
|||
* 결과를 만든후 print가 아니라 return 해주어야 한다
|
||||
**/
|
||||
function proc($args) {
|
||||
// 위젯 자체적으로 설정한 변수들을 체크
|
||||
$pos = strpos($args->mid_list, ',');
|
||||
if($pos === false) $mid = $args->mid_list;
|
||||
else $mid = substr($args->mid_list, 0, $pos);
|
||||
if(!$mid) return;
|
||||
|
||||
// 대상 mid의 module_srl 을 구함
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_info = $oModuleModel->getModuleInfoByMid($mid);
|
||||
|
||||
$module_srl = $module_info->module_srl;
|
||||
// 기존에 mid_list, mid를 쓸 때의 코드를 위하여 하위 호환 유지 코드
|
||||
if($args->mid_list) {
|
||||
$tmp_mid = explode(",",$args->mid_list);
|
||||
$mid = $tmp_mid[0];
|
||||
} elseif($args->mid) {
|
||||
$mid = $args->mid;
|
||||
}
|
||||
if($mid) {
|
||||
$module_srl = $oModuleModel->getModuleSrlByMid($mid);
|
||||
}
|
||||
|
||||
if($args->srl) $module_srl = $args->srl;
|
||||
debugPrint($args);
|
||||
|
||||
// DocumentModel::getMonthlyArchivedList()를 이용하기 위한 변수 정리
|
||||
$obj->module_srl = $module_srl;
|
||||
|
||||
// 선택된 모듈이 없으면 실행 취소
|
||||
if(!$obj->module_srl) return;
|
||||
|
||||
// 모듈의 정보를 구함
|
||||
$module_info = $oModuleModel->getModuleInfoByModuleSrl($obj->module_srl);
|
||||
|
||||
// 대상 모듈의 카테고리 파일을 불러옴
|
||||
$oDocumentModel = &getModel('document');
|
||||
$category_list = $oDocumentModel->getCategoryList($module_srl);
|
||||
$category_list = $oDocumentModel->getCategoryList($obj->module_srl);
|
||||
|
||||
// 모듈의 정보를 구함
|
||||
$widget_info->module_info = $module_info;
|
||||
|
||||
$widget_info->mid = $mid;
|
||||
$widget_info->mid = $module_info->mid;
|
||||
$widget_info->document_category = $document_category;
|
||||
$widget_info->module_info = $module_info;
|
||||
$widget_info->category_list = $category_list;
|
||||
|
||||
// 전체 개수를 구함
|
||||
$total_count = $oDocumentModel->getDocumentCount($module_srl);
|
||||
$total_count = $oDocumentModel->getDocumentCount($obj->module_srl);
|
||||
$widget_info->total_document_count = $total_count;
|
||||
|
||||
Context::set('widget_info', $widget_info);
|
||||
|
|
|
|||
|
|
@ -28,8 +28,8 @@
|
|||
</author>
|
||||
|
||||
<extra_vars>
|
||||
<var id="mid_list">
|
||||
<type>mid_list</type>
|
||||
<var id="srl">
|
||||
<type>mid</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="es">대상 모듈</name>
|
||||
<name xml:lang="en">Target Module</name>
|
||||
|
|
@ -46,4 +46,4 @@
|
|||
<description xml:lang="zh-TW">將所選擇的模組作為目標。只能選擇一個模組。</description>
|
||||
</var>
|
||||
</extra_vars>
|
||||
</widget>
|
||||
</widget>
|
||||
|
|
|
|||
|
|
@ -90,8 +90,8 @@
|
|||
<description xml:lang="ru">Длина темы может быть присвоена. (0 или пустое значение не будут ограничивать длину)</description>
|
||||
<description xml:lang="zh-TW">可設置標題的字數。(0或留白為不限制)</description>
|
||||
</var>
|
||||
<var id="mid_list">
|
||||
<type>mid_list</type>
|
||||
<var id="module_srls">
|
||||
<type>module_srl_list</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="zh-CN">模块对象</name>
|
||||
<name xml:lang="jp">モジュール</name>
|
||||
|
|
@ -108,4 +108,4 @@
|
|||
<description xml:lang="zh-TW">把所選擇之模組當作目標。</description>
|
||||
</var>
|
||||
</extra_vars>
|
||||
</widget>
|
||||
</widget>
|
||||
|
|
|
|||
|
|
@ -26,16 +26,29 @@
|
|||
$subject_cut_size = $args->subject_cut_size;
|
||||
if(!$subject_cut_size) $subject_cut_size = 0;
|
||||
|
||||
// 대상 모듈
|
||||
if($args->mid_list) $mid_list = explode(",",$args->mid_list);
|
||||
else return;
|
||||
|
||||
// module_srl 대신 mid가 넘어왔을 경우는 직접 module_srl을 구해줌
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_srls = $oModuleModel->getModuleSrlByMid($mid_list);
|
||||
|
||||
// 대상 모듈 (mid_list는 기존 위젯의 호환을 위해서 처리하는 루틴을 유지. module_srl로 위젯에서 변경)
|
||||
if($args->mid_list) {
|
||||
$mid_list = explode(",",$args->mid_list);
|
||||
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);
|
||||
if(!is_array($module_srl)) $module_srl = array($module_srl);
|
||||
for($i=0;$i<count($module_srl);$i++) $modules[$module_srl[$i]] = null;
|
||||
|
||||
// 대상 모듈의 정보를 구함
|
||||
$module_list = $oModuleModel->getModulesInfo($module_srls);
|
||||
$module_list = $oModuleModel->getModulesInfo($module_srl);
|
||||
|
||||
// 각 모듈별로 먼저 정리 시작
|
||||
foreach($module_list as $module) {
|
||||
|
|
@ -74,9 +87,7 @@
|
|||
}
|
||||
|
||||
// 각 모듈별 전체글을 구함
|
||||
$total_documents_args->module_srl = $module->module_srl;
|
||||
$total_documents_args->module_srls = implode(',',$module_srls);
|
||||
|
||||
if($module_srl) $total_documents_args->module_srls = implode(',',$module_srl);
|
||||
$total_documents_output = executeQueryArray('widgets.forum.getTotalDocuments',$total_documents_args);
|
||||
if($total_documents_output->data) {
|
||||
foreach($total_documents_output->data as $val) {
|
||||
|
|
@ -85,8 +96,7 @@
|
|||
}
|
||||
|
||||
// 각 모듈별 댓글 수를 구함
|
||||
$total_comments_args->module_srl = $module->module_srl;
|
||||
$total_comments_args->module_srls = implode(',',$module_srls);
|
||||
$total_comments_args->module_srls = implode(',',$module_srl);
|
||||
|
||||
$total_comments_output = executeQueryArray('widgets.forum.getTotalComments',$total_comments_args);
|
||||
if($total_comments_output->data) {
|
||||
|
|
|
|||
|
|
@ -108,8 +108,8 @@
|
|||
</options>
|
||||
<description />
|
||||
</var>
|
||||
<var id="mid_list">
|
||||
<type>mid_list</type>
|
||||
<var id="module_srls">
|
||||
<type>module_srl_list</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="zh-CN">模块对象</name>
|
||||
<name xml:lang="jp">モジュール</name>
|
||||
|
|
|
|||
|
|
@ -15,36 +15,47 @@
|
|||
* 결과를 만든후 print가 아니라 return 해주어야 한다
|
||||
**/
|
||||
function proc($args) {
|
||||
// 위젯 자체적으로 설정한 변수들을 체크
|
||||
// 제목
|
||||
$title = $args->title;
|
||||
|
||||
// 정렬 대상
|
||||
$order_target = $args->order_target;
|
||||
|
||||
// 정렬 순서
|
||||
$order_type = $args->order_type;
|
||||
|
||||
// 출력된 목록 수
|
||||
$list_count = (int)$args->list_count;
|
||||
if(!$list_count) $list_count = 5;
|
||||
if($args->mid_list) $mid_list = explode(",",$args->mid_list);
|
||||
else $mid_list = array();
|
||||
|
||||
// module_srl 대신 mid가 넘어왔을 경우는 직접 module_srl을 구해줌
|
||||
$oModuleModel = &getModel('module');
|
||||
if(!count($mid_list)) {
|
||||
$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);
|
||||
}
|
||||
}
|
||||
|
||||
// CommentModel::getCommentList()를 이용하기 위한 변수 정리
|
||||
$obj->mid = $mid_list;
|
||||
$obj->sort_index = $order_target;
|
||||
$obj->list_count = $list_count;
|
||||
|
||||
// 제목 길이 자르기
|
||||
$subject_cut_size = $args->subject_cut_size;
|
||||
if(!$subject_cut_size) $subject_cut_size = 0;
|
||||
|
||||
// 대상 모듈 (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);
|
||||
|
||||
// CommentModel::getCommentList()를 이용하기 위한 변수 정리
|
||||
if(is_array($module_srl)) $obj->module_srl = implode(',',$module_srl);
|
||||
else $obj->module_srl = $module_srl;
|
||||
$obj->sort_index = $order_target;
|
||||
$obj->list_count = $list_count;
|
||||
|
||||
// comment 모듈의 model 객체를 받아서 getCommentList() method를 실행
|
||||
$oCommentModel = &getModel('comment');
|
||||
$output = $oCommentModel->getNewestCommentList($obj);
|
||||
|
|
|
|||
|
|
@ -196,8 +196,8 @@
|
|||
</options>
|
||||
<description />
|
||||
</var>
|
||||
<var id="mid_list">
|
||||
<type>mid_list</type>
|
||||
<var id="module_srls">
|
||||
<type>module_srl_list</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="zh-CN">模块对象</name>
|
||||
<name xml:lang="jp">モジュール</name>
|
||||
|
|
|
|||
|
|
@ -30,10 +30,6 @@
|
|||
$list_count = (int)$args->list_count;
|
||||
if(!$list_count) $list_count = 5;
|
||||
|
||||
// 대상 모듈
|
||||
if($args->mid_list) $mid_list = explode(",",$args->mid_list);
|
||||
else $mid_list = array();
|
||||
|
||||
// 제목 길이 자르기
|
||||
$subject_cut_size = $args->subject_cut_size;
|
||||
if(!$subject_cut_size) $subject_cut_size = 0;
|
||||
|
|
@ -42,28 +38,30 @@
|
|||
$duration_new = $args->duration_new;
|
||||
if(!$duration_new) $duration_new = 12;
|
||||
|
||||
// module_srl 대신 mid가 넘어왔을 경우는 직접 module_srl을 구해줌
|
||||
$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);
|
||||
// 대상 모듈 (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);
|
||||
|
||||
// DocumentModel::getDocumentList()를 이용하기 위한 변수 정리
|
||||
// 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->order_type = $order_type=="desc"?"asc":"desc";
|
||||
$obj->list_count = $list_count;
|
||||
|
||||
$output = executeQueryArray('widgets.newest_document.getNewestDocuments', $obj);
|
||||
|
||||
// document 모듈의 model 객체를 받아서 결과를 객체화 시킴
|
||||
|
|
|
|||
|
|
@ -285,8 +285,8 @@
|
|||
<name xml:lang="zh-TW">隱藏</name>
|
||||
</options>
|
||||
</var>
|
||||
<var id="mid_list">
|
||||
<type>mid_list</type>
|
||||
<var id="module_srls">
|
||||
<type>module_srl_list</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="jp">モジュール</name>
|
||||
<name xml:lang="zh-CN">对象模块</name>
|
||||
|
|
|
|||
|
|
@ -52,23 +52,29 @@
|
|||
// 제목
|
||||
$widget_info->title = $args->title;
|
||||
|
||||
// 대상 모듈 정리
|
||||
$mid_list = explode(",",$args->mid_list);
|
||||
|
||||
// 템플릿 파일에서 사용할 변수들을 세팅
|
||||
if(count($mid_list)==1) $widget_info->module_name = $mid_list[0];
|
||||
|
||||
// 변수 정리
|
||||
$obj->list_count = $widget_info->rows_list_count * $widget_info->cols_list_count;
|
||||
|
||||
// mid에 해당하는 module_srl을 구함
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_srl_list = $oModuleModel->getModuleSrlByMid($mid_list);
|
||||
if(is_array($module_srl_list)) $obj->module_srls = implode(",",$module_srl_list);
|
||||
else $obj->module_srls = $module_srl_list;
|
||||
|
||||
// 대상 모듈 (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);
|
||||
|
||||
$obj->module_srls = implode(",",$module_srl);
|
||||
$obj->direct_download = 'Y';
|
||||
$obj->isvalid = 'Y';
|
||||
|
||||
$oDocumentModel = &getModel('document');
|
||||
|
||||
// 정해진 모듈에서 문서별 파일 목록을 구함
|
||||
|
|
|
|||
|
|
@ -12,11 +12,11 @@
|
|||
|
||||
.ni_box .thumbnail_box td div { text-align:center; }
|
||||
.ni_box .thumbnail_box td.bottomBorder { border-bottom:1px dashed #EEEEEE; padding-bottom:5px; }
|
||||
.ni_box .thumbnail_box div strong { font-weight:bold; font-size:0.75em; color:#CCCCCC; }
|
||||
.ni_box .thumbnail_box div strong { font-weight:normal; font-size:0.9em; color:#ed2a32; }
|
||||
.ni_box .thumbnail_box div.author { color:#AAAAAA; }
|
||||
.ni_box .thumbnail_box div.author a { color:#AAAAAA; }
|
||||
.ni_box .thumbnail_box div.regdate { font-size:0.75em; color:#CCCCCC; margin-top:2px;}
|
||||
|
||||
.ni_box .thumbnail_box div.readAndVoted { color:#AAAAAA; font-size:0.75em; }
|
||||
.ni_box .thumbnail_box div.readAndVoted span.div_block { color:#DDDDDD; font-size:0.75em; }
|
||||
.ni_box .thumbnail_box div.readAndVoted strong { color:#FE6700; }
|
||||
.ni_box .thumbnail_box div.readAndVoted strong { font-weight:normal; color:#FE6700; }
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@
|
|||
|
||||
<div>
|
||||
<a href="{$oDocument->getPermanentUrl()}#{$oDocument->getCommentCount()}">{$oDocument->getTitle($widget_info->title_length)}</a>
|
||||
<!--@if($oDocument->getCommentCount())--><strong>[{$oDocument->getCommentCount()}]</strong><!--@end-->
|
||||
<!--@if($oDocument->getCommentCount())--><a href="{$oDocument->getPermanentUrl()}#comment"><strong>[{$oDocument->getCommentCount()}]</strong></a><!--@end-->
|
||||
</div>
|
||||
<!--@if($widget_info->display_author == 'Y')-->
|
||||
<div><span class="member_{$oDocument->get('member_srl')}">{$oDocument->getNickName()}</span></div>
|
||||
|
|
|
|||
|
|
@ -16,11 +16,11 @@
|
|||
.ni_box .thumbnail_box a:visited { color:#54564b; text-decoration:none; }
|
||||
|
||||
.ni_box .thumbnail_box td.bottomBorder { border-bottom:1px dashed #EEEEEE; padding-bottom:5px; }
|
||||
.ni_box .thumbnail_box div strong { font-weight:bold; font-size:0.9em; color:#ed2a32; }
|
||||
.ni_box .thumbnail_box div strong { font-weight:normal; font-size:0.9em; color:#ed2a32; }
|
||||
.ni_box .thumbnail_box div.author { color:#54564b; text-align:center;}
|
||||
.ni_box .thumbnail_box div.author span, .ni_box .thumbnail_box div.author div { color:#54564b; }
|
||||
.ni_box .thumbnail_box div.regdate { font-size:0.9em; color:#AAAAAA; margin-top:2px;text-align:center;}
|
||||
|
||||
.ni_box .thumbnail_box div.readAndVoted { color:#999999; font-size:0.9em; text-align:center;}
|
||||
.ni_box .thumbnail_box div.readAndVoted span.div_block { color:#333333; font-size:0.9em; }
|
||||
.ni_box .thumbnail_box div.readAndVoted strong { color:#FE6700; }
|
||||
.ni_box .thumbnail_box div.readAndVoted strong { font-weight:normal; color:#FE6700; }
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@
|
|||
|
||||
<div class="title">
|
||||
<a href="{$oDocument->getPermanentUrl()}#{$oDocument->getCommentCount()}">{$oDocument->getTitle($widget_info->title_length)}</a>
|
||||
<!--@if($oDocument->getCommentCount())--><strong>[{$oDocument->getCommentCount()}]</strong><!--@end-->
|
||||
<!--@if($oDocument->getCommentCount())--><a href="{$oDocument->getPermanentUrl()}#comment"><strong>[{$oDocument->getCommentCount()}]</strong></a><!--@end-->
|
||||
</div>
|
||||
<!--@if($widget_info->display_author == 'Y')-->
|
||||
<div class="author"><div class="member_{$oDocument->get('member_srl')}">{$oDocument->getNickName()}</div></div>
|
||||
|
|
|
|||
|
|
@ -62,8 +62,8 @@
|
|||
<description xml:lang="ru">Вы можете выбрать число списка трекбеков для отображения. (стандарт: 5)</description>
|
||||
<description xml:lang="zh-TW">可設置要顯示的列表數。(預設是5個)</description>
|
||||
</var>
|
||||
<var id="mid_list">
|
||||
<type>mid_list</type>
|
||||
<var id="module_srls">
|
||||
<type>module_srl_list</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="zh-CN">模块对象</name>
|
||||
<name xml:lang="jp">モジュール</name>
|
||||
|
|
@ -80,4 +80,4 @@
|
|||
<description xml:lang="zh-TW">將所選擇的模組當作目標。</description>
|
||||
</var>
|
||||
</extra_vars>
|
||||
</widget>
|
||||
</widget>
|
||||
|
|
|
|||
|
|
@ -15,25 +15,47 @@
|
|||
* 결과를 만든후 print가 아니라 return 해주어야 한다
|
||||
**/
|
||||
function proc($args) {
|
||||
// 위젯 자체적으로 설정한 변수들을 체크
|
||||
// 제목
|
||||
$title = $args->title;
|
||||
|
||||
// 정렬 대상
|
||||
$order_target = $args->order_target;
|
||||
if(!in_array($order_target, array('list_order','update_order'))) $order_target = 'list_order';
|
||||
|
||||
// 정렬 순서
|
||||
$order_type = $args->order_type;
|
||||
if(!in_array($order_type, array('asc','desc'))) $order_type = 'asc';
|
||||
|
||||
// 출력된 목록 수
|
||||
$list_count = (int)$args->list_count;
|
||||
if(!$list_count) $list_count = 5;
|
||||
$mid_list = explode(",",$args->mid_list);
|
||||
|
||||
// 대상 모듈 (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);
|
||||
|
||||
// TrackbackModel::getTrackbackList()를 이용하기 위한 변수 정리
|
||||
$obj->mid = $mid_list;
|
||||
$obj->module_srl = $module_srl;
|
||||
$obj->sort_index = $order_target;
|
||||
$obj->list_count = $list_count;
|
||||
|
||||
// trackback 모듈의 model 객체를 받아서 getTrackbackList() method를 실행
|
||||
$oTrackbackModel = &getModel('trackback');
|
||||
$output = $oTrackbackModel->getNewestTrackbackList($obj);
|
||||
|
||||
// 템플릿 파일에서 사용할 변수들을 세팅
|
||||
if(count($mid_list)==1) $widget_info->module_name = $mid_list[0];
|
||||
|
||||
$widget_info->title = $title;
|
||||
$widget_info->trackback_list = $output->data;
|
||||
|
|
|
|||
|
|
@ -146,8 +146,8 @@
|
|||
<name xml:lang="zh-TW">隱藏</name>
|
||||
</options>
|
||||
</var>
|
||||
<var id="mid_list">
|
||||
<type>mid_list</type>
|
||||
<var id="module_srls">
|
||||
<type>module_srl_list</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="jp">対象モジュール</name>
|
||||
<name xml:lang="en">Target Module</name>
|
||||
|
|
@ -164,4 +164,4 @@
|
|||
<description xml:lang="zh-TW">將所選擇的模組當作目標。</description>
|
||||
</var>
|
||||
</extra_vars>
|
||||
</widget>
|
||||
</widget>
|
||||
|
|
|
|||
|
|
@ -14,24 +14,40 @@
|
|||
* 결과를 만든후 print가 아니라 return 해주어야 한다
|
||||
**/
|
||||
function proc($args) {
|
||||
// 위젯 자체적으로 설정한 변수들을 체크
|
||||
// 제목
|
||||
$title = $args->title;
|
||||
$order_target = 'download_count';
|
||||
$args->order_type = 'desc';
|
||||
|
||||
// 정렬 대상
|
||||
$order_target = $args->order_target;
|
||||
|
||||
// 정렬 순서
|
||||
$order_type = $args->order_type;
|
||||
if(!in_array($order_type, array('asc','desc'))) $order_type = 'asc';
|
||||
|
||||
// 출력된 목록 수
|
||||
$list_count = (int)$args->list_count;
|
||||
if(!$list_count) $list_count = 5;
|
||||
$mid_list = explode(",",$args->mid_list);
|
||||
$subject_cut_size = $args->subject_cut_size;
|
||||
if(!$subject_cut_size) $subject_cut_size = 0;
|
||||
|
||||
// module_srl 대신 mid가 넘어왔을 경우는 직접 module_srl을 구해줌
|
||||
if($mid_list) {
|
||||
// 대상 모듈 (mid_list는 기존 위젯의 호환을 위해서 처리하는 루틴을 유지. module_srl로 위젯에서 변경)
|
||||
if($args->mid_list) {
|
||||
$mid_list = explode(",",$args->mid_list);
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_srl = $oModuleModel->getModuleSrlByMid($mid_list);
|
||||
}
|
||||
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);
|
||||
|
||||
// FileModel::getFileList()를 이용하기 위한 변수 정리
|
||||
$obj->s_module_srl = (is_array($module_srl)) ? implode(',',$module_srl) : "";
|
||||
$obj->s_module_srl = implode(',',$module_srl);
|
||||
$obj->direct_download = ($args->attach_type == "noimage") ? "N": (($args->attach_type == "image") ? "Y" : "");
|
||||
|
||||
if($args->without_image == "true") $obj->direct_download = "N";
|
||||
|
|
@ -58,9 +74,6 @@
|
|||
$file_list[$key] = $file;
|
||||
}
|
||||
}
|
||||
|
||||
// 템플릿 파일에서 사용할 변수들을 세팅
|
||||
if(count($mid_list)==1) $widget_info->module_name = $mid_list[0];
|
||||
|
||||
$widget_info->title = $title;
|
||||
$widget_info->list_count = $list_count;
|
||||
|
|
|
|||
|
|
@ -322,8 +322,8 @@
|
|||
<name xml:lang="zh-TW">隱藏</name>
|
||||
</options>
|
||||
</var>
|
||||
<var id="mid_list">
|
||||
<type>mid_list</type>
|
||||
<var id="module_srls">
|
||||
<type>module_srl_list</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="zh-CN">模块对象</name>
|
||||
<name xml:lang="jp">モジュール</name>
|
||||
|
|
@ -340,4 +340,4 @@
|
|||
<description xml:lang="zh-TW">將所選擇的模組當成顯示目標。</description>
|
||||
</var>
|
||||
</extra_vars>
|
||||
</widget>
|
||||
</widget>
|
||||
|
|
|
|||
|
|
@ -63,30 +63,42 @@
|
|||
// 템플릿 파일에서 사용할 변수들을 세팅
|
||||
if(count($mid_list)==1) $widget_info->module_name = $mid_list[0];
|
||||
|
||||
// mid에 해당하는 module_srl을 구함
|
||||
$oModuleModel = &getModel('module');
|
||||
$oDocumentModel = &getModel('document');
|
||||
$module_srl_list = $oModuleModel->getModuleSrlByMid($mid_list);
|
||||
if(is_array($module_srl_list)) $obj->module_srls = implode(",",$module_srl_list);
|
||||
else $obj->module_srls = $module_srl_list;
|
||||
|
||||
// 대상 모듈 (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);
|
||||
|
||||
$obj->module_srls = implode(',',$module_srl);
|
||||
|
||||
// 모듈 목록을 구함
|
||||
$tab_list = $oModuleModel->getMidList($obj);
|
||||
if(!$tab_list || !count($tab_list)) return;
|
||||
$module_list = $oModuleModel->getMidList($obj);
|
||||
if(!$module_list || !count($module_list)) return;
|
||||
foreach($module_list as $key => $val) $mid_module_list[$val->module_srl] = $key;
|
||||
|
||||
// 최근글이 등록된 탭의 순서를 정하기 위한 변수
|
||||
$newest_tab = array();
|
||||
for($i=0;$i<count($module_srl);$i++) $tab_list[$mid_module_list[$module_srl[$i]]] = $module_list[$mid_module_list[$module_srl[$i]]];
|
||||
|
||||
// 각 모듈에 해당하는 문서들을 구함
|
||||
$obj = null;
|
||||
$obj->list_count = $widget_info->list_count;
|
||||
$obj->sort_index = $widget_info->order_target;
|
||||
$obj->order_type = $widget_info->order_type=="desc"?"asc":"desc";
|
||||
foreach($tab_list as $key => $value) {
|
||||
$mid = $key;
|
||||
$module_srl = $value->module_srl;
|
||||
$browser_title = $value->browser_title;
|
||||
|
||||
foreach($tab_list as $mid => $module) {
|
||||
$obj->module_srl = $module_srl;
|
||||
$output = executeQueryArray("widgets.tab_newest_document.getNewestDocuments", $obj);
|
||||
unset($data);
|
||||
|
|
@ -96,24 +108,15 @@
|
|||
$oDocument = null;
|
||||
$oDocument = $oDocumentModel->getDocument();
|
||||
$oDocument->setAttribute($v);
|
||||
$data[$k] = $oDocument;
|
||||
if(!$newest_tab[$key]) $newest_tab[$key] = $oDocument->get('last_update');
|
||||
$tab_list[$mid]->document_list[] = $oDocument;
|
||||
}
|
||||
$tab_list[$key]->document_list = $data;
|
||||
} else {
|
||||
unset($tab_list[$key]);
|
||||
$tab_list[$mid]->document_list = array();
|
||||
}
|
||||
}
|
||||
|
||||
if(count($newest_tab)) {
|
||||
arsort($newest_tab);
|
||||
foreach($newest_tab as $key => $val) {
|
||||
$sorted_tab_list[$key] = $tab_list[$key];
|
||||
}
|
||||
} else $sorted_tab_list = $tab_list;
|
||||
|
||||
Context::set('widget_info', $widget_info);
|
||||
Context::set('tab_list', $sorted_tab_list);
|
||||
Context::set('tab_list', $tab_list);
|
||||
|
||||
// 템플릿의 스킨 경로를 지정 (skin, colorset에 따른 값을 설정)
|
||||
$tpl_path = sprintf('%sskins/%s', $this->widget_path, $args->skin);
|
||||
|
|
|
|||
|
|
@ -62,8 +62,8 @@
|
|||
<description xml:lang="ru">Вы можете сконфигурировать число тегов для показа. (стандарт: 20)</description>
|
||||
<description xml:lang="zh-TW">可設置要顯示的標籤數。(預設是 20個)</description>
|
||||
</var>
|
||||
<var id="mid_list">
|
||||
<type>mid_list</type>
|
||||
<var id="module_srls">
|
||||
<type>module_srl_list</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="zh-CN">模块对象</name>
|
||||
<name xml:lang="jp">モジュール</name>
|
||||
|
|
|
|||
|
|
@ -15,13 +15,33 @@
|
|||
* 결과를 만든후 print가 아니라 return 해주어야 한다
|
||||
**/
|
||||
function proc($args) {
|
||||
// 위젯 자체적으로 설정한 변수들을 체크
|
||||
// 제목
|
||||
$title = $args->title;
|
||||
|
||||
// 출력된 목록 수
|
||||
$list_count = (int)$args->list_count;
|
||||
if(!$list_count) $list_count = 20;
|
||||
if(!$list_count) $list_count = 5;
|
||||
|
||||
// 대상 모듈 (mid_list는 기존 위젯의 호환을 위해서 처리하는 루틴을 유지. module_srl로 위젯에서 변경)
|
||||
$oModuleModel = &getModel('module');
|
||||
if($args->mid_list) {
|
||||
$mid_list = explode(",",$args->mid_list);
|
||||
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);
|
||||
|
||||
// TagModel::getTagList()를 이용하기 위한 변수 정리
|
||||
$obj->mid = $args->mid_list;
|
||||
$obj->module_srl = $args->module_srl;
|
||||
$obj->list_count = $list_count;
|
||||
|
||||
// tag 모듈의 model 객체를 받아서 getTagList() method를 실행
|
||||
|
|
@ -29,11 +49,14 @@
|
|||
$output = $oTagModel->getTagList($obj);
|
||||
|
||||
// 템플릿 파일에서 사용할 변수들을 세팅
|
||||
if(preg_match('/^([0-9a-z\_]+)$/i', $args->mid_list)) $widget_info->mid = $widget_info->module_name = $args->mid_list;
|
||||
if(count($module_srl)==1) {
|
||||
$srl = $module_srl[0];
|
||||
$module_info = $oModuleModel->getModuleInfoByModuleSrl($srl);
|
||||
$widget_info->mid = $widget_info->module_name = $module_info->mid;
|
||||
}
|
||||
$widget_info->title = $title;
|
||||
|
||||
if(count($output->data)) {
|
||||
|
||||
$tags = array();
|
||||
$max = 0;
|
||||
$min = 99999999;
|
||||
|
|
|
|||
|
|
@ -398,8 +398,8 @@
|
|||
<name xml:lang="zh-TW">隱藏</name>
|
||||
</options>
|
||||
</var>
|
||||
<var id="mid_list">
|
||||
<type>mid_list</type>
|
||||
<var id="module_srls">
|
||||
<type>module_srl_list</type>
|
||||
<name xml:lang="ko">대상 모듈</name>
|
||||
<name xml:lang="zh-CN">模块对象</name>
|
||||
<name xml:lang="jp">モジュール</name>
|
||||
|
|
|
|||
Binary file not shown.
|
Before Width: | Height: | Size: 43 B |
Binary file not shown.
|
Before Width: | Height: | Size: 44 B |
|
Before Width: | Height: | Size: 139 B After Width: | Height: | Size: 139 B |
|
|
@ -1,7 +1,7 @@
|
|||
<!--// 설정된 컬러셋의 종류에 따라서 css파일을 import 합니다 -->
|
||||
|
||||
<!--@if($colorset=="normal"||!$colorset)-->
|
||||
<!--%import("css/normal.css")-->
|
||||
<!--%import("normal.css")-->
|
||||
<!--@end-->
|
||||
|
||||
<div class="nw_box">
|
||||
|
|
@ -33,7 +33,7 @@
|
|||
|
||||
<span class="title">
|
||||
<a href="{$oDocument->getPermanentUrl()}#{$oDocument->getCommentCount()}">{$oDocument->getTitle($widget_info->subject_cut_size)}</a>
|
||||
<!--@if($oDocument->getCommentCount())--><strong>[{$oDocument->getCommentCount()}]</strong><!--@end-->
|
||||
<!--@if($oDocument->getCommentCount())--> <a href="{$oDocument->getPermanentUrl()}#comment"><strong>[{$oDocument->getCommentCount()}]</strong></a><!--@end-->
|
||||
</span>
|
||||
|
||||
<!--@if($widget_info->display_regdate == 'Y')-->
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
.nw_box { padding-bottom:5px; overflow:hidden; }
|
||||
.nw_box h2 { margin:0; font-size:1em; display:block; height:21px; padding:9px 0 0 9px; margin-bottom:5px; color:#000000; background:url(../images/normal/lineNotice.gif) no-repeat left bottom;}
|
||||
.nw_box h2 { margin:0; font-size:1em; display:block; height:21px; padding:9px 0 0 9px; margin-bottom:5px; color:#000000; background:url(./lineNotice.gif) no-repeat left bottom;}
|
||||
|
||||
.nw_box a.more { text-decoration:none;}
|
||||
.nw_box a.more:hover { text-decoration:underline;}
|
||||
|
||||
.nw_box .listTable { width:100%; table-layout:fixed; border:none;}
|
||||
|
||||
.nw_box .listTable tr td { border-bottom:1px dotted #DEDEDE; padding:0;margin:0; vertical-align:top; overflow:hidden; }
|
||||
.nw_box .listTable tr td { padding:0;margin:0; vertical-align:top; overflow:hidden; }
|
||||
|
||||
.nw_box .thumbnailBox { width:100%; margin:0;padding:0;border:none; table-layout:fixed; }
|
||||
.nw_box .thumbnailBox tr td { border-bottom:none; padding:none; margin:none; }
|
||||
|
|
@ -65,17 +65,25 @@
|
|||
// 제목
|
||||
$widget_info->title = $args->title;
|
||||
|
||||
// 대상 모듈 정리
|
||||
$mid_list = explode(",",$args->mid_list);
|
||||
// 대상 모듈 (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);
|
||||
|
||||
// 템플릿 파일에서 사용할 변수들을 세팅
|
||||
if(count($mid_list)==1) $widget_info->module_name = $mid_list[0];
|
||||
|
||||
// mid에 해당하는 module_srl을 구함
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_srl_list = $oModuleModel->getModuleSrlByMid($mid_list);
|
||||
if(is_array($module_srl_list)) $obj->module_srl = implode(",",$module_srl_list);
|
||||
else $obj->module_srl = $module_srl_list;
|
||||
$obj->module_srl = implode(",",$module_srl);
|
||||
$obj->sort_index = $widget_info->order_target;
|
||||
$obj->order_type = $widget_info->order_type=="desc"?"asc":"desc";
|
||||
$obj->list_count = $widget_info->rows_list_count * $widget_info->cols_list_count;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue