コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

利用者:Alexsh/vfd.js

お知らせ: 保存した後、ブラウザのキャッシュをクリアしてページを再読み込みする必要があります。

多くの WindowsLinux のブラウザ

  • Ctrl を押しながら F5 を押す。

Mac における Safari

  • Shift を押しながら、更新ボタン をクリックする。

Mac における ChromeFirefox

  • Cmd Shift を押しながら R を押す。

詳細についてはWikipedia:キャッシュを消すをご覧ください。

// Articles for deletion Template Selecter
// Original by Tietew@jawiki
// This script is under public domain, and comes with ABSOLUTELY NO WARRANTY.
// You can use/modify/redistribute without any permission.

//Chinese Localize by Alexsh@zhwiki
//Reorginazed by Fdcn@zhwiki

//Warning: You must disable WikEd( by Cacycle@enwiki) before you use this script


function createDropdownMenu(title,id){
	if(!document.getElementById('editform')) return false;

	var action={};
	function add(text,value,pre,sampletext,post,summary,min,fn){
     // parameter: Display text,Value,prefix,Sample text,post,Summary,MinorEdit,additional handle
		if(typeof value=="string"){action[value]=[pre,sampletext,post,summary,min,fn];}
		else {value=text;}
		menu.options[menu.options.length]=new Option(text,value);
	}

	var menu=document.createElement("select");
	menu.setAttribute("size",1);
	menu.setAttribute("id",id);
	add(title);

	menu.onchange=function(){
		var e = document.getElementById('editform');
		var cv=action[menu.options[menu.selectedIndex].value];
		if(!cv){return;}
		insertTags(cv[0], cv[2],cv[1]);
		e.wpSummary.value += cv[3];
		e.wpMinoredit.checked = cv[4];
		menu.selectedIndex=0;
		if(typeof cv[5]=="function"){cv[5]();}
	}
	
	var listTools=document.getElementById('dropdownListEditTools');
	if(listTools){listTools.appendChild(menu);}
	else{document.getElementById('toolbar').appendChild(menu);}
	return {'id':id,'element':menu,'add':add};
}

 if(!window.customSignature){var customSignature='--~~\~~';}// Enable Custom Signature
$(function(){
	var mode;
	if(/^Wikipedia:削除依頼\//i.test(wgPageName)) {mode = 'vfd';}
        else if(/^Wikipedia:投稿ブロック依頼\//i.test(wgPageName)) {mode = 'block';}
	else {return false;}

	var menu=createDropdownMenu('削除/ブロック対処',"reqInsertSel" );
	if(!menu){return;}
	var txtarea = document.editform.wpTextbox1;
	var regdel=/<delhide><\/delhide>/;
	var reg=/(^|\n)===[^=]+=== *\n|$/g;
	
	function addSectDel(text,value,pre,post,summary,min){
		menu.add(
			text,
			value,
			'<delhide>',
			'',
			"</delhide>",
			summary,
			min,
			function(){
				var text=txtarea.value;
				var scrollTop = txtarea.scrollTop;
				if(regdel.test(text)){
					reg.lastIndex=0;
					var item= reg.exec(text);
					var lastIndex=reg.lastIndex;
					var newtext,secttext,len;
					while ((item = reg.exec(text))&&(len=item.index-lastIndex)){
						secttext=text.substr(lastIndex,len);
						if(regdel.test(secttext)){
							newtext=text.substring(0, lastIndex)+pre+secttext.replace(regdel,'')+post+text.substr(item.index);
							break;
						}
						lastIndex=reg.lastIndex;
					}
					txtarea.value=newtext.replace(regdel,'');
				} else {
					txtarea.value=text.replace(/<delhide>/g,pre).replace(/<\/delhide>/g,"\n" + post);
				}
				txtarea.scrollTop = scrollTop;
			}
		);
	}
	if (mode=='vfd'){
	addSectDel('削除',
		"vfdDeleted",
		"{\{subst:vfd top|削除}\}"+customSignature+"\n----",
		"{\{subst:vfd bottom}\}",
		"対処・削除",
		false
	);
	addSectDel('存続',
		"vfdKept",
		"{\{subst:vfd top|存続}\}"+customSignature+"\n----",
		"{\{subst:vfd bottom}\}",
		"終了・存続",
		false
	);
	addSectDel('確認',
		"vfdConfirmed",
		"{\{subst:vfd top pdeleted}\}\n----",
		"***(確認)"+customSignature+"{\{subst:vfd bottom}\}",
		"確認",
		false
	);
	addSectDel('top&amp;bottom 削除',
		"vfdDeleted2",
		"{\{subst:vfd top deleted}\}\n----",
		"{\{subst:vfd bottom}\}",
		"t&b 削除",
		true
	);
	addSectDel('top&amp;bottom 存続',
		"vfdKept2",
		"{\{subst:vfd top kept}\}\n----",
		"{\{subst:vfd bottom}\}",
		"t&b 存続",
		true
	);
      }
      else if(mode=='block'){
	addSectDel('ブロック',
		"rfbBlocked",
		"{\{subst:rfb top|ブロック}\}"+customSignature+"\n----",
		"{\{subst:rfb bottom}\}",
		"ブロック",
		false
	);
	addSectDel('ブロックせず',
		"rfbKept",
		"{\{subst:rfb top|ブロックせず}\}"+customSignature+"\n----",
		"{\{subst:rfb bottom}\}",
		"ブロックせず",
		false
	);
	addSectDel('失効',
		"rfbLapsed",
		"{\{subst:rfb top|自動失効}\}"+customSignature+"\n----",
		"{\{subst:rfb bottom}\}",
		"失効",
		false
	);
     }
});