fixed admin theme

git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@9089 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
devjin 2011-09-07 10:56:36 +00:00
parent 34cd3544ba
commit bd67a0846e
3 changed files with 34 additions and 16 deletions

View file

@ -195,10 +195,8 @@
$theme_info->publisher[] = $publisher_obj; $theme_info->publisher[] = $publisher_obj;
} }
$skin_infos = $xml_obj->skininfos; $layout = $xml_obj->layout;
if(is_array($skin_infos->layoutinfo))$layout_path = $skin_infos->layoutinfo[0]->directory->attrs->path; $layout_path = $layout->directory->attrs->path;
else $layout_path = $skin_infos->layoutinfo->directory->attrs->path;
$layout_parse = explode('/',$layout_path); $layout_parse = explode('/',$layout_path);
switch($layout_parse[1]){ switch($layout_parse[1]){
case 'themes' : { case 'themes' : {
@ -211,7 +209,6 @@
} }
} }
$layout_info->path = $layout_path; $layout_info->path = $layout_path;
$theme_info->layout_info = $layout_info;
$site_info = Context::get('site_module_info'); $site_info = Context::get('site_module_info');
// check layout instance // check layout instance
@ -223,6 +220,7 @@
foreach($layout_list as $val){ foreach($layout_list as $val){
if ($val->layout == $layout_info->name){ if ($val->layout == $layout_info->name){
$is_new_layout = false; $is_new_layout = false;
$layout_info->layout_srl = $val->layout_srl;
break; break;
} }
} }
@ -238,8 +236,12 @@
// Insert into the DB // Insert into the DB
$oLayoutAdminController = &getAdminController('layout'); $oLayoutAdminController = &getAdminController('layout');
$output = $oLayoutAdminController->insertLayout($args); $output = $oLayoutAdminController->insertLayout($args);
$layout_info->layout_srl = $args->layout_srl;
} }
$theme_info->layout_info = $layout_info;
$skin_infos = $xml_obj->skininfos;
if(is_array($skin_infos->skininfo))$skin_list = $skin_infos->skininfo; if(is_array($skin_infos->skininfo))$skin_list = $skin_infos->skininfo;
else $skin_list = array($skin_infos->skininfo); else $skin_list = array($skin_infos->skininfo);
@ -285,13 +287,19 @@
$searched_count = count($searched_list); $searched_count = count($searched_list);
if(!$searched_count) return; if(!$searched_count) return;
$exceptionModule = array('editor', 'poll', 'homepage', 'textyle');
$oModuleModel = &getModel('module'); $oModuleModel = &getModel('module');
foreach($searched_list as $val) { foreach($searched_list as $val) {
$skin_list = $oModuleModel->getSkins('./modules/'.$val); $skin_list = $oModuleModel->getSkins('./modules/'.$val);
if (is_array($skin_list) && count($skin_list) > 0){ if (is_array($skin_list) && count($skin_list) > 0 && !in_array($val, $exceptionModule)){
if(!$GLOBALS['__ThemeModuleSkin__'][$val]) $GLOBALS['__ThemeModuleSkin__'][$val] = array(); if(!$GLOBALS['__ThemeModuleSkin__'][$val]){
$GLOBALS['__ThemeModuleSkin__'][$val] = array_merge($GLOBALS['__ThemeModuleSkin__'][$val], $skin_list); $moduleInfo = $oModuleModel->getModuleInfoXml($val);
$GLOBALS['__ThemeModuleSkin__'][$val]['title'] = $moduleInfo->title;
$GLOBALS['__ThemeModuleSkin__'][$val]['skins'] = array();
}
$GLOBALS['__ThemeModuleSkin__'][$val]['skins'] = array_merge($GLOBALS['__ThemeModuleSkin__'][$val]['skins'], $skin_list);
} }
} }
$GLOBALS['__ThemeModuleSkin__']['__IS_PARSE__'] = true; $GLOBALS['__ThemeModuleSkin__']['__IS_PARSE__'] = true;

View file

