X-Git-Url: https://git.llucax.com/software/sercom.git/blobdiff_plain/c93a3d99ce9b5e3db2e9f18f972bfcfba7ce5f1a..a0fbd7a909e29af5349e41664feeb7dfb128304e:/sercom/subcontrollers/ejercicio/__init__.py diff --git a/sercom/subcontrollers/ejercicio/__init__.py b/sercom/subcontrollers/ejercicio/__init__.py index 8a8a7ab..d04dde1 100644 --- a/sercom/subcontrollers/ejercicio/__init__.py +++ b/sercom/subcontrollers/ejercicio/__init__.py @@ -79,10 +79,21 @@ def get_options(): # Un poco de ajax para llenar los cursos ajax = """ + function showHint() + { + MochiKit.DOM.showElement('hint') + } + + function hideHint() + { + MochiKit.DOM.hideElement('hint') + } + function clearEnunciados () { l = MochiKit.DOM.getElement('form_enunciadoID'); l.options.length = 0; + l.disabled = true; } function mostrarEnunciados (res) @@ -93,11 +104,14 @@ ajax = """ label = res.enunciados[i].nombre; MochiKit.DOM.appendChildNodes("form_enunciadoID", OPTION({"value":id}, label)) } + l.disabled = false; + hideHint(); } function err (err) { alert("The metadata for MochiKit.Async could not be fetched :("); + hideHint(); } function actualizar_enunciados () @@ -112,11 +126,18 @@ ajax = """ url = "/enunciado/de_curso?curso_id="+id; var d = loadJSONDoc(url); d.addCallbacks(mostrarEnunciados, err); + showHint(); } function prepare() { connect('form_cursoID', 'onchange', actualizar_enunciados); + hideHint(); + clearEnunciados(); + actualizar_enunciados(); + if (select_enunciado) { + wait(0.1).addCallback(function (res) { return select_enunciado() }); + } } MochiKit.DOM.addLoadEvent(prepare)