مستخدم:ASammour/test.js

من ويكيبيديا، الموسوعة الحرة

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

if (mw.config.get('wgNamespaceNumber') === 14) {
    $("#firstHeading").append("<div class = 'addDesc' style = 'cursor:pointer;background-color: #17a8bd;color: white;display: inline;margin: 15px;padding: 5px;border-radius: 3px;border-style: dashed;'>أضف تسميات إلى ويكي بيانات</div>");
    $(".addDesc").append("<span class = 'counter'> 0</span>");
    $("#firstHeading").append("<span class = 'stopit' style = 'cursor:pointer;color:red;'> ⛔ إيقاف</span>");
}

$(".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",
	                            "format": "json",
	                            "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);
		                            });
	                        	
	                        }
	                    });
	            });
	        }
	    });
	}
}