לדלג לתוכן

משתמש:איסתרק/המרת הערות.js

מתוך המכלול, האנציקלופדיה היהודית

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

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
//<nowiki>
/*
מוסיף כפתור (במצב עריכה בקוד מקור) להמרת הערות השוליים בערך מתגיות
לתבניות, והוספת נקודה בסוף כל הערה '<ref>'
*/
if (
  mw.config.get("wgAction") == "edit" ||
  mw.config.get("wgAction") == "submit"
) {
  $(
    mw.util.addPortletLink(
      "p-tb",
      "#",
      "המרת הערות",
      null,
      null,
      "המרת קוד המקור של ההערות מתגיות לתבניות"
    )
  ).click(() => {
    const text = document.getElementById("wpTextbox1").value;
      const newText = text
        .replace(/<ref\>/g, "{{הערה|") // ראש הערה רגילה
        .replaceAll("</ref>", ".</ref>") // הוספת נקודה לסוף הערה
        .replace(/\.{1,2}<\/ref\>/g, ".}}") //הסרת נקודה כפולה, (למקרה שכבר היתה נקודה, ובלא לפגוע בשלוש נקודות), והמרת סוף ההערה
        .replace(/<ref name="(.*?)"\>/g, "{{הערה|שם=$1|") // ראש הערה (מקורית) עם שם
        .replace(/<ref name="(.*?)" \/\>/g, "{{הערה|שם=$1}}") // הפניה להערה בעלת שם
        .replace(/<ref group="(.*?)"\>/g, "{{הערה|קבוצה=$1") // ראש הערה עם קבוצה
        .replace("<references />", "{{הערות שוליים}}"); // תבנית הערות שוליים
      
    function amara() {

        document.getElementById("wpTextbox1").value = newText;
        document.getElementById("wpSummary").value +=
        "[[משתמש:איסתרק/המרת הערות.js|המרת הערות שוליים]]";
        document.getElementById("wpDiff").click();
         mw.notify("נא עבור על השינויים וודא שהכל תקין")
        
                     }
            if (text == newText) {
        mw.notify("אין הערות בצורת תג");
            }
      
      else
      {if (
      text.includes("{{מיון ויקפדיה") ||
      text.includes("{{קרד") ||
      text.includes("{{וח")
    ) {
    	var wiki=confirm("לתשומת ליבך:\nהערך יובא מוויקיפדיה, ויתכן שהמרת ההערות תקשה על העדכון. \nלהמיר בכל זאת?");
      if (wiki)
       {
        amara();
      }
    } else {
      amara();

      if (newText.includes(/{{הערה|שם=:(\d+)/)) {
        mw.notify("אנא תן שמות מילוליים להערות השמיות");
           }                                 }
    }
  });
}
//</nowiki>