User:Edgars2007/set-label.js
Jump to navigation
Jump to search
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
var WDid = mw.config.get('wgTitle');
var label;
var api = new mw.Api({
ajax: {
headers: { 'Api-User-Agent': 'd:User:Edgars2007/set-label.js' },
},
});
function changeLabel(label) {
var jsondata = {
labels: {
lv: { language: 'lv', value: label },
},
};
return api
.postWithEditToken({
action: 'wbeditentity',
id: WDid,
data: JSON.stringify(jsondata),
summary: 'set [lv] label: ' + label + ', using [[User:Edgars2007/set-label.js|script]]',
})
.then(function () {
location.reload();
})
.catch(function (error) {
console.log(error);
});
}
function setLabel() {
api.get({
action: 'wbgetentities',
ids: WDid,
props: 'labels',
}).done(function (data) {
var isjson = data.entities[WDid].labels.length;
if (!isjson) {
label = data.entities[WDid].labels['lv'].value;
newlabel = label[0].toLowerCase() + label.substring(1);
console.log('old label: ' + label);
console.log('new label: ' + newlabel);
changeLabel(newlabel);
}
});
}
$(function ($) {
if (mw.config.get('wgNamespaceNumber') === 0) {
$(mw.util.addPortletLink('p-cactions', '#', 'set-lv-label', null, 'Rīks ieraksta nosaukuma maiņai')).on('click', setLabel);
}
});