LLWiki正在建设中,欢迎加入我们

“MediaWiki:Gadget-MobileCategories.js”的版本间差异

来自LLWiki
跳转到导航 跳转到搜索
第11行: 第11行:
const showhiddencats = mw.user.options.get('showhiddencats');
const showhiddencats = mw.user.options.get('showhiddencats');


var wgCategories = mw.config.get( 'wgCategories' ),
var wgCategories = mw.config.get( 'wgConvertedCategories' ),
categories = wgCategories.normal,
categories = wgCategories.normal,
hiddenCats = wgCategories.hidden,
hiddenCats = wgCategories.hidden,

2021年10月9日 (六) 04:17的版本

/**
 * @OriginalVersion: [[wikipedia:mediawiki:gadget-MobileCategories.js]]
 * @EditedBy: [[User:Bhsd]]
 */
$(function() {
	if (mw.config.get( 'skin' ) == 'vector' || mw.config.get( 'wgAction' ) != 'view') {
		window.MobileCategoriesComplete = true;
		return;
	}

	const showhiddencats = mw.user.options.get('showhiddencats');

	var wgCategories = mw.config.get( 'wgConvertedCategories' ),
		categories = wgCategories.normal,
		hiddenCats = wgCategories.hidden,
		allCats = showhiddencats ? categories.concat( hiddenCats ) : categories;
	
	if ( allCats.length === 0 ) {
		window.MobileCategoriesComplete = true;
		return;
	}
	
	function categoryHtmlGenerator(array) {
		return $( '<ul>', {html: array.map(function(cat) {
			return $('<a>', {href: mw.util.getUrl( 'Category:'+cat ), title: 'Category:'+cat, text: cat})
				.wrap( '<li>' ).parent();
		})});
	}

	var normalCatlinks, hiddenCatlinks;
	if (categories.length) {
		normalCatlinks = $( '<div>' )
			.attr( 'id', 'mw-normal-catlinks' )
			.addClass('mw-normal-catlinks')
			.append( categoryHtmlGenerator( categories ) )
			.prepend( '<a href="/zh/Special:Categories" title="Special:页面分类">' + mw.message( 'pagecategories' ).escaped() + '</a>' + mw.message( 'colon-separator' ).escaped() );
	}
	if (showhiddencats && hiddenCats.length) {
		hiddenCatlinks = $( '<div>' )
			.attr( 'id', 'mw-hidden-catlinks' )
			.addClass(['mw-hidden-catlinks', 'mw-hidden-cats-user-shown'])
			.append( categoryHtmlGenerator( hiddenCats ) )
			.prepend( wgULS("隐藏分类", "隱藏分類") + mw.message( 'colon-separator' ).escaped() );
	}
	var catlinks = $( '<div>' )
		.addClass( 'catlinks' )
		.attr( 'id', 'catlinks' )
		.data( 'mw', 'interface' );
	if (normalCatlinks) { catlinks.append(normalCatlinks); }
	if (hiddenCatlinks) { catlinks.append(hiddenCatlinks); }
	$('.printfooter').after(catlinks);
	window.MobileCategoriesComplete = true;
	mw.hook( 'wikipage.categories' ).fire(catlinks);
} );