Markdown – מצב מצומצם (קיפול כותרות ###) – אדמין בלבד ===================================================== מטרת הפיצ'ר: לאפשר לעורכים לקפל מקומית סעיפים לפי כותרות ``###`` (H3) בתצוגת Markdown, בלי לשנות את קובץ ה־Markdown ובלי להשפיע על תצוגה ציבורית. מאפיינים עיקריים ----------------- - אדמין בלבד: הכפתור והקוד נטענים רק למשתמשי Admin. - מקומי בלבד: הקיפול מתבצע בצד הלקוח (client‑side) בדפדפן. - שימור מצב: נשמר ב‑localStorage פר‑מסמך (פתוח/סגור לכל סעיף). - ברירת מחדל: כל הסעיפים סגורים, הראשון פתוח. - ללא שינוי קובץ: לא נכתב תחביר ``::: details`` לקובץ ה‑.md. - תצוגה ציבורית: שיתופים/ציבורי אינם מושפעים (הטוגל מוסתר ולא נטען קוד הקיפול). הזרקת דגל הרשאה לתבנית ----------------------- דוגמה להזרקת דגל אדמין מהשרת לתבנית Jinja לצורך גייט בצד הלקוח: .. code-block:: python # שרת (דוגמה): בעת רינדור התבנית return render_template( 'md_preview.html', is_admin=is_admin(user_id), is_public=False, # בציבורי יש להגדיר True כדי להסתיר את הטוגל והקוד ) בטמפלייט הוספת הטוגל רק לאדמין: .. code-block:: html+jinja {% if (is_admin|default(false)) and not (is_public|default(false)) %} {% endif %} עקרונות המימוש בצד הלקוח ------------------------- - בחירה של כל כותרות H3 בתוך המכולה ``#md-content``. - לכל כותרת H3 נוצרת מעטפת ``
`` עם ```` שמכיל את הכותרת, ותוכן הסעיף נאסף עד הכותרת הבאה ברמה H1/H2/H3. - מצב פתיחה/סגירה נשמר ב‑localStorage לפי מזהה הכותרת (``id``), עם מפתח פר‑מסמך. - ההחזרה למצב רגיל מסירה את מעטפות ה‑``
`` ומחזירה את הצמתים למבנה המקורי. צ'ק‑ליסט לפיצ'רים מקומיים דומים -------------------------------- - כבוי כברירת מחדל; הפעלה ידנית ע"י המשתמש. - שימור מצב ב‑localStorage (פר‑מסמך/פר‑משתמש). - אין שינוי לקובץ מקור/שרת. - הסתרה מלאה בתצוגה ציבורית/שיתוף. - גייט הרשאות ברור (למשל Admin בלבד).