「利用者:Yasusushi/common.js」の版間の差分

提供:エケペディア
ナビゲーションに移動 検索に移動
(カテゴリごとにeditintroを設定するテスト)
 
(よーわからん)
 
(同じ利用者による、間の14版が非表示)
1行目: 1行目:
/* カテゴリごとにeditintroを設定する */
window.CATEGORY_EDITINTRO_TABLE = {
'シングル': 'テンプレート:シングルページ' ,
'メンバー': 'テンプレート:メンバーページ'
};
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;
}
}
}
});
}

2016年6月12日 (日) 12:02時点における最新版