MediaWiki:Gadget-Editsummary.js

Chú ý: Sau khi lưu trang, có thể bạn sẽ phải xóa bộ nhớ đệm của trình duyệt để xem các thay đổi.

  • Firefox / Safari: Nhấn giữ phím Shift trong khi nhấn Tải lại (Reload), hoặc nhấn tổ hợp Ctrl-F5 hay Ctrl-R (⌘R trên Mac)
  • Google Chrome: Nhấn tổ hợp Ctrl-Shift-R (⇧⌘R trên Mac)
  • Internet Explorer / Edge: Nhấn giữ phím Ctrl trong khi nhấn Làm tươi (Refresh), hoặc nhấn tổ hợp Ctrl-F5
  • Opera: Nhấn tổ hợp Ctrl-F5.
/* Imported as of 09/06/2011 from [[w:en:User:ErrantX/defaultsummaries.js]]
 * Edited version from [[w:en:User:MC10/defaultsummaries.js]]
 * Implements default edit summary dropdown boxes
 */

(function ($) { // Wrap with anonymous function
    // The original value of the edit summary field is stored here
    var editsummOriginalSummary = "";

    function editsummAddOptionToDropdown(dropdown, optionText) {
        var option = document.createElement("option");
        var optionTextNode = document.createTextNode(optionText);
        option.appendChild(optionTextNode);
        dropdown.appendChild(option);
    }

    function editsummAddCatToDropdown(dropdown, catText) {
        var option = document.createElement("option");
        option.disabled = true;
        option.selected = true;
        var optionTextNode = document.createTextNode(catText);
        option.appendChild(optionTextNode);
        dropdown.appendChild(option);
    }

    function editsummOnCannedSummarySelected() {
        // Save the original value of the edit summary field
        editsummOriginalSummary = document.getElementById("wpSummary");
        if (editsummOriginalSummary) {
            editsummOriginalSummary = editsummOriginalSummary.value;
        } else {
            editsummOriginalSummary = "";
        }

        var idx = this.selectedIndex;
        var canned = this.options[idx].text;

        var newSummary = editsummOriginalSummary;

        // Append old edit summary with space, if exists,
        // and last character != space
        if (newSummary.length !== 0 && newSummary.charAt(newSummary.length - 1) !== " ") {
            newSummary += " ";
        }
        newSummary += canned;
        document.getElementById("wpSummary").value = newSummary;
    }

    $(function () {
        var insertBeforeThis = document.getElementById("wpSummary");

        // Loop through siblings, looking for editCheckboxes class
        while (insertBeforeThis) {
            if (insertBeforeThis.className === "editCheckboxes") {
                break;
            }

            insertBeforeThis = insertBeforeThis.nextSibling;
        }

        // If we failed to find the editCheckboxes class, or insertBeforeThis is null
        if (!insertBeforeThis || insertBeforeThis.className !== "editCheckboxes") {
            return;
        }

        editsummOriginalSummary = editsummOriginalSummary.value;
        // For convenience, add a dropdown box with some canned edit
        // summaries to the form.
        var dropdown = document.createElement("select");
        dropdown.style.margin = "0 4px 0 0";
        dropdown.style.width = "38%";
        dropdown.onchange = editsummOnCannedSummarySelected;

       var minorDropdown = document.createElement("select");
       minorDropdown.style.width = "38%";
       minorDropdown.onchange = editsummOnCannedSummarySelected;

       editsummAddCatToDropdown(minorDropdown, "Các mẫu tóm lược lùi phá hoại");
       editsummAddCatToDropdown(dropdown, "Các mẫu tóm lược sửa đổi");

       editsummAddOptionToDropdown(minorDropdown,"lấy lại phiên bản trước khi bị tẩy trống");
        
        // không gian tên Chính
        if (mw.config.get('wgNamespaceNumber') === 0) 
       {
            editsummAddOptionToDropdown(dropdown,"Việt hóa");
            editsummAddOptionToDropdown(dropdown,"Sửa lỗi chính tả/ngữ pháp");
            editsummAddOptionToDropdown(dropdown,"sửa định dạng/cách trình bày trang");
            editsummAddOptionToDropdown(dropdown,"chỉnh cho câu văn mạch lạc hơn"); 
            editsummAddOptionToDropdown(dropdown,"cấu trúc lại các mục của trang/sách");
            editsummAddOptionToDropdown(dropdown, "viết thêm nội dung vào sách");
            editsummAddOptionToDropdown(dropdown, "thêm/sửa chú thích");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt thể loại");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết ngoài");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết liên wiki");
            editsummAddOptionToDropdown(dropdown, "xóa nội dung không có chú thích");
            editsummAddOptionToDropdown(dropdown, "thêm bản mẫu chất lượng sách");
       }  

        // không gian tên Trẻ em
        if (mw.config.get('wgNamespaceNumber') === 104) 
       {
            editsummAddOptionToDropdown(dropdown,"Việt hóa");
            editsummAddOptionToDropdown(dropdown,"sửa lỗi chính tả/ngữ pháp");
            editsummAddOptionToDropdown(dropdown,"sửa định dạng/cách trình bày trang");
            editsummAddOptionToDropdown(dropdown,"chỉnh cho câu văn mạch lạc hơn"); 
            editsummAddOptionToDropdown(dropdown,"chỉnh cho câu văn gần gũi với trẻ em hơn"); 
            editsummAddOptionToDropdown(dropdown,"cấu trúc lại các mục của trang/sách");
            editsummAddOptionToDropdown(dropdown, "viết thêm nội dung vào sách");
            editsummAddOptionToDropdown(dropdown, "thêm/sửa chú thích");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt thể loại");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết ngoài");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết liên wiki");
            editsummAddOptionToDropdown(dropdown, "xóa nội dung không có chú thích");
            editsummAddOptionToDropdown(dropdown, "thêm bản mẫu chất lượng sách");
       } 
       
       // không gian tên Nấu ăn
       if (mw.config.get('wgNamespaceNumber') === 106) 
       {
            editsummAddOptionToDropdown(dropdown,"Việt hóa");
            editsummAddOptionToDropdown(dropdown,"sửa lỗi chính tả/ngữ pháp");
            editsummAddOptionToDropdown(dropdown,"sửa định dạng/cách trình bày trang");
            editsummAddOptionToDropdown(dropdown,"chỉnh cho câu văn mạch lạc hơn"); 
             editsummAddOptionToDropdown(dropdown,"cấu trúc lại các mục của món ăn");
            editsummAddOptionToDropdown(dropdown, "viết thêm nội dung vào món ăn");
            editsummAddOptionToDropdown(dropdown, "thêm/sửa chú thích");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt thể loại");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết ngoài");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết liên wiki");
            editsummAddOptionToDropdown(dropdown, "xóa nội dung không có chú thích");
            editsummAddOptionToDropdown(dropdown, "thêm bản mẫu chất lượng món ăn");
       } 

       // không gian tên Bản mẫu
       if (mw.config.get('wgNamespaceNumber') === 10) 
       {
            editsummAddOptionToDropdown(dropdown,"sửa lại do bản mẫu hoạt động sai");
            editsummAddOptionToDropdown(dropdown,"sửa cho bản mẫu nhìn đẹp hơn");
            editsummAddOptionToDropdown(dropdown,"thêm tính năng vào bản mẫu");
            editsummAddOptionToDropdown(dropdown,"trình bày lại các cú pháp trong bản mẫu");
            editsummAddOptionToDropdown(dropdown,"viết lại bản mẫu theo cách khác");
            editsummAddOptionToDropdown(dropdown,"Việt hóa");
            editsummAddOptionToDropdown(dropdown,"sửa lỗi chính tả/ngữ pháp");
            editsummAddOptionToDropdown(dropdown,"chỉnh cho câu văn mạch lạc hơn"); 
            editsummAddOptionToDropdown(dropdown, "thêm/bớt thể loại");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết liên wiki");
       } 

       // không gian tên Wikibooks (4), Trợ giúp
       if (mw.config.get('wgNamespaceNumber') === 4 || mw.config.get('wgNamespaceNumber') === 12) 
       {
            editsummAddOptionToDropdown(dropdown,"Việt hóa");
            editsummAddOptionToDropdown(dropdown,"sửa lỗi chính tả/ngữ pháp");
            editsummAddOptionToDropdown(dropdown,"sửa định dạng/cách trình bày trang");
            editsummAddOptionToDropdown(dropdown,"chỉnh cho câu văn mạch lạc hơn"); 
             editsummAddOptionToDropdown(dropdown,"cấu trúc lại các mục của văn bản");
            editsummAddOptionToDropdown(dropdown, "viết thêm nội dung vào văn bản");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt thể loại");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết ngoài");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết liên wiki");
       } 

       // không gian tên MediaWiki
       if (mw.config.get('wgNamespaceNumber') === 8) 
       {
            editsummAddOptionToDropdown(dropdown,"sửa mã do hoạt động sai");
            editsummAddOptionToDropdown(dropdown,"sửa mã cho nhìn đẹp hơn");
            editsummAddOptionToDropdown(dropdown,"thêm tính năng");
            editsummAddOptionToDropdown(dropdown,"trình bày lại các đoạn mã");
            editsummAddOptionToDropdown(dropdown,"viết lại các đoạn mã theo cách khác");
            editsummAddOptionToDropdown(dropdown,"Việt hóa");
            editsummAddOptionToDropdown(dropdown,"sửa lỗi chính tả/ngữ pháp");
            editsummAddOptionToDropdown(dropdown,"sửa định dạng/cách trình bày trang");
            editsummAddOptionToDropdown(dropdown,"chỉnh cho câu văn mạch lạc hơn"); 
            editsummAddOptionToDropdown(dropdown,"cấu trúc lại các mục");
            editsummAddOptionToDropdown(dropdown, "thêm nội dung");
            editsummAddOptionToDropdown(dropdown, "sửa nội dung");
       } 

       // không gian tên Tập tin
       if (mw.config.get('wgNamespaceNumber') === 6) 
       {
            editsummAddOptionToDropdown(dropdown,"Việt hóa");
            editsummAddOptionToDropdown(dropdown, "thêm/sửa miêu tả");
            editsummAddOptionToDropdown(dropdown, "thêm/sửa giấy phép bản quyền");
            editsummAddOptionToDropdown(dropdown, "thêm/sửa tác giả");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt thể loại");
            editsummAddOptionToDropdown(dropdown, "thêm bản mẫu thông báo vấn đề tập tin");
       } 

       // không gian tên Thánh viên
       if (mw.config.get('wgNamespaceNumber') === 2) 
       {
            editsummAddOptionToDropdown(dropdown,"Việt hóa");
            editsummAddOptionToDropdown(dropdown,"sửa lỗi chính tả/ngữ pháp");
            editsummAddOptionToDropdown(dropdown,"sửa định dạng/cách trình bày trang");
            editsummAddOptionToDropdown(dropdown,"chỉnh cho câu văn mạch lạc hơn"); 
             editsummAddOptionToDropdown(dropdown,"cấu trúc lại các mục");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt nội dung");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt thể loại");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết ngoài");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết liên wiki");
            editsummAddOptionToDropdown(dropdown, "tặng sao cống hiến");
       } 

       // không gian tên Thể loại
       if (mw.config.get('wgNamespaceNumber') === 14) 
       {
            editsummAddOptionToDropdown(dropdown,"Việt hóa");
            editsummAddOptionToDropdown(dropdown,"sửa lỗi chính tả/ngữ pháp");
            editsummAddOptionToDropdown(dropdown,"chỉnh cho câu văn mạch lạc hơn"); 
            editsummAddOptionToDropdown(dropdown, "thêm/sửa miêu tả");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt thể loại");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết liên wiki");
       } 

       // không gian tên Chủ đề
       if (mw.config.get('wgNamespaceNumber') === 102) 
       {
            editsummAddOptionToDropdown(dropdown,"Việt hóa");
            editsummAddOptionToDropdown(dropdown,"sửa lỗi chính tả/ngữ pháp");
            editsummAddOptionToDropdown(dropdown,"chỉnh cho câu văn mạch lạc hơn"); 
            editsummAddOptionToDropdown(dropdown, "thêm/sửa miêu tả");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt chủ đề mẹ");
            editsummAddOptionToDropdown(dropdown, "thêm/bớt liên kết liên wiki");
       } 

       // các không gian tên Thảo luận
       if(mw.config.get('wgNamespaceNumber') === 1 || mw.config.get('wgNamespaceNumber') === 3 || mw.config.get('wgNamespaceNumber') === 5 || mw.config.get('wgNamespaceNumber') === 7 || mw.config.get('wgNamespaceNumber') === 9 || mw.config.get('wgNamespaceNumber') === 11 || mw.config.get('wgNamespaceNumber') === 13 || mw.config.get('wgNamespaceNumber') === 15 || mw.config.get('wgNamespaceNumber') === 103 || mw.config.get('wgNamespaceNumber') === 105 || mw.config.get('wgNamespaceNumber') === 107) 
       {
            editsummAddOptionToDropdown(dropdown, "hồi âm");
            editsummAddOptionToDropdown(dropdown, "thêm lời bình");
            editsummAddOptionToDropdown(dropdown, "sửa lỗi chính tả/ngữ pháp");
            editsummAddOptionToDropdown(dropdown, "dịch lời bình tiếng nước ngoài");
       }

        var theParent = insertBeforeThis.parentNode;
        theParent.insertBefore(dropdown, insertBeforeThis);
        theParent.insertBefore(minorDropdown, insertBeforeThis);
        theParent.insertBefore(document.createElement("br"), dropdown);
    });
}(jQuery)); // End wrap with anonymous function