mirror of
https://github.com/frappe/lms.git
synced 2026-04-25 18:09:40 +03:00
f1508033a3
Now the changes made to the code in each section will be autosaved and loaded back on next page load.
67 lines
1.7 KiB
HTML
67 lines
1.7 KiB
HTML
|
|
{% macro LiveCodeEditorLarge(name, code) %}
|
|
<div class="livecode-editor livecode-editor-large row no-gutters" id="editor-{{name}}">
|
|
<div class="col-sm">
|
|
<div class="heading">
|
|
<button class="run">Run</button>
|
|
<h2>Editor</h2>
|
|
</div>
|
|
<textarea class="code">{{code}}</textarea>
|
|
</div>
|
|
<div class="col-sm">
|
|
<div class="heading">
|
|
<h2>Output</h2>
|
|
</div>
|
|
<div class="canvas-wrapper">
|
|
<canvas class="canvas" width="300" height="300"></canvas>
|
|
<pre class="output"></pre>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endmacro %}
|
|
|
|
{% macro LiveCodeEditor(name, code) %}
|
|
<div class="livecode-editor canvas-editor" id="editor-{{name}}"
|
|
data-section="{{name}}">
|
|
<div class="row">
|
|
<div class="col-md-9">
|
|
<div>
|
|
<textarea class="code">{{code}}</textarea>
|
|
<div class="livecode-controls">
|
|
<button type="button" class="run">Run</button>
|
|
<a href="javascript:;" class="reset">Reset</a>
|
|
<a href="javascript:;" class="clear">Clear</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-3">
|
|
<div class="canvas-wrapper">
|
|
<canvas class="canvas" width="150" height="150"></canvas>
|
|
<pre class="output"></pre>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{% endmacro %}
|
|
|
|
|
|
|
|
{% macro LiveCodeEditorJS(name, code) %}
|
|
<script type="text/javascript" src="{{ livecode_url }}/static/livecode.js"></script>
|
|
<script type="text/javascript">
|
|
var livecodeEditors = [];
|
|
|
|
$(function() {
|
|
$(".livecode-editor").each((i, e) => {
|
|
var editor = new LiveCodeEditor(e, {
|
|
runtime: "python-canvas",
|
|
base_url: "{{ livecode_url }}",
|
|
codemirror: true
|
|
})
|
|
livecodeEditors.push(editor);
|
|
})
|
|
})
|
|
</script>
|
|
{% endmacro %}
|