> Please add one or two lines of documentation for this function. 

Documentation is here [abstract_editor.js](https://github.com/edx/edx-platform/blob/c163ef824d12a4b60430ac88721824e8e5ee7672/cms/static/js/views/abstract_editor.js)

> Why is it necessary to override AbstractEditor.prototype.render

I extend behavior of string editor to add disabled state.

>  In what cases this.model.get('non_editable') returns true?

When it comes from backend. See [video_module.py](https://github.com/edx/edx-platform/blob/c163ef824d12a4b60430ac88721824e8e5ee7672/common/lib/xmodule/xmodule/video_module.py#L480)