用户:Salt lovely/common.js:修订间差异

删除17字节 、​ 2020年11月9日 (星期一)
API扩展
(.)
(API扩展)
// API扩展
window.addEventListener('load',()=>{
(function(){$.extend(mw.Api.prototype,{postWithEditToken:function(params,ajaxOptions){return this.postWithToken('csrf',params,ajaxOptions)},getEditToken:function(){return this.getToken('csrf')},create:function(title,params,content){return this.postWithEditToken($.extend(this.assertCurrentUser({action:'edit',title:String(title),text:content,formatversion:'2',createonly:true}),params)).then(function(data){return data.edit})},edit:function(title,transform){var basetimestamp,curtimestamp,api=this;title=String(title);return api.get({action:'query',prop:'revisions',rvprop:['content','timestamp'],titles:[title],formatversion:'2',curtimestamp:true}).then(function(data){var page,revision;if(!data.query||!data.query.pages){return $.Deferred().reject('unknown')}page=data.query.pages[0];if(!page||page.invalid){return $.Deferred().reject('invalidtitle')}if(page.missing){return $.Deferred().reject('nocreate-missing')}revision=page.revisions[0];basetimestamp=revision.timestamp;curtimestamp=data.curtimestamp;return transform({timestamp:revision.timestamp,content:revision.content})}).then(function(params){var editParams=typeof params==='object'?params:{text:String(params)};return api.postWithEditToken($.extend({action:'edit',title:title,formatversion:'2',assert:mw.config.get('wgUserName')?'user':undefined,basetimestamp:basetimestamp,starttimestamp:curtimestamp,nocreate:true},editParams))}).then(function(data){return data.edit})},newSection:function(title,header,message,additionalParams){return this.postWithEditToken($.extend({action:'edit',section:'new',title:String(title),summary:header,text:message},additionalParams))}})}());
})