Merge branch '2.0'
[GitHub/WoltLab/WCF.git] / wcfsetup / install / files / acp / templates / codemirror.tpl
CommitLineData
77b7b761 1{if !$codemirrorLoaded|isset}
9543d9fe
AE
2 <script data-relocate="true" src="{@$__wcf->getPath()}js/3rdParty/codemirror/codemirror.js"></script>
3 <script data-relocate="true" src="{@$__wcf->getPath()}js/3rdParty/codemirror/addon/dialog/dialog.js"></script>
4 <script data-relocate="true" src="{@$__wcf->getPath()}js/3rdParty/codemirror/addon/search/searchcursor.js"></script>
5 <script data-relocate="true" src="{@$__wcf->getPath()}js/3rdParty/codemirror/addon/search/search.js"></script>
77b7b761 6{/if}
837afb80 7{if $codemirrorMode|isset}<script data-relocate="true" src="{@$__wcf->getPath()}js/3rdParty/codemirror/mode/{if $codemirrorMode == 'text/x-less'}css/css{else}{$codemirrorMode}/{$codemirrorMode}{/if}.js"></script>{/if}
77b7b761
TD
8{event name='javascriptIncludes'}
9
9543d9fe 10<script data-relocate="true">
77b7b761 11//<![CDATA[
11666f41 12 {if !$codemirrorLoaded|isset}
8d1cbbc2
TD
13 $('<link rel="stylesheet" href="{@$__wcf->getPath()}js/3rdParty/codemirror/codemirror.css" />').appendTo('head');
14 $('<link rel="stylesheet" href="{@$__wcf->getPath()}js/3rdParty/codemirror/addon/dialog/dialog.css" />').appendTo('head');
11666f41 15 {/if}
77b7b761
TD
16
17 $(function() {
8d1cbbc2 18 var $elements = $('{@$codemirrorSelector|encodeJS}');
77b7b761 19 var $config = {
8d1cbbc2 20 {if $codemirrorMode|isset}mode: '{@$codemirrorMode|encodeJS}',{/if}
77b7b761
TD
21 lineWrapping: true,
22 indentWithTabs: true,
23 lineNumbers: true,
24 indentUnit: 4
25 };
26
27 for (var $i = 0; $i < $elements.length; $i++) {
28 (function () {
29 var $element = $elements[$i];
30
31 {event name='javascriptInit'}
32
33 if ($element.codemirror) {
34 for (var name in $config) {
35 if (!$config.hasOwnProperty($name)) continue;
36
37 $element.codemirror.setOption($name, $config[$name]);
38 }
39 }
40 else {
41 $element.codemirror = CodeMirror.fromTextArea($element, $config);
42 var oldToTextArea = $element.codemirror.toTextArea;
43 $element.codemirror.toTextArea = function() {
44 oldToTextArea();
45 $element.codemirror = null;
46 };
47 }
48
49 setTimeout(function () {
50 $element.codemirror.refresh();
cd8fec2c 51 }, 250);
f1b14945
TD
52 setTimeout(function () {
53 $element.codemirror.refresh();
54 }, 1000);
77b7b761
TD
55 })();
56 }
57 });
58//]]>
59</script>
11666f41 60{assign var='codemirrorLoaded' value=true}