diff --git a/public/css/styles.css b/public/css/styles.css index d3bb74c..0092e1c 100644 --- a/public/css/styles.css +++ b/public/css/styles.css @@ -418,6 +418,7 @@ body{font-family:'Inter',system-ui,sans-serif;background:var(--g50);color:var(-- /* Inline load popover — compact dropdown, right-aligned under Load button */ .enc-load-popover{position:absolute;right:0;top:calc(100% + 4px);width:360px;max-width:calc(100vw - 24px);background:white;border:1px solid var(--g300);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,0.15);z-index:600;display:flex;flex-direction:column;} +.enc-load-popover.hidden{display:none;} .enc-load-popover-inner{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid var(--g200);} .enc-load-search{flex:1;padding:6px 10px;border:1px solid var(--g300);border-radius:6px;font-size:13px;font-family:inherit;} .enc-load-search:focus{outline:none;border-color:var(--blue);} diff --git a/public/js/encounters.js b/public/js/encounters.js index 35fe2c4..ab7f26f 100644 --- a/public/js/encounters.js +++ b/public/js/encounters.js @@ -244,25 +244,36 @@ var tabBtn = document.querySelector('.tab-btn[data-tab="' + tabName + '"]'); if (tabBtn) tabBtn.click(); + // Map enc_type → DOM element prefix + var domPfxMap = { + encounter: 'enc', dictation: 'dict', hospital: 'hosp', chart: 'chart', + wellvisit: 'wv', sickvisit: 'sick', soap: 'soap', milestones: 'ms' + }; + var domPfx = domPfxMap[enc.enc_type] || enc.enc_type; + var noteIdMap = { + encounter: 'enc-hpi-text', dictation: 'dict-hpi-text', + hospital: 'hc-course-text', chart: 'cr-review-text', + wellvisit: 'wv-note-text', sickvisit: 'sick-note-text' + }; + // Fill in data setTimeout(function() { // Fill label - var labelEl = document.getElementById(tabName + '-label') || document.getElementById(enc.enc_type + '-label'); + var labelEl = document.getElementById(domPfx + '-label'); if (labelEl) labelEl.value = enc.label; // Set saved ID so next save updates same record - window['_savedEncId_' + tabName] = enc.id; + window['_savedEncId_' + enc.enc_type] = enc.id; // Call tab-specific handler if (window._encLoadHandlers && window._encLoadHandlers[enc.enc_type]) { window._encLoadHandlers[enc.enc_type](enc); } else { - // Default: fill transcript field if it exists - var transcriptEl = document.getElementById(tabName + '-transcript') || document.getElementById(enc.enc_type + '-transcript'); + // Default: fill transcript and generated note + var transcriptEl = document.getElementById(domPfx + '-transcript'); if (transcriptEl && enc.transcript) transcriptEl.textContent = enc.transcript; - // Fill generated note if (enc.generated_note) { - var noteEl = document.getElementById(enc.enc_type + '-hpi-text') || document.getElementById(tabName + '-hpi-text'); + var noteEl = document.getElementById(noteIdMap[enc.enc_type] || (domPfx + '-hpi-text')); if (noteEl) { noteEl.textContent = enc.generated_note; var outputCard = noteEl.closest('.output-card');