יום שבת, 7 במרץ 2026
טוען מזג אוויר...
תגית

שלי יחימוביץ

9 פוסטים
ירושלים מחכה לפרידמן
כללי

ירושלים מחכה לפרידמן

בנט ובן כספית , אבי מול שלי, אבט מול בוגי, ,עמונה בהדר וכבוד תמיד אנחנו מאשימים את התקשורת בתחלואי כל העם והמדינה אך האמת היא שהפעם, ואולי רק הפעם, אנחנו...

נתניהו רוצה ליכוד אחר
כללי

נתניהו רוצה ליכוד אחר

בעקבות סיכול המינוי של יוסי שלי התגבשה בסביבת נתניהו המחשבה לפעול למהלך של פירוק הליכוד. מבחינת נתניהו, לא יעלה על הדעת שקבוצת עסקנים יכתיבו לראש הממשלה...

עמיר המפוספס
טור אישי

עמיר המפוספס

אלי חזן על התקווה הסוציאליסטית שנמוגה. או שלא. בזיכרון הקולקטיבי של ספרד נתפסת מלחמת האזרחים שהתרחשה בין השנים 1936 – 1939 כמלחמה שבה הימין ניצח ופרנקו עלה...

הכסף שלי ! הוא לא של יחימוביץ !
בליכוד

הכסף שלי ! הוא לא של יחימוביץ !

התוכנית הזהה של פרנסואה הולנד ושלי יחימוביץ בעיית מעמד הביניים והמשבר הכלכלי בצרפת הביאה את מפלגת השמאל בראשות פרנסואה הולנד להגשמת החלום הרטוב של השמאל : נטיל...

לשלי יצא הציפי
כללי

לשלי יצא הציפי

ליכודניק נגד סגירת ערוץ 10, מצודה הולכת ונעלמת, למה שותקים שרי הליכוד, OECD את מי זה מעניין, בלון הבחירות. חשבון הנאמנותמדהים כיצד שלי ומופז נופלים בפח העצמי...

המפץ שביל הזהב של נתן אשל
כללי

המפץ שביל הזהב של נתן אשל

נבות תל צור האיש מאחורי הזיכוי של אולמרט, מי מינה את ארז אשל,מיקי איתן הסוס הטרויאני בליכוד נתן אשל דומה כי ככל שהמחשבה על כך יותר ריאלית הרי שישנם מספר גורמים...

קו פרשת המיים של נתניהו
כללי

קו פרשת המיים של נתניהו

האריה שהפך לחתול, מי יחליף את שטייניץ, בקדימה רוצים את ביבי קינג, יוזמת ג'נבה קונה בכסף הכרה, המאבק התורן של המתישבים, שריד הרס גלאון תבנה, דו קרב האמזונות...

ג'נבה בלוף
כללי

ג'נבה בלוף

כסאות מוזיקלים בשלום עכשיו, הגביר שגבר על סותמי הפיות, אבי סלמן ואלי חזן נופלים בפח של יוזמת ג'נבה, המבקר שאיכזב, חסינות לפשע, גבעת האולפנה הפתרון, הג'ל יהייה...

