const domainSelector = document.querySelector(".header-container > .domain-selector");
const currentDomain = domainSelector && domainSelector.querySelector(".current-domain-item");
const domainDropDown = domainSelector && domainSelector.querySelector(".domain-dropdown");
const countryList = domainSelector && domainSelector.querySelector(".country-list");

const toggleDomainSelector = () => {
  domainSelector && domainSelector.classList.toggle("open")

   if (countryList && countryList.classList.contains("open")) {
    toggleOtherCountryList()
  }
}

const toggleOtherCountryList = () => {
  if (!domainSelector || !countryList) return

  countryList.classList.toggle("open")
}


document.addEventListener('click', (event) => {
  if (!domainSelector || !domainDropDown) return

  event.stopPropagation();

  const isClickInsideElement = domainDropDown.contains(event.target);
  const clickedDomainSelector = currentDomain.contains(event.target);

  const isOpen = domainSelector.classList.contains("open");

  if (!isClickInsideElement && isOpen || clickedDomainSelector) {
    return toggleDomainSelector()
  }
});(function initHeader() {
	const body = document.querySelector("body");
	const header = document.querySelector(".header");
	const toggle = header.querySelector(".link-menu-toggle");
	const navLinks = header.querySelectorAll(
		".nav-dropdown > .link"
	);

	const headerItemWithDropdownToggles =
		header.querySelectorAll(
			".header-item-with-dropdown-toggle"
		);

	const menuItemChildrenToggles = header.querySelectorAll(
		".show-children-toggle"
	);

  const domainSubMenuToggle = true

	const menu = header.querySelector(".nav-menu");
	const vacancyOverviewFilters =
		document.querySelector(".form-filters");
	const closeMenu = header.querySelector(
		".close-menu .close-icon svg"
	);

	const headerItemWithDropdowns = header.querySelectorAll(
			".header-item-with-dropdown"
	);



	[...headerItemWithDropdowns].map((headerItemWithDropdown) => {
		if (window.innerWidth >= 992) {
			headerItemWithDropdown.addEventListener("click", (event) => {
				const withToggle = event.currentTarget.querySelector(".header-item-with-dropdown-toggle");
				withToggle.classList.toggle("is-open");
				event.currentTarget.blur();
			});
			document.addEventListener("click", (event) => {
				const linkLabel = headerItemWithDropdown.querySelector(".link-label")
				if (event.target !== linkLabel) {
					const withToggle = headerItemWithDropdown.querySelector(".header-item-with-dropdown-toggle");
					withToggle.classList.remove("is-open");
				}
			});
		}
		headerItemWithDropdown.addEventListener("focus", (event) => {
			event.target.classList.add("has-submenu-focus");

			document.addEventListener("click", function(event) {
				if (event.target !== headerItemWithDropdown) {
					headerItemWithDropdown.classList.remove("has-submenu-focus");
				}
			});
		});

		headerItemWithDropdown.addEventListener("keydown", function(event) {
				if (event.key === "Tab" && event.shiftKey && event.target === headerItemWithDropdown) {
					headerItemWithDropdown.classList.remove("has-submenu-focus");
				};
		});

		const dropdownMenuItems = headerItemWithDropdown.querySelectorAll(
			".dropdown-menu .dropdown-menu-item .link"
		);

		dropdownMenuItems &&
			[...dropdownMenuItems].map((dropdownMenuItem) => {
				dropdownMenuItem.addEventListener("focus", (event) => {
					headerItemWithDropdown.classList.add("has-submenu-focus");
				});

				dropdownMenuItem.addEventListener("blur", (event) => {
					const lastElementOfSubMenu = findLastNestedElement(headerItemWithDropdown);
					checkIfLast(event.target, lastElementOfSubMenu, headerItemWithDropdown);
				});

			});
	});

	function checkIfLast(element, elementOfSubMenu, headerItemWithDropdown) {
		if (element === elementOfSubMenu) {
			headerItemWithDropdown.classList.remove("has-submenu-focus");
		};
	}

	function findLastNestedElement(element) {
			const children = element.children;

			if (children.length === 0) {
				return element;
			} else {
				const lastChild = children[children.length - 1];
				return findLastNestedElement(lastChild);
			}
	}

	const checkForMobile = window.matchMedia(
		"(max-width: 992px)"
	);

	const onScroll = function onScroll(event) {
		if (window.pageYOffset > header.clientHeight) {
			header.classList.add("header-sm");
			vacancyOverviewFilters &&
				vacancyOverviewFilters.classList.add("header-sm");
		} else {
			header.classList.remove("header-sm");
			vacancyOverviewFilters &&
				vacancyOverviewFilters.classList.remove(
					"header-sm"
				);
		}
	};

  // We would prefer to define onScroll inline, but JavaScript does not allow inline ifs
  window.addEventListener("scroll", onScroll);

	if (window.innerWidth <= 992) {
		toggle &&
			toggle.addEventListener("click", (event) => {
				toggle.classList.toggle("is-open");
				menu.classList.toggle("is-open");
				body.classList.toggle("no-scroll");
			});

		navLinks &&
			domainSubMenuToggle &&
			[...navLinks].map((navLink) => {
				navLink.addEventListener("click", (event) => {
					event.preventDefault();
					event.target
						.closest(".nav-dropdown")
						.classList.toggle("is-open");
				});
			});

		closeMenu &&
			closeMenu.addEventListener("click", (event) => {
				closeMenu.classList.toggle("is-open");
				toggle && toggle.classList.remove("is-open");
				menu && menu.classList.remove("is-open");
				body && body.classList.remove("no-scroll");
			});

		headerItemWithDropdownToggles &&
			domainSubMenuToggle &&
			[...headerItemWithDropdownToggles].map(
				(headerItemWithDropdownToggle) => {
					headerItemWithDropdownToggle.addEventListener(
						"click",
						function () {
							headerItemWithDropdownToggle.classList.toggle(
								"is-open"
							);
						}
					);
				}
			);
	}
	menuItemChildrenToggles &&
		[...menuItemChildrenToggles].map((item) => {
			item &&
				item.addEventListener("click", (event) => {
					event.target.parentNode.classList.toggle(
						"is-open"
					);
				});
		});
})();

(function allowFavorites() {
  fetch("/api/cookie-consent")
    .then((response) => response.json())
    .then((data) => {
      const favoriteToggle = document.querySelector("#favorites-page-link");
      data !== "necessary" && favoriteToggle && favoriteToggle.classList.remove("hidden");
    });
})();

