merge from 1.5.3.2 (~r11225)

git-svn-id: http://xe-core.googlecode.com/svn/trunk@11226 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
flyskyko 2012-09-13 06:14:45 +00:00
parent 54e3a72065
commit 77f5aa2671
313 changed files with 8058 additions and 14251 deletions

View file

@ -142,6 +142,11 @@
$addon_info->mid_list = array();
}
if($extra_vals->xe_run_method)
{
$addon_info->xe_run_method = $extra_vals->xe_run_method;
}
// Add information
if($xml_obj->version && $xml_obj->attrs->version == '0.2') {
@ -187,7 +192,10 @@
$obj->title = $val->title->body;
$obj->type = $val->attrs->type;
$obj->description = $val->description->body;
$obj->value = $extra_vals->{$obj->name};
if($obj->name)
{
$obj->value = $extra_vals->{$obj->name};
}
if(strpos($obj->value, '|@|') != false) { $obj->value = explode('|@|', $obj->value); }
if($obj->type == 'mid_list' && !is_array($obj->value)) { $obj->value = array($obj->value); }
@ -280,7 +288,10 @@
$obj->title = $val->title->body;
$obj->type = $val->type->body ? $val->type->body : 'text';
$obj->description = $val->description->body;
$obj->value = $extra_vals->{$obj->name};
if($obj->name)
{
$obj->value = $extra_vals->{$obj->name};
}
if(strpos($obj->value, '|@|') != false) { $obj->value = explode('|@|', $obj->value); }
if($obj->type == 'mid_list' && !is_array($obj->value)) { $obj->value = array($obj->value); }
// 'Select'type obtained from the option list.

View file

@ -163,14 +163,33 @@
$extra_vars = unserialize($val->extra_vars);
$mid_list = $extra_vars->mid_list;
if(!is_array($mid_list)||!count($mid_list)) $mid_list = null;
$mid_list = base64_encode(serialize($mid_list));
$buff .= '$rm = \'' . $extra_vars->xe_run_method . "';";
$buff .= '$ml = array(';
if($mid_list)
{
foreach($mid_list as $mid)
{
$buff .= "'$mid' => 1,";
}
}
$buff .= ');';
$buff .= sprintf('$addon_file = \'./addons/%s/%s.addon.php\';', $addon, $addon);
if($val->extra_vars) {
unset($extra_vars);
$extra_vars = base64_encode($val->extra_vars);
}
$addon_include = sprintf('unset($addon_info); $addon_info = unserialize(base64_decode(\'%s\')); @include($addon_file);', $extra_vars);
$buff .= sprintf(' $_ml = unserialize(base64_decode("%s")); $addon_path = "%saddons/%s/"; $addon_file = "%s.addon.php"; if(file_exists($addon_path.$addon_file) && (!is_array($_ml) || in_array($_m, $_ml))) { unset($addon_info); $addon_info = unserialize(base64_decode("%s")); @include($addon_path.$addon_file); }', $mid_list, './', $addon, $addon, $extra_vars);
$buff .= 'if(file_exists($addon_file)){';
$buff .= 'if($rm === \'no_run_selected\'){';
$buff .= 'if(!isset($ml[$_m])){';
$buff .= $addon_include;
$buff .= '}}else{';
$buff .= 'if(isset($ml[$_m]) || count($ml) === 0){';
$buff .= $addon_include;
$buff .= '}}}';
}
$buff = sprintf('<?php if(!defined("__XE__")) exit(); $_m = Context::get(\'mid\'); %s ?>', $buff);

View file

@ -115,4 +115,13 @@
<value xml:lang="zh-CN"><![CDATA[此插件不存在设置。]]></value>
<value xml:lang="zh-TW"><![CDATA[此附加元件的設定不存在。]]></value>
</item>
<item name="run_method">
<value xml:lang="ko"><![CDATA[작동 방식]]></value>
</item>
<item name="run_selected_module">
<value xml:lang="ko"><![CDATA[선택한 모듈에서 사용]]></value>
</item>
<item name="no_run_selected_module">
<value xml:lang="ko"><![CDATA[선택한 모듈에서 사용안함]]></value>
</item>
</lang>

View file

@ -49,6 +49,13 @@
<block cond="$mid_list">
<h3 class="h3">{$lang->module}</h3>
<p>{$lang->about_addon_mid}</p>
<p class="q">{$lang->run_method}</p>
<p class="a">
<select name="xe_run_method">
<option value="run_selected" selected="selected"|cond="$addon_info->xe_run_method === 'run_selected'">{$lang->run_selected_module}</option>
<option value="no_run_selected" selected="selected"|cond="$addon_info->xe_run_method === 'no_run_selected'">{$lang->no_run_selected_module}</option>
</select>
</p>
<p><input type="checkbox" id="check_all" /> <label for="check_all">Check all</label></p>
<fieldset loop="$mid_list => $module_category_srl, $modules" style="border: 1px solid #ccc; margin:1em 0; padding:.5em 1em">
<legend cond="$modules->title">{$modules->title}</legend>