ميدياويكي:Gadget-massDesc.js

هذه هي النسخة الحالية من هذه الصفحة، وقام بتعديلها عبود السكاف (نقاش | مساهمات) في 12:18، 26 أغسطس 2023 (تعديل حسب الطلب في النقاش). العنوان الحالي (URL) هو وصلة دائمة لهذه النسخة.

(فرق) → نسخة أقدم | نسخة حالية (فرق) | نسخة أحدث ← (فرق)

ملاحظة: بعد الحفظ، قد يلزمك إفراغ الكاش لرؤية التغييرات.

/**
 * masDesc
 * 
 * by [[:ar:User:ASammour]]
 * 
 */

if (mw.config.get('wgNamespaceNumber') === 14) {
    $("#firstHeading").append("<div class = 'addDesc' style = 'cursor:pointer; font-size: 0.5em; background-color:#FAFAFA; color:#455A64; font-weight: bold; vertical-align:center; display: inline-block; margin:5px; padding:2px; border-radius:5px; box-shadow: 0.5px 0.866px 5px 0 rgba(0, 0, 0, 0.11);'>أضف أوصافٌا في ويكي بيانات</div>");
    $(".addDesc").append("<span class = 'counter'> 0</span>");
    $("#firstHeading").append("<div class = 'stopit' style = 'cursor:pointer; font-size: 0.5em; background-color:#e53935; color:#FFFFFF; font-weight: bold; text-align:center; vertical-align:center; display: inline-block; margin:5px; margin-right:0px; padding:2px; border-radius:5px; box-shadow: 0.5px 0.866px 5px 0 rgba(0, 0, 0, 0.11);'> ⛔ إيقاف</div>");
}

$(".addDesc").click(function() {
    main();
});


$(".stopit").click(function() {
	location.reload();
});

function main() {
    var desc = window.prompt("أدخل الوصف الموحّد لصفحات التصنيف، أو اضغط على Cancel لإلغاء العملية");
    if (desc.length > 3){
	    var c = 0;
	    $('.mw-category-group>ul li').each(function(i) {
	    	var thisColor = $(this);
	        if (!$(this).text().includes("◄") &&
	            !$(this).text().includes(":") &&
	            !$(this).text().includes("قائمة") &&
	            !$(this).text().includes("توضيح")) {
	            var api = new mw.Api();
	            api.get({
	                "action": "query",
	                "format": "json",
	                "prop": "pageprops",
	                "titles": $(this).text(),
	                "utf8": 1,
	                "formatversion": "latest",
	            }).done(function(data) {
	                var wikibase = data.query.pages[0].pageprops.wikibase_item;
	                $.ajax({
	                        url: '//www.wikidata.org/w/api.php',
	                        data: {
	                            'format': 'json',
	                            "action": "wbgetentities",
	                            "ids": wikibase,
	                            "sites": "arwiki",
	                            "props": "descriptions",
	                            "utf8": 1,
	                            "formatversion": "latest"
	                        },
	                        dataType: 'jsonp',
	                        cache: true
	                    })
	                    .done(function(data1) {
	                        if (data1.entities[wikibase].descriptions.ar === undefined) {
	                        		thisColor.css ("background-color", "LIGHTSALMON");
		                            var api = new mw.ForeignApi('https://www.wikidata.org/w/api.php');
		                            api.get({
		                                action: 'query',
		                                meta: 'tokens'
		                            }).done(function(data) {
		                                api.post({
		                                    action: 'wbsetdescription',
		                                    id: wikibase,
		                                    token: data.query.tokens.csrftoken,
		                                    language: 'ar',
		                                    value: desc,
		                                });
		                                c++;
		                                $(".counter").text(" " + c);
		                            });
	                        	
	                        }
	                    });
	            });
	        }
	    });
	}
}