git-svn-id: http://xe-core.googlecode.com/svn/trunk@1247 201d5d3c-b55e-5fd7-737f-ddc643e51545

This commit is contained in:
zero 2007-04-19 09:30:38 +00:00
parent 495ac679be
commit 73c940af39
16 changed files with 71 additions and 43 deletions

View file

@ -499,7 +499,8 @@
if(!$page) $page = 1;
// 전체 페이지를 구함
$total_page = (int)(($total_count-1)/$list_count)+1;
if($total_count) $total_page = (int)( ($total_count-1) / $list_count) + 1;
else $total_page = 1;
// 페이지 변수를 체크
if($page > $total_page) $page = $total_page;

View file

@ -452,7 +452,8 @@
if(!$page) $page = 1;
// 전체 페이지를 구함
$total_page = (int)(($total_count-1)/$list_count)+1;
if($total_count) $total_page = (int)( ($total_count-1) / $list_count) + 1;
else $total_page = 1;
// 페이지 변수를 체크
if($page > $total_page) $page = $total_page;

View file

@ -461,7 +461,8 @@
if(!$page) $page = 1;
// 전체 페이지를 구함
$total_page = (int)(($total_count-1)/$list_count) +1;
if($total_count) $total_page = (int)( ($total_count-1) / $list_count) + 1;
else $total_page = 1;
// 페이지 변수를 체크
if($page > $total_page) $page = $total_page;

View file

@ -456,7 +456,8 @@
if(!$page) $page = 1;
// 전체 페이지를 구함
$total_page = (int)(($total_count-1)/$list_count) +1;
if($total_count) $total_page = (int)( ($total_count-1) / $list_count) + 1;
else $total_page = 1;
// 페이지 변수를 체크
if($page > $total_page) $page = $total_page;

View file

@ -499,7 +499,8 @@
if(!$page) $page = 1;
// 전체 페이지를 구함
$total_page = (int)(($total_count-1)/$list_count) +1;
if($total_count) $total_page = (int)( ($total_count-1) / $list_count) + 1;
else $total_page = 1;
// 페이지 변수를 체크
if($page > $total_page) $page = $total_page;

View file