@ -563,7 +563,7 @@ $.fn.xeSortableTable = function(){
// get offsets of all list-item elements // get offsets of all list-item elements
offsets = []; offsets = [];
$table.find('tbody>tr:not([target])').each(function() { $table.find('tbody>tr:not([target],.sticky)').each(function() {
var $this = $(this), o; var $this = $(this), o;
o = getOffset(this, $table.get(0)); o = getOffset(this, $table.get(0));

View file

@ -5,13 +5,18 @@ jQuery(function($){
var themes = {}; var themes = {};
<!--@foreach($theme_list as $key=>$val)-->
// Example - default theme // Example - default theme
themes['xe_default'] = { {@$skins = array()}
'layout': '82', <!--@foreach($val->skin_infos as $module=>$skin_info)-->
'board' : 'xe_v3', // board module has the xe_v3 skin by default {@$skins[] = "'".$module."' : '".$skin_info->name."'";}
'poll' : 'simple' // poll module has the simple skin by default <!--@end-->
themes['{$key}'] = {
'layout': '{$val->layout_info->layout_srl}',
{implode(',',$skins)}
}; };
<!--@end-->
$('#theme').data('themes', themes); $('#theme').data('themes', themes);
}); });
@ -35,7 +40,12 @@ $('#theme').data('themes', themes);
<label for="{$key}">{$val->title}({$key})</label> <label for="{$key}">{$val->title}({$key})</label>
<ul> <ul>
<li>&middot; 버전: {$val->version}</li> <li>&middot; 버전: {$val->version}</li>
<li>&middot; 제작: {$val->publisher}</li> <li>&middot; 제작:
<!--@foreach($val->publisher as $publisher)-->
<a href="{$publisher->homepage}" cond="$publisher->homepage">{$publisher->name}</a>
<!--@if(!$publisher->homepage)-->{$publisher->name}<!--@end-->
<!--@endforeach-->
</li>
<li>&middot; 설명: {$val->description}</li> <li>&middot; 설명: {$val->description}</li>
<li>&middot; 경로: {$val->path}</li> <li>&middot; 경로: {$val->path}</li>
</ul> </ul>
@ -79,7 +89,7 @@ $('#theme').data('themes', themes);
</ul> </ul>
</li> </li>
<li loop="$module_list=>$mkey,$mval" cond="$mkey!='__IS_PARSE__'" data-skintype="{$mkey}"> <li loop="$module_list=>$mkey,$mval" cond="$mkey!='__IS_PARSE__'" data-skintype="{$mkey}">
<p class="q">선택한 {$mkey} 스킨</p> <p class="q">선택한 {$mval['title']} 스킨</p>
<ul class="a"> <ul class="a">
<li class="i noDirection" cond="!$theme_info->skin_info[$mkey]"> <li class="i noDirection" cond="!$theme_info->skin_info[$mkey]">
<span class="thumb"><span class="frame"></span></span> <span class="thumb"><span class="frame"></span></span>
@ -88,7 +98,7 @@ $('#theme').data('themes', themes);
<li>선택한 테마에는 이 항목에 대한 스킨 정보가 없습니다. 스킨을 직접 선택하세요.</li> <li>선택한 테마에는 이 항목에 대한 스킨 정보가 없습니다. 스킨을 직접 선택하세요.</li>
</ul> </ul>
</li> </li>
<li class="i" loop="$mval=>$skey,$sval"> <li class="i" loop="$mval['skins']=>$skey,$sval">
{@ $id = $mkey.'_'.$skey } {@ $id = $mkey.'_'.$skey }
<span class="thumb"><span class="frame"><!--@if($sval->thumbnail)--><img src="{$sval->thumbnail}" alt="" /><!--@else-->Thumbnail does not exist<!--@end--></span></span> <span class="thumb"><span class="frame"><!--@if($sval->thumbnail)--><img src="{$sval->thumbnail}" alt="" /><!--@else-->Thumbnail does not exist<!--@end--></span></span>
<input type="radio" name="{$mkey}-skin" id="{$id}" value="{$skey}" checked="checked"|cond="$theme_info->skin_info[$mkey]==$skey" /> <input type="radio" name="{$mkey}-skin" id="{$id}" value="{$skey}" checked="checked"|cond="$theme_info->skin_info[$mkey]==$skey" />