{"version":3,"names":["$","Drupal","campusCodes","piiFields","getFriendlyFormName","formId","startsWith","behaviors","ajaxCompleteSubmission","attach","context","settings","fn","concordeAjaxCompleteSubmission","data","formName","sessionStorage","getItem","program","campus","zip","window","dataLayer","push","event","multistepFieldTracking","setTimeout","on","e","this","closest","attr","length","fieldName","fieldValue","val","start","indexOf","end","substring","includes","setItem","pageFormStarted","initializeDataLayer","once","each","$form","multistep","params","URLSearchParams","location","search","hasClass","has","form_name","formDataLayer","form","find","rawCampus","initializeDlBehavior","click","menuType","menuItemName","text","chat_action","listName","listItem","pagesense","onDocDataLayerReady","jQuery"],"sources":["../../src/js/data-layer.init.js"],"sourcesContent":["(function ($, Drupal) {\n\n 'use strict';\n // Campus Codes\n const campusCodes = {\n '1': 'COAUR-1',\n '2': 'TXDAL-2',\n '3': 'CAGGV-3',\n '4': 'TXGRP-4',\n '5': 'MOMKC-5',\n '6': 'TNMEM-6',\n '7': 'CANHY-7',\n '8': 'ORPDX-8',\n '9': 'TXSAN-9',\n '10': 'CASBN-10',\n '11': 'CASAN-11',\n '12': 'MSHVN-12',\n '13': 'FLJAX-13',\n '14': 'FLMIR-14',\n '15': 'FLORL-15',\n '16': 'FLTPA-16',\n '17': 'ONLIN-17'\n };\n\n // PII Fields to exclude from GA\n const piiFields = ['firstname', 'lastname', 'email', 'dayphone', 'edit-firstname', 'edit-lastname', 'edit-email', 'edit-dayphone', 'name', 'your_title', 'your_phone', 'your_phone_number', 'ext', 'your_company', 'department', 'address', 'city', 'state'];\n\n // Form Names\n function getFriendlyFormName(formId) {\n if (formId.startsWith('webform-submission-enterprise-form-node')) {\n return 'Enterprise Form';\n } else if (formId.startsWith('webform-submission-enterprise-form-multi-steps-v3')) {\n return 'Enterprise Form - Multistep';}\n else if (formId.startsWith('webform-submission-enterprise-form-multi-steps')) {\n return 'Apply Form';\n } else if (formId.startsWith('webform-submission-schedule-tour')) {\n return 'Schedule Tour Form';\n } else if (formId.startsWith('webform-submission-virtual-info-session')) {\n return 'Virtual Info Session Form';\n } else if (formId.startsWith('webform-submission-partners-day-event')) {\n return 'Event Form';\n } else if (formId.startsWith('webform-submission-open-house-form')) {\n return 'Open House Form';\n } else if (formId.startsWith('webform-submission-personality-assessment-7')) {\n return 'Personality Assessment Form';\n } else {\n if(formId.startsWith('webform-submission-enterprise-form')) {\n return 'Enterprise Form';\n } else {\n return formId;\n }\n }\n }\n\n Drupal.behaviors.ajaxCompleteSubmission = {\n attach: function(context, settings) {\n $.fn.concordeAjaxCompleteSubmission = function(data) {\n var formName = sessionStorage.getItem('concorde_form_current');\n var program = sessionStorage.getItem('concorde_form_program');\n var campus = sessionStorage.getItem('concorde_form_campus');\n var zip = sessionStorage.getItem('concorde_form_zip');\n window.dataLayer.push({\n 'event': 'ce_formSubmit',\n 'formName': formName,\n 'program': program,\n 'campus': campus,\n 'zip': zip\n });\n // console.log('EVENT: ce_formSubmit');\n // console.log('formName: ' + formName);\n // console.log('program: ' + program);\n // console.log('campus: ' + campus);\n // console.log('zip: ' + zip);\n };\n }\n };\n\n Drupal.behaviors.multistepFieldTracking = {\n attach: function (context, settings) {\n setTimeout(function() {\n $('div[id^=\"edit-step-2\"] input:not([type=\"submit\"]), div[id^=\"edit-step-2\"] select', context).on('change', function(e) {\n var form = $(this).closest('form');\n var formId = $(this).closest('form').attr('id');\n var formName = sessionStorage.getItem('concorde_form_current');\n\n if ($('div[id^=\"edit-step-2\"]').closest('.js-modal-window').length) {\n formName += ' (Modal)';\n }\n\n var fieldName = $(this).attr('name');\n var fieldValue = $(this).val();\n var start = fieldName.indexOf('[');\n var end = fieldName.indexOf(']');\n if (start !== -1 && end !== -1) {\n fieldName = fieldName.substring(start + 1, end);\n }\n if (fieldName === 'LocationID') { fieldName = 'campus'; }\n if (fieldName === 'campus') { fieldValue = campusCodes[fieldValue] || fieldValue; }\n\n if(!piiFields.includes(fieldName) && fieldValue !== '') {\n // dataLayer.push({\n // 'event': 'ce_formField',\n // 'fieldName': fieldName,\n // 'formName': formName,\n // 'fieldValue': fieldValue\n // });\n // console.log('EVENT: ce_formField multistep');\n // console.log('formName: ' + formName);\n // console.log('fieldname: ' + fieldName);\n // console.log('fieldValue: ' + fieldValue);\n if (fieldName === 'zip') {\n sessionStorage.setItem('concorde_form_zip', fieldValue);\n }\n if (fieldName === 'campus') {\n sessionStorage.setItem('concorde_form_campus', fieldValue);\n }\n if (fieldName === 'program') {\n sessionStorage.setItem('concorde_form_program', fieldValue);\n }\n }\n });\n }, 1000);\n }\n };\n\n var pageFormStarted = false;\n\n Drupal.behaviors.initializeDataLayer = {\n attach: function (context) {\n $(once('initializeDataLayerBehavior', 'form.webform-submission-form', context)).each(function() {\n var $form = $(this);\n var formId = $form.attr('id');\n var formName = getFriendlyFormName(formId);\n var multistep = false;\n var params = new URLSearchParams(window.location.search);\n if ($form.hasClass('multistep-form')) {\n multistep = true;\n }\n\n\n $form.on('focus', 'input, select', function(e) {\n if (!pageFormStarted) {\n if ($form.closest('.js-modal-window').length) {\n formName += ' (Modal)';\n }\n\n if (params.has('page') && multistep) {\n return;\n }\n\n dataLayer.push({\n 'event': 'webform_start',\n 'form_name': formName\n });\n\n // console.log('form start fired (data layer push disabled)');\n\n sessionStorage.setItem('concorde_form_current', formName);\n sessionStorage.setItem('concorde_form_zip', '');\n sessionStorage.setItem('concorde_form_campus', '');\n sessionStorage.setItem('concorde_form_program', '');\n\n pageFormStarted = true;\n sessionStorage.setItem('page_form_started', 'true');\n\n\n }\n });\n });\n }\n };\n\n Drupal.behaviors.formDataLayer = {\n attach: function (context, settings) {\n\n setTimeout(function() {\n $('form.webform-submission-form input, form.webform-submission-form select', context).on('change', function(e) {\n var form = $(this).closest('form');\n var formId = $(this).closest('form').attr('id');\n var formName = getFriendlyFormName(formId);\n if (form.closest('.js-modal-window').length) {\n formName += ' (Modal)';\n }\n var fieldName = $(this).attr('name');\n var fieldValue = $(this).val();\n var start = fieldName.indexOf('[');\n var end = fieldName.indexOf(']');\n if (start !== -1 && end !== -1) {\n fieldName = fieldName.substring(start + 1, end);\n }\n if (fieldName === 'LocationID') { fieldName = 'campus'; }\n if (fieldName === 'campus') { fieldValue = campusCodes[fieldValue] || fieldValue; }\n var multistep = false;\n var params = new URLSearchParams(window.location.search);\n\n\n if(!piiFields.includes(fieldName) && fieldValue !== '') {\n dataLayer.push({\n 'event': 'ce_formField',\n 'fieldName': fieldName,\n 'formName': formName,\n 'fieldValue': fieldValue\n });\n\n // console.log('EVENT: ce_formField standard');\n // console.log('formName: ' + formName);\n // console.log('fieldname: ' + fieldName);\n // console.log('fieldValue: ' + fieldValue);\n\n if (fieldName === 'zip') {\n sessionStorage.setItem('concorde_form_zip', fieldValue);\n }\n if (fieldName === 'campus') {\n sessionStorage.setItem('concorde_form_campus', fieldValue);\n }\n if (fieldName === 'program') {\n sessionStorage.setItem('concorde_form_program', fieldValue);\n }\n }\n });\n }, 1000);\n\n $(once('initializeFormSubmitDataLayerBehavior', 'form.webform-submission-form', context)).each(function() {\n const form = $(this);\n form.on('submit', function(e) {\n if (form.data('formSubmitted')) {\n // e.preventDefault();\n // return;\n // console.log('form already submitted');\n }\n\n form.data('formSubmitted', true);\n\n let formId = form.attr('id');\n let formName = getFriendlyFormName(formId);\n\n if (form.closest('.js-modal-window').length) {\n formName += ' (Modal)';\n }\n\n let program = form.find('.concorde_webform_campus_area_program_program').val();\n let rawCampus = form.find('.concorde_webform_campus_area_program_campus').val();\n let campus = campusCodes[rawCampus] || rawCampus;\n let zip = form.find('.form-item-zip input').val();\n var multistep = false;\n var params = new URLSearchParams(window.location.search);\n if (form.hasClass('multistep-form')) {\n multistep = true;\n }\n\n if (!multistep) {\n dataLayer.push({\n 'event': 'ce_formSubmit',\n 'formName': formName,\n 'program': program,\n 'campus': campus,\n 'zip': zip\n });\n }\n\n // console.log('EVENT: ce_formSubmit normal');\n // console.log('formName: ' + formName);\n // console.log('program: ' + program);\n // console.log('campus: ' + campus);\n // console.log('zip: ' + zip);\n\n });\n });\n\n }\n };\n\n function onDocDataLayerReady(context) {\n\n const $elements = $(once('initializeDlBehaviors', 'body', context));\n $elements.each(function() {\n\n // Primary navigation\n $('#primary-nav ul.navbar-nav a').click(function (e) {\n dataLayer.push({\n 'event': 'ce_navigationClick', 'menuType': 'header', 'menuItemName': $(this).text() });\n });\n\n // Footer navigation\n $('#footer_links a').click(function (e) {\n dataLayer.push({\n 'event': 'ce_navigationClick', 'menuType': 'footer', 'menuItemName': $(this).text() });\n });\n\n // Breadcrumb navigation\n $('ol.breadcrumb a').click(function (e) {\n dataLayer.push({\n 'event': 'ce_navigationClick', 'menuType': 'breadcrumb', 'menuItemName': $(this).text() });\n });\n\n // Secondary Nav\n $('#secondary-nav a').click(function (e) {\n dataLayer.push({\n 'event': 'ce_navigationClick', 'menuType': 'sticky nav', 'menuItemName': $(this).text() });\n });\n\n // Chat\n $('body').on('click', '.chat-now-btn', function(e) {\n dataLayer.push({\n 'event': 'chat_interact', 'chat_action': 'chat open' });\n // console.log('chat open');\n });\n\n //Accordion\n $('.acc-item').click(function (e) {\n window.dataLayer.push({\n 'event': 'ce_expandList',\n 'listName': $(this).closest('[data-list-name]').data(\"list-name\"),\n 'listItem': $(this).data(\"list-item\")\n });\n });\n\n // Chat close\n $('body').on('click', '#chatbot-close-button, div.jetsense-chatbot-minimize', function(e) {\n dataLayer.push({\n 'event': 'chat_interact', 'chat_action': 'chat terminated' });\n // console.log('chat terminated');\n });\n\n // Home hero CTA\n $('.path-frontpage #hero a.btn').click(function (e) {\n window.pagesense = window.pagesense || [];\n window.pagesense.push(['trackEvent', 'hero_cta_click']);\n });\n\n\n });\n }\n\n Drupal.behaviors.initializeDlBehavior = {\n attach: function (context) {\n onDocDataLayerReady(context);\n }\n };\n\n})(jQuery, Drupal);\n"],"mappings":"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","ignoreList":[]}