From c993225daf78896c2a2e18e9ab0a46f4ed25e8de Mon Sep 17 00:00:00 2001 From: Mono Mono Date: Sat, 27 Jul 2024 17:29:09 -0500 Subject: [PATCH] refactor: string to variable. --- .../don_confiao/static/js/sale_summary.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/tienda_ilusion/don_confiao/static/js/sale_summary.js b/tienda_ilusion/don_confiao/static/js/sale_summary.js index 49ffe1b..5545163 100644 --- a/tienda_ilusion/don_confiao/static/js/sale_summary.js +++ b/tienda_ilusion/don_confiao/static/js/sale_summary.js @@ -3,12 +3,16 @@ const quantityLines = document.getElementById('id_quantity_lines'); const quantityProducts = document.getElementById('id_quantity_products'); const ammountInput = document.getElementById('id_ammount'); const idPrefix = 'id_saleline_set-'; +const quantitySuffix = '-quantity'; +const priceSuffix = '-unit_price'; +const quantityRegexSelector = `[id^="${idPrefix}"][id$="${quantitySuffix}"]`; +const priceRegexSelector = `[id^="${idPrefix}"][id$="${priceSuffix}"]`; complete_form.addEventListener('change', function(event){ - if (event.target.matches('[id^="${idPrefix}"][id$="-quantity"]')) { + if (event.target.matches(quantityRegexSelector)) { calculateSummary(); } - if (event.target.matches('[id^="id_saleline_set-"][id$="-unit_price"]')) { + if (event.target.matches(priceRegexSelector)) { calculateSummary(); } }); @@ -17,13 +21,13 @@ complete_form.addEventListener('change', function(event){ function calculateSummary() { let quantity = 0; let ammount = 0; - const quantityInputs = document.querySelectorAll('[id^="id_saleline_set-"][id$="-quantity"]'); + const quantityInputs = document.querySelectorAll(quantityRegexSelector); const ids = Array.prototype.map.call(quantityInputs, function(input) { return input.id.match(/\d+/)[0]; }); ids.forEach(function(id) { - let lineQuantity = document.getElementById(`id_saleline_set-${id}-quantity`) - let linePrice = document.getElementById(`id_saleline_set-${id}-unit_price`) + let lineQuantity = document.getElementById(`${idPrefix}${id}${quantitySuffix}`) + let linePrice = document.getElementById(`${idPrefix}${id}${priceSuffix}`) quantity += parseFloat(lineQuantity.value); ammount += parseFloat(linePrice.value) * parseFloat(lineQuantity.value); });