利用者:島田「にかい」/common.js

< 利用者:島田「にかい」
2021年11月4日 (木) 10:13時点における>島田「にかい」による版

注意: 保存後、変更を確認するにはブラウザーのキャッシュを消去する必要がある場合があります。

  • Firefox / Safari: Shift を押しながら 再読み込み をクリックするか、Ctrl-F5 または Ctrl-R を押してください (Mac では ⌘-R)
  • Google Chrome: Ctrl-Shift-R を押してください (Mac では ⌘-Shift-R)
  • Internet Explorer / Microsoft Edge: Ctrl を押しながら 最新の情報に更新 をクリックするか、Ctrl-F5 を押してください
  • Opera: Ctrl-F5を押してください
// ページ名の左に保護状態を表示する
$(function()
{
    // 編集状態の規定値
    var editptext = '無';
    var moveptext = '無';
    var editpcolor = 'cccccc';
    var editpcolor = 'cccccc';
    var protected = false;
    var wgRestrictionMove = mw.config.get( 'wgRestrictionMove', [] );
    var wgRestrictionEdit = mw.config.get('wgRestrictionEdit', []);

    // 編集保護状態
    switch(wgRestrictionEdit[0])
    {
        // 半保護
        case 'autoconfirmed':
            editptext = '半';
            editpcolor = 'ffff55';
            protected = true;
            break;
        
        // 全保護
        case 'sysop':
            editptext = '全';
            editpcolor = 'ff5555';
            protected = true;
            break;
    }

    // 移動保護状態
    switch(wgRestrictionMove[0])
    {
        // 半保護
        case 'autoconfirmed':
            moveptext = '半';
            movepcolor = 'ffff55';
            protected = true;
            break;

        // 全保護
        case 'sysop':
            moveptext = '全';
            movepcolor = 'ff5555';
            protected = true;
            break;
    }


    // 保護されていれば
    if(protected)
    {

    // 表生成
    var table = document.createElement('table');

    // class, id およびスタイルを設定
    table.setAttribute("class", "noprint");
    table.setAttribute("id", "protectionStatus");
    table.setAttribute("style", "font-size: 45%; float: left; line-height: 60%;");
    table.setAttribute("cellspacing", 0);

    // 中身を生成
    table.innerHTML = '<tbody><tr style=\"background-color: #'
    + editpcolor
    + '\" id=\"LWeditprtected\"><th style="padding: 4px; font-weight: normal;\">編集</th><td style=\"padding: 4px;\">'
     + editptext
     + '</td></tr><tr style=\"background-color: #'
    + movepcolor
    + '\" id=\"LWmoveprtected\"><th style=\"padding: 4px; font-weight: normal;\">移動</th><td style=\"padding: 4px;\">'
    + moveptext
    + '</td></tr></tbody></table>';


    // ページ名<h1>取得
    var firstHeading = document.getElementById("firstHeading");
    
    // ページ名の左に表を表示
    firstHeading.insertBefore(table, firstHeading.firstNode);
    }
});