From 3b320c1ef6f6e819405fd40575bcfc4fb51a063c Mon Sep 17 00:00:00 2001 From: Christian Burk <766573+omahane@users.noreply.github.com> Date: Fri, 31 Jan 2025 14:21:34 -0600 Subject: [PATCH] VACMS-20262: Adds JS change to remove VBA service descriptions (#20362) * VACMS-20262: Adds JS change to remove VBA service descriptions * VACMS-20262: Accounts for the VBA edit form --- .../js/displayServiceDescriptions.es6.js | 136 ++++++++++-------- .../js/displayServiceDescriptions.js | 76 +++++----- .../js/winnowServiceNamesTricare.es6.js | 2 +- .../js/winnowServiceNamesTricare.js | 6 +- 4 files changed, 116 insertions(+), 104 deletions(-) diff --git a/docroot/modules/custom/va_gov_facilities/js/displayServiceDescriptions.es6.js b/docroot/modules/custom/va_gov_facilities/js/displayServiceDescriptions.es6.js index 653200794f..ede731e0cb 100644 --- a/docroot/modules/custom/va_gov_facilities/js/displayServiceDescriptions.es6.js +++ b/docroot/modules/custom/va_gov_facilities/js/displayServiceDescriptions.es6.js @@ -142,67 +142,79 @@ p4.prepend(s4); } } - // VBA terms have nationalized regional data. - if ( - drupalSettings.availableHealthServices[service.value] !== undefined && - drupalSettings.availableHealthServices[service.value] - .vba_regional_service_header !== "" - ) { - const p5 = context.createElement("p"); - const s5 = context.createElement("strong"); - p5.textContent = drupalSettings.availableHealthServices[ - service.value - ].vba_regional_service_header.replace(/ /g, " "); - s5.textContent = "Regional service header: "; - div.classList.remove("no-content"); - div.appendChild(p5); - p5.prepend(s5); - } - if ( - drupalSettings.availableHealthServices[service.value] !== undefined && - drupalSettings.availableHealthServices[service.value] - .vba_regional_service_description !== "" - ) { - const p6 = context.createElement("p"); - const s6 = context.createElement("strong"); - p6.textContent = drupalSettings.availableHealthServices[ - service.value - ].vba_regional_service_description.replace(/ /g, " "); - s6.textContent = "Regional service description: "; - div.classList.remove("no-content"); - div.appendChild(p6); - p6.prepend(s6); - } - // VBA terms have nationalized facility data. - if ( - drupalSettings.availableHealthServices[service.value] !== undefined && - drupalSettings.availableHealthServices[service.value] - .vba_facility_service_header !== "" - ) { - const p7 = context.createElement("p"); - const s7 = context.createElement("strong"); - p7.textContent = drupalSettings.availableHealthServices[ - service.value - ].vba_facility_service_header.replace(/ /g, " "); - s7.textContent = "Facility service header: "; - div.classList.remove("no-content"); - div.appendChild(p7); - p7.prepend(s7); - } - if ( - drupalSettings.availableHealthServices[service.value] !== undefined && - drupalSettings.availableHealthServices[service.value] - .vba_facility_service_description !== "" - ) { - const p8 = context.createElement("p"); - const s8 = context.createElement("strong"); - p8.textContent = drupalSettings.availableHealthServices[ - service.value - ].vba_facility_service_description.replace(/ /g, " "); - s8.textContent = "Facility service description: "; - div.classList.remove("no-content"); - div.appendChild(p8); - p8.prepend(s8); + const vbaForm = document.querySelector( + '[data-drupal-selector="node-vba-facility-service-form"]' + ); + const vbaFormEdit = document.querySelector( + '[data-drupal-selector="node-vba-facility-service-edit-form"]' + ); + if (vbaForm || vbaFormEdit) { + // VBA terms have nationalized regional data. + if ( + drupalSettings.availableHealthServices[service.value] !== + undefined && + drupalSettings.availableHealthServices[service.value] + .vba_regional_service_header !== "" + ) { + const p5 = context.createElement("p"); + const s5 = context.createElement("strong"); + p5.textContent = drupalSettings.availableHealthServices[ + service.value + ].vba_regional_service_header.replace(/ /g, " "); + s5.textContent = "Regional service header: "; + div.classList.remove("no-content"); + div.appendChild(p5); + p5.prepend(s5); + } + if ( + drupalSettings.availableHealthServices[service.value] !== + undefined && + drupalSettings.availableHealthServices[service.value] + .vba_regional_service_description !== "" + ) { + const p6 = context.createElement("p"); + const s6 = context.createElement("strong"); + p6.textContent = drupalSettings.availableHealthServices[ + service.value + ].vba_regional_service_description.replace(/ /g, " "); + s6.textContent = "Regional service description: "; + div.classList.remove("no-content"); + div.appendChild(p6); + p6.prepend(s6); + } + // VBA terms have nationalized facility data. + if ( + drupalSettings.availableHealthServices[service.value] !== + undefined && + drupalSettings.availableHealthServices[service.value] + .vba_facility_service_header !== "" + ) { + const p7 = context.createElement("p"); + const s7 = context.createElement("strong"); + p7.textContent = drupalSettings.availableHealthServices[ + service.value + ].vba_facility_service_header.replace(/ /g, " "); + s7.textContent = "Facility service header: "; + div.classList.remove("no-content"); + div.appendChild(p7); + p7.prepend(s7); + } + if ( + drupalSettings.availableHealthServices[service.value] !== + undefined && + drupalSettings.availableHealthServices[service.value] + .vba_facility_service_description !== "" + ) { + const p8 = context.createElement("p"); + const s8 = context.createElement("strong"); + p8.textContent = drupalSettings.availableHealthServices[ + service.value + ].vba_facility_service_description.replace(/ /g, " "); + s8.textContent = "Facility service description: "; + div.classList.remove("no-content"); + div.appendChild(p8); + p8.prepend(s8); + } } // Plug in the term text below the select. service.after(div); @@ -255,7 +267,7 @@ ) ); // Add a change event listener to the VAMC System field. - const systemSelect = context.getElementById("edit-field-region-page"); + const systemSelect = context.querySelector("#edit-field-region-page"); if (systemSelect !== null) { systemSelect.addEventListener("change", () => { descriptionFill( diff --git a/docroot/modules/custom/va_gov_facilities/js/displayServiceDescriptions.js b/docroot/modules/custom/va_gov_facilities/js/displayServiceDescriptions.js index dd1bb170c3..0fe8f3aa5f 100644 --- a/docroot/modules/custom/va_gov_facilities/js/displayServiceDescriptions.js +++ b/docroot/modules/custom/va_gov_facilities/js/displayServiceDescriptions.js @@ -78,41 +78,45 @@ p4.prepend(s4); } } - if (drupalSettings.availableHealthServices[service.value] !== undefined && drupalSettings.availableHealthServices[service.value].vba_regional_service_header !== "") { - var p5 = context.createElement("p"); - var s5 = context.createElement("strong"); - p5.textContent = drupalSettings.availableHealthServices[service.value].vba_regional_service_header.replace(/ /g, " "); - s5.textContent = "Regional service header: "; - div.classList.remove("no-content"); - div.appendChild(p5); - p5.prepend(s5); - } - if (drupalSettings.availableHealthServices[service.value] !== undefined && drupalSettings.availableHealthServices[service.value].vba_regional_service_description !== "") { - var p6 = context.createElement("p"); - var s6 = context.createElement("strong"); - p6.textContent = drupalSettings.availableHealthServices[service.value].vba_regional_service_description.replace(/ /g, " "); - s6.textContent = "Regional service description: "; - div.classList.remove("no-content"); - div.appendChild(p6); - p6.prepend(s6); - } - if (drupalSettings.availableHealthServices[service.value] !== undefined && drupalSettings.availableHealthServices[service.value].vba_facility_service_header !== "") { - var p7 = context.createElement("p"); - var s7 = context.createElement("strong"); - p7.textContent = drupalSettings.availableHealthServices[service.value].vba_facility_service_header.replace(/ /g, " "); - s7.textContent = "Facility service header: "; - div.classList.remove("no-content"); - div.appendChild(p7); - p7.prepend(s7); - } - if (drupalSettings.availableHealthServices[service.value] !== undefined && drupalSettings.availableHealthServices[service.value].vba_facility_service_description !== "") { - var p8 = context.createElement("p"); - var s8 = context.createElement("strong"); - p8.textContent = drupalSettings.availableHealthServices[service.value].vba_facility_service_description.replace(/ /g, " "); - s8.textContent = "Facility service description: "; - div.classList.remove("no-content"); - div.appendChild(p8); - p8.prepend(s8); + var vbaForm = document.querySelector('[data-drupal-selector="node-vba-facility-service-form"]'); + var vbaFormEdit = document.querySelector('[data-drupal-selector="node-vba-facility-service-edit-form"]'); + if (vbaForm || vbaFormEdit) { + if (drupalSettings.availableHealthServices[service.value] !== undefined && drupalSettings.availableHealthServices[service.value].vba_regional_service_header !== "") { + var p5 = context.createElement("p"); + var s5 = context.createElement("strong"); + p5.textContent = drupalSettings.availableHealthServices[service.value].vba_regional_service_header.replace(/ /g, " "); + s5.textContent = "Regional service header: "; + div.classList.remove("no-content"); + div.appendChild(p5); + p5.prepend(s5); + } + if (drupalSettings.availableHealthServices[service.value] !== undefined && drupalSettings.availableHealthServices[service.value].vba_regional_service_description !== "") { + var p6 = context.createElement("p"); + var s6 = context.createElement("strong"); + p6.textContent = drupalSettings.availableHealthServices[service.value].vba_regional_service_description.replace(/ /g, " "); + s6.textContent = "Regional service description: "; + div.classList.remove("no-content"); + div.appendChild(p6); + p6.prepend(s6); + } + if (drupalSettings.availableHealthServices[service.value] !== undefined && drupalSettings.availableHealthServices[service.value].vba_facility_service_header !== "") { + var p7 = context.createElement("p"); + var s7 = context.createElement("strong"); + p7.textContent = drupalSettings.availableHealthServices[service.value].vba_facility_service_header.replace(/ /g, " "); + s7.textContent = "Facility service header: "; + div.classList.remove("no-content"); + div.appendChild(p7); + p7.prepend(s7); + } + if (drupalSettings.availableHealthServices[service.value] !== undefined && drupalSettings.availableHealthServices[service.value].vba_facility_service_description !== "") { + var p8 = context.createElement("p"); + var s8 = context.createElement("strong"); + p8.textContent = drupalSettings.availableHealthServices[service.value].vba_facility_service_description.replace(/ /g, " "); + s8.textContent = "Facility service description: "; + div.classList.remove("no-content"); + div.appendChild(p8); + p8.prepend(s8); + } } service.after(div); if (div.textContent.length > 0) { @@ -142,7 +146,7 @@ }); window.addEventListener("DOMContentLoaded", function () { descriptionFill(context.querySelectorAll(".field--name-field-service-name-and-descripti select")); - var systemSelect = context.getElementById("edit-field-region-page"); + var systemSelect = context.querySelector("#edit-field-region-page"); if (systemSelect !== null) { systemSelect.addEventListener("change", function () { descriptionFill(context.querySelectorAll(".field--name-field-service-name-and-descripti select")); diff --git a/docroot/modules/custom/va_gov_lovell/js/winnowServiceNamesTricare.es6.js b/docroot/modules/custom/va_gov_lovell/js/winnowServiceNamesTricare.es6.js index 4b7f1db558..1f19ad4c7c 100644 --- a/docroot/modules/custom/va_gov_lovell/js/winnowServiceNamesTricare.es6.js +++ b/docroot/modules/custom/va_gov_lovell/js/winnowServiceNamesTricare.es6.js @@ -43,7 +43,7 @@ // If services are available on page load, operate on the selects. window.addEventListener("DOMContentLoaded", () => { // Add a change event listener to the VAMC System field. - const systemSelect = context.getElementById("edit-field-region-page"); + const systemSelect = context.querySelector("#edit-field-region-page"); if (systemSelect !== null) { systemSelect.addEventListener("change", () => { winnowTricareServices( diff --git a/docroot/modules/custom/va_gov_lovell/js/winnowServiceNamesTricare.js b/docroot/modules/custom/va_gov_lovell/js/winnowServiceNamesTricare.js index 14e17790d7..918e7ea0b6 100644 --- a/docroot/modules/custom/va_gov_lovell/js/winnowServiceNamesTricare.js +++ b/docroot/modules/custom/va_gov_lovell/js/winnowServiceNamesTricare.js @@ -4,7 +4,6 @@ * https://www.drupal.org/node/2815083 * @preserve **/ - (function ($, Drupal) { Drupal.behaviors.vaGovWinnowServiceNamesForTricare = { attach: function attach(context) { @@ -19,11 +18,9 @@ } return tricareSystem; }; - var winnowTricareServices = function winnowTricareServices(options) { if (options && options.length > 0) { var tricareSystem = Drupal.isTricareSystem(context); - options.forEach(function (option) { if (!tricareSystem && option.text.includes("(TRICARE)") || tricareSystem && option.text.toLowerCase().includes("vet")) { option.classList.add("hidden-option"); @@ -33,9 +30,8 @@ }); } }; - window.addEventListener("DOMContentLoaded", function () { - var systemSelect = context.getElementById("edit-field-region-page"); + var systemSelect = context.querySelector("#edit-field-region-page"); if (systemSelect !== null) { systemSelect.addEventListener("change", function () { winnowTricareServices(context.querySelectorAll(".field--name-field-service-name-and-descripti select option"));