מדיה ויקי:Monobook.js

מתוך איןציקלופדיה
קפיצה לניווט קפיצה לחיפוש

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

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
/* <div style="direction: ltr;"><pre> */
/* ערכו קובץ זה כדי להריץ סקריפטים ב־JavaScript ברקע Monobook באתר כולו */
/* חלונות קופצים ומקשים חמים */
ta = new Object();
ta["pt-userpage"]           = [".", "דף המשתמש שלי"];
ta["pt-anonuserpage"]       = [".", "דף המשתמש של משתמש אנונימי זה"];
ta["pt-mytalk"]             = ["n", "דף השיחה שלי"];
ta["pt-anontalk"]           = ["n", "שיחה על תרומות המשתמש האנונימי"];
ta["pt-preferences"]        = ["",  "ההעדפות שלי"];
ta["pt-watchlist"]          = ["l", "רשימת הדפים שאתה עוקב אחרי השינויים בהם"];
ta["pt-mycontris"]          = ["y", "רשימת התרומות שלי"];
ta["pt-login"]              = ["o", "מומלץ להירשם, אך אין חובה לעשות כן"];
ta["pt-anonlogin"]          = ["o", "מומלץ להירשם, אך אין חובה לעשות כן"];
ta["pt-logout"]             = ["o", "יציאה מהחשבון"];
ta["ca-talk"]               = ["t", "שוחחו על דף זה"];
ta["ca-edit"]               = ["e", "באפשרותכם לערוך דף זה. אנא השתמשו בלחצן \"הראה תצוגה מקדימה\" לפני השמירה."];
ta["ca-addsection"]         = ["+", "הוספת הערה לשיחה זו"];
ta["ca-viewsource"]         = ["e", "זהו דף מוגן, אך באפשרותך לצפות במקורו"];
ta["ca-history"]            = ["h", "גרסאות קודמות של דף זה."];
ta["ca-protect"]            = ["=", "הגנו על דף זה"];
ta["ca-delete"]             = ["d", "מחקו דף זה"];
ta["ca-undelete"]           = ["d", "שחזרו עריכות שנעשו בדף זה לפני שנמחק"];
ta["ca-move"]               = ["m", "העבירו דף זה"];
ta["ca-watch"]              = ["w", "הוסיפו דף זה לרשימת המעקב שלכם"];
ta["ca-unwatch"]            = ["w", "הסירו דף זה מרשימת המעקב שלכם"];
ta["search"]                = ["f", "חפשו באתר"];
ta["p-logo"]                = ["",  "עמוד ראשי"];
ta["n-mainpage"]            = ["z", "בקרו בעמוד הראשי"];
ta["n-portal"]              = ["",  "אודות המיזם, איך תוכלו לעזור, איפה למצוא דברים"];
ta["n-currentevents"]       = ["",  "מצאו מידע רקע על האירועים האחרונים"];
ta["n-recentchanges"]       = ["r", "רשימת השינויים האחרונים באתר"];
ta["n-randompage"]          = ["x", "צפייה בדף תוכן אקראי"];
ta["n-help"]                = ["",  "עזרה בשימוש באתר"];
ta["n-sitesupport"]         = ["",  "תרומה"];
ta["t-whatlinkshere"]       = ["j", "רשימת כל הדפים המקושרים לכאן"];
ta["t-recentchangeslinked"] = ["k", "השינויים האחרונים שבוצעו בדפים המקושרים לכאן"];
ta["feed-rss"]              = ["",  "הוסיפו עדכון אוטומטי על־ידי RSS"];
ta["feed-atom"]             = ["",  "הוסיפו עדכון אוטומטי על־ידי Atom"];
ta["t-contributions"]       = ["",  "צפו בתרומותיו של משתמש זה"];
ta["t-emailuser"]           = ["",  "שלחו דואר אלקטרוני למשתמש זה"];
ta["t-upload"]              = ["u", "העלו תמונות או קבצי מדיה"];
ta["t-specialpages"]        = ["q", "רשימת כל הדפים המיוחדים"];
ta["ca-nstab-main"]         = ["c", "צפו בדף התוכן"];
ta["ca-nstab-user"]         = ["c", "צפו בדף המשתמש"];
ta["ca-nstab-media"]        = ["c", "צפו בפריט המדיה"];
ta["ca-nstab-special"]      = ["",  "זהו דף מיוחד, אי אפשר לערוך אותו"];
ta["ca-nstab-project"]      = ["a", "צפו בדף המיזם"];
ta["ca-nstab-image"]        = ["c", "צפו בדף תיאור התמונה"];
ta["ca-nstab-mediawiki"]    = ["c", "צפו בהודעת המערכת"];
ta["ca-nstab-template"]     = ["c", "צפו בתבנית"];
ta["ca-nstab-help"]         = ["c", "צפו בדף העזרה"];
ta["ca-nstab-category"]     = ["c", "צפו בדף הקטגוריה"];

