issue 2599 write design_0.php when install xe site.

git-svn-id: http://xe-core.googlecode.com/svn/branches/maserati@11790 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
devjin 2012-10-18 14:27:11 +00:00
parent 170c5c057a
commit fef43c6edf

View file

@ -56,11 +56,59 @@
$output = $oLayoutAdminController->insertLayout($args);
if(!$output->toBool()) return $output;
// update Layout
// update Layout
$args->extra_vars = serialize($extra_vars);
$output = $oLayoutAdminController->updateLayout($args);
if(!$output->toBool()) return $output;
$siteDesignPath = _XE_PATH_.'files/site_design/';
FileHandler::makeDir($siteDesignPath);
$siteDesignFile = _XE_PATH_.'files/site_design/design_0.php';
$buff = sprintf('$designInfo->layout_srl = %s;', $layout_srl);
// after trigger
$moduleList = array('page');
$moutput = ModuleHandler::triggerCall('menu.getModuleListInSitemap', 'after', $moduleList);
if($moutput->toBool())
{
$moduleList = array_unique($moduleList);
}
$skinTypes = array('skin'=>'skins/', 'mskin'=>'m.skins/');
foreach($skinTypes as $key => $dir)
{
foreach($moduleList as $moduleName)
{
$moduleSkinPath = ModuleHandler::getModulePath($moduleName).$dir;
$skinName = 'default';
$defualtSkinPath = $moduleSkinPath.$skinName;
if(!is_dir($defualtSkinPath))
{
$skins = FileHandler::readDir($moduleSkinPath);
if(count($skins) > 0)
{
$skinName = $skins[0];
}
else
{
$skinName = NULL;
}
}
if($skinName)
{
$buff .= sprintf('$designInfo->module->%s->%s = \'%s\';', $moduleName, $key, $skinName);
}
}
}
$buff = sprintf('<?php if(!defined("__ZBXE__")) exit(); if(!defined("__XE__")) exit(); %s ?>', $buff);
FileHandler::writeFile($siteDesignFile, $buff);
// insertPageModule
$page_args->layout_srl = $layout_srl;
$page_args->menu_srl = $menu_srl;