مستخدم:ASammour/test.js
يبدو بأن سكربت المستخدم هذا مرفوق بـصفحة توثيق في مستخدم:ASammour/test و مرفق بملف مصاحب .css في مستخدم:ASammour/test.css. |
ملاحظة: بعد الحفظ، قد يلزمك إفراغ الكاش لرؤية التغييرات.
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);
});
}
});
});
}
});
}
}