「MediaWiki:Gadget-twinklefluff.js」:修訂間差異

跳至導覽 跳至搜尋
繁簡轉換
(已匯入 1 筆修訂:Twinkle)
(繁簡轉換)
 
if( parseInt( Morebits.queryString.get('oldid'), 10) !== mw.config.get('wgCurRevisionId') ) {
// not latest revision
alert("法回退,面在此期已被修改。");
return;
}
if( mw.config.get('wgNamespaceNumber') === -1 && mw.config.get('wgCanonicalSpecialPageName') === "Contributions" ) {
//Get the username these contributions are for
var logLink = $('#contentSub').find('a[title^="Special:日"]').last();
if (logLink.length>0) //#215 -- there is no log link on Special:Contributions with no user
{
var revVandLink = document.createElement('a');
revVandLink.appendChild( spanTag( 'Black', '[' ) );
revVandLink.appendChild( spanTag( 'Red', '破' ) );
revVandLink.appendChild( spanTag( 'Black', ']' ) );
revVandNode.appendChild(revVandLink);
});
revertToRevisionLink.appendChild( spanTag( 'Black', '[' ) );
revertToRevisionLink.appendChild( spanTag( 'SaddleBrown', '恢此版本' ) );
revertToRevisionLink.appendChild( spanTag( 'Black', ']' ) );
 
});
revertToRevisionLink.appendChild( spanTag( 'Black', '[' ) );
revertToRevisionLink.appendChild( spanTag( 'SaddleBrown', '恢此版本' ) );
revertToRevisionLink.appendChild( spanTag( 'Black', ']' ) );
ntitle.insertBefore( revertToRevision, ntitle.firstChild );
 
vandLink.appendChild( spanTag( 'Black', '[' ) );
vandLink.appendChild( spanTag( 'Red', '回退(破)' ) );
vandLink.appendChild( spanTag( 'Black', ']' ) );
 
'intoken': 'edit'
};
var wikipedia_api = new Morebits.wiki.api( '抓取早修版本信息', query, Twinkle.fluff.callbacks.main );
wikipedia_api.params = params;
wikipedia_api.post();
'format': 'xml'
};
var wikipedia_api = new Morebits.wiki.api( '抓取早修版本信息', query, Twinkle.fluff.callbacks.toRevision.main );
wikipedia_api.params = { rev: oldrev };
wikipedia_api.post();
 
if (revertToRevID !== self.params.rev) {
self.statitem.error( '抓取到的修版本与请與請求的修版本不符,取消。' );
return;
}
 
var optional_summary = prompt( "请输請輸入回退理由: ", "" ); // padded out to widen prompt in Firefox
if (optional_summary === null)
{
self.statelem.error( '由用取消。' );
return;
}
var summary = Twinkle.fluff.formatSummary("回退到由$USER做出的修版本" + revertToRevID, revertToUser, optional_summary);
 
