Написал новый тип пользовательского свойства для типа html / текст с редактором для раздела.
Но не происходит сохранение значений пользовательского свойства внутри GetEditFormHTML
На данный момент форма с html редактором, но для теста также пробовал использовать форму из типа число, но сохранение все равно не происходило.
Не могу понять почему.
Используется также функция GetPropertyFieldHtml для свойства инфоблока в ней отработка и сохранение значений происходит исправно.
[CODE]function GetEditFormHTML($arUserField, $arHtmlControl)
{
// if($arUserField["ENTITY_VALUE_ID"]<1 && strlen($arUserField["SETTINGS"]["DEFAULT_VALUE"])>0)
//$arHtmlControl["VALUE"] = htmlspecialcharsbx($arUserField["SETTINGS"]["DEFAULT_VALUE"]);
$strHTMLControlName["VALUE"] = htmlspecialcharsEx($arHtmlControl["VALUE"]);
// if (!is_array($value["VALUE"]))
// $value = CIBlockPropertyUserBlocks::ConvertFromDB($arProperty, $value);
$ar = $value["VALUE"];
if (strToLower($ar["TYPE"]) != "text")
$ar["TYPE"] = "html";
else
$ar["TYPE"] = "text";
ob_start();
?><table width="100%"><?
// if($arHtmlControl["MODE"]=="FORM_FILL" && COption::GetOptionString("iblock", "use_htmledit", "Y")=="Y" && Loader::includeModule("fileman")):
if(COption::GetOptionString("iblock", "use_htmledit", "Y")=="Y" && Loader::includeModule("fileman")):
?><tr>
<td colspan="2" align="center">
<input type="hidden" name="<?=$arHtmlControl["NAME"]?>" value="" />
<?
$text_name = preg_replace("/([^a-z0-9])/is", "_", $arHtmlControl["NAME"]."[TEXT]");
$text_type = preg_replace("/([^a-z0-9])/is", "_", $arHtmlControl["NAME"]."[TYPE]");
CFileMan::AddHTMLEditorFrame($text_name, htmlspecialcharsBx($ar["TEXT"]), $text_type, strToLower($ar["TYPE"]), $settings['height'], "N", 0, "", "");
?>
</td>
</tr>
<?else:?>
<tr>
<td><?echo GetMessage("IBLOCK_DESC_TYPE")?></td>
<td>
<input type="radio" name="<?=$strHTMLControlName["VALUE"]?>[TYPE]" id="<?=$strHTMLControlName["VALUE"]?>[TYPE][TEXT]" value="text" <?if($ar["TYPE"]!="html")echo " checked"?>>
<label for="<?=$strHTMLControlName["VALUE"]?>[TYPE][TEXT]"><?echo GetMessage("IBLOCK_DESC_TYPE_TEXT")?></label> /
<input type="radio" name="<?=$strHTMLControlName["VALUE"]?>[TYPE]" id="<?=$strHTMLControlName["VALUE"]?>[TYPE][HTML]" value="html"<?if($ar["TYPE"]=="html")echo " checked"?>>
<label for="<?=$strHTMLControlName["VALUE"]?>[TYPE][HTML]"><?echo GetMessage("IBLOCK_DESC_TYPE_HTML")?></label>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<textarea cols="60" rows="10" name="<?=$strHTMLControlName["VALUE"]?>[TEXT]" style="width:100%"><?=$ar["TEXT"]?></textarea></td>
</tr>
<?endif;
// if (($arProperty["WITH_DESCRIPTION"]=="Y") && ('' != trim($strHTMLControlName["DESCRIPTION"]))):?>
<tr>
<td colspan="2">
<span title="<?echo GetMessage("IBLOCK_PROP_HTML_DESCRIPTION_TITLE")?>"><?echo GetMessage("IBLOCK_PROP_HTML_DESCRIPTION_LABEL")?>:<input type="text" name="<?=$strHTMLControlName["DESCRIPTION"]?>" value="<?=$value["DESCRIPTION"]?>" size="18"></span>
</td>
</tr>
<?//endif;?>
</table>
<?
$return = ob_get_contents();
ob_end_clean();
return $return;
} [/CODE]