{:uriI"file:///home/franco/Documents/mumuki/laboratory/app/assets/javascripts/application/codemirror.js?type=application/javascript&pipeline=self&id=3e6746284541b2759c3ccd20a27d7aa65907dff895161eb7a2a687205833ac8c:ET:load_pathI"D/home/franco/Documents/mumuki/laboratory/app/assets/javascripts;T: filenameI"^/home/franco/Documents/mumuki/laboratory/app/assets/javascripts/application/codemirror.js;T: nameI"application/codemirror;T:logical_pathI"#application/codemirror.self.js;T:content_typeI"application/javascript;T: sourceI"var mumuki = mumuki || {}; (function (mumuki) { function createCodeMirrors() { return $(".editor").map(function (index, textarea) { var $textarea = $("#solution_content"); return new mumuki.editor.CodeMirrorBuilder(textarea) .setupEditor() .setupMinLines($textarea.data('lines')) .setupLanguage() .build(); }); } function onSelectUpdateCodeMirror() { $("#exercise_language_id").change(updateCodeMirrorLanguage); } function resetEditor() { mumuki.page.dynamicEditors.forEach(function (e) { setDefaultContent(e, $('#default_content').val()); }) } function toggleFullscreen() { $('body').toggleClass('fullscreen'); $('.editor-resize .fa-stack-1x').toggleClass('fa-expand').toggleClass('fa-compress'); } function indentWithSpaces(cm) { if (cm.somethingSelected()) { cm.indentSelection("add"); } else { cm.execCommand("insertSoftTab"); } } function setDefaultContent(editor, content) { editor.getDoc().setValue(content); } function updateCodeMirrorLanguage() { var language = $("#exercise_language_id").find(":selected").html() || $('#exercise_language').val(); if (language !== undefined) { mumuki.page.dynamicEditors.forEach(function (e) { setEditorLanguage(e, language); }) } } function setEditorLanguage(editor, language) { editor.setOption("mode", language); editor.setOption('theme', 'default ' + language); } function syncContent(){ mumuki.page.editors.each(function (_, editor) { editor.save(); }); } mumuki.editor = mumuki.editor || {}; mumuki.editor.toggleFullscreen = toggleFullscreen; mumuki.editor.indentWithSpaces = indentWithSpaces; mumuki.editor.syncContent = syncContent; mumuki.page = mumuki.page || {}; mumuki.page.dynamicEditors = []; mumuki.page.editors = []; mumuki.load(function () { CodeMirror.currentLocale = mumuki.locale; mumuki.page.editors = createCodeMirrors(); updateCodeMirrorLanguage(); onSelectUpdateCodeMirror(); $('.editor-reset').click(function () { resetEditor(); }); $('.editor-resize').click(function () { toggleFullscreen(); }); }); }(mumuki)); ;T: metadata{ :dependencieso:Set: @hash} I"environment-version;TTI"environment-paths;TTI"rails-env;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"lfile-digest:///home/franco/Documents/mumuki/laboratory/app/assets/javascripts/application/codemirror.js;TTF: requiredo;;}F: stubbedo;;}F: linkso;;}F: charsetI" utf-8;F: digest"%2F7lYko"ffS=xk~: lengthi:dependencies_digest"%L=tw5CC<_#rgj!>:idI"E3e6746284541b2759c3ccd20a27d7aa65907dff895161eb7a2a687205833ac8c;F: mtimel+DK[