var query = {
 
Morebits.wiki.actionCompleted.redirect = mw.config.get('wgPageName');
Morebits.wiki.actionCompleted.notice = "修版本完成";
 
var wikipedia_api = new Morebits.wiki.api( '保存回退容', query, Twinkle.fluff.callbacks.complete, self.statelem);
wikipedia_api.params = self.params;
wikipedia_api.post();
 
if( revs.length < 1 ) {
self.statelem.error( '有其它修版本,法回退' );
return;
}
var top = revs[0];
if( lastrevid < self.params.revid ) {
Morebits.status.error( '错误錯誤', [ '從伺器取得的最新修版本ID ', Morebits.htmlNode( 'strong', lastrevid ), ' 小目前所示的修版本ID。可能意味着当著當前修版本已被除、器延、或抓取到了掉的信息。取消。' ] );
return;
}
var index = 1;
if( self.params.revid !== lastrevid ) {
Morebits.status.warn( '警告', [ '最新修版本 ', Morebits.htmlNode( 'strong', lastrevid ), ' 的修版本 ', Morebits.htmlNode( 'strong', self.params.revid ), '不等' ] );
if( lastuser === self.params.user ) {
switch( self.params.type ) {
case 'vand':
Morebits.status.info( '信息', [ '最新修版本由 ', Morebits.htmlNode( 'strong', self.params.user ) , ' 做出,因我假定破继续繼續回退操作。' ]);
break;
case 'agf':
Morebits.status.warn( '警告', [ '最新修版本由 ', Morebits.htmlNode( 'strong', self.params.user ) , ' 做出,因我假定善意,取消回退操作,因为问题為問題可能已被修。' ]);
return;
default:
Morebits.status.warn( '提示', [ '最新修版本由 ', Morebits.htmlNode( 'strong', self.params.user ) , ' 做出,但我们还們還是不回退了。' ] );
return;
}
Twinkle.fluff.whiteList.indexOf( top.getAttribute( 'user' ) ) !== -1 && revs.length > 1 &&
revs[1].getAttribute( 'pageId' ) === self.params.revid) {
Morebits.status.info( '信息', [ '最新修版本由 ', Morebits.htmlNode( 'strong', lastuser ), ',一可信的器人做出,之前的版本被认为認為是破继续繼續回退操作。' ] );
index = 2;
} else {
Morebits.status.error( '错误錯誤', [ '最新修版本由 ', Morebits.htmlNode( 'strong', lastuser ), ' 做出,所以这个這個版本可能已被回退了,取消回退操作。'] );
return;
}
switch( self.params.type ) {
case 'vand':
Morebits.status.info( '信息', [ '将对將對 ', Morebits.htmlNode( 'strong', self.params.user ), ' 行破回退,是一可信的器人,我假定您要回退前一版本。' ] );
index = 2;
self.params.user = revs[1].getAttribute( 'user' );
break;
case 'agf':
Morebits.status.warn( '提示', [ '将对將對 ', Morebits.htmlNode( 'strong', self.params.user ), ' 行善意回退,是一可信的器人,取消回退操作。' ] );
return;
case 'norm':
/* falls through */
default:
var cont = confirm( '选择選擇了常回退,但最新修改是由一可信的器人(' + self.params.user + ')做出的。您是否想回退前一版本?' );
if( cont ) {
Morebits.status.info( '信息', [ '将对將對 ', Morebits.htmlNode( 'strong', self.params.user ), ' 行常回退,是一可信的器人,基于确认於確認,我们将們將回退前一版本。' ] );
index = 2;
self.params.user = revs[1].getAttribute( 'user' );
} else {
Morebits.status.warn( '提示', [ '将对將對 ', Morebits.htmlNode( 'strong', self.params.user ), ' 行常回退,是一可信的器人,基于确认於確認,我回退这个這個版本。' ] );
}
break;
 
if( ! found ) {
self.statelem.error( [ '未找到之前的修版本,可能 ', Morebits.htmlNode( 'strong', self.params.user ), ' 是唯一贡献貢獻者,或这个這個户连续戶連續做出了超 ' + Twinkle.getPref('revertMaxRevisions') + ' 次编辑編輯。' ] );
return;
}
 
if( ! count ) {
Morebits.status.error( '错误錯誤', "我们将們將要回退0版本,这没這沒有意,所以取消回退操作。可能是因为这个為這個版本已被回退,但修版本ID仍是一的。" );
return;
}
var userHasAlreadyConfirmedAction = false;
if (self.params.type !== 'vand' && count > 1) {
if ( !confirm( self.params.user + ' 连续連續做出了 ' + count + ' 次编辑編輯,是否要回退所有些?') ) {
Morebits.status.info( '提示', '用取消操作' );
return;
}
self.params.gooduser = good_revision.getAttribute( 'user' );
 
self.statelem.status( [ Morebits.htmlNode( 'strong', count ), ' 版本之前由 ', Morebits.htmlNode( 'strong', self.params.gooduser ), ' 做出的修版本 ', Morebits.htmlNode( 'strong', self.params.goodid ) ] );
 
var summary, extra_summary;
switch( self.params.type ) {
case 'agf':
extra_summary = prompt( "可编辑編輯摘要: ", "" ); // padded out to widen prompt in Firefox
if (extra_summary === null)
{
self.statelem.error( '用取消操作。' );
return;
}
userHasAlreadyConfirmedAction = true;
 
summary = Twinkle.fluff.formatSummary("回退$USER做出的出[[WP:AGF|善意]]的编辑編輯", self.params.user, extra_summary);
break;
 
 
summary = "回退[[Special:Contributions/" +
self.params.user + "|" + self.params.user + "]] ([[User talk:" + self.params.user + "|讨论討論]])" +
"做出的 " + self.params.count + " 次编辑編輯,到由" +
self.params.gooduser + "做出的前一版本 " + Twinkle.getPref('summaryAd');
break;
 
default:
if( Twinkle.getPref('offerReasonOnNormalRevert') ) {
extra_summary = prompt( "可编辑編輯摘要: ", "" ); // padded out to widen prompt in Firefox
if (extra_summary === null)
{
self.statelem.error( '用取消操作。' );
return;
}
}
 
summary = Twinkle.fluff.formatSummary("回退$USER做出的" + self.params.count + "次编辑編輯", self.params.user, extra_summary);
break;
}
 
if (Twinkle.getPref('confirmOnFluff') && !userHasAlreadyConfirmedAction && !confirm("回退面:您?")) {
self.statelem.error( '用取消操作。' );
return;
}
Twinkle.getPref('openTalkPage').indexOf( self.params.type ) !== -1 &&
mw.config.get('wgUserName') !== self.params.user ) {
Morebits.status.info( '信息', [ '打 ', Morebits.htmlNode( 'strong', self.params.user ), ' 的对话页對話頁' ] );
 
query = {
Morebits.wiki.actionCompleted.notice = "回退完成";
 
var wikipedia_api = new Morebits.wiki.api( '保存回退容', query, Twinkle.fluff.callbacks.complete, self.statelem);
wikipedia_api.params = self.params;
wikipedia_api.post();
code.style.fontFamily = "monospace";
code.appendChild(document.createTextNode(blacklist));
apiobj.statelem.error(['不能回退,因URL', code, '在垃圾黑名中。']);
} else if ($edit.attr('nochange') === '') {
apiobj.statelem.warn("要回退到的版本与当與當前版本相同,要做的");
} else {
apiobj.statelem.info("完成");
var contribsLen = unescape(encodeURIComponent(contribsLink)).length;
if (resultLen + contribsLen <= 255) {
var talkLink = " ([[User talk:" + userName + "|讨论討論]])";
if (resultLen + contribsLen + unescape(encodeURIComponent(talkLink)).length <= 255) {
result = result.replace("$USER", contribsLink + talkLink);
1,975

次編輯

導覽選單