From fdc6ae352b6215d87f41462d3eb0f767c97bacbd Mon Sep 17 00:00:00 2001 From: DevSoftTech Server Date: Sat, 6 Jun 2026 20:22:36 +0530 Subject: [PATCH] Remove duplicate old medicine form code causing null reference error - Removed old code referencing non-existent field IDs (#new_drug_name, etc.) - Fixed 'medInput is null' JavaScript error - Kept only new implementation with correct IDs (#discharge_med_name, etc.) - Cleaned up normalizeRxShortCode and unused event listeners - Fix console error: Uncaught TypeError: can't access property addEventListener --- app/Views/billing/ipd/discharge_create.php | 123 --------------------- 1 file changed, 123 deletions(-) diff --git a/app/Views/billing/ipd/discharge_create.php b/app/Views/billing/ipd/discharge_create.php index d6f51c9..169ba99 100644 --- a/app/Views/billing/ipd/discharge_create.php +++ b/app/Views/billing/ipd/discharge_create.php @@ -3852,59 +3852,13 @@ $allergyStatusNoKnown = in_array($allergyStatusNormalized, ['no known drug aller return; } - var suggestRows = []; var rxGroupCache = []; - var medInput = section.querySelector('#new_drug_name'); - var medSuggest = section.querySelector('#discharge_med_suggest'); - var medType = section.querySelector('#new_drug_type'); - var medWhen = section.querySelector('#new_drug_when'); - var medFreq = section.querySelector('#new_drug_freq'); var rxGroupInput = section.querySelector('#selected_rx_group_id'); var rxGroupName = section.querySelector('#rx_group_selected_name'); var rxGroupList = document.getElementById('discharge_rx_group_list'); var rxGroupSearch = document.getElementById('discharge_rx_group_search'); var applyBtn = section.querySelector('#btn_apply_rx_group'); - function normalizeRxShortCode(raw, kind) { - var v = String(raw || '').trim(); - if (v === '') { - return ''; - } - - var key = v.replace(/\./g, '').replace(/\s+/g, '').toUpperCase(); - if (kind === 'when') { - var whenMap = { - 'BEFOREFOOD': 'BF', - 'BFOOD': 'BF', - 'BF': 'BF', - 'AF': 'AF', - 'AFOOD': 'AF', - 'AFTERFOOD': 'AF', - 'WF': 'WF', - 'WFOOD': 'WF', - 'WITHFOOD': 'WF' - }; - return whenMap[key] || key; - } - - var freqMap = { - 'OD': 'OD', - 'QD': 'OD', - 'ONCEDAILY': 'OD', - 'BD': 'BD', - 'BID': 'BD', - 'TWICEDAILY': 'BD', - 'TDS': 'TDS', - 'TID': 'TDS', - 'THRICEDAILY': 'TDS', - 'HS': 'HS', - 'QHS': 'HS', - 'QID': 'QID', - 'SOS': 'SOS' - }; - return freqMap[key] || key; - } - function setMedicineStatus(text, level) { setSectionStatus('discharge_medicine_status', text, level || 'muted'); } @@ -3943,83 +3897,6 @@ $allergyStatusNoKnown = in_array($allergyStatusNormalized, ['no known drug aller }); } - medInput.addEventListener('input', function() { - var q = String(medInput.value || '').trim(); - if (q.length < 2) { - return; - } - - $.get('?q=' + encodeURIComponent(q) + '&scope=active', function(data) { - suggestRows = (data && data.rows) ? data.rows : []; - var html = ''; - suggestRows.forEach(function(row) { - var name = String(row.med_name || '').trim(); - if (name === '') { - return; - } - html += ''; - }); - if (medSuggest) { - medSuggest.innerHTML = html; - } - }, 'json'); - }); - - medInput.addEventListener('change', function() { - var value = String(medInput.value || '').trim().toUpperCase(); - if (value === '') { - return; - } - - var matched = null; - suggestRows.forEach(function(row) { - if (String(row.med_name || '').trim().toUpperCase() === value) { - matched = row; - } - }); - - if (matched && medType && String(medType.value || '').trim() === '') { - medType.value = String(matched.med_type || '').trim(); - } - }); - - section.querySelectorAll('.rx-quick-btn').forEach(function(btn) { - btn.addEventListener('click', function() { - var targetId = String(btn.getAttribute('data-fill-target') || '').trim(); - var value = String(btn.getAttribute('data-fill-value') || '').trim(); - var target = targetId ? section.querySelector('#' + targetId) : null; - if (target) { - if (targetId === 'new_drug_when') { - target.value = normalizeRxShortCode(value, 'when'); - } else if (targetId === 'new_drug_freq') { - target.value = normalizeRxShortCode(value, 'freq'); - } else { - target.value = value; - } - } - }); - }); - - if (medWhen && medWhen.dataset.shortBound !== '1') { - medWhen.dataset.shortBound = '1'; - medWhen.addEventListener('blur', function() { - medWhen.value = normalizeRxShortCode(medWhen.value, 'when'); - }); - medWhen.addEventListener('change', function() { - medWhen.value = normalizeRxShortCode(medWhen.value, 'when'); - }); - } - - if (medFreq && medFreq.dataset.shortBound !== '1') { - medFreq.dataset.shortBound = '1'; - medFreq.addEventListener('blur', function() { - medFreq.value = normalizeRxShortCode(medFreq.value, 'freq'); - }); - medFreq.addEventListener('change', function() { - medFreq.value = normalizeRxShortCode(medFreq.value, 'freq'); - }); - } - var openRxBtn = section.querySelector('#btn_open_rx_group_modal'); if (openRxBtn) { openRxBtn.addEventListener('click', function() {