User:小躍/TalkArchive.js
< User:小躍
注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的变更的影响。
- Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
- Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
- Internet Explorer或Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5
- Opera:按 Ctrl-F5。
if(wgUserName=='Eagerbot'){
//start First function
mw.loader.using(['jquery.ui'], function() {
var CountARworkid=0;
function GetUrlParms(){
var args=new Object();
var query=location.search.substring(1);//获取查询串
var pairs=query.split("&");//在逗号处断开
for(var i=0;i<pairs.length;i++)
{
var pos=pairs[i].indexOf('=');//例如:查找name=value
if(pos==-1) continue;//如果没有找到就跳过
var argname=pairs[i].substring(0,pos);//提取name
var value=pairs[i].substring(pos+1);//提取value
args[argname]=unescape(value);//存为属性
}
return args;
}
var args = new Object();
args = GetUrlParms();
if(args["section"]!=undefined)
{
//如果要查找参数key:
var GetSection = args["section"] ;
}
var SetSectionName=$('#wpSummary').val();
var SNCount=SetSectionName.length;
var GetSectionName=SetSectionName.substring(2,(SNCount-4));
function SelfTalkArchive( tracePage,destinationPage,edittext,editsummary ) {
var api = new mw.Api();
api.get( {
'action' : 'query',
'titles' : tracePage,
'prop' : 'revisions|info',
'intoken' : 'edit',
'rvprop' : 'content',
'indexpageids' : 1
} ).done( function (result) {
result = result.query;
var page = result.pages[result.pageids[0]];
api.post( {
'action' : 'edit',
'title' : destinationPage,
'appendtext' :edittext,
'bot':1,
'summary' :editsummary,
'token' : page.edittoken
} ).done( function () {
} );
} );
}
function SelfTalkAlreadyArchived( tracePage,destinationPage,EditSection,editsummary,linkTo ) {
var api = new mw.Api();
api.get( {
'action' : 'query',
'titles' : tracePage,
'prop' : 'revisions|info',
'intoken' : 'edit',
'rvprop' : 'content',
'indexpageids' : 1
} ).done( function (result) {
result = result.query;
var page = result.pages[result.pageids[0]];
api.post( {
'action' : 'edit',
'title' : destinationPage,
'text' :'',
'section':EditSection,
'summary' :editsummary,
'token' : page.edittoken
} ).done( function () {
window.location.href = linkTo;
} );
} );
}
// secure server?
if(GetSection==null){}else if ((wgAction == 'edit' || wgAction == 'submit') && wgServer == '//zh.wikivoyage.org') {
$('#wpDiff').after('\n<input id="wpSelfTalkArchiveButton" class="oo-ui-inputWidget-input oo-ui-buttonElement-button" value="存檔" title="存檔此標題及標題相關的內容。" type="button"/>');
$('#wpSelfTalkArchiveButton').click(SelfTalkArchiveEdit);
}
function SelfTalkArchiveEdit(event) {
event.preventDefault();
$('<div id="SelfTalkArchiveEdit" title="用戶討論頁存檔編輯器">' +
'<label for="SelfTalkArchiveEditYearSelect">選擇存檔的年份:</label>'+
'<select id="SelfTalkArchiveEditYearSelect" style="padding:1px;vertical-align:baseline;">'+
'<option value=2017>2017年'+
'<option value=2018>2018年'+
'</select><br/>'+
'<label for="SelfTalkArchiveEditMonthSelect">選擇存檔的月份:</label>'+
'<select id="SelfTalkArchiveEditMonthSelect" style="padding:1px;vertical-align:baseline;">'+
'<option value=1>1月'+
'<option value=2>2月'+
'<option value=3>3月'+
'<option value=4>4月'+
'<option value=5>5月'+
'<option value=6>6月'+
'<option value=7>7月'+
'<option value=8>8月'+
'<option value=9>9月'+
'<option value=10>10月'+
'<option value=11>11月'+
'<option value=12>12月'+
'</select><br/>'+
'<input id="wpSelfTalkArchiveEditSave" value="開始存檔" title="儲存您的選擇存檔頁面進行儲存工作。" type="button"/>'+
'</div>'
).dialog({
modal: false,
autoOpen: true,
close: function() {CountARworkid++;},
width: 500
});
$('#wpSelfTalkArchiveEditSave').click(SelfTalkArchiveSave);
}
function SelfTalkArchiveSave(event) {
event.preventDefault();
switch($('#SelfTalkArchiveEditMonthSelect').val()){
case '1':
case '2':
case '3':{
SelfTalkArchive(wgPageName,wgPageName+'/存檔/'+$('#SelfTalkArchiveEditYearSelect').val()+'年1月至3月','\n'+$('#wpTextbox1').val(),SetSectionName+'機器人:ARC+,使用[[User:小躍/TalkArchive.js|用戶討論頁存檔編輯器]]。' );
SelfTalkAlreadyArchived(wgPageName,wgPageName,GetSection,SetSectionName+'機器人:ARC-,使用[[User:小躍/TalkArchive.js|用戶討論頁存檔編輯器]]。',mw.util.getUrl(wgPageName) );
break;
}
case '4':
case '5':
case '6':{
SelfTalkArchive(wgPageName,wgPageName+'/存檔/'+$('#SelfTalkArchiveEditYearSelect').val()+'年4月至6月','\n'+$('#wpTextbox1').val(),SetSectionName+'機器人:ARC+,使用[[User:小躍/TalkArchive.js|用戶討論頁存檔編輯器]]。' );
SelfTalkAlreadyArchived(wgPageName,wgPageName,GetSection,SetSectionName+'機器人:ARC-,使用[[User:小躍/TalkArchive.js|用戶討論頁存檔編輯器]]。',mw.util.getUrl(wgPageName) );
break;
}
case '7':
case '8':
case '9':{
SelfTalkArchive(wgPageName,wgPageName+'/存檔/'+$('#SelfTalkArchiveEditYearSelect').val()+'年7月至9月','\n'+$('#wpTextbox1').val(),SetSectionName+'機器人:ARC+,使用[[User:小躍/TalkArchive.js|用戶討論頁存檔編輯器]]。' );
SelfTalkAlreadyArchived(wgPageName,wgPageName,GetSection,SetSectionName+'機器人:ARC-,使用[[User:小躍/TalkArchive.js|用戶討論頁存檔編輯器]]。',mw.util.getUrl(wgPageName) );
break;
}
case '10':
case '11':
case '12':{
SelfTalkArchive(wgPageName,wgPageName+'/存檔/'+$('#SelfTalkArchiveEditYearSelect').val()+'年10月至12月','\n'+$('#wpTextbox1').val(),SetSectionName+'機器人:ARC+,使用[[User:小躍/TalkArchive.js|用戶討論頁存檔編輯器]]。' );
SelfTalkAlreadyArchived(wgPageName,wgPageName,GetSection,SetSectionName+'機器人:ARC-,使用[[User:小躍/TalkArchive.js|用戶討論頁存檔編輯器]]。',mw.util.getUrl(wgPageName) );
break;
}
}
$('<div id="SelfTalkArchiveSaveSaveDone" title="存檔完成">' +
'<img src="http://upload.wikimedia.org/wikipedia/commons/4/42/Loading.gif" /><label>正在存檔,請稍後......</label><br/>' +
'</div>'
).dialog({
modal: false,
autoOpen: true,
width: 500
});
}
//end First function
});
}