میڈیاویکی:Gadget-wikimenu.js

آزاد دائرۃ المعارف، ویکیپیڈیا سے

تفصیل کے لیے کھولیں کے بٹن پر کلک کریں یاددہانی: محفوظ کرنے کے بعد تازہ ترین تبدیلیوں کو دیکھنے کے لیے آپ کو اپنے براؤزر کا کیش صاف کرنا ہوگا۔

  • فائرفاکس/ سفاری: جب Reload پر کلک کریں تو Shift دبا کر رکھیں، یا Ctrl-F5 یا Ctrl-R دبائیں (Mac پر R- )
  • گوگل کروم: Ctrl-Shift-R دبائیں (Mac پر Shift-R-⌘)
  • انٹرنیٹ ایکسپلورر: جب Refresh پر کلک کریں تو Ctrl یا Ctrl-F5 دبائیں
  • اوپیرا: Tools → Preferences میں جائیں اور کیش صاف کریں

/*
== Menük és tabsetek inicializálása ==
*/
 
function generateMenuLayout(desti, level) {
  if (level > 2) return 0; // max. 2 szint
  var curr = $("<ul></ul>");
  $("div", desti).each(function() {
    var cdiv = $(this);
    if (cdiv.hasClass("menuItem")) {
      $("<li>").html(cdiv.html()).appendTo(curr);
    } else {
      var ret = generateMenuLayout($("#wikiMenu-" + cleanHtmlTags(cdiv.attr("title"))), level+1);
      if (ret != 0) {
        $("<li>").html(cdiv.html()).append(ret).appendTo(curr);
      }
    }
  });
  if (level == 0) {
    desti.after(curr);
    var destid = "menu-" + desti.attr("id").substring(10);
    curr.attr("id", destid)
        .addClass("sf-menu");
    desti.remove();
 
    if (mw.config.get('wikimenu.useCustomMenu', false) == true
        && mw.config.get('wgUserName') != null && curr.parents("#header-menu").length > 0)
    {
      $.wiki.getPageRaw({
         pageName: "User:" + mw.config.get('wgUserName') + "/Saját menü",
         async: false,
         success: function(data) {
           var items = data.split("\n");
           if (items.length == 0 || items.length == 1 && items[0] == "") return;
           var cmenu = $('<ul></ul>');
           var ccount = 0;
           for (var zs = 0; zs < items.length; zs++) {
             if (items[zs] == "" || items[zs].substring(0,1) != '#') continue;
             var foo = items[zs].substring(1);
             if (foo.indexOf("|") > -1) {
               var splitem = foo.split("|");
               $('<li><a href="' + $.wiki.wikiLink(splitem[0], false) + '">' + splitem[1] + '</a></li>').appendTo(cmenu);
             } else {
               $('<li><a href="' + $.wiki.wikiLink(foo, false) + '">' + foo + '</a></li>').appendTo(cmenu);
             }
             ccount++;
           }
           if (ccount > 0) {
             $('<li><a href="#">Saját</a></li>').append(cmenu).appendTo(curr);
           }
         }
      });
    }
    return destid;
  } else {
    return curr;
  }
}
 
