User:逆襲的天邪鬼/Twinkle-lzh/twinkleclose.js: Difference between revisions

no edit summary
No edit summary
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 27:
};
 
// 把section序号直接标在h1、h2和h3上以免在用某些编辑器时不正常
$('h1:has(.mw-headline),h2:has(.mw-headline),h3:has(.mw-headline)', '#bodyContent').each(function (index, current) {
current.setAttribute('data-section', index + 1);
});
 
var selector = ':has(.mw-headline a:only-of-type):not(:has(+ div.NavFramediscussion-archived))';
var titles = $('#bodyContent').find('h2' + selector + ':not(:has(+ p + h3)), h3' + selector); // really needs to work on
 
Line 38:
var delLink = document.createElement('a');
delLink.appendChild( spanTag( 'Black', '[' ) );
delLink.appendChild( spanTag( 'Red', '關閉討論結案' ) );
delLink.appendChild( spanTag( 'Black', ']' ) );
delNode.appendChild(delLink);
Line 74:
},
'重複請求': {
label: '重複提出請求,無效',
action: 'keep'
},
'尋無此面不存在': {
label: '模板尋無此面不存在,無效',
action: 'keep'
},
Line 87:
action: 'keep'
},
'留': {
label: '留',
action: 'keep'
},
'暫時保留': {
label: '暫時保留',
action: 'keep'
},
Line 98:
'刪': {
'刪': {
label: '刪',
action: 'del',
selected: true
Line 269:
var page = new Morebits.wiki.page( params.title, "刪除頁面" );
 
page.setEditSummary( '議通過:[[' + mw.config.get('wgPageName') + ']]' + Twinkle.getPref('deletionSummaryAd') );
page.deletePage(function() {
page.getStatusElement().info("完成");
Line 286:
var text = pageobj.getPageText();
var params = pageobj.getCallbackParameters();
 
/*
var pagetitle = mw.Title.newFromText(params.title);
if (pagetitle.getNamespaceId() % 2 === 0) {
var talkpagetitle = new mw.Title(pagetitle.getMainText(), pagetitle.getNamespaceId() + 1);
var talkpage = new Morebits.wiki.page(talkpagetitle.toString(), '標記討論頁');
var vfdkept = '{{vfd-kept|' + mw.config.get('wgPageName').split('/').slice(2).join('/') + '|' + params.messageData.label + '}}\n';
talkpage.setPrependText(vfdkept);
talkpage.setEditSummary('[[' + mw.config.get('wgPageName') + ']]:' + params.messageData.label + Twinkle.getPref('summaryAd'));
talkpage.setCreateOption('recreate');
talkpage.prepend();
}
*/
 
var newtext = text.replace(/<noinclude>\s*\{\{(afd|議刪)\|[^{}]*?\}\}\s*<\/noinclude>\s*/gi, '');
newtext = newtext.replace(/\{\{(afd|議刪)\|[^{}]*?\}\}\s*/gi, '');
 
if (params.code !== 'tk') {
newtext = newtext.replace(/\{\{(notability)\|[^{}]*?\}\}\n*/gi, '');
newtext = newtext.replace(/\{\{(substub)\|[^{}]*?\}\}\n*/gi, '');
}
if (newtext === text) {
statelem.warn("未找到議刪模板,可能已經移除");
Line 311 ⟶ 295:
return;
}
var editsummary = '議刪結案:[[' + mw.config.get('wgPageName') + ']]';
 
pageobj.setPageText(newtext);
Line 334 ⟶ 318:
var params = pageobj.getCallbackParameters();
 
if (text.indexOf('{{delh結案') !== -1) {
statelem.error( "討論已經關閉" );
return;
}
 
var sbeginsplit = text.indexOfsplit('<section begin=backlog />\n') !== -1;
var send = text.indexOf('<section end=backlog />') !== -1;
text = text.replace('\n<section begin=backlog />', '');
text = text.replace('\n<section end=backlog />', '');
 
var bartext = text.split([0] + '\n{{結案----\n首|') + params.code;
var split = bar[0].split('\n');
 
text = split[0] + '\n{{delh|' + params.code + '}}\n' + split.slice(1).join('\n');
text += '\n----\n: ' + params.messageData.label;
if (params.remark) {
text += ':' + params.remark;
} else {
else {
text += '。';
}
text += '--~~~~\n{{delf}}';
 
text = split[0] + '\n{{delh|' + params.codetext + '--~~~~}}\n' + split.slice(1).join('\n') + '\n{{結案-尾}}';
if (bar[1]) {
text += '\n----\n' + bar.slice(1).join('\n----\n');
}
if (send) {
text += '\n<section end=backlog />';
}
if (sbegin) {
// guaranteed to be at tne end?
text += '\n<section begin=backlog />';
}
 
pageobj.setPageText(text);
Line 378 ⟶ 344:
$('strong a[href=#' + params.section + '] span').css('color', 'grey');
}
};
 
})(jQuery);