Set form fields based on page content and cookies

by davehol

JavaScript

function ready(fn) {
  if (document.readyState != "loading") {
    fn()
  } else if (document.addEventListener) {
    document.addEventListener("DOMContentLoaded", fn)
  } else {
    document.attachEvent("onreadystatechange", function () {
      if (document.readyState != "loading") fn()
    })
  }
}
ready(function () {
  window.addEventListener("beforeunload", function (event) {
    event.stopImmediatePropagation()
  })

  const datalayer = digitalData.page.pageInfo.category
  if (datalayer.subCategoryL2 == "topic") {
    const elm_topic = document.getElementById("tfa_525")
    // elm_topic.value = datalayer.subCategoryL3;
    elm_topic.value = document.getElementsByTagName("H1")[0].innerText
    console.log(elm_topic.value)
  } else {
    const elm_catagory = document.getElementById("tfa_527")
    var cat
    switch (datalayer.subCategoryL2) {
      case "health":
        cat = "Health"
        break
      case "business finance":
        cat = "Business & Finance"
        break
      case "artificial intelligence":
        cat = "Artificial Intelligence"
        break
      case "data science analytics":
        cat = "Data Science"
        break
      case "design":
        cat = "Design"
        break
      case "it security":
        cat = "It & Security"
        break
      case "marketing":
        cat = "Marketing"
        break
      case "science engineering":
        cat = "Science & Engineering"
        break
      case "software development":
        cat = "Software Development"
        break
    }
    elm_catagory.value = cat
    if (!(datalayer.subCategoryL3 == "")) {
      const elm_subcatagory = document.getElementById("tfa_526")
      //elm_subcatagory.value = datalayer.subCategoryL3;
      elm_subcatagory.value = document.getElementsByTagName("H1")[0].innerText
    }
    const elm_leadatt = document.getElementById("tfa_529")
    const elm_clid = document.getElementById("tfa_531")
    const sourceMed = getCookie("sourceMedium")

    if...