(function favoritesCount() {
  fetch("/api/1/favorites")
    .then((response) => response.json())
    .then((data) => {
      const counter = document.querySelector(".link-counter");
      const span = counter && counter.querySelector("span");
      const linkFavorites = document.querySelector(".link.link-favorites");
      if (data && data.length > 0 && span) {
        counter.classList.remove("hidden");
        linkFavorites.classList.add("with-counter");
        span.textContent = data.length;
      }
    });
})();
(function () {
    var app = Elm.Form.init({
        node: document.getElementById("application-form-" + "hident3"),
        flags: {
            formEntity: {"formRequired":[[{"tag":"first-name"}],[{"tag":"phone-number"}],[{"tag":"email-address"}],[{"tag":"last-name"}]],"formLabel":"Form","formIsDefaultApplicationForm":true,"formFields":[[{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"first-name"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[],"label":[[1,""],[2,""]],"invalidError":[]}],[{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"last-name"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[],"label":[[1,""],[2,""]],"invalidError":[]}],[{"type_":{"tag":"email-address"},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"email-address"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[[1,"Vul je e-mailadres in"],[2,"Vul je e-mailadres in"]],"label":[[1,""],[2,""]],"invalidError":[]}],[{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"phone-number"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[[1,"Telefoonnummer (0612345678)"],[2,"Telefoonnummer (0612345678)"]],"label":[[1,""],[2,""]],"invalidError":[]}],[{"type_":{"tag":"file","contents":{"mimeTypes":["application/vnd.oasis.opendocument.text","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/pdf","application/x-iwork-pages-sffpages","text/plain"],"maxFileSizeInMB":30}},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"resume"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[[1,"Upload je cv"]],"label":[[1,""],[2,"Optioneel"]],"invalidError":[]}],[{"type_":{"tag":"file","contents":{"mimeTypes":["application/vnd.oasis.opendocument.text","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/pdf","application/x-iwork-pages-sffpages","text/plain"],"maxFileSizeInMB":30}},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"motivation"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[[1,"Upload je motivatie"],[2,""]],"label":[[1,""],[2,"Optioneel"]],"invalidError":[]}],[{"type_":{"tag":"checkbox"},"defaultPlaceholder":"","missingError":[],"hiddenLabel":true,"name":{"tag":"privacy"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[],"label":[],"invalidError":[]}]],"id":1,"formInserted":"2024-03-21T15:41:10.193741Z","formFormType":"job-application","formUpdated":"2024-05-16T13:50:20.2028Z"},
            translations: {"welcome-page-rule3":"Iedereen die in beeldmateriaal wordt weergegeven, gaat ermee akkoord de inhoud te delen","referral-form-matching-metadata":"Wat voor soort vacatures passen het beste bij degene die je aandraagt?","referral-thanks-description":"Bedankt voor je verwijzing! Samen met jouw hulp kunnen we blijven groeien. Jouw vertrouwen in ons wordt zeer op prijs gesteld!","house-number-placeholder":"Vul je huisnummer in","city-label":"Woonplaats","status":"Status","open-text-label":"Tekstveld","referral-form-opt-out-text":"Jammer dat je gaat","referral-form-personal-message-placeholder":"Voer een persoonlijk bericht in voor de persoon die je naar ons verwijst","submit-form-success-message":"Formulier succesvol verstuurd","motivation-label":"Upload motivatie","street-placeholder":"Vul je straatnaam in","welcome-page-intro-text":"Wij zijn zo\'n leuk en gepassioneerd merk! We willen dit graag nog meer delen met onze (s) helden die in Hunkmöller over de hele wereld winkelen! Laten we ze inspireren wat HKM betekent! Help ons om inhoud te maken die we kunnen delen op internationale platforms! We zijn super benieuwd naar je ideeën!","success-page-follow-instagram-button":"Volg HKM People Instagram-kanaal","internship-evaluation2-placeholder":"Kies bestand","referral-form-refer-someone-label":"Op welke website wil je dat de persoon die je aandraagt solliciteert?","no-uploads-found":"Geen uploads gevonden","open-checkbox-three-label":"Selectieveld (3)","referral-tool-change-filter":"Wat voor soort vacatures passen het beste bij je?","resume-label":"Upload CV","privacy-label":"Privacyverklaring","grades-master1-label":"Grades master 1","referral-form-phone-number":"Voeg telefoonnummer toe","upload-page-banner-subtitle":"Laten we gaan","address-label":"Adres","referral-form-email-placeholder":"Voer je e-mailadres in","welcome-page-rule2":"Geen enkele klanten zijn toegestaan ​​in beeldmateriaal","url-placeholder":"https://www.voorbeeld.url","grades-bachelor1-label":"Grades bachelor 1","privacy-consent-text":"Ik accepteer de","xing-url-placeholder":"https://www.xing.com/profile/username","additional-file1-label":"Upload document (1)","privacy-consent-link-text":"Privacyvoorwaarden","grades-master2-placeholder":"Kies bestand","linked-in-url-placeholder":"https://www.linkedin.com/username","privacy-link-text":"Privacyvoorwaarden","first-name-label":"Voornaam","grades-bachelor2-placeholder":"Kies bestand","internal-application-label":"Interne sollicitatie","upload-page-step1":"Stap 1","salary-indication-placeholder":"Salarisindicatie","max-request-size-exceeded-title":"Upload is te groot","success-page-back-to-upload-page-button":"Dat was leuk om het opnieuw te doen","personal-message":"Persoonlijk bericht","caption":"Ondertiteling","welcome-page-rule1":"Deel leuke en authentieke inhoud uit uw winkel-team","privacy-text":"Ik accepteer de","custom-how-did-you-get-here-select-label":"Hoe ben je hier gekomen?","open-select-option-five":"Open select optie 5","grades-bachelor2-label":"Grades bachelor 2","referral-form-banner-title":"Welkom","status-pending":"In afwachting","salary-indication-label":"Salarisindicatie","first-name-placeholder":"Vul je voornaam in","grades-master2-label":"Grades master 2","linked-in-url-label":"LinkedIn URL","phone-number-with-calling-code-label":"Telefoonnummer (landcode)","success-page-banner-title":"Ingediend!","email-address-placeholder":"hallo@example.com","referral-form-last-name-placeholder":"Voer je achternaam in","open-checkbox-three-text":"Extra checkbox 3-tekst","welcome-page-rules-title":"De basis","phone-number-label":"Telefoonnummer","internship-evaluation1-label":"Internship evaluation 1","referral-form-first-name-placeholder":"Vul je voornaam in","referral-form-intro-text":"Heb jij iemand in gedachten die perfect zou passen bij ons? Word ambassador en stuur je vriend een persoonlijke uitnodiging om bij ons te solliciteren.","open-select-option-four":"Open select optie 4","submit":"Verstuur","referral-form-first-name-label":"Voornaam","daypart-availability-description":"Dagdeel beschikbaarheid omschrijving","phone-number-with-calling-code-placeholder":"Vul je telefoonnummer in","success-page-to-my-uploads-button":"Zie alle inzendingen","no-uploads-found-description":"We konden nog geen uploads voor u vinden","newsletter-subscription-label":"Abonneren op de nieuwsbrief","open-select-option-three":"Open select optie 3","daypart-availability-label":"Dagdeel beschikbaarheid","phone-number-placeholder":"Vul je telefoonnummer in","email-address-label":"E-mailadres","referral-form-last-name-label":"Achternaam","internship-evaluation1-placeholder":"Kies bestand","resume-placeholder":"Upload CV","newsletter-subscription-text":"Abonneren op de nieuwsbrief","referral-form-filters-label":"Welke banen zijn interessant?","browse-media":"Browse media","submit-form":"Verstuur","referral-thanks":"Bedankt voor je referral!","referral-form-upload-label":"Selecteer een persoonlijke foto","screening-questions-label":"Selectie Vragen","upload-page-media-label":"Voeg je tags toe","referral-form-personal-message-label":"Persoonlijk bericht","upload-page-tags-label":"Voeg je tags toe","open-select-description":"Open select omschrijving","open-select-label":"Open select","motivation-placeholder":"Upload je motivatie","open-checkbox-four-label":"Selectieveld (4)","address-with-auto-fill-label":"Adres (met autofill)","street-label":"Straatnaam","status-approved":"Goedgekeurd","open-text-placeholder":"Tekstveld Placeholder","internship-evaluation2-label":"Internship evaluation 2","availability-label":"Beschikbaarheid (dagdeel)","welcome-page-call-to-action-button":"Dien uw inhoud in","max-request-size-exceeded-description":"Als je meerdere bestanden uploadt, probeer dan minder bestanden tegelijk te uploaden.","additional-file1-placeholder":"Kies bestand","xing-url-label":"Xing url","success-page-banner-subtitle":"Uw inhoud is","upload-page-caption-label":"(Optioneel) Heeft u suggestie voor een bijschrift om met uw inhoud te komen?","no-feedback-yet":"Nog geen feedback","open-checkbox-two-label":"Selectieveld (2)","upload-page-privacy-link-label":"Lees verder","open-checkbox-one-label":"Selectieveld (1)","grades-master1-placeholder":"Kies bestand","internal-application-text":"Ik werk hier","referral-form-email-label":"E-mail","motivation-text-area-placeholder":"Schrijf je motivatie hier","welcome-page-banner-title":"Deel je passie","url-label":"Url","grades-bachelor1-placeholder":"Kies bestand","upload-page-step2":"Stap 2","postal-code-placeholder":"Vul je postcode in","additional-file2-label":"Upload document (2)","success-page-explanation-text":"Uw inhoud is ingediend. Het wordt binnenkort gecontroleerd! Je kunt je inzendingen en hun statussen zien door op het Star-Icon te tikken! Volgende keer dat u zich aanmeldt, wordt u op de hoogte gebracht wanneer de status is gewijzigd!","click-to-remove":"Klik om te verwijderen","select-file":"Selecteer file","open-checkbox-two-text":"Extra checkbox 2 -tekst","upload-page-privacy-link-path":"","open-checkbox-one-text":"Extra checkbox 1-tekst","last-name-label":"Achternaam","date-of-birth-label":"Geboortedatum","success-page-explanation-title":"Goed gedaan!","upload-page-consent-text":"Ja, ik heb alle personen gevraagd in de geüploade inhoud voor goedkeuring van het gebruik (zorg ervoor dat u schriftelijke toestemming hebt).","open-select-option-two":"Open select optie 2","open-select-option-one":"Open select optie 1","additional-file2-placeholder":"Kies bestand","postal-code-label":"Postcode","privacy-consent-label":"Privacyverklaring","status-honors":"You rock!","last-name-placeholder":"Vul je achternaam in","status-retry":"Opnieuw proberen","house-number-label":"huisnummer","feedback":"Feedback","upload-page-step3":"Stap 3","tags":"Pagina tags","open-checkbox-four-text":"Extra checkbox 4-tekst","city-placeholder":"Vul je woonplaats in","upload-page-banner-title":"Deel uw inhoud","store-data-label":"Data langer bewaren","vacancy-description-label":"Vacature beschrijving"},
            formTypeData: {"tag":"job-application-data","contents":424},
            today: {
              now: Date.now(),
              timeZoneOffset: -(new Date().getTimezoneOffset())
            },
            buttonOverwriteText: null,
            privacyPagePath: "https://www.werkenbijnewtone.nl/privacy",
            defaultCallingCode: "netherlands",
            domainId: 1,
            schemaFields: [{"type_":{"tag":"address"},"name":{"tag":"address"},"requiredByExport":false},{"type_":{"tag":"file","contents":{"mimeTypes":["application/vnd.oasis.opendocument.text","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/pdf","application/x-iwork-pages-sffpages","text/plain"],"maxFileSizeInMB":30}},"name":{"tag":"resume"},"requiredByExport":false},{"type_":{"tag":"date","contents":{"minOffsetFromTodayInYears":-13,"maxOffsetFromTodayInYears":-70}},"name":{"tag":"date-of-birth"},"requiredByExport":false},{"type_":{"tag":"email-address"},"name":{"tag":"email-address"},"requiredByExport":true},{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"name":{"tag":"first-name"},"requiredByExport":false},{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"name":{"tag":"last-name"},"requiredByExport":true},{"type_":{"tag":"url","contents":"linked-in-url"},"name":{"tag":"linked-in-url"},"requiredByExport":false},{"type_":{"tag":"file","contents":{"mimeTypes":["application/vnd.oasis.opendocument.text","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/pdf","application/x-iwork-pages-sffpages","text/plain"],"maxFileSizeInMB":30}},"name":{"tag":"motivation"},"requiredByExport":false},{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"name":{"tag":"phone-number"},"requiredByExport":false},{"type_":{"tag":"checkbox"},"name":{"tag":"privacy"},"requiredByExport":true}],
            screeningQuestions : []
        }
    });

    app.ports.redirectTo.subscribe(function(url) {
        window.location.assign(url);
    });

    function getTrackingCode() {
        var scripts = [...document.getElementsByTagName('script')];
        var script = scripts.filter(script => script.src.includes('/gtag/js?id='))[0];
        if (script !== undefined) {
          const urlParams = new URLSearchParams(script.src);
          return urlParams.get('https://www.googletagmanager.com/gtag/js?id')
        }
    };

    function getClientID () {
      var cookie = {};
      document.cookie.split(';').forEach(function(el) {
        var splitCookie = el.split('=');
        var key = splitCookie[0].trim();
        var value = splitCookie[1];
        cookie[key] = value;
      });
      return cookie["_ga"].substring(6);
    }


    window.addEventListener("load", function () {
      // Check if GA is loaded, if so send data to elm
      (function check_ga(i) {
        if (getTrackingCode()) {
          const trackingId = getTrackingCode();
          const clientId = getClientID();
          trackingId && clientId &&
           app.ports.receiveGoogleAnalyticsInfo.send({
            trackingId: trackingId,
            clientId: clientId,
            utmCustom: "eyJkZXBhcnRtZW50IjoiIiwic2FsYXJ5IjpudWxsLCJldmVudCI6ImpvYl9kZXRhaWxzX2xvYWRlZCIsImxvY2F0aW9uLW5hbWUiOiJXYWFscmUiLCJjb250cmFjdC10eXBlIjoiVmFzdCIsImN1c3RvbS1maWx0ZXItMDEiOiJUcmFuc2ZlciBQcmljaW5nIiwiZWR1Y2F0aW9uIjoid28iLCJkaXNjaXBsaW5lIjoiQmVsYXN0aW5nYWR2aWVzIiwiY3VzdG9tLWZpbHRlci0wNiI6IiIsImV4dGVybmFsLWlkIjoiWmdGdDloUnhjS1lpUFdTOSIsImNvdW50cnkiOiJOZXRoZXJsYW5kcyIsImxvY2F0aW9uLXR5cGUiOiJFaW5kaG92ZW4gKFdhYWxyZSkiLCJob3VycyI6bnVsbCwiY3VzdG9tLWZpbHRlci0wNSI6IiIsInJlY3J1aXRlciI6IktpbSBWZXJiZWVrIiwiY3VzdG9tLWZpbHRlci0wNCI6IiIsImNpdHkiOiIiLCJqb2J0aXRsZSI6IlRyYW5zZmVyIFByaWNpbmcgU3BlY2lhbGlzdCB8IEVpbmRob3ZlbiIsInByb3ZpbmNlIjoiIiwiY3VzdG9tLWZpbHRlci0wMyI6IiIsImV4cGVyaWVuY2UiOiJKdW5pb3IiLCJmdWxsdGltZS1wYXJ0dGltZSI6IkZ1bGx0aW1lIiwiY3VzdG9tLWZpbHRlci0wMiI6IiJ9"
          });
        } else if (i <= 5) {
          setTimeout(() => check_ga(i + 1), 500);
        }
      })(1);
    });

    // If ports are unused Elm throws them away during compilation
    try {
        app.ports.logError_.subscribe(console.error);
    } catch (err) {
    }

    try {
        app.ports.logWarning_.subscribe(console.warn);
    } catch (err) {
    }

    try {
        app.ports.logInfo_.subscribe(console.info);
    } catch (err) {
    }
})();
addEventListener('DOMContentLoaded', (event) => {
  fetch("/api/token")
    .then(res => res.ok && res.json())
    .then((value) => {
      const input = document.createElement("input");

      input.setAttribute("type", "hidden");
      input.setAttribute("name", "_token");
      input.setAttribute("value", value.token);

      document.getElementById("toggle-424").appendChild(input);
    });
});

(function allowFavorites() {
	fetch("/api/cookie-consent")
		.then((response) => response.json())
		.then((data) => {
      const toggleLinks = document.querySelectorAll("#favorites-toggle-link");
      Array.from(toggleLinks).forEach((link) => {
        data !== "necessary" && link && link.classList.remove("hidden");
		  });
    })
})();

(function inFavorites() {
	fetch("/api/1/favorites")
		.then((response) => response.json())
		.then((data) => {
      const icons = document.querySelectorAll(".favorites-icon");
      Array.from(icons).forEach((icon) => {
        const emptyIcon = icon && icon.querySelector(".empty-icon");
        const filledIcon = icon && icon.querySelector(".filled-icon");
        if (data && data.includes(424) && emptyIcon && filledIcon) {
          filledIcon.classList.remove("hidden");
          emptyIcon.classList.add("hidden");
        }
      })
		});
})();
addEventListener('DOMContentLoaded', (event) => {
  fetch("/api/token")
    .then(res => res.ok && res.json())
    .then((value) => {
      const input = document.createElement("input");

      input.setAttribute("type", "hidden");
      input.setAttribute("name", "_token");
      input.setAttribute("value", value.token);

      document.getElementById("toggle-424").appendChild(input);
    });
});

(function allowFavorites() {
	fetch("/api/cookie-consent")
		.then((response) => response.json())
		.then((data) => {
      const toggleLinks = document.querySelectorAll("#favorites-toggle-link");
      Array.from(toggleLinks).forEach((link) => {
        data !== "necessary" && link && link.classList.remove("hidden");
		  });
    })
})();

(function inFavorites() {
	fetch("/api/1/favorites")
		.then((response) => response.json())
		.then((data) => {
      const icons = document.querySelectorAll(".favorites-icon");
      Array.from(icons).forEach((icon) => {
        const emptyIcon = icon && icon.querySelector(".empty-icon");
        const filledIcon = icon && icon.querySelector(".filled-icon");
        if (data && data.includes(424) && emptyIcon && filledIcon) {
          filledIcon.classList.remove("hidden");
          emptyIcon.classList.add("hidden");
        }
      })
		});
})();
(function sticky () {
  const selector = document.getElementById("hident2")
  const sticky = document.querySelectorAll(".vacancy-sticky");
  const bannerHeight = selector.querySelector(".banner-wrapper").clientHeight;

  const onScroll = function onScroll(evt) {
    if (window.pageYOffset > bannerHeight) {
      sticky.forEach((element) => {
        element.classList.add("active");
      });

    } else {
      sticky.forEach((element) => {
        element.classList.contains("active") && element.classList.remove("active");
      });
    }
  };

  window.addEventListener("scroll", onScroll, { capture: true });
})();

function stickyScrollOpenForm (uuid) {
  var selector = document.getElementById(uuid);
  var formContainer = selector.querySelector(".form-container");

  window.scrollTo({
    top: 0,
    behavior: 'smooth'
  });

  if (!formContainer.classList.contains("visible")) {
      toggleForm(uuid);
  };
}(function vacancyBackButton() {
  const element = document.getElementById("hident2");
  const vacancyBackButton = element.querySelector(".vacancy-back-button");
  const vacancyBackButtonText =
    vacancyBackButton && vacancyBackButton.querySelector(".btn-text");
  const referrer = document.referrer !== location.href && document.referrer;
  const comesFromVacancyOverview =
    referrer && referrer.includes("https://www.werkenbijnewtone.nl/vacatures");
  const comesFromCMSpage =
    referrer &&
    !comesFromVacancyOverview &&
    new URL(referrer).origin == new URL(location.href).origin;
  const comesFromVacancyDetailPage =
  referrer &&
    ((window.location.href.indexOf("solliciteer") > -1) || (window.location.href.indexOf("apply") > -1))
  vacancyBackButtonText.innerText =
    (comesFromVacancyOverview && "Terug naar alle vacatures") ||
    vacancyBackButtonText.innerText;
  vacancyBackButtonText.innerText =
    (comesFromCMSpage && "Terug naar vorige pagina") ||
    vacancyBackButtonText.innerText;
  vacancyBackButtonText.innerText =
    (comesFromVacancyDetailPage && "Terug naar vorige pagina") ||
    vacancyBackButtonText.innerText;

  function clickLogic() {
    (comesFromVacancyOverview && window.history.back()) ||
      (comesFromCMSpage && window.history.back());

    if (!comesFromCMSpage && !comesFromVacancyOverview) {
      document.location.href = "https://www.werkenbijnewtone.nl/vacatures";
    }
  }

  vacancyBackButton && vacancyBackButton.addEventListener("click", clickLogic);
})();

var body = document.querySelector("body");

function toggleForm(uuid) {
  var selector = document.getElementById(uuid);
  var formContainer = selector.querySelector(".form-container");
  var btnDisplay = selector.querySelector(".btn-display");
  formContainer.classList.toggle("visible");
  btnDisplay.classList.toggle("hidden");

  if (window.innerWidth <= 992) {
    body.classList.toggle("no-scroll");
  };
};

window.addEventListener("load", function () {
  var dataLayerObj = {"department":"","salary":null,"event":"application_form","location-name":"Waalre","contract-type":"Vast","custom-filter-01":"Transfer Pricing","education":"wo","discipline":"Belastingadvies","custom-filter-06":"","external-id":"ZgFt9hRxcKYiPWS9","country":"Netherlands","location-type":"Eindhoven (Waalre)","hours":null,"custom-filter-05":"","recruiter":"Kim Verbeek","custom-filter-04":"","city":"","jobtitle":"Transfer Pricing Specialist | Eindhoven","province":"","custom-filter-03":"","experience":"Junior","fulltime-parttime":"Fulltime","custom-filter-02":""};
  window.dataLayer = window.dataLayer || [];
  fetch(`/api/cookie-consent`)
    .then((response) => response.json())
    .then((data) => { window.dataLayer.push({...dataLayerObj, consent: data})})
    .catch(() => { window.dataLayer.push({...dataLayerObj, consent: "necessary"})});
});

window.addEventListener('DOMContentLoaded', (event) => {
  const endDates = Array.from(document.querySelectorAll(".metadata .date-metadata"));

  endDates.forEach(endDate => {
    const date = endDate.getAttribute("data-utc");

    endDate.innerHTML = formatDate(date, false);
  });
});
(function () {
    var app = Elm.Form.init({
        node: document.getElementById("application-form-" + "hident5"),
        flags: {
            formEntity: {"formRequired":[[{"tag":"first-name"}],[{"tag":"phone-number"}],[{"tag":"email-address"}],[{"tag":"last-name"}]],"formLabel":"Form","formIsDefaultApplicationForm":true,"formFields":[[{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"first-name"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[],"label":[[1,""],[2,""]],"invalidError":[]}],[{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"last-name"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[],"label":[[1,""],[2,""]],"invalidError":[]}],[{"type_":{"tag":"email-address"},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"email-address"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[[1,"Vul je e-mailadres in"],[2,"Vul je e-mailadres in"]],"label":[[1,""],[2,""]],"invalidError":[]}],[{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"phone-number"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[[1,"Telefoonnummer (0612345678)"],[2,"Telefoonnummer (0612345678)"]],"label":[[1,""],[2,""]],"invalidError":[]}],[{"type_":{"tag":"file","contents":{"mimeTypes":["application/vnd.oasis.opendocument.text","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/pdf","application/x-iwork-pages-sffpages","text/plain"],"maxFileSizeInMB":30}},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"resume"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[[1,"Upload je cv"]],"label":[[1,""],[2,"Optioneel"]],"invalidError":[]}],[{"type_":{"tag":"file","contents":{"mimeTypes":["application/vnd.oasis.opendocument.text","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/pdf","application/x-iwork-pages-sffpages","text/plain"],"maxFileSizeInMB":30}},"defaultPlaceholder":"","missingError":[],"hiddenLabel":false,"name":{"tag":"motivation"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[[1,"Upload je motivatie"],[2,""]],"label":[[1,""],[2,"Optioneel"]],"invalidError":[]}],[{"type_":{"tag":"checkbox"},"defaultPlaceholder":"","missingError":[],"hiddenLabel":true,"name":{"tag":"privacy"},"defaultMissingError":"","defaultInvalidError":"","defaultLabel":"","placeholder":[],"label":[],"invalidError":[]}]],"id":1,"formInserted":"2024-03-21T15:41:10.193741Z","formFormType":"job-application","formUpdated":"2024-05-16T13:50:20.2028Z"},
            translations: {"welcome-page-rule3":"Iedereen die in beeldmateriaal wordt weergegeven, gaat ermee akkoord de inhoud te delen","referral-form-matching-metadata":"Wat voor soort vacatures passen het beste bij degene die je aandraagt?","referral-thanks-description":"Bedankt voor je verwijzing! Samen met jouw hulp kunnen we blijven groeien. Jouw vertrouwen in ons wordt zeer op prijs gesteld!","house-number-placeholder":"Vul je huisnummer in","city-label":"Woonplaats","status":"Status","open-text-label":"Tekstveld","referral-form-opt-out-text":"Jammer dat je gaat","referral-form-personal-message-placeholder":"Voer een persoonlijk bericht in voor de persoon die je naar ons verwijst","submit-form-success-message":"Formulier succesvol verstuurd","motivation-label":"Upload motivatie","street-placeholder":"Vul je straatnaam in","welcome-page-intro-text":"Wij zijn zo\'n leuk en gepassioneerd merk! We willen dit graag nog meer delen met onze (s) helden die in Hunkmöller over de hele wereld winkelen! Laten we ze inspireren wat HKM betekent! Help ons om inhoud te maken die we kunnen delen op internationale platforms! We zijn super benieuwd naar je ideeën!","success-page-follow-instagram-button":"Volg HKM People Instagram-kanaal","internship-evaluation2-placeholder":"Kies bestand","referral-form-refer-someone-label":"Op welke website wil je dat de persoon die je aandraagt solliciteert?","no-uploads-found":"Geen uploads gevonden","open-checkbox-three-label":"Selectieveld (3)","referral-tool-change-filter":"Wat voor soort vacatures passen het beste bij je?","resume-label":"Upload CV","privacy-label":"Privacyverklaring","grades-master1-label":"Grades master 1","referral-form-phone-number":"Voeg telefoonnummer toe","upload-page-banner-subtitle":"Laten we gaan","address-label":"Adres","referral-form-email-placeholder":"Voer je e-mailadres in","welcome-page-rule2":"Geen enkele klanten zijn toegestaan ​​in beeldmateriaal","url-placeholder":"https://www.voorbeeld.url","grades-bachelor1-label":"Grades bachelor 1","privacy-consent-text":"Ik accepteer de","xing-url-placeholder":"https://www.xing.com/profile/username","additional-file1-label":"Upload document (1)","privacy-consent-link-text":"Privacyvoorwaarden","grades-master2-placeholder":"Kies bestand","linked-in-url-placeholder":"https://www.linkedin.com/username","privacy-link-text":"Privacyvoorwaarden","first-name-label":"Voornaam","grades-bachelor2-placeholder":"Kies bestand","internal-application-label":"Interne sollicitatie","upload-page-step1":"Stap 1","salary-indication-placeholder":"Salarisindicatie","max-request-size-exceeded-title":"Upload is te groot","success-page-back-to-upload-page-button":"Dat was leuk om het opnieuw te doen","personal-message":"Persoonlijk bericht","caption":"Ondertiteling","welcome-page-rule1":"Deel leuke en authentieke inhoud uit uw winkel-team","privacy-text":"Ik accepteer de","custom-how-did-you-get-here-select-label":"Hoe ben je hier gekomen?","open-select-option-five":"Open select optie 5","grades-bachelor2-label":"Grades bachelor 2","referral-form-banner-title":"Welkom","status-pending":"In afwachting","salary-indication-label":"Salarisindicatie","first-name-placeholder":"Vul je voornaam in","grades-master2-label":"Grades master 2","linked-in-url-label":"LinkedIn URL","phone-number-with-calling-code-label":"Telefoonnummer (landcode)","success-page-banner-title":"Ingediend!","email-address-placeholder":"hallo@example.com","referral-form-last-name-placeholder":"Voer je achternaam in","open-checkbox-three-text":"Extra checkbox 3-tekst","welcome-page-rules-title":"De basis","phone-number-label":"Telefoonnummer","internship-evaluation1-label":"Internship evaluation 1","referral-form-first-name-placeholder":"Vul je voornaam in","referral-form-intro-text":"Heb jij iemand in gedachten die perfect zou passen bij ons? Word ambassador en stuur je vriend een persoonlijke uitnodiging om bij ons te solliciteren.","open-select-option-four":"Open select optie 4","submit":"Verstuur","referral-form-first-name-label":"Voornaam","daypart-availability-description":"Dagdeel beschikbaarheid omschrijving","phone-number-with-calling-code-placeholder":"Vul je telefoonnummer in","success-page-to-my-uploads-button":"Zie alle inzendingen","no-uploads-found-description":"We konden nog geen uploads voor u vinden","newsletter-subscription-label":"Abonneren op de nieuwsbrief","open-select-option-three":"Open select optie 3","daypart-availability-label":"Dagdeel beschikbaarheid","phone-number-placeholder":"Vul je telefoonnummer in","email-address-label":"E-mailadres","referral-form-last-name-label":"Achternaam","internship-evaluation1-placeholder":"Kies bestand","resume-placeholder":"Upload CV","newsletter-subscription-text":"Abonneren op de nieuwsbrief","referral-form-filters-label":"Welke banen zijn interessant?","browse-media":"Browse media","submit-form":"Verstuur","referral-thanks":"Bedankt voor je referral!","referral-form-upload-label":"Selecteer een persoonlijke foto","screening-questions-label":"Selectie Vragen","upload-page-media-label":"Voeg je tags toe","referral-form-personal-message-label":"Persoonlijk bericht","upload-page-tags-label":"Voeg je tags toe","open-select-description":"Open select omschrijving","open-select-label":"Open select","motivation-placeholder":"Upload je motivatie","open-checkbox-four-label":"Selectieveld (4)","address-with-auto-fill-label":"Adres (met autofill)","street-label":"Straatnaam","status-approved":"Goedgekeurd","open-text-placeholder":"Tekstveld Placeholder","internship-evaluation2-label":"Internship evaluation 2","availability-label":"Beschikbaarheid (dagdeel)","welcome-page-call-to-action-button":"Dien uw inhoud in","max-request-size-exceeded-description":"Als je meerdere bestanden uploadt, probeer dan minder bestanden tegelijk te uploaden.","additional-file1-placeholder":"Kies bestand","xing-url-label":"Xing url","success-page-banner-subtitle":"Uw inhoud is","upload-page-caption-label":"(Optioneel) Heeft u suggestie voor een bijschrift om met uw inhoud te komen?","no-feedback-yet":"Nog geen feedback","open-checkbox-two-label":"Selectieveld (2)","upload-page-privacy-link-label":"Lees verder","open-checkbox-one-label":"Selectieveld (1)","grades-master1-placeholder":"Kies bestand","internal-application-text":"Ik werk hier","referral-form-email-label":"E-mail","motivation-text-area-placeholder":"Schrijf je motivatie hier","welcome-page-banner-title":"Deel je passie","url-label":"Url","grades-bachelor1-placeholder":"Kies bestand","upload-page-step2":"Stap 2","postal-code-placeholder":"Vul je postcode in","additional-file2-label":"Upload document (2)","success-page-explanation-text":"Uw inhoud is ingediend. Het wordt binnenkort gecontroleerd! Je kunt je inzendingen en hun statussen zien door op het Star-Icon te tikken! Volgende keer dat u zich aanmeldt, wordt u op de hoogte gebracht wanneer de status is gewijzigd!","click-to-remove":"Klik om te verwijderen","select-file":"Selecteer file","open-checkbox-two-text":"Extra checkbox 2 -tekst","upload-page-privacy-link-path":"","open-checkbox-one-text":"Extra checkbox 1-tekst","last-name-label":"Achternaam","date-of-birth-label":"Geboortedatum","success-page-explanation-title":"Goed gedaan!","upload-page-consent-text":"Ja, ik heb alle personen gevraagd in de geüploade inhoud voor goedkeuring van het gebruik (zorg ervoor dat u schriftelijke toestemming hebt).","open-select-option-two":"Open select optie 2","open-select-option-one":"Open select optie 1","additional-file2-placeholder":"Kies bestand","postal-code-label":"Postcode","privacy-consent-label":"Privacyverklaring","status-honors":"You rock!","last-name-placeholder":"Vul je achternaam in","status-retry":"Opnieuw proberen","house-number-label":"huisnummer","feedback":"Feedback","upload-page-step3":"Stap 3","tags":"Pagina tags","open-checkbox-four-text":"Extra checkbox 4-tekst","city-placeholder":"Vul je woonplaats in","upload-page-banner-title":"Deel uw inhoud","store-data-label":"Data langer bewaren","vacancy-description-label":"Vacature beschrijving"},
            formTypeData: {"tag":"job-application-data","contents":424},
            today: {
              now: Date.now(),
              timeZoneOffset: -(new Date().getTimezoneOffset())
            },
            buttonOverwriteText: null,
            privacyPagePath: "https://www.werkenbijnewtone.nl/privacy",
            defaultCallingCode: "netherlands",
            domainId: 1,
            schemaFields: [{"type_":{"tag":"address"},"name":{"tag":"address"},"requiredByExport":false},{"type_":{"tag":"file","contents":{"mimeTypes":["application/vnd.oasis.opendocument.text","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/pdf","application/x-iwork-pages-sffpages","text/plain"],"maxFileSizeInMB":30}},"name":{"tag":"resume"},"requiredByExport":false},{"type_":{"tag":"date","contents":{"minOffsetFromTodayInYears":-13,"maxOffsetFromTodayInYears":-70}},"name":{"tag":"date-of-birth"},"requiredByExport":false},{"type_":{"tag":"email-address"},"name":{"tag":"email-address"},"requiredByExport":true},{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"name":{"tag":"first-name"},"requiredByExport":false},{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"name":{"tag":"last-name"},"requiredByExport":true},{"type_":{"tag":"url","contents":"linked-in-url"},"name":{"tag":"linked-in-url"},"requiredByExport":false},{"type_":{"tag":"file","contents":{"mimeTypes":["application/vnd.oasis.opendocument.text","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/pdf","application/x-iwork-pages-sffpages","text/plain"],"maxFileSizeInMB":30}},"name":{"tag":"motivation"},"requiredByExport":false},{"type_":{"tag":"text","contents":{"maxLength":100,"minLength":0}},"name":{"tag":"phone-number"},"requiredByExport":false},{"type_":{"tag":"checkbox"},"name":{"tag":"privacy"},"requiredByExport":true}],
            screeningQuestions : []
        }
    });

    app.ports.redirectTo.subscribe(function(url) {
        window.location.assign(url);
    });

    function getTrackingCode() {
        var scripts = [...document.getElementsByTagName('script')];
        var script = scripts.filter(script => script.src.includes('/gtag/js?id='))[0];
        if (script !== undefined) {
          const urlParams = new URLSearchParams(script.src);
          return urlParams.get('https://www.googletagmanager.com/gtag/js?id')
        }
    };

    function getClientID () {
      var cookie = {};
      document.cookie.split(';').forEach(function(el) {
        var splitCookie = el.split('=');
        var key = splitCookie[0].trim();
        var value = splitCookie[1];
        cookie[key] = value;
      });
      return cookie["_ga"].substring(6);
    }


    window.addEventListener("load", function () {
      // Check if GA is loaded, if so send data to elm
      (function check_ga(i) {
        if (getTrackingCode()) {
          const trackingId = getTrackingCode();
          const clientId = getClientID();
          trackingId && clientId &&
           app.ports.receiveGoogleAnalyticsInfo.send({
            trackingId: trackingId,
            clientId: clientId,
            utmCustom: "eyJkZXBhcnRtZW50IjoiIiwic2FsYXJ5IjpudWxsLCJldmVudCI6ImpvYl9kZXRhaWxzX2xvYWRlZCIsImxvY2F0aW9uLW5hbWUiOiJXYWFscmUiLCJjb250cmFjdC10eXBlIjoiVmFzdCIsImN1c3RvbS1maWx0ZXItMDEiOiJUcmFuc2ZlciBQcmljaW5nIiwiZWR1Y2F0aW9uIjoid28iLCJkaXNjaXBsaW5lIjoiQmVsYXN0aW5nYWR2aWVzIiwiY3VzdG9tLWZpbHRlci0wNiI6IiIsImV4dGVybmFsLWlkIjoiWmdGdDloUnhjS1lpUFdTOSIsImNvdW50cnkiOiJOZXRoZXJsYW5kcyIsImxvY2F0aW9uLXR5cGUiOiJFaW5kaG92ZW4gKFdhYWxyZSkiLCJob3VycyI6bnVsbCwiY3VzdG9tLWZpbHRlci0wNSI6IiIsInJlY3J1aXRlciI6IktpbSBWZXJiZWVrIiwiY3VzdG9tLWZpbHRlci0wNCI6IiIsImNpdHkiOiIiLCJqb2J0aXRsZSI6IlRyYW5zZmVyIFByaWNpbmcgU3BlY2lhbGlzdCB8IEVpbmRob3ZlbiIsInByb3ZpbmNlIjoiIiwiY3VzdG9tLWZpbHRlci0wMyI6IiIsImV4cGVyaWVuY2UiOiJKdW5pb3IiLCJmdWxsdGltZS1wYXJ0dGltZSI6IkZ1bGx0aW1lIiwiY3VzdG9tLWZpbHRlci0wMiI6IiJ9"
          });
        } else if (i <= 5) {
          setTimeout(() => check_ga(i + 1), 500);
        }
      })(1);
    });

    // If ports are unused Elm throws them away during compilation
    try {
        app.ports.logError_.subscribe(console.error);
    } catch (err) {
    }

    try {
        app.ports.logWarning_.subscribe(console.warn);
    } catch (err) {
    }

    try {
        app.ports.logInfo_.subscribe(console.info);
    } catch (err) {
    }
})();
addEventListener('DOMContentLoaded', (event) => {
  fetch("/api/token")
    .then(res => res.ok && res.json())
    .then((value) => {
      const input = document.createElement("input");

      input.setAttribute("type", "hidden");
      input.setAttribute("name", "_token");
      input.setAttribute("value", value.token);

      document.getElementById("toggle-424").appendChild(input);
    });
});

(function allowFavorites() {
	fetch("/api/cookie-consent")
		.then((response) => response.json())
		.then((data) => {
      const toggleLinks = document.querySelectorAll("#favorites-toggle-link");
      Array.from(toggleLinks).forEach((link) => {
        data !== "necessary" && link && link.classList.remove("hidden");
		  });
    })
})();

(function inFavorites() {
	fetch("/api/1/favorites")
		.then((response) => response.json())
		.then((data) => {
      const icons = document.querySelectorAll(".favorites-icon");
      Array.from(icons).forEach((icon) => {
        const emptyIcon = icon && icon.querySelector(".empty-icon");
        const filledIcon = icon && icon.querySelector(".filled-icon");
        if (data && data.includes(424) && emptyIcon && filledIcon) {
          filledIcon.classList.remove("hidden");
          emptyIcon.classList.add("hidden");
        }
      })
		});
})();
addEventListener('DOMContentLoaded', (event) => {
  fetch("/api/token")
    .then(res => res.ok && res.json())
    .then((value) => {
      const input = document.createElement("input");

      input.setAttribute("type", "hidden");
      input.setAttribute("name", "_token");
      input.setAttribute("value", value.token);

      document.getElementById("toggle-424").appendChild(input);
    });
});

(function allowFavorites() {
	fetch("/api/cookie-consent")
		.then((response) => response.json())
		.then((data) => {
      const toggleLinks = document.querySelectorAll("#favorites-toggle-link");
      Array.from(toggleLinks).forEach((link) => {
        data !== "necessary" && link && link.classList.remove("hidden");
		  });
    })
})();

(function inFavorites() {
	fetch("/api/1/favorites")
		.then((response) => response.json())
		.then((data) => {
      const icons = document.querySelectorAll(".favorites-icon");
      Array.from(icons).forEach((icon) => {
        const emptyIcon = icon && icon.querySelector(".empty-icon");
        const filledIcon = icon && icon.querySelector(".filled-icon");
        if (data && data.includes(424) && emptyIcon && filledIcon) {
          filledIcon.classList.remove("hidden");
          emptyIcon.classList.add("hidden");
        }
      })
		});
})();
(function sticky () {
  const selector = document.getElementById("hident4")
  const sticky = document.querySelectorAll(".vacancy-sticky");
  const bannerHeight = selector.querySelector(".banner-wrapper").clientHeight;

  const onScroll = function onScroll(evt) {
    if (window.pageYOffset > bannerHeight) {
      sticky.forEach((element) => {
        element.classList.add("active");
      });

    } else {
      sticky.forEach((element) => {
        element.classList.contains("active") && element.classList.remove("active");
      });
    }
  };

  window.addEventListener("scroll", onScroll, { capture: true });
})();

function stickyScrollOpenForm (uuid) {
  var selector = document.getElementById(uuid);
  var formContainer = selector.querySelector(".form-container");

  window.scrollTo({
    top: 0,
    behavior: 'smooth'
  });

  if (!formContainer.classList.contains("visible")) {
      toggleForm(uuid);
  };
}(function vacancyBackButton() {
  const element = document.getElementById("hident4");
  const vacancyBackButton = element.querySelector(".vacancy-back-button");
  const vacancyBackButtonText =
    vacancyBackButton && vacancyBackButton.querySelector(".btn-text");
  const referrer = document.referrer !== location.href && document.referrer;
  const comesFromVacancyOverview =
    referrer && referrer.includes("https://www.werkenbijnewtone.nl/vacatures");
  const comesFromCMSpage =
    referrer &&
    !comesFromVacancyOverview &&
    new URL(referrer).origin == new URL(location.href).origin;
  const comesFromVacancyDetailPage =
  referrer &&
    ((window.location.href.indexOf("solliciteer") > -1) || (window.location.href.indexOf("apply") > -1))
  vacancyBackButtonText.innerText =
    (comesFromVacancyOverview && "Terug naar alle vacatures") ||
    vacancyBackButtonText.innerText;
  vacancyBackButtonText.innerText =
    (comesFromCMSpage && "Terug naar vorige pagina") ||
    vacancyBackButtonText.innerText;
  vacancyBackButtonText.innerText =
    (comesFromVacancyDetailPage && "Terug naar vorige pagina") ||
    vacancyBackButtonText.innerText;

  function clickLogic() {
    (comesFromVacancyOverview && window.history.back()) ||
      (comesFromCMSpage && window.history.back());

    if (!comesFromCMSpage && !comesFromVacancyOverview) {
      document.location.href = "https://www.werkenbijnewtone.nl/vacatures";
    }
  }

  vacancyBackButton && vacancyBackButton.addEventListener("click", clickLogic);
})();

var body = document.querySelector("body");

function toggleForm(uuid) {
  var selector = document.getElementById(uuid);
  var formContainer = selector.querySelector(".form-container");
  var btnDisplay = selector.querySelector(".btn-display");
  formContainer.classList.toggle("visible");
  btnDisplay.classList.toggle("hidden");

  if (window.innerWidth <= 992) {
    body.classList.toggle("no-scroll");
  };
};

window.addEventListener("load", function () {
  var dataLayerObj = {"department":"","salary":null,"event":"application_form","location-name":"Waalre","contract-type":"Vast","custom-filter-01":"Transfer Pricing","education":"wo","discipline":"Belastingadvies","custom-filter-06":"","external-id":"ZgFt9hRxcKYiPWS9","country":"Netherlands","location-type":"Eindhoven (Waalre)","hours":null,"custom-filter-05":"","recruiter":"Kim Verbeek","custom-filter-04":"","city":"","jobtitle":"Transfer Pricing Specialist | Eindhoven","province":"","custom-filter-03":"","experience":"Junior","fulltime-parttime":"Fulltime","custom-filter-02":""};
  window.dataLayer = window.dataLayer || [];
  fetch(`/api/cookie-consent`)
    .then((response) => response.json())
    .then((data) => { window.dataLayer.push({...dataLayerObj, consent: data})})
    .catch(() => { window.dataLayer.push({...dataLayerObj, consent: "necessary"})});
});

window.addEventListener('DOMContentLoaded', (event) => {
  const endDates = Array.from(document.querySelectorAll(".metadata .date-metadata"));

  endDates.forEach(endDate => {
    const date = endDate.getAttribute("data-utc");

    endDate.innerHTML = formatDate(date, false);
  });
});
(function () {
    var app = Elm.Slider.init({
        node: document.getElementById("content-slider-hident6"),
        flags: {
            slider: {"tag":"content-slider","contents":[{"content":[{"tag":"heading","contents":{"color":"background-dependent","size":3,"text":"Dit is Newtone","align":"left"}},{"tag":"spacer","contents":{"size":{"tag":"size-small"}}},{"tag":"plain-text","contents":{"color":"background-dependent","text":"Als advies- en accountantskantoor zijn wij er voor ondernemend Nederland. Voor de toekomstmakers: onze klanten en onze professionals. Join the team!","align":"left"}}],"maxWidth":false,"align":"vertical-align-top"},{"content":[{"tag":"heading","contents":{"color":"background-dependent","size":3,"text":"Informele werksfeer","align":"left"}},{"tag":"spacer","contents":{"size":{"tag":"size-small"}}},{"tag":"plain-text","contents":{"color":"background-dependent","text":"Hier kun je ontspannen werken in een platte, open sfeer zonder pakkencultuur.\u0026nbsp; In een hecht team met alle ruimte voor jouw inbreng.","align":"left"}}],"maxWidth":false,"align":"vertical-align-top"},{"content":[{"tag":"heading","contents":{"color":"background-dependent","size":3,"text":"Jouw welzijn is belangrijk","align":"left"}},{"tag":"spacer","contents":{"size":{"tag":"size-small"}}},{"tag":"plain-text","contents":{"color":"background-dependent","text":"Ontdek Open Up, ons online platform met tools rondom mentaal welzijn, en investeer in jouw gezondheid.","align":"left"}}],"maxWidth":false,"align":"vertical-align-top"},{"content":[{"tag":"heading","contents":{"color":"background-dependent","size":3,"text":"Voel je thuis","align":"left"}},{"tag":"spacer","contents":{"size":{"tag":"size-small"}}},{"tag":"plain-text","contents":{"color":"background-dependent","text":"Met 13 vestigingen verspreid over Brabant, Limburg en de Randstad ben je vrij om te werken op de locatie die bij jou past. Wij zorgen ervoor dat jij je thuis voelt!","align":"left"}}],"maxWidth":false,"align":"vertical-align-top"},{"content":[{"tag":"heading","contents":{"color":"background-dependent","size":3,"text":"Positieve toekomst","align":"left"}},{"tag":"spacer","contents":{"size":{"tag":"size-small"}}},{"tag":"plain-text","contents":{"color":"background-dependent","text":"Wij zijn ervan overtuigd dat ondernemerschap, de \u003ci\u003ecan-do\u003c/i\u003e mentaliteit, leidt tot een positieve toekomst. Sluit jij je bij ons aan?","align":"left"}}],"maxWidth":false,"align":"vertical-align-top"}]},
            sliderType: "in-fours",
            windowWidth: window.innerWidth,
            infinity: false,
            project: "new-tone"
        }
    });
})();
(function () {
    var app = Elm.Slider.init({
        node: document.getElementById("application-procedure-" + "hident7"),
        flags: {
            slider: {"tag":"application-procedure-slider","contents":[{"icon":"/static/uploads/57-windows-newtone.svg","title":"Solliciteren","description":"Solliciteer via de \'Solliciteer direct\'-knop op deze pagina. Wij hechten waarde aan diversiteit en verwelkomen daarom alle sollicitaties ongeacht geslacht, nationaliteit, etnische en sociale afkomst, religie/geloof, handicap, leeftijd, seksuele geaardheid en identiteit. ","maskColor":"no-mask"},{"icon":"/static/uploads/57-windows-newtone.svg","title":"Kennismakingsgesprek","description":"Zien we een mogelijke match tussen jou, de vacature en onze organisatie? Dan nodigen we je uit voor een gesprek, bij voorkeur fysiek op één van onze vestigingen. We bespreken wie je bent en wat jou drijft. En we vertellen meer over de functie, de afdeling en de verantwoordelijkheden.","maskColor":"no-mask"},{"icon":"/static/uploads/57-windows-newtone.svg","title":"Tweede gesprek","description":"Je maakt kennis met een professional uit de praktijk. We gaan dieper in op de inhoud: op de functie, het team en jouw talenten en wensen. Ook kun je tijdens dit gesprek nog een keer goed sfeerproeven op de vestiging waar je hebt gesolliciteerd.","maskColor":"no-mask"},{"icon":"/static/uploads/57-windows-newtone.svg","title":"Het voorstel","description":"Hebben we allebei een goed gevoel na de twee gesprekken? Dan ontvang je een arbeidsvoorwaardenvoorstel per e-mail. Komen we er samen uit, dan sturen we je de uitwerking hiervan in de vorm van een arbeidscontract. In de tussentijd kun jij alvast je VOG (Verklaring Omtrent Gedrag) opvragen.","maskColor":"no-mask"},{"icon":"/static/uploads/57-windows-newtone.svg","title":"Gefeliciteerd!","description":"Arbeidscontract ondertekend? Gefeliciteerd met je nieuwe baan en welkom bij de club!","maskColor":"no-mask"}]},
            sliderType : "in-fours",
            windowWidth: window.innerWidth,
            infinity: false,
            project: "new-tone"
        }
    });
})();
(function () {
    var app = Elm.Slider.init({
        node: document.getElementById("application-procedure-" + "hident8"),
        flags: {
            slider: {"tag":"application-procedure-slider","contents":[{"icon":"/static/uploads/57-windows-newtone.svg","title":"Solliciteren","description":"Solliciteer via de \'Solliciteer direct\'-knop op deze pagina. Wij hechten waarde aan diversiteit en verwelkomen daarom alle sollicitaties ongeacht geslacht, nationaliteit, etnische en sociale afkomst, religie/geloof, handicap, leeftijd, seksuele geaardheid en identiteit. ","maskColor":"no-mask"},{"icon":"/static/uploads/57-windows-newtone.svg","title":"Kennismakingsgesprek","description":"Zien we een mogelijke match tussen jou, de vacature en onze organisatie? Dan nodigen we je uit voor een gesprek, bij voorkeur fysiek op één van onze vestigingen. We bespreken wie je bent en wat jou drijft. En we vertellen meer over de functie, de afdeling en de verantwoordelijkheden.","maskColor":"no-mask"},{"icon":"/static/uploads/57-windows-newtone.svg","title":"Tweede gesprek","description":"Je maakt kennis met een professional uit de praktijk. We gaan dieper in op de inhoud: op de functie, het team en jouw talenten en wensen. Ook kun je tijdens dit gesprek nog een keer goed sfeerproeven op de vestiging waar je hebt gesolliciteerd.","maskColor":"no-mask"},{"icon":"/static/uploads/57-windows-newtone.svg","title":"Het voorstel","description":"Hebben we allebei een goed gevoel na de twee gesprekken? Dan ontvang je een arbeidsvoorwaardenvoorstel per e-mail. Komen we er samen uit, dan sturen we je de uitwerking hiervan in de vorm van een arbeidscontract. In de tussentijd kun jij alvast je VOG (Verklaring Omtrent Gedrag) opvragen.","maskColor":"no-mask"},{"icon":"/static/uploads/57-windows-newtone.svg","title":"Gefeliciteerd!","description":"Arbeidscontract ondertekend? Gefeliciteerd met je nieuwe baan en welkom bij de club!","maskColor":"no-mask"}]},
            sliderType : "in-fours",
            windowWidth: window.innerWidth,
            infinity: false,
            project: "new-tone"
        }
    });
})();