$(function() {
  if (mw.config.get('wgNamespaceNumber') != 0) {
    /* Sima cím eltüntetése, ha a menü alatt van helyettesítő */
    if (mw.config.get('wgAction') != "edit" && mw.config.get('wgAction') != "submit" && $("#header-title").length > 0) {
      if (skin != "modern") {
        $("#firstHeading").css("display", "none");
        $("#siteSub").css("display", "none");
      }
      if ($("#contentSub").length > 0 && $("#mw-revision-info").length == 0)
        $("#contentSub").css("display", "none");      
    }
 
    /* Gombok */
    var bigButtons = $(".bigButton", $($.wiki.contentSelector));
    if (bigButtons.length > 0) {
      bigButtons.each(function() {
        var link = $("a:first", $(this));
        if (link.length > 0) {
          var curLink = link.attr("href");
          link.parent().html(link.html());
          $(this).css("cursor", "pointer")
                 .wrap($('<a class="buttonWrapperAnchor"></a>').attr("href", curLink));
        }
      });
	}
 
    /* Eligazítólapok */
    var eliItems = $(".eligazitoLap > .eligazitoElem", $($.wiki.contentSelector));
    if (eliItems.length > 0) {
      /* IE6 miaza:hover??-bugfix */
      if ($.browser.msie && $.browser.version == 6) {
        eliItems.hover(
          function() {
            $(this).addClass("eeHover");
          },
          function() {
            $(this).removeClass("eeHover");
          }
        );
      }
      eliItems.each(function() {
        var link = $(".eligazitoTovabb > a", $(this));
        if (link.length > 0) {
          var curLink = link.attr("href");
          link.parent().html(link.html());
          $(this).css("cursor", "pointer")
                 .wrap($('<a class="eligazitoWrapLink"></a>').attr("href", curLink));
        }
      });
    }
 
    /* Tabok felépítése */
    $(".tabset-tabs", $($.wiki.contentSelector)).each(function() {
      var tabul = $("<ul></ul>");
      var curid = cleanHtmlTags($(this).attr("id").substring(10));
      var tabCount = 0;
      $("#" + curid + "-content > div").each(function() {
        var cdiv = $(this);
        if (cdiv.hasClass("tab-nojs")) cdiv.removeClass("tab-nojs");
        if (cdiv.attr("title") != "") {
          $("<li></li>").html("<a>" + cdiv.attr("title") + "</a>").appendTo(tabul);
          tabCount++;
        } else {
          cdiv.remove();
        }
      });
      if (tabCount > 0) {
        $(this).after(tabul);
        tabul.attr("id", curid);
        tabul.addClass("tabset-tabs");
        tabul.tabs("#" + curid + "-content > div");
        tabul.trigger('tabsetReady');
      } else {
        $("#" + curid + "-content").remove();
      }
      $(this).remove();
    });
 
 
    /* Menük felépítése */
    if (mw.config.get('wikimenu.disabled', false) == false) {
      var menuRoots = $(".wikiMenu-rootContainer", $($.wiki.contentSelector));
      if (menuRoots.length > 0) {
        menuRoots.each(function() {
          var destid = generateMenuLayout($(this), 0);
          if (jQuery.browser.msie && jQuery.browser.version == 6) {
            $("#" + destid).superfish();
          } else {
            $("#" + destid).supersubs({ 
                minWidth:    12,   // minimum width of sub-menus in em units 
                maxWidth:    27,   // maximum width of sub-menus in em units 
                extraWidth:  2     // extra width can ensure lines don't sometimes turn over 
                                   // due to slight rounding differences and font-family 
            }).superfish();
          }
        });
      }
      $(".wikiMenu-container", $($.wiki.contentSelector)).remove();
    }
  }
});
 
/* Kapcsolódó lapok */
$(function() {
  $('.buborekGomb').each(function() {
    if (mw.config.get('wgNamespaceNumber')===0) return;
    var $this = $(this);
    var contentDivSelector = '#' + cleanHtmlTags($this.attr('id').replace(/^button-/, '')) + '-content';
    var contentDiv = $(contentDivSelector);
    var bodySelector = 'body';
    if (skin==='monobook') bodySelector = '#globalWrapper';
    $(contentDivSelector).appendTo(bodySelector);
 
    var contentDivWidth = 0;
    $.swap(contentDiv.get(0), {display: 'block'}, function() {
      contentDivWidth = $(this).outerWidth();
    });
 
    function reposBuborek() {
       var contentDivLeft = $this.offset().left + contentDivWidth > $(window).width()
          ? $this.offset().left + $this.outerWidth() - contentDivWidth
          : $this.offset().left;
       $(contentDivSelector).css({
         position: 'absolute', 
         top: $this.offset().top + $this.outerHeight(),
         left: contentDivLeft
       });
    }
 
    reposBuborek();
    $(contentDivSelector).find('.buborekTitlebar').prepend(
      $('<div>').addClass('buborekCloseButton')
                .html('x')
                .click(function() {
                  $this.removeClass('button-active');
                  contentDiv.stop().fadeTo(200, 0).removeClass('buborekVisible').hide();
                })
    );
    $this.click(function() {
      if(contentDiv.hasClass('buborekVisible')) {
        $this.removeClass('button-active');
        contentDiv.stop().fadeTo(200, 0).removeClass('buborekVisible').hide();
      } else {
        reposBuborek();
        $this.addClass('button-active');
        contentDiv.stop().show().fadeTo(200, 1).addClass('buborekVisible');
      }
    });
  });
});