• דף הבית
    • אינדקס קישורים
    • פוסטים אחרונים
    • משתמשים
    • חיפוש בהגדרות המתקדמות
    • חיפוש גוגל בפורום
    • ניהול המערכת
    • ניהול המערכת - שרת private
    • הרשמה
    • התחברות

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

    מתוזמן נעוץ נעול הועבר שאלות ועזרה הדדית
    19 פוסטים 6 כותבים 198 צפיות 3 עוקבים
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • תגובה כנושא
    התחברו כדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • ש מנותק
      ש''פ
      נערך לאחרונה על ידי

      לא צלחתי לעלות כקובץ-תודה רבה
      צילום מסך 2026-06-08 141857.png

      ש נ פ 3 תגובות תגובה אחרונה תגובה ציטוט 0
      • ש מנותק
        ש''פ @ש''פ
        נערך לאחרונה על ידי

        למה לא מגיע בצורה קריאה

        ב תגובה 1 תגובה אחרונה תגובה ציטוט 0
        • ב מנותק
          בלויא @ש''פ
          נערך לאחרונה על ידי

          @ש-פ תנסה להסביר יותר, מהיכן זה מגיע? נשלח אליך למייל? הורדת מאתר הניהול?
          זה הקוד הגולמי של הדף [HTML]

          ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
          • ש מנותק
            ש''פ @בלויא
            נערך לאחרונה על ידי

            @בלויא למייל

            מתענייןמ תגובה 1 תגובה אחרונה תגובה ציטוט 0
            • מתענייןמ מנותק
              מתעניין @ש''פ
              נערך לאחרונה על ידי

              @ש-פ זה הגבלה של גוגל, צריך להוריד ואז לפתוח
              נסיתי לבנות לזה תוסף ולא הצלחתי

              ש תגובה 1 תגובה אחרונה תגובה ציטוט 1
              • ש מנותק
                ש''פ @מתעניין
                נערך לאחרונה על ידי

                @מתעניין כתב במשהו יודע למה הדוחות נוכחות מגיעים כך?:

                צריך להוריד ואז לפתוח

                לא עוזר

                ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
                • ש מנותק
                  ש''פ @ש''פ
                  נערך לאחרונה על ידי

                  אין פתרון ???

                  תגובה 1 תגובה אחרונה תגובה ציטוט 0
                  • נ מנותק
                    נועם אלימלך @ש''פ
                    נערך לאחרונה על ידי

                    @ש-פ תן את הקוד

                    ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
                    • ש מנותק
                      ש''פ @נועם אלימלך
                      נערך לאחרונה על ידי

                      @נועם-אלימלך כתב במשהו יודע למה הדוחות נוכחות מגיעים כך?:

                      תן את הקוד

                      לא הבנתי

                      נ תגובה 1 תגובה אחרונה תגובה ציטוט 0
                      • נ מנותק
                        נועם אלימלך @ש''פ
                        נערך לאחרונה על ידי

                        @ש-פ מה קוד

                        ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
                        • ש מנותק
                          ש''פ @נועם אלימלך
                          נערך לאחרונה על ידי

                          @נועם-אלימלך קוד של מה??

                          תגובה 1 תגובה אחרונה תגובה ציטוט 0
                          • פ מנותק
                            פישל @ש''פ
                            נערך לאחרונה על ידי פישל

                            @ש-פ מצורף קוד להזרקה בטמפרמאנקי
                            בו ניתן גם לצפות ישירות מהמייל בקבצים וגם אפשרות להורדה כקובץ אקסל עם סיומת CSV

                            // ==UserScript==
                            // @name         Gmail HTML צפיה + הורדה (HTML / CSV)
                            // @namespace    https://tampermonkey.net/
                            // @version      2.8
                            // @description  View HTML attachments inside Gmail + proper download system (FULL HEIGHT & NAME FIX)
                            // @match        https://mail.google.com/*
                            // @grant        none
                            // ==/UserScript==
                            
                            (function() {
                                'use strict';
                            
                                let currentHtmlContent = "";
                                let currentFileName = "attachment";
                            
                                // טעינת ספריית FileSaver באופן דינמי לעקיפת הגבלות הדפדפן
                                function loadFileSaver(callback) {
                                    if (window.saveAs) {
                                        callback();
                                        return;
                                    }
                                    const script = document.createElement('script');
                                    script.src = 'https://cdnjs.cloudflare.com/ajax/libs/FileSaver.js/2.0.5/FileSaver.min.js';
                                    script.fill = 'none';
                                    script.onload = callback;
                                    document.head.appendChild(script);
                                }
                            
                                // =========================
                                // כפתור תצוגה
                                // =========================
                                function createButton() {
                                    const btn = document.createElement('button');
                            
                                    btn.innerHTML = `
                                    <svg width="18" height="18" viewBox="0 0 24 24" fill="none"
                                         style="margin-left:6px">
                                      <path d="M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"
                                            stroke="currentColor" stroke-width="2"/>
                                      <path d="M14 3v6h6"
                                            stroke="currentColor" stroke-width="2"/>
                                    </svg>
                                    <span>צפה ב-HTML</span>
                                    `;
                            
                                    btn.style.cssText = `
                                        margin-left:8px;
                                        height:32px;
                                        padding:0 14px;
                                        border:1px solid #dadce0;
                                        border-radius:16px;
                                        background:#ffffff;
                                        color:#3c4043;
                                        font-size:13px;
                                        font-weight:500;
                                        font-family:Roboto, Arial, sans-serif;
                                        cursor:pointer;
                                        display:inline-flex;
                                        align-items:center;
                                        gap:4px;
                                    `;
                            
                                    btn.onmouseenter = () => btn.style.background = '#f1f3f4';
                                    btn.onmouseleave = () => btn.style.background = '#ffffff';
                            
                                    return btn;
                                }
                            
                                // =========================
                                // מנגנון הורדה מבוסס ספרייה חיצונית
                                // =========================
                                function forceDownload(content, filename, isCsv = false) {
                                    // ניקוי ואימות שם הקובץ שלא יהיה ריק או מזהה מוזר מדי
                                    let cleanName = filename.replace(/[\/\\?%*:|"<>\s]+/g, "_");
                                    if (cleanName.length > 50 && !cleanName.includes('.')) {
                                        cleanName = "html_attachment";
                                    }
                            
                                    const finalName = cleanName + (isCsv ? ".csv" : ".html");
                            
                                    loadFileSaver(() => {
                                        if (isCsv) {
                                            const blob = new Blob(["\uFEFF" + content], { type: "text/csv;charset=utf-8" });
                                            window.saveAs(blob, finalName);
                                        } else {
                                            const blob = new Blob([content], { type: "text/html;charset=utf-8" });
                                            window.saveAs(blob, finalName);
                                        }
                                    });
                                }
                            
                                // =========================
                                // חלון תצוגה
                                // =========================
                                function showHtmlInModal(blobUrl) {
                                    let overlay = document.getElementById('html-viewer-overlay');
                            
                                    if (!overlay) {
                                        overlay = document.createElement('div');
                                        overlay.id = 'html-viewer-overlay';
                            
                                        overlay.innerHTML = `
                                            <div id="html-viewer-modal">
                                                <div id="html-viewer-header">
                                                    <span>תצוגת HTML</span>
                            
                                                    <div style="display:flex;gap:8px;">
                                                        <button id="html-viewer-download">⬇ הורד</button>
                                                        <button id="html-viewer-close">✕</button>
                                                    </div>
                                                </div>
                                                <div id="html-viewer-body" style="flex:1; width:100%; height:100%; overflow:hidden;">
                                                    <iframe id="html-viewer-frame"></iframe>
                                                </div>
                                            </div>
                                        `;
                            
                                        overlay.style.cssText = `
                                            position:fixed;
                                            inset:0;
                                            background:rgba(0,0,0,.45);
                                            z-index:2147483647;
                                            display:flex;
                                            align-items:center;
                                            justify-content:center;
                                        `;
                            
                                        const modal = overlay.querySelector('#html-viewer-modal');
                                        modal.style.cssText = `
                                            width:90%;
                                            height:90%;
                                            background:#fff;
                                            border-radius:12px;
                                            overflow:hidden;
                                            display:flex;
                                            flex-direction:column;
                                        `;
                            
                                        const header = overlay.querySelector('#html-viewer-header');
                                        header.style.cssText = `
                                            height:48px;
                                            padding:0 16px;
                                            display:flex;
                                            align-items:center;
                                            justify-content:space-between;
                                            border-bottom:1px solid #e0e0e0;
                                            font-family:Arial;
                                            font-weight:500;
                                        `;
                            
                                        // פונקציית סגירה מאוחדת
                                        const closeModal = () => {
                                            overlay.remove();
                                            document.removeEventListener('keydown', handleEscKey);
                                        };
                            
                                        overlay.querySelector('#html-viewer-close').onclick = closeModal;
                            
                                        overlay.onclick = e => {
                                            if (e.target === overlay) closeModal();
                                        };
                            
                                        // מאזין למקש ESC במקלדת
                                        const handleEscKey = (e) => {
                                            if (e.key === "Escape" || e.keyCode === 27) {
                                                const downloadBox = document.getElementById('html-download-choice-box');
                                                if (downloadBox) {
                                                    downloadBox.remove();
                                                } else {
                                                    closeModal();
                                                }
                                            }
                                        };
                            
                                        document.addEventListener('keydown', handleEscKey);
                                        document.body.appendChild(overlay);
                                    }
                            
                                    // 🔥 הגדרת גובה מלא קשיח של 100% ל-iframe כדי שלא ייחתך לעולם
                                    const iframe = overlay.querySelector('#html-viewer-frame');
                                    iframe.style.cssText = `
                                        width:100%;
                                        height:100%;
                                        min-height: calc(100vh - 150px);
                                        border:none;
                                        display:block;
                                    `;
                                    iframe.src = blobUrl;
                            
                                    const downloadBtn = overlay.querySelector('#html-viewer-download');
                            
                                    // =========================
                                    // תפריט בחירת הורדה (HTML / CSV)
                                    // =========================
                                    downloadBtn.onclick = () => {
                                        if (document.getElementById('html-download-choice-box')) return;
                            
                                        const box = document.createElement("div");
                                        box.id = 'html-download-choice-box';
                            
                                        box.style.cssText = `
                                            position:fixed;
                                            inset:0;
                                            background:rgba(0,0,0,0.45);
                                            z-index:2147483648;
                                            display:flex;
                                            align-items:center;
                                            justify-content:center;
                                            font-family:Arial;
                                        `;
                            
                                        box.innerHTML = `
                                            <div style="background:#fff;padding:18px;border-radius:12px;min-width:260px;text-align:center;">
                                                <div style="margin-bottom:12px;font-weight:bold;">בחר סוג הורדה</div>
                            
                                                <button id="h" style="margin:5px;padding:8px 12px;cursor:pointer;">HTML</button>
                                                <button id="c" style="margin:5px;padding:8px 12px;cursor:pointer;">CSV</button>
                            
                                                <div style="margin-top:10px;">
                                                    <button id="x" style="cursor:pointer;">ביטול</button>
                                                </div>
                                            </div>
                                        `;
                            
                                        document.body.appendChild(box);
                            
                                        const closeBox = () => box.remove();
                                        box.querySelector("#x").onclick = closeBox;
                            
                                        box.querySelector("#h").onclick = () => {
                                            forceDownload(currentHtmlContent, currentFileName, false);
                                            closeBox();
                                        };
                            
                                        box.querySelector("#c").onclick = () => {
                                            const doc = new DOMParser().parseFromString(currentHtmlContent, "text/html");
                            
                                            const csv = [...doc.querySelectorAll("table tr")]
                                                .map(tr =>
                                                    [...tr.querySelectorAll("td,th")]
                                                        .map(td => `"${td.innerText.trim()}"`)
                                                        .join(",")
                                                )
                                                .join("\n");
                            
                                            forceDownload(csv, currentFileName, true);
                                            closeBox();
                                        };
                                    };
                                }
                            
                                // =========================
                                // הוספת כפתורים בג'ימייל
                                // =========================
                                function addButtons() {
                                    document.querySelectorAll('[download_url]').forEach(el => {
                                        if (el.dataset.htmlViewerAdded) return;
                            
                                        const downloadUrl = el.getAttribute('download_url');
                                        if (!downloadUrl) return;
                            
                                        const parts = downloadUrl.split(':');
                                        let fileName = parts[1] || '';
                            
                                        if (!fileName.toLowerCase().match(/\.(html|htm)$/)) return;
                            
                                        el.dataset.htmlViewerAdded = "1";
                            
                                        const btn = createButton();
                            
                                        btn.onclick = async (e) => {
                                            e.preventDefault();
                                            e.stopPropagation();
                            
                                            const url = parts.slice(2).join(':');
                            
                                            const resp = await fetch(url, { credentials: 'include' });
                                            const html = await resp.text();
                            
                                            currentHtmlContent = html;
                            
                                            // חילוץ שם קובץ נקי יותר אם הוא מגיע מגורם פנימי בג'ימייל
                                            let extractedName = fileName.replace(/\.(html|htm)$/i, "");
                                            if (extractedName.length > 40 && !extractedName.includes(' ')) {
                                                // ניסיון לחפש כותרת אלטרנטיבית בתוך האלמנט של ג'ימייל
                                                const titleEl = el.closest('.a6S')?.querySelector('.a1V, .aSx span');
                                                if (titleEl && titleEl.innerText) {
                                                    extractedName = titleEl.innerText.replace(/\.(html|htm)$/i, "");
                                                }
                                            }
                                            currentFileName = extractedName;
                            
                                            const blob = new Blob([html], { type: "text/html" });
                                            const blobUrl = URL.createObjectURL(blob);
                            
                                            showHtmlInModal(blobUrl);
                                        };
                            
                                        el.appendChild(btn);
                                    });
                                }
                            
                                const observer = new MutationObserver(addButtons);
                                observer.observe(document.body, { childList: true, subtree: true });
                            
                                addButtons();
                            
                            })();
                            

                            מצורף גם קובץ

                            צפיה בקבצי HTML+הורדה בסיומת CSV.js

                            מצורף תמונות בספויילר

                            c73bbef8-d7a4-47b8-9c70-f0058e89660e-image.png

                            386b5b8a-488b-471f-ad0a-cfad00b51e43-image.png

                            cb8a9f0d-3ca9-4cab-b610-ad61b65664ed-image.png

                            ספויילר

                            מתענייןמ ש 2 תגובות תגובה אחרונה תגובה ציטוט 0
                            • מתענייןמ מנותק
                              מתעניין @פישל
                              נערך לאחרונה על ידי

                              @פישל איך זה אמור לעבוד?
                              לא רואה שום שינוי?

                              פ תגובה 1 תגובה אחרונה תגובה ציטוט 0
                              • פ מנותק
                                פישל @מתעניין
                                נערך לאחרונה על ידי

                                @מתעניין עשית ריענון לג'ימייל?
                                אצלי עובד מצוין!

                                תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                • ש מנותק
                                  ש''פ @פישל
                                  נערך לאחרונה על ידי

                                  @פישל לא הבנתי איפה להגדיר את זה

                                  פ תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                  • פ מנותק
                                    פישל @ש''פ
                                    נערך לאחרונה על ידי

                                    @ש-פ תתקין את התוסף הזה לכרום ואז תוריד את הקובץ המצורף ותייבא אותו לתוסף או פשוט תלחץ עליו והוא אוטומטי יעלה לתוסף

                                    ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                    • ש מנותק
                                      ש''פ @פישל
                                      נערך לאחרונה על ידי

                                      @פישל כתב במשהו יודע למה הדוחות נוכחות מגיעים כך?:

                                      ואז תוריד את הקובץ המצורף ותייבא אותו לתוסף או פשוט תלחץ עליו והוא אוטומטי יעלה לתוסף

                                      הקישור להורדה לא עובד.

                                      פ תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                      • פ מנותק
                                        פישל @ש''פ
                                        נערך לאחרונה על ידי

                                        @ש-פ אכן גוגל חוסמים הורדות של קבצים אלו
                                        אבל פשוט תעתיק לתוסף ישירות.

                                        ה תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                        • ה מנותק
                                          החברמן @פישל
                                          נערך לאחרונה על ידי

                                          @פישל כתב במשהו יודע למה הדוחות נוכחות מגיעים כך?:

                                          אבל פשוט תעתיק לתוסף ישירות.

                                          אני גם לא הצלחתי לא הבנתי😧 😠

                                          תגובה 1 תגובה אחרונה תגובה ציטוט 0

                                          שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

                                          נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

                                          בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                                          הרשמה התחברות
                                          • פוסט ראשון
                                            פוסט אחרון