User:小躍/TalkArchive.js

来自维基导游

注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的变更的影响。

  • Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5Ctrl-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 == '//vy.100ke.info') {
    $('#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
});
}