{"id":278113,"date":"2023-12-18T15:06:48","date_gmt":"2023-12-18T14:06:48","guid":{"rendered":"https:\/\/www.msd-online.ch\/retrospective-de-la-retraite-du-team\/"},"modified":"2026-04-07T17:34:08","modified_gmt":"2026-04-07T15:34:08","slug":"retrospective-de-la-retraite-du-team","status":"publish","type":"post","link":"https:\/\/msd.swiss\/fr\/retrospective-de-la-retraite-du-team\/","title":{"rendered":"R\u00e9trospective de la retraite du team"},"content":{"rendered":"\n<h4 class=\"wp-block-heading\"><strong>Le 3 novembre dernier, tous nos collaborateurs ont pris du temps pour travailler ensemble de mani\u00e8re cibl\u00e9e sur certains th\u00e8mes, ainsi que pour faire une r\u00e9trospective de l\u2019ann\u00e9e \u00e9coul\u00e9e.<\/strong><\/h4>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/www2.msd-online.ch\/wp-content\/uploads\/2023\/12\/Retraite-1024x640.png\" alt=\"\" class=\"wp-image-277980\" style=\"width:1080px\" srcset=\"https:\/\/msd.swiss\/wp-content\/uploads\/2023\/12\/Retraite-1024x640.png 1024w, https:\/\/msd.swiss\/wp-content\/uploads\/2023\/12\/Retraite-300x188.png 300w, https:\/\/msd.swiss\/wp-content\/uploads\/2023\/12\/Retraite-768x480.png 768w, https:\/\/msd.swiss\/wp-content\/uploads\/2023\/12\/Retraite-400x250.png 400w, https:\/\/msd.swiss\/wp-content\/uploads\/2023\/12\/Retraite-1080x675.png 1080w, https:\/\/msd.swiss\/wp-content\/uploads\/2023\/12\/Retraite-1280x800.png 1280w, https:\/\/msd.swiss\/wp-content\/uploads\/2023\/12\/Retraite-980x613.png 980w, https:\/\/msd.swiss\/wp-content\/uploads\/2023\/12\/Retraite-480x300.png 480w, https:\/\/msd.swiss\/wp-content\/uploads\/2023\/12\/Retraite.png 1440w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Une fois de plus, nous avons \u00e9t\u00e9 touch\u00e9s et enthousiasm\u00e9s par tout ce que Dieu a fait. Il nous a permis de poursuivre le d\u00e9veloppement de nos projets, de cr\u00e9er de nouveaux produits tels la brochure Paix et de g\u00e9rer les d\u00e9fis d\u2019un changement vers une nouvelle \u00e9tape.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">C\u2019est avec une reconnaissance particuli\u00e8re que nous nous sommes souvenus des camps de cette ann\u00e9e. De nouveaux lieux ont \u00e9t\u00e9 visit\u00e9s et un nombre record de personnes ont profit\u00e9 de nos change camps.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nous avons aussi \u00e9chang\u00e9 \u00e0 propos de l\u2019organisation de notre action de sponsoring. Nous avons beaucoup appris par cette exp\u00e9rience et sommes en mesure de d\u00e9velopper de nouvelles possibilit\u00e9s pour g\u00e9n\u00e9rer des partenaires et des dons.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un autre th\u00e8me de notre retraite a \u00e9t\u00e9 le d\u00e9roulement du processus de notre rebranding, et la refonte de notre image. Nous allons pr\u00e9parer toutes les \u00e9tapes n\u00e9cessaires au cours d\u2019une ann\u00e9e de transition et faire avancer cet important projet en collaboration avec un groupe de travail.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les premi\u00e8res petites adaptations consisteront \u00e0 publier nos articles et l\u2019actualisation des \u00e9v\u00e9nements courants sur notre site web, l\u00e9g\u00e8rement adapt\u00e9, sous forme de blog. C\u2019est de l\u00e0 que nous puiserons les contenus de nos informations \u00e9crites et de nos courriels.<br><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Dans l\u2019ensemble, notre retraite a \u00e9t\u00e9 tr\u00e8s productive et inspirante. Nous avons acquis de pr\u00e9cieuses connaissances et d\u00e9fini des \u00e9tapes concr\u00e8tes pour l\u2019avenir. Dieu est avec nous, ce qui nous fortifie sans cesse et nous motive dans notre mission. Gr\u00e2ce \u00e0 nos exp\u00e9riences, et \u00e0 la sagesse que Dieu donne, nous sommes bien \u00e9quip\u00e9s pour continuer notre \u0153uvre.<\/p>\n<\/blockquote>\n<div class=\"et_pb_section_0 et_pb_section et_pb_section--fixed et_section_regular et_flex_section\" id=\"popup_projekte\"><div class=\"et_pb_row_0 et_pb_row et_flex_row\" id=\"popup-projekte-inhalt\"><div class=\"et_pb_column_0 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_phone\" id=\"bild_popup\"><div class=\"et_pb_code_0 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\" data-et-mv-hidden-phone=\"true\"><script>\n\/* Projekt-Popup: Button \u00f6ffnet den jeweiligen Projekt-Link immer in einem neuen Tab (DE & FR).\n   Greift \u00fcber die ID \"projekt_button\" oder jeden Button im Projekt-Popup.\n   Capture-Phase: wir sind vor dem alten jQuery-Button-Script im Header dran,\n   das sonst alle Divi-Buttons im selben Tab \u00f6ffnet. *\/\n(function () {\n  if (window.__msdProjektButton) return;\n  window.__msdProjektButton = true;\n\n  document.addEventListener('click', function (e) {\n    var btn = e.target.closest && e.target.closest('#projekt_button, #popup_projekte a.et_pb_button');\n    if (!btn) return;\n\n    var href = btn.getAttribute('href');\n    if (!href || href === '#') return;\n\n    e.preventDefault();\n    e.stopPropagation();\n    e.stopImmediatePropagation();\n\n    window.open(href, '_blank', 'noopener');\n  }, true);\n})();\n<\/script><\/div><\/div><\/div><div class=\"et_pb_column_1 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_phone\"><div class=\"et_pb_group_0 et_pb_group et_pb_module et_flex_group et_pb_css_mix_blend_mode_passthrough\"><div class=\"et_pb_image_0 et_pb_image et_pb_module et_flex_module\" id=\"logo_popup\"><span class=\"et_pb_image_wrap\"><img src=\"https:\/\/www2.msd-online.ch\/wp-content\/uploads\/2025\/05\/cc_popup.png\" title=\"cc_popup\" width=\"1080\" height=\"226\" srcset=\"https:\/\/msd.swiss\/wp-content\/uploads\/2025\/05\/cc_popup.png 1080w, https:\/\/msd.swiss\/wp-content\/uploads\/2025\/05\/cc_popup-300x63.png 300w, https:\/\/msd.swiss\/wp-content\/uploads\/2025\/05\/cc_popup-1024x214.png 1024w, https:\/\/msd.swiss\/wp-content\/uploads\/2025\/05\/cc_popup-768x161.png 768w, https:\/\/msd.swiss\/wp-content\/uploads\/2025\/05\/cc_popup-980x205.png 980w, https:\/\/msd.swiss\/wp-content\/uploads\/2025\/05\/cc_popup-480x100.png 480w\" sizes=\"(max-width: 1080px) 100vw, 1080px\" class=\"wp-image-287092\" \/><\/span><\/div><div class=\"et_pb_text_0 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\" id=\"beschreibung\"><div class=\"et_pb_text_inner\"><p><span>\"Seit 1962 entwickeln sich die Change Camps stetig weiter. Sie verbinden tiefe Gemeinschaft, starke Gotteserfahrungen und das Eintauchen in andere Kulturen. Durch kreative Outreaches mit Sport, praktischen Eins\u00e4tzen, Worship und Prayer Walks wachsen wir in einen evangelistischen Lebensstil. Unsere Vision ist, Jesus in verschiedenen Nationen bekannt zu machen und Jugendliche f\u00fcr ein Leben zu begeistern, das Gott ehrt. Wir wollen lokale Kirchen unterst\u00fctzen und ein Segen f\u00fcr Menschen vor Ort sein. Ein Change Camp soll das Leben der Teilnehmenden nachhaltig ver\u00e4ndern, ihr Herz neu f\u00fcr Gott entfachen und sie mit Leidenschaft f\u00fcr Mitmenschen, Regionen und Nationen erf\u00fcllen \u2013 damit sie diese Begeisterung auch in ihren Alltag tragen.\"<\/span><\/p>\n<\/div><\/div><div class=\"et_pb_module et_pb_button_module_wrapper et_pb_button_0_wrapper preset--module--divi-button--default_wrapper\"><a class=\"et_pb_button_0 et_pb_button et_pb_bg_layout_dark et_pb_module et_flex_module preset--module--divi-button--default\" href=\"\" target=\"_blank\" id=\"projekt_button\">titel<\/a><\/div><\/div><div class=\"et_pb_icon_0 et_pb_icon et-interaction-target-kp1pp7plxu et_pb_module et_flex_module\" data-interaction-trigger=\"poknua1gij\" data-interaction-target=\"kp1pp7plxu\"><span class=\"et_pb_icon_wrap\"><span class=\"et-pb-icon\">\uf00d<\/span><\/span><\/div><div class=\"et_pb_text_1 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\" id=\"kostenstelle\"><div class=\"et_pb_text_inner\" data-et-mv-hidden-phone=\"true\"><p><strong>M\u00f6chtest du das Projekt finanziell unterst\u00fctzen?<\/strong><br \/>Missionswerk msd | Grassiweg 3 | 3714 Frutigen<br \/>PC-Nr. 30-26890-3 | IBAN CH69 0900 0000 3002 6890 3<br \/>Vermerk: <span id=\"kostenstelle-projekt\">projekt<\/span><\/p>\n<\/div><\/div><\/div><\/div><div class=\"et_pb_row_1 et_pb_row et_flex_row\" id=\"popup-loader_projekte\"><div class=\"et_pb_column_2 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_code_1 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><div class=\"skeleton-wrapper\">\n  <div class=\"skeleton-links\">\n    <div class=\"skeleton-projekte skeleton-bild\"><\/div>\n  <\/div>\n  <div class=\"skeleton-rechts_p\">\n    <div>\n      \n    \n    <div class=\"skeleton-projekte skeleton-logo\"><\/div>\n    <div class=\"skeleton-projekte skeleton-text_beschreibung\"><\/div>\n    <div class=\"skeleton-projekte skeleton-button\"><\/div>\n    <\/div>\n    \n    <div class=\"skeleton_kostenstelle_p\">\n      <div class=\"skeleton-projekte skeleton-text\"><\/div>\n    <div class=\"skeleton-projekte skeleton-text mittel\"><\/div>\n    <div class=\"skeleton-projekte skeleton-text kurz\"><\/div>\n    <\/div>\n  <\/div>\n<\/div><\/div><\/div><\/div><\/div><\/div><div class=\"et_pb_section_1 et_pb_section et_pb_section--fixed et_section_regular et_flex_section et-interaction-target-tj91x06n4w\" data-interaction-target=\"tj91x06n4w\" id=\"popup_mitarbeiter\"><div class=\"et_pb_row_2 et_pb_row et_flex_row\" id=\"popup-inhalt\"><div class=\"et_pb_column_3 et_pb_column et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_phone\" id=\"mitarbeiter_bild\"><div class=\"et_pb_code_2 et_pb_code et_pb_module\" id=\"mitarbeiter_bild\"><div class=\"et_pb_code_inner\"><style>\n\/* IBAN: auf Desktop in derselben Zeile wie die PC-Nr., auf Mobile eigene Zeile *\/\n#popup_mitarbeiter .msd-br-mobile {\n  display: none;\n}\n\n@media only screen and (max-width: 767px) {\n  #popup_mitarbeiter .msd-br-mobile {\n    display: inline;\n  }\n  #popup_mitarbeiter .msd-sep {\n    display: none;\n  }\n}\n<\/style>\n\n<script>\n(function () {\n  \/\/ Nur einmal ausf\u00fchren, auch wenn das Skript doppelt auf der Seite ist\n  if (window.__msdPopupKombi) return;\n  window.__msdPopupKombi = true;\n\n  const lang = (document.documentElement.lang || 'de').substring(0, 2);\n  const params = `acf_format=standard&lang=${lang}&_embed`;\n  const MOBILE = '(max-width: 980px)';\n  const POST_TYPE = 'mitarbeiter';\n\n  \/\/ PC-Nr. und IBAN: IBAN bricht nie mittendrin um, auf Mobile eigene Zeile\n  const zahlungsZeile =\n    '<span style=\"white-space:nowrap\">PC-Nr. 30-26890-3<\/span>' +\n    '<span class=\"msd-sep\"> | <\/span><br class=\"msd-br-mobile\">' +\n    '<span style=\"white-space:nowrap\">IBAN CH69 0900 0000 3002 6890 3<\/span>';\n\n  const cache = {};            \/\/ \"typ_idOderSlug\" -> Daten\n  const laufend = {};          \/\/ \"typ_idOderSlug\" -> laufende Anfrage\n  const listen = {};           \/\/ typ -> Promise vom Hintergrund-Laden\n  const bilderGeladen = new Set();\n  let aktuellerKlick = null;\n\n  \/\/ =====================================================\n  \/\/ Hilfsfunktionen (unver\u00e4ndert)\n  \/\/ =====================================================\n  const getImageUrl = (field) => {\n    if (!field) return '';\n    if (typeof field === 'string') return field;\n    if (typeof field === 'object' && field !== null) {\n      if (field.url) return field.url;\n      if (field.source_url) return field.source_url;\n      if (field.sizes) {\n        const s = field.sizes;\n        return s.large?.url || s.large || s.medium_large?.url || s.medium_large || s.full?.url || s.full || '';\n      }\n    }\n    return '';\n  };\n\n  const getMitarbeiterFoto = (data) => {\n    const felder = data.acf || {};\n    const kandidaten = [\n      felder.bild_sw_name, felder.bild_sw, felder.bild,\n      felder.foto, felder.portrait, felder.mitarbeiter_bild,\n      felder.person_bild, felder.bild_farbe\n    ];\n\n    for (const item of kandidaten) {\n      const url = getImageUrl(item);\n      if (url) return url;\n    }\n\n    for (const key in felder) {\n      const val = felder[key];\n      const url = getImageUrl(val);\n      if (url && (url.includes('\/wp-content\/uploads\/') || \/\\.(jpg|jpeg|png|webp|svg)\/i.test(url))) {\n        return url;\n      }\n    }\n\n    if (data._embedded && data._embedded['wp:featuredmedia'] && data._embedded['wp:featuredmedia'][0]) {\n      const media = data._embedded['wp:featuredmedia'][0];\n      const url = media.source_url || media.media_details?.sizes?.full?.source_url;\n      if (url) return url;\n    }\n\n    if (data.featured_media_src_url) return data.featured_media_src_url;\n    return '';\n  };\n\n  const setText = (container, selector, text) => {\n    const el = container.querySelector(selector);\n    if (!el) return;\n    if (!text || text.trim() === '') {\n      el.style.setProperty('display', 'none', 'important');\n      return;\n    }\n    el.style.removeProperty('display');\n    const target = el.querySelector('.et_pb_text_inner') || el;\n    target.textContent = text;\n  };\n\n  const setContactIcon = (container, selector, value, type) => {\n    const el = container.querySelector(selector);\n    if (!el) return;\n\n    if (!value || value.trim() === '') {\n      el.style.setProperty('display', 'none', 'important');\n      return;\n    }\n\n    el.style.removeProperty('display');\n    const link = el.tagName === 'A' ? el : el.querySelector('a');\n    const prefix = type === 'mail' ? 'mailto:' : 'tel:';\n    const cleanVal = type === 'mobile' ? value.replace(\/\\s+\/g, '') : value;\n\n    if (link) {\n      link.href = prefix + cleanVal;\n      link.title = value;\n    }\n\n    const target = el.querySelector('.et_pb_text_inner') || link || el;\n    if (target) {\n      Array.from(target.childNodes).forEach(node => {\n        if (node.nodeType === 3) node.textContent = '';\n      });\n    }\n  };\n\n  const setImage = (container, selector, imageSource) => {\n    const el = container.querySelector(selector);\n    if (!el) return;\n    const url = getImageUrl(imageSource);\n\n    if (!url) {\n      el.style.setProperty('display', 'none', 'important');\n      return;\n    }\n\n    el.style.removeProperty('display');\n    const img = el.tagName === 'IMG' ? el : el.querySelector('img');\n\n    if (img) {\n      img.src = url;\n      img.removeAttribute('srcset');\n      img.removeAttribute('sizes');\n    } else {\n      el.style.backgroundImage = `url('${url}')`;\n      el.style.backgroundSize = 'cover';\n      el.style.backgroundPosition = 'center center';\n    }\n  };\n\n  \/\/ =====================================================\n  \/\/ Spendenblock finden\n  \/\/ =====================================================\n  function ksKandidaten(popup) {\n    const alle = Array.from(popup.querySelectorAll('.et_pb_text, .et_pb_module')).filter(mod => {\n      const txt = mod.textContent.toLowerCase();\n      return mod.id === 'mitarbeiter_kostenstelle' ||\n             mod.hasAttribute('data-msd-ks') ||\n             txt.includes('finanziell freisetzen') ||\n             txt.includes('financially') ||\n             txt.includes('lib\u00e9rer') ||\n             txt.includes('grassiweg 3') ||\n             txt.includes('30-26890-3');\n    });\n\n    \/\/ Nur die innersten Module (keine Gruppen, die einen Block nur umschliessen)\n    return alle.filter(mod => !alle.some(anderes => anderes !== mod && mod.contains(anderes)));\n  }\n\n  function ksBlockWaehlen(popup) {\n    const kandidaten = ksKandidaten(popup);\n    if (!kandidaten.length) return { block: null, kandidaten };\n\n    \/\/ Eigene Inline-Styles vom letzten \u00d6ffnen entfernen\n    kandidaten.forEach(mod => {\n      mod.setAttribute('data-msd-ks', '1');\n      mod.style.removeProperty('display');\n      mod.style.removeProperty('margin-top');\n    });\n\n    \/\/ Bevorzugt: Block in der Spalte mit dem Bibelvers (hat dort das passende Design)\n    const zitat = popup.querySelector('#mitarbeiter_zitat');\n    const spalte = zitat ? zitat.closest('.et_pb_column') : null;\n    const inTextspalte = spalte ? kandidaten.filter(mod => spalte.contains(mod)) : [];\n    const bevorzugt = popup.querySelector('#mitarbeiter_kostenstelle');\n\n    let block = null;\n    if (inTextspalte.length) {\n      block = (bevorzugt && inTextspalte.includes(bevorzugt)) ? bevorzugt : inTextspalte[0];\n    } else if (bevorzugt && kandidaten.includes(bevorzugt)) {\n      block = bevorzugt;\n    } else {\n      block = kandidaten[0];\n    }\n\n    return { block, kandidaten };\n  }\n\n  \/\/ Auf dem Handy: Spendenblock direkt unter den Bibelvers setzen\n  function unterBibelvers(popup, block) {\n    if (!block || !window.matchMedia(MOBILE).matches) return;\n    const zitat = popup.querySelector('#mitarbeiter_zitat');\n    if (!zitat || zitat === block || zitat.contains(block)) return;\n    if (zitat.nextElementSibling !== block) {\n      zitat.insertAdjacentElement('afterend', block);\n    }\n  }\n\n  \/\/ =====================================================\n  \/\/ Cache & Vorladen\n  \/\/ =====================================================\n  function merken(postType, data) {\n    if (!data) return;\n    cache[`${postType}_${data.id}`] = data;\n    if (data.slug) cache[`${postType}_${data.slug}`] = data;\n  }\n\n  function bildVorladen(url) {\n    if (!url || typeof url !== 'string' || bilderGeladen.has(url)) return;\n    bilderGeladen.add(url);\n    const img = new Image();\n    img.decoding = 'async';\n    img.src = url;\n  }\n\n  function bilderVorladen(data) {\n    if (!data) return;\n    const f = data.acf || {};\n    bildVorladen(getMitarbeiterFoto(data));\n    bildVorladen(getImageUrl(f.position_bild));\n  }\n\n  function alleLaden(postType) {\n    if (listen[postType]) return listen[postType];\n    listen[postType] = (async function () {\n      let seite = 1;\n      let gesamtSeiten = 1;\n      do {\n        const res = await fetch(`\/wp-json\/wp\/v2\/${postType}?per_page=100&page=${seite}&${params}`);\n        if (!res.ok) throw new Error(`HTTP Fehler: ${res.status}`);\n        gesamtSeiten = parseInt(res.headers.get('X-WP-TotalPages') || '1', 10);\n        const liste = await res.json();\n        if (Array.isArray(liste)) liste.forEach(d => merken(postType, d));\n        seite++;\n      } while (seite <= gesamtSeiten);\n    })().catch(function (err) {\n      console.warn(`Hintergrund-Laden (${postType}) fehlgeschlagen, lade einzeln:`, err);\n    });\n    return listen[postType];\n  }\n\n  function einzelnLaden(postType, idOrSlug) {\n    const key = `${postType}_${idOrSlug}`;\n    if (cache[key]) return Promise.resolve(cache[key]);\n    if (laufend[key]) return laufend[key];\n\n    const isNumeric = \/^\\d+$\/.test(idOrSlug);\n    const url = isNumeric\n      ? `\/wp-json\/wp\/v2\/${postType}\/${idOrSlug}?${params}`\n      : `\/wp-json\/wp\/v2\/${postType}?slug=${encodeURIComponent(idOrSlug)}&${params}`;\n\n    laufend[key] = fetch(url)\n      .then(function (res) {\n        if (!res.ok) throw new Error(`HTTP Fehler: ${res.status}`);\n        return res.json();\n      })\n      .then(function (json) {\n        const data = Array.isArray(json) ? json[0] : json;\n        if (!data) throw new Error(`${postType} mit ID\/Slug '${idOrSlug}' nicht gefunden`);\n        merken(postType, data);\n        cache[key] = data;\n        return data;\n      })\n      .finally(function () {\n        delete laufend[key];\n      });\n\n    return laufend[key];\n  }\n\n  async function holen(postType, idOrSlug) {\n    const key = `${postType}_${idOrSlug}`;\n    if (cache[key]) return cache[key];\n    if (listen[postType]) {\n      await listen[postType];\n      if (cache[key]) return cache[key];\n    }\n    return einzelnLaden(postType, idOrSlug);\n  }\n\n  \/\/ =====================================================\n  \/\/ Popup bef\u00fcllen (nur Mitarbeiter)\n  \/\/ =====================================================\n  function befuellen(popup, data) {\n    const felder = data.acf || {};\n\n    const rawTitle = data.title?.rendered || '';\n    const cleanName = rawTitle.replace(\/^\\d+\\s*\/, '');\n    setText(popup, '#mitarbeiter_name', cleanName);\n\n    setImage(popup, '#mitarbeiter_position_bild', felder.position_bild);\n    const fotoUrl = getMitarbeiterFoto(data);\n    setImage(popup, '#mitarbeiter_bild', fotoUrl);\n\n    \/\/ ZITAT\n    let zitatText = felder.zitat || '';\n    if (zitatText) {\n      zitatText = zitatText.trim()\n        .replace(\/^[\"'\u00ab\u00bb\u201c\u201d\\s]+\/, '')\n        .replace(\/[\"'\u00ab\u00bb\u201c\u201d\\s\\.]+\\s*$\/, '').trim();\n\n      if (lang === 'fr') {\n        zitatText = `\u00ab ${zitatText} \u00bb.`;\n      } else {\n        zitatText = `'${zitatText}'`;\n      }\n    }\n    const zitatEl = popup.querySelector('#mitarbeiter_zitat');\n    if (zitatEl) zitatEl.style.fontWeight = 'normal';\n    setText(popup, '#mitarbeiter_zitat', zitatText);\n\n    setContactIcon(popup, '#mitarbeiter_mail', felder.mail, 'mail');\n    setContactIcon(popup, '#mitarbeiter_mobile', felder.mobile, 'mobile');\n\n    \/\/ SPENDENBLOCK\n    const { block: ksBlock, kandidaten } = ksBlockWaehlen(popup);\n\n    kandidaten.forEach(mod => {\n      if (mod !== ksBlock) {\n        mod.style.setProperty('display', 'none', 'important');\n      }\n    });\n\n    const acfKs = (felder && felder.kostenstelle) ? String(felder.kostenstelle).trim() : '';\n\n    if (ksBlock) {\n      if (!acfKs || acfKs === 'false' || acfKs === '0') {\n        ksBlock.style.setProperty('display', 'none', 'important');\n      } else {\n        \/\/ Auf dem Handy direkt unter den Bibelvers\n        unterBibelvers(popup, ksBlock);\n\n        \/\/ Erzwingen, damit er auf allen Ger\u00e4ten sichtbar ist\n        ksBlock.style.setProperty('display', 'block', 'important');\n\n        \/\/ Abstand: Desktop wie gehabt, Handy etwas kompakter\n        const abstand = window.matchMedia(MOBILE).matches ? '30px' : '65px';\n        ksBlock.style.setProperty('margin-top', abstand, 'important');\n\n        let cleanVal = acfKs.replace(\/^(vermerk|reference|note|mention):\\s*\/i, '').trim();\n        cleanVal = cleanVal.replace(\/kostenstelle\/gi, '').trim();\n\n        const isEn = (lang === 'en');\n        const isFr = (lang === 'fr');\n\n        if (isFr) {\n          cleanVal = cleanVal.replace(\/^(personalkosten|personnel costs|frais de salaire)\\s*\/i, '');\n          if (!cleanVal.toLowerCase().startsWith('frais de salaire')) {\n            cleanVal = `frais de salaire ${cleanVal}`;\n          }\n          ksBlock.innerHTML = `<div class=\"et_pb_text_inner\"><p><strong>Tu veux me lib\u00e9rer directement sur le plan financier ?<\/strong><br>\u0152uvre missionnaire MSD | Grassiweg 3 | 3714 Frutigen<br>${zahlungsZeile}<br>Mention : ${cleanVal}<\/p><\/div>`;\n        } else if (isEn) {\n          cleanVal = cleanVal.replace(\/^(personalkosten|frais de salaire)\\s*\/i, '');\n          if (!cleanVal.toLowerCase().startsWith('personnel costs')) {\n            cleanVal = `Personnel costs ${cleanVal}`;\n          }\n          ksBlock.innerHTML = `<div class=\"et_pb_text_inner\"><p><strong>Would you like to release me financially directly?<\/strong><br>Missionswerk msd | Grassiweg 3 | 3714 Frutigen<br>${zahlungsZeile}<br>Note: ${cleanVal}<\/p><\/div>`;\n        } else {\n          cleanVal = cleanVal.replace(\/^(personnel costs|frais de salaire)\\s*\/i, '');\n          if (!cleanVal.toLowerCase().startsWith('personalkosten')) {\n            cleanVal = `Personalkosten ${cleanVal}`;\n          }\n          ksBlock.innerHTML = `<div class=\"et_pb_text_inner\"><p><strong>M\u00f6chtest du mich direkt finanziell freisetzen?<\/strong><br>Missionswerk msd | Grassiweg 3 | 3714 Frutigen<br>${zahlungsZeile}<br>Vermerk: ${cleanVal}<\/p><\/div>`;\n        }\n      }\n    }\n\n    popup.querySelectorAll('.et_pb_text, .et_pb_module').forEach(mod => {\n      if (mod !== ksBlock && !kandidaten.includes(mod)) {\n        const txt = mod.textContent.trim().toLowerCase();\n        if (txt === 'kostenstelle' || txt === 'cost center' || txt === 'centre de co\u00fbt') {\n          mod.style.setProperty('display', 'none', 'important');\n        }\n      }\n    });\n  }\n\n  \/\/ =====================================================\n  \/\/ Karte erkennen (nur Mitarbeiter)\n  \/\/ =====================================================\n  function karteInfo(target) {\n    if (!target || !target.closest) return null;\n    const karte = target.closest('.mitarbeiter-karte');\n    if (!karte) return null;\n    return { karte, idOrSlug: karte.dataset.id };\n  }\n\n  \/\/ =====================================================\n  \/\/ Vorladen beim Dr\u00fcberfahren \/ Antippen\n  \/\/ =====================================================\n  function vorladenBeiKarte(e) {\n    const info = karteInfo(e.target);\n    if (!info || !info.idOrSlug) return;\n    holen(POST_TYPE, info.idOrSlug)\n      .then(data => bilderVorladen(data))\n      .catch(function () {});\n  }\n\n  document.addEventListener('pointerover', vorladenBeiKarte, { passive: true });\n  document.addEventListener('touchstart', vorladenBeiKarte, { passive: true });\n  document.addEventListener('focusin', vorladenBeiKarte);\n\n  \/\/ =====================================================\n  \/\/ Klick auf Karte\n  \/\/ =====================================================\n  document.addEventListener('click', async function (e) {\n    const info = karteInfo(e.target);\n    if (!info) return;\n\n    const { idOrSlug } = info;\n\n    e.preventDefault();\n\n    const popup = document.getElementById('popup_mitarbeiter');\n    if (!popup) return;\n\n    const q = (sel) => popup.querySelector(sel);\n    const loader = q('[id*=\"loader\"]') || document.getElementById('popup-loader_mitarbeiter');\n    const inhalt = q('[id*=\"inhalt\"]') || document.getElementById('popup-inhalt');\n\n    if (!idOrSlug) return;\n\n    const key = `${POST_TYPE}_${idOrSlug}`;\n    aktuellerKlick = key;\n\n    const sofort = cache[key];\n\n    if (sofort) {\n      \/\/ Schon geladen: sofort bef\u00fcllen, ohne Lade-Skelett\n      befuellen(popup, sofort);\n      if (loader) loader.style.display = 'none';\n      if (inhalt) inhalt.style.display = 'flex';\n    } else {\n      \/\/ Alte Bilder ausblenden, damit nichts Falsches kurz aufblitzt\n      setImage(popup, '#mitarbeiter_bild', '');\n      setImage(popup, '#mitarbeiter_position_bild', '');\n      if (loader) loader.style.display = 'flex';\n      if (inhalt) inhalt.style.display = 'none';\n    }\n\n    if (window.et_execute_interaction_effect) {\n      window.et_execute_interaction_effect({ effect: 'addVisibility' }, popup);\n    } else {\n      popup.style.display = 'block';\n    }\n\n    if (sofort) {\n      bilderVorladen(sofort);\n      return;\n    }\n\n    try {\n      const data = await holen(POST_TYPE, idOrSlug);\n\n      \/\/ Inzwischen etwas anderes angeklickt? Dann nicht \u00fcberschreiben\n      if (aktuellerKlick !== key) return;\n\n      befuellen(popup, data);\n      bilderVorladen(data);\n\n      if (loader) loader.style.display = 'none';\n      if (inhalt) inhalt.style.display = 'flex';\n    } catch (err) {\n      console.error('Fehler beim Laden des Popups:', err);\n      if (loader) loader.style.display = 'none';\n    }\n  });\n\n  \/\/ =====================================================\n  \/\/ Schliessen bei Klick auf Hintergrund\n  \/\/ =====================================================\n  document.addEventListener('click', function (e) {\n    const popup = document.getElementById('popup_mitarbeiter');\n    if (popup && e.target === popup) {\n      if (window.et_execute_interaction_effect) {\n        window.et_execute_interaction_effect({ effect: 'removeVisibility' }, popup);\n      } else {\n        popup.style.display = 'none';\n      }\n    }\n  });\n\n  \/\/ =====================================================\n  \/\/ Hintergrund-Laden starten, sobald die Seite fertig ist\n  \/\/ =====================================================\n  function starten() {\n    if (document.getElementById('popup_mitarbeiter') && document.querySelector('.mitarbeiter-karte')) {\n      alleLaden(POST_TYPE);\n    }\n  }\n\n  function planen() {\n    if ('requestIdleCallback' in window) {\n      requestIdleCallback(starten, { timeout: 2000 });\n    } else {\n      setTimeout(starten, 300);\n    }\n  }\n\n  if (document.readyState === 'complete') {\n    planen();\n  } else {\n    window.addEventListener('load', planen);\n  }\n})();\n<\/script><\/div><\/div><\/div><div class=\"et_pb_column_4 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_image_1 et_pb_image et_pb_module et_flex_module\" id=\"mitarbeiter_position_bild\"><span class=\"et_pb_image_wrap\"><img src=\"https:\/\/www2.msd-online.ch\/wp-content\/uploads\/2025\/05\/Titel-Yanis.png\" title=\"mitarbeiter_bild\" width=\"591\" height=\"154\" srcset=\"https:\/\/msd.swiss\/wp-content\/uploads\/2025\/05\/Titel-Yanis.png 591w, https:\/\/msd.swiss\/wp-content\/uploads\/2025\/05\/Titel-Yanis-300x78.png 300w, https:\/\/msd.swiss\/wp-content\/uploads\/2025\/05\/Titel-Yanis-480x125.png 480w\" sizes=\"(max-width: 591px) 100vw, 591px\" class=\"wp-image-287212\" \/><\/span><\/div><div class=\"et_pb_text_2 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\" id=\"mitarbeiter_name\"><div class=\"et_pb_text_inner\"><p><span>Mitarbeiter name<\/span><\/p>\n<\/div><\/div><div class=\"et_pb_group_1 et_pb_group et_pb_module et_flex_group et_pb_css_mix_blend_mode_passthrough\"><a class=\"et_pb_icon_1 et_pb_icon et_clickable et_pb_module et_flex_module\" href=\"mailto:info@msd-online.ch\" id=\"mitarbeiter_mail\"><span class=\"et_pb_icon_wrap\"><span class=\"et-pb-icon\">\ue010<\/span><\/span><\/a><a class=\"et_pb_icon_2 et_pb_icon et_clickable et_pb_module et_flex_module\" href=\"tel:+41%2078%20225%2046%2036%20\" id=\"mitarbeiter_mobile\"><span class=\"et_pb_icon_wrap\"><span class=\"et-pb-icon\">\uf879<\/span><\/span><\/a><\/div><div class=\"et_pb_text_3 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\" id=\"mitarbeiter_zitat\"><div class=\"et_pb_text_inner\"><p><span>Zitat<\/span><\/p>\n<\/div><\/div><div class=\"et_pb_text_4 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\" id=\"mitarbeiter_spenden_block\"><div class=\"et_pb_text_inner\" data-et-mv-hidden-phone=\"true\"><p><strong>M\u00f6chtest du mich direkt finanziell freisetzen?\u00a0<br \/><\/strong><spantitillium web=\"\" arial=\"\" font-weight:normal=\"\" font-style:normal=\"\" data-sheets-root=\"1\">Missionswerk msd | Grassiweg 3 | 3714 Frutigen<\/spantitillium><br \/><span>PC-Nr. 30-26890-3 | IBAN CH69 0900 0000 3002 6890 3<\/span><\/p>\n<\/div><\/div><div class=\"et_pb_text_5 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module\" id=\"mitarbeiter_kostenstelle\"><div class=\"et_pb_text_inner\"><p>Vermerk: Personalkosten<\/p>\n<\/div><\/div><div class=\"et_pb_icon_3 et_pb_icon et-interaction-target-s625yagv4m et_pb_module et_flex_module\" data-interaction-trigger=\"qxdh4ltg2t\" data-interaction-target=\"s625yagv4m\"><span class=\"et_pb_icon_wrap\"><span class=\"et-pb-icon\">\uf00d<\/span><\/span><\/div><\/div><\/div><div class=\"et_pb_row_3 et_pb_row et_flex_row\" id=\"popup-loader_mitarbeiter\"><div class=\"et_pb_column_5 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone\"><div class=\"et_pb_code_3 et_pb_code et_pb_module\"><div class=\"et_pb_code_inner\"><div class=\"skeleton-wrapper\">\n  <div class=\"skeleton-links\">\n    <div class=\"skeleton skeleton-bild\"><\/div>\n  <\/div>\n  <div class=\"skeleton-rechts\">\n    <div class=\"skeleton skeleton-position\"><\/div>\n    <div class=\"skeleton skeleton-titel\"><\/div>\n    <div class=\"skeleton skeleton-titel-unten\"><\/div>\n    \n    <div class=\"skeleton_icon_wrapper\">\n      <div class=\"skeleton skeleton_icon\"><\/div>\n      <div class=\"skeleton skeleton_icon\"><\/div>\n    <\/div>\n    <div class=\"skeleton_zitat\">\n      <div class=\"skeleton skeleton-text\"><\/div>\n    <div class=\"skeleton skeleton-text mittel\"><\/div>\n    <div class=\"skeleton skeleton-text kurz\"><\/div>\n    <\/div>\n    <div class=\"skeleton_kostenstelle\">\n      <div class=\"skeleton skeleton-text\"><\/div>\n    <div class=\"skeleton skeleton-text mittel\"><\/div>\n    <div class=\"skeleton skeleton-text kurz\"><\/div>\n    <\/div>\n  <\/div>\n<\/div><\/div><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>\u00ab\u00a0Seit 1962 entwickeln sich die Change Camps stetig weiter. Sie verbinden tiefe Gemeinschaft, starke Gotteserfahrungen und das Eintauchen in andere Kulturen. Durch kreative Outreaches mit Sport, praktischen Eins\u00e4tzen, Worship und Prayer Walks wachsen wir in einen evangelistischen Lebensstil. Unsere Vision ist, Jesus in verschiedenen Nationen bekannt zu machen und Jugendliche f\u00fcr ein Leben zu begeistern, &#8230;<\/p>\n","protected":false},"author":5,"featured_media":18609,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[133,122],"tags":[],"class_list":["post-278113","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog-fr","category-info-fr"],"acf":[],"_links":{"self":[{"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/posts\/278113","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/comments?post=278113"}],"version-history":[{"count":2,"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/posts\/278113\/revisions"}],"predecessor-version":[{"id":287230,"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/posts\/278113\/revisions\/287230"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/media\/18609"}],"wp:attachment":[{"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/media?parent=278113"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/categories?post=278113"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/msd.swiss\/fr\/wp-json\/wp\/v2\/tags?post=278113"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}