Thành viên:TRMC/common.js

Bộ sưu tập danh ngôn mở Wikiquote

Sau khi lưu trang này, hãy xóa bộ nhớ đệm của trình duyệt để những thay đổi hiện ra:

Chrome, Firefox, Internet Explorer, Opera: Ctrl+ Shift+R

/**
 * Thay hình nền của đầu đề tìm kiếm theo một liên kết ẩn.
 * 
 * Hình nền được định rõ trong trang như vầy, thay vì trong bản kiểu, để cho dự
 * án thay hình nhanh lẹ không cần lo ngại về vùng nhớ đệm mấy.
 */
$(function () {
    if (!$("#wiktvi-mp-search-header").length) return;
    
    var bgURL = $("#wiktvi-mp-bg-link a").attr("href");
    if (!bgURL || bgURL.indexOf("//upload.wikimedia.org/") != 0) return;
    var safeBGURL = bgURL.replace(/\\/g, "\\\\").replace(/"/g, "\\\"");
    $("#wiktvi-mp-search-header").css("background-image",
                                      "url(\"" + safeBGURL + "\")");
});

/**
 * Di chuyển hộp tìm kiếm và các mục từ ví dụ lên trên đầu trang. Hàm này chỉ có
 * hiệu lực trong hình dạng Vectơ.
 */
$(function () {
    if (mw.config.get("wgPageName") != "Trang_Chính") return;
    
    var header = $("#wiktvi-mp-search-header");
    if (!header.length) return;
    
    if (mw.config.get("skin") != "vector") {
        $("#bodySearchInput").focus();
        return;
    }
    
    $("#bodySearch").hide();
    header.prepend($("#p-search"))
          .appendTo("#mw-head")
          .fadeIn("fast", function () {
            $("#searchInput").focus();
          });
    $("#bodySearch").remove();
    
    // Các phiên bản cũ của Internet Explorer không hỗ trợ chữ có dấu trong selector.
    var prof = $.client.profile();
    if (prof.name == "msie" && parseInt(prof.versionBase) < 9) {
        $("#firstHeading, #siteSub").hide();
        $("#mw-page-base").css("height", "17.5em");
        $("#p-personal").css("z-index", "100");
        $("#mw-head-base").css({
            "position": "relative",
            "z-index": "10",
        });
        $("#left-navigation").css({
            "top": "15em",
            "z-index": "20",
        });
        $("#right-navigation").css({
            "margin-top": "15em",
            "position": "relative",
            "z-index": "20",
        });
        $("div.vectorMenu").css("direction", "rtl");
        $("div.vectorMenu li").css("direction", "ltr");
        $("#wiktvi-mp-search-header").css({
            "display": "block",
            "position": "absolute",
            "left": "10em",
            "right": "0em",
            "height": "10em",
            "padding-top": "7.5em",
            "padding-bottom": "0em",
            "border-bottom": "none",
        });
        $("#p-search").css("float", "none");
        $("#simpleSearch").css({
            "margin-left": "auto",
            "margin-right": "auto",
        });
        $("#wiktvi-mp-search-examples").css("font-size", "80%");
    }
});

/**
 * Thay thế danh sách mục từ ví dụ mới. Hàm này được gọi cho tới 12 lần.
 */
function refreshRandomEntryList() {
    if (refreshRandomEntryList.iteration++ >= 12) return;
    
    var placeholder = $("#wiktvi-mp-random");
    if (!placeholder.length) return;
    
    var title = placeholder.attr("title");
    if (title) {
        placeholder.removeAttr("title")
                   .data("limit", title);
    }
    
    var limit = parseInt(placeholder.data("limit")) || 10;
    $.getJSON(mw.config.get("wgServer") + mw.config.get("wgScriptPath") +
              "/api.php" + "?action=query&list=random&rnnamespace=0&rnlimit=" +
              limit + "&format=json&callback=?",
              function (json) {
        var pages = json && json.query && json.query.random;
        if (!pages || !pages.length) return;
        var links = "";
        for (var i = 0; i < pages.length; i++) {
            var url = mw.config.get("wgArticlePath")
                .replace("$1", pages[i].title.replace( /_/g, ' ' ));
            links += "<li><a href='" + url + "'>" + pages[i].title + "</a></li>";
        }
        placeholder.fadeOut("slow", function () {
           $(this).html(links).fadeIn("fast");
           setTimeout(refreshRandomEntryList, 10 /* s */ * 1000 /* ms */);
        });
    });
}
refreshRandomEntryList.iteration = 0;
$(refreshRandomEntryList);

// Cài đặt bộ gõ [[Wy/vi/Wikivoyage:Gõ tiếng Việt|AVIM]] từ Wikipedia tiếng Việt
mw.loader.load('//vi.wikipedia.org/w/index.php?title=MediaWiki:Gadget-AVIM.js&action=raw&ctype=text/javascript');
mw.loader.load('//vi.wikipedia.org/w/index.php?title=MediaWiki:Gadget-AVIM_portlet.js&action=raw&ctype=text/javascript');