mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-08 03:01:43 +09:00
issue 70 site map admin developement
git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@9055 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
b909a11c5e
commit
fc3a39b65a
8 changed files with 131 additions and 46 deletions
|
|
@ -334,13 +334,23 @@
|
|||
/**
|
||||
* @brief Get admin favorite list
|
||||
**/
|
||||
function getFavoriteList($siteSrl)
|
||||
function getFavoriteList($siteSrl = 0, $isGetModuleInfo = false)
|
||||
{
|
||||
$args->site_srl = $siteSrl;
|
||||
$output = executeQueryArray('admin.getFavoriteList', $args);
|
||||
if (!$output->toBool()) return $output;
|
||||
if (!$output->data) return new Object();
|
||||
|
||||
if($isGetModuleInfo && is_array($output->data))
|
||||
{
|
||||
$oModuleModel = &getModel('module');
|
||||
foreach($output->data AS $key=>$value)
|
||||
{
|
||||
$moduleInfo = $oModuleModel->getModuleInfoXml($value->module);
|
||||
$value->admin_index_act = $moduleInfo->admin_index_act;
|
||||
}
|
||||
}
|
||||
|
||||
$returnObject = new Object();
|
||||
$returnObject->add('favoriteList', $output->data);
|
||||
return $returnObject;
|
||||
|
|
|
|||
|
|
@ -302,6 +302,12 @@
|
|||
if(file_exists($path)) $isEnviromentGatheringAgreement = true;
|
||||
Context::set('isEnviromentGatheringAgreement', $isEnviromentGatheringAgreement);
|
||||
Context::set('layout','none');
|
||||
|
||||
// Get list of favorite
|
||||
$oAdminAdminModel = &getAdminModel('admin');
|
||||
$output = $oAdminAdminModel->getFavoriteList(0, true);
|
||||
Context::set('favorite_list', $output->data);
|
||||
|
||||
$this->setTemplateFile('index');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@
|
|||
<ul class="lined">
|
||||
<!--@foreach($latestCommentList AS $key=>$value)-->
|
||||
<li>
|
||||
<a href="#" target="_blank">{$value->content}</a> <span class="side">{$value->nick_name}</span>
|
||||
<a href="{getUrl('', 'document_srl', $value->document_srl)}#comment_{$value->comment_srl}" target="_blank">{$value->content}</a> <span class="side">{$value->nick_name}</span>
|
||||
<span class="action">
|
||||
<form>
|
||||
<input type="hidden" name="module" value="admin" />
|
||||
|
|
|
|||
|
|
@ -257,19 +257,24 @@
|
|||
$this->itemKeyList = Context::get('item_key');
|
||||
|
||||
// menu name update
|
||||
/*$args->menu_srl = $this->menuSrl;
|
||||
$args->menu_srl = $this->menuSrl;
|
||||
$output = executeQuery('menu.updateMenu', $args);
|
||||
if(!$output->toBool()) return $output;*/
|
||||
if(!$output->toBool()) return $output;
|
||||
|
||||
$this->map = array();
|
||||
if(is_array($parentKeyList))
|
||||
{
|
||||
foreach($parentKeyList as $no=>$srl)
|
||||
{
|
||||
if ($srl === 0) continue;
|
||||
if (!is_array($this->map[$srl]))$this->map[$srl] = array();
|
||||
$this->map[$srl][] = $no;
|
||||
}
|
||||
}
|
||||
|
||||
$result = array();
|
||||
if(is_array($this->itemKeyList))
|
||||
{
|
||||
foreach($this->itemKeyList as $srl)
|
||||
{
|
||||
if (!$this->checked[$srl]){
|
||||
|
|
@ -284,6 +289,7 @@
|
|||
$result[] = $target;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(is_array($result))
|
||||
{
|
||||
|
|
@ -319,13 +325,15 @@
|
|||
|
||||
function _recursiveMoveMenuItem($result)
|
||||
{
|
||||
$i = 0;
|
||||
while(count($result->child))
|
||||
{
|
||||
unset($node);
|
||||
$node = array_shift($result->child);
|
||||
|
||||
$this->moveMenuItem($this->menuSrl, $node->parent_node, 0, $node->node, 'move');
|
||||
$this->moveMenuItem($this->menuSrl, $node->parent_node, $i, $node->node, 'move');
|
||||
$this->_recursiveMoveMenuItem($node);
|
||||
$i = $node->node;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@
|
|||
**/
|
||||
|
||||
class menuAdminView extends menu {
|
||||
var $tmpMenu = null;
|
||||
|
||||
/**
|
||||
* @brief Initialization
|
||||
|
|
@ -102,27 +103,40 @@
|
|||
function dispMenuAdminSiteMap()
|
||||
{
|
||||
$oMenuAdminModel = &getAdminModel('menu');
|
||||
$output = $oMenuAdminModel->getMenus();
|
||||
$output = array_reverse($oMenuAdminModel->getMenus());
|
||||
|
||||
$menuList = array();
|
||||
if(is_array($output))
|
||||
{
|
||||
$columnList = array('menu_item_srl', 'parent_srl', 'menu_srl', 'name');
|
||||
$menuItems = array();
|
||||
foreach($output AS $key=>$value)
|
||||
{
|
||||
if($value->title == '__XE_ADMIN__') unset($output[$key]);
|
||||
else
|
||||
{
|
||||
unset($menu);
|
||||
unset($menuItems);
|
||||
$value->xml_file = sprintf('./files/cache/menu/%s.xml.php',$value->menu_srl);
|
||||
//$value->php_file = sprintf('./files/cache/menu/%s.php',$value->menu_srl);
|
||||
//if(file_exists($value->php_file)) @include($value->php_file);
|
||||
$value->php_file = sprintf('./files/cache/menu/%s.php',$value->menu_srl);
|
||||
if(file_exists($value->php_file)) @include($value->php_file);
|
||||
|
||||
array_push($menuList, $value->xml_file);
|
||||
if(count($menu->list)>0)
|
||||
{
|
||||
foreach($menu->list AS $key2=>$value2)
|
||||
{
|
||||
$this->_menuInfoSetting($menu->list[$key2]);
|
||||
}
|
||||
}
|
||||
|
||||
//array_push($menuList, $value->xml_file);
|
||||
$menuItems->menuSrl = $value->menu_srl;
|
||||
$menuItems->title = $value->title;
|
||||
$menuItems->menuItems = $menu;
|
||||
array_push($menuList, $menuItems);
|
||||
}
|
||||
}
|
||||
}
|
||||
Context::set('menu_url_list', $menuList);
|
||||
Context::set('menu_list', $menuList);
|
||||
|
||||
// get installed module list
|
||||
$oModuleModel = &getModel('module');
|
||||
|
|
@ -156,6 +170,30 @@
|
|||
$this->setTemplateFile('sitemap');
|
||||
}
|
||||
|
||||
function _menuInfoSetting(&$menu)
|
||||
{
|
||||
$oModuleModel = &getModel('module');
|
||||
if(!preg_match('/^http/i', $menu['url']))
|
||||
{
|
||||
unset($midInfo);
|
||||
unset($moduleInfo);
|
||||
$midInfo = $oModuleModel->getModuleInfoByMid($menu['url']);
|
||||
$moduleInfo = $oModuleModel->getModuleInfoXml($midInfo->module);
|
||||
if($moduleInfo->setup_index_act)
|
||||
{
|
||||
$menu['module_srl'] = $midInfo->module_srl;
|
||||
$menu['setup_index_act'] = $moduleInfo->setup_index_act;
|
||||
}
|
||||
}
|
||||
if(count($menu['list']) > 0)
|
||||
{
|
||||
foreach($menu['list'] AS $key=>$value)
|
||||
{
|
||||
$this->_menuInfoSetting($menu['list'][$key]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function _arrangeMenuItem($menuItems)
|
||||
{
|
||||
if(is_array($menuItems))
|
||||
|
|
|
|||
|
|
@ -96,10 +96,18 @@ function completeMoveMenuItem(ret_obj) {
|
|||
function doReloadTreeMenu(menu_srl) {
|
||||
var params = new Array();
|
||||
params["menu_srl"] = menu_srl;
|
||||
console.log(params);
|
||||
|
||||
// 서버에 요청하여 해당 노드의 정보를 수정할 수 있도록 한다.
|
||||
var response_tags = new Array('error','message', 'xml_file', 'menu_title');
|
||||
exec_xml('menu', 'procMenuAdminMakeXmlFile', params, completeInsertMenuItem, response_tags, params);
|
||||
exec_xml('menu', 'procMenuAdminMakeXmlFile', params, completeRemakeCache, response_tags, params);
|
||||
}
|
||||
|
||||
function completeRemakeCache(ret_obj) {
|
||||
if(ret_obj.error == 0)
|
||||
{
|
||||
document.location.reload();
|
||||
}
|
||||
}
|
||||
|
||||
/* 메뉴 삭제 */
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
<load target="./js/menu_admin.js" />
|
||||
<load target="../../admin/tpl/js/sitemap.js" />
|
||||
<load target="./js/sitemap.js" />
|
||||
|
||||
|
|
@ -6,37 +7,35 @@
|
|||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<h1 class="h1">Site Map</h1>
|
||||
<!--@foreach($menu_list AS $key=>$value)-->
|
||||
{@$menu_srl = $value->menu_srl}
|
||||
<form class="portlet siteMap" id="menu_{$menu_srl}">
|
||||
|
||||
<block loop="$menu_list=>$key,$value">
|
||||
{@$menuSrl = $value->menuSrl}
|
||||
<form class="portlet siteMap" id="menu_{$menuSrl}">
|
||||
<input type="hidden" name="act" value="procMenuAdminDeleteItem" />
|
||||
<input type="hidden" name="menu_srl" value="{$value->menu_srl}" />
|
||||
<input type="hidden" name="menu_srl" value="{$menuSrl}" />
|
||||
<input type="hidden" name="menu_item_srl" value="" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin', 'act', 'dispMenuAdminSiteMap')}" />
|
||||
|
||||
<h2 class="h2"><input name="title" value="{$value->title}" /></h2>
|
||||
<a href="#nav1" class="tgMap">접기</a>
|
||||
<ul class="lined" id="nav1">
|
||||
<li loop="$value->menuItems=>$key2,$value2">
|
||||
<input type="hidden" name="parent_key[]" value="0" class="_parent_key" />
|
||||
<input type="hidden" name="item_key[]" value="{$key2}" class="_item_key" />
|
||||
<a href="#" class="ms">{$value2['name']}</a> {$key2} <a href="#" class="wPreview" target="_blank">Preview</a>
|
||||
<span class="side"><a href="#editMenu" class="modalAnchor _edit">Edit...</a> | <a href="#delete" class="_delete">Delete</a></span>
|
||||
<ul cond="$value2['subMenu']>0">
|
||||
<li loop="$value2['subMenu']=>$key3,$value3">
|
||||
<input type="hidden" name="parent_key[]" value="{$key2}" class="_parent_key" />
|
||||
<input type="hidden" name="item_key[]" value="{$key3}" class="_item_key" />
|
||||
{$value3->name} {$key3} <a href="#" class="wPreview" target="_blank">Preview</a> <span class="side"><a href="#editMenu" class="modalAnchor _edit">Edit...</a> | <a href="#delete" class="_delete">Delete</a></span>
|
||||
</li>
|
||||
<ul class="lined" id="nav1" cond="count($value->menuItems->list > 0)">
|
||||
<block loop="$value->menuItems->list=>$key2,$value2">
|
||||
{@$item = $value2}
|
||||
<include target="sitemap.item.html" />
|
||||
</block>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<p class="btnArea"><span class="btn small"><a href="#editMenu" class="modalAnchor _add">Add Menu...</a></span> <span class="btn small"><button value="procMenuAdminArrangeItem" name="act" type="submit">{$lang->cmd_save}</button></span></p>
|
||||
<p class="btnArea"><span class="btn small"><a href="#editMenu" class="modalAnchor _add">Add Menu...</a></span> <span class="btn small"><button value="procMenuAdminArrangeItem" name="act" type="submit">{$lang->cmd_save}</button></span><span class="btn small"><a href="#remakeCache" onclick="doReloadTreeMenu('{$menuSrl}');return false;">{$lang->cmd_remake_cache}</a></span></p>
|
||||
</form>
|
||||
<!--@end-->
|
||||
</block>
|
||||
|
||||
<form action="./" method="post" class="form">
|
||||
<input type="hidden" name="act" value="procMenuAdminInsert" />
|
||||
<input type="hidden" name="title" value="untitled" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin', 'act', 'dispMenuAdminSiteMap')}" />
|
||||
<div class="btnArea">
|
||||
<span class="btn medium"><button type="button">Add New Site Map...</button></span>
|
||||
<span class="btn medium"><button type="submit">Add New Site Map...</button></span>
|
||||
</div>
|
||||
</form>
|
||||
<div class="modal" id="editMenu">
|
||||
<div class="fg">
|
||||
<form ruleset="insertMenuItem" id="editForm" action="./" method="post" enctype="multipart/form-data" class="form">
|
||||
|
|
|
|||
16
modules/menu/tpl/sitemap.item.html
Normal file
16
modules/menu/tpl/sitemap.item.html
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
<li>
|
||||
<input type="hidden" name="parent_key[]" value="{$item['parent_srl']}" class="_parent_key" />
|
||||
<input type="hidden" name="item_key[]" value="{$item['node_srl']}" class="_item_key" />
|
||||
<!--@if($item['href'])--><a href="{$item['href']}" class="ms" target="_blank">{$item['text']}</a><!--@else-->{$item['text']}<!--@end-->
|
||||
<!--@if($item['setup_index_act'])-->
|
||||
<a href="{getUrl('', 'module', 'admin', 'act', $item['setup_index_act'], 'module_srl', $item['module_srl'])}" class="wPreview">Preview</a>
|
||||
<!--@end-->
|
||||
<span class="side"><a href="#editMenu" class="modalAnchor _edit">Edit...</a> | <a href="#delete" class="_delete">Delete</a></span>
|
||||
<ul cond="count($item['list']>0)">
|
||||
<block loop="$item['list']=>$idx,$val">
|
||||
{@$item = $val}
|
||||
<include target="sitemap.item.html" />
|
||||
</block>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue