diff options
Diffstat (limited to 'js/codeq.js')
-rw-r--r-- | js/codeq.js | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/js/codeq.js b/js/codeq.js index a08d207..ed59e4e 100644 --- a/js/codeq.js +++ b/js/codeq.js @@ -746,7 +746,7 @@ window.phandler = null; // TODO: this is for debug only var hash = location.hash, error = false, - params, param, sid, grp, prb, i, key, j; + params, param, sid, lang, grp, prb, i, key, j; if (hash.length < 2) { error = 'No execution parameters were provided'; @@ -764,6 +764,9 @@ window.phandler = null; // TODO: this is for debug only case 'sid': sid = param.substring(j+1); break; + case 'lang': + lang = param.substring(j+1); + break; case 'grp': grp = param.substring(j+1); break; @@ -794,10 +797,19 @@ window.phandler = null; // TODO: this is for debug only // DEBUG: phandler.processServerHints([{id:'drop_down', start: 20, end: 26, choices:['ena', 'dva', 'tri']}]); } });*/ - codeq.comms.getProblem('prolog', grp, prb).then( + codeq.comms.getProblem(lang, grp, prb).then( function getProblemOK (data) { if (data.code == 0) { - window.phandler = codeq.createPrologHandler(data.data, grp, prb); // TODO: assignment to window for debug only + switch (lang) { + case 'prolog': + // TODO: assignment to window for debug only + window.phandler = codeq.createPrologHandler(data.data, grp, prb); + break; + case 'python': + // TODO: assignment to window for debug only + window.phandler = codeq.createPythonHandler(data.data, grp, prb); + break; + } } else { alert(data.message); |