MediaWiki:Gadget-Topicon.js: diferenças entre revisões

Origem: Wikipédia, a enciclopédia livre.
Conteúdo apagado Conteúdo adicionado
Simplificação, conforme phab:T133289#3860189
Não adicione um 2º indicador se a página já tiver um indicador de proteção padrão (o id é definido na variável padlockIndicatorNames do Módulo:Protection banner/config)
Linha 1: Linha 1:
/**
/**
* Adiciona ícones como os da [[Predefinição:Protegida]] e da [[Predefinição:Protegida-ip]]
* Adiciona ícones como os da [[Predefinição:Protegida]] e da [[Predefinição:Protegida-ip]]
* às páginas protegidas em que a ação 'edit' está restrita a determinados grupos de usuários
* (TODO: implementar o mesmo para a ação 'move', com wgRestrictionMove)
* @see: [[phab:T12347]]
* @see: [[phab:T12347]]
* @author: [[:pt:User:Rei-artur]]
* @author: [[:pt:User:Rei-artur]]
Linha 48: Linha 50:
) {
) {
$( function() {
$( function() {
if ( !$( '#mw-indicator-pp-default' ).length ) {
addTopIcon( mw.config.get( 'wgRestrictionEdit' )[ 0 ] );
addTopIcon( mw.config.get( 'wgRestrictionEdit' )[ 0 ] );
}
} );
} );
}
}

Revisão das 11h33min de 2 de janeiro de 2018

/**
 * Adiciona ícones como os da [[Predefinição:Protegida]] e da [[Predefinição:Protegida-ip]]
 * às páginas protegidas em que a ação 'edit' está restrita a determinados grupos de usuários
 * (TODO: implementar o mesmo para a ação 'move', com wgRestrictionMove)
 * @see: [[phab:T12347]]
 * @author: [[:pt:User:Rei-artur]]
 */
/*jslint browser: true, white: true, todo: true */
/*global jQuery, mediaWiki */
( function ( mw, $ ) {
'use strict';

// TODO: Mover para o domínio MediaWiki quando Gadgets 2.0 estiver disponível
mw.messages.set( {
	'top-icon-autoconfirmed-alt': 'Página semiprotegida',
	'top-icon-autoconfirmed-title': 'Esta página só pode ser editada por usuários com contas autoconfirmadas',
	'top-icon-autoreviewer-alt': 'Página semiprotegida',
	'top-icon-autoreviewer-title': 'Esta página só pode ser editada por autorrevisores',
	'top-icon-sysop-alt': 'Página protegida',
	'top-icon-sysop-title': 'Esta página só pode ser editada por administradores'
} );

function addTopIcon( level ) {
	var base = '//upload.wikimedia.org/wikipedia/commons/',
		img = {
			sysop: 'thumb/f/ff/Crystal_Clear_action_lock.png/20px-Crystal_Clear_action_lock.png',
			autoconfirmed: 'thumb/6/64/Crystal_Clear_action_lock3.png/20px-Crystal_Clear_action_lock3.png',
			autoreviewer: 'thumb/4/4c/Crystal_Clear_action_lock_-_silver.png/20px-Crystal_Clear_action_lock_-_silver.png'
		};

	if( img[ level ] ) {
		$( '.mw-indicators' ).append(
			$( '<a>' ).prop( {
				href: mw.util.getUrl( 'Wikipédia:Página protegida' ),
				title: mw.msg( 'top-icon-' + level + '-title' )
			} ).append(
				$( '<img width="25" height="25">' ).prop( {
					alt: mw.msg( 'top-icon-' + level + '-alt' ),
					src: base + img[ level ]
				} )
			)
		);
	}
}

if ( mw.config.get( 'wgAction' ) === 'view' &&
	!mw.config.get( 'wgCanonicalSpecialPageName' ) &&
	mw.config.get( 'wgRestrictionEdit', [] ).length &&
	!mw.config.get( 'wgIsMainPage' )
) {
	$( function() {
		if ( !$( '#mw-indicator-pp-default' ).length ) {
			addTopIcon( mw.config.get( 'wgRestrictionEdit' )[ 0 ] );
		}
	} );
}

}( mediaWiki, jQuery ) );