From bd0ae1daefb3bf0e7bf41e29544f710aa70bb0b5 Mon Sep 17 00:00:00 2001 From: zero Date: Wed, 9 Jan 2008 05:17:06 +0000 Subject: [PATCH] =?UTF-8?q?#274=20=EC=9C=84=EC=A0=AF=EC=97=90=EC=84=9C?= =?UTF-8?q?=EB=8F=84=20=EC=95=A0=EB=93=9C=EC=98=A8/=EB=AA=A8=EB=93=88?= =?UTF-8?q?=EC=9D=98=20=EC=84=A4=EC=A0=95=EC=97=90=EC=84=9C=20=EC=93=B0?= =?UTF-8?q?=EC=9D=B4=EB=8A=94=20=ED=83=9C=EA=B7=B8=EB=AA=85=EC=9C=BC?= =?UTF-8?q?=EB=A1=9C=20=EC=93=B8=EC=88=98=20=EC=9E=88=EB=8F=84=EB=A1=9D=20?= =?UTF-8?q?=ED=95=98=EC=98=80=EC=8A=B5=EB=8B=88=EB=8B=A4.=20=EB=8B=A4?= =?UTF-8?q?=EB=A7=8C=20=EA=B8=B0=EC=A1=B4=EC=97=90=20=EC=A0=9C=EC=9E=91?= =?UTF-8?q?=EB=90=9C=20=EA=B2=83=EB=93=A4=EC=9D=84=20=EC=9C=84=ED=95=B4?= =?UTF-8?q?=EC=84=9C=20id=20vs=20name=20attribute,=20name=20vs=20title=20t?= =?UTF-8?q?agname=EC=9D=84=20=EA=B0=99=EC=9D=B4=20=EC=93=B8=20=EC=88=98=20?= =?UTF-8?q?=EC=9E=88=EB=8F=84=EB=A1=9D=20=ED=95=98=EC=98=80=EC=8A=B5?= =?UTF-8?q?=EB=8B=88=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://xe-core.googlecode.com/svn/sandbox@3513 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- modules/widget/widget.model.php | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/modules/widget/widget.model.php b/modules/widget/widget.model.php index 088730746..951dc9492 100644 --- a/modules/widget/widget.model.php +++ b/modules/widget/widget.model.php @@ -94,7 +94,8 @@ // 추가 변수 (템플릿에서 사용할 제작자 정의 변수) if(!is_array($xml_obj->extra_vars->var)) $extra_vars[] = $xml_obj->extra_vars->var; else $extra_vars = $xml_obj->extra_vars->var; - if($extra_vars[0]->attrs->id) { + + if($extra_vars[0]->attrs->id || $extra_vars[0]->attrs->name) { $extra_var_count = count($extra_vars); $buff .= sprintf('$widget_info->extra_var_count = "%s";', $extra_var_count); @@ -103,10 +104,14 @@ unset($options); $var = $extra_vars[$i]; - $buff .= sprintf('$widget_info->extra_var->%s->name = "%s";', $var->attrs->id, $var->name->body); - $buff .= sprintf('$widget_info->extra_var->%s->type = "%s";', $var->attrs->id, $var->type->body); - $buff .= sprintf('$widget_info->extra_var->%s->value = $vars->%s;', $var->attrs->id, $var->attrs->id); - $buff .= sprintf('$widget_info->extra_var->%s->description = "%s";', $var->attrs->id, str_replace('"','\"',$var->description->body)); + $id = $var->attrs->id?$var->attrs->id:$var->attrs->name; + $name = $var->name->body?$var->name->body:$var->title->body; + $type = $var->attrs->type?$var->attrs->type:$var->type->body; + + $buff .= sprintf('$widget_info->extra_var->%s->name = "%s";', $id, $name); + $buff .= sprintf('$widget_info->extra_var->%s->type = "%s";', $id, $type); + $buff .= sprintf('$widget_info->extra_var->%s->value = $vars->%s;', $id, $id); + $buff .= sprintf('$widget_info->extra_var->%s->description = "%s";', $id, str_replace('"','\"',$var->description->body)); $options = $var->options; if(!$options) continue; @@ -114,7 +119,7 @@ if(!is_array($options)) $options = array($options); $options_count = count($options); for($j=0;$j<$options_count;$j++) { - $buff .= sprintf('$widget_info->extra_var->%s->options["%s"] = "%s";', $var->attrs->id, $options[$j]->value->body, $options[$j]->name->body); + $buff .= sprintf('$widget_info->extra_var->%s->options["%s"] = "%s";', $id, $options[$j]->value->body, $options[$j]->name->body); } }