Fix #1976 unnecessary escape of user lang code in menu description

This commit is contained in:
Kijin Sung 2022-08-15 18:18:28 +09:00
parent 8abe1b1d7d
commit fdd3f4bc1e

View file

@ -1958,8 +1958,9 @@ class menuAdminController extends menu
$name_str = sprintf('$_names = array(%s); print $_names[$lang_type];', $name_arr_str);
$url = escape($node->url);
$icon = escape($node->icon, false);
$desc = escape($node->desc, false);
$icon = Rhymix\Framework\Filters\HTMLFilter::clean($node->icon ?? '', true);
$desc = Rhymix\Framework\Filters\HTMLFilter::clean($node->desc ?? '', true);
$desc = preg_replace('/(\$user_lang)->(userLang[0-9]+)/', '$1->$2', $desc);
if(preg_match('/^([0-9a-zA-Z\_\-]+)$/', $node->url))
{
$href = "getSiteUrl('$domain', '','mid','$node->url')";
@ -2009,7 +2010,7 @@ class menuAdminController extends menu
'node_srl="%d" parent_srl="%d" menu_name_key=%s text="<?php if(%s) { %s }?>" url="<?php print(%s?%s:"")?>" href="<?php print(%s?%s:"")?>" is_shortcut=%s icon=%s desc=%s open_window=%s expand=%s normal_btn=%s hover_btn=%s active_btn=%s link="<?php if(%s) {?>%s<?php }?>"',
$menu_item_srl,
($node->parent_srl) ? $node->parent_srl : '',
var_export(($node->name) ? $node->name : '', true),
var_export(escape($node->name ?: '', true, true), true),
$group_check_code,
$name_str,
$group_check_code,
@ -2105,6 +2106,7 @@ class menuAdminController extends menu
$url = escape($node->url ?? '', false);
$icon = Rhymix\Framework\Filters\HTMLFilter::clean($node->icon ?? '', true);
$desc = Rhymix\Framework\Filters\HTMLFilter::clean($node->desc ?? '', true);
$desc = preg_replace('/(\$user_lang)-&gt;(userLang[0-9]+)/', '$1->$2', $desc);
if(preg_match('/^([0-9a-zA-Z\_\-]+)$/i', $node->url))
{
$href = "getSiteUrl('$domain', '','mid','$node->url')";
@ -2176,7 +2178,7 @@ class menuAdminController extends menu
"link" => (%s ? (array(%s) && in_array(Context::get("mid"), array(%s)) ? %s : %s) : "")' . PHP_EOL,
$node->menu_item_srl,
$node->parent_srl,
var_export(strip_tags($node->name), true),
var_export(escape($node->name ?: '', true, true), true),
$group_check_code,
$group_check_code,
$node->menu_item_srl,