6,514
回編集
(カテゴリごとにeditintroを設定するコードを追加(まずはシングルページに適用)) |
|||
83行目: | 83行目: | ||
$('#wpSave').attr('disabled', 'disabled').val('投稿前にプレビューで確認してください'); | $('#wpSave').attr('disabled', 'disabled').val('投稿前にプレビューで確認してください'); | ||
$('#wpPreview').css('font-weight', 'bold'); | $('#wpPreview').css('font-weight', 'bold'); | ||
} | |||
/* カテゴリごとにeditintroを設定する */ | |||
window.CATEGORY_EDITINTRO_TABLE = { | |||
'シングル': 'ヘルプ:シングルページのスタイル/editintro' , | |||
}; | |||
window.addEditIntro = function(templateName) { | |||
var editURI = mw.config.get('wgScript') + '?title=' + encodeTitle(mw.config.get('wgPageName')) + '&action=edit'; | |||
var searchIds = { | |||
'cologneblue' : ['quickbar', 'footer', 'article'], | |||
'vector' : ['ca-edit', 'bodyContent'], | |||
'modern' : ['ca-edit', 'mw_contentholder'], | |||
'monobook' : ['ca-edit', 'bodyContent'] | |||
}; | |||
var ids = searchIds[skin] || searchIds['monobook']; | |||
for(var i = 0; i < ids.length; i++) { | |||
var el = document.getElementById(ids[i]); | |||
if(!el) continue; | |||
var aElements = el.getElementsByTagName('a'); | |||
for(var j = 0; j < aElements.length; j++) { | |||
if(aElements[j].href.indexOf(editURI) >= 0) { | |||
aElements[j].href += '&editintro=' + encodeTitle(templateName); | |||
} | |||
} | |||
} | |||
function encodeTitle(title) { | |||
return encodeURIComponent(title.replace(/ /g, '_')).replace(/%2F/gi, '/').replace(/%3A/gi, ':'); | |||
} | |||
}; | |||
if (mw.config.get('wgNamespaceNumber') == 0) { | |||
$(function(){ | |||
var catIds = ['mw-normal-catlinks', 'mw-hidden-catlinks']; | |||
for(var i = 0; i < catIds.length; i++) { | |||
var catContainer = document.getElementById(catIds[i]); | |||
if(!catContainer) continue; | |||
var cats = catContainer.getElementsByTagName('a'); | |||
for(var j = 0; j < cats.length; j++) { | |||
var ei; | |||
if(ei = CATEGORY_EDITINTRO_TABLE[cats[j].innerHTML]) { | |||
addEditIntro(ei); | |||
return; | |||
} | |||
} | |||
} | |||
}); | |||
} | } |