利用者:Alexsh/vfd.js
表示
お知らせ: 保存した後、ブラウザのキャッシュをクリアしてページを再読み込みする必要があります。
多くの Windows や Linux のブラウザ
- Ctrl を押しながら F5 を押す。
Mac における Safari
Mac における Chrome や Firefox
- ⌘ 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&bottom 削除',
"vfdDeleted2",
"{\{subst:vfd top deleted}\}\n----",
"{\{subst:vfd bottom}\}",
"t&b 削除",
true
);
addSectDel('top&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
);
}
});