@ -41,7 +41,7 @@ var node_callback_func = new Array();
var node_move_callback_func = new Array();
// 트리메뉴의 정보를 담고 있는 xml파일을 읽고 drawTreeMenu()를 호출하는 함수
function loadTreeMenu(url, menu_id, zone_id, title, callback_func, manual_select_node_srl, callback_move_func) {
function loadTreeMenu(url, menu_id, zone_id, title, index_url , callback_func, manual_select_node_srl, callback_move_func) {
// 일단 그릴 곳을 찾아서 사전 작업을 함 (그릴 곳이 없다면 아예 시도를 안함)
var zone = xGetElementById(zone_id);
if(typeof(zone)=="undefined") return;
@ -77,8 +77,10 @@ function loadTreeMenu(url, menu_id, zone_id, title, callback_func, manual_select
oXml.reset();
oXml.xml_path = url;
if(!index_url) index_url= "#";
// menu_id, zone_id는 계속 달고 다녀야함
var param = {menu_id:menu_id, zone_id:zone_id, title:title, manual_select_node_srl:manual_select_node_srl}
var param = {"menu_id":menu_id, "zone_id":zone_id, "title":title, "index_url":index_url, "manual_select_node_srl":manual_select_node_srl}
// 요청후 drawTreeMenu()함수를 호출 (xml_handler.js에서 request method를 직접 이용)
oXml.request(drawTreeMenu, oXml, null, null, null, param);
@ -91,11 +93,12 @@ function drawTreeMenu(oXml, callback_func, resopnse_tags, null_func, param) {
var menu_id = param.menu_id;
var zone_id = param.zone_id;
var title = param.title;
var index_url = param.index_url;
if(param.manual_select_node_srl) manual_select_node_srl = param.manual_select_node_srl;
var zone = xGetElementById(zone_id);
var html = "";
if(title) html = '<div style="padding-left:18px;margin-bottom:5px;background:url('+tree_menu_icon_path+'folder.gif) no-repeat left;">'+title+'</div>';
if(title) html = '<div style="cursor:pointer;padding-left:18px;margin-bottom:5px;background:url('+tree_menu_icon_path+'folder.gif) no-repeat left;" onclick="location.href=\''+index_url+'\';return false;" >'+title+'</div>';
var xmlDoc = oXml.getResponseXml();
if(!xmlDoc) {
@ -395,7 +398,7 @@ function moveTreeMenu(menu_id, node) {
// url이 있으면 url을 분석한다 (제로보드 특화된 부분. url이 http나 ftp등으로 시작하면 그냥 해당 url 열기)
if(url) {
// http, ftp등의 연결이 아닌 경우 제로보드용으로 처리
if(url.indexOf('://')==-1) {
if(url.indexOf('://')==-1 && url.indexOf('.')==-1) {
url = "./?"+url;
}

View file

@ -515,17 +515,18 @@
// xml파일 생성시 필요한 정보가 없으면 그냥 return
if(!$module_srl) return;
// DB에서 module_srl 에 해당하는 메뉴 아이템 목록을 listorder순으로 구해옴
$args->module_srl = $module_srl;
$args->sort_index = 'listorder';
$output = executeQuery('blog.getBlogCategories', $args);
if(!$output->toBool()) return;
// 캐시 파일의 이름을 지정
$xml_file = sprintf("./files/cache/blog_category/%s.xml.php", $module_srl);
// 모듈정보를 구해옴
$oModuleModel = &getModel('module');
$this->module_info = $oModuleModel->getModuleInfoByModuleSrl($module_srl);
// DB에서 module_srl 에 해당하는 메뉴 아이템 목록을 listorder순으로 구해옴
$oBlogModel = &getModel('blog');
$list = $oBlogModel->getCategoryList($module_srl);
// 구해온 데이터가 없다면 노드데이터가 없는 xml 파일만 생성
$list = $output->data;
if(!$list) {
$xml_buff = "<root />";
FileHandler::writeFile($xml_file, $xml_buff);
@ -576,10 +577,11 @@
else $group_check_code = "true";
$attribute = sprintf(
'node_srl="%s" text=\'<?=(%s?"%s":"")?>\' expand="%s" ',
'node_srl="%s" text="<?=(%s?"%s":"")?>" url="%s" expand="%s" ',
$category_srl,
$group_check_code,
$name,
sprintf('./?mid=%s&amp;category=%d', $this->module_info->mid, $category_srl),
$expand
);

View file

@ -24,6 +24,17 @@
return $category_info;
}
/**
* @brief 특정 모듈의 전체 카테고리를 구함
**/
function getCategoryList($module_srl) {
$args->module_srl = $module_srl;
$args->sort_index = 'listorder';
$output = executeQuery('blog.getBlogCategories', $args);
if(!$output->toBool()) return;
return $output->data;
}
/**
* @brief 특정 카테고리의 정보를 return
* 정보중에 group_srls의 경우는 , 연결되어 들어가며 사용시에는 explode를 통해 array로 변환 시킴

View file

@ -87,6 +87,15 @@
// rss url
if($this->grant->list) Context::set('rss_url', getUrl('','mid',$this->mid,'act','dispBlogRss'));
// 카테고리 목록을 가져오고 선택된 카테고리의 값을 설정
$oBlogModel = &getModel('blog');
$category_list = $oBlogModel->getCategoryList($this->module_info->module_srl);
if(count($category_list)) {
foreach($category_list as $key => $val) {
$this->category_list[$val->category_srl] = $val;
}
}
Context::set('module_info',$this->module_info);
}
@ -146,6 +155,9 @@
$args->search_target = Context::get('search_target'); ///< 검색 대상 (title, contents...)
$args->search_keyword = Context::get('search_keyword'); ///< 검색어
$category_srl = Context::get('category');
if($this->category_list[$category_srl]) $args->category_srl = $category_srl;
$args->sort_index = 'list_order'; ///< 소팅 값
// 목록 구함, document->getDocumentList 에서 걍 알아서 다 해버리는 구조이다... (아.. 이거 나쁜 버릇인데.. ㅡ.ㅜ 어쩔수 없다)
@ -165,11 +177,6 @@
}
Context::set('search_option', $search_option);
// 관리자일 경우 체크한 문서들의 목록을 세팅
if($this->grant->is_admin) {
Context::set('check_list',$_SESSION['document_management'][$this->module_srl]);
}
$this->setTemplateFile('list');
}

View file

@ -95,7 +95,7 @@ body {
.layout_profile .profile{
color:#555555;
text-align:left;
padding:0px 10px 0px 10px;
padding:0px 10px 10px 10px;
}
/* rss 버튼 */
@ -126,10 +126,10 @@ body {
/* 좌측 관리자 메뉴 */
.layout_admin {
border:3px solid #EEEEEE;
padding:5px;
border-top:1px solid #EEEEEE;
text-align:center;
margin-bottom:10px;
padding-top:10px;
margin:10px 5px 0px 10px;
}
.layout_admin A {

View file

@ -3,7 +3,7 @@
<!-- 블로그 메뉴를 common/js/tree_menu.js를 이용해서 표시 -->
<script type="text/javascript">
loadTreeMenu("{$module_info->category_xml_file}", "blog_category", "blog_category", "{$module_info->category_name?$module_info->category_name:'category'}");
loadTreeMenu("{$module_info->category_xml_file}", "blog_category", "blog_category", "{$module_info->category_name?$module_info->category_name:'category'}", "./?mid={$mid}");
</script>
@ -58,6 +58,13 @@
</div>
<!--@end-->
<!--@if($logged_info->is_admin == 'Y')-->
<!-- 관리자일 경우 블로그 관리 메뉴 -->
<div class="layout_admin">
<a href="#" onclick="location.href='{getUrl('act','dispBlogAdminBlogInfo','layout_srl',$module_info->layout_srl)}';return false;">{$lang->cmd_management}</a>
</div>
<!--@end-->
</div>
<!--@end-->
@ -84,13 +91,6 @@
</div>
<!--@end-->
<!--@if($logged_info->is_admin == 'Y')-->
<!-- 관리자일 경우 블로그 관리 메뉴 -->
<div class="layout_admin">
<a href="#" onclick="location.href='{getUrl('act','dispBlogAdminBlogInfo','layout_srl',$module_info->layout_srl)}';return false;">{$lang->cmd_management}</a>
</div>
<!--@end-->
</div>
<!-- 컨텐츠 출력 부분 -->

View file

@ -43,6 +43,6 @@
</form>
<script type="text/javascript">
loadTreeMenu("{$category_info->xml_file}", "category", "zone_category", category_title, doGetCategoryInfo, 0, doMoveTree);
loadTreeMenu("{$category_info->xml_file}", "category", "zone_category", category_title, '', doGetCategoryInfo, 0, doMoveTree);
</script>
</div>

View file

@ -169,7 +169,7 @@ function completeInsertCategory(ret_obj) {
if(!xml_file) return;
loadTreeMenu(xml_file, 'category', 'zone_category', category_title, doGetCategoryInfo, category_srl, doMoveTree);
loadTreeMenu(xml_file, 'category', 'zone_category', category_title, '',doGetCategoryInfo, category_srl, doMoveTree);
if(!category_srl) xInnerHtml("category_info", "");
else {
@ -200,7 +200,7 @@ function completeMoveCategory(ret_obj) {
var source_category_srl = ret_obj['source_category_srl'];
var xml_file = ret_obj['xml_file'];
loadTreeMenu(xml_file, 'category', "zone_category", category_title, doGetCategoryInfo, source_category_srl, doMoveTree);
loadTreeMenu(xml_file, 'category', "zone_category", category_title, '', doGetCategoryInfo, source_category_srl, doMoveTree);
}
/* 카테고리 목록 갱신 */
@ -228,7 +228,7 @@ function completeDeleteCategory(ret_obj) {
var xml_file = ret_obj['xml_file'];
alert(ret_obj['message']);
loadTreeMenu(xml_file, 'category', 'zone_category', category_title, doGetCategoryInfo, category_srl, doMoveTree);
loadTreeMenu(xml_file, 'category', 'zone_category', category_title, '', doGetCategoryInfo, category_srl, doMoveTree);
xInnerHtml("category_info", "");
}

View file

@ -318,7 +318,7 @@
if($group_srls) $group_check_code = sprintf('($_SESSION["is_admin"]==true||(is_array($_SESSION["group_srls"])&&count(array_intersect($_SESSION["group_srls"], array(%s)))))',$group_srls);
else $group_check_code = "true";
$attribute = sprintf(
'node_srl="%s" text=\'<?=(%s?"%s":"")?>\' url=\'<?=(%s?"%s":"")?>\' open_window="%s" expand="%s" normal_btn="%s" hover_btn="%s" active_btn="%s" ',
'node_srl="%s" text="<?=(%s?"%s":"")?>" url="<?=(%s?"%s":"")?>" open_window="%s" expand="%s" normal_btn="%s" hover_btn="%s" active_btn="%s" ',
$menu_item_srl,
$group_check_code,
$name,

View file

@ -72,7 +72,7 @@ function completeInsertMenuItem(ret_obj) {
if(!xml_file) return;
loadTreeMenu(xml_file, 'menu', 'menu_zone_menu', menu_title, doGetMenuItemInfo, menu_item_srl, doMoveTree);
loadTreeMenu(xml_file, 'menu', 'menu_zone_menu', menu_title, '', doGetMenuItemInfo, menu_item_srl, doMoveTree);
if(!menu_srl) xInnerHtml("menu_zone_info", "");
else {
@ -106,7 +106,7 @@ function completeMoveMenuItem(ret_obj) {
if(!fo_menu) return;
var title = fo_menu.title.value;
loadTreeMenu(xml_file, 'menu', "menu_zone_menu", title, doGetMenuItemInfo, source_item_srl, doMoveTree);
loadTreeMenu(xml_file, 'menu', "menu_zone_menu", title, '', doGetMenuItemInfo, source_item_srl, doMoveTree);
}
/* 메뉴 목록 갱신 */
@ -135,7 +135,7 @@ function completeDeleteMenuItem(ret_obj) {
var xml_file = ret_obj['xml_file'];
alert(ret_obj['message']);
loadTreeMenu(xml_file, 'menu', 'menu_zone_menu', menu_title, doGetMenuItemInfo, menu_item_srl, doMoveTree);
loadTreeMenu(xml_file, 'menu', 'menu_zone_menu', menu_title, '', doGetMenuItemInfo, menu_item_srl, doMoveTree);
xInnerHtml("menu_zone_info", "");
}

View file

@ -75,6 +75,6 @@
</form>
<script type="text/javascript">
loadTreeMenu("{$menu_info->xml_file}", "menu", "menu_zone_menu", "{$menu_info->title}", doGetMenuItemInfo, 0, doMoveTree);
loadTreeMenu("{$menu_info->xml_file}", "menu", "menu_zone_menu", "{$menu_info->title}", '', doGetMenuItemInfo, 0, doMoveTree);
</script>
</div>