コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

利用者:Mizusumashi/Script/SkinView.js

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

多くの WindowsLinux のブラウザ

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

Mac における Safari

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

Mac における ChromeFirefox

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

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

// This script is under public domain, and comes with ABSOLUTELY NO WARRANTY.
// You can use/modify/redistribute without any permission.

jQuery( document ).ready( function ( $ ){
	var header = '外装切り替え';
	var action = mw.config.get( 'wgAction' );
	var skin = mw.util.getParamValue( 'useskin' ) || mw.user.options.get( 'skin' );

	function Switch( id, name ){
		if(  skin == id  ){
			name = '<strong>' + name + '</strong>';
		}
		var uri = mw.config.get( 'wgScript' )
				+ '?title=' + mw.util.rawurlencode( mw.config.get( 'wgPageName' ) )
				+ '&action=' + action
				+ '&useskin=' + id;

		this.a = '<a href="' + uri + '">' + name + '</a>';
		this.li = '<li id="' + 'skin-switch-' + id + '">' + this.a + '</li>';
	}

	var switchs = [
		new Switch( 'standard', 'クラシック' ),
		new Switch( 'cologneblue', 'ケルンブルー' ),
		new Switch( 'simple', 'シンプル' ),
		new Switch( 'chick', 'チック' ),
		new Switch( 'nostalgia', 'ノスタルジア ' ),
		new Switch( 'vector', 'ベクター' ),
		new Switch( 'myskin', 'マイスキン' ),
		new Switch( 'modern', 'モダン' ),
		new Switch( 'monobook', 'モノブック' )
	];

	function anchors(){
		var html = '';
		for( var i = 0; i < switchs.length; i++ ){
			html += switchs[i].a + '<br />';
		}
		return html;
	}

	function anchors2( $target ){
		var html = '';
		for( var i = 0; i < switchs.length; i++ ){
			if( i != 0 ){
				html += ' | ';
			}
			html += switchs[i].a;
		}
		return html;
	}

	function panel( pc, bc ){
		var html = '<div id="p-skin-switch" class="' + pc + '"><h5>'
				+ header + '</h5><div class="' + bc + '"><ul>';

		for( var i = 0; i < switchs.length; i++ ){
			html += switchs[i].li;
		}

		return html + '</ul></div></div>';
	}

	function skinView(){
		if( action == 'edit' || action == 'submit' ){
			return;
		}

		switch( skin ){
			case 'vector':
				$( '#p-tb' ).after( panel( 'portal collapsed', 'body' ) );
				break;
			case 'simple':
			case 'chick':
			case 'myskin':
			case 'monobook':
			case 'modern':
				$( '#p-tb' ).after( panel( 'portlet', 'pBody' ) );
				break;
			case 'standard':
				$( '#quickbar' ).append( '<hr class="sep" />' + anchors() );
				break;
			case 'cologneblue':
				$( '#quickbar' ).append( '<h6>' + header + '</h6>' + anchors() );
				break;
			case 'nostalgia':
				$( '#footer' ).before( '<div id="skin-switch"><hr />' + anchors2() + '</div>' );
				break;
		}
	}

	skinView();
});