MediaWiki:Gadget-userRightsManager.js: Difference between revisions

From Test Wiki
clean out code for updating markadmins.json since it's no longer necessary due to gadget changes
(fix user selection)
(clean out code for updating markadmins.json since it's no longer necessary due to gadget changes)
Line 17: Line 17:
'interface-admin': '{{done}}. ~~~~',
'interface-admin': '{{done}}. ~~~~',
};
};
var listKeys = {
'sysop': 'A',
'bureaucrat': 'B',
'interface-admin': 'F'
}


var api,
var api,
Line 116: Line 110:
this.changeRightsProgressLabel = new OO.ui.LabelWidget();
this.changeRightsProgressLabel = new OO.ui.LabelWidget();
this.changeRightsProgressField = new OO.ui.FieldLayout( this.changeRightsProgressLabel );
this.changeRightsProgressField = new OO.ui.FieldLayout( this.changeRightsProgressLabel );
this.updateJsonProgressLabel = new OO.ui.LabelWidget();
this.updateJsonProgressField = new OO.ui.FieldLayout( this.updateJsonProgressLabel );
this.markAsDoneProgressLabel = new OO.ui.LabelWidget();
this.markAsDoneProgressLabel = new OO.ui.LabelWidget();
this.markAsDoneProgressField = new OO.ui.FieldLayout( this.markAsDoneProgressLabel );
this.markAsDoneProgressField = new OO.ui.FieldLayout( this.markAsDoneProgressLabel );
Line 173: Line 165:
self.markAsDoneProgressField.setLabel( 'Marking request as done...' );
self.markAsDoneProgressField.setLabel( 'Marking request as done...' );
self.submitFieldset.addItems( [self.markAsDoneProgressField] );
self.submitFieldset.addItems( [self.markAsDoneProgressField] );
self.updateJsonProgressField.setLabel( 'Updating markadmins.json' );
self.submitFieldset.addItems( [self.updateJsonProgressField] );
self.changeRightsProgressField.setLabel( 'Assigning rights...' );
self.changeRightsProgressField.setLabel( 'Assigning rights...' );
self.submitFieldset.addItems( [self.changeRightsProgressField] );
self.submitFieldset.addItems( [self.changeRightsProgressField] );
Line 182: Line 172:
markAsDone('\n:' + this.closingRemarksInput.getValue())
markAsDone('\n:' + this.closingRemarksInput.getValue())
).then(function(data) {
).then(function(data) {
addPromise(
self.updateJsonProgressField,
updateJson(data.edit.newrevid)
);
addPromise(
addPromise(
self.changeRightsProgressField,
self.changeRightsProgressField,
Line 225: Line 211:
expiry: 'infinity',
expiry: 'infinity',
tags: 'userRightsManagerTW'
tags: 'userRightsManagerTW'
});
}
function updateJson(revId) {
return api.get({
'action': 'query',
'titles': 'MediaWiki:Gadget-markadmins.json',
'prop': 'revisions',
'rvslots': '*',
'rvlimit': 1,
'rvprop': 'content'
}).then(function(data){
var newContent = JSON.parse(data['query']['pages'][Object.keys(data['query']['pages'])[0]]['revisions'][0]['slots']['main']['*']);
for(perm in perms){
if(!newContent['userSet'][listKeys[perm]].includes(userName.replace(/_/g, ' '))){
newContent['userSet'][listKeys[perm]].push(userName.replace(/_/g, ' '))
}
newContent['userSet'][listKeys[perm]].sort()
}
newContent = JSON.stringify(newContent, null, 4)
return api.postWithToken( 'edit', {
'action': 'edit',
'title': 'MediaWiki:Gadget-markadmins.json',
'text': newContent,
'tags': 'userRightsManagerTW',
summary: 'Adding [[User:' + userName + '|' + userName.replace(/_/g, ' ') + ']] to ' + names[permission] + 's ' + '([[Special:Diff/' + revId + '|per request]])'
})
});
});
}
}
78

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.