פתרונות איכות
חנות
|
דפוס
|
מיתוג
להזמנות התקשרו: 054-2311123
דף הבית
חנות
מוצרי ריח ונקיון
מתנות לבית
מתנות לעסק
אוכל ושתיה
גאדג'טים וסלולרי
ספרים
פתרונות לעסקים
מזכרות והקדשות
לענף הנדלן
לענף הרכב
לחנויות פרחים ומשתלות
קופסאות ומארזים ומדבקות
תמונות/קנבס/פוסטרים
פתרונות הדפסה ומיתוג
מוצרים לענף הרכב
מיתוג אפקטיבי
קופסאות ומארזים ומדבקות
כרטיסי ברכה
כרטיסי ברכה קטנים מאד
כרטיסי ברכה בינוניים/גדולים
כרטיסי ברכה מיוחדים
צור קשר
כניסה לסיטונאים
דף הבית
פתרונות לעסקים
מוצרים לענף הרכב
לוחיות תצוגה
לוחיות קשיחה שניתן להכניס למסגרת רישוי עם הדפסה יעודית או לוגו של העסק
מחיר משלוח:
חינם!
הוסף לסל
לוחיות קשיחה שניתן להכניס למסגרת רישוי עם הדפסה יעודית או לוגו של העסק
מדיניות פרטיות
הצהרת נגישות
נבנה ע"י פתרונות איכות
0
המוצר התווסף לסל בהצלחה!
המשך בקניות
עבור לקופה
(function () { 'use strict'; /* ── הגדרות – ערוך כאן לפי הצורך ──────────────────────────────────────── */ var CFG = { havdalahMin: 50, // דקות לאחר שקיעה להבדלה (42 / 50 / 72) bgColor: '#0d1b2a', // צבע רקע של המסך accentColor:'#d4a017', // צבע זהב: שעון, כותרת title: 'האתר סגור בשבת ובחגים', subtitle: 'אנו שומרים שבת וחגים.\nהאתר יחזור לפעילות בעוד:', footer: 'שבת שלום ♦ חג שמח', lbl_h: 'שעות', lbl_m: 'דקות', lbl_s: 'שניות', }; /* ──────────────────────────────────────────────────────────────────────── */ /** fetch עם timeout קשיח (ms) – fetch שנתקע לא יתלה את הסקריפט */ function fetchT(url, ms) { var ctrl = new AbortController(); var timer = setTimeout(function () { ctrl.abort(); }, ms); return fetch(url, { signal: ctrl.signal }).then( function (r) { clearTimeout(timer); return r; }, function (e) { clearTimeout(timer); throw e; } ); } /** * קבע את קואורדינטות הגולש וה-timezone שלו. * סדר עדיפויות: IP Geolocation (שקט) ← Geolocation API (מבקש רשות) ← ירושלים. */ function resolveLocation() { // 1. IP Geolocation – אין צורך ברשות המשתמש return fetchT('https://ipapi.co/json/', 6000) .then(function (r) { return r.json(); }) .then(function (d) { if (d && d.latitude && d.longitude && d.timezone) return { lat: d.latitude, lon: d.longitude, tz: d.timezone }; throw new Error('incomplete'); }) .catch(function () { // 2. Browser Geolocation (מציג בקשת הרשאה) return new Promise(function (resolve, reject) { if (!navigator.geolocation) return reject(new Error('no-geo')); navigator.geolocation.getCurrentPosition( function (p) { resolve({ lat: p.coords.latitude, lon: p.coords.longitude, tz: Intl.DateTimeFormat().resolvedOptions().timeZone, }); }, reject, { timeout: 5000, maximumAge: 3600000 } ); }); }) .catch(function () { // 3. ברירת מחדל: ירושלים return { lat: 31.7683, lon: 35.2137, tz: 'Asia/Jerusalem' }; }); } /** בנה URL ל-Hebcal Shabbat API, אופציונלית עם תאריך ספציפי */ function shabbatUrl(lat, lon, tz, date) { var url = 'https://www.hebcal.com/shabbat?cfg=json' + '&latitude=' + lat + '&longitude=' + lon + '&tzid=' + encodeURIComponent(tz) + '&m=' + CFG.havdalahMin + '&b=18'; if (date) { url += '&gy=' + date.getFullYear() + '&gm=' + (date.getMonth() + 1) + '&gd=' + date.getDate(); } return url; } /** * סרוק רשימת אירועים ומצא אם "עכשיו" נמצא בין הדלקת נרות להבדלה. * מחזיר את ה-Date של ההבדלה, או null אם לא. */ function findActivePeriod(items, now) { items = items.slice().sort(function (a, b) { return new Date(a.date) - new Date(b.date); }); for (var i = 0; i < items.length; i++) { if (items[i].category !== 'candles') continue; for (var j = i + 1; j < items.length; j++) { if (items[j].category !== 'havdalah') continue; var s = new Date(items[i].date).getTime(); var e = new Date(items[j].date).getTime(); if (now >= s && now <= e) return new Date(e); break; } } return null; } /** * שלח שתי שאילתות ל-Hebcal: השבוע הנוכחי + השבוע הקודם. * כך נתפסים גם חגים רב-יומיים שהתחילו לפני השבוע הנוכחי (למשל ראש השנה יום ב׳). */ function getActiveHavdalah(lat, lon, tz) { var now = Date.now(); var prevWeek = new Date(now - 7 * 86400000); var reqs = [ fetchT(shabbatUrl(lat, lon, tz, null), 9000) .then(function (r) { return r.json(); }).catch(function () { return null; }), fetchT(shabbatUrl(lat, lon, tz, prevWeek), 9000) .then(function (r) { return r.json(); }).catch(function () { return null; }), ]; return Promise.all(reqs).then(function (results) { var seen = Object.create(null); var items = []; results.forEach(function (data) { if (!data || !data.items) return; data.items.forEach(function (item) { var key = item.date + '|' + item.category; if (!seen[key]) { seen[key] = true; items.push(item); } }); }); return findActivePeriod(items, now); }); } /** הצג את מסך "האתר סגור" עם טיימר ספירה לאחור */ function showOverlay(havdalah) { var savedOverflow = document.body.style.overflow; document.body.style.overflow = 'hidden'; var host = document.createElement('div'); host.id = 'shb-guard'; var css = [ '@keyframes shb-in{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}', '#shb-guard{', 'position:fixed;inset:0;', 'background:' + CFG.bgColor + ';', 'color:#fff;z-index:2147483647;', 'display:flex;align-items:center;justify-content:center;', 'font-family:"Heebo","Arial Hebrew",Arial,sans-serif;', 'direction:rtl;text-align:center;', 'padding:20px;box-sizing:border-box;', 'animation:shb-in .45s ease;', '}', '#shb-guard *{box-sizing:border-box;margin:0;padding:0;}', '#shb-inner{max-width:580px;width:100%;}', /* אייקון */ '#shb-icon{font-size:72px;line-height:1;margin-bottom:16px;}', /* כותרת */ '#shb-title{', 'font-size:clamp(1.35rem,4.5vw,2.2rem);', 'font-weight:800;', 'color:' + CFG.accentColor + ';', 'margin-bottom:12px;line-height:1.3;', '}', /* תת-כותרת */ '#shb-sub{', 'font-size:clamp(.88rem,2.5vw,1.05rem);', 'color:#aaa;margin-bottom:32px;', 'line-height:1.6;white-space:pre-line;', '}', /* שעון */ '#shb-clock{', 'display:flex;justify-content:center;align-items:flex-start;', 'gap:8px;margin-bottom:32px;direction:ltr;', '}', '.shb-u{display:flex;flex-direction:column;align-items:center;min-width:70px;}', '.shb-d{', 'font-size:clamp(2.6rem,11vw,4.5rem);', 'font-weight:800;', 'color:' + CFG.accentColor + ';', 'line-height:1;', 'font-variant-numeric:tabular-nums;', 'letter-spacing:1px;', '}', '.shb-l{', 'font-size:.65rem;color:#555;', 'text-transform:uppercase;letter-spacing:1.5px;', 'margin-top:6px;', '}', '.shb-sep{', 'font-size:clamp(2.6rem,11vw,4.5rem);', 'font-weight:800;color:' + CFG.accentColor + ';', 'line-height:1;padding-bottom:.1em;', 'align-self:flex-start;', 'animation:shb-blink 1s step-start infinite;', '}', '@keyframes shb-blink{0%,100%{opacity:1}50%{opacity:.3}}', /* סרגל כינוי */ '#shb-bar{', 'width:100%;height:3px;border-radius:2px;', 'background:rgba(255,255,255,.07);', 'margin-bottom:26px;overflow:hidden;', '}', '#shb-bar-fill{', 'height:100%;border-radius:2px;', 'background:' + CFG.accentColor + ';', 'transition:width .9s linear;', '}', /* כותרת תחתונה */ '#shb-footer{font-size:.8rem;color:#3a3a3a;letter-spacing:1.5px;}', ].join(''); host.innerHTML = '' + '
' + '
🕍
' + '
' + CFG.title + '
' + '
' + CFG.subtitle + '
' + '
' + '
00
' + CFG.lbl_h + '
' + '
:
' + '
00
' + CFG.lbl_m + '
' + '
:
' + '
00
' + CFG.lbl_s + '
' + '
' + '
' + '
' + CFG.footer + '
' + '
'; document.body.appendChild(host); var hEl = document.getElementById('shb-h'); var mEl = document.getElementById('shb-m'); var sEl = document.getElementById('shb-s'); var barEl = document.getElementById('shb-bar-fill'); var endMs = havdalah.getTime(); function pad(n) { return n < 10 ? '0' + n : '' + n; } /* חשב כמה זמן כולל עבר כדי לעדכן את סרגל ההתקדמות */ var totalMs = endMs - Date.now(); (function tick() { var diff = endMs - Date.now(); if (diff <= 0) { host.remove(); document.body.style.overflow = savedOverflow; return; } hEl.textContent = pad(Math.floor(diff / 3600000)); mEl.textContent = pad(Math.floor((diff % 3600000) / 60000)); sEl.textContent = pad(Math.floor((diff % 60000) / 1000)); /* סרגל ספירה: מתמלא ככל שמתקרבים לסוף השבת */ var pct = Math.round(100 - (diff / totalMs) * 100); barEl.style.width = Math.min(pct, 100) + '%'; setTimeout(tick, 1000); }()); } /* ── נקודת כניסה ──────────────────────────────────────────────────────── */ /** * TEST MODE – הוסף ?shabbat_test=1 לכתובת האתר כדי לאלץ הצגת המסך. * שלח את הקישור לעצמך לפני שבת כדי לוודא שהכל עובד. * לדוגמה: https://mysite.co.il/?shabbat_test=1 * ⚠ אל תשתף את הקישור הזה עם גולשים רגילים. */ if (window.location.search.indexOf('shabbat_test=1') !== -1) { var testHavdalah = new Date(Date.now() + 2 * 3600000); // 2 שעות מעכשיו if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', function () { showOverlay(testHavdalah); }); } else { showOverlay(testHavdalah); } return; // דלג על הבדיקה האמיתית } resolveLocation() .then(function (loc) { return getActiveHavdalah(loc.lat, loc.lon, loc.tz); }) .then(function (havdalah) { if (!havdalah) return; // לא שבת/חג – לא עושים כלום if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', function () { showOverlay(havdalah); }); } else { showOverlay(havdalah); } }) .catch(function () { /* בולע שגיאות בשקט – לעולם לא לגרום לקריסת האתר */ }); }());