Browse Source

[FIX + ADD] fix markdown update condition on form view, add markdown support on list view

pull/251/head
Tran Quang Tri 9 years ago
parent
commit
eb3ee47a66
  1. 36
      web_widget_text_markdown/static/src/js/web_widget_text_markdown.js

36
web_widget_text_markdown/static/src/js/web_widget_text_markdown.js

@ -39,14 +39,15 @@ openerp.web_widget_text_markdown = function (oe) {
store_dom_value: function () { store_dom_value: function () {
if (!this.get('effective_readonly') && if (!this.get('effective_readonly') &&
this._get_raw_value() !== '' &&
this.is_syntax_valid()) { this.is_syntax_valid()) {
// We use internal_set_value because we were called by // We use internal_set_value because we were called by
// ``.commit_value()`` which is called by a ``.set_value()`` // ``.commit_value()`` which is called by a ``.set_value()``
// itself called because of a ``onchange`` event // itself called because of a ``onchange`` event
this.internal_set_value( this.internal_set_value(
this.parse_value( this.parse_value(
this._get_raw_value()));
this._get_raw_value()
)
);
} }
}, },
@ -86,4 +87,35 @@ openerp.web_widget_text_markdown = function (oe) {
} }
} }
); );
/**
* bootstrap_markdown support on list view
**/
oe.web_widget_text_markdown.FieldTextMarkDownList = oe.web.list.Char.extend({
init: function(){
this._super.apply(this, arguments);
hljs.initHighlightingOnLoad();
marked.setOptions({
sanitize: true,
highlight: function (code) {
return hljs.highlightAuto(code).value;
}
});
},
_format: function(row_data, options){
options = options || {};
var markdown_text = marked(
oe.web.format_value(
row_data[this.id].value, this, options.value_if_empty
)
);
return markdown_text;
}
});
oe.web.list.columns.add(
"field.bootstrap_markdown", "oe.web_widget_text_markdown.FieldTextMarkDownList"
);
}; };
Loading…
Cancel
Save