सदस्य:SM7/stubsorter.js

मुक्त ज्ञानकोश विकिपीडिया से

सूचना: यह पृष्ठ सुरक्षित करने बाद, परिवर्तनों को देखने लिए ब्राउज़र का कैश ख़ाली करने की आवश्यकता हो सकती है।

  • मोज़िला / फ़ायरफ़ॉक्स / सफ़ारी: shift hold करें जब आप reload क्लिक करते है, या Ctrl-Shift-R (अपल मैक में Cmd-Shift-R) दबाएँ;
  • गूगल क्रोम: Ctrl-shift-R (मैक में Cmd-Shift-R) दबाएँ
  • इंटरनेट एक्सप्लोरर: Ctrl hold करें जब आप refresh क्लिक करते हैं, या Ctrl-F5 क्लिक करते हैं;
  • कॉङ्करर: सिर्फ़ Reload बटन पर क्लिक करें, या F5 क्लिक करें;
  • ऑपरा सदस्य को Tools→Preferences में सम्पूर्ण कैश ख़ाली करने की ज़रूरत हो सकती है।
// Stub tag tab. Original version by [[:en:User:ais523]], on a request by [[:en:User:thesublime514]].
// Enhancements made on requests by [[:en:User:Alai]] and [[:en:User:jj137]].
// ([[:en:User:ais523/stubtagtab2.js]])
// Edited version [[:en:User:MC10/stubtagtab.js]]

//Modified and Localized for bh.wikipedia by [[User:SM7]] in May 2016.
//Localized for hi.wikipedia by [[User:SM7]] in Aug 2016.
//Last revised: Sep 2018.

(function ($) { // Wrap with anonymous function
    function stubTagTab() {
        var $h, $hb, $newa,
            // A list of subpages of WikiProject Stub sorting/Stub types/ that are relevant to this
            a = ['अक्षर क्रम में', 'भूगोल और जगहें', 'जीवनीपरक लेख और लोग', 'कला और संस्कृति', 'समाज और अर्थजगत', 'विज्ञान और टेक्नोलॉजी', 'अन्य विविध प्रकार'];
        $h = $("<div></div>", { "id": "stubtagtab" })
                 .css({
                     "color": "#000000",
                     "background-color": "#fff8f8"
                 });
        for (var i = 0; i < a.length; i++) {
            $newa = $("<a href=\"#\"></a>");
            $newa.click(function (e) {
                e.preventDefault();
                stubTagMenu($(this).text());
            });
            $newa.text(a[i]);
            $h.append($newa);
            if ((i + 1) < a.length) {
                $h.append(" &bull; ");
            }
        }
        $("#contentSub").append($h);

        $hb = $("<div></div>", {
                  "color": "#000000",
                  "background-color": "#fffff8"
              });
        $hb.attr("id", "stubtagmenu");
        $("#contentSub").append($hb);
    }

    function stubTagMenuRender(data) {
        var $parseData = $(data.parse.text["*"]);
        $parseData.find("a").each(function () {
            var link = $(this).attr("href"),
                index = link.indexOf("E:");
            if (index === -1) {
                $(this).attr({
                    "href": null,
                    "title": null
                });
                $(this).css({
                    "color": "#000000",
                    "text-decoration": "none"
                });
            } else {
                $(this).attr("href", mw.config.get("wgServer") + mw.config.get("wgScript")
                    + "?title=" + encodeURIComponent(mw.config.get("wgPageName"))
                    + "&action=edit&autoaddstubtag=" + encodeURIComponent(link.slice(index + 2)));
            }
        });
        $("#stubtagmenu").html($parseData);
    }

    function stubTagMenuFail() {
        $("#stubtagmenu").html("आधार टैग लोड नहीं किये जा सके, पन्ना रिफ्रेश करें और पुनः कोशिश करें");
    }

    function stubTagMenu(stubType) {
        // Add loading message
        $("#stubtagmenu").html("इंतजार करें, आधार टैग लोड हो रहे हैं...");

        // Fetch the relevant subpage of the WikiProject
        $.ajax({
            url: mw.config.get("wgServer") + mw.config.get("wgScriptPath") + '/api.php?action=parse&prop=text&text=' + encodeURIComponent('__NOTOC____NOEDITSECTION__\{\{सदस्य:SM7/stubsorter/' + stubType + '}}') + '&format=json',
            dataType: "json",
            success: stubTagMenuRender,
            error: stubTagMenuFail
        });
    }

    $(function () {
        if (mw.config.get("wgNamespaceNumber") === 0 && mw.config.get("wgAction") === "view"
                && $("#ca-edit").length !== 0) {
            var portletLink = mw.util.addPortletLink('p-cactions', '#', 'स्टब छँटाई', 'ca-stubtag', 'इस पृष्ठ पर एक सटीक आधार टैग लगायें', '');
            $(portletLink).click(function (e) {
                e.preventDefault();
                if (!$("#stubtagtab").length) {
                    stubTagTab();
                }
            });
        }
        if (location.href.indexOf("&autoaddstubtag=") !== -1 && $("#wpTextbox1").length !== 0) {
            var x = decodeURIComponent(location.href.split("&autoaddstubtag=")[1]);
            if (x.indexOf("-stub") === -1) {
                x += "-stub";
 
            }
            var txt = document.editform.wpTextbox1;                                                                                        //Get text for replacing pre-existing stub tags
			txt.value = txt.value.replace(/\{\{\s*([a-zA-Z0-9\u0900-\u097F]*-[a-zA-Z0-9\u0900-\u097F]*-)(आधार|stub)?\}\}\s*/ig, "");       //replace three syllable stubtags
			txt.value = txt.value.replace(/\{\{\s*([a-zA-Z0-9\u0900-\u097F]*-)(आधार|stub)?\}\}\s*/ig, "");              //replace two syllable stubtags 
			txt.value = txt.value.replace(/\{\{\s*(आधार|stub)?\}\}\s*/ig, "");                                          //replace one syllable stubtags
			$("#wpTextbox1").val($("#wpTextbox1").val() + "\n{" + "{" + x + "}}"); // add to the end of the article
            $("#wpSummary").val( "[[सदस्य:SM7/stubsorter|Stubsorter]] द्वारा {" + "{" + x + "}} टैग जोड़ा गया।");
            $("#wpPreview").trigger("click");
        }
    });
} (jQuery)); // End wrap with anonymous function