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

This commit is contained in:
zero 2007-04-19 06:22:10 +00:00
parent 98695f77fe
commit 870d528494
12 changed files with 123 additions and 202 deletions

View file

@ -122,46 +122,53 @@
$buff .= sprintf('$layout_info->author->description = "%s";', $xml_obj->author->description->body);
// 추가 변수 (템플릿에서 사용할 제작자 정의 변수)
if(!is_array($xml_obj->extra_vars->var)) $extra_vars[] = $xml_obj->extra_vars->var;
else $extra_vars = $xml_obj->extra_vars->var;
$extra_var_count = count($extra_vars);
$buff .= sprintf('$layout_info->extra_var_count = "%s";', $extra_var_count);
for($i=0;$i<$extra_var_count;$i++) {
unset($var);
unset($options);
$var = $extra_vars[$i];
$extra_vars = $xml_obj->extra_vars->var;
if($extra_vars) {
if(!is_array($extra_vars)) $extra_vars = array($extra_vars);
$buff .= sprintf('$layout_info->extra_var->%s->name = "%s";', $var->attrs->name, $var->name->body);
$buff .= sprintf('$layout_info->extra_var->%s->type = "%s";', $var->attrs->name, $var->type->body);
$buff .= sprintf('$layout_info->extra_var->%s->value = $vars->%s;', $var->attrs->name, $var->attrs->name);
$buff .= sprintf('$layout_info->extra_var->%s->description = "%s";', $var->attrs->name, str_replace('"','\"',$var->description->body));
$extra_var_count = count($extra_vars);
$buff .= sprintf('$layout_info->extra_var_count = "%s";', $extra_var_count);
for($i=0;$i<$extra_var_count;$i++) {
unset($var);
unset($options);
$var = $extra_vars[$i];
$name = $var->attrs->name;
$options = $var->options;
if(!$options) continue;
$buff .= sprintf('$layout_info->extra_var->%s->title = "%s";', $name, $var->title->body);
$buff .= sprintf('$layout_info->extra_var->%s->type = "%s";', $name, $var->attrs->type);
$buff .= sprintf('$layout_info->extra_var->%s->value = $vars->%s;', $name, $name);
$buff .= sprintf('$layout_info->extra_var->%s->description = "%s";', $name, str_replace('"','\"',$var->description->body));
if(!is_array($options)) $options = array($options);
$options_count = count($options);
for($j=0;$j<$options_count;$j++) {
$buff .= sprintf('$layout_info->extra_var->%s->options["%s"] = "%s";', $var->attrs->name, $options[$j]->value->body, $options[$j]->name->body);
$options = $var->options;
if(!$options) continue;
if(!is_array($options)) $options = array($options);
$options_count = count($options);
for($j=0;$j<$options_count;$j++) {
$buff .= sprintf('$layout_info->extra_var->%s->options["%s"] = "%s";', $var->attrs->name, $options[$j]->value->body, $options[$j]->title->body);
}
}
}
// 메뉴
if(!is_array($xml_obj->menus->menu)) $menus[] = $xml_obj->menus->menu;
else $menus = $xml_obj->menus->menu;
if($xml_obj->menus->menu) {
$menus = $xml_obj->menus->menu;
if(!is_array($menus)) $menus[] = $menus;
$menu_count = count($menus);
$buff .= sprintf('$layout_info->menu_count = "%s";', $menu_count);
for($i=0;$i<$menu_count;$i++) {
$id = $menus[$i]->attrs->id;
if($menus[$i]->attrs->default == "true") $buff .= sprintf('$layout_info->default_menu = "%s";', $id);
$buff .= sprintf('$layout_info->menu->%s->id = "%s";',$id, $menus[$i]->attrs->id);
$buff .= sprintf('$layout_info->menu->%s->name = "%s";',$id, $menus[$i]->name->body);
$buff .= sprintf('$layout_info->menu->%s->maxdepth = "%s";',$id, $menus[$i]->maxdepth->body);
$menu_count = count($menus);
$buff .= sprintf('$layout_info->menu_count = "%s";', $menu_count);
for($i=0;$i<$menu_count;$i++) {
$name = $menus[$i]->attrs->name;
if($menus[$i]->attrs->default == "true") $buff .= sprintf('$layout_info->default_menu = "%s";', $name);
$buff .= sprintf('$layout_info->menu->%s->name = "%s";',$name, $menus[$i]->attrs->name);
$buff .= sprintf('$layout_info->menu->%s->title = "%s";',$name, $menus[$i]->title->body);
$buff .= sprintf('$layout_info->menu->%s->maxdepth = "%s";',$name, $menus[$i]->maxdepth->body);
$buff .= sprintf('$layout_info->menu->%s->menu_srl = $vars->%s;', $id, $id);
$buff .= sprintf('$layout_info->menu->%s->xml_file = "./files/cache/menu/".$vars->%s.".xml.php";',$id, $id);
$buff .= sprintf('$layout_info->menu->%s->php_file = "./files/cache/menu/".$vars->%s.".php";',$id, $id);
$buff .= sprintf('$layout_info->menu->%s->menu_srl = $vars->%s;', $name, $name);
$buff .= sprintf('$layout_info->menu->%s->xml_file = "./files/cache/menu/".$vars->%s.".xml.php";',$name, $name);
$buff .= sprintf('$layout_info->menu->%s->php_file = "./files/cache/menu/".$vars->%s.".php";',$name, $name);
}
}
$buff = '<?php if(!defined("__ZBXE__")) exit(); '.$buff.' ?>';

View file

@ -40,18 +40,18 @@
<tr>
<td>{$lang->about_title}</td>
</tr>
<!--@foreach($layout_info->extra_var as $id => $var)-->
<!--@foreach($layout_info->extra_var as $name => $var)-->
<tr>
<th rowspan="2">{$var->name}</th>
<th rowspan="2">{$var->title}</th>
<!--@if($var->type == "text")-->
<td><input type="text" name="{$id}" value="{htmlspecialchars($var->value)}" /></td>
<td><input type="text" name="{$name}" value="{htmlspecialchars($var->value)}" /></td>
<!--@elseif($var->type == "textarea")-->
<td><textarea name="{$id}">{htmlspecialchars($var->value)}</textarea></td>
<td><textarea name="{$name}">{htmlspecialchars($var->value)}</textarea></td>
<!--@elseif($var->type == "select")-->
<td>
<select name="{$id}">
<select name="{$name}">
<!--@foreach($var->options as $key => $val)-->
<option value="{$key}" <!--@if($key==$var->value)-->selected="true"<!--@end-->>{$val}</option>
<!--@end-->
@ -63,17 +63,17 @@
<td>{$var->description}</td>
</tr>
<!--@end-->
<!--@foreach($layout_info->menu as $menu_id => $menu_info)-->
<!--@foreach($layout_info->menu as $menu_name => $menu_info)-->
<tr>
<th>{$menu_info->name} ({$menu_id})</th>
<th>{$menu_info->name} ({$menu_name})</th>
<td>
<select name="{$menu_id}">
<select name="{$menu_name}">
<option value="0">------------------------</option>
<!--@foreach($menu_list as $key => $val)-->
<option value="{$val->menu_srl}" <!--@if($val->menu_srl == $menu_info->menu_srl)-->selected="true"<!--@end-->>{$val->title}</option>
<!--@end-->
</select>
<input type="button" value="{$lang->cmd_management}" onclick="doMenuManagement('{$menu_id}');return false;"/>
<input type="button" value="{$lang->cmd_management}" onclick="doMenuManagement('{$menu_name}');return false;"/>
</td>
</tr>
<!--@end-->