Открыть меню
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

MediaWiki:Gadget-common-special-watchlist.js

Страница интерфейса MediaWiki

Возможно, этот код документирован.

/**
 * Ввиду маленького размера не резон тратить на загрузку этого гаджета отдельный запрос; он грузится
 * зарегистрированным участникам безусловно (в силу «|default» в [[MediaWiki:Gadgets-definition]]).
 * Если код вырастет до нескольких килобайт, можно делегировать его загрузку [[MediaWiki:Common.js]]
 * и загружать по условию.
 */
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Watchlist' ) {
	runAsEarlyAsPossible( function () {
		$( '.watchlist-msg' ).each( function() {
	 		if ( !this.id ) return;
			var hideId = 'hide- ' + this.id;

			if ( $.cookie( hideId ) ) {
				$( this ).remove();
			} else {
				$( '<span>' )
					.attr( 'title', 'Спрятать это сообщение на неделю' )
					.addClass( 'watchlist-msg-close' )
					.text( '[x]' )
					.click( function () {
						$.cookie( hideId, 'y', { expires: 7, path: '/' } );
						$( this ).parent().remove();
					} )
					.prependTo( this );
			}
		} );
		
		mw.hook( 'structuredChangeFilters.ui.initialized' ).add(function () {
			$( '.watchlist-msg' ).prependTo( $( '.mw-rcfilters-ui-watchlistTopSectionWidget-editWatchlistButton' ) );
			$( '.mw-rcfilters-ui-watchlistTopSectionWidget-editWatchlistButton' )
				.removeClass( 'mw-rcfilters-ui-watchlistTopSectionWidget-editWatchlistButton' )
				.find( '.oo-ui-buttonWidget' )
				.wrap( '<div>' )
				.parent()
				.addClass( 'mw-rcfilters-ui-watchlistTopSectionWidget-editWatchlistButton' )
				.appendTo( '.mw-rcfilters-ui-watchlistTopSectionWidget-watchlistDetails' );
		} );
	}, $( '.watchlist-msg' ) );  // Не «, mw.hook( 'wikipage.content' ).add», так как это событие
	                             // файрит скрипт автоматического обновления СН, не трогающий
	                             // верхнюю часть.
}
Cookie-файлы помогают нам предоставлять наши услуги. Используя наши сервисы, вы соглашаетесь с использованием cookie-файлов.