88"use strict" ;
99
1010import RunestoneBase from "../../common/js/runestonebase.js" ;
11- import AudioTour from "./audiotour" ;
12- import "./activecode-i18n.en" ;
13- import "./activecode-i18n.pt-br" ;
11+ import AudioTour from "./audiotour.js" ;
12+ import "./activecode-i18n.en.js" ;
13+ import "./activecode-i18n.pt-br.js" ;
14+ import "./activecode-i18n.sr-Cyrl.js" ;
1415import CodeMirror from "codemirror" ;
1516import "codemirror/mode/python/python.js" ;
1617import "codemirror/mode/css/css.js" ;
@@ -20,7 +21,6 @@ import "codemirror/mode/javascript/javascript.js";
2021import "codemirror/mode/sql/sql.js" ;
2122import "codemirror/mode/clike/clike.js" ;
2223import "codemirror/mode/octave/octave.js" ;
23- import "./activecode-i18n.en.js" ;
2424import "./../css/activecode.css" ;
2525import "codemirror/lib/codemirror.css" ;
2626
@@ -43,6 +43,7 @@ export class ActiveCode extends RunestoneBase {
4343 super ( opts ) ;
4444 var suffStart ;
4545 var orig = $ ( opts . orig ) . find ( "textarea" ) [ 0 ] ;
46+ this . containerDiv = opts . orig ;
4647 this . useRunestoneServices = opts . useRunestoneServices ;
4748 this . python3 = opts . python3 ;
4849 this . alignVertical = opts . vertical ;
@@ -126,26 +127,25 @@ export class ActiveCode extends RunestoneBase {
126127 if ( this . autorun ) {
127128 $ ( document ) . ready ( this . runProg . bind ( this ) ) ;
128129 }
130+ this . indicate_component_ready ( ) ;
129131 }
130132
131133 createEditor ( index ) {
132- this . containerDiv = document . createElement ( "div" ) ;
134+ this . outerDiv = document . createElement ( "div" ) ;
133135 var linkdiv = document . createElement ( "div" ) ;
134136 linkdiv . id = this . divid . replace ( / _ / g, "-" ) . toLowerCase ( ) ; // :ref: changes _ to - so add this as a target
135- $ ( this . containerDiv ) . addClass ( "ac_section alert alert-warning" ) ;
137+ $ ( this . outerDiv ) . addClass ( "ac_section alert alert-warning" ) ;
136138 var codeDiv = document . createElement ( "div" ) ;
137139 $ ( codeDiv ) . addClass ( "ac_code_div col-md-12" ) ;
138140 this . codeDiv = codeDiv ;
139- this . containerDiv . id = this . divid ;
140- this . containerDiv . lang = this . language ;
141- this . outerDiv = this . containerDiv ;
142- $ ( this . origElem ) . replaceWith ( this . containerDiv ) ;
141+ this . outerDiv . lang = this . language ;
142+ $ ( this . origElem ) . replaceWith ( this . outerDiv ) ;
143143 if ( linkdiv . id !== this . divid ) {
144144 // Don't want the 'extra' target if they match.
145- this . containerDiv . appendChild ( linkdiv ) ;
145+ this . outerDiv . appendChild ( linkdiv ) ;
146146 }
147- this . containerDiv . appendChild ( codeDiv ) ;
148- var edmode = this . containerDiv . lang ;
147+ this . outerDiv . appendChild ( codeDiv ) ;
148+ var edmode = this . outerDiv . lang ;
149149 if ( edmode === "sql" ) {
150150 edmode = "text/x-sql" ;
151151 } else if ( edmode === "java" ) {
@@ -1207,22 +1207,22 @@ Yet another is that there is an internal error. The internal error message is:
12071207 let urDivid = `${ this . divid } _offscreen_unit_results` ;
12081208 let unitFeedback = document . getElementById ( urDivid ) ;
12091209 let tmp = document . body . removeChild ( unitFeedback ) ;
1210- if ( $ ( this . containerDiv ) . find ( `#${ urDivid } ` ) . length > 0 ) {
1211- tmp = $ ( this . containerDiv ) . find ( `#${ urDivid } ` ) [ 0 ] ;
1210+ if ( $ ( this . outerDiv ) . find ( `#${ urDivid } ` ) . length > 0 ) {
1211+ tmp = $ ( this . outerDiv ) . find ( `#${ urDivid } ` ) [ 0 ] ;
12121212 } else {
1213- this . containerDiv . appendChild ( tmp ) ;
1213+ this . outerDiv . appendChild ( tmp ) ;
12141214 }
12151215 $ ( tmp ) . show ( ) ;
12161216 } else {
12171217 let urDivid = this . divid + "_unit_results" ;
12181218 if (
1219- $ ( this . containerDiv ) . find ( `#${ urDivid } ` ) . length == 0 &&
1220- $ ( this . containerDiv ) . find (
1219+ $ ( this . outerDiv ) . find ( `#${ urDivid } ` ) . length == 0 &&
1220+ $ ( this . outerDiv ) . find (
12211221 `#${ urDivid } _offscreen_unit_results`
12221222 ) . length == 0
12231223 ) {
12241224 let urResults = document . getElementById ( urDivid ) ;
1225- this . containerDiv . appendChild ( urResults ) ;
1225+ this . outerDiv . appendChild ( urResults ) ;
12261226 }
12271227 }
12281228 }
@@ -1274,8 +1274,8 @@ Yet another is that there is an internal error. The internal error message is:
12741274 } ) ;
12751275 Sk . divid = this . divid ;
12761276 Sk . logResults = logResults ;
1277- if ( this . graderactive && this . containerDiv . closest ( ".loading" ) ) {
1278- Sk . gradeContainer = this . containerDiv . closest ( ".loading" ) . id ;
1277+ if ( this . graderactive && this . outerDiv . closest ( ".loading" ) ) {
1278+ Sk . gradeContainer = this . outerDiv . closest ( ".loading" ) . id ;
12791279 } else {
12801280 Sk . gradeContainer = this . divid ;
12811281 }
0 commit comments