/* פונקציה הטוענת פונקציות בעת עליית הדף */
/* לא להשתמש בה! להשתמש ב addOnloadHook במקום!
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

/* הרחבת שורת הלחצנים מעל לתיבת העריכה */
function addMoreButtons()
{
if (mwCustomEditButtons) /* רק אם המערך קיים, כלומר – אם זה דף עריכה */
{

   function addEditButton(imageFile, tagOpen, sampleText, tagClose, speedTip)
   {
       mwCustomEditButtons[mwCustomEditButtons.length] = {
       "imageFile": "https://images.wikia.nocookie.net/eincyclopedia/images/" + imageFile,
       "tagOpen": tagOpen,
       "sampleText": sampleText,
       "tagClose": tagClose,
       "speedTip": speedTip
       };
   }

    addEditButton("1/1a/Button_V1.PNG", "{{", "בעד|חתימה=~~~~", "}}", "הצבע בעד");
    addEditButton("7/75/Button_V2.PNG", "{{", "נגד|חתימה=~~~~", "}}", "הצבע נגד");
    addEditButton("c/c9/Button_strike.png", "<s>", "טקסט המסומן כמחוק", "</s>", "טקסט מחוק");
    addEditButton("e/ea/Button_align_left.png", '<div style="direction: ltr;">\n', "טקסט מיושר לשמאל", "\n</div>", "יישור טקסט לשמאל");
    addEditButton("5/5f/Button_center.png", '<div style="text-align: center;">\n', "טקסט ממורכז", "\n</div>", "מירכוז טקסט");
    addEditButton("1/13/Button_enter.png", "<br/>", "", "", "ירידת שורה");
    addEditButton("8/80/Button_upper_letter.png", "<sup>", "כתב עילי", "</sup>", "כתב עילי");
    addEditButton("7/70/Button_lower_letter.png", "<sub>", "כתב תחתי", "</sub>", "כתב תחתי");
    addEditButton("5/58/Button_small.png", "<small>", "כתב מוקטן", "</small>", "כתב מוקטן");
    addEditButton("/6/67/Button_BIG.PNG", "<big>", "כתב מוגדל", "</big>", "כתב מוגדל");
    addEditButton("3/34/Button_hide_comment.png", "<!-- ", "הערה מוסתרת", " -->", "הערה מוסתרת");
    addEditButton("1/12/Button_gallery.png", "<gallery>\n", "תמונה:PictureFileName.jpg|כיתוב תמונה\nתמונה:PictureFileName.jpg|כיתוב תמונה", "\n</gallery>", "יצירת גלריית תמונות");
    addEditButton("e/e9/Button_headline2.png", "=== ", "כותרת משנית", " ===", "יצירת כותרת ברמה 3");
    addEditButton("8/8e/Button_shifting.png", ":", "", "", "הזחה לשמאל");
    addEditButton("f/fd/Button_blockquote.png", '<blockquote style="border: 1px solid blue; padding: 2em;">\n', "ציטוט", "\n</blockquote>", "חלונית ציטוט");
    addEditButton("1/1e/Button_font_color.png", '<span style="color: ColorName;">', "טקסט צבוע", "</span>", "טקסט עם צבע");
    addEditButton("9/93/Button_sub_link.png", "[[", "שם דף#שם כותרת|שם תצוגה", "]]", "קישור לכותרת בדף");
    addEditButton("d/d3/Button_definition_list.png", "\n; ", "פריט", " : ", "רשימת הגדרות");
    addEditButton("a/ac/Button_ref.PNG", "<ref>", "הזן הערת שוליים כאן", "</ref>", "הערת שוליים");
}
}

