An error occurred while fetching folder content.
Martin Trigaux
authored
The html_translate fields (e.g. website_descripton on product.product) were not serialised and the raw value from the web_editor was saved as a translation. This was an issue in case of special characters that may be present in the translation. A translation containing non-breaking space was sent in html (`foo bar`) while lxml converts such characters to unicode (`foo\xa0bar`). When writing a translation, the value is checked against incorrect format using ``` value0 = field.translate(lambda term: None, record[fname]) value1 = field.translate({trans.src: trans.value}.get, value0) value2 = field.translate({trans.value: trans.src}.get, value1) if value2 != value0: raise ValidationError(_("Translation is not valid:\n%s") % trans.value) ``` As value1 is the unicode version of the translation and `trans.value` is the html version of the translation, the last substitution in the callback method was never made and the ValidationError was raised. This commit forces the serialisation through lxml to be sure the compared strings are using the same parser instead of comparing value from summernote and lxml that may be both valid but still different. opw-675767
Name | Last commit | Last update |
---|