Difference between revisions of "Widget:CodeExplorer"
From Coder Merlin
(One intermediate revision by the same user not shown) | |||
Line 35: | Line 35: | ||
</noinclude> | </noinclude> | ||
<includeonly> | <includeonly><form action="" id="codeEditorForm<!--{$exerciseID|validate:int}-->"> | ||
<form action="" id="codeEditorForm<!--{$exerciseID|validate:int}-->"> | |||
<div class="merlin-code-explorer-container"> | <div class="merlin-code-explorer-container"> | ||
<div class="merlin-code-explorer-banner"> | <div class="merlin-code-explorer-banner"> | ||
Line 117: | Line 116: | ||
let username = "<!--{$userName}-->".toLowerCase(); | let username = "<!--{$userName}-->".toLowerCase(); | ||
let sessionID = "<!--{$sessionID}-->" | let sessionID = "<!--{$sessionID}-->" | ||
let url = ( | let url = languageServerURL(); | ||
url += "codeExplorerGroups/" + "<!--{$codeExplorerGroupID|strip}-->/"; | url += "codeExplorerGroups/" + "<!--{$codeExplorerGroupID|strip}-->/"; | ||
url += "experiences/" + "<!--{$experienceID}-->/" + "exercises/" + "<!--{$exerciseID}-->" + "/broadcast"; | url += "experiences/" + "<!--{$experienceID}-->/" + "exercises/" + "<!--{$exerciseID}-->" + "/broadcast"; |
Latest revision as of 08:06, 9 March 2023
Parameters:
- userName
- string: The current user's username
- sessionID
- string: The ID of the current user's session
- experienceID
- string: The experienceID of the page from which the widget is invoked
- codeExplorerGroupID
- string: The code explorer group. If empty, the submit button will be disabled.
- exerciseID
- integer: exercise id for editor, must be unique per page
- width
- integer|string: percentage (as string, e.g. "100%" or integer size in pixels), null for no change (full width)
- height
- integer|string: percentage (as string, e.g. "100%" or integer size in pixels), null for no change (~10 lines)
- lineNumbers
- boolean: true to display line numbers
- theme
- string: name of theme (which must be loaded via css)
- readOnly
- boolean: true if editing should be disabled
- language
- string: language for compiling and highlighting (which must be loaded via js)
- initialCode
- string: initial code to place in editor
Example:
{{#widget:CodeExplorer |userName=john-williams |sessionID=qh0ubrrme911kcg7db0i0ec6lct94h7f |experienceID=W1020.23 |codeExplorerGroupID=WTRS-8527 |exerciseID=10 |width=null |height=null |lineNumbers=true |theme=vibrant-ink |readOnly=false |language=swift |initialCode=func sayHello() { print("Hello, World!") } }}