/* הוספת כפתור טבלה, המעלה כלי ליצירת טבלאות */
/* גרסה 0.1, נלקח מוויקיפדיה בצרפתית, נכתב במקור על־ידי Dake */
function generateTableau(nbCol, nbRow, border, styleHeader, styleLine)
{
        var code = "\n";
        if (styleHeader==1) {
                code += '{| class="wikitable" border="' + border + '"\n';
        } else {
                code += '{| border="' + border + '"\n';
                code += '|+ כותרת הטבלה\n';
        }
        
        for (var i=0;i<nbCol;i++) code += '! כותרת ' + i + '\n'
        
        for (var j=0;j<nbRow;j++) {
                if ((j+1)%2==0 && styleLine==1) {
                        code += '|- bgcolor="#EFEFEF"\n'
                } else {                
                        code += '|-\n'
                }
                
                for (var i=0;i<nbCol;i++) code += '| תא\n';
        }
        
        code += '|}';
        insertTags('','', code); 
}

function popupTableau()
{
  var popup = window.open('','name','height=400,width=500');
  
  javaCode =  '<script type="text\/javascript">function insertCode(){';
  javaCode += 'var row = parseInt(document.paramForm.inputRow.value); '
  javaCode += 'var col = parseInt(document.paramForm.inputCol.value); '
  javaCode += 'var bord = parseInt(document.paramForm.inputBorder.value); '
  javaCode += 'var styleHeader = document.paramForm.inputHeader.checked; '
  javaCode += 'var styleLine = document.paramForm.inputLine.checked; '
  javaCode += 'window.opener.generateTableau(col,row,bord,styleHeader,styleLine); '
  javaCode += '}<\/script>';
  
  popup.document.write('<html><head><title>פרמטרים לטבלה</title>');
  popup.document.write('<script type="text\/javascript" src="\/skins-1.5\/common\/wikibits.js"><!-- wikibits js --><\/script>');
  popup.document.write('<style type="text\/css" media="screen,projection">/*<![CDATA[*/ @import "\/skins-1.5\/monobook\/main.css?5";@import "/skins-1.5/monobook/rtl.css"; /*]]>*/<\/style>');
  popup.document.write(javaCode); 
  popup.document.write('</head><body>');
  popup.document.write('<p>אנא הזן/י פרמטרים לטבלה : </p>');
  popup.document.write('<form name="paramForm">');
  popup.document.write('מספר שורות : <input type="text" name="inputRow" value="3" ><p>');
  popup.document.write('מספר עמודות : <input type="text" name="inputCol" value="3" ><p>');
  popup.document.write('רוחב מסגרת : <input type="text" name="inputBorder" value="1" ><p>');
  popup.document.write('טבלה מעוצבת : <input type="checkbox" name="inputHeader" checked="1" ><p>');
  popup.document.write('שורות אפורות לסירוגין: <input type="checkbox" name="inputLine" checked="1" ><p>');
  popup.document.write('</form">');
  popup.document.write('<p><a href="javascript:insertCode()"> הוספת הקוד לחלון העריכה</a></p>');
  popup.document.write('<p><a href="javascript:self.close()"> סגירה</a></p>');
  popup.document.write('</body></html>');
  popup.document.close();
}

/* הוספת כפתור טבלאות לסרגל הכלים */
function tableButton()
{
 tooly = document.getElementById('toolbar');
 if (tooly != null && is_gecko) 
{
  /* הגדרת כפתור עם כלי להוספת טבלאות עם זה דפדפן גקו. */
  var tableButton=document.createElement("img");
  tableButton.width = 23;
  tableButton.height = 22;
  tableButton.src = "http://upload.wikimedia.org/wikipedia/he/6/60/Button_insert_table.png";
  tableButton.border = 0;
  tableButton.alt = "הוספת טבלה";
  tableButton.title = "הוספת טבלה";
  tableButton.style.cursor = "pointer";
  tableButton.onclick = popupTableau;
  tooly.appendChild(tableButton);
}
}

