var DHC_LG={Amazon:[581,"amazon",0],eBay:[582,"ebay",0],OTTO:[583,"otto",0],Kaufland:[584,"kaufland",2],Shopify:[585,"shopify",0],PrestaShop:[586,"prestashop",2]};function dhcChip(n,c,st){var l=DHC_LG[n],s=st?' style="'+st+'"':'';if(!l)return '
'+n+'
';var q=l[2];return '
'+(q===1?'':n)+''+(q===1?''+n+'':'')+'
'} window.DHC_LP=(location.pathname.match(/^\/(en|de|fr|es|it|pl|nl|ar|cs_CZ|ro|tr|pt|sv|da_DK|hu|el_GR|fi|zh_CN|ja|ko_KR)(?=\/|$)/)||[""])[0]; const ICONS={search:'',store:'',erp:'',truck:'',sparkle:'',coins:'',scale:'',trend:'',users:'',plug:'',briefcase:'',chat:'',arrow:'',check:'',x:'',menu:'',chevron:'',warehouse:'',box:'',ret:'',route:'',star:'',tag:'',server:'',calendar:'',book:'',compass:'',target:'',shield:'',bolt:'',lock:'',user:'',bookmark:'',grid:'',mail:'',help:'',sync:'',file:'',globe:'',layers:'',sliders:'',chart:'',link:'',code:'',headset:'',image:'',info:''},ic=(e,t="")=>``,esc=e=>String(null==e?"":e).replace(/[&<>"']/g,e=>({"&":"&","<":"<",">":">",'"':""","'":"'"}[e])),$=(e,t=document)=>t.querySelector(e),$$=(e,t=document)=>Array.from(t.querySelectorAll(e)),mem={},store={get(e,t){try{const t=localStorage.getItem("dhc_"+e);if(null!==t)return JSON.parse(t)}catch(e){}return e in mem?mem[e]:t},set(e,t){mem[e]=t;try{localStorage.setItem("dhc_"+e,JSON.stringify(t))}catch(e){}},del(e){delete mem[e];try{localStorage.removeItem("dhc_"+e)}catch(e){}}},S={user:store.get("user",null),requests:store.get("requests",[]),saved:store.get("saved",[]),users:store.get("users",[])},btn=(e,t,s="btn-primary",a="")=>`${t}${a?ic(a):""}`,alink=(e,t)=>`${t}${ic("arrow")}`,secHead=(e,t,s)=>`
${e?`${e}`:""}

${t}

${s?`

${s}

`:""}
`,ph=(e,t="r43",s="image",a="Image placeholder")=>``,devnote=e=>"",checks=(e,t="")=>`
    ${e.map(e=>`
  • ${ic("check")}${e}
  • `).join("")}
`,faq=e=>`
${e.map(([e,t])=>`
${e}${ic("chevron")}

${t}

`).join("")}
`,iconCard=(e,t,s,a,n)=>`<${a?`a href="${a}"`:"div"} class="card ${a?"":"hover"}">
${ic(e)}

${t}

${s}

${n?`${n}${ic("arrow")}`:""}`,crumbsHtml=(e=[])=>``,pageHero=({crumbs:e=[],eyebrow:t,title:s,desc:a,actions:n="",aside:i=""})=>`
${crumbsHtml(e)}
${t?`${t}`:""}

${s}

${a}

${n?`
${n}
`:""}
${i}
`,ctaBand=(e,t,s,a)=>`

${e}

${t}

${s}${a||""}
`,section=(e,t="")=>`
${e}
`;function radial(e,t,{rx:s=35,ry:a=38}={}){const n=t.length;let i="",o="";return t.forEach((e,t)=>{const r=(360*t/n-90)*Math.PI/180,l=50+s*Math.cos(r),c=50+a*Math.sin(r);i+=``,o+=`
${ic(e[0])}${e[1]}
`}),``}const F=(e,t)=>{const s=`${e}-${t.name}`,a=t.required,n=``,i=``,o="field "+(t.full?"full":"");if("check"===t.type)return`
${i.replace(t.err||"This field is required.",t.err||"Please confirm to continue.")}
`;if("chips"===t.type)return`
${t.label} (optional)
${t.options.map(e=>``).join("")}
`;let r="";const l=`aria-describedby="${s}-e${t.hint?` ${s}-h`:""}"`;return r="select"===t.type?``:"textarea"===t.type?``:"password"===t.type?`
`:``,`
${n}${r}${t.hint?`
${t.hint}
`:""}${i}
`},COUNTRIES=["Germany","Austria","Switzerland","Netherlands","Belgium","France","Italy","Spain","Poland","Sweden","Egypt","United Kingdom","United States"],datalist=`${COUNTRIES.map(e=>``,PRIVACY='I have read and accept the Privacy Policy.';function form(e,t,s,a,{title:n="",extra:i=""}={}){return`
${s.map(t=>F(e,t)).join("")}
${i}
`}const thanks=e=>`
${ic("check")}

Thank You. Your Request Has Been Received.

${e||"Our team will review your requirements and get in touch."}

${window.DHC_LIVE?"":devnote("Preview only: nothing was sent.")}
${btn("/","Back to Home","btn-secondary")}${S.user?btn("/my/dashboard","View My Requests","btn-primary"):btn("/join","Become a Club Member (Free)","btn-primary")}
`,CATS=[{id:"marketplace",name:"Marketplace Integrations",icon:"store",desc:"Connect supported marketplaces, synchronize products and orders, and simplify multichannel operations.",cta:"Explore Marketplaces",href:"/marketplace-integrations"},{id:"erp",name:"Odoo & ERP Solutions",icon:"erp",desc:"Discover ERP implementation, migration, customization, and integration services tailored to your business.",cta:"Explore ERP Solutions",href:"/odoo-erp"},{id:"fulfillment",name:"Fulfillment & FSN",icon:"truck",desc:"Discover warehousing, fulfillment networks, shipping integrations, and logistics solutions.",cta:"Find Fulfillment Solutions",href:"/fulfillment-network"},{id:"ai",name:"AI & Business Automation",icon:"sparkle",desc:"Explore AI-powered workflows, customer support automation, and intelligent business processes.",cta:"Explore Automation",href:"/ai-automation"},{id:"finance",name:"Finance & Accounting",icon:"coins",desc:"Discover settlement automation, accounting integration, financial workflows, and receivables management services.",cta:"Explore Financial Solutions",href:"/service/finance-accounting"},{id:"legal",name:"Legal & Compliance",icon:"scale",desc:"Discover specialist partners for e-commerce legal requirements, legal texts, compliance, and related services.",cta:"Explore Legal Services",href:"/service/legal-compliance"},{id:"growth",name:"Reputation & Growth",icon:"trend",desc:"Explore review management, pricing optimization, digital marketing, SEO, and business growth services.",cta:"Explore Growth Solutions",href:"/service/reputation-management"},{id:"partners",name:"Partners & Specialized Services",icon:"users",desc:"Find specialist service providers and explore business solutions beyond software.",cta:"Explore Partner Network",href:"/partners"}],catName=e=>(CATS.find(t=>t.id===e)||{}).name||e,GOALS=["Orders","Product Upload","Inventory","Shipping","Accounting","Customer Service","Full Integration"],INDUSTRIES=["E-commerce & Retail","Wholesale & Distribution","Manufacturing","Services & Hospitality"],TYPES=["Integration","Software","Consulting & Implementation","Partner Service"],MARKETS=[{id:"amazon",name:"Amazon",type:"Marketplace",status:"ok"},{id:"ebay",name:"eBay",type:"Marketplace",status:"ok"},{id:"kaufland",name:"Kaufland",type:"Marketplace",status:"ok"},{id:"otto",name:"OTTO",type:"Marketplace",status:"ok"},{id:"shopify",name:"Shopify",type:"Online store",status:"ok"},{id:"tiktok-shop",name:"TikTok Shop",type:"Marketplace",status:"ok"},{id:"etsy",name:"Etsy",type:"Marketplace",status:"ok"},{id:"temu",name:"Temu",type:"Marketplace",status:"ok"},{id:"metro",name:"METRO",type:"Marketplace",status:"ok"},{id:"shopware",name:"Shopware",type:"Online store",status:"ok"},{id:"allegro",name:"Allegro",type:"Marketplace",status:"request"},{id:"zalando",name:"Zalando",type:"Marketplace",status:"request"},{id:"galaxus",name:"Galaxus",type:"Marketplace",status:"request"},{id:"mediamarkt",name:"MediaMarkt/Saturn",type:"Marketplace",status:"request"}],SOL=[],add=e=>SOL.push(Object.assign({platforms:[],goals:[],ind:[INDUSTRIES[0],INDUSTRIES[1]],kw:"",status:"info"},e));MARKETS.forEach(e=>add({id:"int-"+e.id,title:`Odoo + ${e.name} Integration`,cat:"marketplace",type:"Integration",desc:"ok"===e.status?`Connect ${e.name} with Odoo to bring products, orders and inventory into one operational system.`:`Interested in connecting ${e.name}? Tell us your requirements and we will review the options.`,platforms:["Odoo",e.name],goals:["Orders","Product Upload","Inventory"],kw:"connect sync marketplace channel multichannel "+e.type,href:"/integration/"+e.id,status:e.status})),[["odoo-impl","Odoo Implementation","erp","Consulting & Implementation","Set up ERP applications and business processes based on your operational requirements.",["Odoo"],["Full Integration"],"/odoo-erp","implement setup erp rollout",INDUSTRIES],["erp-int","ERP Integration","erp","Integration","Explore connections between your ERP, marketplaces, online stores, warehouses, and other platforms.",["Odoo","JTL","Microsoft Dynamics","Other ERP"],["Full Integration","Orders","Inventory"],"/odoo-erp","connect erp integrate",INDUSTRIES],["erp-mig","Migration & Modernization","erp","Consulting & Implementation","Plan a structured move from existing systems or upgrade your business environment.",["Odoo","JTL","Other ERP"],["Full Integration"],"/odoo-erp","migrate upgrade legacy move",INDUSTRIES],["odoo-cust","Odoo Customization","erp","Consulting & Implementation","Adapt modules and business workflows to your operational needs.",["Odoo"],["Full Integration"],"/odoo-erp","custom development modules",INDUSTRIES],["bpc","Business Process Consulting","erp","Consulting & Implementation","Identify inefficiencies and explore improvements to your operations.",[],["Full Integration"],"/odoo-erp","process optimize consulting",INDUSTRIES],["adlerdoo","AdlerDoo for Odoo","marketplace","Software","Commerce middleware inside Odoo for supported marketplace operations, products, orders, inventory and settlement.",["Odoo"],["Orders","Product Upload","Inventory","Accounting","Customer Service"],"/adlerdoo","adlerdoo middleware one upload commerce subscription",INDUSTRIES.slice(0,2)],["fsn","Fulfillment Service Network (FSN)","fulfillment","Partner Service","Learn about network-based fulfillment models and relevant service opportunities.",["Fulfillment Provider"],["Shipping","Orders"],"/fulfillment-network","fsn ffn fulfillment partner network warehouse logistics",INDUSTRIES.slice(0,3)],["3pl","3PL & Warehouse Integration","fulfillment","Integration","Explore connections between your business software and fulfillment providers.",["Fulfillment Provider","Odoo"],["Shipping","Inventory","Orders"],"/fulfillment-network","3pl warehouse third party logistics connect",INDUSTRIES.slice(0,3)],["shipping","Shipping & Carrier Connections","fulfillment","Integration","Discover shipping workflow and carrier integration possibilities.",["Odoo"],["Shipping"],"/fulfillment-network","carrier labels tracking dhl ups parcel",INDUSTRIES.slice(0,3)],["returns","Returns & Reverse Logistics","fulfillment","Software","Understand workflows for processing returned orders and inventory.",["Odoo"],["Orders","Inventory"],"/fulfillment-network","returns refunds reverse",INDUSTRIES.slice(0,3)],["warehousing","Warehousing, Pick, Pack & Ship","fulfillment","Partner Service","Find warehousing and order processing support that fits your volume and product range.",["Fulfillment Provider"],["Shipping","Inventory"],"/fulfillment-network","storage pick pack ship germany",INDUSTRIES.slice(0,3)],["settlement","Marketplace Settlement & Accounting","finance","Integration","Explore reconciliation and accounting processes for marketplace activity.",["Odoo","Amazon","eBay","Kaufland"],["Accounting"],"/service/finance-accounting","settlement reconciliation accounting payout bookkeeping finance",INDUSTRIES.slice(0,2)],["acc-auto","Accounting Automation","finance","Integration","Improve financial process integration and reconciliation workflows.",["Odoo"],["Accounting"],"/service/finance-accounting","accounting automate invoice workflow finance",INDUSTRIES],["debt","Debt Collection","finance","Partner Service","Explore receivables management and specialist collection services.",[],[],"/service/debt-collection","receivables collection overdue invoices",INDUSTRIES.slice(0,3)],["ai-cs","AI Customer Service","ai","Software","Explore solutions for handling customer requests and marketplace messages more efficiently.",["Odoo"],["Customer Service"],"/ai-automation","ai support helpdesk messages customer service marketplace tickets",INDUSTRIES.slice(0,2)],["ai-wf","Workflow Automation","ai","Consulting & Implementation","Reduce repetitive work with practical, well scoped automation of business processes.",[],["Full Integration"],"/ai-automation","automate workflow process repetitive",INDUSTRIES],["ai-content","Product Content Assistance (One Upload + AI)","ai","Software","Prepare product data once and publish it to supported channels with AI assistance.",["Odoo"],["Product Upload"],"/ai-automation","product content upload listing description ai one upload",INDUSTRIES.slice(0,2)],["ai-rep","Reporting & Analytics","ai","Consulting & Implementation","Improve operational visibility with clearer reporting across channels and systems.",["Odoo"],["Full Integration"],"/ai-automation","reporting analytics dashboard data",INDUSTRIES],["legal","E-commerce Legal & Compliance","legal","Partner Service","Specialist assistance with legal texts for online stores and e-commerce compliance.",[],[],"/service/legal-compliance","legal law compliance texts terms impressum gdpr",INDUSTRIES.slice(0,2)],["rep","Reputation Management","growth","Partner Service","Find services for monitoring and improving online reviews and reputation.",["Amazon","eBay"],["Customer Service"],"/service/reputation-management","reviews reputation ratings feedback",INDUSTRIES.slice(0,2)],["repr","Pricing & Repricing","growth","Integration","Discover price monitoring, pricing optimization and repricing integrations.",["Amazon","eBay","Kaufland"],["Product Upload"],"/service/repricing","repricing pricing price competitor buy box",INDUSTRIES.slice(0,2)],["mkt","Marketing & SEO","growth","Partner Service","Discover growth opportunities through marketing strategy, search optimization and e-commerce visibility.",[],[],"/service/marketing-seo","marketing seo growth ads visibility",INDUSTRIES.slice(0,2)],["host","Technical Services & Hosting","erp","Partner Service","Explore hosting, system administration, technical support and technology consulting.",["Odoo"],[],"/service/technical-hosting","hosting server admin support odoo hosting technical",INDUSTRIES],["spec","Specialized Business Services","partners","Partner Service","Cannot find your category? Submit your requirements and the Club will help you look.",[],[],"/service/specialized","other specialist custom",INDUSTRIES]].forEach(e=>add({id:e[0],title:e[1],cat:e[2],type:e[3],desc:e[4],platforms:e[5],goals:e[6],href:e[7],kw:e[8],ind:e[9]}));const STOP=new Set("a an the to for my i need want with of and in on get find help our your me we us is are can how do".split(" ")),stem=e=>e.length>=5?e.replace(/(ing|ions?|ed|es|e|s)$/,""):e;function searchSol(e){const t=e.toLowerCase().split(/[^a-z0-9+]+/).filter(e=>e.length>1&&!STOP.has(e)).map(stem);if(!e.trim())return SOL.slice();if(!t.length)return[];const s=Math.ceil(t.length/2);return SOL.map((e,s)=>{const a=e.title.toLowerCase(),n=(a+" "+e.desc+" "+e.platforms.join(" ")+" "+e.kw+" "+catName(e.cat)).toLowerCase();let i=0,o=0;return t.forEach(e=>{a.includes(e)?(i+=3,o++):n.includes(e)&&(i+=1,o++)}),{it:e,sc:i,m:o,i:s}}).filter(e=>e.m>=s).sort((e,t)=>t.sc-e.sc||e.i-t.i).map(e=>e.it)}const SERVICES=[{id:"legal-compliance",icon:"scale",title:"Legal & Compliance",short:"Explore specialist assistance with business legal requirements, legal texts, and e-commerce compliance.",who:"Online sellers and merchants who need up to date legal texts, compliance guidance, or specialist legal support.",ch:["Keeping online store legal texts current","Understanding compliance duties when selling across several channels","Finding a qualified specialist for a specific question"],cats:["Legal texts for online stores","E-commerce compliance guidance","Specialist legal consultation","Contract and terms review"],note:"Legal advice is provided only by the qualified specialist partners themselves, not by the Club."},{id:"finance-accounting",icon:"coins",title:"Finance & Accounting",short:"Discover accounting connectivity, settlement processes, bookkeeping-related integrations, and financial workflows.",who:"Merchants who want cleaner reconciliation between marketplace payouts, orders and their accounting.",ch:["Matching marketplace payouts to orders and fees","Reducing manual bookkeeping effort","Connecting sales data with accounting processes"],cats:["Marketplace settlement","Accounting integration","Bookkeeping workflows","Financial process automation"],note:""},{id:"debt-collection",icon:"file",title:"Debt Collection",short:"Explore receivables management and specialist collection services.",who:"Businesses with overdue invoices that want a structured receivables process.",ch:["Following up overdue invoices consistently","Choosing between handling in house and a specialist","Understanding collection options for cross border customers"],cats:["Receivables management","Specialist collection services","Reminder and dunning workflows"],note:"Collection services are delivered by external specialists on their own terms."},{id:"reputation-management",icon:"star",title:"Reputation Management",short:"Discover review monitoring and customer reputation services.",who:"Sellers who want to monitor and improve how customers rate them online.",ch:["Keeping track of reviews across channels","Responding to feedback in a timely way","Understanding what drives ratings"],cats:["Review monitoring","Feedback handling","Reputation improvement support"],note:""},{id:"repricing",icon:"tag",title:"Pricing & Repricing",short:"Explore price monitoring, pricing optimization, and repricing integrations.",who:"Sellers competing on price across several marketplaces.",ch:["Watching competitor prices at scale","Protecting margin while staying competitive","Connecting pricing tools with product data"],cats:["Price monitoring","Pricing optimization","Repricing integrations"],note:""},{id:"marketing-seo",icon:"trend",title:"Marketing & SEO",short:"Discover growth opportunities through marketing strategy, search optimization, and e-commerce visibility.",who:"Businesses that want more qualified visibility for their shop and listings.",ch:["Getting found beyond marketplace search","Aligning content with what buyers search for","Measuring what actually brings revenue"],cats:["Marketing strategy","Search optimization","E-commerce visibility"],note:""},{id:"technical-hosting",icon:"server",title:"Technical Services & Hosting",short:"Explore hosting, system administration, technical support, and technology consulting.",who:"Teams that prefer to hand off hosting and technical operations.",ch:["Running Odoo reliably and securely","Having technical support when something breaks","Planning upgrades and infrastructure"],cats:["Odoo hosting","System administration","Technical support","Technology consulting"],note:""},{id:"specialized",icon:"briefcase",title:"Specialized Business Services",short:"Cannot find your category? Submit your requirements to the Club.",who:"Anyone with a business need that does not fit the categories above.",ch:["Not knowing which kind of expert to look for","Needing a niche specialist","Wanting a second opinion before committing"],cats:["Custom requests","Specialist introductions"],note:""}],RESOURCES=[{id:"multichannel-checklist",title:"Multichannel Readiness Checklist",cat:"Marketplace Integrations",sum:"A practical checklist to review before you add another sales channel.",learn:["What to prepare in your product data","Which processes to align first","Questions to ask before connecting a channel"]},{id:"erp-planning-worksheet",title:"ERP Integration Planning Worksheet",cat:"Odoo & ERP",sum:"A worksheet to describe your current systems and desired workflows.",learn:["How to map systems and data flows","How to define scope","What to bring to a first consultation"]},{id:"fulfillment-briefing",title:"Fulfillment Partner Briefing Template",cat:"Fulfillment",sum:"A template to describe order volume, products and shipping needs.",learn:["Which facts providers usually ask for","How to describe your product range","How to compare offers fairly"]},{id:"settlement-basics",title:"Marketplace Settlement Basics",cat:"Finance & Accounting",sum:"An introduction to how marketplace payouts, fees and orders relate.",learn:["Typical settlement components","Where reconciliation gets difficult","Ideas for reducing manual work"]},{id:"automation-starter",title:"Where to Start with Business Automation",cat:"AI & Automation",sum:"A short guide to finding the repetitive tasks worth automating first.",learn:["How to spot good candidates","What to measure","Common pitfalls"]}],INTERESTS=["Marketplace Integrations","Odoo & ERP","Fulfillment","AI & Automation","Finance & Accounting","Business Services","Marketing & Growth"],INT2CAT={"Marketplace Integrations":"marketplace","Odoo & ERP":"erp",Fulfillment:"fulfillment","AI & Automation":"ai","Finance & Accounting":"finance","Business Services":"legal","Marketing & Growth":"growth"},CUR=["Odoo","JTL","Shopify","Shopware","Microsoft Dynamics","Other ERP"],TGT=["Amazon","eBay","Kaufland","OTTO","TikTok Shop","Fulfillment Provider","Odoo","Other"],MENU=[{label:"Explore Solutions",href:"/solutions",items:[["grid","All Solutions","Search and filter every integration and service","/solutions"],["plug","Integration Finder","See what can connect to what","/integration-finder"],["sparkle","AI & Automation","Practical automation for repetitive work","/ai-automation"],["chat","Request a Solution","Describe a challenge and ask the Club","/ask-the-club"]]},{label:"Integrations",href:"/marketplace-integrations",items:[["store","Marketplace Integrations","Amazon, eBay, Kaufland, OTTO and more","/marketplace-integrations"],["erp","Odoo & ERP Solutions","Implementation, integration, migration","/odoo-erp"],["plug","Integration Finder","Four quick steps to relevant options","/integration-finder"],["link","Request an Integration","Need a different connection?","/ask-the-club?type=marketplace"]]},{label:"Fulfillment",href:"/fulfillment-network",items:[["truck","Fulfillment & FSN","Network based fulfillment models","/fulfillment-network"],["warehouse","Warehousing & 3PL","Storage, pick, pack and ship","/fulfillment-network"],["ret","Returns Management","Reverse logistics workflows","/fulfillment-network"],["target","Find a Fulfillment Partner","Submit your requirements","/fulfillment-network?s=request"]]},{label:"Business Services",href:"/business-services",wide:!0,items:[["scale","Legal & Compliance","Legal texts and compliance","/service/legal-compliance"],["coins","Finance & Accounting","Settlement and accounting flows","/service/finance-accounting"],["file","Debt Collection","Receivables management","/service/debt-collection"],["star","Reputation Management","Review monitoring","/service/reputation-management"],["tag","Pricing & Repricing","Price monitoring and tools","/service/repricing"],["trend","Marketing & SEO","Visibility and growth","/service/marketing-seo"],["server","Technical & Hosting","Hosting and administration","/service/technical-hosting"],["briefcase","All Business Services","Browse every category","/business-services"]]},{label:"AdlerDoo",href:"/adlerdoo",items:[["layers","AdlerDoo Overview","Commerce ecosystem inside Odoo","/adlerdoo"],["coins","Plans & Pricing","Startup, Standard, Enterprise","/pricing"],["calendar","Book a Free Demo","Talk to the team","/ask-the-club?type=adlerdoo"],["sparkle","AI in AdlerDoo","Assisted support and content","/ai-automation"]]},{label:"Partners",href:"/partners",right:!0,items:[["users","Partner Network","Technology, logistics and services","/partners"],["link","Become a Partner","Contribute your expertise","/partners?s=become"]]},{label:"Pricing",href:"/pricing"},{label:"The Club",href:"/club",right:!0,items:[["users","The Club & Community","Resources, discussions, events","/club"],["user","Join Free","Create your Club account","/join"],["lock","Log In","Access your member dashboard","/login"],["chat","Ask the Club","Get guidance on a challenge","/ask-the-club"],["globe","About & Contact","Who is behind the Club","/about"]]}],pg=(e,t,s,a,n={})=>Object.assign({title:e,desc:t,html:s,mount:a},n),reqType=e=>({marketplace:"marketplace",erp:"erp",fulfillment:"fulfillment",ai:"ai",finance:"finlegal",legal:"finlegal",growth:"other",partners:"other"}[e]||"other"),statusBadge=e=>"ok"===e?`${ic("check")}Confirmed`:"request"===e?'On request':"",SUGGESTIONS=["Connect Amazon to Odoo","Find an FSN fulfillment partner","Integrate Shopify with my ERP","Automate marketplace orders","Improve accounting and settlement","Get legal support for my online business"],searchBox=(e,t="Search for an integration, service, or business solution...")=>``,suggChips=(e="Try:")=>`
${e}${SUGGESTIONS.map(e=>``).join("")}
`,solCard=e=>``,PLANS=[{id:"startup",name:"Startup",price:30,for:"For businesses starting with one marketplace.",feats:["One supported marketplace","AdlerDoo in Odoo","Order and inventory processes","Digital Holding Club access and relevant benefits","Access to explore the Fulfillment Network (FFN / FSN)"],cta:"Choose Startup"},{id:"standard",name:"Standard",price:99,for:"For merchants managing multiple sales channels.",feats:["Multiple supported marketplaces","One Upload + AI","Marketplace Helpdesk","Returns and refunds","Settlement and accounting","Fulfillment integrations","Digital Holding Club and partner-related benefits"],cta:"Choose Standard",feat:!0},{id:"enterprise",name:"Enterprise",price:199,for:"For businesses requiring additional support.",feats:["Standard plan features","One hour of support per month","Priority support","Regular system check","Assistance with marketplace topics","Enterprise Club benefits, where actually offered"],cta:"Choose Enterprise"}],SEPLABEL="AdlerDoo subscription plans: separate from free Club registration.";function adlerdooBlock(){return`
\n

AdlerDoo: Your Commerce Ecosystem Inside Odoo.

\n

Bring your supported marketplace operations, product information, orders, inventory, fulfillment workflows, customer communications, returns, and settlement processes together through AdlerDoo and Odoo.

\n
${checks(["Marketplace connections","Product management and One Upload","Orders and inventory synchronization","AI-assisted marketplace customer support","Fulfillment integrations","Returns and refunds workflows","Settlement and accounting processes","Review and reputation-related solutions"],"cols")}
\n
${btn("/adlerdoo","Explore AdlerDoo","btn-primary","arrow")}${btn("/ask-the-club?type=adlerdoo","Book a Free Demo","btn-secondary")}
\n

AdlerDoo is one important product within the Club, not the only reason the Club exists.

\n
${radial("Odoo
+ AdlerDoo",[["store","Marketplaces"],["box","One Upload"],["sync","Orders & Stock"],["truck","Fulfillment"],["headset","AI Support"],["ret","Returns"],["coins","Settlement"],["star","Reputation"]])}
`}function home(){const e=`
${window.DHC_LP===
${window.DHC_LP==="/en"?"Marketplace":"Marktplatz"}
${window.DHC_LP==="/en"?"Connected":"verbunden"}
+12%${window.DHC_LP==="/en"?"Revenue":"Umsatz"}
${window.DHC_LP==="/en"?"AI Automation":"KI-Automatisierung"}
${window.DHC_LP==="/en"?"Active":"aktiv"}
`,t=`\n
\n
\n Digital Holding Club\n

One Club. Every Connection Your Business Needs.

\n

Your Complete Business & Commerce Ecosystem.

\n

From marketplace integrations and Odoo solutions to fulfillment networks, AI automation, finance, legal support, and specialized business services. Discover the right solutions and experts to move your business forward.

\n

Whether you're starting, scaling, or optimizing, find what your business needs in one place.

\n
${btn("/club","Explore the Club","btn-secondary btn-lg")}${alink("/ask-the-club","Ask an Expert")}
\n
${e}
\n \n
\n\n ${section(`${secHead("Business ecosystem","Everything Your Business Needs. Connected in One Ecosystem.","Explore technology, operations, and professional business services designed to work together.")}
${CATS.map(e=>iconCard(e.icon,e.name,e.desc,e.href,e.cta)).join("")}
`)}\n\n
${secHead("Find your solution","Tell Us What You Need. We'll Help You Find the Right Solution.","You don't need to know which integration, technology, or service is right for your business. Start with your challenge. Explore relevant options, or ask the Club for guidance.")}\n
\n ${[["plug","I Need an Integration","Connect a marketplace, ERP system, online store, fulfillment provider, or another business platform.","/integration-finder","Find an Integration"],["briefcase","I Need a Business Service","Explore fulfillment, finance, legal support, pricing, marketing, and other specialist services.","/business-services","Explore Services"],["chat","I Need Expert Guidance","Describe your business challenge and let our team help you identify your next step.","/ask-the-club","Ask the Club"]].map(e=>`
${ic(e[0])}

${e[1]}

${e[2]}

${e[4]}${ic("arrow")}
`).join("")}\n
\n\n ${section(`
Integration Finder

Connect the Systems That Power Your Business.

Your business should not be limited by disconnected tools.

Discover integration possibilities between marketplaces, ERP platforms, online stores, fulfillment providers, and business systems.

${checks(["Matches shown only when an integration is actually confirmed","A clear request path when no match exists yet"])}
\n
\n
\n
\n
\n
`)}\n\n ${adlerdooBlock()}\n\n ${section(`
Fulfillment Network

From Order to Delivery. Find the Right Fulfillment Solution.

Explore fulfillment options for your business, including warehouse operations, third-party logistics, fulfillment networks, shipping connections, and order processing workflows.

\n
${[["warehouse","Warehousing & Storage"],["box","Pick, Pack & Ship"],["link","3PL Integration"],["route","Fulfillment Service Network (FSN)"],["ret","Returns & Reverse Logistics"],["truck","Shipping & Carrier Connections"]].map(e=>`
${ic(e[0])}
${e[1]}
`).join("")}
\n
${btn("/fulfillment-network","Explore Fulfillment Solutions","btn-primary","arrow")}
\n
${window.DHC_LP===
${ic("store")}Order
${ic("arrow")}
${ic("box")}Pick & Pack
${ic("arrow")}
${ic("truck")}Ship
${ic("arrow")}
${ic("ret")}Return
`)}\n\n
${secHead("Business services & partners","Beyond Software. A Network Built Around Your Business.","Technology is only one part of running a successful company. Discover complementary business services and specialist partners that help you operate, protect, and grow your business.")}\n
${[["scale","Legal & Compliance","Discover legal guidance, online store legal texts, and compliance support from qualified specialist partners.","legal-compliance"],["file","Debt Collection","Explore receivables management and debt collection solutions.","debt-collection"],["star","Reputation Management","Find services for monitoring and improving online reviews and reputation.","reputation-management"],["tag","Repricing","Discover pricing automation and competitive pricing solutions.","repricing"],["coins","Finance & Accounting","Explore accounting workflows, integrations, and financial process automation.","finance-accounting"],["trend","Business Growth","Discover digital marketing, SEO, and e-commerce growth services.","marketing-seo"],["briefcase","Specialized Partner Services","Access further business support through relevant specialists.","specialized"]].map(e=>iconCard(e[0],e[1],e[2],"/service/"+e[3],"Learn more")).join("")}\n

Explore All Business Services

Browse every category and request information.

View all${ic("arrow")}
\n\n ${section(`${secHead("How it works","Finding the Right Business Solution Should Be Simple.")}
    ${[["01","Explore","Browse integrations, business services, and partner solutions."],["02","Identify Your Needs","Use our solution finder or describe your business challenge."],["03","Connect with the Right Solution","Review relevant options or request guidance from the appropriate expert."],["04","Move Your Business Forward","Plan the next steps toward integration, automation, operational improvements, or specialist support."]].map(e=>`
  1. ${e[0]}

    ${e[1]}

    ${e[2]}

  2. `).join("")}
${btn("/solutions","Start Exploring","btn-primary btn-lg","arrow")}
`)}\n\n
${secHead("Why join the Club?","More Than a Platform. Your Business Network.","Join a growing business community built around useful knowledge, meaningful connections, and new opportunities.")}\n
${[["compass","Explore business solutions"],["book","Discover resources and practical guides"],["globe","Stay informed about technology and commerce"],["chat","Join relevant business discussions"],["calendar","Discover events and learning opportunities"],["users","Connect with the Club and its specialists"]].map(e=>`
${ic(e[0])}

${e[1]}

`).join("")}
\n
${btn("/join","Become a Club Member (Free)","btn-primary btn-lg")}${btn("/club","Explore Membership Benefits","btn-secondary btn-lg")}
\n
${ic("info")}Joining the Club is free and separate from purchasing AdlerDoo or other paid services.
\n\n ${section(`${secHead("Plans & pricing","Flexible Solutions for Every Stage of Your Growth.")}
${PLANS.map(planCard).join("")}
${ic("info")}${SEPLABEL}
${btn("/pricing","Compare AdlerDoo Plans","btn-secondary btn-lg","arrow")}
${devnote("Prices carried over from the reference screenshot. Owner verification required before publishing.")}
`)}\n\n
${secHead("Trust & ecosystem","Built Around the Platforms and Services Businesses Use.")}\n
${["PrestaShop","Amazon","eBay","Kaufland","OTTO","Shopify"].map(e=>dhcChip(e,"logo-chip")).join("")}
and other supported technologies
\n

Platform names indicate technical compatibility only and do not imply a certified partnership.

\n
${devnote("Wordmark chips are neutral stand-ins. Show real logos only with permission. Show legal, reputation and fulfillment partner logos only once the relationship is confirmed. No partner counts, customer numbers or testimonials are shown.")}
\n\n ${ctaBand("Whatever Your Business Needs Next, Start Here.","Looking for an integration, a fulfillment partner, an automation solution, or expert business support? Explore the possibilities with Digital Holding Club.",btn("/solutions","Find My Solution","btn-white btn-lg","arrow"),btn("/ask-the-club","Ask the Club","btn-outline-white btn-lg"))}`;return pg("Digital Holding Club | One Club. Every Connection Your Business Needs.","Discover marketplace integrations, Odoo and ERP solutions, fulfillment, AI automation and specialist business services in one ecosystem.",t,mountHome)}function planCard(e){return`
${e.feat?'For multichannel merchants':""}

AdlerDoo ${e.name}

${e.for}

€${e.price}/month
${checks(e.feats.slice(0,3))}${e.cta}
`}function solutions(e){const t=[...new Set(SOL.flatMap(e=>e.platforms))].sort(),s=(e,t,s)=>`
`,a=SOL.filter(e=>["int-amazon","int-kaufland","adlerdoo","fsn"].includes(e.id)),n=SOL.filter(e=>["legal","settlement","rep","host"].includes(e.id)),i=`${pageHero({crumbs:[["Explore Solutions"]],eyebrow:"Explore Solutions",title:'Find the Right Solution for Your Business.',desc:"Explore integrations, technology, operational services, and professional expertise in one place."})}\n
\n
${searchBox("sol","What are you looking for?")}${suggChips("Suggested:")}
\n
${CATS.map(e=>``).join("")}
\n
${s("f-platform","Platform / System",t)}${s("f-goal","Business Goal",GOALS)}${s("f-industry","Industry",INDUSTRIES)}${s("f-type","Service Type",TYPES)}
\n \n
\n
\n ${ctaBand("Not sure what you need?","Describe your challenge in plain language and the Club will help you identify relevant options.",btn("/ask-the-club?type=unsure","Ask the Club","btn-white btn-lg"))}`;return pg("Explore Solutions | Digital Holding Club","Search and filter marketplace integrations, ERP solutions, fulfillment, automation and business services.",i,()=>mountSolutions(e))}function finder(e){const t=`${pageHero({crumbs:[["Integration Finder"]],eyebrow:"Integration Finder",title:'What Do You Want to Connect?',desc:"Discover integration options that help your systems work better together."})}\n ${section(`
${devnote("Matching rules are prototype logic. Only integrations marked Confirmed here must really exist. Connect this tool to the verified integration catalogue before launch.")}
`,"tight")}`;return pg("Integration Finder | Digital Holding Club","Find out which marketplace, ERP, store and fulfillment connections are available, or request a different integration.",t,()=>mountFinder(e))}const isErp=e=>"Odoo"===e||"JTL"===e,mk=e=>MARKETS.find(t=>t.name===e);function finderResults(e,t){if(isErp(e)&&mk(t)||isErp(t)&&mk(e)){const s=mk(isErp(e)?t:e);return[{title:`${isErp(e)?e:t} + ${s.name}`,src:e,dst:t,status:s.status,href:"/integration/"+s.id}]}return"Fulfillment Provider"===t?[{title:"Fulfillment Service Network (FSN)",src:e,dst:t,status:"request",href:"/fulfillment-network"}]:[]}function marketplaces(){const e=`${pageHero({crumbs:[["Integrations","/marketplace-integrations"],["Marketplace Integrations"]],eyebrow:"Marketplace Integrations",title:'Connect Your Marketplaces. Simplify Your Operations.',desc:"Manage the complexity of multichannel selling with integration solutions that connect supported marketplaces and your business systems.",actions:btn("/integration-finder","Find My Marketplace Integration","btn-primary btn-lg","arrow")+btn("/ask-the-club?type=marketplace","Request an Integration","btn-secondary btn-lg")})}\n ${section(`
${ic("search","lead-ic")}
\n
${devnote("Platform list and Confirmed or On request status are sample data. Verify real support for every platform before publishing.")}
`)}\n
${secHead("Why connect","Why Connect Marketplaces to an ERP?","One operational system instead of one login per channel.")}\n
${[["layers","One source of truth","Keep product, order and stock information in a single system instead of copying it between channels."],["bolt","Less manual work","Reduce repetitive entry and the errors that come with it."],["chart","Clearer visibility","See what is happening across channels and spot problems earlier."]].map(e=>iconCard(e[0],e[1],e[2])).join("")}
\n ${section(`${secHead("Workflows","Product, Inventory, Order and Financial Workflows.","Typical examples of what a connected setup supports. Exact scope depends on the marketplace.")}
${[["box","One Upload. Multiple Sales Channels.","Simplify supported product publication workflows across connected marketplaces."],["sync","Centralized Order Management.","Bring marketplace order information into your operational system."],["layers","Inventory Synchronization.","Improve visibility and accuracy across your connected sales channels."],["coins","Marketplace Settlement.","Explore reconciliation and accounting processes for marketplace activity."]].map(e=>`
${ic(e[0])}

${e[1]}

${e[2]}

`).join("")}
\n

Illustrative workflow

${ic("store")}Marketplaces
${ic("arrow")}
${ic("layers")}AdlerDoo
${ic("arrow")}
${ic("erp")}Odoo
${ic("arrow")}
${ic("truck")}Fulfillment
${ic("arrow")}
${ic("coins")}Accounting
`)}\n
AdlerDoo

AdlerDoo Integration Overview

AdlerDoo is the commerce middleware inside Odoo for supported marketplace connections, products, orders, inventory and settlement.

${btn("/adlerdoo","Explore AdlerDoo","btn-primary","arrow")}${btn("/pricing","Compare Plans","btn-secondary")}
${ph("AdlerDoo interface mockup","r43","layers","Illustrative interface, replace with real screenshot")}
\n ${ctaBand("Do not see your marketplace?","Tell us what you want to connect and we will review your requirements and explore the available options.",btn("/ask-the-club?type=marketplace","Request an Integration","btn-white btn-lg"),btn("/integration-finder","Find My Marketplace Integration","btn-outline-white btn-lg"))}`;return pg("Marketplace Integrations | Digital Holding Club","Connect supported marketplaces such as Amazon, eBay, Kaufland and OTTO with your ERP and simplify multichannel operations.",e,mountMarkets)}const mkCard=e=>`${dhcChip(e.name,"logo-chip sm","margin-bottom:14px")}
${e.type}${statusBadge(e.status)}

Odoo + ${e.name}

View details${ic("arrow")}
`;function erpPage(e){const t=`${pageHero({crumbs:[["Integrations","/marketplace-integrations"],["Odoo & ERP Solutions"]],eyebrow:"Odoo & ERP",title:'Connect Your Business Systems. Unlock Better Workflows.',desc:"Explore Odoo implementation, ERP connectivity, migration, and business process automation solutions. Whether you are already using an ERP or considering a new one, find the right next step for your business.",actions:btn("/ask-the-club?type=erp","Discuss My ERP Requirements","btn-primary btn-lg")})}\n ${section(`
${[["erp","Odoo Implementation","Set up ERP applications and business processes based on your operational requirements."],["plug","ERP Integration","Explore connections between your ERP, marketplaces, online stores, warehouses, and other platforms."],["sync","Migration & Modernization","Plan a structured move from existing systems or upgrade your business environment."],["code","Odoo Customization","Adapt modules and business workflows to your operational needs."],["layers","AdlerDoo for Odoo","Extend connected commerce operations through supported AdlerDoo integrations."],["target","Business Process Consulting","Identify inefficiencies and explore improvements to your operations."]].map(e=>iconCard(e[0],e[1],e[2])).join("")}
`)}\n
Tell us your situation

Start from where you are.

Choose what you use today and what you want to achieve. You do not need to migrate to Odoo to receive help.

\n
`;return pg("Odoo & ERP Solutions | Digital Holding Club","Odoo implementation, ERP integration, migration and customization for businesses of any starting point.",t,mountErp)}function fulfillment(e){const t=`${pageHero({crumbs:[["Fulfillment","/fulfillment-network"],["Fulfillment & FSN"]],eyebrow:"Fulfillment & FSN",title:'Fulfillment Solutions That Move with Your Business.',desc:"Discover the right warehousing, fulfillment, and logistics approach for your operations.",actions:btn("/fulfillment-network?s=request","Find a Fulfillment Partner","btn-primary btn-lg")})}\n ${section(`
${[["target","Find a Fulfillment Solution","Explore the options that match your business needs."],["route","Fulfillment Service Network (FSN)","Learn about network-based fulfillment models and relevant service opportunities."],["link","3PL & Warehouse Integrations","Explore connections between your business software and fulfillment providers."],["truck","Shipping & Carrier Operations","Discover shipping workflow and carrier integration possibilities."],["ret","Returns Management","Understand workflows for processing returned orders and inventory."],["layers","Integration with Odoo & AdlerDoo","Explore how supported fulfillment processes can connect with your commerce systems."]].map(e=>iconCard(e[0],e[1],e[2])).join("")}
`)}\n
Fulfillment request

Tell us what you need.

Describe your operation and we will review your requirements. This form submits a request. It does not promise available warehouse providers or guaranteed quotes.

${ph("Warehouse operations photo","r43","warehouse","Replace with real photography")}
\n
${datalist}${form("ff","request",[{name:"name",label:"Full Name",required:1,ac:"name"},{name:"email",label:"Business Email",type:"email",required:1,ac:"email",err:"Please enter a valid email address."},{name:"country",label:"Business country",required:1,list:"countries"},{name:"dest",label:"Shipping destinations",ph:"e.g. DE, AT, CH",required:1},{name:"volume",label:"Monthly order volume",type:"select",options:["Under 100","100 to 500","500 to 2,000","2,000 to 10,000","Over 10,000"],required:1},{name:"product",label:"Product category",required:1,ph:"e.g. electronics, apparel"},{name:"erp",label:"Existing ERP",ph:"e.g. Odoo, JTL, none"},{name:"services",label:"Required services",type:"select",options:["Warehousing & storage","Pick, pack & ship","3PL integration","Returns handling","Not sure yet"],required:1},{name:"privacy",label:PRIVACY,type:"check",required:1}],"Find a Fulfillment Partner",{title:"Fulfillment request"})}
`;return pg("Fulfillment & FSN | Digital Holding Club","Find warehousing, fulfillment network, 3PL and shipping solutions that fit your business.",t,()=>{e.s&&scrollToId(e.s)})}function businessServices(){const e=`${pageHero({crumbs:[["Business Services"]],eyebrow:"Business Services",title:'Your Business Needs More Than Software.',desc:"Find complementary business services that help you manage risk, improve operations, strengthen your reputation, and grow."})}\n ${section(`
${SERVICES.map(e=>``).join("")}
`)}\n ${ctaBand("Can’t find your category?","Submit your requirements to the Club and we will help you look.",btn("/ask-the-club?type=other","Ask the Club","btn-white btn-lg"))}`;return pg("Business Services | Digital Holding Club","Legal, finance, debt collection, reputation, repricing, marketing and technical services for online businesses.",e)}function ai(){const e=`${pageHero({crumbs:[["Explore Solutions","/solutions"],["AI & Automation"]],eyebrow:"AI & Automation",title:'Make Your Business Work Smarter with AI & Automation.',desc:"Discover practical opportunities to reduce repetitive work, improve operational visibility, and simplify business processes.",actions:btn("/ask-the-club?type=ai","Explore AI Opportunities for My Business","btn-primary btn-lg")})}\n ${section(`
${[["headset","AI-assisted customer support"],["chat","Marketplace message handling"],["file","Product content assistance"],["sync","Workflow automation"],["layers","Data processing and synchronization"],["chart","Reporting and analytics"],["target","Business process optimization"]].map(e=>`
${ic(e[0])}

${e[1]}

`).join("")}
`)}\n
AdlerDoo

AI in the AdlerDoo Ecosystem

AdlerDoo includes AI-assisted features for supported marketplace communication and commerce workflows, such as the Marketplace Helpdesk and One Upload + AI for product data.

${checks(["Assisted handling of marketplace customer messages","Product content support within One Upload","Only confirmed capabilities are described here"])}
${devnote("List only AI capabilities that are live in AdlerDoo today. Do not promise functionality that is not available.")}
${ph("AI helpdesk interface mockup","r43","sparkle","Illustrative interface, replace with real screenshot")}
\n ${ctaBand("Where could automation help you most?","Tell us about your repetitive tasks and we will help you find practical starting points.",btn("/ask-the-club?type=ai","Explore AI Opportunities for My Business","btn-white btn-lg"))}`;return pg("AI & Business Automation | Digital Holding Club","Practical AI and automation for customer support, marketplace messages, product content and workflows.",e)}function partners(e){const t=`${pageHero({crumbs:[["Partners"]],eyebrow:"Partner Network",title:'The Right Expertise. Beyond One Platform.',desc:"Explore the companies, technologies, and specialists that can support different areas of your business.",actions:btn("/partners?s=become","Become a Partner","btn-primary btn-lg")})}\n ${section(`${devnote("Partner cards below are empty slots. Only describe a company as a Club Partner after the relationship is verified, and use its verified logo.")}${[["p-tech","Technology Ecosystem","ERP, marketplaces, online stores, middleware, and business software.","layers"],["p-fulfil","Fulfillment & Logistics","Warehouse providers, fulfillment services, and logistics specialists.","truck"],["p-legalfin","Legal & Financial Services","Specialist partners serving business compliance and financial needs.","scale"],["p-growth","Growth & Operations","Marketing, reputation, pricing, and specialist business solutions.","trend"]].map(e=>``).join("")}`)}\n
Become a Partner

Contribute your expertise.

Interested in contributing expertise and services to the Digital Holding Club ecosystem? Get in touch to discuss potential collaboration.

\n
${form("bp","request",[{name:"name",label:"Full Name",required:1,ac:"name"},{name:"email",label:"Business Email",type:"email",required:1,ac:"email",err:"Please enter a valid email address."},{name:"company",label:"Company",required:1,ac:"organization"},{name:"area",label:"Area of expertise",type:"select",options:["Technology","Fulfillment & logistics","Legal","Finance & accounting","Marketing & growth","Other"],required:1},{name:"message",label:"How would you like to collaborate?",type:"textarea",full:1,required:1},{name:"privacy",label:PRIVACY,type:"check",required:1}],"Get in Touch",{title:"Partner enquiry"})}
`;return pg("Partner Network | Digital Holding Club","Explore technology, logistics, legal, financial and growth partners in the Digital Holding Club ecosystem.",t,()=>{e.s&&scrollToId(e.s)})}function pricing(){const e=`${pageHero({crumbs:[["Pricing"]],eyebrow:"AdlerDoo Pricing",title:'The Right Plan for Your Commerce Operations.',desc:"Explore AdlerDoo subscription options designed for different business needs."})}\n ${section(`
${ic("info")}Club membership and AdlerDoo subscriptions are separate. Joining the Club is free.
\n
${PLANS.map(e=>`
${e.feat?'For multichannel merchants':""}

AdlerDoo ${e.name}

${e.for}

€${e.price}/month
${checks(e.feats)}${e.cta}
`).join("")}
\n
${ic("info")}${SEPLABEL}
\n
Separate service panel

Additional Services: Flexible Options

Priced individually based on your requirements.

${btn("/ask-the-club?type=other&q=Custom%20quote","Request a Custom Quote","btn-primary")}
${checks(["Odoo Hosting","Setup and Migration","Initial Configuration","Custom Development","Additional Support Hours","Reputation Management","Legal & Compliance Services","Debt Collection","Repricing Integration","Other Partner Solutions"],"cols")}
\n
${devnote('Owner verification required before publishing: all prices and plan entitlements are carried over from the reference screenshot. Show "No AdlerDoo transaction fees" only after commercial confirmation. Clarify licenses, hosting, setup, migration, integrations, taxes and third-party fees. Do not claim unlimited platforms unless contractually confirmed.')}
`)}\n
${secHead("","Compare plans")}
${[["Supported marketplaces","1","Multiple","Multiple"],["AdlerDoo in Odoo",1,1,1],["Order and inventory processes",1,1,1],["One Upload + AI",0,1,1],["Marketplace Helpdesk",0,1,1],["Returns and refunds",0,1,1],["Settlement and accounting",0,1,1],["Fulfillment integrations","Explore FFN / FSN",1,1],["Digital Holding Club benefits","Relevant benefits","Club and partner-related","Enterprise Club benefits*"],["Monthly support hour",0,0,"1 hour"],["Priority support",0,0,1],["Regular system check",0,0,1],["Assistance with marketplace topics",0,0,1]].map(e=>`${e.slice(1).map(e=>``).join("")}`).join("")}
FeatureStartup
€30/mo
Standard
€99/mo
Enterprise
€199/mo
${e[0]}${(e=>1===e?`${ic("check")}Included`:0===e?`Not included`:e)(e)}

* Where actually offered. Prices exclude applicable taxes unless stated. Third-party service fees are separate.

\n ${section(`${secHead("","Frequently asked questions")}${faq([["What is the difference between the plans?","Startup covers one supported marketplace. Standard adds multiple marketplaces, One Upload + AI, Marketplace Helpdesk, returns, settlement and fulfillment integrations. Enterprise adds support hours, priority support and regular system checks."],["Which marketplaces are supported?","Supported marketplaces are listed on the Marketplace Integrations page with their confirmed status. If yours is not listed, you can request it."],["Is the free Club membership the same as an AdlerDoo plan?","No. Club registration is free and separate. AdlerDoo plans are paid subscriptions."],["How does setup work?","Setup, migration and configuration are available as additional services and quoted individually."],["Can I get a custom service or quote?","Yes. Use Request a Custom Quote for hosting, setup, migration, custom development or partner services."]])}`)}\n ${ctaBand("Not sure which plan fits?","Tell us about your channels and processes and we will help you choose.",btn("/ask-the-club?type=adlerdoo","Ask the Club","btn-white btn-lg"))}`;return pg("AdlerDoo Pricing | Digital Holding Club","Compare AdlerDoo Startup, Standard and Enterprise subscription plans. Club membership is free and separate.",e)}function adlerdoo(){const e=`${pageHero({crumbs:[["AdlerDoo"]],eyebrow:"AdlerDoo",title:'AdlerDoo: Your Commerce Ecosystem Inside Odoo.',desc:"TecSee’s commerce middleware for supported marketplace operations in Odoo.",actions:btn("/pricing","Compare AdlerDoo Plans","btn-primary btn-lg")+btn("/ask-the-club?type=adlerdoo","Book a Free Demo","btn-secondary btn-lg")})}\n ${adlerdooBlock()}\n ${section(`${secHead("","Capabilities")}
${[["store","Marketplace connections","Connect supported marketplaces to Odoo."],["box","One Upload","Prepare product data once, publish to supported channels."],["headset","Marketplace Helpdesk","Handle customer messages with AI assistance."],["coins","Settlement & accounting","Reconcile marketplace activity."]].map(e=>iconCard(e[0],e[1],e[2])).join("")}
${devnote("Describe only capabilities that are confirmed and live.")}
`)}\n ${ctaBand("See AdlerDoo in action.","Book a free demo and bring your marketplace questions.",btn("/ask-the-club?type=adlerdoo","Book a Free Demo","btn-white btn-lg"),btn("/pricing","Compare AdlerDoo Plans","btn-outline-white btn-lg"))}`;return pg("AdlerDoo | Commerce Ecosystem Inside Odoo","AdlerDoo connects supported marketplaces, products, orders, inventory and settlement inside Odoo.",e)}function club(e){const t=`${pageHero({crumbs:[["The Club"]],eyebrow:"The Club & Community",title:'More Than Business Solutions. A Community That Moves You Forward.',desc:"Digital Holding Club brings together business owners, e-commerce professionals, technology experts, and people interested in smarter business operations. You do not need to be an existing customer to become part of the Club.",actions:btn("/join","Become a Club Member (Free)","btn-primary btn-lg")})}\n ${section(`${secHead("","Why Join the Club?","Explore business knowledge, useful resources, industry conversations, and opportunities to connect.")}
${[["book","Learn & Discover","Read guides, discover technology topics, and explore practical business insights."],["chat","Community Discussions","Ask questions, share experiences, and exchange ideas with people working on similar challenges."],["calendar","Events & Workshops","Discover available webinars, practical learning sessions, and opportunities to connect."],["file","Business Resources","Access selected checklists, guides, and materials for members."],["compass","Expert Knowledge","Find information about the technologies and services relevant to your business."],["users","A Network","Connect with the Club and its specialists."]].map(e=>iconCard(e[0],e[1],e[2])).join("")}
`)}\n
${secHead("Resources","Business Resources","Sample resources to show the layout. Members can save any resource.")}
${RESOURCES.map(e=>`
${ph("Resource preview","r169","file","Preview placeholder")}${e.cat}

${e.title}

${e.sum}

View${ic("arrow")}
`).join("")}
${devnote("Resources are sample content. Publish real guides and checklists here (Odoo Blog or eLearning).")}
\n ${section(`${secHead("Community","Community Discussions","Choose a topic and join the conversation once you are a member.")}
${INTERESTS.slice(0,4).map((e,t)=>`
${ic(["store","erp","truck","sparkle"][t])}

${e}

${ic("lock")}Members only
`).join("")}
`)}\n
${secHead("Events","Events & Workshops")}
${ic("calendar")}

No events published yet

Published webinars and workshops appear here. Join the Club to be informed.

${btn("/join","Join Free","btn-primary btn-sm")}
Sample event

Sample Workshop Title

${ic("calendar")} Date and time placeholder

View event${ic("arrow")}
\n ${section('

What free membership includes

Free Club membership lets members discover resources, follow topics, and participate in the available community features.

Paid software, implementation, and external partner services remain separate. Joining does not include free consulting, free integrations, or unlimited professional support.

')}\n ${ctaBand("Join the Club. It is free.","Discover resources, follow topics, and connect with others.",btn("/join","Become a Club Member (Free)","btn-white btn-lg"))}`;return pg("The Club & Community | Digital Holding Club","A free business community with guides, discussions, events and expert knowledge about commerce technology.",t,()=>{e.s&&scrollToId(e.s)})}const ASK_TYPES=[["marketplace","store","I need a marketplace integration","Marketplace integration"],["erp","erp","I need Odoo or ERP support","Odoo or ERP support"],["fulfillment","truck","I need a fulfillment solution","Fulfillment solution"],["ai","sparkle","I need AI or automation","AI or automation"],["finlegal","scale","I need accounting or legal services","Accounting or legal services"],["other","briefcase","I need another business service","Another business service"],["unsure","help","I'm not sure what I need","Not sure yet"],["adlerdoo","layers","I'm interested in AdlerDoo","AdlerDoo"]];function ask(e){const t=ASK_TYPES.find(t=>t[0]===e.type);let s="";e.current||e.target?s=`I currently use ${e.current||"..."} and want to connect it with ${e.target||"..."}.${e.goal?" Goal: "+e.goal+".":""}`:e.q&&e.q.length<120&&(s=`I am interested in: ${e.q}.`);const a=`${pageHero({crumbs:[["The Club","/club"],["Ask the Club"]],eyebrow:"Ask the Club",title:'Have a Business Challenge? Let’s Find the Right Way Forward.',desc:"Not sure which integration, service, or technology is right for your business? Tell us what you are trying to achieve, and our team can review your requirements and help identify relevant options."})}\n ${section(`${datalist}

What do you need?

${ASK_TYPES.map(e=>``).join("")}
\n ${form("ask","request",[{name:"name",label:"Full Name",required:1,ac:"name"},{name:"email",label:"Business Email",type:"email",required:1,ac:"email",err:"Please enter a valid email address."},{name:"company",label:"Company Name",ac:"organization"},{name:"country",label:"Country",list:"countries",required:1,ac:"country-name"},{name:"current",label:"Current System",value:e.current||"",ph:"e.g. Odoo, JTL, Shopify"},{name:"platforms",label:"Platforms to Connect",value:e.target||"",ph:"e.g. Amazon, Kaufland"},{name:"category",label:"Service Category",type:"select",options:ASK_TYPES.map(e=>e[3]),required:1,value:t?t[3]:"",full:1},{name:"message",label:"Describe Your Business Challenge",type:"textarea",required:1,full:1,value:s,ph:"What are you trying to achieve?"},{name:"contact",label:"Preferred Contact Method",type:"select",options:["Email","Phone call","Video call"],required:1,full:1},{name:"privacy",label:PRIVACY,type:"check",required:1}],"Submit My Request",{title:"Ask the Club"})}
\n
`)}`;return pg("Ask the Club | Digital Holding Club","Describe your business challenge and the Club team will review your requirements and suggest relevant options.",a,mountAsk)}function join(){const e=`
Free to Join

Join the Digital Holding Club.

Discover business knowledge, solutions, and a community focused on helping businesses connect, innovate, and grow.

${checks(["Explore business solutions","Discover resources and practical guides","Join relevant business discussions","Discover events and learning opportunities"])}
${ic("info")}Free membership is separate from AdlerDoo subscriptions and other paid services.
\n
${form("jn","join",[{name:"name",label:"Full Name",required:1,ac:"name"},{name:"email",label:"Email",type:"email",required:1,ac:"email",err:"Please enter a valid email address."},{name:"password",label:"Password",type:"password",required:1,ac:"new-password",hint:"At least 8 characters.",err:"Password must have at least 8 characters.",full:1},{name:"interests",label:"Interests",type:"chips",options:INTERESTS},{name:"privacy",label:PRIVACY,type:"check",required:1},{name:"marketing",label:"Optional: send me Club news and updates by email. I can unsubscribe at any time.",type:"check"}],"Create My Free Account")}

Already a member? Log in

${devnote("Prototype: accounts live only in this browser and no password is stored. Production uses Odoo portal users.")}
`;return pg("Join the Club | Digital Holding Club","Create your free Digital Holding Club account.",e)}function login(){const e=`

Log in

Welcome back to the Club.

${form("lg","login",[{name:"email",label:"Email",type:"email",required:1,ac:"email",full:1,err:"Please enter a valid email address."},{name:"password",label:"Password",type:"password",required:1,full:1}],"Log In")}
Create account
${devnote("Prototype: log in with the email you used on the Join page, or use Preview member dashboard in the top bar.")}
`;return pg("Log In | Digital Holding Club","Log in to your Digital Holding Club account.",e,null,{noindex:!0})}function onboarding(){const e=S.user&&S.user.interests||[],t=`
Step 2 of 2

What Are You Interested In?

Select as many as you like. This only personalizes your recommendations. You can skip this step.

${INTERESTS.map(t=>``).join("")}
Skip
`;return pg("Welcome | Digital Holding Club","Choose your interests.",t,null,{auth:!0,noindex:!0})}function dashboard(){const e=S.user||{},t=e.interests||[],s=t.map(e=>INT2CAT[e]).filter(Boolean),a=(s.length?SOL.filter(e=>s.includes(e.cat)&&"request"!==e.status):SOL.filter(e=>["adlerdoo","fsn","ai-cs","legal","erp-int","settlement"].includes(e.id))).slice(0,6),n=RESOURCES.filter(e=>S.saved.includes(e.id)),i=`

Welcome to Your Business Circle.

Discover solutions, explore resources, and keep your business opportunities organized.

\n
\n
\n

Recommended Solutions

${t.length?"":'

Select interests in Account Settings to personalize this list.

'}
${a.map(solCard).join("")}
\n

My Requests

${S.requests.length?S.requests.map(e=>`
${esc(e.title)}
${esc(e.date)}
${esc(e.status)}
`).join(""):`
${ic("chat")}

No requests yet

Requests you submit appear here with their real status.

${btn("/ask-the-club","Ask the Club","btn-primary btn-sm")}
`}
\n

Saved Resources

${n.length?`
${n.map(e=>`${e.cat}

${e.title}

Open${ic("arrow")}
`).join("")}
`:`
${ic("bookmark")}

Nothing saved yet

Save guides and checklists from the Club to find them here.

${btn("/club?s=resources","Browse resources","btn-primary btn-sm")}
`}
\n

Upcoming Events

Sample event

Sample Workshop Title

Date and time placeholder

View event${ic("arrow")}
${devnote("Show only real published events that members can register for.")}
\n

Community Activity

${INTERESTS.slice(0,4).map(e=>`

${e}

Discussions for this topic will appear here.

Sample slot
`).join("")}
\n

Explore More

${CATS.filter(e=>!s.includes(e.id)).slice(0,4).map(e=>iconCard(e.icon,e.name,e.desc,e.href,e.cta)).join("")}
\n

Account Settings

${form("st","settings",[{name:"name",label:"Full Name",value:e.name||"",required:1,ac:"name"},{name:"email",label:"Email",value:e.email||"",type:"email",required:1,ac:"email",err:"Please enter a valid email address."},{name:"interests",label:"Interests",type:"chips",options:INTERESTS,value:t},{name:"marketing",label:"Send me Club news and updates by email",type:"check"}],"Save Changes").replace('name="marketing"','name="marketing" '+(e.marketing?"checked":""))}
\n
`;return pg("My Dashboard | Digital Holding Club","Member dashboard.",i,null,{auth:!0,noindex:!0})}function about(e){const t=`${pageHero({crumbs:[["About & Contact"]],eyebrow:"About",title:'Connecting Technology, Expertise, and Business Opportunities.',desc:"Digital Holding Club is a business ecosystem initiative designed to make finding technology solutions and specialist business services simpler. Powered by TecSee, the Club brings together commerce technology, integration expertise, fulfillment opportunities, and complementary business services.",actions:btn("/solutions","Explore the Ecosystem","btn-primary btn-lg")+btn("/about?s=contact","Contact Us","btn-secondary btn-lg")})}\n ${section(`
${[["target","Our Mission","Make it simple for businesses to find the right technology, integrations and specialist services."],["sparkle","What Makes the Club Different?","One place to explore solutions across technology and services, with honest status information and a clear path to ask for help."],["layers","How the Ecosystem Works","Club is the destination. TecSee provides technology and integration. AdlerDoo is the commerce middleware. Partners extend into services."],["code","TecSee & AdlerDoo","TecSee is the technology and integration provider behind the initiative. AdlerDoo is its commerce middleware for Odoo."],["users","Business Partner Network","Specialist partners in fulfillment, legal, finance, reputation and more. Only verified relationships are shown."],["user","Who Can Join?","Business owners, e-commerce sellers and professionals. You do not need to be a TecSee customer or Odoo user."]].map(e=>iconCard(e[0],e[1],e[2])).join("")}
`)}\n
Contact the Club

Get in touch.

Send us a message and we will get back to you.

${devnote("Add verified company details here: legal company name, registered address, contact email and phone, and the legally required Impressum information.")}
${form("ct","request",[{name:"name",label:"Full Name",required:1,ac:"name"},{name:"email",label:"Email",type:"email",required:1,ac:"email",err:"Please enter a valid email address."},{name:"message",label:"Message",type:"textarea",required:1,full:1},{name:"privacy",label:PRIVACY,type:"check",required:1}],"Send Message",{title:"Contact message"})}
`;return pg("About & Contact | Digital Holding Club","About Digital Holding Club, powered by TecSee, and how to contact the team.",t,()=>{e.s&&scrollToId(e.s)})}function integrationDetail(e){const t=MARKETS.find(t=>t.id===e);if(!t)return notFound();const s="ok"===t.status,a=MARKETS.filter(t=>t.id!==e).slice(0,4),n=`${pageHero({crumbs:[["Integrations","/marketplace-integrations"],["Marketplace Integrations","/marketplace-integrations"],[`Odoo + ${t.name}`]],eyebrow:`Odoo + ${t.name} Integration`,title:`Connect ${t.name} with Odoo for Smarter Commerce Operations.`,desc:s?`Bring ${t.name} products, orders and inventory into the system you already use to run your business.`:`${t.name} is not yet a confirmed integration. Tell us your requirements and we will review the options.`,actions:s?btn(`/ask-the-club?type=marketplace&q=${encodeURIComponent("Odoo + "+t.name)}`,"Request a Demo","btn-primary btn-lg")+btn(`/ask-the-club?type=marketplace&q=${encodeURIComponent("Odoo + "+t.name)}`,"Request Consultation","btn-secondary btn-lg"):btn(`/ask-the-club?type=marketplace&q=${encodeURIComponent("Odoo + "+t.name)}`,"Request an Integration","btn-primary btn-lg"),aside:`
${ph(`${t.name} and Odoo illustration`,"r43","plug","Illustrative graphic")}
${statusBadge(t.status)}
`})}\n ${section(`

Integration overview

${s?`This integration connects ${t.name} with Odoo so selling, order handling and stock stay aligned in one place.`:`We have not confirmed an integration for ${t.name} yet. A short review helps us understand whether and how it can be supported.`}

Business challenges it addresses

${checks(["Maintaining product data in several places","Handling orders from separate dashboards","Keeping stock levels consistent across channels"])}
`)}\n
${secHead("","Key workflows")}
${[["box","Products"],["sync","Orders"],["layers","Inventory"],["coins","Settlement"]].map(e=>iconCard(e[0],e[1],s?`Workflow covering ${e[1].toLowerCase()} for ${t.name}.`:"Reviewed during requirements analysis.")).join("")}
\n ${section(`

Supported capabilities

${s?checks(["Product publication workflow","Order import","Inventory synchronization","Settlement and reconciliation support"]):`
${ic("info")}No capabilities are listed until the integration is confirmed.
`}
${devnote("Include only capabilities verified for this specific integration.")}

How it works

    ${["Connect your "+t.name+" account and Odoo.","Choose which data to synchronize.","Operate from Odoo while data stays in sync."].map((e,t)=>`
  1. ${t+1}${e}
  2. `).join("")}
\n

Illustrative process

${ic("store")}${t.name}
${ic("arrow")}
${ic("layers")}AdlerDoo
${ic("arrow")}
${ic("erp")}Odoo
`)}\n

Technical requirements

${checks(["Active Odoo instance (edition and version to be confirmed per project)",`${t.name} seller or store account`,"API access issued by the platform"])}

Related integrations

${a.map(e=>`${e.name}${ic("arrow")}`).join("")}
\n ${section(`${secHead("","FAQs")}${faq([[`Is the ${t.name} integration available?`,s?"This integration is listed as confirmed. Ask for a demo to see the current scope.":"It is not confirmed yet. Submit a request and the team will review it."],["Do I need to migrate to Odoo?","This page covers Odoo based setups. If you use another system, use the Integration Finder or ask the Club."],["How long does setup take?","It depends on your products, processes and scope. The team will advise after reviewing your requirements."]])}`)}\n ${ctaBand("Ready to talk it through?","Share your requirements and we will review them with you.",btn(`/ask-the-club?type=marketplace&q=${encodeURIComponent("Odoo + "+t.name)}`,s?"Request Demo or Consultation":"Request an Integration","btn-white btn-lg"))}`;return pg(`Odoo + ${t.name} Integration | Digital Holding Club`,`Connect ${t.name} with Odoo: integration overview, workflows and how to request support.`,n)}function serviceDetail(e){const t=SERVICES.find(t=>t.id===e);if(!t)return notFound();const s=`${pageHero({crumbs:[["Business Services","/business-services"],[t.title]],eyebrow:"Business Service",title:`${t.title}: Find the Right Specialist.`,desc:t.short,actions:btn(`/ask-the-club?type=other&q=${encodeURIComponent(t.title)}`,"Request Information","btn-primary btn-lg")+btn(`/ask-the-club?type=other&q=${encodeURIComponent(t.title)}`,"Connect with a Specialist","btn-secondary btn-lg")})}\n ${section(`

Service overview

${t.short}

Who it is for

${t.who}

Business challenges

${checks(t.ch)}
\n

Available service categories

${checks(t.cats)}

Partner information

Services are delivered by specialist partners. Verified partner details appear here once confirmed.

${t.note?`

${t.note}

`:""}${devnote("Show partner name and logo only when the relationship is verified.")}
`)}\n
${secHead("","How to request support")}
    ${["Describe what you need.","The Club reviews your request.","You are connected with a relevant specialist."].map((e,t)=>`
  1. 0${t+1}

    ${e}

  2. `).join("")}
\n ${section(`${secHead("","FAQs")}${faq([["Is this included in Club membership?","No. Membership is free and separate from partner services, which are offered on the partners’ own terms."],["What does it cost?","Pricing depends on the provider and your needs. Request information to learn more."]])}`)}\n ${ctaBand(`Need ${t.title.toLowerCase()} support?`,"Tell us what you need and we will help you find the right way forward.",btn(`/ask-the-club?type=other&q=${encodeURIComponent(t.title)}`,"Request Information","btn-white btn-lg"))}`;return pg(`${t.title} | Digital Holding Club`,t.short,s)}function partnerDetail(e){const t=`${pageHero({crumbs:[["Partners","/partners"],["Partner name"]],eyebrow:"Partner",title:"Partner name",desc:"Partner description appears here once the relationship is verified.",actions:btn("/ask-the-club?type=other&q=Partner%20connection","Request Connection","btn-primary btn-lg"),aside:ph("Verified partner logo","r43","image","Logo placeholder")})}\n ${section(`

Expertise and geographic coverage

Placeholder for expertise areas and regions.

Relevant services

${checks(["Service one","Service two","Service three"])}

Verified partnership information

Describe the real relationship here, for example partner since, certification or scope.

${devnote("Template only. Use for verified partners.")}
`)}`;return pg("Partner | Digital Holding Club","Partner profile template.",t,null,{noindex:!0})}function resourceDetail(e){const t=RESOURCES.find(t=>t.id===e);if(!t)return notFound();const s=`${pageHero({crumbs:[["The Club","/club"],["Resources","/club"],[t.title]],eyebrow:t.cat,title:t.title,desc:t.sum,actions:``})}\n ${section(`
${ph("Resource preview","r43","file","Preview placeholder")}

What you will learn

${checks(t.learn)}
${devnote("Sample resource. Replace with real content and a real file.")}

Related resources

${RESOURCES.filter(t=>t.id!==e).slice(0,3).map(e=>`${e.cat}

${e.title}

View${ic("arrow")}
`).join("")}
`)}`;return pg(`${t.title} | Digital Holding Club`,t.sum,s)}function eventDetail(e){const t=`${pageHero({crumbs:[["The Club","/club"],["Events","/club"],["Sample Workshop"]],eyebrow:"Sample event",title:"Sample Workshop Title",desc:"Event summary placeholder. Date, time, format and speakers appear here.",actions:btn("/join","Register (Members)","btn-primary btn-lg"),aside:ph("Event image","r43","calendar","Image placeholder")})}\n ${section(`

Agenda

${checks(["Topic one","Topic two","Q&A"])}

Details

Date and time, language, duration and location or link.

${devnote("Template only. Publish real events via Odoo Events.")}
`)}`;return pg("Event | Digital Holding Club","Event template.",t,null,{noindex:!0})}const LEGAL={privacy:"Privacy Policy",terms:"Terms of Use",cookies:"Cookie Information",impressum:"Impressum","community-guidelines":"Community Guidelines"};function legal(e){const t=LEGAL[e],s=`${pageHero({crumbs:[[t]],title:t,desc:"This page needs final legal text."})}${section(``)}`;return pg(`${t} | Digital Holding Club`,`${t} of Digital Holding Club.`,s)}function notFound(){return pg("Page not found | Digital Holding Club","",`
${ic("compass")}

We could not find that page.

Try searching for what you need.

${searchBox("nf")}
${btn("/","Back to Home","btn-secondary")}
`,null,{noindex:!0})}const logoSvg='',logoHtml=(e="")=>``,go=(e,t)=>{if(window.DHC_SSR){const u=/^\/(en|de|fr|es|it|pl|nl|ar|cs_CZ|ro|tr|pt|sv|da_DK|hu|el_GR|fi|zh_CN|ja|ko_KR)(\/|$)/.test(e)?e:window.DHC_LP+e;return void(t?location.replace(u):location.assign(u))}history[t?"replaceState":"pushState"]({},"",e),render()},parseHash=()=>{const e=location.pathname.replace(/^\/(en|de|fr|es|it|pl|nl|ar|cs_CZ|ro|tr|pt|sv|da_DK|hu|el_GR|fi|zh_CN|ja|ko_KR)(?=\/|$)/,"").replace(/\/+$/,"")||"/",t={};return new URLSearchParams(location.search).forEach((e,s)=>t[s]=e),{path:e,params:t}};function scrollToId(e){setTimeout(()=>{const t=document.getElementById(e);t&&t.scrollIntoView({behavior:"smooth",block:"start"})},80)}function toast(e){const t=document.createElement("div");t.className="toast",t.setAttribute("role","status"),t.innerHTML=ic("check")+esc(e),document.body.appendChild(t),setTimeout(()=>t.remove(),3200)}function setUser(e){S.user=e,e?store.set("user",e):store.del("user"),renderCta(),renderMbar()}function renderHeader(){const e=MENU.map((e,t)=>e.items?`
  • ${e.label}${ic("chevron")}
    ${e.items.map(e=>`${ic(e[0])}${e[1]}${e[2]}`).join("")}
  • `:`
  • ${e.label}
  • `).join("");$("#hdr").innerHTML=`
    ${logoHtml()}
    `,renderCta(),$("#drawer").innerHTML=`${MENU.map(e=>e.items?`
    ${e.label}${ic("chevron")}${e.items.map(e=>`${ic(e[0])}${e[1]}${e[2]}`).join("")}
    `:`${e.label}`).join("")}`}function renderCta(){const e=$("#cta-slot");e&&(e.innerHTML=S.user?btn("/my/dashboard","My Dashboard","btn-primary btn-sm"):'Become a Club MemberJoin Free')}function renderMbar(){$("#mbar").innerHTML=S.user?`${btn("/my/dashboard","Dashboard","btn-primary")}${btn("/ask-the-club","Ask the Club","btn-secondary")}`:`${btn("/join","Join Free","btn-primary")}${btn("/ask-the-club","Ask the Club","btn-secondary")}`}function updateHeader(e){$$(".nl").forEach(t=>{const s=MENU[+t.dataset.i],a=[s.href].concat((s.items||[]).map(e=>e[3].split("?")[0]));t.classList.toggle("active",a.includes(e)||e.startsWith(s.href+"/"))})}function renderFooter(){const e=(e,t)=>`

    ${e}

    `;$("#ftr").innerHTML=`
    ${logoHtml()}

    One Club. Every Connection Your Business Needs. Discover the technology, integrations, fulfillment solutions, business services, and expert connections your company needs to grow.

    \n ${e("Solutions",[["Explore Solutions","/solutions"],["Integration Finder","/integration-finder"],["Marketplace Integrations","/marketplace-integrations"],["Odoo & ERP","/odoo-erp"],["AI & Automation","/ai-automation"]])}\n ${e("Services",[["Fulfillment & FSN","/fulfillment-network"],["Business Services","/business-services"],["Partners","/partners"],["AdlerDoo","/adlerdoo"],["Pricing","/pricing"]])}\n ${e("The Club",[["The Club","/club"],["Join Free","/join"],["Log In","/login"],["Ask the Club","/ask-the-club"],["About & Contact","/about"]])}\n ${e("Legal",[["Privacy Policy","/privacy"],["Terms","/terms-of-use"],["Cookie Information","/cookies"],["Impressum","/impressum"],["Community Guidelines","/community-guidelines"]])}
    \n
    © 2026 Digital Holding Club. Powered by TecSee.Platform names indicate compatibility only and do not imply partnership.
    `}function resolve(e,t){const s={"/":home,"/solutions":solutions,"/integration-finder":finder,"/marketplace-integrations":marketplaces,"/odoo-erp":erpPage,"/fulfillment-network":fulfillment,"/business-services":businessServices,"/ai-automation":ai,"/partners":partners,"/pricing":pricing,"/adlerdoo":adlerdoo,"/club":club,"/ask-the-club":ask,"/join":join,"/login":login,"/onboarding":onboarding,"/my/dashboard":dashboard,"/about":about};if(s[e])return s[e](t);let a;return(a=e.match(/^\/integration\/([\w-]+)$/))?integrationDetail(a[1]):(a=e.match(/^\/service\/([\w-]+)$/))?serviceDetail(a[1]):(a=e.match(/^\/partner\/([\w-]+)$/))?partnerDetail(a[1]):(a=e.match(/^\/resource\/([\w-]+)$/))?resourceDetail(a[1]):(a=e.match(/^\/event\/([\w-]+)$/))?eventDetail(a[1]):(a=e.match(/^\/(privacy|terms-of-use|cookies|impressum|community-guidelines)$/))?legal(a[1].replace("-of-use","")):notFound()}let lastPath="";function render(){const{path:e,params:t}=parseHash(),s=resolve(e,t);if(s.auth&&!S.user)return void go("/login",1);window.DHC_SSR||(document.title=s.title);let a=$("meta[name=description]");a&&!window.DHC_SSR&&(a.content=s.desc||"");let n=$("meta[name=robots]");if(n&&!window.DHC_SSR&&(n.content=s.noindex?"noindex,nofollow":"index,follow"),window.DHC_SSR||($("#main").innerHTML=s.html),updateHeader(e),closeDrawer(),!t.s){const e=document.documentElement;e.style.scrollBehavior="auto",window.scrollTo(0,0),e.style.scrollBehavior=""}S.user&&$$('#main form[data-form="request"]').forEach(e=>{const t=e.querySelector("[name=name]"),s=e.querySelector("[name=email]");t&&!t.value&&(t.value=S.user.name||""),s&&!s.value&&(s.value=S.user.email||"")}),s.mount&&s.mount(),mountSearch(),e!==lastPath&&$("#main").focus({preventScroll:!0}),lastPath=e}function closeDrawer(){const e=$("#drawer");e&&e.classList.remove("open");const t=$(".burger");t&&t.setAttribute("aria-expanded","false"),document.body.style.overflow=""}function toggleDrawer(){const e=$("#drawer"),t=!e.classList.contains("open");e.style.top=Math.max(0,Math.round($("#hdr").getBoundingClientRect().bottom))+"px",e.classList.toggle("open",t),$(".burger").setAttribute("aria-expanded",String(t)),document.body.style.overflow=t?"hidden":""}function openSearch(){closeDrawer(),$("#overlay").innerHTML=``;const e=$("#gs-q");e.focus(),e.addEventListener("input",()=>{const t=e.value.trim(),s=$("#gs-res");if(!t)return void(s.innerHTML="");const a=searchSol(t).slice(0,8);s.innerHTML=a.length?a.map(e=>`${ic(CATS.find(t=>t.id===e.cat).icon)}${e.title}${catName(e.cat)}`).join("")+`See all results`:`
    No exact match found. Request a solution
    `}),e.addEventListener("keydown",t=>{"Enter"===t.key&&e.value.trim()&&(closeSearch(),go("/solutions?q="+encodeURIComponent(e.value.trim())))})}function closeSearch(){$("#overlay").innerHTML=""}function mountSearch(){$$("form[data-search]").forEach(e=>{if("sol"===e.dataset.search)return;const t=$("input",e),s=$(".tahead",e);let a=[],n=-1;const i=()=>{s.hidden=!0,t.setAttribute("aria-expanded","false"),t.removeAttribute("aria-activedescendant"),n=-1},o=()=>{$$(".ta",s).forEach((e,t)=>e.setAttribute("aria-selected",String(t===n))),n>=0&&t.setAttribute("aria-activedescendant",$$(".ta",s)[n].id||"")};t.addEventListener("input",()=>{const o=t.value.trim();o?(a=searchSol(o).slice(0,6),s.innerHTML=a.length?a.map((t,s)=>`${ic(CATS.find(e=>e.id===t.cat).icon)}${t.title}${catName(t.cat)}`).join("")+`See all results for "${esc(o)}"`:`
    No exact match. Request a solution
    `,s.hidden=!1,t.setAttribute("aria-expanded","true"),n=-1):i()}),t.addEventListener("keydown",e=>{const t=$$(".ta",s).length;"ArrowDown"===e.key&&t?(e.preventDefault(),n=(n+1)%t,o()):"ArrowUp"===e.key&&t?(e.preventDefault(),n=(n-1+t)%t,o()):"Escape"===e.key?i():"Enter"===e.key&&n>=0&&(e.preventDefault(),$$(".ta",s)[n].click(),i())}),t.addEventListener("blur",()=>setTimeout(i,120)),s.addEventListener("mousedown",e=>e.preventDefault()),s.addEventListener("click",()=>setTimeout(i,0)),e.addEventListener("submit",e=>{e.preventDefault();const s=t.value.trim();i(),go("/solutions"+(s?"?q="+encodeURIComponent(s):""))})})}function mountHome(){$("#home-finder").addEventListener("submit",e=>{e.preventDefault();const t=$("#hf-src").value,s=$("#hf-dst").value,a=$("#hf-goal").value;if(!t||!s){const e=$(t?"#hf-dst":"#hf-src");return e.focus(),e.closest(".field").classList.add("err"),e.style.borderColor="#C62828",void toast("Please choose a system and a target platform")}go(`/integration-finder?src=${encodeURIComponent(t)}&dst=${encodeURIComponent(s)}${a?"&goal="+encodeURIComponent(a):""}`)})}function mountSolutions(e){const t={q:e.q||"",cat:e.cat||"",platform:"",goal:"",industry:"",type:""},s=$("#sol-res"),a=$("#sol-count"),n=$("#sol-featured"),i=$("#sol-q");i.value=t.q;const o=()=>!!(t.q||t.cat||t.platform||t.goal||t.industry||t.type);function r(){const e=searchSol(t.q).filter(e=>(!t.cat||e.cat===t.cat)&&(!t.platform||e.platforms.includes(t.platform))&&(!t.goal||e.goals.includes(t.goal))&&(!t.industry||e.ind.includes(t.industry))&&(!t.type||e.type===t.type));n.hidden=o(),a.textContent=`${e.length} ${1===e.length?"solution":"solutions"}${o()?" match your search":" available"}`,s.innerHTML=e.length?e.map(solCard).join(""):`
    ${ic("search")}

    Couldn't find exactly what you're looking for?

    Tell us what you need, and we'll help you explore your options.

    ${btn("/ask-the-club?type=unsure"+(t.q?"&q="+encodeURIComponent(t.q):""),"Request a Solution","btn-primary")}
    `,$$("[data-cat]").forEach(e=>e.setAttribute("aria-pressed",String(e.dataset.cat===t.cat))),$("#f-cat").value=t.cat,$("#f-platform").value=t.platform,$("#f-goal").value=t.goal,$("#f-industry").value=t.industry,$("#f-type").value=t.type;const i=[t.q&&"q="+encodeURIComponent(t.q),t.cat&&"cat="+t.cat].filter(Boolean).join("&");try{history.replaceState(null,"",location.pathname+(i?"?"+i:""))}catch(e){}}i.addEventListener("input",()=>{t.q=i.value,r()}),$("form[data-search=sol]").addEventListener("submit",e=>{e.preventDefault(),t.q=i.value,r(),scrollToId("sol-count")}),$$("[data-cat]").forEach(e=>e.addEventListener("click",()=>{t.cat=e.dataset.cat,r()})),[["f-cat","cat"],["f-platform","platform"],["f-goal","goal"],["f-industry","industry"],["f-type","type"]].forEach(([e,s])=>$("#"+e).addEventListener("change",e=>{t[s]=e.target.value,r()})),$("#f-clear").addEventListener("click",()=>{Object.assign(t,{q:"",cat:"",platform:"",goal:"",industry:"",type:""}),i.value="",r()}),window.__solSet=e=>{t.q=e,i.value=e,r(),scrollToId("sol-count")},r()}function mountFinder(e){const t={step:1,src:e.src||"",dst:e.dst||"",goals:e.goal?e.goal.split(","):[]};t.src&&t.dst&&(t.step=4);const s=$("#fwiz"),a=["Current system","Connect with","What to sync","Results"],n=(e,t)=>``;function i(e){const i=`
      ${a.map((e,s)=>`
    1. ${s+1}. ${e}
    2. `).join("")}
    `;let o="";if(1===t.step&&(o=`

    Select your current system.

    ${CUR.map(e=>n(e,t.src===e)).join("")}
    `),2===t.step&&(o=`

    Select the platform or service you want to connect.

    ${TGT.filter(e=>e!==t.src).map(e=>n(e,t.dst===e)).join("")}
    `),3===t.step&&(o=`

    Select what you want to synchronize or automate.

    Choose one or more.

    ${GOALS.map(e=>n(e,t.goals.includes(e))).join("")}
    `),4===t.step){const e=finderResults(t.src,t.dst),s=e.some(e=>"ok"===e.status),a=`type=${"Fulfillment Provider"===t.dst?"fulfillment":"marketplace"}¤t=${encodeURIComponent(t.src)}&target=${encodeURIComponent(t.dst)}${t.goals.length?"&goal="+encodeURIComponent(t.goals.join(", ")):""}`;o=`

    Your options

    ${esc(t.src)} → ${esc(t.dst)}${t.goals.length?" · "+esc(t.goals.join(", ")):""}

    \n ${e.length?`
    ${e.map(e=>`

    ${e.title}

    ${"ok"===e.status?`${ic("check")}Confirmed integration`:'Not confirmed, available on request'}
    ${esc(e.src)}${ic("arrow")}${esc(e.dst)}
    Main use cases
    ${(t.goals.length?t.goals:["Orders","Product Upload","Inventory"]).map(e=>`${e}`).join("")}
    `).join("")}
    `:""}\n ${s?"":`

    Need a Different Connection?

    Our team can help review your integration requirements and explore the available options.

    ${form("fr","request",[{name:"name",label:"Full Name",required:1,ac:"name"},{name:"email",label:"Business Email",type:"email",required:1,ac:"email",err:"Please enter a valid email address."},{name:"message",label:"What would you like to connect?",type:"textarea",required:1,full:1,value:`I currently use ${t.src} and want to connect it with ${t.dst}.${t.goals.length?" Goals: "+t.goals.join(", ")+".":""}`},{name:"privacy",label:PRIVACY,type:"check",required:1}],"Request an Integration",{title:`Integration request: ${t.src} + ${t.dst}`})}
    `}`}const r=1===t.step?!!t.src:2===t.step?!!t.dst:3===t.step&&t.goals.length>0,l=t.step<4?`
    `:'
    Ask the Club
    ';if(s.innerHTML=i+o+l,e){const t=$$(".optbtn",s).find(t=>t.dataset.v===e);t&&t.focus()}}s.addEventListener("click",e=>{const a=e.target.closest(".optbtn"),n=e.target.closest("[data-w]");if(a){const e=a.dataset.v;return 1===t.step?(t.src=e,t.dst===e&&(t.dst="")):2===t.step?t.dst=e:t.goals=t.goals.includes(e)?t.goals.filter(t=>t!==e):t.goals.concat(e),void i(e)}if(n){const e=n.dataset.w;"next"===e&&t.step++,"back"===e&&t.step--,"reset"===e&&(t.step=1,t.src="",t.dst="",t.goals=[]),i(),s.scrollIntoView({block:"nearest",behavior:"smooth"})}}),i()}function mountMarkets(){const e=$("#mk-grid"),t=$("#mk-q"),s=()=>{const s=($("input[name=mk-s]:checked")||{}).value||"",a=t.value.toLowerCase().trim(),n=MARKETS.filter(e=>(!s||e.status===s)&&(!a||e.name.toLowerCase().includes(a)||e.type.toLowerCase().includes(a)));e.innerHTML=n.length?n.map(mkCard).join(""):`
    ${ic("search")}

    No matching platform listed

    Tell us what you want to connect and we will review the options.

    ${btn("/ask-the-club?type=marketplace&q="+encodeURIComponent(t.value),"Request an Integration","btn-primary btn-sm")}
    `};t.addEventListener("input",s),$$("input[name=mk-s]").forEach(e=>e.addEventListener("change",s)),s()}function mountErp(){$("#erp-sel").addEventListener("submit",e=>{e.preventDefault();const t=$("#erp-cur").value,s=$("#erp-goal").value;go(`/ask-the-club?type=erp${t?"¤t="+encodeURIComponent(t):""}${s?"&q="+encodeURIComponent("Goal: "+s):""}`)})}function mountAsk(){const e=$("#ask-category"),t=$$("#ask-types input");t.forEach(t=>t.addEventListener("change",()=>{var s;e.value=(s=t.value,(ASK_TYPES.find(e=>e[0]===s)||[])[3]||""),e.closest(".field").classList.remove("err")})),e.addEventListener("change",()=>{const s=ASK_TYPES.find(t=>t[3]===e.value);t.forEach(e=>e.checked=!!s&&e.value===s[0])})}document.addEventListener("click",e=>{const t=e.target,s=t.closest('a[href^="/"]');if(s&&!e.defaultPrevented&&0===e.button&&!e.metaKey&&!e.ctrlKey&&!e.shiftKey&&!s.target&&!s.hasAttribute("download"))return e.preventDefault(),void go(s.getAttribute("href"));const a=t.closest("[data-q]");if(a)return e.preventDefault(),closeSearch(),void("/solutions"===parseHash().path&&window.__solSet?window.__solSet(a.dataset.q):go("/solutions?q="+encodeURIComponent(a.dataset.q)));const n=t.closest("[data-jump]");if(n){e.preventDefault();const t=n.getAttribute("href").slice(1),s=document.getElementById(t);return void(s&&(s.scrollIntoView({behavior:"smooth",block:"start"}),"main"===t&&s.focus({preventScroll:!0})))}const i=t.closest("[data-save]");if(i){if(e.preventDefault(),!S.user)return toast("Create a free account to save resources"),void go("/join");const t=i.dataset.save,s=S.saved.includes(t);return S.saved=s?S.saved.filter(e=>e!==t):S.saved.concat(t),store.set("saved",S.saved),$$(`[data-save="${t}"]`).forEach(e=>{e.setAttribute("aria-pressed",String(!s)),e.innerHTML=ic("bookmark")+(s?"Save":"Saved")}),void toast(s?"Removed from saved":"Saved to your dashboard")}const o=t.closest("[data-act]");if(o){const e=o.dataset.act;if("search"===e)openSearch();else if("closesearch"===e)closeSearch();else if("closesearch-bg"===e)t===o&&closeSearch();else if("burger"===e)toggleDrawer();else if("focus-search"===e)$("#hero-search").scrollIntoView({behavior:"smooth",block:"center"}),setTimeout(()=>$("#hs-q").focus({preventScroll:!0}),450);else if("togglepw"===e){const e=o.parentElement.querySelector("input"),t="password"===e.type;e.type=t?"text":"password",o.textContent=t?"Hide":"Show",o.setAttribute("aria-label",t?"Hide password":"Show password")}else"forgot"===e?$("#login-wrap").innerHTML=`

    Reset your password

    Enter your email and we will send a reset link if an account exists.

    ${form("rs","reset",[{name:"email",label:"Email",type:"email",required:1,full:1,err:"Please enter a valid email address."}],"Send Reset Link")}

    Back to log in

    `:"logout"===e?(setUser(null),toast("You have been logged out"),go("/")):"privacy"===e?toast("Prototype: connect this to your privacy request workflow"):"download"===e?toast("Prototype: attach the real file here"):"notes"===e?(document.body.classList.toggle("hide-notes"),o.textContent=document.body.classList.contains("hide-notes")?"Show dev notes":"Hide dev notes"):"demo"===e?(setUser({name:"Alex Member",email:"alex@example.com",interests:["Marketplace Integrations","Fulfillment"],marketing:!1}),go("/my/dashboard")):"closebar"===e&&$("#protobar").remove();return}const r=t.closest(".dd a,.drawer a");if(r){closeDrawer();const e=$("#hdr");e.classList.add("closing"),e.dataset.cl=r.closest(".has-dd")?r.closest(".has-dd").querySelector(".nl").dataset.i:"",document.activeElement&&document.activeElement.blur()}t.closest("[data-closesearch]")&&closeSearch()}),document.addEventListener("mouseover",e=>{const t=$("#hdr");if(!t||!t.classList.contains("closing"))return;const s=e.target.closest(".has-dd");s&&s.querySelector(".nl").dataset.i===t.dataset.cl||t.classList.remove("closing")}),document.addEventListener("keydown",e=>{"Escape"===e.key&&(closeSearch(),closeDrawer(),document.activeElement&&document.activeElement.closest(".dd")&&document.activeElement.blur())});const FH={async request(e,t){const s=(document.querySelector("meta[name=csrf-token]")||{}).content||"";if(window.DHC_LIVE=!!s&&s.indexOf("__")<0,window.DHC_LIVE){const a=e.querySelector("[type=submit]");a&&(a.disabled=!0);const n=["name","email","company","privacy","marketing"],i=e=>String(e).replace(/&/g,"&").replace(/!n.includes(e)&&t[e]&&t[e].length).map(e=>i(e)+": "+i(Array.isArray(t[e])?t[e].join(", "):t[e]));o.push("Page: "+i(location.pathname));const r=new FormData;r.append("csrf_token",s),r.append("team_id","1"),r.append("name","[Club] "+(t.category||e.dataset.title||"Request")),r.append("partner_name",(t.name||"").trim()),r.append("partner_email",(t.email||"").trim()),t.company&&r.append("partner_company_name",t.company),r.append("description",o.join("
    "));try{const e=await fetch("/website/form/helpdesk.ticket",{method:"POST",body:r,headers:{Accept:"application/json"}}),t=await e.json();if(!t||!t.id)throw new Error("no id")}catch(e){return a&&(a.disabled=!1),void toast("Your request could not be sent. Please try again or email us.")}}S.requests.unshift({title:t.category||e.dataset.title||"Request",date:(new Date).toLocaleDateString("en-GB",{day:"numeric",month:"short",year:"numeric"}),status:"Received"}),store.set("requests",S.requests);const a=e.closest("[data-formwrap]");a.innerHTML=thanks("ask"===e.id?"Our team will review your requirements and contact you using your selected communication method.":""),a.scrollIntoView({behavior:"smooth",block:"center"})},join(e,t){const s=t.interests,a={name:t.name.trim(),email:t.email.trim().toLowerCase(),interests:Array.isArray(s)?s:s?[s]:[],marketing:!!t.marketing};S.users=S.users.filter(e=>e.email!==a.email).concat(a),store.set("users",S.users),setUser(a),toast("Welcome to the Club"),go("/onboarding")},login(e,t){const s=t.email.trim().toLowerCase(),a=S.users.find(e=>e.email===s);if(!a){const t=e.querySelector("[name=email]").closest(".field");return t.classList.add("err"),void(t.querySelector(".errmsg").textContent="No account found for this email in this prototype. Create a free account first.")}setUser(a),toast("Welcome back"),go("/my/dashboard")},reset(e){e.closest("[data-formwrap]").innerHTML=`
    ${ic("mail")}

    Check your inbox

    If an account exists for this email address, a reset link will be sent.

    ${devnote("Prototype: no email is sent.")}${btn("/login","Back to log in","btn-primary")}
    `},settings(e,t){const s=t.interests;Object.assign(S.user,{name:t.name.trim(),email:t.email.trim().toLowerCase(),interests:Array.isArray(s)?s:s?[s]:[],marketing:!!t.marketing}),store.set("user",S.user),S.users=S.users.filter(e=>e.email!==S.user.email).concat(S.user),store.set("users",S.users),toast("Changes saved"),render(),setTimeout(()=>scrollToId("rec"),50)}};document.addEventListener("submit",e=>{const t=e.target.closest("form[data-form]");if(!t)return;e.preventDefault();let s=!0,a=null;if($$(".field",t).forEach(e=>e.classList.remove("err")),$$("[required]",t).forEach(e=>{let n="checkbox"===e.type?!e.checked:!e.value.trim();if(n||"email"!==e.type||(n=!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e.value.trim())),!n&&"password"===e.type&&"join"===t.dataset.form&&e.value.length<8&&(n=!0),n){s=!1;const t=e.closest(".field");t&&t.classList.add("err"),e.setAttribute("aria-invalid","true"),a=a||e}else e.removeAttribute("aria-invalid")}),!s)return void a.focus();const n=new FormData(t),i={};for(const e of new Set(n.keys())){const t=n.getAll(e);i[e]="interests"===e||t.length>1?t:t[0]}FH[t.dataset.form](t,i)}),document.addEventListener("submit",e=>{const t=e.target;"onb"===t.id&&(e.preventDefault(),S.user.interests=$$("input[name=i]:checked",t).map(e=>e.value),store.set("user",S.user),S.users=S.users.filter(e=>e.email!==S.user.email).concat(S.user),store.set("users",S.users),go("/my/dashboard"))}),(()=>{const ids=["hdr","drawer","ftr","mbar"],keep={},mn=$("#main");window.DHC_SSR=!!(mn&&mn.children.length&&!location.search&&!S.user);ids.forEach(i=>{const el=$("#"+i);keep[i]=el?el.innerHTML:""});renderHeader(),renderFooter(),renderMbar();if(window.DHC_SSR)ids.forEach(i=>{const el=$("#"+i);el&&keep[i].trim()&&(el.innerHTML=keep[i])});const c=document.querySelector(".hdr-cta");if(c&&!c.querySelector(".langsw")){const p=location.pathname.replace(/^\/(en|de|fr|es|it|pl|nl|ar|cs_CZ|ro|tr|pt|sv|da_DK|hu|el_GR|fi|zh_CN|ja|ko_KR)(?=\/|$)/,"")||"/",en="/en"===window.DHC_LP,a=document.createElement("a");a.className="btn btn-ghost btn-sm langsw",a.target="_self",a.href=en?"/website/lang/de_DE?r="+encodeURIComponent(p):"/en"+("/"===p?"":p),a.textContent=en?"DE":"EN",a.setAttribute("aria-label",en?"Deutsch":"English"),c.insertBefore(a,c.firstChild)}})(),window.addEventListener("popstate",render),render();