3
0
Fork 0

web_tree_dynamic_colored_field: Assume that color may not start with 'color_field'

The index at 0 in the following code:
  var colorField = this.arch.attrs.colors.split(';')
  .filter(color => color.trim().startsWith('color_field'))[0]
Was failing on such valid xml:
  <tree string="Buffer monitor"
        colors="red:procure_recommended_qty &gt; 0">
15.0-ocabot-merge-pr-2789-by-pedrobaeza-bump-patch
Guewen Baconnier 2018-03-07 08:32:06 +01:00 committed by Adam Heinz
parent 46bc1f4de0
commit 583df6899a
1 changed files with 14 additions and 13 deletions

View File

@ -12,10 +12,10 @@ odoo.define('web_tree_dynamic_colored_field', function (require) {
*/
_renderBody: function () {
if (this.arch.attrs.colors) {
var colorField = this.arch.attrs.colors.split(';')
.filter(color => color.trim().startsWith('color_field'))[0]
.split(':')[1]
.trim();
var colorAttr = this.arch.attrs.colors.split(';')
.filter(color => color.trim().startsWith('color_field'));
if (colorAttr.length > 0) {
var colorField = colorAttr[0].split(':')[1].trim();
// validate the presence of that field in tree view
var fieldNames = _(this.columns).map(
(value) => { return value.attrs.name; }
@ -28,6 +28,7 @@ odoo.define('web_tree_dynamic_colored_field', function (require) {
this.colorField = colorField;
}
}
}
return this._super();
},
/**