/* הוספת קישור לדפי המשנה של הדף הנוכחי */
function subPagesLink()
{
if ((document.getElementById("t-recentchangeslinked") || document.getElementById("t-whatlinkshere")) && wgNamespaceNumber != 0 && wgNamespaceNumber != 6 &&  wgNamespaceNumber != -1 &&  wgNamespaceNumber != 14)
    {
        var rcntChngsLnkdNode = document.getElementById("t-recentchangeslinked");
        if (rcntChngsLnkdNode == null) rcntChngsLnkdNode = document.getElementById("t-whatlinkshere");
        var aNode = document.createElement('a');
        var liNode = document.createElement( 'li' );
        aNode.appendChild(document.createTextNode('דפי משנה'));
        var subpagesLink='http://eincyclopedia.wikia.com/wiki/%D7%9E%D7%99%D7%95%D7%97%D7%93:Prefixindex/' + wgPageName +'/';
        aNode.setAttribute('href' , subpagesLink);
        liNode.appendChild(aNode);
        rcntChngsLnkdNode.appendChild(liNode);
    }
}

/* פונקציה להדגשת אינטרויקי באמצעות התבנית אינטרויקי מודגש */
function boldInterwiki() 
{
    var spans = document.getElementsByTagName("span");
    var items = document.getElementsByTagName("li");
    var i, j;
    for (i = 1; i <= spans.length; i++)
    {
        if (spans[i - 1].className == "BIntLang")
        {
            for (j = 1; j <= items.length; j++)
            {
                if (items[j - 1].className == "interwiki-" + spans[i - 1].id)
                {
                    items[j - 1].style.fontWeight = "bold";
                }
            }
        }
    }
}

function featuredInterwiki() 
{
   // iterate over all <span>-elements
   for(var i=0; a = document.getElementsByTagName("span")[i]; i++) {
      // if found a FA span
      if(a.className == "FA") {
         // iterate over all <li>-elements
         for(var j=0; b = document.getElementsByTagName("li")[j]; j++) {
            // if found a FA link
            if(b.className == "interwiki-" + a.id) {
               b.style.padding = "0 16px 0 16px";
               b.style.backgroundPosition ="right";
               b.style.backgroundImage = "url('http://upload.wikimedia.org/wikipedia/en/6/60/LinkFA-star.png')";
               b.style.backgroundRepeat = "no-repeat";
               b.title = "ערך מומלץ";
            }
         }
      }
   }
}

