1
0
mirror of https://github.com/e107inc/e107.git synced 2025-03-18 19:39:45 +01:00

Merge pull request #2368 from lonalore/master

Possible fix for issue #2351
This commit is contained in:
Cameron 2017-02-02 12:03:44 -08:00 committed by GitHub
commit b190c2bd2b
2 changed files with 37 additions and 9 deletions

View File

@ -3871,8 +3871,8 @@ class e_form
$jsonArray[$k] = str_replace("'", "`", $v);
}
}
$source = str_replace('"',"'",json_encode($jsonArray, JSON_FORCE_OBJECT)); // SecretR - force object, fix number of bugs
$source = e107::getParser()->toJSON($jsonArray);
$mode = preg_replace('/[^\w]/', '', vartrue($_GET['mode'], ''));
@ -3892,7 +3892,7 @@ class e_form
unset( $options['title']);
$text = "<a class='e-tip e-editable editable-click ".$class."' data-name='".$dbField."' ";
$text .= (is_array($array)) ? "data-source=\"".$source."\" " : "";
$text .= (is_array($array)) ? "data-source='".$source."' " : "";
$text .= " title=\"".$title."\" data-type='".$type."' data-inputclass='x-editable-".$this->name2id($dbField)." ".$class."' data-value=\"{$curVal}\" href='#' ";
if(!empty($options))

View File

@ -173,12 +173,40 @@ $(document).ready(function()
$("#uiModal").draggable({
handle: ".modal-header"
});
$('div.e-container').editable({
selector: '.e-editable'
});
});
$('div.e-container').editable({
selector: '.e-editable',
display: function (value, sourceData)
{
// HTML entities decoding... fix for:
// @see https://github.com/e107inc/e107/issues/2351
$.each(sourceData, function (index, element)
{
element.text = $("<div/>").html(element.text).text();
sourceData[index] = element;
});
// Display checklist as comma-separated values.
var html = [];
var checked = $.fn.editableutils.itemsByValue(value, sourceData);
if(checked.length)
{
$.each(checked, function (i, v)
{
html.push($.fn.editableutils.escape(v.text));
});
$(this).html(html.join(', '));
}
else
{
$(this).empty();
}
}
});
// $('.e-editable').editable();