דילוג לתוכן
  • דף הבית
  • תקנון הפורום
  • מילון מושגים המלא
  • המדריך המלא למשתמש
  • פוסטים אחרונים
  • משתמשים
  • חיפוש גוגל בפורום
  • פנייה למנהל האתר
כיווץ
☰
לוגו
  • דף הבית
  • מבחני רכב
  • חדשות רכב
  • מדריך למשתמש
  • ...
  • יצירת קשר
  • פרסם אצלנו
  • ×
      טוען מבחן דרכים...
      1. דף הבית
      2. עסקאות רכב
      3. הדרכות וטיפים - עסקאות רכב
      4. שיפור חווית החיפוש ביד 2

      שיפור חווית החיפוש ביד 2

      מתוזמן נעוץ נעול הועבר נפתר הדרכות וטיפים - עסקאות רכב
      תוסף יד 2
      72 פוסטים 30 כותבים 2.9k צפיות
      • מהישן לחדש
      • מהחדש לישן
      • הכי הרבה הצבעות
      תגובה
      • תגובה כנושא
      התחברו כדי לפרסם תגובה
      נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
      • LexusL Lexus

        @א.ב. @shmuelk עדכנתי את גרסת התוסף לתצוגה הנוכחית של יד 2
        בעז"ה יתעדכן בזמן הקרוב אוטומטית אצל המשתמשים

        אגב אם יש לאי מי רעיון לשיפור משמעותי כלשהו שהוא היה רוצה לראות ביד2
        הוא יותר ממוזמן לכתוב כאן
        ואולי אוכל לשלבו בתוסף

        טוסוןט מנותק
        טוסוןט מנותק
        טוסון
        מייבין
        כתב נערך לאחרונה על ידי
        #61

        @Lexus כתב בשיפור חווית החיפוש ביד 2:

        @א.ב. @shmuelk עדכנתי את גרסת התוסף לתצוגה הנוכחית של יד 2
        בעז"ה יתעדכן בזמן הקרוב אוטומטית אצל המשתמשים

        אגב אם יש לאי מי רעיון לשיפור משמעותי כלשהו שהוא היה רוצה לראות ביד2
        הוא יותר ממוזמן לכתוב כאן
        ואולי אוכל לשלבו בתוסף

        ג.נ. אני משתדל לא להכנס ליד 2 (ולא התקנתי את התוסף לע"ע
        אבל אם הייתי מחפש רכב עכשיו, הדבר שהיה חשוב לי, זה שיסומנו לי מודעות שכבר צפיתי גם בפתיחה מחודשת של האתר
        אם היה אפשר לעשות חיפוש עם משתנים, זה בכלל היה נפלא


        כמה חיפושים בדף אחד
        פריוס, עד 350 ק"מ, דאצ’יה ורנו רק דיזל, וi25 רק מנוע 1.6, וסובארו על גז…
        קורולה 2010-12 ואטראז’ 2016 ומעלה

        למד לשונך לומר איני יודע

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

        תגובה 1 תגובה אחרונה
        1
        • LexusL Lexus

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

          למעיישה ולמרות זאת, בניתי בעזרת ידידי הוותיק ג’מיני - תוסף לשדרוג חווית החיפוש ביד2
          אז תכל’ס מה יש בתוסף?

          • אפשרות להצגת קילומטראז’ הרכב בלחיצת כפתור - הישר מלוח החיפוש ללא צורך בפתיחת המודעה.

          993df950-7d29-4012-b4cf-773e265ea112-הקלטה 2026-06-04 020025.gif

          • אפשרות לפתיחת מודעות צפות בעמוד החיפוש ולא בכרטיסיה חדשה, כן ממש כמו ביד2 של פעם, אהה היו ימים…

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

          6de79b57-688f-4149-8aa5-065451e77efd-סוכנויות (1).gif

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

          c5bd641e-ef19-4b50-893a-420e3517d64e-image.png

          1f49d80c-d5c0-428f-a90b-910e29b9ad8f-image.png

          f0eaa68e-fe89-4044-92e1-1a250d9d8f7f-image.png

          52cdd00d-4ec7-4527-8aba-d5a086cf2e4b-image.png

          עדכון:

          התוסף נמצא בחנות התוספים
          להתקנה מחנות התוספים של כרום

          יוסיוסי מנותק
          יוסיוסי מנותק
          יוסיוס
          כתב נערך לאחרונה על ידי
          #62

          @Lexus האלוף! כל הכבוד!
          אולי להוסיף פונקציה שכשאני לוחץ על סוג רכב, אז לא צריך לגרור את העכבר לשורת החיפוש, אלא הסמן נמצא שם אוטומטית
          וגם, שיהיה חיפוש ע"י דיבור(מיקרופון) או אפי’ פונקציה של AI שאתה אומר באופן כללי מה אתה צריך, והיא מפעילה את המסננים הרלוונטיים

          LexusL תגובה 1 תגובה אחרונה
          1
          • יוסיוסי יוסיוס

            @Lexus האלוף! כל הכבוד!
            אולי להוסיף פונקציה שכשאני לוחץ על סוג רכב, אז לא צריך לגרור את העכבר לשורת החיפוש, אלא הסמן נמצא שם אוטומטית
            וגם, שיהיה חיפוש ע"י דיבור(מיקרופון) או אפי’ פונקציה של AI שאתה אומר באופן כללי מה אתה צריך, והיא מפעילה את המסננים הרלוונטיים

            LexusL מנותק
            LexusL מנותק
            Lexus
            מייבין
            כתב נערך לאחרונה על ידי Lexus
            #63

            @יוסיוס כתב בשיפור חווית החיפוש ביד 2:

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

            בינגו
            זה ממש מציק והבוקר עלה לי הרעיון לסדר את זה בתוסף תכלס זה יהיה ממש תרומה ליד2 כי הם היו אמורים לחשוב על זה לבד:)

            איך הרכב שלכם? מוזמנים לדרג באתר המידע החדש

            תגובה 1 תגובה אחרונה
            1
            • אושר מתקרבא אושר מתקרב התייחס לנושא זה
            • ח מחובר
              ח מחובר
              חולה על פריוס
              כתב נערך לאחרונה על ידי
              #64

              בואנה פיצוץ של דבר!!! עזרת לי מאוד!!

              תגובה 1 תגובה אחרונה
              1
              • הכל מלמעלהה מנותק
                הכל מלמעלהה מנותק
                הכל מלמעלה
                כתב נערך לאחרונה על ידי הכל מלמעלה
                #65

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

                // ==UserScript==
                // @name         יד2 - סינון סוכנויות, הוספת מפות ושליפת נתונים
                // @namespace    http://tampermonkey.net/
                // @version      2.8
                // @description  מערכת סינון חכמה, שליפת נתונים עם מטמון מתקדם, חיווי טעינה וקישור למפות
                // @author       You
                // @match        *://www.yad2.co.il/vehicles/*
                // @match        *://www.yad2.co.il/my-favorites*
                // @grant        none
                // ==/UserScript==
                
                (function() {
                    'use strict';
                
                    console.log('[יד2 סקריפט] --- התחלת ריצת סקריפט: גרסה 2.8 ---');
                
                    let isFilterActive = localStorage.getItem('hideYad2Agencies') === 'true';
                    const carDataCache = new Map();
                
                    // ==========================================
                    // חלק 1: מנגנון סינון סוכנויות
                    // ==========================================
                
                    function toggleAgencies() {
                        if (window.location.href.includes('my-favorites')) return;
                
                        const allItems = document.querySelectorAll('a[data-listing-type]');
                        let hiddenCount = 0;
                
                        allItems.forEach(item => {
                            const listingType = item.getAttribute('data-listing-type') || '';
                            const isAgency = listingType.includes('agency') || item.querySelector('[class*="agencyName"]');
                
                            if (isAgency) {
                                item.style.display = isFilterActive ? 'none' : '';
                                if (isFilterActive) hiddenCount++;
                            }
                        });
                        
                        if (isFilterActive && hiddenCount > 0) {
                            console.log(`[יד2 סקריפט] הוסתרו ${hiddenCount} רכבי סוכנויות.`);
                        }
                    }
                
                    function createCheckbox(container) {
                        if (document.getElementById('hide-agency-checkbox') || window.location.href.includes('my-favorites')) return;
                
                        const wrapper = document.createElement('div');
                        wrapper.style.cssText = 'display: flex; align-items: center; margin-right: auto; margin-left: 20px; padding: 5px 10px; background-color: #f5f5f5; border-radius: 5px; border: 1px solid #ccc;';
                
                        const checkbox = document.createElement('input');
                        checkbox.type = 'checkbox';
                        checkbox.id = 'hide-agency-checkbox';
                        checkbox.style.cssText = 'cursor: pointer; margin-left: 8px; width: 16px; height: 16px;';
                        checkbox.checked = isFilterActive;
                
                        checkbox.addEventListener('change', (e) => {
                            isFilterActive = e.target.checked;
                            localStorage.setItem('hideYad2Agencies', isFilterActive);
                            console.log(`[יד2 סקריפט] סינון סוכנויות: ${isFilterActive ? 'פועל' : 'כבוי'}`);
                            toggleAgencies();
                        });
                
                        const label = document.createElement('label');
                        label.htmlFor = 'hide-agency-checkbox';
                        label.innerText = 'הסתר רכבי סוכנויות';
                        label.style.cssText = 'cursor: pointer; font-size: 14px; font-weight: bold; color: #333; margin: 0;';
                
                        wrapper.appendChild(checkbox);
                        wrapper.appendChild(label);
                
                        container.insertBefore(wrapper, container.childNodes[1] || container.firstChild);
                        console.log('[יד2 סקריפט] כפתור סינון סוכנויות נוסף בהצלחה.');
                    }
                
                    // ==========================================
                    // חלק 2: מנגנון שליפת נתונים
                    // ==========================================
                
                    function createDisplayElement(kmValue, locValue, descValue) {
                        const displayDiv = document.createElement('div');
                        displayDiv.className = 'yad2-extra-data-injected';
                        // הוסר חיתוך הטקסט - הכרטיסייה תתרחב כלפי מטה בהתאם לאורך הטקסט
                        displayDiv.style.cssText = 'margin-top: 8px; padding-top: 8px; border-top: 1px dashed #ccc; font-size: 14px; line-height: 1.5; color: #444; width: 100%; flex-basis: 100%; position: relative; z-index: 99;';
                
                        let locationHtml = `<span>${locValue}</span>`;
                        if (locValue !== 'לא צוין' && locValue.trim() !== '') {
                            const mapsUrl = `https://www.google.co.il/maps/dir//${encodeURIComponent(locValue.trim())}?hl=iw`;
                            locationHtml = `<a class="yad2-map-link" href="${mapsUrl}" target="_blank" style="color: inherit; text-decoration: underline; font-weight: normal; cursor: pointer; position: relative; z-index: 100;" title="פתח מסלול ניווט בגוגל מפות">${locValue} 🗺️</a>`;
                        }
                
                        displayDiv.innerHTML = `
                            <div><strong>ק"מ:</strong> ${kmValue}</div>
                            <div><strong>מיקום:</strong> ${locationHtml}</div>
                            <div><strong>פרטים:</strong> ${descValue}</div>
                        `;
                
                        const mapLink = displayDiv.querySelector('.yad2-map-link');
                        if (mapLink) {
                            mapLink.addEventListener('click', (e) => {
                                e.stopPropagation();
                            });
                        }
                
                        return displayDiv;
                    }
                
                    async function processCarCard(card, url) {
                        const isFavoritesPage = window.location.href.includes('my-favorites');
                        
                        // בעמוד המועדפים אנחנו בודקים את האבא של הכרטיסיה (כמו בעיצוב הישן) כדי לא לדרוס את המבנה
                        const containerToCheck = isFavoritesPage ? (card.closest('article') || card.parentNode) : card;
                
                        if (containerToCheck.querySelector('.yad2-extra-data-injected') || containerToCheck.querySelector('.yad2-loading-data')) return;
                
                        const cleanUrl = url.split('?')[0];
                
                        const loadingDiv = document.createElement('div');
                        loadingDiv.className = 'yad2-loading-data';
                        loadingDiv.style.cssText = 'margin-top: 8px; font-size: 13px; color: #888; font-style: italic; width: 100%; flex-basis: 100%;';
                        loadingDiv.innerHTML = '⏳ שולף נתונים...';
                
                        // פיצול ההזרקה: לוגיקה נפרדת למועדפים ולדף הראשי
                        if (isFavoritesPage) {
                            const favoritesTitlesSection = containerToCheck.querySelector('[class*="titlesSection"]');
                            if (favoritesTitlesSection) {
                                favoritesTitlesSection.appendChild(loadingDiv);
                            } else {
                                containerToCheck.appendChild(loadingDiv);
                            }
                        } else {
                            const mainPageInfoBox = card.querySelector('[data-testid="feed-item-info"]');
                            if (mainPageInfoBox) {
                                mainPageInfoBox.style.display = 'flex';
                                mainPageInfoBox.style.flexWrap = 'wrap';
                                mainPageInfoBox.appendChild(loadingDiv);
                            } else {
                                card.appendChild(loadingDiv);
                            }
                        }
                
                        if (!carDataCache.has(cleanUrl)) {
                            const fetchPromise = fetch(cleanUrl)
                                .then(async (response) => {
                                    if (!response.ok) throw new Error(`Network response was not ok (${response.status})`);
                                    
                                    const html = await response.text();
                                    const parser = new DOMParser();
                                    const doc = parser.parseFromString(html, 'text/html');
                
                                    let kmValue = 'לא צוין', locValue = 'לא צוין', descValue = 'אין פרטים נוספים';
                                    
                                    const kmCard = doc.querySelector('[data-testid="we-checked-km-card"]');
                                    if (kmCard) {
                                        const valElement = kmCard.querySelector('[data-testid="detail-card-value"]');
                                        if (valElement) kmValue = valElement.textContent.trim();
                                    }
                
                                    const locElement = doc.querySelector('[data-testid="location"]');
                                    if (locElement) locValue = locElement.textContent.trim();
                
                                    const descElement = doc.querySelector('[data-testid="vehicle-description"]');
                                    if (descElement) descValue = descElement.textContent.trim();
                
                                    await new Promise(resolve => setTimeout(resolve, 500 + Math.random() * 1000));
                                    return { kmValue, locValue, descValue };
                                })
                                .catch(error => {
                                    console.error(`[יד2 סקריפט] שגיאה במשיכת נתונים עבור ${cleanUrl}:`, error);
                                    return null;
                                });
                
                            carDataCache.set(cleanUrl, fetchPromise);
                        }
                
                        const data = await carDataCache.get(cleanUrl);
                
                        if (loadingDiv.parentNode) {
                            if (data) {
                                const displayDiv = createDisplayElement(data.kmValue, data.locValue, data.descValue);
                                loadingDiv.replaceWith(displayDiv);
                            } else {
                                loadingDiv.innerHTML = '❌ שגיאה בשליפת הנתונים';
                                loadingDiv.style.color = '#c00';
                                setTimeout(() => { if(loadingDiv.parentNode) loadingDiv.remove(); }, 3000);
                            }
                        }
                    }
                
                    function scanForCars() {
                        const itemCards = document.querySelectorAll('a[href*="item/"]');
                        let processedCount = 0;
                        const isFavoritesPage = window.location.href.includes('my-favorites');
                
                        for (let card of itemCards) {
                            const url = card.href;
                            if (url.includes('/item/')) {
                                const containerToCheck = isFavoritesPage ? (card.closest('article') || card.parentNode) : card;
                                if (!containerToCheck.querySelector('.yad2-extra-data-injected') && !containerToCheck.querySelector('.yad2-loading-data')) {
                                    processCarCard(card, url);
                                    processedCount++;
                                }
                            }
                        }
                        
                        if (processedCount > 0) {
                            console.log(`[יד2 סקריפט] זוהו ${processedCount} רכבים חדשים, מתחיל בשליפה.`);
                        }
                
                        if (isFilterActive) {
                            toggleAgencies();
                        }
                    }
                
                    // ==========================================
                    // חלק 3: הפעלת הכלים והאזנה לשינויים
                    // ==========================================
                
                    let scanTimeout = null;
                
                    const observer = new MutationObserver((mutations) => {
                        const sortContainer = document.querySelector('[class*="sortAndTotalBox"]');
                        if (sortContainer && !document.getElementById('hide-agency-checkbox')) {
                            createCheckbox(sortContainer);
                        }
                
                        let shouldScan = false;
                        for (let mutation of mutations) {
                            if (mutation.addedNodes.length > 0) {
                                shouldScan = true;
                                break;
                            }
                        }
                
                        if (shouldScan) {
                            if (scanTimeout) clearTimeout(scanTimeout);
                            scanTimeout = setTimeout(() => {
                                scanForCars();
                            }, 300);
                        }
                    });
                
                    console.log('[יד2 סקריפט] מפעיל מאזין לשינויים בעמוד...');
                    observer.observe(document.body, { childList: true, subtree: true });
                
                    setTimeout(scanForCars, 1500);
                
                })();
                

                וכך זה נראה:
                22866c59-95b5-4854-800e-38a30daee1e7-image.png

                0504120 מאירמ 2 תגובות תגובה אחרונה
                3
                • LexusL Lexus

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

                  למעיישה ולמרות זאת, בניתי בעזרת ידידי הוותיק ג’מיני - תוסף לשדרוג חווית החיפוש ביד2
                  אז תכל’ס מה יש בתוסף?

                  • אפשרות להצגת קילומטראז’ הרכב בלחיצת כפתור - הישר מלוח החיפוש ללא צורך בפתיחת המודעה.

                  993df950-7d29-4012-b4cf-773e265ea112-הקלטה 2026-06-04 020025.gif

                  • אפשרות לפתיחת מודעות צפות בעמוד החיפוש ולא בכרטיסיה חדשה, כן ממש כמו ביד2 של פעם, אהה היו ימים…

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

                  6de79b57-688f-4149-8aa5-065451e77efd-סוכנויות (1).gif

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

                  c5bd641e-ef19-4b50-893a-420e3517d64e-image.png

                  1f49d80c-d5c0-428f-a90b-910e29b9ad8f-image.png

                  f0eaa68e-fe89-4044-92e1-1a250d9d8f7f-image.png

                  52cdd00d-4ec7-4527-8aba-d5a086cf2e4b-image.png

                  עדכון:

                  התוסף נמצא בחנות התוספים
                  להתקנה מחנות התוספים של כרום

                  ל מנותק
                  ל מנותק
                  לחי
                  כתב נערך לאחרונה על ידי
                  #66

                  @Lexus אני לא יודע אם זה מעשי אבל האם יש אופציה לעשות שאחרי שאני מחפש עם סינון ביד 2, להוריד את התוצאות לקובץ אקסל שיופיעו בו הפרטים העיקרים של הרכבים (אפשר בלי מספר טלפון ובמקום זה קישור).

                  תגובה 1 תגובה אחרונה
                  1
                  • הכל מלמעלהה הכל מלמעלה

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

                    // ==UserScript==
                    // @name         יד2 - סינון סוכנויות, הוספת מפות ושליפת נתונים
                    // @namespace    http://tampermonkey.net/
                    // @version      2.8
                    // @description  מערכת סינון חכמה, שליפת נתונים עם מטמון מתקדם, חיווי טעינה וקישור למפות
                    // @author       You
                    // @match        *://www.yad2.co.il/vehicles/*
                    // @match        *://www.yad2.co.il/my-favorites*
                    // @grant        none
                    // ==/UserScript==
                    
                    (function() {
                        'use strict';
                    
                        console.log('[יד2 סקריפט] --- התחלת ריצת סקריפט: גרסה 2.8 ---');
                    
                        let isFilterActive = localStorage.getItem('hideYad2Agencies') === 'true';
                        const carDataCache = new Map();
                    
                        // ==========================================
                        // חלק 1: מנגנון סינון סוכנויות
                        // ==========================================
                    
                        function toggleAgencies() {
                            if (window.location.href.includes('my-favorites')) return;
                    
                            const allItems = document.querySelectorAll('a[data-listing-type]');
                            let hiddenCount = 0;
                    
                            allItems.forEach(item => {
                                const listingType = item.getAttribute('data-listing-type') || '';
                                const isAgency = listingType.includes('agency') || item.querySelector('[class*="agencyName"]');
                    
                                if (isAgency) {
                                    item.style.display = isFilterActive ? 'none' : '';
                                    if (isFilterActive) hiddenCount++;
                                }
                            });
                            
                            if (isFilterActive && hiddenCount > 0) {
                                console.log(`[יד2 סקריפט] הוסתרו ${hiddenCount} רכבי סוכנויות.`);
                            }
                        }
                    
                        function createCheckbox(container) {
                            if (document.getElementById('hide-agency-checkbox') || window.location.href.includes('my-favorites')) return;
                    
                            const wrapper = document.createElement('div');
                            wrapper.style.cssText = 'display: flex; align-items: center; margin-right: auto; margin-left: 20px; padding: 5px 10px; background-color: #f5f5f5; border-radius: 5px; border: 1px solid #ccc;';
                    
                            const checkbox = document.createElement('input');
                            checkbox.type = 'checkbox';
                            checkbox.id = 'hide-agency-checkbox';
                            checkbox.style.cssText = 'cursor: pointer; margin-left: 8px; width: 16px; height: 16px;';
                            checkbox.checked = isFilterActive;
                    
                            checkbox.addEventListener('change', (e) => {
                                isFilterActive = e.target.checked;
                                localStorage.setItem('hideYad2Agencies', isFilterActive);
                                console.log(`[יד2 סקריפט] סינון סוכנויות: ${isFilterActive ? 'פועל' : 'כבוי'}`);
                                toggleAgencies();
                            });
                    
                            const label = document.createElement('label');
                            label.htmlFor = 'hide-agency-checkbox';
                            label.innerText = 'הסתר רכבי סוכנויות';
                            label.style.cssText = 'cursor: pointer; font-size: 14px; font-weight: bold; color: #333; margin: 0;';
                    
                            wrapper.appendChild(checkbox);
                            wrapper.appendChild(label);
                    
                            container.insertBefore(wrapper, container.childNodes[1] || container.firstChild);
                            console.log('[יד2 סקריפט] כפתור סינון סוכנויות נוסף בהצלחה.');
                        }
                    
                        // ==========================================
                        // חלק 2: מנגנון שליפת נתונים
                        // ==========================================
                    
                        function createDisplayElement(kmValue, locValue, descValue) {
                            const displayDiv = document.createElement('div');
                            displayDiv.className = 'yad2-extra-data-injected';
                            // הוסר חיתוך הטקסט - הכרטיסייה תתרחב כלפי מטה בהתאם לאורך הטקסט
                            displayDiv.style.cssText = 'margin-top: 8px; padding-top: 8px; border-top: 1px dashed #ccc; font-size: 14px; line-height: 1.5; color: #444; width: 100%; flex-basis: 100%; position: relative; z-index: 99;';
                    
                            let locationHtml = `<span>${locValue}</span>`;
                            if (locValue !== 'לא צוין' && locValue.trim() !== '') {
                                const mapsUrl = `https://www.google.co.il/maps/dir//${encodeURIComponent(locValue.trim())}?hl=iw`;
                                locationHtml = `<a class="yad2-map-link" href="${mapsUrl}" target="_blank" style="color: inherit; text-decoration: underline; font-weight: normal; cursor: pointer; position: relative; z-index: 100;" title="פתח מסלול ניווט בגוגל מפות">${locValue} 🗺️</a>`;
                            }
                    
                            displayDiv.innerHTML = `
                                <div><strong>ק"מ:</strong> ${kmValue}</div>
                                <div><strong>מיקום:</strong> ${locationHtml}</div>
                                <div><strong>פרטים:</strong> ${descValue}</div>
                            `;
                    
                            const mapLink = displayDiv.querySelector('.yad2-map-link');
                            if (mapLink) {
                                mapLink.addEventListener('click', (e) => {
                                    e.stopPropagation();
                                });
                            }
                    
                            return displayDiv;
                        }
                    
                        async function processCarCard(card, url) {
                            const isFavoritesPage = window.location.href.includes('my-favorites');
                            
                            // בעמוד המועדפים אנחנו בודקים את האבא של הכרטיסיה (כמו בעיצוב הישן) כדי לא לדרוס את המבנה
                            const containerToCheck = isFavoritesPage ? (card.closest('article') || card.parentNode) : card;
                    
                            if (containerToCheck.querySelector('.yad2-extra-data-injected') || containerToCheck.querySelector('.yad2-loading-data')) return;
                    
                            const cleanUrl = url.split('?')[0];
                    
                            const loadingDiv = document.createElement('div');
                            loadingDiv.className = 'yad2-loading-data';
                            loadingDiv.style.cssText = 'margin-top: 8px; font-size: 13px; color: #888; font-style: italic; width: 100%; flex-basis: 100%;';
                            loadingDiv.innerHTML = '⏳ שולף נתונים...';
                    
                            // פיצול ההזרקה: לוגיקה נפרדת למועדפים ולדף הראשי
                            if (isFavoritesPage) {
                                const favoritesTitlesSection = containerToCheck.querySelector('[class*="titlesSection"]');
                                if (favoritesTitlesSection) {
                                    favoritesTitlesSection.appendChild(loadingDiv);
                                } else {
                                    containerToCheck.appendChild(loadingDiv);
                                }
                            } else {
                                const mainPageInfoBox = card.querySelector('[data-testid="feed-item-info"]');
                                if (mainPageInfoBox) {
                                    mainPageInfoBox.style.display = 'flex';
                                    mainPageInfoBox.style.flexWrap = 'wrap';
                                    mainPageInfoBox.appendChild(loadingDiv);
                                } else {
                                    card.appendChild(loadingDiv);
                                }
                            }
                    
                            if (!carDataCache.has(cleanUrl)) {
                                const fetchPromise = fetch(cleanUrl)
                                    .then(async (response) => {
                                        if (!response.ok) throw new Error(`Network response was not ok (${response.status})`);
                                        
                                        const html = await response.text();
                                        const parser = new DOMParser();
                                        const doc = parser.parseFromString(html, 'text/html');
                    
                                        let kmValue = 'לא צוין', locValue = 'לא צוין', descValue = 'אין פרטים נוספים';
                                        
                                        const kmCard = doc.querySelector('[data-testid="we-checked-km-card"]');
                                        if (kmCard) {
                                            const valElement = kmCard.querySelector('[data-testid="detail-card-value"]');
                                            if (valElement) kmValue = valElement.textContent.trim();
                                        }
                    
                                        const locElement = doc.querySelector('[data-testid="location"]');
                                        if (locElement) locValue = locElement.textContent.trim();
                    
                                        const descElement = doc.querySelector('[data-testid="vehicle-description"]');
                                        if (descElement) descValue = descElement.textContent.trim();
                    
                                        await new Promise(resolve => setTimeout(resolve, 500 + Math.random() * 1000));
                                        return { kmValue, locValue, descValue };
                                    })
                                    .catch(error => {
                                        console.error(`[יד2 סקריפט] שגיאה במשיכת נתונים עבור ${cleanUrl}:`, error);
                                        return null;
                                    });
                    
                                carDataCache.set(cleanUrl, fetchPromise);
                            }
                    
                            const data = await carDataCache.get(cleanUrl);
                    
                            if (loadingDiv.parentNode) {
                                if (data) {
                                    const displayDiv = createDisplayElement(data.kmValue, data.locValue, data.descValue);
                                    loadingDiv.replaceWith(displayDiv);
                                } else {
                                    loadingDiv.innerHTML = '❌ שגיאה בשליפת הנתונים';
                                    loadingDiv.style.color = '#c00';
                                    setTimeout(() => { if(loadingDiv.parentNode) loadingDiv.remove(); }, 3000);
                                }
                            }
                        }
                    
                        function scanForCars() {
                            const itemCards = document.querySelectorAll('a[href*="item/"]');
                            let processedCount = 0;
                            const isFavoritesPage = window.location.href.includes('my-favorites');
                    
                            for (let card of itemCards) {
                                const url = card.href;
                                if (url.includes('/item/')) {
                                    const containerToCheck = isFavoritesPage ? (card.closest('article') || card.parentNode) : card;
                                    if (!containerToCheck.querySelector('.yad2-extra-data-injected') && !containerToCheck.querySelector('.yad2-loading-data')) {
                                        processCarCard(card, url);
                                        processedCount++;
                                    }
                                }
                            }
                            
                            if (processedCount > 0) {
                                console.log(`[יד2 סקריפט] זוהו ${processedCount} רכבים חדשים, מתחיל בשליפה.`);
                            }
                    
                            if (isFilterActive) {
                                toggleAgencies();
                            }
                        }
                    
                        // ==========================================
                        // חלק 3: הפעלת הכלים והאזנה לשינויים
                        // ==========================================
                    
                        let scanTimeout = null;
                    
                        const observer = new MutationObserver((mutations) => {
                            const sortContainer = document.querySelector('[class*="sortAndTotalBox"]');
                            if (sortContainer && !document.getElementById('hide-agency-checkbox')) {
                                createCheckbox(sortContainer);
                            }
                    
                            let shouldScan = false;
                            for (let mutation of mutations) {
                                if (mutation.addedNodes.length > 0) {
                                    shouldScan = true;
                                    break;
                                }
                            }
                    
                            if (shouldScan) {
                                if (scanTimeout) clearTimeout(scanTimeout);
                                scanTimeout = setTimeout(() => {
                                    scanForCars();
                                }, 300);
                            }
                        });
                    
                        console.log('[יד2 סקריפט] מפעיל מאזין לשינויים בעמוד...');
                        observer.observe(document.body, { childList: true, subtree: true });
                    
                        setTimeout(scanForCars, 1500);
                    
                    })();
                    

                    וכך זה נראה:
                    22866c59-95b5-4854-800e-38a30daee1e7-image.png

                    0504120 מנותק
                    0504120 מנותק
                    050412
                    כתב נערך לאחרונה על ידי
                    #67

                    @הכל-מלמעלה ממש עובד טוב ממש תודה רבה

                    תגובה 1 תגובה אחרונה
                    2
                    • הכל מלמעלהה הכל מלמעלה

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

                      // ==UserScript==
                      // @name         יד2 - סינון סוכנויות, הוספת מפות ושליפת נתונים
                      // @namespace    http://tampermonkey.net/
                      // @version      2.8
                      // @description  מערכת סינון חכמה, שליפת נתונים עם מטמון מתקדם, חיווי טעינה וקישור למפות
                      // @author       You
                      // @match        *://www.yad2.co.il/vehicles/*
                      // @match        *://www.yad2.co.il/my-favorites*
                      // @grant        none
                      // ==/UserScript==
                      
                      (function() {
                          'use strict';
                      
                          console.log('[יד2 סקריפט] --- התחלת ריצת סקריפט: גרסה 2.8 ---');
                      
                          let isFilterActive = localStorage.getItem('hideYad2Agencies') === 'true';
                          const carDataCache = new Map();
                      
                          // ==========================================
                          // חלק 1: מנגנון סינון סוכנויות
                          // ==========================================
                      
                          function toggleAgencies() {
                              if (window.location.href.includes('my-favorites')) return;
                      
                              const allItems = document.querySelectorAll('a[data-listing-type]');
                              let hiddenCount = 0;
                      
                              allItems.forEach(item => {
                                  const listingType = item.getAttribute('data-listing-type') || '';
                                  const isAgency = listingType.includes('agency') || item.querySelector('[class*="agencyName"]');
                      
                                  if (isAgency) {
                                      item.style.display = isFilterActive ? 'none' : '';
                                      if (isFilterActive) hiddenCount++;
                                  }
                              });
                              
                              if (isFilterActive && hiddenCount > 0) {
                                  console.log(`[יד2 סקריפט] הוסתרו ${hiddenCount} רכבי סוכנויות.`);
                              }
                          }
                      
                          function createCheckbox(container) {
                              if (document.getElementById('hide-agency-checkbox') || window.location.href.includes('my-favorites')) return;
                      
                              const wrapper = document.createElement('div');
                              wrapper.style.cssText = 'display: flex; align-items: center; margin-right: auto; margin-left: 20px; padding: 5px 10px; background-color: #f5f5f5; border-radius: 5px; border: 1px solid #ccc;';
                      
                              const checkbox = document.createElement('input');
                              checkbox.type = 'checkbox';
                              checkbox.id = 'hide-agency-checkbox';
                              checkbox.style.cssText = 'cursor: pointer; margin-left: 8px; width: 16px; height: 16px;';
                              checkbox.checked = isFilterActive;
                      
                              checkbox.addEventListener('change', (e) => {
                                  isFilterActive = e.target.checked;
                                  localStorage.setItem('hideYad2Agencies', isFilterActive);
                                  console.log(`[יד2 סקריפט] סינון סוכנויות: ${isFilterActive ? 'פועל' : 'כבוי'}`);
                                  toggleAgencies();
                              });
                      
                              const label = document.createElement('label');
                              label.htmlFor = 'hide-agency-checkbox';
                              label.innerText = 'הסתר רכבי סוכנויות';
                              label.style.cssText = 'cursor: pointer; font-size: 14px; font-weight: bold; color: #333; margin: 0;';
                      
                              wrapper.appendChild(checkbox);
                              wrapper.appendChild(label);
                      
                              container.insertBefore(wrapper, container.childNodes[1] || container.firstChild);
                              console.log('[יד2 סקריפט] כפתור סינון סוכנויות נוסף בהצלחה.');
                          }
                      
                          // ==========================================
                          // חלק 2: מנגנון שליפת נתונים
                          // ==========================================
                      
                          function createDisplayElement(kmValue, locValue, descValue) {
                              const displayDiv = document.createElement('div');
                              displayDiv.className = 'yad2-extra-data-injected';
                              // הוסר חיתוך הטקסט - הכרטיסייה תתרחב כלפי מטה בהתאם לאורך הטקסט
                              displayDiv.style.cssText = 'margin-top: 8px; padding-top: 8px; border-top: 1px dashed #ccc; font-size: 14px; line-height: 1.5; color: #444; width: 100%; flex-basis: 100%; position: relative; z-index: 99;';
                      
                              let locationHtml = `<span>${locValue}</span>`;
                              if (locValue !== 'לא צוין' && locValue.trim() !== '') {
                                  const mapsUrl = `https://www.google.co.il/maps/dir//${encodeURIComponent(locValue.trim())}?hl=iw`;
                                  locationHtml = `<a class="yad2-map-link" href="${mapsUrl}" target="_blank" style="color: inherit; text-decoration: underline; font-weight: normal; cursor: pointer; position: relative; z-index: 100;" title="פתח מסלול ניווט בגוגל מפות">${locValue} 🗺️</a>`;
                              }
                      
                              displayDiv.innerHTML = `
                                  <div><strong>ק"מ:</strong> ${kmValue}</div>
                                  <div><strong>מיקום:</strong> ${locationHtml}</div>
                                  <div><strong>פרטים:</strong> ${descValue}</div>
                              `;
                      
                              const mapLink = displayDiv.querySelector('.yad2-map-link');
                              if (mapLink) {
                                  mapLink.addEventListener('click', (e) => {
                                      e.stopPropagation();
                                  });
                              }
                      
                              return displayDiv;
                          }
                      
                          async function processCarCard(card, url) {
                              const isFavoritesPage = window.location.href.includes('my-favorites');
                              
                              // בעמוד המועדפים אנחנו בודקים את האבא של הכרטיסיה (כמו בעיצוב הישן) כדי לא לדרוס את המבנה
                              const containerToCheck = isFavoritesPage ? (card.closest('article') || card.parentNode) : card;
                      
                              if (containerToCheck.querySelector('.yad2-extra-data-injected') || containerToCheck.querySelector('.yad2-loading-data')) return;
                      
                              const cleanUrl = url.split('?')[0];
                      
                              const loadingDiv = document.createElement('div');
                              loadingDiv.className = 'yad2-loading-data';
                              loadingDiv.style.cssText = 'margin-top: 8px; font-size: 13px; color: #888; font-style: italic; width: 100%; flex-basis: 100%;';
                              loadingDiv.innerHTML = '⏳ שולף נתונים...';
                      
                              // פיצול ההזרקה: לוגיקה נפרדת למועדפים ולדף הראשי
                              if (isFavoritesPage) {
                                  const favoritesTitlesSection = containerToCheck.querySelector('[class*="titlesSection"]');
                                  if (favoritesTitlesSection) {
                                      favoritesTitlesSection.appendChild(loadingDiv);
                                  } else {
                                      containerToCheck.appendChild(loadingDiv);
                                  }
                              } else {
                                  const mainPageInfoBox = card.querySelector('[data-testid="feed-item-info"]');
                                  if (mainPageInfoBox) {
                                      mainPageInfoBox.style.display = 'flex';
                                      mainPageInfoBox.style.flexWrap = 'wrap';
                                      mainPageInfoBox.appendChild(loadingDiv);
                                  } else {
                                      card.appendChild(loadingDiv);
                                  }
                              }
                      
                              if (!carDataCache.has(cleanUrl)) {
                                  const fetchPromise = fetch(cleanUrl)
                                      .then(async (response) => {
                                          if (!response.ok) throw new Error(`Network response was not ok (${response.status})`);
                                          
                                          const html = await response.text();
                                          const parser = new DOMParser();
                                          const doc = parser.parseFromString(html, 'text/html');
                      
                                          let kmValue = 'לא צוין', locValue = 'לא צוין', descValue = 'אין פרטים נוספים';
                                          
                                          const kmCard = doc.querySelector('[data-testid="we-checked-km-card"]');
                                          if (kmCard) {
                                              const valElement = kmCard.querySelector('[data-testid="detail-card-value"]');
                                              if (valElement) kmValue = valElement.textContent.trim();
                                          }
                      
                                          const locElement = doc.querySelector('[data-testid="location"]');
                                          if (locElement) locValue = locElement.textContent.trim();
                      
                                          const descElement = doc.querySelector('[data-testid="vehicle-description"]');
                                          if (descElement) descValue = descElement.textContent.trim();
                      
                                          await new Promise(resolve => setTimeout(resolve, 500 + Math.random() * 1000));
                                          return { kmValue, locValue, descValue };
                                      })
                                      .catch(error => {
                                          console.error(`[יד2 סקריפט] שגיאה במשיכת נתונים עבור ${cleanUrl}:`, error);
                                          return null;
                                      });
                      
                                  carDataCache.set(cleanUrl, fetchPromise);
                              }
                      
                              const data = await carDataCache.get(cleanUrl);
                      
                              if (loadingDiv.parentNode) {
                                  if (data) {
                                      const displayDiv = createDisplayElement(data.kmValue, data.locValue, data.descValue);
                                      loadingDiv.replaceWith(displayDiv);
                                  } else {
                                      loadingDiv.innerHTML = '❌ שגיאה בשליפת הנתונים';
                                      loadingDiv.style.color = '#c00';
                                      setTimeout(() => { if(loadingDiv.parentNode) loadingDiv.remove(); }, 3000);
                                  }
                              }
                          }
                      
                          function scanForCars() {
                              const itemCards = document.querySelectorAll('a[href*="item/"]');
                              let processedCount = 0;
                              const isFavoritesPage = window.location.href.includes('my-favorites');
                      
                              for (let card of itemCards) {
                                  const url = card.href;
                                  if (url.includes('/item/')) {
                                      const containerToCheck = isFavoritesPage ? (card.closest('article') || card.parentNode) : card;
                                      if (!containerToCheck.querySelector('.yad2-extra-data-injected') && !containerToCheck.querySelector('.yad2-loading-data')) {
                                          processCarCard(card, url);
                                          processedCount++;
                                      }
                                  }
                              }
                              
                              if (processedCount > 0) {
                                  console.log(`[יד2 סקריפט] זוהו ${processedCount} רכבים חדשים, מתחיל בשליפה.`);
                              }
                      
                              if (isFilterActive) {
                                  toggleAgencies();
                              }
                          }
                      
                          // ==========================================
                          // חלק 3: הפעלת הכלים והאזנה לשינויים
                          // ==========================================
                      
                          let scanTimeout = null;
                      
                          const observer = new MutationObserver((mutations) => {
                              const sortContainer = document.querySelector('[class*="sortAndTotalBox"]');
                              if (sortContainer && !document.getElementById('hide-agency-checkbox')) {
                                  createCheckbox(sortContainer);
                              }
                      
                              let shouldScan = false;
                              for (let mutation of mutations) {
                                  if (mutation.addedNodes.length > 0) {
                                      shouldScan = true;
                                      break;
                                  }
                              }
                      
                              if (shouldScan) {
                                  if (scanTimeout) clearTimeout(scanTimeout);
                                  scanTimeout = setTimeout(() => {
                                      scanForCars();
                                  }, 300);
                              }
                          });
                      
                          console.log('[יד2 סקריפט] מפעיל מאזין לשינויים בעמוד...');
                          observer.observe(document.body, { childList: true, subtree: true });
                      
                          setTimeout(scanForCars, 1500);
                      
                      })();
                      

                      וכך זה נראה:
                      22866c59-95b5-4854-800e-38a30daee1e7-image.png

                      מאירמ מנותק
                      מאירמ מנותק
                      מאיר
                      מנהל ראשי
                      כתב נערך לאחרונה על ידי
                      #68

                      @הכל-מלמעלה וואו האם תוכל לעשות את זה כתוסף מוכן?

                      ליצירת קשר לחץ כאן

                      הכל מלמעלהה תגובה 1 תגובה אחרונה
                      0
                      • מאירמ מאיר

                        @הכל-מלמעלה וואו האם תוכל לעשות את זה כתוסף מוכן?

                        הכל מלמעלהה מנותק
                        הכל מלמעלהה מנותק
                        הכל מלמעלה
                        כתב נערך לאחרונה על ידי הכל מלמעלה
                        #69

                        @מאיר תודה רבה
                        בשביל לעשות תוסף מוכן צריך לשלם 5$ חד פעמי וכן לקבל איזשהו ותק (שים לב שבתוסף של לקסוס יש אזהרה לפני ההתקנה)
                        מה שפירסמתי מתאים לכל אחד,
                        למי שלא מכיר, טמפרמונקי זה תוסף שמאפשר להוסיף לו סקריפטים שיעשו כל מה שבא לך בראש, למשל אתה מגדיר לו שיעשה התאמת מחיר אוטומטי בטמו בלי שתצטרך ללחוץ כלום (כן, עשיתי לעצמי…), או שבכל פעם שנכנסים לרכבים זה לזה הוא יפתח את כל ההתראות בחלון חדש, בקיצור - קודים… לי אישיתי יש מעל 50 סקריפטים כאלה, וזה קצת…
                        מי שאין לו יכול להתקין מהחנות של גוגל כאן, זהירות, זה ממכר!
                        אחרי שמותקן טמפרמונקי לוחצים על צור סקריפט חדש, מכניסים את הקוד שהבאתי למעלה, שומרים וזהו…

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

                        מאירמ תגובה 1 תגובה אחרונה
                        1
                        • הכל מלמעלהה מנותק
                          הכל מלמעלהה מנותק
                          הכל מלמעלה
                          כתב נערך לאחרונה על ידי
                          #70

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

                          // ==UserScript==
                          // @name         שליפת טלפון ושם ביד2
                          // @namespace    http://tampermonkey.net/
                          // @version      3.4
                          // @description  שליפת טלפון ושם מוכר ממודעות רכב פרטיות ביד2 בלבד
                          // @author       HAKOL-MILEMALA
                          // @match        https://www.yad2.co.il/vehicles/*
                          // @grant        none
                          // ==/UserScript==
                          
                          (function () {
                              'use strict';
                          
                              const לוג_צבעים = {
                                  מידע: 'color: #3498db; font-weight: bold;',
                                  הצלחה: 'color: #27ae60; font-weight: bold;',
                                  המתנה: 'color: #f39c12; font-weight: bold;',
                                  אזהרה: 'color: #9b59b6; font-weight: bold;',
                                  שגיאה: 'color: #e74c3c; font-weight: bold;'
                              };
                          
                              // העיצוב הזה משמש גם את כפתור המודעות וגם את כפתור המאסטר
                              const עיצוב_כפתור = [
                                  'background: #eef9f6',
                                  'color: #16c39b',
                                  'border: 1px solid #16c39b',
                                  'padding: 4px 10px',
                                  'border-radius: 6px',
                                  'font-size: 12px',
                                  'font-weight: bold',
                                  'font-family: inherit',
                                  'cursor: pointer',
                                  'transition: background 0.2s, opacity 0.2s',
                                  'user-select: none',
                                  'white-space: nowrap'
                              ].join(';');
                          
                              let isBatchRunning = false;
                              let מספר_מודעות_פרטיות_אחרון = -1;
                              let דווח_כותרת_ממתינה = false;
                          
                              function לוג(סוג, הודעה, מידע = null) {
                                  const סגנון = לוג_צבעים[סוג] || לוג_צבעים.מידע;
                          
                                  if (מידע !== null) {
                                      console.log(`%c[Yad2-Script] ${הודעה}`, סגנון, מידע);
                                  } else {
                                      console.log(`%c[Yad2-Script] ${הודעה}`, סגנון);
                                  }
                              }
                          
                              function עיצוב_כפתור_עברי(כפתור) {
                                  כפתור.style.cssText = עיצוב_כפתור;
                          
                                  כפתור.addEventListener('mouseenter', () => {
                                      if (!כפתור.disabled) {
                                          כפתור.style.background = '#dcf2ec';
                                      }
                                  });
                          
                                  כפתור.addEventListener('mouseleave', () => {
                                      כפתור.style.background = '#eef9f6';
                                  });
                              }
                          
                              // ============================================================
                              // זיהוי מודעות פרטיות בלבד
                              // ============================================================
                          
                              function קבל_מודעות_פרטיות() {
                                  return Array.from(
                                      document.querySelectorAll(
                                          'a[data-nagish="private-item-link"][data-listing-type="private-vehicle"], ' +
                                          'a[data-nagish="private-item-link"][data-listing-type="private-vehicle-no-footer"]'
                                      )
                                  );
                              }
                          
                              function חלץ_ID_מודעה(מודעה) {
                                  const href = מודעה.getAttribute('href') || '';
                          
                                  const התאמה = href.match(
                                      /(?:^|\/)item\/([a-zA-Z0-9_-]+)/
                                  );
                          
                                  return התאמה ? התאמה[1] : null;
                              }
                          
                              function קבל_שם_רכב(מודעה) {
                                  return (
                                      מודעה
                                          .querySelector('[data-nagish="feed-item-section-title"]')
                                          ?.innerText
                                          ?.trim() ||
                                      'מודעה פרטית'
                                  );
                              }
                          
                              // ============================================================
                              // כפתור מאסטר
                              // נשאר באותו מקום, עם אותו עיצוב של כפתור המודעה
                              // ============================================================
                          
                              function הכנס_כפתור_מאסטר() {
                                  if (document.getElementById('yad2-master-fetch-btn')) {
                                      return;
                                  }
                          
                                  const תיבת_כותרת =
                                      document.querySelector('[class*="sortAndTotalBox"]') ||
                                      document.querySelector('[data-testid="total-items"]')?.parentNode;
                          
                                  if (!תיבת_כותרת) {
                                      if (!דווח_כותרת_ממתינה) {
                                          דווח_כותרת_ממתינה = true;
                          
                                          לוג(
                                              'המתנה',
                                              'עדיין לא נמצאה תיבת הכותרת. ממתין לטעינת העמוד...'
                                          );
                                      }
                          
                                      return;
                                  }
                          
                                  דווח_כותרת_ממתינה = false;
                          
                                  תיבת_כותרת.style.display = 'flex';
                                  תיבת_כותרת.style.alignItems = 'center';
                                  תיבת_כותרת.style.gap = '15px';
                          
                                  const כפתור_מאסטר = document.createElement('button');
                          
                                  כפתור_מאסטר.id = 'yad2-master-fetch-btn';
                                  כפתור_מאסטר.type = 'button';
                                  כפתור_מאסטר.innerText = '📞 שלוף את כל הטלפונים (יתכן חסימת בוט)';
                          
                                  // בדיוק אותו עיצוב כמו הכפתור שבתוך כל מודעה
                                  עיצוב_כפתור_עברי(כפתור_מאסטר);
                          
                                  כפתור_מאסטר.addEventListener('click', (אירוע) => {
                                      אירוע.preventDefault();
                                      אירוע.stopPropagation();
                          
                                      לוג(
                                          'מידע',
                                          'נלחץ הכפתור הראשי – מתחיל סריקה של מודעות פרטיות בלבד.'
                                      );
                          
                                      if (isBatchRunning) {
                                          לוג(
                                              'אזהרה',
                                              'השליפה כבר מתבצעת. מתעלם מהלחיצה הנוספת.'
                                          );
                          
                                          return;
                                      }
                          
                                      שלוף_את_כל_הפרטיים(כפתור_מאסטר);
                                  });
                          
                                  const סך_המודעות =
                                      document.querySelector('[data-testid="total-items"]');
                          
                                  if (סך_המודעות) {
                                      תיבת_כותרת.insertBefore(
                                          כפתור_מאסטר,
                                          סך_המודעות.nextSibling
                                      );
                                  } else {
                                      תיבת_כותרת.appendChild(כפתור_מאסטר);
                                  }
                          
                                  לוג(
                                      'הצלחה',
                                      'כפתור השליפה הראשי הוזרק בהצלחה ונמצא במקום המקורי.'
                                  );
                              }
                          
                              // ============================================================
                              // כפתורים בתוך מודעות פרטיות בלבד
                              // ============================================================
                          
                              function הכנס_כפתורי_מודעות() {
                                  const מודעות = קבל_מודעות_פרטיות();
                          
                                  if (מודעות.length !== מספר_מודעות_פרטיות_אחרון) {
                                      מספר_מודעות_פרטיות_אחרון = מודעות.length;
                          
                                      לוג(
                                          'מידע',
                                          `זוהו ${מודעות.length} מודעות פרטיות בעמוד.`
                                      );
                                  }
                          
                                  מודעות.forEach((מודעה) => {
                                      // אם כבר הוספנו כפתור למודעה הזאת
                                      if (מודעה.dataset.yad2injected === 'true') {
                                          return;
                                      }
                          
                                      const itemId = חלץ_ID_מודעה(מודעה);
                          
                                      if (!itemId) {
                                          לוג(
                                              'אזהרה',
                                              'נמצאה מודעה פרטית אך לא הצלחתי לחלץ את מזהה המודעה.'
                                          );
                          
                                          return;
                                      }
                          
                                      const תיבת_צד_שמאל =
                                          מודעה.querySelector(
                                              '[data-testid="promotion-left-side-box"]'
                                          ) ||
                                          מודעה.querySelector(
                                              '[data-testid="feed-item-left-side"]'
                                          )?.parentNode ||
                                          מודעה.querySelector(
                                              '[data-testid="price"]'
                                          )?.closest('div');
                          
                                      if (!תיבת_צד_שמאל) {
                                          לוג(
                                              'המתנה',
                                              `נמצאה מודעה פרטית (${itemId}), אבל אזור המחיר עדיין לא נטען. ממתין...`
                                          );
                          
                                          return;
                                      }
                          
                                      מודעה.dataset.yad2injected = 'true';
                          
                                      const תיבה = document.createElement('div');
                          
                                      תיבה.className = 'yad2-custom-container';
                                      תיבה.dataset.itemid = itemId;
                                      תיבה.dataset.רכב = קבל_שם_רכב(מודעה);
                                      תיבה.dataset.מצב = 'חדש';
                          
                                      תיבה.style.cssText = [
                                          'margin-bottom: 6px',
                                          'direction: rtl',
                                          'text-align: right',
                                          'display: flex',
                                          'flex-direction: column',
                                          'align-items: flex-start',
                                          'clear: both',
                                          'position: relative',
                                          'z-index: 999'
                                      ].join(';');
                          
                                      const כפתור = document.createElement('button');
                          
                                      כפתור.type = 'button';
                                      כפתור.className = 'yad2-single-btn';
                                      כפתור.innerText = '📞 שלוף טלפון';
                          
                                      עיצוב_כפתור_עברי(כפתור);
                          
                                      const תוצאת_שליפה = document.createElement('div');
                          
                                      תוצאת_שליפה.className = 'yad2-ui-box';
                          
                                      תוצאת_שליפה.style.cssText = [
                                          'font-size: 13px',
                                          'font-weight: bold',
                                          'color: #2c3e50',
                                          'display: none',
                                          'margin-top: 2px',
                                          'background: rgba(255,255,255,0.95)',
                                          'padding: 3px 8px',
                                          'border-radius: 4px',
                                          'box-shadow: 0 1px 3px rgba(0,0,0,0.15)',
                                          'direction: rtl'
                                      ].join(';');
                          
                                      תוצאת_שליפה.dataset.מצב = 'חדש';
                          
                                      כפתור.addEventListener('click', (אירוע) => {
                                          אירוע.preventDefault();
                                          אירוע.stopPropagation();
                          
                                          const שם_רכב =
                                              תיבה.dataset.רכב || 'מודעה פרטית';
                          
                                          לוג(
                                              'מידע',
                                              `נלחץ כפתור שליפה – ${שם_רכב} | מזהה: ${itemId}`
                                          );
                          
                                          if (תוצאת_שליפה.dataset.מצב === 'טוען') {
                                              לוג(
                                                  'אזהרה',
                                                  `השליפה כבר מתבצעת עבור ${שם_רכב}.`
                                              );
                          
                                              return;
                                          }
                          
                                          כפתור.style.display = 'none';
                                          תוצאת_שליפה.style.display = 'inline-block';
                          
                                          שלוף_מודעה_פרטית(
                                              itemId,
                                              תוצאת_שליפה,
                                              שם_רכב
                                          );
                                      });
                          
                                      תיבה.appendChild(כפתור);
                                      תיבה.appendChild(תוצאת_שליפה);
                          
                                      תיבת_צד_שמאל.insertBefore(
                                          תיבה,
                                          תיבת_צד_שמאל.firstChild
                                      );
                          
                                      לוג(
                                          'הצלחה',
                                          `כפתור שליפה נוסף למודעה פרטית – ${תיבה.dataset.רכב} | מזהה: ${itemId}`
                                      );
                                  });
                              }
                          
                              // ============================================================
                              // שליפת טלפון ממודעה פרטית
                              // ============================================================
                          
                              function שלוף_מודעה_פרטית(
                                  itemId,
                                  uiBox,
                                  carName = 'מודעה פרטית'
                              ) {
                                  return new Promise((resolve) => {
                                      uiBox.dataset.מצב = 'טוען';
                          
                                      uiBox.innerText = '⏳ שולף...';
                                      uiBox.style.color = '#f39c12';
                          
                                      לוג(
                                          'המתנה',
                                          `מתחיל שליפה – ${carName} | מזהה: ${itemId}`
                                      );
                          
                                      const cleanUrl =
                                          `${window.location.origin}/item/${itemId}`;
                          
                                      const iframe = document.createElement('iframe');
                          
                                      iframe.src = cleanUrl;
                                      iframe.style.display = 'none';
                                      iframe.setAttribute('aria-hidden', 'true');
                          
                                      document.body.appendChild(iframe);
                          
                                      לוג(
                                          'מידע',
                                          `פתחתי חלון נסתר למודעה ${itemId}. ממתין לטעינת המודעה...`
                                      );
                          
                                      let סיים = false;
                                      let detailsClicked = false;
                                      let attempts = 0;
                          
                                      let checkInterval = null;
                                      let phoneCheckInterval = null;
                          
                                      const סיום = (
                                          מצב,
                                          טקסט,
                                          צבע = '#e74c3c'
                                      ) => {
                                          if (סיים) {
                                              return;
                                          }
                          
                                          סיים = true;
                          
                                          if (checkInterval) {
                                              clearInterval(checkInterval);
                                          }
                          
                                          if (phoneCheckInterval) {
                                              clearInterval(phoneCheckInterval);
                                          }
                          
                                          uiBox.dataset.מצב = מצב;
                                          uiBox.innerText = טקסט;
                                          uiBox.style.color = צבע;
                          
                                          נקה_מסגרת(iframe);
                          
                                          resolve();
                                      };
                          
                                      const חלץ_תוצאה = (iframeDoc) => {
                                          const phoneLink =
                                              iframeDoc.querySelector('a[href^="tel:"]');
                          
                                          if (!phoneLink) {
                                              return false;
                                          }
                          
                                          const href =
                                              phoneLink.getAttribute('href') || '';
                          
                                          const phoneNum =
                                              phoneLink.innerText.trim() ||
                                              href.replace(/^tel:/i, '').trim();
                          
                                          let ownerName = 'מוכר';
                          
                                          const nameElement =
                                              iframeDoc.querySelector(
                                                  '.private-contact-info-module-scss-module__szN9CG__name'
                                              ) ||
                                              iframeDoc.querySelector(
                                                  'li[data-testid="private-contact-info"] span:first-child'
                                              ) ||
                                              iframeDoc.querySelector(
                                                  '[class*="contact-info"] span'
                                              );
                          
                                          if (
                                              nameElement &&
                                              nameElement.innerText.trim()
                                          ) {
                                              ownerName =
                                                  nameElement.innerText.trim();
                                          }
                          
                                          uiBox.dataset.מצב = 'הושלם';
                          
                                          uiBox.innerText =
                                              `👤 ${ownerName} | 📞 ${phoneNum}`;
                          
                                          uiBox.style.color = '#16c39b';
                          
                                          לוג(
                                              'הצלחה',
                                              `נשלף בהצלחה – ${carName} | מוכר: ${ownerName} | טלפון: ${phoneNum}`
                                          );
                          
                                          סיום(
                                              'הושלם',
                                              `👤 ${ownerName} | 📞 ${phoneNum}`,
                                              '#16c39b'
                                          );
                          
                                          return true;
                                      };
                          
                                      iframe.onload = () => {
                                          if (סיים) {
                                              return;
                                          }
                          
                                          לוג(
                                              'הצלחה',
                                              `המודעה ${itemId} נטענה. עכשיו מחפש את כפתור הצגת הטלפון...`
                                          );
                          
                                          let iframeDoc;
                          
                                          try {
                                              iframeDoc =
                                                  iframe.contentDocument ||
                                                  iframe.contentWindow.document;
                                          } catch (שגיאה) {
                                              לוג(
                                                  'שגיאה',
                                                  `לא ניתן לגשת לתוכן המודעה ${itemId}.`,
                                                  שגיאה
                                              );
                          
                                              סיום(
                                                  'שגיאה',
                                                  '❌ נחסם ע״י הגנה'
                                              );
                          
                                              return;
                                          }
                          
                                          if (!iframeDoc || !iframeDoc.body) {
                                              לוג(
                                                  'שגיאה',
                                                  `תוכן המודעה ${itemId} עדיין לא מוכן.`
                                              );
                          
                                              return;
                                          }
                          
                                          // לפעמים הטלפון כבר נמצא בלי צורך בלחיצה
                                          if (חלץ_תוצאה(iframeDoc)) {
                                              return;
                                          }
                          
                                          checkInterval = setInterval(() => {
                                              if (סיים) {
                                                  return;
                                              }
                          
                                              attempts++;
                          
                                              try {
                                                  iframeDoc =
                                                      iframe.contentDocument ||
                                                      iframe.contentWindow.document;
                          
                                                  if (!iframeDoc || !iframeDoc.body) {
                                                      return;
                                                  }
                          
                                                  // בדיקה האם הטלפון כבר הופיע
                                                  if (חלץ_תוצאה(iframeDoc)) {
                                                      return;
                                                  }
                          
                                                  const showPhoneBtn =
                                                      iframeDoc.querySelector(
                                                          '[data-testid="show-details-button"]'
                                                      );
                          
                                                  if (
                                                      showPhoneBtn &&
                                                      !detailsClicked
                                                  ) {
                                                      detailsClicked = true;
                          
                                                      לוג(
                                                          'מידע',
                                                          `נמצא כפתור הצגת הטלפון עבור ${carName}. לוחץ עליו...`
                                                      );
                          
                                                      showPhoneBtn.click();
                          
                                                      לוג(
                                                          'המתנה',
                                                          `הכפתור נלחץ. ממתין שהמספר יופיע עבור ${carName}...`
                                                      );
                          
                                                      if (checkInterval) {
                                                          clearInterval(checkInterval);
                                                      }
                          
                                                      let phoneAttempts = 0;
                          
                                                      phoneCheckInterval =
                                                          setInterval(() => {
                                                              if (סיים) {
                                                                  return;
                                                              }
                          
                                                              phoneAttempts++;
                          
                                                              try {
                                                                  iframeDoc =
                                                                      iframe.contentDocument ||
                                                                      iframe.contentWindow.document;
                          
                                                                  if (
                                                                      !iframeDoc ||
                                                                      !iframeDoc.body
                                                                  ) {
                                                                      return;
                                                                  }
                          
                                                                  if (
                                                                      חלץ_תוצאה(iframeDoc)
                                                                  ) {
                                                                      return;
                                                                  }
                          
                                                                  if (
                                                                      phoneAttempts >= 25
                                                                  ) {
                                                                      לוג(
                                                                          'שגיאה',
                                                                          `המספר לא הופיע לאחר ההמתנה – ${carName}.`
                                                                      );
                          
                                                                      סיום(
                                                                          'שגיאה',
                                                                          '❌ לא הצלחתי לשלוף טלפון'
                                                                      );
                                                                  }
                                                              } catch (שגיאה) {
                                                                  if (
                                                                      phoneAttempts >= 25
                                                                  ) {
                                                                      לוג(
                                                                          'שגיאה',
                                                                          `שגיאה בקריאת פרטי הטלפון של ${carName}.`,
                                                                          שגיאה
                                                                      );
                          
                                                                      סיום(
                                                                          'שגיאה',
                                                                          '❌ שגיאה בחילוץ'
                                                                      );
                                                                  }
                                                              }
                                                          }, 400);
                                                  }
                          
                                                  if (
                                                      !detailsClicked &&
                                                      attempts >= 24
                                                  ) {
                                                      לוג(
                                                          'שגיאה',
                                                          `לא נמצא כפתור הצגת הטלפון עבור ${carName}. ייתכן שהמודעה לא זמינה או שנמכרה.`
                                                      );
                          
                                                      סיום(
                                                          'שגיאה',
                                                          '❌ לא זמין / נמכר'
                                                      );
                                                  }
                                              } catch (שגיאה) {
                                                  if (attempts >= 24) {
                                                      לוג(
                                                          'שגיאה',
                                                          `לא הצלחתי לקרוא את מודעה ${itemId}.`,
                                                          שגיאה
                                                      );
                          
                                                      סיום(
                                                          'שגיאה',
                                                          '❌ נחסם ע״י הגנה'
                                                      );
                                                  }
                                              }
                                          }, 500);
                                      };
                          
                                      iframe.onerror = () => {
                                          לוג(
                                              'שגיאה',
                                              `שגיאת רשת בטעינת המודעה ${itemId}.`
                                          );
                          
                                          סיום(
                                              'שגיאה',
                                              '❌ שגיאת רשת'
                                          );
                                      };
                                  });
                              }
                          
                              // ============================================================
                              // שליפה מרוכזת של כל הפרטיים בלבד
                              // ============================================================
                          
                              async function שלוף_את_כל_הפרטיים(כפתור_מאסטר) {
                                  if (isBatchRunning) {
                                      לוג(
                                          'אזהרה',
                                          'השליפה המרוכזת כבר פועלת.'
                                      );
                          
                                      return;
                                  }
                          
                                  isBatchRunning = true;
                          
                                  כפתור_מאסטר.disabled = true;
                                  כפתור_מאסטר.innerText = '⏳ שולף טלפונים...';
                                  כפתור_מאסטר.style.opacity = '0.7';
                          
                                  const containers =
                                      Array.from(
                                          document.querySelectorAll(
                                              '.yad2-custom-container'
                                          )
                                      ).filter(
                                          (container) => container.dataset.itemid
                                      );
                          
                                  לוג(
                                      'מידע',
                                      `נמצאו ${containers.length} מודעות פרטיות מוכנות לשליפה.`
                                  );
                          
                                  if (containers.length === 0) {
                                      לוג(
                                          'אזהרה',
                                          'לא נמצאו מודעות פרטיות בעמוד.'
                                      );
                          
                                      כפתור_מאסטר.disabled = false;
                                      כפתור_מאסטר.innerText =
                                          '📞 שלוף את כל הטלפונים';
                                      כפתור_מאסטר.style.opacity = '1';
                          
                                      isBatchRunning = false;
                          
                                      return;
                                  }
                          
                                  let להשליף = 0;
                          
                                  containers.forEach((container) => {
                                      const מצב =
                                          container.querySelector(
                                              '.yad2-ui-box'
                                          )?.dataset.מצב || 'חדש';
                          
                                      if (
                                          מצב !== 'הושלם' &&
                                          מצב !== 'שגיאה'
                                      ) {
                                          const singleBtn =
                                              container.querySelector(
                                                  '.yad2-single-btn'
                                              );
                          
                                          const uiBox =
                                              container.querySelector(
                                                  '.yad2-ui-box'
                                              );
                          
                                          if (singleBtn) {
                                              singleBtn.style.display = 'none';
                                          }
                          
                                          if (uiBox) {
                                              uiBox.style.display =
                                                  'inline-block';
                          
                                              uiBox.innerText =
                                                  '⏱️ ממתין בתור...';
                          
                                              uiBox.style.color =
                                                  '#7f8c8d';
                          
                                              uiBox.dataset.מצב =
                                                  'בתור';
                                          }
                          
                                          להשליף++;
                                      }
                                  });
                          
                                  לוג(
                                      'המתנה',
                                      `מכין תור לשליפה של ${להשליף} מודעות פרטיות.`
                                  );
                          
                                  let מספר_נוכחי = 0;
                                  let מספר_הצלחות = 0;
                                  let מספר_שגיאות = 0;
                          
                                  for (const container of containers) {
                                      const uiBox =
                                          container.querySelector(
                                              '.yad2-ui-box'
                                          );
                          
                                      const itemId =
                                          container.dataset.itemid;
                          
                                      const carName =
                                          container.dataset.רכב ||
                                          'מודעה פרטית';
                          
                                      if (!uiBox || !itemId) {
                                          continue;
                                      }
                          
                                      const מצב =
                                          uiBox.dataset.מצב || 'חדש';
                          
                                      if (
                                          מצב === 'הושלם' ||
                                          מצב === 'שגיאה'
                                      ) {
                                          continue;
                                      }
                          
                                      מספר_נוכחי++;
                          
                                      uiBox.style.display =
                                          'inline-block';
                          
                                      uiBox.innerText =
                                          `⏳ שולף (${מספר_נוכחי}/${להשליף})...`;
                          
                                      uiBox.style.color =
                                          '#f39c12';
                          
                                      לוג(
                                          'המתנה',
                                          `מתחיל עכשיו ${מספר_נוכחי}/${להשליף}: ${carName}`
                                      );
                          
                                      await שלוף_מודעה_פרטית(
                                          itemId,
                                          uiBox,
                                          carName
                                      );
                          
                                      if (
                                          uiBox.dataset.מצב ===
                                          'הושלם'
                                      ) {
                                          מספר_הצלחות++;
                                      } else {
                                          מספר_שגיאות++;
                                      }
                          
                                      if (
                                          מספר_נוכחי < להשליף
                                      ) {
                                          const delay =
                                              Math.floor(
                                                  Math.random() * 2000
                                              ) + 2000;
                          
                                          לוג(
                                              'המתנה',
                                              `המודעה נשלפה. ממתין ${delay / 1000} שניות לפני המודעה הבאה...`
                                          );
                          
                                          await new Promise(
                                              (resolve) =>
                                                  setTimeout(
                                                      resolve,
                                                      delay
                                                  )
                                          );
                                      }
                                  }
                          
                                  כפתור_מאסטר.disabled = false;
                                  כפתור_מאסטר.innerText =
                                      '✔ השליפה הושלמה';
                                  כפתור_מאסטר.style.opacity = '1';
                          
                                  לוג(
                                      'הצלחה',
                                      `השליפה המרוכזת הסתיימה. הצלחות: ${מספר_הצלחות} | שגיאות: ${מספר_שגיאות} | טופלו: ${מספר_נוכחי}`
                                  );
                          
                                  setTimeout(() => {
                                      כפתור_מאסטר.innerText =
                                          '📞 שלוף את כל הטלפונים';
                          
                                      isBatchRunning = false;
                          
                                      לוג(
                                          'מידע',
                                          'כפתור השליפה הראשי חזר למצב רגיל ומוכן להפעלה נוספת.'
                                      );
                                  }, 4000);
                              }
                          
                              // ============================================================
                              // ניקוי
                              // ============================================================
                          
                              function נקה_מסגרת(iframe) {
                                  if (
                                      iframe &&
                                      iframe.parentNode
                                  ) {
                                      iframe.parentNode.removeChild(
                                          iframe
                                      );
                                  }
                              }
                          
                              // ============================================================
                              // אתחול
                              // ============================================================
                          
                              function אתחול() {
                                  הכנס_כפתור_מאסטר();
                                  הכנס_כפתורי_מודעות();
                              }
                          
                              לוג(
                                  'הצלחה',
                                  'הסקריפט נטען ומתחיל לעקוב אחר מודעות פרטיות בלבד.'
                              );
                          
                              לוג(
                                  'מידע',
                                  'סוגי המודעות המותרים: private-vehicle / private-vehicle-no-footer בלבד.'
                              );
                          
                              אתחול();
                          
                              const observer =
                                  new MutationObserver(() => {
                                      אתחול();
                                  });
                          
                              observer.observe(
                                  document.body,
                                  {
                                      childList: true,
                                      subtree: true
                                  }
                              );
                          
                              לוג(
                                  'הצלחה',
                                  'המאזין לעדכונים דינמיים של יד2 הופעל.'
                              );
                          })();
                          

                          וכך זה נראה
                          44b1faba-87fe-4ae5-8a88-53f1483c941f-image.png

                          תגובה 1 תגובה אחרונה
                          1
                          • הכל מלמעלהה הכל מלמעלה

                            @מאיר תודה רבה
                            בשביל לעשות תוסף מוכן צריך לשלם 5$ חד פעמי וכן לקבל איזשהו ותק (שים לב שבתוסף של לקסוס יש אזהרה לפני ההתקנה)
                            מה שפירסמתי מתאים לכל אחד,
                            למי שלא מכיר, טמפרמונקי זה תוסף שמאפשר להוסיף לו סקריפטים שיעשו כל מה שבא לך בראש, למשל אתה מגדיר לו שיעשה התאמת מחיר אוטומטי בטמו בלי שתצטרך ללחוץ כלום (כן, עשיתי לעצמי…), או שבכל פעם שנכנסים לרכבים זה לזה הוא יפתח את כל ההתראות בחלון חדש, בקיצור - קודים… לי אישיתי יש מעל 50 סקריפטים כאלה, וזה קצת…
                            מי שאין לו יכול להתקין מהחנות של גוגל כאן, זהירות, זה ממכר!
                            אחרי שמותקן טמפרמונקי לוחצים על צור סקריפט חדש, מכניסים את הקוד שהבאתי למעלה, שומרים וזהו…

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

                            מאירמ מנותק
                            מאירמ מנותק
                            מאיר
                            מנהל ראשי
                            כתב נערך לאחרונה על ידי
                            #71

                            @הכל-מלמעלה כתב בשיפור חווית החיפוש ביד 2:

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

                            התקנתי את טמפ’ ולחצתי על הקישור מגיטהאב והתן וכרג אני לא רואה את כל הטקסט של החיפוש

                            ליצירת קשר לחץ כאן

                            הכל מלמעלהה תגובה 1 תגובה אחרונה
                            0
                            • מאירמ מאיר

                              @הכל-מלמעלה כתב בשיפור חווית החיפוש ביד 2:

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

                              התקנתי את טמפ’ ולחצתי על הקישור מגיטהאב והתן וכרג אני לא רואה את כל הטקסט של החיפוש

                              הכל מלמעלהה מנותק
                              הכל מלמעלהה מנותק
                              הכל מלמעלה
                              כתב נערך לאחרונה על ידי
                              #72

                              @מאיר כשאתה בעמוד תוצאות (למשל כאן) האם מסומן לך שזה מופעל?
                              1f13fc7d-afaa-4a4c-8100-f7614c86f631-image.png

                              תגובה 1 תגובה אחרונה
                              0

                              • 1
                              • 2
                              • 3
                              • 4

                              47

                              מחובר

                              3.6k

                              משתמשים

                              11.1k

                              נושאים

                              153.8k

                              פוסטים
                              • התחברות

                              • אין לך חשבון עדיין? הרשמה

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