/* הסתרת הכותרת בעמוד הראשי */
function hideMainPageTitle()
{
    var headings = document.getElementsByTagName("h1");
    var i, done = false;
    for (i = 1; ((!done) && (i <= headings.length)); i++)
    {
        if (headings[i - 1].className == "firstHeading")
        {
            done = true;
            if ((headings[i - 1].innerHTML == "עמוד ראשי") && (document.getElementById("contentSub").innerHTML == ""))
            {
                headings[i - 1].style.display = "none";
                document.getElementById("siteSub").style.display = "none";
                document.getElementById("contentSub").style.display = "none";
            }
        }
    }
}

 // ============================================================
 // BEGIN Dynamic Navigation Bars (experimantal)
 
 // set up the words in your language
 var NavigationBarHide = '[הסתר]';
 var NavigationBarShow = '[הראה]';
 
 // set up max count of Navigation Bars on page,
 // if there are more, all will be hidden
 // NavigationBarShowDefault = 0; // all bars will be hidden
 // NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
 var NavigationBarShowDefault = 1;
 
 
 // shows and hides content and picture (if available) of navigation bars
 // Parameters:
 //     indexNavigationBar: the index of navigation bar to be toggled
 function toggleNavigationBar(indexNavigationBar)
 {
    var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
    var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
 
    if (!NavFrame || !NavToggle) {
        return false;
    }
 
    // if shown now
    if (NavToggle.firstChild.data == NavigationBarHide) {
        for (
                var NavChild = NavFrame.firstChild;
                NavChild != null;
                NavChild = NavChild.nextSibling
            ) {
            if (NavChild.className == 'NavPic') {
                NavChild.style.display = 'none';
            }
            if (NavChild.className == 'NavContent') {
                NavChild.style.display = 'none';
            }
        }
    NavToggle.firstChild.data = NavigationBarShow;
 
    // if hidden now
    } else if (NavToggle.firstChild.data == NavigationBarShow) {
        for (
                var NavChild = NavFrame.firstChild;
                NavChild != null;
                NavChild = NavChild.nextSibling
            ) {
            if (NavChild.className == 'NavPic') {
                NavChild.style.display = 'block';
            }
            if (NavChild.className == 'NavContent') {
                NavChild.style.display = 'block';
            }
        }
    NavToggle.firstChild.data = NavigationBarHide;
    }
 }
 
 // adds show/hide-button to navigation bars
 function createNavigationBarToggleButton()
 {
    var indexNavigationBar = 0;
    // iterate over all < div >-elements
    for(
            var i=0; 
            NavFrame = document.getElementsByTagName("div")[i]; 
            i++
        ) {
        // if found a navigation bar
        if (NavFrame.className == "NavFrame") {
 
            indexNavigationBar++;
            var NavToggle = document.createElement("a");
            NavToggle.className = 'NavToggle';
            NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
            NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
            
            var NavToggleText = document.createTextNode(NavigationBarHide);
            NavToggle.appendChild(NavToggleText);
            // Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
            for(
              var j=0; 
              j < NavFrame.childNodes.length; 
              j++
            ) {
              if (NavFrame.childNodes[j].className == "NavHead") {
                NavFrame.childNodes[j].appendChild(NavToggle);
              }
            }
            NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
        }
    }
    // if more Navigation Bars found than Default: hide all
    if (NavigationBarShowDefault < indexNavigationBar) {
        for(
                var i=1; 
                i<=indexNavigationBar; 
                i++
        ) {
            toggleNavigationBar(i);
        }
    }
 
 }
 
 // END Dynamic Navigation Bars
 // ============================================================

/* פונקציה לבחירת כל הגרסאות בדף השחזורים כברירת מחדל */
function selectAllunDel()
{
/* אם בדף יש טופס שחזור */
 undeleteForm = document.getElementById('undelete');
 if (undeleteForm != null) {
/* סמן את כל תיבות הסימון */
  for(var i=0; a = document.getElementsByTagName("input")[i]; i++) {
   if(a.type=="checkbox") a.checked=true;
  }
 }
}

/* הגדרת הפונקציות לטעינה */
addOnloadHook(hideMainPageTitle);
addOnloadHook(tableButton);
/*addOnloadHook(commonsLink);*/
addOnloadHook(selectAllunDel);
addOnloadHook(subPagesLink);
addOnloadHook(createNavigationBarToggleButton);

/* addLoadEvent(licenseListViewer); */
/* addOnloadHook(boldInterwiki); */
/* addOnloadHook(featuredInterwiki); */

function browserCSSDetection()
{
 // see: http://rafael.adm.br/css_browser_selector/
 var ua = navigator.userAgent.toLowerCase();
 var is = function(t){ return ua.indexOf(t) != -1; };
 var b = (!(/opera|webtv/i.test(ua))&&/msie (\d)/.test(ua)) ?
             ('ie ie'+RegExp.$1) :
               is('gecko/') ? 'gecko' :
               is('opera/9') ? 'opera opera9' :
               /opera (\d)/.test(ua) ? 'opera opera'+RegExp.$1 :
               is('konqueror')?'konqueror' :
               is('applewebkit/') ? 'webkit safari':
               is('mozilla/')?'gecko':'';
 // see: http://www.mozilla.org/docs/web-developer/sniffer/browser_type.html
 var os = (is('x11')||is('linux'))?' linux':is('mac')?' mac':is('win')?' win':'';
 var css = {browser:b,os:os};
 return css;
}

/* </div></pre> */