import './ihk-switch.scss'; import $ from 'jquery'; import {createElement} from "../../_global/scripts/helpers"; import IHKSwitch from "./ihk-switch"; import {createButton} from "../../atoms/button/ButtonComponent"; import {createInputText} from "../../atoms/input-text/InputTextComponent"; import {createSearchButton} from "../../atoms/search-button/SearchButtonComponent"; const Cookies = require('js-cookie'); export const createIhkSwitch = ({ currentIHK = 'Musterstadt', myIHK = 'Hamburg', zip = false, zipPlaceholder = 'z.B. 20146 Hamburg' }) => { const wrap = createElement('div', ['ihk-switch']); const step1 = createElement('div', ['step'], null, wrap); if (!zip) { const step2 = createElement('div', ['step'], null, wrap); const step3 = createElement('div', ['step'], null, wrap); const p1 = 'Sie befinden sich auf der Seite der ' + currentIHK + '. Möchten Sie diese Seite in einem Cookie als Ihre Heimat-IHK setzen?'; const p2 = 'Sie befinden sich auf der Seite der ' + currentIHK + '. Bisher ist die ' + myIHK + ' als Ihre Heimat-IHK hinterlegt. Wollen Sie die Seite der ' + currentIHK + ' in einem Cookie als Ihre neue Heimat-IHK setzen?'; const p3 = 'Sie werden zum Angebot der ' + myIHK + ' weitergeleitet.'; const closer = createElement('button', ['closer'], null, wrap); closer.ariaLabel = 'Schließen'; wrap.appendChild(closer); step1.dataset.step = 'form'; createElement('p', [], p1, step1); step1.appendChild(buildButtons()); step2.dataset.step = 'switch'; createElement('p', [], p2, step2); step2.appendChild(buildButtons()); step3.dataset.step = 'success'; createElement('p', [], p3, step3); window.sessionStorage.removeItem('my-ihk-ignore'); Cookies.remove('my-ihk', {expires: 365}); } else { const p1 = 'Geben Sie Ihre Postleitzahl ein, um zu dem Angebot Ihrer IHK zu gelangen:'; const closer = createElement('button', ['closer'], null, wrap); closer.ariaLabel = 'Schließen'; wrap.appendChild(closer); step1.dataset.step = 'zip'; createElement('p', [], p1, step1); const inputWrapper = createElement('div', ['input-wrapper'], null, step1); inputWrapper.appendChild(createInputText({ placeholder: zipPlaceholder, isRequired: true, id: 'switch-zip', name: 'switch-zip', })); inputWrapper.appendChild(createButton({ label: '', link: '#', iconPosition: 'icon-inline', icon: 'lokalisierung', })); step1.appendChild(buildOKButton()); } $(document).ready(() => { new IHKSwitch($(wrap)); }) return wrap; } const buildButtons = () => { const buttons = createElement('div', ['buttons']); const yes = createButton({ elementType: 'button', label: 'Ja', color: 'primary-extra-light', }) const no = createButton({ elementType: 'button', label: 'Nein', color: 'primary-extra-light', }) yes.classList.add('stay-here'); no.classList.add('set-session-cookie'); buttons.appendChild(yes); buttons.appendChild(no); return buttons; } const buildOKButton = () => { const buttons = createElement('div', ['buttons', 'align-right']); const ok = createButton({ elementType: 'button', label: 'OK', color: 'secondary', icon: 'check', iconPosition: 'icon-right' }) ok.classList.add('stay-here'); buttons.appendChild(ok); return buttons; }