public static function codeMirror($name = 'editor', $selector)
{
$asset = static::getAsset();
if (!static::inited(__METHOD__)) {
$asset->addScript('js/codemirror/lib/codemirror.js');
$asset->addScript('js/codemirror/mode/markdown/markdown.js');
$asset->addStyle('js/codemirror/lib/codemirror.css');
$asset->addStyle('js/codemirror/theme/elegant.css');
}
if (!static::inited(__METHOD__, func_get_args())) {
$js = <<<JS
jQuery(document).ready(function (\$)
{
\tCodeMirror.keyMap.default["Shift-Tab"] = "indentLess";
\twindow.codeMirror = window.codeMirror || [];
\twindow.codeMirror['{$name}'] = CodeMirror.fromTextArea(\$('{$selector}')[0], {
\t\tmode: 'markdown',
\t\ttheme: 'elegant',
\t\tlineWrapping: true,
\t\tindentUnit: 4,
\t\ttabSize: 4,
\t\tindentWithTabs: false
\t});
});
JS;
$asset->internalScript($js);
}
}