跳转到内容

User:Shortway/monobook.js

维基百科,自由的百科全书

这是本页的一个历史版本,由Shortway留言 | 贡献2008年5月7日 (三) 00:58编辑。这可能和当前版本存在着巨大的差异。

注意:保存之后,你必须清除浏览器缓存才能看到做出的更改。Google ChromeFirefoxMicrosoft EdgeSafari:按住⇧ Shift键并单击工具栏的“刷新”按钮。参阅Help:绕过浏览器缓存以获取更多帮助。
//功能:自动通过分类添加需要导出的条目

	Array.prototype.strip = function(){//剔除重复
		if(this.length<2) [this[0]]||[];
		var arr = [];
		for(var i = 0; i<this.length; i++){
			arr.push(this.splice(i--,1));
			for(var j = 0; j<this.length; j++){
				if(this[j] == arr[arr.length-1]){
					this.splice(j--,1);
				}
			}
		}
		return arr;
	}

function autoAddExportFromCategory()
{//使用方法:添加一个书签
//javascript:autoAddExportFromCategory()
	myForm = document.forms[0];
	myCatname = myForm.catname;
	myPages = myForm.pages;
	strPages = myPages.value;

	if(strPages.length<1){
		strPages="Category:" + prompt("请输入一个分类:","");
	}
	else
	{
		strPages = strPages.replace(/^(user|user_talk):.*?$/igm,"");
		strPages = strPages.replace(/^.*?_talk:.*?$/igm,"");

		arrayPages = strPages.split("\n");		//分割
		arrayPages = arrayPages.sort();		   //排序
		strPages = arrayPages.strip().join("\n"); //合并


		R = /^(Category:.*?)\r\n\1\+$/ig;
		if(R.test(strPages))
		{
			strPages = strPages.replace(R,RegExp.$1 + "+")//剔除已完成的分类
		}
	}
	R = /^Category:(.*[^\+])$/im;
	if(R.test(strPages))
	{
		void(myCatname.value = RegExp.$1);
		void(myPages.value = strPages.replace(R,"Category:" + RegExp.$1 + "+") + "\n-----------------\n" + "Category:" + RegExp.$1);
		myForm.addcat.click();
	}
	else
	{
		void(myPages.value = strPages.replace(/[\-\+]+$/igm,""));
		if(not window.confirm("单击“确定”开始导出。单击“取消”停止。"))return;
		myForm.elements[6].click();
	}
}