mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-08 03:01:43 +09:00
레이아웃 설정시 연결된 메뉴의 일괄 레이아웃 조절 기능을 정상적으로 동작하도록 수정
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@3982 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
ffe907403e
commit
996d5c6167
3 changed files with 41 additions and 11 deletions
|
|
@ -54,22 +54,28 @@
|
|||
$oLayoutModel = &getModel('layout');
|
||||
$layout_info = $oLayoutModel->getLayout($args->layout_srl);
|
||||
$menus = get_object_vars($layout_info->menu);
|
||||
if(count($menus)) {
|
||||
if(count($menus) ) {
|
||||
foreach($menus as $menu_id => $val) {
|
||||
$menu_srl = Context::get($menu_id);
|
||||
if(!$menu_srl) continue;
|
||||
$menu_srl_list[] = $menu_srl;
|
||||
}
|
||||
if(Context::get('apply_layout')=='Y') {
|
||||
$menu_args = null;
|
||||
$menu_args->menu_srl = $menu_srl;
|
||||
$output = executeQueryArray('layout.getLayoutModules', $menu_args);
|
||||
if($output->data) {
|
||||
$modules = array();
|
||||
for($i=0;$i<count($output->data);$i++) {
|
||||
$modules[] = $output->data[$i]->module_srl;
|
||||
}
|
||||
|
||||
// 정해진 메뉴가 있으면 모듈 및 메뉴에 대한 레이아웃 연동
|
||||
if(count($menu_srl_list) && Context::get('apply_layout')=='Y') {
|
||||
// 해당 메뉴와 레이아웃 값을 매핑
|
||||
$oMenuAdminController = &getAdminController('menu');
|
||||
$oMenuAdminController->updateMenuLayout($args->layout_srl, $menu_srl_list);
|
||||
|
||||
// 해당 메뉴에 속한 mid의 layout값을 모두 변경
|
||||
$oModuleController = &getController('module');
|
||||
$oModuleController->updateModuleLayout($args->layout_srl, $menu_srl_list);
|
||||
if(count($modules)) {
|
||||
$update_args->module_srls = implode(',',$modules);
|
||||
$update_args->layout_srl = $args->layout_srl;
|
||||
$output = executeQuery('layout.updateModuleLayout', $update_args);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
13
modules/layout/queries/getLayoutModules.xml
Normal file
13
modules/layout/queries/getLayoutModules.xml
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<query id="getLayoutModules" action="select">
|
||||
<tables>
|
||||
<table name="menu_item" alais="menu_item" />
|
||||
<table name="modules" alias="modules" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="modules.module_srl" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="menu_item.menu_srl" var="menu_srl" notnull="notnull" />
|
||||
<condition operation="equal" column="menu_item.url" default="modules.mid" notnull="notnull" pipe="and" />
|
||||
</conditions>
|
||||
</query>
|
||||
11
modules/layout/queries/updateModuleLayout.xml
Normal file
11
modules/layout/queries/updateModuleLayout.xml
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<query id="updateModuleLayout" action="update">
|
||||
<tables>
|
||||
<table name="modules" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="layout_srl" var="layout_srl" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="in" column="module_srl" var="module_srls" notnull="notnull"/>
|
||||
</conditions>
|
||||
</query>
|
||||
Loading…
Add table
Add a link
Reference in a new issue