\n \n "},{"key":"google_tag_manager","name":"Google Tag Manager","category":"analytics","script":"\n \n \n \n \n "},{"key":"microsoft_clarity","name":"Microsoft Clarity","category":"analytics","script":"\n \n \n "}]}; const LOADED_SCRIPTS = {}; // Get stored consent function getConsent() { try { const stored = localStorage.getItem(CONSENT_KEY); if (stored) { const consent = JSON.parse(stored); if (consent.version === CONSENT_VERSION) { return consent; } } } catch (e) {} return null; } // Save consent function saveConsent(preferences) { const consent = { version: CONSENT_VERSION, timestamp: Date.now(), preferences: preferences }; localStorage.setItem(CONSENT_KEY, JSON.stringify(consent)); // Dispatch event for other scripts to react window.dispatchEvent(new CustomEvent('cookieConsentChanged', { detail: consent })); // Load scripts based on new consent loadTrackingScripts(preferences); } // Load tracking scripts based on consent function loadTrackingScripts(preferences) { if (!TRACKING_CONFIG || !TRACKING_CONFIG.services) return; TRACKING_CONFIG.services.forEach(function(service) { // Skip if already loaded if (LOADED_SCRIPTS[service.key]) return; // Check if user consented to this category if (!preferences[service.category]) { console.log('[Tracking] Skipping ' + service.name + ' - no consent for ' + service.category); return; } // Load the script console.log('[Tracking] Loading ' + service.name); LOADED_SCRIPTS[service.key] = true; // Create a container for the scripts var container = document.createElement('div'); container.innerHTML = service.script; // Process script tags (they won't execute if just innerHTML'd) var scripts = container.querySelectorAll('script'); scripts.forEach(function(oldScript) { var newScript = document.createElement('script'); // Copy attributes Array.from(oldScript.attributes).forEach(function(attr) { newScript.setAttribute(attr.name, attr.value); }); // Copy inline script content if (oldScript.innerHTML) { newScript.innerHTML = oldScript.innerHTML; } // Append to head document.head.appendChild(newScript); }); // Handle noscript content (for pixels that have noscript fallbacks) var noscripts = container.querySelectorAll('noscript'); noscripts.forEach(function(ns) { // Append noscript content as-is to body var div = document.createElement('div'); div.innerHTML = ns.innerHTML; document.body.appendChild(div); }); }); } // Show banner function showBanner() { const banner = document.getElementById('cookie-consent-banner'); if (banner) { banner.style.display = 'block'; } } // Hide banner function hideBanner() { const banner = document.getElementById('cookie-consent-banner'); if (banner) { banner.style.display = 'none'; } } // Show modal function showModal() { const modal = document.getElementById('cookie-settings-modal'); if (modal) { modal.style.display = 'flex'; document.body.style.overflow = 'hidden'; // Load current preferences const consent = getConsent(); if (consent) { document.getElementById('cookie-analytics').checked = consent.preferences.analytics; document.getElementById('cookie-marketing').checked = consent.preferences.marketing; } } } // Hide modal function hideModal() { const modal = document.getElementById('cookie-settings-modal'); if (modal) { modal.style.display = 'none'; document.body.style.overflow = ''; } } // Accept all cookies function acceptAll() { saveConsent({ essential: true, analytics: true, marketing: true }); hideBanner(); hideModal(); } // Accept essential only function acceptEssential() { saveConsent({ essential: true, analytics: false, marketing: false }); hideBanner(); hideModal(); } // Save custom preferences function savePreferences() { saveConsent({ essential: true, analytics: document.getElementById('cookie-analytics').checked, marketing: document.getElementById('cookie-marketing').checked }); hideBanner(); hideModal(); } // Initialize function init() { const consent = getConsent(); if (!consent) { // No consent yet, show banner showBanner(); } else { // Consent exists, load allowed scripts loadTrackingScripts(consent.preferences); } // Event listeners document.getElementById('cookie-accept-all')?.addEventListener('click', acceptAll); document.getElementById('cookie-accept-essential')?.addEventListener('click', acceptEssential); document.getElementById('cookie-settings')?.addEventListener('click', showModal); document.getElementById('cookie-modal-close')?.addEventListener('click', hideModal); document.getElementById('cookie-save-preferences')?.addEventListener('click', savePreferences); // Close modal on overlay click document.querySelector('.cookie-modal-overlay')?.addEventListener('click', hideModal); // Close modal on Escape key document.addEventListener('keydown', function(e) { if (e.key === 'Escape') { hideModal(); } }); } // Run when DOM is ready if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); } // Expose API for other scripts window.CookieConsent = { getConsent: getConsent, showBanner: showBanner, showSettings: showModal, hasConsent: function(type) { const consent = getConsent(); return consent && consent.preferences[type]; }, // Allow manual reload of scripts (e.g., after settings change) reloadScripts: function() { const consent = getConsent(); if (consent) { loadTrackingScripts(consent.preferences); } } }; })();