مستخدم:FShbib/updateWDS-RD.js
المظهر
![]() | يمكن توفير توثيق لسكربت المستخدم هذا في الصفحة : مستخدم:FShbib/updateWDS-RD. |
ملاحظة: بعد الحفظ، قد يلزمك إفراغ الكاش لرؤية التغييرات.
var finalTextRD = "local p = {}\nfunction p.getRecentDeaths()\nreturn {";
function makeSPARQLQuery(endpointUrl, sparqlQuery, doneCallback) {
var settings = {
headers: {
Accept: 'application/sparql-results+json'
},
data: {
query: sparqlQuery
}
};
return $.ajax(endpointUrl, settings).then(doneCallback);
}
var endpointUrl = 'https://query.wikidata.org/sparql',
sparqlQuery = "SELECT ?itemLabel\n" +
"WHERE { values ?offset {\"1920-02-00T00:00:00\"^^xsd:dateTime }. values ?offset0 { \"1920-01-00T00:00:00\"^^xsd:dateTime }. \n" +
" Bind((NOW() - ?offset) as ?mintime). \n" +
" ?item wdt:P570 ?dod . \n" +
" FILTER EXISTS { ?war schema:about ?item . ?war schema:inLanguage \"ar\" }\n" +
" FILTER (?dod > \"2015-10-01T00:00:00Z\"^^xsd:dateTime) \n" +
" FILTER (?dod < now()) Bind(((?dod - ?offset0)) as ?dodtime ). \n" +
" FILTER ( ?dodtime > ?mintime ) ?item wdt:P31 wd:Q5 \n" +
" SERVICE wikibase:label { bd:serviceParam wikibase:language \"ar\"}\n" +
"} \n" +
"ORDER BY DESC(?dod)\n" +
"LIMIT 20";
setTimeout(function() {
makeSPARQLQuery(endpointUrl, sparqlQuery, function(data) {
for (var i = 0; i < data.results.bindings.length; i++) {
finalTextRD = finalTextRD + "\"" + ((data.results.bindings[i].itemLabel.value)) + "\",\n";
}
finalTextRD = finalTextRD + "}\nend\nreturn p";
new mw.Api()
.edit( "وحدة:ملعب/FShbib/وفيات حديثة/قائمة", function ( revision ) {
return {
text: finalTextRD,
summary: "تحديث"
};
})
.then( function () {
console.log( 'Saved! ');
});
});
}, 3000);