fix: restaurar selección de examen tras reload del panel de config de tomas
Tras guardar la config de tomas (_mpGuardarConfig), location.reload() borraba el checkbox seleccionado → _mpApplyExamVisibility(null) ocultaba toda la UI. Ahora se guarda el examen en sessionStorage antes del reload y se restaura en DOMContentLoaded, reactivando la visibilidad de firmas y tiempos. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
34a0ae2c35
commit
182dc01a77
@@ -1244,7 +1244,10 @@ function _mpGuardarConfig(config, examType, onOk, onErr) {
|
||||
body: JSON.stringify({ token: _mpCfgToken, tomas_config: config, exam_type: examType })
|
||||
})
|
||||
.then(function(r) { return r.json(); })
|
||||
.then(function(d) { d.ok ? onOk() : onErr(d.error || 'Error desconocido'); })
|
||||
.then(function(d) {
|
||||
if (d.ok) { try { sessionStorage.setItem('_mpExamRestore', examType || ''); } catch(e) {} onOk(); }
|
||||
else onErr(d.error || 'Error desconocido');
|
||||
})
|
||||
.catch(function() { onErr('Error de conexión.'); });
|
||||
}
|
||||
|
||||
@@ -1348,7 +1351,19 @@ document.addEventListener('change', function(e) {
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
var radio = document.querySelector('[name="_c8j2g16"]:checked');
|
||||
var examName = radio ? radio.value : null;
|
||||
_mpApplyExamVisibility(examName); // null → oculta todas las secciones de tomas
|
||||
// Restaurar selección de examen tras el reload del panel de config
|
||||
if (!examName) {
|
||||
try {
|
||||
var saved = sessionStorage.getItem('_mpExamRestore');
|
||||
if (saved) {
|
||||
sessionStorage.removeItem('_mpExamRestore');
|
||||
examName = saved;
|
||||
var el = document.querySelector('[name="_c8j2g16"][value="' + saved.replace(/"/g, '\\"') + '"]');
|
||||
if (el) el.checked = true;
|
||||
}
|
||||
} catch(e) {}
|
||||
}
|
||||
_mpApplyExamVisibility(examName);
|
||||
if (!_mpModoTurnero || _mpTomasConfig !== null || !examName) return;
|
||||
var groups = _mpGetGroupsForExam(examName);
|
||||
if (Object.keys(groups).length) _mpShowCfgPanel(examName, groups);
|
||||
|
||||
Reference in New Issue
Block a user