Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
// [[File:User:He7d3r/global.js]] (workaround for [[phab:T35355]])
//{ {subst:User:He7d3r/Tools.js}}
/*jshint browser: true, camelcase: true, curly: true, eqeqeq: true, immed: true, latedef: true, newcap: true, noarg: true, noempty: true, nonew: true, quotmark: true, undef: true, unused: true, strict: true, laxbreak: true, trailing: true, maxlen: 120, evil: true, onevar: true */
/*global jQuery, mediaWiki */
( function ( mw, $ ) {
'use strict';

mw.log( 'Started global.js.' );
mw.loader.using( [ 'mediawiki.util', 'mediawiki.cookie' ], function(){

var enableMyScripts = mw.cookie.get( 'enable-my-scripts' ) !== 'false',
	// enableLocalScripts,
/*
	// Modul: revisionjumper.js Ermöglicht das Springen in Diffs und Permalinks
	// getoldid = true,
	disabledisplayonpermalink = true,
	disabledisplayondiff = true,
	displayonhistory = true,
	displayonview = false,
*/
	isEditOrSubmit = $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ]) !== -1;
	// isPtWb = $.inArray( mw.config.get( 'wgSiteName' ), [ 'Wikilivros', 'WikiLocal' ]) !== -1;

$( function () {
    var	$portlet,
	label = {
		'true': 'Disable my scripts',
		'false': 'Enable my scripts'
	},
	cookieOptions = {
		expires: 86400, // 1 day
		path: '/'
	};
	if ( $('#ca-toggle-js').length ) {
		return;
	}
	$portlet = $( mw.util.addPortletLink(
		'p-tb',
		'#',
		label[ enableMyScripts ],
		'ca-toggle-js',
		'Turn my scripts on or off and reload the page'
	) );
	$portlet.click( function (e) {
		// prevent '#' from appearing in URL bar
		e.preventDefault();
		if ( enableMyScripts ) {
			mw.cookie.set( 'enable-my-scripts', 'false', cookieOptions );
		} else {
			mw.cookie.set( 'enable-my-scripts', null, cookieOptions );
		}
		// Reloads the document (from the cache)
		document.location.reload( false );
	} );
} );
if ( enableMyScripts ) {
/* Begin user scripts */

var wget = function ( wikilink ) {
	var host,
	// '[[proj:lang:Ns:Page.js]]' --> 'proj:lang:Ns:Page.js'
	link = wikilink.replace( /^\[\[|\]\]$/g, '' ),
	// 'proj:lang:Ns:Page.js' --> [ 'proj', 'lang', 'Ns', 'Page.js' ]
	parts = link.split( ':' ),
	ctype = link.substr(-4) === '.css' ? 'text/css' : 'text/javascript',
	page = parts.slice(-2).join( ':' ),
	proj = {
		// language projects
		w: 'wikipedia',
		b: 'wikibooks',
		s: 'wikisource',
		wikt: 'wiktionary',
		v: 'wikiversity',
		voy: 'wikivoyage',
		q: 'wikiquote',
		// multilingual projects
		c: 'commons.wikimedia',
		mw: 'www.mediawiki',
		d: 'www.wikidata',
		m: 'meta.wikimedia',
		species: 'species.wikimedia'
	};
if ( /^(https?:)?\/\//.test( link ) ) {
	if ( ctype === 'text/css' ) {
		mw.loader.load( link, ctype );
	} else {
		$.ajax(
			link,
			{
				dataType:'script',
				cache:true,
				timeout: 5000
			}
		);
	}
	return;
} else if ( parts.length > 3 ) {
	// [[proj:lang:Ns:Page.js]]
	host = parts[1] + '.' + proj[ parts[0] ] + '.org';
} else if ( parts.length === 3 ) {
	// [[proj:Ns:Page.js]]
	host = proj[ parts[0] ] + '.org';
} else {
	mw.log.error( 'wget > ' + link + ' not found' );
}
mw.loader.load(
	'https://' + host + '/w/index.php?title=' +
	mw.util.wikiUrlencode( page ) + '&action=raw&ctype=' + ctype,
	ctype
);
};

/*jshint camelcase:false */
window.EditTools_initial_subset = 1;
/*jshint camelcase:true */
// Decodificação de URLs
window.urlDecoderKey = 'c'; // Accesskey
window.urlDecoderIntLinks = true; // Also decode existing [[internal links]] in selected text

// Notify about warnings and JS errors
mw.trackSubscribe( 'mw.deprecate', function ( topic, err ) {
	if ( err.indexOf( 'mw.toolbar' ) !== -1 && mw.config.get( 'wgVersion' ).indexOf( '1.32' ) !== -1 ){
		return;
	}
	mw.notify( JSON.stringify( err ), { title: topic } );
} );
mw.trackSubscribe( 'global.error', function ( topic, err ) {
	mw.notify( JSON.stringify( err, null, '\t' ), { title: topic } );
} );

/**
 * User-defined for [[w:en:User:js/urldecoder]], transforms URL into {{fullurl:...}} on 2nd click
 * @return string A valid target for an [external link] (if it matches /^(https?:\/\/|\{\{)/) or of an [[internal link]]
 */
window.urlDecoderCustom = function ( url ) {
	var	path = mw.config.get( 'wgServer' ) + mw.config.get( 'wgScript' ) + '?title=',
		pos = url.indexOf( path ),
		result = null;
	if ( pos !== -1 ) {
		result = url.substring( pos + path.length ).match( /^([^&]+)&?(.*)$/ );
	} else {
		path = mw.config.get( 'wgServer' ) + '/wiki/';
		pos = url.indexOf( path );
		if ( pos !== -1 ) {
			result = url.substring( pos + path.length ).match( /^([^\?]+)\??(.*)$/ );
		} else {
			return url;
		}
	}
	if ( mw.config.get( 'wgPageName' ) === result[1] ) {
		result[1] = '{{FULLPAGENAME}}';
	}
	// Note: {{fullurl:A#B|oldid=198639}} is equivalent to {{fullurl:A|oldid=198639#B}}
	return '{'+'{fullurl:' + result[1].replace( /%20|_/g, ' ' ) +
		( result[2] ? '|' + result[2] : '' ) + '}}';
};

/* Quality checker customizations */
// mw.config.set( 'qcAutoCheck', true );

/* Ajax Preview customizations */
/*window.ajaxPreviewExec = function() {
	// Code to execute after each preview update
	mw.loader.using( [
		'jquery.tablesorter',
		'jquery.makeCollapsible'
	], function(){
		$( 'table.sortable' ).tablesorter();
		$( '.mw-collapsible' ).makeCollapsible();
	} );
};*/

//
if ( isEditOrSubmit ) {
	wget( 'https://tools-static.wmflabs.org/meta/scripts/i18n/pt.js' );
}
// [[File:User:He7d3r/Tools/TemplateScript.js]] (workaround for [[phab:T35355]])
/**
 * TemplateScript
 * Adds a menu of configurable templates and scripts to the sidebar
 *
 * @author: [[m:user:Pathoschild]] ([[m:User:Pathoschild/Scripts/TemplateScript]])
 * @update-token: [[File:pathoschild/templatescript.js]]
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/> (this configuration file)
 */
// <nowiki>
(function(e,n){"use strict";function i(){var e;T&&(e=n("#wpDiffLive"),e.length||(e=n("#wpDiff")),e.click())}function a(e,i,a,s){var o,r,t,l=n("#wpTextbox1");for(l.textSelection("getSelection")||l.textSelection("setSelection",{start:0,end:l.val().length}),o=0,r=i.length;r>o;o++)t=i[o],e.replaceSelection(function(e){return e.replace(t.find,t.replace)});if(e.get()!==v&&(T=!0,a))switch(s){case"before":e.forField("#wpSummary").prepend(a);break;case"replace":e.setEditSummary(a);break;default:e.appendEditSummary(a)}}function s(e){var n,i,a=0,s=[],o={};if(Array.isArray(e)){for(n=0,i=e.length;i>n;n++)o[e[n].toLowerCase()]!==1?(s=s.concat(e[n]),o[e[n].toLowerCase()]=1):a++;return a>0?alert("Foram removidas "+a+" linhas duplicadas"):alert("Não havia linhas duplicadas"),s}}function o(e){var n={seeAlso:"V(?:eja|er|ide|Consultar)[_ ](?:tamb[ée]m|mais|ainda)|(?:Tópico|Artigo|Página|Assunto)s[_ ](?:relacionad|divers)[oa]s|(?:Li(?:gaçõe|nk)|Referência)s[_ ]Intern[ao]s",biblio:"Bibliografia",extLinks:"(?:Apontadores|Atalhos?|Elos?|Enlaces?|Lin(?:k|que)s?|Vínculos?)(?: externos?)?|(?:Ligaç(?:ão|ões)|Páginas?|Referências?)(?: externas?)|(?:Ligaç(?:ão|ões)|Links|Recursos)(?: para o exterior| exterior(?:es)?(?: [àa] Wikip[ée]dia)?)?|S(?:ites|[íi]tios)|LE|Links? relacionados?|Páginas? da Internet|Weblinks?"};v=e.get(),R=[{find:RegExp("\\n==\\s*\\{\\{\\s*(?:"+n.seeAlso+")\\s*\\}\\}\\s*==","gi"),replace:"\n== Ver também =="},{find:RegExp("\\n==\\s*\\{\\{\\s*"+n.biblio+"\\s*\\}\\}\\s*==","gi"),replace:"\n== Bibliografia =="},{find:RegExp("\\n==\\s*\\{\\{\\s*(?:"+n.extLinks+")\\s*\\}\\}\\s*==","gi"),replace:"\n== Ligações externas =="}],a(e,R,"-[[Special:PermaLink/29330043|predef's obsoletas]]"),v=e.get(),R=[{find:RegExp("\\n==(\\s?)\\s*(?:"+n.seeAlso+")(\\s?)\\s*==","gi"),replace:"\n==$1Ver também$2=="},{find:RegExp("\\n==(\\s?)\\s*"+n.biblio+"(\\s?)\\s*==","gi"),replace:"\n==$1Bibliografia$2=="},{find:RegExp("\\n==(\\s?)\\s*(?:"+n.extLinks+")(\\s?)\\s*==","gi"),replace:"\n==$1Ligações externas$2=="}],a(e,R,"+[[WP:LE#Seções padrão|padronização das seções]]"),v=e.get(),R=[{find:/<!--+ *(?:Inserir categorias e interwikis apenas na página de DOC desta predefinição|(?:Please )?Add (this template's )?categories (?:and interwikis )?to the \/doc (?:sub)?page, (?:not here(?:!|, thanks)|thanks)) *--+>/gi,replace:"<!-- Inserir categorias apenas na documentação desta predefinição -->"},{find:/<!--+ *(?:POR FAVOR, ADICIONE CATEGORIAS (?:E INTERW[IÍ]KIS )?NO FINAL DESTA PÁGINA|EDIT TEMPLATE DOCUMENTATION BELOW THIS LINE|PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE) *--+>/gi,replace:"<!-- Categorias no final desta página e links para outros idiomas no Wikidata -->"},{find:/<!--+ *(?:CATEGORIAS (?:E INTERW[ÍI]KIS )?AQUI, OBRIGADO|CATEGORIES AND INTERWIKIS HERE, THANKS|ADICIONE CATEGORIAS ABAIXO DESTA LINHA|ADD CATEGORIES BELOW THIS LINE|Categorias e interwikis da predefinição) *--+>/gi,replace:"<!-- Categorias aqui e links para outros idiomas no Wikidata -->"},{find:/<!--+ *(?:ADD INTERWIKIS BELOW THIS LINE) *--+>\n/gi,replace:""}],a(e,R,"indique os outros idiomas no Wikidata")}function r(e){var n="(?:AliceBlue|AntiqueWhite|Aqua(?:marine)?|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue(?:Violet)?|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|Dark(?:Blue|Cyan|GoldenRod|Gray|Green|Grey|Khaki|Magenta|OliveGreen|orange|Orchid|Red|Salmon|SeaGreen|Slate(?:Blue|Gray|Grey)|Turquoise|Violet)|DeepPink|DeepSkyBlue|DimGray|DimGrey|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold(?:enRod)?|Gray|Green(?:Yellow)?|Grey|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender(?:Blush)?|LawnGreen|LemonChiffon|Light(?:Blue|Coral|Cyan|GoldenRodYellow|Gray|Green|Grey|Pink|Salmon|SeaGreen|SkyBlue|SlateGray|SlateGrey|SteelBlue|Yellow)|Lime(?:Green)?|Linen|Magenta|Maroon|Medium(?:AquaMarine|Blue|Orchid|Purple|SeaGreen|SlateBlue|SpringGreen|Turquoise|VioletRed)|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive(?:Drab)?|Orange(?:Red)?|Orchid|Pale(?:GoldenRod|Green|Turquoise|VioletRed)|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|Slate(?:Blue|Gray|Grey)|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Turquoise|Violet|Wheat|White(?:Smoke)?|Yellow(?:Green)?)",i="(?:[a-f0-9]{6}|[a-f0-9]{3})",s="(?:"+n+"|\\#?"+i+")",o="(\\s*\\[\\[)([^\\]]+)(\\]\\]\\s*)",r="(\\s*\\[\\[[^\\|]+\\|)([^\\]]+)(\\]\\]\\s*)";v=e.get(),R=[{find:RegExp("<font\\s+color\\s*=\\s*([\"']?)("+s+")\\1\\s*>"+o+"<\\/font>","gi"),replace:'$3$4|<span style="color: $2;">$4</span>$5'},{find:RegExp("<font\\s+color\\s*=\\s*([\"']?)("+s+")\\1\\s*>"+r+"<\\/font>","gi"),replace:'$3<span style="color: $2;">$4</span>$5'},{find:RegExp("<font\\s+color\\s*=\\s*([\"']?)("+s+")\\1\\s*>(.+?)<\\/font>","gi"),replace:'<span style="color: $2;">$3</span>'},{find:RegExp("<font\\s+color\\s*=\\s*([\"']?)("+s+")\\1\\s*face\\s*=\\s*([\"']?)([^\"'>]+?)\\3\\s*>(.+?)<\\/font>","gi"),replace:'<span style="color: $2; font-family: $4;">$5</span>'},{find:RegExp("<font\\s+color\\s*=\\s*([\"']?)("+s+")\\1\\s*face\\s*=\\s*([\"']?)([^\"'>]+?)\\3\\s*>"+o+"<\\/font>","gi"),replace:'$5$6|<span style="color: $2; font-family: $4;">$6</span>$7'},{find:RegExp("<font\\s+color\\s*=\\s*([\"']?)("+s+")\\1\\s*face\\s*=\\s*([\"']?)([^\"'>]+?)\\3\\s*>"+r+"<\\/font>","gi"),replace:'$5$6|<span style="color: $2; font-family: $4;">$6</span>$7'},{find:RegExp("<font\\s+face\\s*=\\s*([\"']?)([^\"'>]+?)\\1\\s*color\\s*=\\s*([\"']?)("+s+")\\3\\s*>(.+?)<\\/font>","gi"),replace:'<span style="font-family: $2; color: $4;">$5</span>'},{find:RegExp("<font\\s+face\\s*=\\s*([\"']?)([^\"'>]+?)\\1\\s*color\\s*=\\s*([\"']?)("+s+")\\3\\s*>(.+?)<\\/font>","gi"),replace:'$5$6|<span style="font-family: $2; color: $4;">$6</span>$7'},{find:RegExp("<font\\s+face\\s*=\\s*([\"']?)([^\"'>]+?)\\1\\s*color\\s*=\\s*([\"']?)("+s+")\\3\\s*>"+r+"<\\/font>","gi"),replace:'$5$6|<span style="font-family: $2; color: $4;">$6</span>$7'},{find:/<font\s+face\s*=\s*["']?([^"'>]+?)["']?\s*>(.+?)<\/font>/gi,replace:'<span style="font-family: $1;">$2</span>'},{find:/<font\s+face\s*=\s*["']?([^"'>]+?)["']?\s*color\s*=\s*["']?([^"']+?)["']?\s*size\s*=\s*["']?([^"']+?)["']?\s*>(.+?)<\/font>/g,replace:'<span style="font-family: $1; color: $2; font-size: 100%;">$4</span>'},{find:/<font\s+face\s*=\s*["']?([^"'>]+?)["']?\s*size\s*=\s*["']?([^"']+?)["']?\s*color\s*=\s*["']?([^"']+?)["']?\s*>(.+?)<\/font>/g,replace:'<span style="font-family: $1; font-size: 100%; color: $3;">$4</span>'},{find:/<font\s+color\s*=\s*["']?([^"']+?)["']?\s*face\s*=\s*["']?([^"'>]+?)["']?\s*size\s*=\s*["']?([^"']+?)["']?\s*>(.+?)<\/font>/g,replace:'<span style="color: $1; font-family: $2; font-size: 100%;">$4</span>'},{find:/<font\s+color\s*=\s*["']?([^"']+?)["']?\s*size\s*=\s*["']?([^"']+?)["']?\s*face\s*=\s*["']?([^"'>]+?)["']?\s*>(.+?)<\/font>/g,replace:'<span style="color: $1; font-size: 100%; font-family: $3;">$4</span>'},{find:/<font\s+size\s*=\s*["']?([^"']+?)["']?\s*face\s*=\s*["']?([^"'>]+?)["']?\s*color\s*=\s*["']?([^"']+?)["']?\s*>(.+?)<\/font>/g,replace:'<span style="font-size: 100%; font-family: $2; color: $3;">$4</span>'},{find:/<font\s+size\s*=\s*["']?([^"']+?)["']?\s*color\s*=\s*["']?([^"']+?)["']?\s*face\s*=\s*["']?([^"'>]+?)["']?\s*>(.+?)<\/font>/g,replace:'<span style="font-size: 100%; color: $2; font-family: $3;">$4</span>'},{find:/<source\s+(lang.+?>.+?)<\/source>/g,replace:"<syntaxhighlight $1</syntaxhighlight>"},{find:/<tt>(.+?)<\/tt>/g,replace:"<code>$1</code>"},{find:/<center>([\s\S]*?)<\/center>/g,replace:'<div style="text-align: center;">$1</div>'},{find:/<big>(.+?)<\/big>/g,replace:'<div style="font-size: larger;">$1</div>'},{find:/\n\|-([^|]*)bgcolor\s*=\s*["']?#([0-9a-f]{6}|[0-9a-f]{3})["']?\s*$/gim,replace:'\n|-$1style="background: #$2;"'},{find:/\n([|!][^|]*)width\s*=\s*["']?([^"'|]+)["']?\s*([^|]*)/g,replace:'\n$1style="width: $2;" $3'},{find:/(^|\n)\{\|\s*align\s*=\s*["']?center["']?\s*\n/g,replace:'$1{| style="margin: 0 auto;"\n'},{find:/(^|\n)\{\|\s*cellspacing\s*=\s*["']?0["']?\s*cellpadding\s*=\s*["']?0["']?\s*\n/g,replace:'$1{| style="border-spacing: 0; border-collapse: collapse;"\n'},{find:/(^|\n)\{\|\s*cellpadding\s*=\s*["']?([1-9]\d*)["']?\s*\n/g,replace:'$1{| style="border-spacing: $2px; border-collapse: separate;"\n'},{find:/\n([|!][^|]*)align\s*=\s*["']?\s*(center|left|right)[\t ]*["']?[\t ]*([^|]*)/g,replace:'\n$1style="text-align: $2;" $3'},{find:/\n([|!][^|]*)valign\s*=\s*["']?\s*(top|middle|bottom|baseline)[\t ]*["']?[\t ]*([^|]*)/g,replace:'\n$1style="vertical-align: $2;" $3'},{find:/\n([|!][^|\n]*)style\s*=\s*["']([^|"'\n]+);["']([^|\n]*)style\s*=\s*["']([^|"'\n]+);["']/g,replace:'\n$1style="$2;$4;"$3'}],a(e,R,"-código HTML obsoleto"),v!==e.get()&&(v=e.get(),a(e,{find:/#([0-9a-f])\1([0-9a-f])\2([0-9a-f])\3/g,replace:"#$1$2$3"},"+simplificação"))}function t(e){var n="[https:$1]",i=/\[http:(\/\/(?:(?:commons|meta|outreach|species|strategy|wikimania\d{4}|[a-z]{2,3})\.wikimedia|(?:wiki\.)?toolserver|www\.mediawiki|wikimediafoundation|wikisource).+?|\/\/(?:(?:[a-z]{2,3}|bat-smg|be-x-old|cbk-zam|fiu-vro|map-bms|minnan|nds-nl|roa-rup|roa-tara|simple|zh-(?:cfr|classical|min-nan|yue))\.(?:wiki(?:pedia|books|news|quote|source|versity)|wiktionary)).+?)\]/g;v=e.get(),R=[{find:i,replace:n},{find:/https:\/\/secure\.wikimedia\.org\/(wiki(?:pedia|books|news|quote|source|versity)|wiktionary)\/([a-z]{2,3}|meta)/g,replace:"https://$2.$1.org"}],a(e,R,"[[wmfblog:2015/06/12/securing-wikimedia-sites-with-https|https]]")}function l(n){var s=window.reOldSign;v=n.get(),e.loader.using("user.options",function(){a(n,[{find:s,replace:e.user.options.get("nickname")}],"Fixing links (my user account was renamed)"),i()})}function c(e){v=e.get(),R=[{find:/Mais informações sobre o livro\nTítulo\t([^\n]+)\nAutor\t([^\n]+)\s([^\n\s]+)\nEditora\t([^\n,]+)(?:,\s(\d+))?\nISBN\t([^\n,]+)(?:,\s\d+)?\nNum. págs.\t(\d+)[^\n]+/gim,replace:"* {{Referência a livro |NomeAutor=$2 |SobrenomeAutor=$3 |Título=$1 |Subtítulo= |Edição= |Local de publicação= |Editora=$4 |Ano=$5 |Páginas=$7 |Volumes= |Volume= |ID=ISBN $6 |URL= }}"}],a(e,R,"Referência do Google Books -> [[Predefinição:Referência a livro]]")}function p(n){var i=[];v=n.get(),e.config.get("wgBookName")==="Livro_de_receitas"&&(i=[{find:/\==\s*[^\n]+\s+[\-–]\s+(\d+)\s*==/gi,replace:"== Receita $1 =="},{find:/\==='''Ingredientes e Preparo:'''===/gi,replace:"=== Ingredientes ==="},{find:/\n:?\s*'''(?:Modo\s+de\s+)?(?:Preparo|fazer):?\s*'''\s*\n/gi,replace:"\n=== Preparo ===\n"},{find:/\n:?\s*'''\s*([^\n:']+)\s*:?\s*'''\s*\n/gi,replace:"\n=== $1 ===\n"},{find:/ --\n/gi,replace:";\n"},{find:/pó\s+Royal/gi,replace:"fermento em pó"},{find:/Nescau|Toddy/gi,replace:"achocolatado em pó"},{find:/([^\(])Maisena/gi,replace:"$1amido de milho"}]),R=[{find:/\n*^(=+)\s*(.*?)\s*\1\s*/gim,replace:"\n\n$1 $2 $1\n"},{find:/\=\n+=/gi,replace:"=\n="}],a(n,i.concat(R),"format. cabeçalhos")}function d(e){v=e.get(),a(e,[{find:/\{\{\s*(?:msg:|template:)?([^}]+)\}\}/gi,replace:"{{$1}}"}],"format. predefs")}function f(e){v=e.get(),R=[{find:/\[\[\s*Categor(?:y|ia)\s*:\s*([^\|\]]+)(?:\s*(\|)([^\]]*))?\s*\]\]/gi,replace:"[[Categoria:$1$2$3]]"},{find:/\[\[Categoria:([^\|\]]+)\|[a-zA-Z0-9]\]\]/gi,replace:"[[Categoria:$1|{{SUBPAGENAME}}]]"},{find:/\[\[Categoria:([^\|\]]+)\|([\* !])\]\]/gi,replace:"[[Categoria:$1|$2{{SUBPAGENAME}}]]"}],a(e,R,"format. categorias")}function g(n){v=n.get(),a(n,[{find:/\s*\n;([^\n]+)\n([^:])/g,replace:"\n;$1\n:$2"}],"-uso [["+(e.config.get("wgDBname")==="ptwiki"?"":"w:")+"Special:PermaLink/31511942|semanticamente incorreto]] de lista de definições (;:)"),a(n,[{find:/^(:+[*#]+[*#:]*|:+(?![\{:])|[*#][*#:]*)\s+/gm,replace:"$1 "}],"format. listas"),a(n,[{find:/(\| *(?:lista?\d+|acima|ab(?:ove|aixo)|below) *= *)(?:\{\{ *[Nn]owrap begin *\}\} *)?| *(?:(\|list\d+ *= *)(?:\{\{ *[Nn]owrap begin *\}\} *)?|\{\{ *(?:[·•][Ww](?:rap)?|[·,•*]|[Dd]ot|[Pp]onto|[Bb]ullet) *\}\}|(?:(?: )?[·•]|&(?:bull|#8226|#x2022|middot);)) */g,replace:"$1\n* "}],"uso da [[Special:PermaLink/43666549|sintaxe correta pra listas]]")}function m(n){if(e.config.get("wgPageName")===e.config.get("wgBookName")){var i=e.config.get("wgBookName").replace(/_/g," ");a(n,[{find:RegExp("\\[\\[\\s*"+i+"\\/([^\\|\\]]+?)\\s*\\|\\s*\\1\\s*\\]\\]","ig"),replace:"[[/$1/]]"}])}}function u(e){v=e.get(),R=[{find:/\[\[\s*([^\|\]]+?)\s*(?:(\|)\s*([^\]]+?)\s*)?\]\]/gi,replace:"[[$1$2$3]]"},{find:/\[\[([^\|\]]+?)\s*\|\s*\1\]\]/g,replace:"[[$1]]"},{find:/\[\[\s*\/\s*([^\|\]]+?)\s*\|\s*\1\s*\]\]/g,replace:"[[/$1/]]"},{find:/\[\[([^\|\]]+?)_/gi,replace:"[[$1 "},{find:/\[\[(?:Wikibooks|Project)( Discussão)?:/gi,replace:"[[Wikilivros$1:"},{find:/\[\[(?:Wikibooks|Project) Talk:/gi,replace:"[[Wikilivros Discussão:"},{find:/\[(?:https?)?:\/\/pt.wikibooks.org\/w\/index.php\?title=Wikibooks/gi,replace:"[//pt.wikibooks.org/w/index.php?title=Wikilivros"},{find:/\[\[(?:Wikipedia|Project)( Discussão)?:/gi,replace:"[[Wikipédia$1:"},{find:/\[\[(?:Wikipedia|Project) Talk:/gi,replace:"[[Wikipédia Discussão:"},{find:/\[(?:https?)?:\/\/pt.wikipedia.org\/w\/index.php\?title=Wikipedia/gi,replace:"[//pt.wikipedia.org/w/index.php?title=Wikipédia"}],a(e,R,"formatação dos links"),v=e.get(),a(e,[{find:/\[bugzilla:\s*(\d+)\s*(\]\]|\|)/gi,replace:function(e,n,i){return"[phab:T"+(parseInt(n,10)+2e3)+i}}],"Bugzilla → Phabricator")}function $(n){var i,s;v=n.get(),i=/\s*(?:\\[,!\s\;]\s*)+\s*<(\/)math>|<math>\s*(?:\\[,!\s\;]\s*)+\s*/g,s={pt:"-hack obsoleto desde o [[mw:MediaWiki 1.19]] (ver também [[phab:rSVN104498]] e [[phab:T33406#344368]])",en:"-obsolete hack since [[mw:MediaWiki 1.19]] (see also [[phab:rSVN104498]] and [[phab:T33406#344368]])"},a(n,[{find:i,replace:"<$1math>"}],s[e.config.get("wgContentLanguage")]||s.en),R=[{find:/<\/math> *([\.,;:\?]|!(?!!)) */gi,replace:"$1</math> "},{find:/\\sin/gim,replace:"\\mathrm{sen}\\,"},{find:/\n:+\s*<math>/gim,replace:'\n<math display="block">'}],a(n,R,"format. <math> e pontuação")}function b(e){return e.charAt(0).toUpperCase()+e.substr(1)}function h(s){var o,r=s.get(),t=r.split("{{âncora").length;e.config.get("wgNamespaceNumber")===106&&n.getJSON(e.util.wikiScript("api"),{format:"json",action:"query",prop:"revisions",rvprop:"content",rvlimit:1,indexpageids:!0,titles:E},function(e){var i,a,o,r,t,l=e.query.pages,c=E.split("|"),p=[],d=[];for(n.each(l,function(e,n){return n.pageid?(p.push([n.revisions[0]["*"],c.indexOf(n.title)]),void 0):(alert("Erro na função removeOCRModernization usada na correção de OCR!"),!0)}),p.sort(function(e,n){return e[1]-n[1]}),i=0;p.length>i;i++)for(o=p[i][0],t=o.split("\n"),a=0;t.length>a;a++)r=/^\*\s*(\S[^:]*?)\s*:\s*([\S].*?)\s*(?:\/\/.*?)?$/.exec(t[a]),r&&(d[r[2]]=r[1]);s.set(LanguageConverter.conv_text_from_dic(s.get(),d,!1,null,!1))}),R=[],o={"aããição":"addição",arithmetiea:"arithmetica",aeceito:"acceito","cólumna":"columna","deeompõe":"decompõe","eífeito":"effeito","minuenão":"minuendo","mbtrahenão":"subtrahendo",mulliplicam:"multiplicam","orãe(m|ns)?":"orde$1","pôde":"póde","proãucto(s?)":"producto$1",soramar:"sommar",somraando:"sommando",subtraliir:"subtrahir"},n.each(o,function(e,n){R.push({find:RegExp("\\b"+n+"\\b","g"),replace:n},{find:RegExp("\\b"+b(n)+"\\b","g"),replace:b(n)})}),o={"ã([eo])":"$1d$2$3","ão(u)?s":"$1do$2s$3","ê":"$1é$2"},n.each(o,function(e,n){R.push({find:RegExp("([^"+S+"])"+e+"([^"+S+"])","g"),replace:n})}),o={" +([.,;:!?]) +":"$1 ","([a-zA-Z])-\\n([a-zA-Z])":"$1$2"," *— *":" — ","\\n(\\d+)\\. ([^\\n]+)":"\n{{âncora|Item $1}}$1. $2","-,":";",'(\\d+)(?:\\?|o|"\\.) ([Cc]asos?|[Ee]xemplos?|[Pp]rincipios?)':"$1º $2","[Ii]o ([Cc]asos?|[Ee]xemplos?|[Pp]rincipios?)":"1º $1","(\\d+)\\.[\\t ]":"$1. ","ãa":"da",qne:"que"},n.each(o,function(e,n){R.push({find:RegExp(e,"g"),replace:n},{find:RegExp("\\b"+b(e),"g"),replace:b(n)})}),R.push({find:/(\d+[xX+-\/=<>][xX+-\/=0-9<>]+\d+)/g,replace:"♪$1♫"},{find:/♪([^♪]*[^ ♪])([xX+-\/=<>])([^ ♫][^♫]*)♫/g,replace:"♪$1 $2 $3♫"},{find:/♪([^♪]*\d+)\s*[xX]\s*(\d+[^♫]*)♫/g,replace:"♪$1 \\times $2♫"},{find:/(?:♪|<math>)+/g,replace:"<math>"},{find:/(?:♫|<\/math>)+/g,replace:"</math>"}),a(s,R,"Correção de OCR"+(s.get().split("{{âncora").length>t?"; Adição de {{âncora}}":"")),i()}function k(e){var n="",i=["\n== Notas ==",'<references group="nota "/>',"\n== Referências ==","<references/>","{{AutoCat}}"].join("\n");R=[{find:/\$\s*([^$]*?)\s*\$/gim,replace:"<math>$1</math>"},{find:/\s*\$\$\s*([^$]*?)\s*\$\$\s*/gim,replace:"\n\n{{Fórmula|<math>$1</math>}}\n\n"},{find:/<\/math>([\.,;:!\?]) */gim,replace:"$1</math> "},{find:/\\footnote\{([^}]+?)%?\\label\{[^}]+?\}\s*\}/g,replace:'<ref name="$2">$1</ref>'},{find:/\\footnote\{(.*?)\}/g,replace:"<ref>$1</ref>"},{find:/\n*\\chapter\{([^}\n]+)\}\n*/gm,replace:"\n\n= $1 =\n\n"},{find:/\n*\\section\{([^}\n]+)\}\n*/gm,replace:"\n\n== $1 ==\n\n"},{find:/\n*\\subsection\{([^}\n]+)\}\n*/gm,replace:"\n\n=== $1 ===\n\n"},{find:/\n*\\subsubsection\{([^}\n]+)\}\n*/gm,replace:"\n\n==== $1 ====\n\n"},{find:/\n*\\begin\{defi\}%?(?:\\label\{defi:[^}]+?\})?\s*/gm,replace:"\n{{Definição\n|"},{find:/\n*\\begin\{teo\}%?(?:\\label\{teo:[^}]+?\})?\s*/gm,replace:"\n{{Teorema\n|"},{find:/\n*\\begin\{proof\}%?(?:\\label\{proof:[^}]+?\})?\s*/gm,replace:"\n{{Demonstração\n|"},{find:/\n*\\begin\{lema\}%?(?:\\label\{lema:[^}]+?\})?\s*/gm,replace:"\n{{Lema\n|"},{find:/\n*\\begin\{prop\}%?(?:\\label\{prop:[^}]+?\})?\s*/gm,replace:"\n{{Proposição\n|"},{find:/\n*\\begin\{cor\}%?(?:\\label\{cor:[^}]+?\})?\s*/gm,replace:"\n{{Corolário\n|"},{find:/\n*\\begin\{ex\}%?(?:\\label\{ex:[^}]+?\})?\s*/gm,replace:"\n{{Exemplo\n|"},{find:/\n*\\begin\{exer\}%?(?:\\label\{exer:[^}]+?\})?\s*/gm,replace:"\n{{Exercício\n|"},{find:/\n*\\begin\{obs\}%?(?:\\label\{obs:[^}]+?\})?\s*/gm,replace:"\n{{Observação\n|"},{find:/\n*\\end\{(?:defi|teo|proof|lema|prop|cor|ex|exer|obs)\}\s*/gm,replace:"\n}}\n\n"},{find:/\n?\\end\{(?:enumerate|itemize)\}\n?/gm,replace:"\n"},{find:/^\s*\\item\s+/gm,replace:"* "}],a(e,R),e.set(n+e.get()+i),e.setEditSummary("Convertendo de LaTeX para Wiki")}function y(n){var i,s,o="",r=e.config.get("wgServer")+"/wiki/Special:Search/";R=[],i=["\\documentclass[12pt,a4paper,titlepage]{book}\\usepackage[brazil]{babel}\\usepackage[utf8]{inputenc}%[latin1] no Windows\\usepackage[T1]{fontenc}\\usepackage{amsthm, amssymb, amsmath}\\usepackage{footmisc}\n"].join("\n"),n.get().match(/<!--(.|\s)*?-->/)&&(i+="\\usepackage{verbatim} %permite usar \\begin{comment}...\\end{comment} para comentar varias linhas\n",R.push({find:/<!--(.|\s)*?-->/g,replace:"\\begin{comment}\n$1\n\\end{comment}"})),i+="\\usepackage[a4paper=true,pagebackref=true]{hyperref}\n\n\\hypersetup{\n  pdftitle = {"+e.config.get("wgBookName")+"},\n"+"  pdfauthor = {Colaboradores do Wikilivros},\n"+"  pdfcreator = {"+e.user.getName()+"},\n"+"  pdfsubject = {},\n"+"  pdfkeywords = {wiki, livro, wikilivro, Wikilivros},\n"+"  colorlinks = true,\n"+"  linkcolor = blue,\n"+"  anchorcolor = red,\n"+"  citecolor = blue,\n"+"  filecolor = red,\n"+"  urlcolor = blue\n"+"}\n\n"+"\\newtheorem{teo}{Teorema}[chapter]\n"+"\\newtheorem{lema}[teo]{Lema}\n"+"\\newtheorem{prop}[teo]{Proposi\\c{c}{\\~a}o}\n"+"\\newtheorem{cor}[teo]{Corol{\\'a}rio}\n\n"+"\\theoremstyle{definition}\n"+"\\newtheorem{defi}[teo]{Defini\\c{c}{\\~a}o}\n"+"\\newtheorem{ex}[teo]{Exemplo}\n"+"\\newtheorem{exer}[teo]{Exerc{\\'i}cio}\n\n"+"\\theoremstyle{remark}\n"+"\\newtheorem{obs}[teo]{Observa\\c{c}{\\~a}o}\n"+"\\newtheorem*{conv}{Conven\\c{c}{\\~a}o}\n\n"+"\\newtheorem*{res}{Resolu\\c{c}{\\~a}o}"+"\\newtheorem*{tarefa}{Tarefa}"+"\\makeindex\n\n",R.push({find:/\{\{Auto(Cat|Nav)\}\}/gi,replace:""},{find:/<\/?noinclude>/gi,replace:""},{find:/^(=+)\s*(?:Notas|Referências)\s*\1$/gim,replace:""},{find:/^\s*<references(?:\s*group\s*=\s*"[^"]*")?\/>\s*$/gim,replace:""},{find:/([\.,;:!\?])<\/math> */gim,replace:"</math>$1 "},{find:/<\/?math>/gi,replace:"$"},{find:/<ref.*?(?:name\s*=\s*"([^"]+)").*?>(.*?)<\/ref.*?>/gi,replace:"\\footnote{$2\\label{nota:$1}}"},{find:/<ref.*?>(.*?)<\/ref.*?>/gi,replace:"\\footnote{$1%\\label{nota:}\n}"},{find:/^====([^\n]+)====\s*$/gm,replace:"\n\n\\subsubsection{$1}\n\n"},{find:/^===([^\n]+)===\s*$/gm,replace:"\n\n\\subsection{$1}\n\n"},{find:/^==([^\n]+)==\s*$/gm,replace:"\n\n\\section{$1}\n\n"},{find:/^=([^\n]+)=\s*$/gm,replace:"\n\n\n\\chapter{$1}\\label{cap:$1}\n\n\n"},{find:/\{\{\s*(?:Definição)\|([^}]+)\}\}/gi,replace:"\\begin{defi}%\\label{defi:}\n$1\n\\end{defi}"},{find:/\{\{\s*(?:Teorema)\|([^}]+)\}\}/gi,replace:"\\begin{teo}%\\label{teo:}\n$1\n\\end{teo}"},{find:/\{\{\s*(?:Demonstração)\|([^}]+)\}\}/gi,replace:"\\begin{proof}\n$1\n\\end{proof}"},{find:/\{\{\s*(?:Lema)\|([^}]+)\}\}/gi,replace:"\\begin{lema}%\\label{lema:}\n$1\n\\end{lema}"},{find:/\{\{\s*(?:Proposição)\|([^}]+)\}\}/gi,replace:"\\begin{prop}%\\label{prop:}\n$1\n\\end{prop}"},{find:/\{\{\s*(?:Corolário)\|([^}]+)\}\}/gi,replace:"\\begin{cor}%\\label{cor:}\n$1\n\\end{cor}"},{find:/\{\{\s*(?:Exemplo)\|([^}]+)\}\}/gi,replace:"\\begin{ex}%\\label{ex:}\n$1\n\\end{ex}"},{find:/\{\{\s*(?:Exercício)\|([^}]+)\}\}/gi,replace:"\\begin{exer}%\\label{exer:}\n$1\n\\end{exer}"},{find:/\{\{\s*(?:Observação)\|([^}]+)\}\}/gi,replace:"\\begin{obs}%\\label{obs:}\n$1\n\\end{obs}"},{find:/\{\{Fórmula\|([\d.]+)\|([^\n]+)\}\}\n/gim,replace:"\\begin{equation}\\label{eq:$1}\n$2\n\\end{equation}\n"},{find:/\{\{Fórmula\|([^\n]+)\}\}\n/gim,replace:"\\begin{equation}\\label{eq:???}\n$1\n\\end{equation}\n"},{find:/\{\{\s*(?:Âncoras?)\|([^}]+)\}\}/gi,replace:"\\label{$1}"}),a(n,R),s=/\[\[\s*([a-zA-Z:]+)\s*:\s*([^\|\]]+?)\s*?\|\s*([^\]]*?)\s*\]\]/i,o=s.exec(n.get());while(o)o[2]=encodeURI(o[2]).replace(/(%|#)/g,"\\$1"),n.set(n.get().replace(s,"\\href{"+r+"$1:"+o[2]+"}{$3}")),o=s.exec(n.get());s=/\{\{\s*(w|wikt)\s*\|\s*([^\|}]+?)\s*?\|\s*([^}]*?)\s*\}\}/i,o=s.exec(n.get());while(o)o[2]=encodeURI(o[2]).replace(/(%|#)/g,"\\$1"),n.set(n.get().replace(s,"\\href{"+r+"$1:"+o[2]+"}{$3}")),o=s.exec(n.get());s=/\{\{\s*(w|wikt)\s*\|\s*([^\|}]+?)\s*\}\}/i,o=s.exec(n.get());while(o)o[2]=encodeURI(o[2]).replace(/(%|#)/g,"\\$1"),n.set(n.get().replace(s,"\\href{"+r+"$1:"+o[2]+"}{$2}")),o=s.exec(n.get());R=[{find:/\[\[(?:\.\.\/[^#]+)?#Definição ([^\]]+)\|([^\]]+)\]\]/gi,replace:"\\hyperref[defi:$1]{$2}"},{find:/\[\[(?:\.\.\/[^#]+)?#Proposição ([^\]]+)\|([^\]]+)\]\]/gi,replace:"\\hyperref[prop:$1]{$2}"},{find:/\[\[(?:\.\.\/[^#]+)?#Lema ([^\]]+)\|([^\]]+)\]\]/gi,replace:"\\hyperref[lema:$1]{$2}"},{find:/\[\[(?:\.\.\/[^#]+)?#Teorema ([^\]]+)\|([^\]]+)\]\]/gi,replace:"\\hyperref[teo:$1]{$2}"},{find:/\[\[(?:\.\.\/[^#]+)?#Corolário ([^\]]+)\|([^\]]+)\]\]/gi,replace:"\\hyperref[cor:$1]{$2}"},{find:/\[\[(?:\.\.\/[^#]+)?#Exemplo ([^\]]+)\|([^\]]+)\]\]/gi,replace:"\\hyperref[ex:$1]{$2}"},{find:/\[\[(?:\.\.\/[^#]+)?#Exercício ([^\]]+)\|([^\]]+)\]\]/gi,replace:"\\hyperref[exer:$1]{$2}"},{find:/\[\[(?:\.\.\/[^#]+)?#(?:Obs\.|Observação)? ([^\]]+)\|([^\]]+)\]\]/gi,replace:"\\hyperref[obs:$1]{$2}"},{find:/:\n+#\s*/gi,replace:":\n\\begin{enumerate}\n\\item "},{find:/\n(?:\*|#)\s*/gi,replace:"\n\\item "},{find:/\n*(\\(?:sub){0,2}section[^\n]+)\n*/gi,replace:"\n\n$1\n"},{find:/\n*(\\chapter[^\n]+)\n*/gi,replace:"\n\n\n$1\n\n"},{find:/"([^"]+)"/gi,replace:"``$1''"}],a(n,R),n.set(i+["\\begin{document}\n","\\frontmatter\n","\\tableofcontents\n","\\mainmatter %Depois de índice e prefácio\n","\\chapter{"+e.config.get("wgTitle")+"}\\label{cap:"+e.config.get("wgTitle").toLowerCase()+"}\n\n",n.get(),"\n\\backmatter\n","\\bibliographystyle{amsalpha} %amsalpha, amsplain, plain, alpha, abbrvnat","\\bibliography{biblio}\\label{cap:biblio}","\\addcontentsline{toc}{chapter}{Referências Bibliográficas}\n","\\end{document}"].join("\n")),n.setEditSummary("Versão em LaTeX [produzida com [[m:TemplateScript|expressões regulares]]](não era para salvar: REVERTA ESTA EDIÇÃO!)")}function w(n){var a=n;switch(e.config.get("wgDBname")){case"ptwiki":r(a),$(a),t(a),g(a),o(a),u(a);break;case"ptwikisource":break;case"ptwikibooks":r(a),p(a),d(a),f(a),g(a),m(a),u(a),$(a),p(a);break;default:r(a)}i()}function x(){switch(pathoschild.TemplateScript.add([{name:"Formatação geral",script:w},{name:"Corrige assinatura",script:l,isMinorEdit:!0},{name:"Corrige links HTTP",script:t,isMinorEdit:!0}]),e.config.get("wgDBname")){case"ptwiki":pathoschild.TemplateScript.add([{name:'Usar "Ver também,..."',script:o},{name:"Corrigir fórmulas",script:$},{name:"Corrigir listas",script:g}]);break;case"ptwikisource":pathoschild.TemplateScript.add({name:"Corrigir OCR",script:h});break;case"ptwikibooks":pathoschild.TemplateScript.add([{name:"Corrigi fórmulas",script:$},{name:"Remover linhas duplicadas",script:function(e){var n=e.get().replace(/\r|\n+/gi,"\n").split("\n");e.set(s(n).join("\r\n"))}},{name:"Formatar cabeçalhos",script:p},{name:"Formatar predefinições",script:d},{name:"Formatar categorias",script:f},{name:"Corrigir listas",script:g},{name:"Usar links relativos",script:m},{name:"Formatar links",script:u},{name:"TEST: Refs do Google Books",script:c},{name:"TEST: Wiki -> LaTeX",script:y},{name:"TEST: LaTeX -> Wiki",script:k}]);break;default:}}var E="Wikisource:Modernização/Dicionário/pt-PT|Wikisource:Modernização/Dicionário/pt-BR",S="A-Za-zÁÀÂÃÇÉÊÍÓÒÔÕÚáàâãçéêíóòôõú",v=null,T=!1,R=[];n.inArray(e.config.get("wgAction"),["edit","submit"])!==-1&&n.when(e.loader.using(["jquery.textSelection"]),n.ajax("//tools-static.wmflabs.org/meta/scripts/pathoschild.templatescript.js",{dataType:"script",cache:!0,timeout:3e4})).then(x)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/BookTools.js]] (workaround for [[phab:T35355]])
/**
 * BookTools
 * Adds helper tools to the sidebar for working with books
 * @author: Helder (https://github.com/he7d3r)
 * @update-token: [[File:pathoschild/templatescript.js]]
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function a(t){var a,i,s=0,n=[],o={};if(Array.isArray(t)){for(a=0,i=t.length;i>a;a++)o[t[a].toLowerCase()]!==1?(n=n.concat(t[a]),o[t[a].toLowerCase()]=1):s++;return s>0?alert(e.msg("bt-removed-lines",s)):alert(e.msg("bt-no-duplicates")),n}}function i(e){var t,a=e.get().split("\n"),i=[],s=[];for(i[0]=a[0],s[a.length-1]=a[a.length-1],t=1;a.length-1>t;t++)i[t]=a[t]+"=[["+a[t-1]+"]]",s[t]=a[t]+"=[["+a[t+1]+"]]";e.set([a.join("\n"),i.join("\n"),s.join("\n")].join("\n\n"))}function s(e){return u.test(e)?t.trim(e.replace(u,"$1$2")):!1}function n(e){var t,a,i=[],n=e.get().replace(/<!--[\s\S]+?-->/g,"").split(/[\r\n]+/);for(t=0;n.length>t;t++)a=s(n[t]),a&&i.push(a);return i}function o(e){var t=a(n(e)),i="<includeonly>{{{{{|safesubst:}}}Lista de capítulos/{{{1|}}}</includeonly>\n |"+t.join("\n |")+"\n<includeonly>}}</includeonly><noinclude>\n"+"{{Documentação|Predefinição:Lista de capítulos/doc}}\n"+"<!-- ADICIONE CATEGORIAS E INTERWIKIS NA SUBPÁGINA /doc -->\n"+"</noinclude>";e.set(i)}function r(a,i){t.post(e.util.wikiScript("api"),{action:"edit",bot:"1",title:a,text:i,summary:e.msg("bt-create-list-summary",e.config.get("wgBookName")),token:e.user.tokens.get("csrfToken")}).done(function(){alert(e.msg("bt-page-edited",a.replace(/_/g," "))),location.href=e.util.getUrl(a)}).fail(function(){alert(e.msg("bt-page-not-edited",a.replace(/_/g," ")))})}function c(e){var t,i,s=a(n(e)),o="{{Livro gravado\n |título={{subst:SUBPAGENAME}}\n |subtítulo=\n |imagem da capa=\n |cor da capa=\n}}\n\n== "+m+" ==\n";for(t=0;s.length>t;t++)i=s[t].lastIndexOf("/")+1,o+=":[["+m+"/"+s[t]+"|"+s[t].substring(i)+"]]\n";e.set(o)}function l(e){var t,i,s=a(n(e)),o="{{Versão para impressão|{{BASEPAGENAME}}|{{BASEPAGENAME}}/Imprimir}}\n";for(t=0;s.length>t;t++)i=s[t].lastIndexOf("/")+1,o+="="+s[t].substring(i)+"=\n{{:{{NOMEDOLIVRO}}/"+s[t]+"}}\n";o+="\n{{AutoCat}}",e.set(o)}function d(t){var a,i="Predefinição:Lista_de_capítulos/"+e.config.get("wgPageName"),s=t.get();a=confirm(e.msg("bt-check-list")),a===!0&&r(i,s)}function g(t){var a,i="Wikilivros:Livros/"+e.config.get("wgPageName"),s=t.get();a=confirm(e.msg("bt-check-list-for-collection")),a===!0&&r(i,s)}function p(){u=RegExp(".*\\[\\[\\s*(?:/([^\\|\\]]+?)/?|"+e.util.escapeRegExp(m)+"/([^\\|\\]]+?))\\s*(?:(?:#[^\\|\\]]+?)?\\|\\s*[^\\]]+?\\s*)?\\]\\].*","gi"),pathoschild.TemplateScript.add([{name:e.msg("bt-create-template-desc"),script:o},{name:e.msg("bt-create-collection-desc"),script:c},{name:e.msg("bt-save-collection-desc"),script:g},{name:e.msg("bt-create-print-version-desc"),script:l},{name:e.msg("bt-save-list-desc"),script:d},{name:e.msg("bt-create-autonav-desc"),script:i}],{category:e.msg("bt-sidebar-title")})}e.messages.set({"bt-removed-lines":"Foram removidas $1 linhas duplicadas","bt-no-duplicates":"Não havia linhas duplicadas","bt-create-list-summary":"Criação da lista com base no [[$1|índice do livro]]","bt-page-edited":'A página "$1" foi editada e será exibida a seguir.',"bt-page-not-edited":'Não foi possível editar a página "$1".',"bt-check-list":"Antes de criar a lista de capítulos é preciso conferir se a lista gerada pelo script está correta.\n\nDeseja que a lista seja criada com o texto atual?","bt-check-list-for-collection":"Antes de criar a coleção é preciso conferir se a lista gerada pelo script está correta.\n\nDeseja que a lista seja criada com o texto atual?","bt-sidebar-title":"Gerenciador de livros","bt-create-template-desc":"Gerar lista de capítulos","bt-create-collection-desc":"Gerar coleção","bt-create-print-version-desc":"Gerar versão para impressão","bt-create-autonav-desc":"TEST: Criar AutoNav","bt-save-collection-desc":"Gravar coleção (CUIDADO!)","bt-save-list-desc":"Gravar lista de capítulos (CUIDADO!)"});var u,m=e.config.get("wgPageName").replace(/_/g," ");e.config.get("wgDBname")==="ptwikibooks"&&e.config.get("wgAction")==="edit"&&e.config.get("wgNamespaceNumber")===0&&t.when(e.loader.using("mediawiki.util"),t.ajax("//tools-static.wmflabs.org/meta/scripts/pathoschild.templatescript.js",{dataType:"script",cache:!0})).then(p)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/ExtraEditButtons.js]] (workaround for [[phab:T35355]])
/**
 * Add some extra buttons to enhanced edit toolbar
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,o){"use strict";function a(){var a=o("#wpTextbox1");a.wikiEditor("addToToolbar",{sections:{imagens:{type:"toolbar",label:"Imagens"}}}).wikiEditor("addToToolbar",{section:"advanced",group:"format",tools:{"my-code":{label:"Código",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/2/23/Button_code.png",action:{type:"encapsulate",options:{pre:"<code>",post:"</code>"}}},"my-pre":{label:"Código pré-formatado",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/3/3c/Button_pre.png",action:{type:"encapsulate",options:{pre:"<pre>",post:"</pre>"}}},"my-source":{label:"Código-fonte",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/d/d2/Button_source.png",action:{type:"encapsulate",options:{pre:'<syntaxhighlight lang="javascript">\n',post:"\n</syntaxhighlight>"}}},"my-comment":{label:"Comentário",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/3/3b/Comment-button-bg.png",action:{type:"encapsulate",options:{pre:"<!-- ",post:" -->"}}}}}).wikiEditor("addToToolbar",{section:"imagens",groups:{faces:{label:"Carinhas",tools:{sad:{label:"Triste",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/d/d8/Sad.png",action:{type:"encapsulate",options:{pre:"[[Image:Sad.png]]"}}},smile:{label:"Sorriso",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/2/26/Smile.png",action:{type:"encapsulate",options:{pre:"[[Image:Smile.png]]"}}},teeth:{label:"Sorridente",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/7/72/Teeth.png",action:{type:"encapsulate",options:{pre:"[[Image:Teeth.png]]"}}},tongue:{label:"Levado",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/c/c4/Tongue.png",action:{type:"encapsulate",options:{pre:"[[Image:Tongue.png]]"}}},confused:{label:"Confuso",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/6/68/Confused.png",action:{type:"encapsulate",options:{pre:"[[Image:Confused.png]]"}}},cry:{label:"Lágrimas",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/d/d8/Cry.png",action:{type:"encapsulate",options:{pre:"[[Image:Cry.png]]"}}},wink:{label:"Piscando",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/9/9a/Wink.png",action:{type:"encapsulate",options:{pre:"[[Image:Wink.png]]"}}},sleeping:{label:"Dormindo",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/3/38/Sleeping.png",action:{type:"encapsulate",options:{pre:"[[Image:Sleeping.png|27px]]"}}},hello:{label:"Olá!",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/f/f8/Waving.png",action:{type:"encapsulate",options:{pre:"[[Image:Waving.png|27px]]"}}},sifflote:{label:"Apito",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/3/30/Sifflote.png",action:{type:"encapsulate",options:{pre:"[[Image:Sifflote.png|27px]]"}}}}},outras:{label:"Outras",tools:{agree:{label:"Concordo",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/c/c8/Button_conserver2.png",action:{type:"encapsulate",options:{pre:"[[Image:Symbol support vote.svg|15px]] '''Concordo'''"}}},disagree:{label:"Discordo",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/0/00/Button_supprimer.png",action:{type:"encapsulate",options:{pre:"[[Image:Symbol oppose vote.svg|15px]] '''Discordo'''"}}},done:{label:"Feito",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/4/4e/Button_fait2.png",action:{type:"encapsulate",options:{pre:"[[Image:Yes check.svg|15px]] '''Feito'''"}}},comment:{label:"Comentário",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/4/4d/Button_reticence.png",action:{type:"encapsulate",options:{pre:"[[Image:Symbol comment vote.svg|15px]] '''Comentário'''"}}}}}}}).wikiEditor("addToToolbar",{section:"main",group:"insert",tools:{"my-green":{label:"Texto verde sobre fundo branco",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/8/8d/Button_rouge.png",action:{type:"encapsulate",options:{pre:'<span style="color: #060; background: #fff;">',post:"</span>"}}},"my-red-background":{label:"Texto preto sobre fundo vermelho",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/1/1d/Button_base_red.png",action:{type:"encapsulate",options:{pre:'<span style="color: #000; background: #E99;">',post:"</span>"}}},"my-green-background":{label:"Texto preto sobre fundo verde",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/6/6f/Button_base_green.png",action:{type:"encapsulate",options:{pre:'<span style="color: #000; background: #9E9;">',post:"</span>"}}}}}),e.config.get("wgDBname")==="ptwikibooks"?a.wikiEditor("addToToolbar",{sections:{admin:{type:"toolbar",label:"Manutenção"}}}).wikiEditor("addToToolbar",{section:"admin",groups:{tags:{label:"Marcações",tools:{"speed-deletion-heading":{label:"Eliminação rápida",type:"select",list:{spam:{label:"Propaganda ou SPAM",action:{type:"encapsulate",options:{pre:"{{ER|Propaganda ou SPAM|~~~~}}\n"}}},vandal:{label:"Vandalismo",action:{type:"encapsulate",options:{pre:"{{ER|Vandalismo|~~~~}}\n"}}},HOAX:{label:"HOAX",action:{type:"encapsulate",options:{pre:"{{ER|HOAX}}\n"}}},exercises:{label:"Trabalhos escolares e pedidos de resolução de exercícios",action:{type:"encapsulate",options:{pre:"{{ER|Pedido de resolução de exercícios|~~~~}}\n"}}},nonsense:{label:"Lixo ou texto sem sentido (nonsense)",action:{type:"encapsulate",options:{pre:"{{ER|Texto sem sentido (nonsense)|~~~~}}\n"}}},test:{label:"Teste",action:{type:"encapsulate",options:{pre:"{{ER|Teste feito fora da [[Wikilivros:Caixa de areia|página adequada]]|~~~~}}\n"}}},porn:{label:"Pornografia",action:{type:"encapsulate",options:{pre:"{{ER|Pornografia|~~~~}}\n"}}},ofensive:{label:"Conteúdo ofensivo",action:{type:"encapsulate",options:{pre:"{{ER|Conteúdo ofensivo|~~~~}}\n"}}},VDA:{label:"Plágio ou violação dos direitos de autor (VDA)",action:{type:"encapsulate",options:{pre:"{{VDA|1=",post:"}}\n"}}},talkofdeletedpage:{label:"Discussão de página excluída",action:{type:"encapsulate",options:{pre:"{{ER|Discussão de página excluída|~~~~}}\n"}}},userreq:{label:"Pedido do autor",action:{type:"encapsulate",options:{pre:"{{ER|Pedido do autor}}\n"}}},expired:{label:"Período de adequação expirado",action:{type:"encapsulate",options:{pre:"{{ER|Período de adequação expirado|~~~~}}\n"}}},unnecessaryredir:{label:"Redirecionamento desnecessário",action:{type:"encapsulate",options:{pre:"{{ER|Redirecionamento desnecessário|~~~~}}\n"}}},badredirect:{label:"Redirecionamento com título inaceitável",action:{type:"encapsulate",options:{pre:"{{ER|Redirecionamento com título inaceitável|~~~~}}\n"}}},emptycat:{label:"Categoria vazia",action:{type:"encapsulate",options:{pre:"{{ER|Categoria vazia|~~~~}}\n"}}},renamedcat:{label:"Categoria renomeada",action:{type:"encapsulate",options:{pre:"{{ER|Categoria renomeada para [[Categoria:",post:"]]|~~~~}}\n"}}},usersubpage:{label:"Subpágina de usuário",action:{type:"encapsulate",options:{pre:"{{ER|Subpágina de usuário|~~~~}}\n"}}},inexistentuser:{label:"Usuário inexistente",action:{type:"encapsulate",options:{pre:"{{ER|Usuário inexistente|~~~~}}\n"}}}}},"othertags-heading":{label:"Outras",type:"select",list:{wikipedia:{label:"Conteúdo enciclopédico",action:{type:"encapsulate",options:{pre:"{{Inadequado|Conteúdo enciclopédico não é livro didático|[[w:{{subst:PAGENAME}}]] (se cumprir as regras da Wikipédia, como [[w:WP:N|notabilidade]], [[w:WP:V|verificabilidade]] por [[w:WP:FF|fontes fiáveis]], etc...)",post:"|~~~~}}\n"}}},deletionrequest:{label:"Propor eliminação por votação",action:{type:"encapsulate",options:{pre:"{{eliminação}}\n"}}},inadequate:{label:"Inadequado",action:{type:"encapsulate",options:{pre:"{{Inadequado|Não é um livro didático|",post:"|~~~~}}\n"}}},rename:{label:"Renomear",action:{type:"encapsulate",options:{pre:"{{Renomear}}\n"}}}}}}},welcome:{label:"Boas-vindas",tools:{bv:{label:"Boas-vindas para usuário registrado",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/3/30/Bv_icon.png",action:{type:"encapsulate",options:{pre:"{{subst:bv}}",post:" ~~~~\n"}}},"bv-ip":{label:"Boas-vindas para usuário anônimo",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/5/54/Bvip_icon.png",action:{type:"encapsulate",options:{pre:"{{subst:bv-ip}}",post:" ~~~~\n"}}},"bv-av":{label:"Boas-vindas e aviso",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/e/ec/Button_aviso.png",action:{type:"encapsulate",options:{pre:"{{subst:bv-av|",post:"}} ~~~~\n"}}}}}}}):a.wikiEditor("addToToolbar",{section:"main",group:"insert",tools:{"my-math":{label:"Fórmula matemática",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/7/7d/Button_equation_he.png",action:{type:"encapsulate",options:{pre:"<math>",post:"</math>"}}}}}).wikiEditor("addToToolbar",{section:"main",group:"format",tools:{"my-strikethrough":{label:"Riscado",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/c/c9/Button_strike.png",action:{type:"encapsulate",options:{pre:"<s>",post:"</s>"}}}}})}o.inArray(e.config.get("wgAction"),["edit","submit"])!==-1&&e.loader.using("user.options",function(){e.user.options.get("usebetatoolbar")==1&&o.when(e.loader.using("ext.wikiEditor"),o.ready).then(a)}),e.hook("ext.lqt.textareaCreated").add(a)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/CodingToolbar.js]] (workaround for [[phab:T35355]])
/**
 * Add buttons to editor toolbar for some common snippets of JavaScript code
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function i(){t("#wpTextbox1").wikiEditor("addToToolbar",{section:"advanced",groups:{subjects:{label:"Gadgets",tools:{"js-samples":{label:"JavaScript",type:"select",list:o},"mw-api-samples":{label:"MediaWiki",type:"select",list:n}}}}})}var o,n;o={loopOverList:{label:"Loop sobre uma lista",action:{type:"encapsulate",options:{pre:"for( i = 0; i < list.length; i++ ){\n ",peri:"list[i];",post:"\n}"}}},closure:{label:"Closure",action:{type:"encapsulate",options:{pre:["/**"," *"," * @author: [[User:"+e.config.get("wgUserName")+"]]"," * @tracking: [[Special:GlobalUsage/User:{{subst:PAGENAME}}]] ([[File:User:{{subst:PAGENAME}}]])"," */","( function ( mw, $ ) {","'use strict';\n\n"].join("\n"),peri:"/* Code here */",post:"\n\n}( mediaWiki, jQuery ) );"}}}},n={textFromAPI:{label:"Obter texto via API",action:{type:"encapsulate",options:{pre:["( new mw.Api() ).get( {"," prop: 'revisions',"," rvprop: 'content',"," rvlimit: 1,"," indexpageids: true,"," titles: 'Project:Sandbox'","} )",".done( function ( data ) {\n "].join("\n"),peri:"console.log( data.query );",post:["\n} )",".fail( function ( data ) {"," console.log( data.query );","} );"].join("\n")}}},addPortletLink:{label:"Inserir link no portlet",action:{type:"encapsulate",options:{pre:["function addSomeLink(){"," $( mw.util.addPortletLink(","  'p-cactions',","  '#',","  'SomeLink',","  'ca-SomeLink',","  'SomeDescriptionForSomeLink'"," ) ).click( function( e ) {","  e.preventDefault();"].join("\n")+"\n  ",peri:"alert( 'Ok' );",post:["\n } );","}","","if ( true ) {"," $( addSomeLink );","}"].join("\n")}}}},t.inArray(e.config.get("wgAction"),["edit","submit"])!==-1&&/\.js$/.test(e.config.get("wgTitle"))&&e.loader.using("user.options",function(){e.user.options.get("usebetatoolbar")==1&&t.when(e.loader.using("ext.wikiEditor"),t.ready).then(i)})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/DebugModeToggle.js]] (workaround for [[phab:T35355]])
/**
 * Add a toggle for debug mode to the sidebar
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,o){"use strict";function a(o){var a,i;o.preventDefault(),e.cookie.set("resourceLoaderDebug",n===0?null:!0,{expires:86400,path:"/"}),a=location.href.replace(location.hash,"").replace(/[&?]debug(=[^&]*)?/g,""),i=a.indexOf("?")===-1?"?":"&",location.href=a+i+"debug="+!n}function i(){var i="ca-toggle-debug-mode",d={1:"Disable debug mode",0:"Enable debug mode"};o("#"+i).length||o(e.util.addPortletLink("p-tb","#",d[n],i,"Turn debug mode on or off and reload the page")).click(a).find("a").css("color","#808")}var n=e.config.get("debug");o.when(e.loader.using("mediawiki.util"),o.ready).then(i)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/ShortDiff.js]] (workaround for [[phab:T35355]])
/**
 * ShortDiff-link
 *
 * When clicking a diff-link shorten it to:
 * http://wiki.org/w/index.php?diff=1[&oldid=1]
 * Due to rewrite rules may not work by default on wikis outside Wikimedia.
 *
 * @source: [[m:MediaWiki:Gadget-ShortDiff.js]]
 * @author: Krinkle
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 * @revision: 4
 */
// <nowiki>
(function(i,t){"use strict";t(function(){t(document).on("click","a",function(){var n,a,e=t(this).attr("href"),r=i.util.getParamValue("diff",e);!e||t.inArray(r,[,null,"",0,"0","cur","last"])!==-1||t(this).parent().attr("id")==="t-permalink"||e.indexOf(location.host)===-1&&e.indexOf("/w/index.php")!==0&&e.indexOf("/wiki/")!==0||(n=i.config.get("wgScript")+"?diff="+r,a=i.util.getParamValue("oldid",e),a&&(n+="&oldid="+a),t(this).attr("href",n))})})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/ExtraLinks.js]] (workaround for [[phab:T35355]])
/**
 * Add some extra links
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function a(){t(e.util.addPortletLink("p-cactions","https://angryloki.github.io/wikidata-graph-builder/?"+t.param({property:"P279",item:e.config.get("wgWikibaseItemId")||e.config.get("wbEntityId"),lang:e.config.get("wgUserLanguage"),mode:"both"}),"Wikidata Graph Builder","ca-wgb","Mostrar item associado à página atual no Wikidata Graph Builder"))}var i,n,g,r,o,s;t.inArray(e.config.get("wgDBname"),["ptwikibooks","my_wiki"])!==-1&&e.config.get("wgNamespaceNumber")===0&&(g=e.util.wikiUrlencode(e.config.get("wgBookName")),i="//tools.wmflabs.org/pathoschild-contrib/catanalysis/?title="+g+"&cat=0&wiki=ptwikibooks",e.util.addPortletLink("p-tb",i,"Estatísticas do livro","t-catanalysis","Ver estatísticas sobre este livro","t","#t-whatlinkshere"),i=e.util.getUrl("Special:RecentChangesLinked",{days:30,limit:500,target:"Categoria:Livro/"+e.config.get("wgBookName")}),e.util.addPortletLink("p-navigation",i,"Mudanças neste livro","ca-bookrecentchanges","Exibir mudanças recentes neste livro",null,"#n-recentchanges + li")),e.config.get("wgNamespaceNumber")>=0&&(i=e.util.getUrl("Special:RecentChangesLinked/"+e.config.get("wgPageName"),{namespace:0,showlinkedto:1,days:30,limit:500}),e.util.addPortletLink("p-navigation",i,"Mudanças relacionadas","ca-recentchangeslinked","Exibir mudanças recentes nas páginas que apontam para esta",null,"#n-recentchanges + li")),(t.inArray(e.config.get("wgNamespaceNumber"),[2,3])!==-1||e.config.get("wgCanonicalSpecialPageName")==="Contributions")&&(r=e.config.get("wgNamespaceNumber")===-1?t('input[name="target"]').val():e.config.get("wgTitle").split("/")[0],e.util.addPortletLink("p-tb","//tools.wmflabs.org/guc/index.php?user="+e.util.wikiUrlencode(r),"Contribuições globais","t-global","Ver as contribuições globais de "+r,"g","#t-contributions + li"),t("#t-contributions").find("a").text("Contribuições")),e.config.get("wgNamespaceNumber")===8&&e.config.get("wgDBname")!=="translatewiki_net"&&e.util.addPortletLink("p-namespaces","//translatewiki.net"+e.util.getUrl(e.config.get("wgPageName")+(e.config.get("wgPageName").indexOf("/")===-1?"/"+e.config.get("wgContentLanguage"):""),{action:"edit"}),"Translatewiki","ca-trans","Ver a mesma mensagem no Translatewiki.net"),o=e.config.get("wgDBname").replace(/^.+(wiki.*)$/g,"$1"),e.util.addPortletLink("p-tb","https://tools.wmflabs.org/pageviews/?"+t.param({project:e.config.get("wgServerName"),range:"latest-90",pages:e.config.get("wgPageName")}),"Exibições da página","t-stat","Ver estatísticas sobre a visualização desta página","t","#t-whatlinkshere"),document.getElementById("p-tb")&&t.inArray(e.config.get("wgNamespaceNumber"),[-1,6])===-1&&(i=e.util.getUrl("Special:PrefixIndex/"+e.config.get("wgPageName")),e.util.addPortletLink("p-tb",i,"Subpáginas","t-subpages","Subpáginas desta página")),n=t("#t-permalink").find("a").text("Link perm."),s="Special:PermaLink/"+e.util.getParamValue("oldid",n.attr("href")),n.after(" / ",t("<a>").attr("href",e.util.getUrl(s)).text("[[wiki]]").click(function(e){e.preventDefault(),prompt("Ligação interna:","[["+s+"]]")})),e.config.get("wgNamespaceNumber")>=0&&t.inArray(e.config.get("wgAction"),["view","purge"])!==-1&&t(a)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/AddActionLinks.js]] (workaround for [[phab:T35355]])
/**
 * Adds "edit", "hist" and "delete" link to [[Special:WhatLinksHere]] and the list of templates used in a page
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 * Based on [[mw:Snippets/Special:WhatLinksHere action links]] (rev 2)
 */
// <nowiki>
(function(i,e){"use strict";function t(t){var a={history:"hist"},n={};e.inArray("delete",t)!==-1&&(a["delete"]="elim"),i.config.get("wgCanonicalSpecialPageName")?(a.edit="editar",n.items="#mw-whatlinkshere-list li",n.link=".mw-whatlinkshere-tools a:last"):(n.items="#editform .templatesUsed li",n.link="a:last"),e(function(){e(n.items).each(function(){var t,r=e(n.link,this),s=i.config.get("wgScript")+"?title="+encodeURIComponent(e("a:first",this).text())+"&action=";for(t in a)r.after(e("<a>").attr("href",s+t).text(a[t])).after(" | ")})})}(i.config.get("wgCanonicalSpecialPageName")==="Whatlinkshere"||e.inArray(i.config.get("wgAction"),["edit","submit"])!==-1)&&i.loader.using("mediawiki.user",function(){i.user.getRights(t)})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/LanguageLinksOnCategoryMembers.js]] (workaround for [[phab:T35355]])
/**
 * Adds language links to category member links
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,i){"use strict";function n(n,t,a){n.before("[").before(i("<a></a>").attr({title:a,href:"//"+t+".wikipedia.org/wiki/"+e.util.rawurlencode(a),lang:t,hreflang:t}).text(t)).before("] ")}function t(e){var t={};e.query&&(i.each(e.query.pages,function(i){e.query.pages[i].langlinks&&(t[e.query.pages[i].title]=e.query.pages[i].langlinks[0]["*"])}),i("#mw-content-text").find("li > a").each(function(){var e=i(this),a=e.text();t[a]&&n(e,l,t[a])}))}function a(){var i=new e.Api;i.get({prop:"langlinks",lllang:l,generator:"categorymembers",gcmtitle:e.config.get("wgPageName"),gcmlimit:500}).done(t)}function g(){var i=new e.Api;i.get({action:"query",format:"json",prop:"langlinks",titles:e.config.get("wgRelevantPageName"),generator:"linkshere",lllang:l,glhlimit:500}).done(t)}var r,l="pt";e.config.get("wgAction")==="view"&&e.config.get("wgContentLanguage")!==l&&(e.config.get("wgNamespaceNumber")===14?r=a:e.config.get("wgCanonicalSpecialPageName")==="Whatlinkshere"&&(r=g),i.when(e.loader.using(["mediawiki.api","mediawiki.util"]),i.ready).then(r))})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/PermalinkWhenExpandingTemplates.js]] (workaround for [[phab:T35355]])
/**
 * Add a permanent link to [[Special:ExpandTemplates]]
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";var a=function(){var a={wpInput:t("#input textarea").val(),wpContextTitle:t.trim(t("#contexttitle input").val())};t("#removecomments input").is(":checked")&&(a.wpRemoveComments=!0),t("#removenowiki input").is(":checked")&&(a.wpRemoveNowiki=!0),t("#generate_xml input").is(":checked")&&(a.wpGenerateXml=!0),t("#generate_rawhtml input").is(":checked")&&(a.wpGenerateRawHtml=!0),t("#ooui-1").before(' (<a href="'+e.util.getUrl("Special:ExpandTemplates")+"?"+t.param(a)+'">link permanente para o teste atual</a>)')};e.config.get("wgCanonicalSpecialPageName")==="ExpandTemplates"&&t(a)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/QUnit.js]] (workaround for [[phab:T35355]])
/**
 * Helper tool for creating QUnit tests and running them at [[Project:Testar script]]
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";var i,a,n,s=e.util.getParamValue("page");e.config.get("wgNamespaceNumber")===4&&e.config.get("wgTitle")==="Testar script"&&s&&e.config.get("wgAction")==="view"?(i=s.replace(/\.test\.js$/,".js"),t("#mw-content-text").empty().append('<p>Os testes a seguir foram definidos na <a href="'+e.util.getUrl(s)+'">'+s+'</a> para garantir o funcionamento do script <a href="'+e.util.getUrl(i)+'">'+i+"</a>.</p>").append('<h2 id="qunit-header">Resultado dos testes QUnit</h2>').append('<h3 id="qunit-banner"></h3>').append('<div id="qunit-testrunner-toolbar"></div>').append('<h3 id="qunit-userAgent"></h3>').append('<ol id="qunit-tests"></ol>').append('<div id="qunit-fixture">test markup, will be hidden</div>'),t("#firstHeading").find("span").html('Testes definidos em <a href="'+e.util.getUrl(s)+'">'+s+"</a>"),n=RegExp("^(?:MediaWiki:|"+e.util.escapeRegExp(e.config.get("wgFormattedNamespaces")[2]+":"+e.config.get("wgUserName"))+"\\/).*\\.js$"),n.test(s)&&e.loader.using("jquery.qunit",function(){importScript(s)})):/\.js$/g.test(e.config.get("wgTitle"))&&t.inArray(e.config.get("wgNamespaceNumber"),[8,2])!==-1&&(/\.test\.js$/g.test(e.config.get("wgTitle"))?(a=e.config.get("wgPageName"),i=a.replace(/\.test\.js$/,".js"),e.util.addPortletLink("p-cactions",e.util.getUrl(i),"Abrir script","ca-open-js")):(a=e.config.get("wgPageName").replace(/\.js$/,".test.js"),e.util.addPortletLink("p-cactions",e.util.getUrl(a),"Definir testes QUnit","ca-def-qunit-tests")),e.util.addPortletLink("p-cactions",e.util.getUrl("Project:Testar script")+"?page="+e.util.wikiUrlencode(a),"Executar testes QUnit","ca-run-qunit-tests"))})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/WikiBlameLink.js]] (workaround for [[phab:T35355]])
/**
 * Add a link to WikiBlame
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,e){"use strict";function a(){e(i.util.addPortletLink("p-cactions","#","WikiBlame","ca-blame","Identificar o autor de um trecho da página, usando o WikiBlame")).click(function(a){var n,o,t,c="Digite um texto no campo abaixo para saber quem o incluiu na página atual.",g=prompt(c,"Texto");a.preventDefault(),g!==null&&(n="http://wikipedia.ramselehof.de/wikiblame.php?",o={commonswiki:"commons",incubatorwiki:"incubator",mediawikiwiki:"www",metawiki:"meta",simplewiki:"simple",sourceswiki:"blank",specieswiki:"species",wikidatawiki:"www"},t={article:i.config.get("wgPageName"),user_lang:i.config.get("wgUserLanguage").replace(/-.+$/g,""),lang:o[i.config.get("wgDBname")]||i.config.get("wgContentLanguage"),needle:g,force_wikitags:"on",project:i.config.get("wgServer").replace(/\/\/(?:[a-z]+\.)?([a-z]+).org/,"$1")},window.open(n+e.param(t),"_blank"))})}i.config.get("wgNamespaceNumber")>=0&&e(a)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/CheckImagesWithoutAttribution.js]] (workaround for [[phab:T35355]])
/**
 * Check images without a link to its description
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,e){"use strict";function a(i){var a=e("#img-checker-info").empty();e("#img-checker-info").length||(a=e('<div id="img-checker-info">').css({border:"1px solid gray",padding:"0.5em"}),c.prepend(a)),a.append(i),e.removeSpinner("check-cats")}function n(a){var n={valid:"#060",invalid:"#c96800",missing:"#A00",unknown:"#0645AD"},t=e("<ol>");return e.each(a,function(o){t.append(e("<li>").append(e("<a>").attr("href",i.util.getUrl("commons:"+o)).css("color",n[a[o]]).text(o)))}),t}function t(e){var t=Object.keys(e),o=50,r=function(i){s.get({prop:"imageinfo",iiprop:"extmetadata",iilimit:10,indexpageids:!0,titles:t.slice(i,i+o).join("|")}).done(function(s){var c,d,m,g,p;for(g=s.query&&s.query.pageids&&s.query.pageids.length||0,c=0;g>c;c+=1)if(m=s.query.pages[s.query.pageids[c]],m.missing==="")e[m.title]="missing";else for(d=0;m.imageinfo.length>d;d+=1){if(p=m.imageinfo[d].extmetadata.AttributionRequired&&m.imageinfo[d].extmetadata.AttributionRequired.value,p==="false"||p==="no"||p==="0"){e[m.title]="valid";break}if(p==="true"||p==="yes"||p==="1"){e[m.title]="invalid";break}}t.length>i+o?r(i+o):a(n(e))}).fail(function(){a("Ops! Não foi possível obter a lista de categorias das imagens do Wikimedia Commons")})};s=new i.Api({ajax:{url:"//commons.wikimedia.org/w/api.php",dataType:"jsonp"}}),r(0)}function o(){e("#firstHeading").injectSpinner("check-cats");var n={};c.find("img").filter(function(){var a=e(this),n=a.parent().attr("href");return!(n&&n.indexOf(i.util.getUrl(i.config.get("wgFormattedNamespaces")[6]+":"))===0||n&&n.indexOf("//commons.wikimedia.org/wiki/File:")===0||n&&n.indexOf("//commons.wikimedia.org/w/index.php?title=File:")===0||/\/(?:OggHandler|timeline|(?:magnify-clip|fileicon-ogg)\.png)|data:image|media\/math\/render\//.test(a.attr("src"))||a.hasClass("tool-button"))}).each(function(){var i=e(this).attr("src").replace(/^.+?\/commons\/(?:thumb\/)?[0-9a-f]\/[0-9a-f]{2}\/(.+?\.(?:png|svg|jpe?g|gif|tiff|xcf|midi|ogg|ogv|webm|flac|wave|djvu|pdf))\/.+$/i,"$1").replace(/_/g," ");i=decodeURIComponent(i),n["File:"+i]="unknown"}),e.isEmptyObject(n)?a("Não há imagens nesta página sem links para sua página de descrição."):t(n)}function r(){c=e("#mw-content-text"),e(i.util.addPortletLink("p-cactions","#","Verificar imagens sem atribuição","ca-check-imgs","Gera uma lista de imagens sem link para a página de descrição")).click(function(e){e.preventDefault(),i.loader.using(["mediawiki.api","jquery.spinner"],o)})}var s,c;e(r)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/PrevRevisionAction.js]] (workaround for [[phab:T35355]])
/**
 * Action link: Prev revision diff
 *
 * @source: www.mediawiki.org/wiki/Snippets/Last_revision_action
 * @rev: 9
 */
// <nowiki>
(function(i,e){"use strict";i.hook("wikipage.content").add(function(){if(!i.config.get("wgCanonicalSpecialPageName")){var t=i.util.getUrl(i.config.get("wgPageName"))+"?diff="+(i.config.get("wgRevisionId")||i.config.get("wgCurRevisionId")),a=e("#ca-prevdiff").find("a");a.length?a.attr("href",t):i.util.addPortletLink("p-namespaces",t,"↶","ca-prevdiff","Show diff to previous edit")}})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/LinksOnJSPages.js]] (workaround for [[phab:T35355]])
/**
 * Convert link syntax [[zz]] to true links on javascript and css pages
 * (Workaround for [[phab:T12410]] - see [[w:en:Wikipedia:Village pump (technical)/Archive 84#Script for wikilinks in CSS/JS pages]])
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,a){"use strict";function n(e){var a;for(a=0;t.length>a;a++)e=e.replace(t[a][0],t[a][1]);return e}var t,g=e.config.get("wgArticlePath"),r=e.config.get("wgFormattedNamespaces")["14"];t=[[/\[\[\s*([^\|\]\n\{\}]+?)\s*\]\]/gi,'[[<a href="'+g+'">$1</a>]]'],[/\[\[\s*([^\|\]\n\{\}]+?)\s*\|\s*([^\]\n\{\}]+?)\s*\]\]/gi,'[[<a href="'+g+'">$2</a>]]'],[RegExp('\\[\\[<a href="'+g.replace("$1","(?:Category|"+r+'):([^"]+)')+'">([^<]+)</a>\\]\\]',"gi"),'[[<a href="'+g.replace("$1","Category:$1")+'">'+r+":$1</a>|$2]]"]],(a.inArray(e.config.get("wgNamespaceNumber"),[2,8])!==-1&&e.config.get("wgPageName").match(/\.(js|css)$/)||e.config.get("wgNamespaceNumber")===828)&&a.inArray(e.config.get("wgAction"),["view","purge"])!==-1&&a("#bodyContent pre").first().find("span.s1, span.c1, span.cm, span.coMULTI, span.co1").each(function(){a(this).html(n(a(this).html()))})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/InterProjectLinks.js]] (workaround for [[phab:T35355]])
// <nowiki>
/** Adiciona ligações para os correlatos na barra lateral ([[phab:T2708]])
 * Adiciona links para os correlatos informados com [[Template:Correlatos]],
 * nas páginas especiais e nas mensagens do MediaWiki
 * @see [[wikt:de:MediaWiki:Onlyifsystem.js]]
 * @see [[commons:MediaWiki:InterProject.js]]
 * @see [[MediaWiki:Common.js]]
 * @author [[wikt:de:Melancholie]]
 * @author [[wikt:de:Pill]]
 * @author [[wikt:de:Spacebirdy]]
 * @author [[wikt:de:Balû]]
 * @author [[commons:User:Ilmari Karonen]]
 * @author [[commons:User:DieBuche]]
 * @author [[commons:User:Krinkle]]
 */
(function(e,i){"use strict";function t(){var i=e.config.get(["wgContentLanguage","wgDBname"]),t=RegExp("^"+i.wgContentLanguage);if(!t.test(i.wgDBname))return i.wgDBname;var n=i.wgDBname.replace(t,"");return n==="wiki"&&(n="wikipedia"),n}function n(e,i,t){return e.link.indexOf(t)!==-1?{text:e.text+(i!=="pt"?"":" (EN)"),url:e.link.replace("$1",i!=="pt"?"pt":"en"),bold:!0}:{text:e.text,url:e.link.replace("$1",i),bold:!1}}function a(){var i=e.config.get(["wgServer","wgArticlePath","wgCanonicalNamespace","wgCanonicalSpecialPageName","wgTitle","wgPageName"]),t=i.wgArticlePath.replace("/wiki/$1",""),n=i.wgCanonicalNamespace+":"+(i.wgCanonicalSpecialPageName||i.wgTitle.replace(/ /g,"_")),a=RegExp("^(?:https?:)?"+e.util.escapeRegExp(i.wgServer+t));return decodeURI(document.URL.replace(a,"")).replace(i.wgPageName,n)}function g(){var g=[{text:"Wikipédia",link:"//$1.wikipedia.org"},{text:"Wikilivros",link:"//$1.wikibooks.org"},{text:"Wikisource",link:"//$1.wikisource.org"},{text:"Wikcionário",link:"//$1.wiktionary.org"},{text:"Wikiversidade",link:"//$1.wikiversity.org"},{text:"Wikinotícias",link:"//$1.wikinews.org"},{text:"Wikivoyage",link:"//$1.wikivoyage.org"},{text:"Wikiquote",link:"//$1.wikiquote.org"},{text:"Wikimedia Commons",link:"//commons.wikimedia.org"},{text:"MediaWiki",link:"//www.mediawiki.org"},{text:"Wikidata",link:"//www.wikidata.org"},{text:"Meta-Wiki",link:"//meta.wikimedia.org"},{text:"Wikispecies",link:"//species.wikimedia.org"}],o=e.config.get(["wgContentLanguage","wgDBname"]),r=t(o.wgDBname,o.wgContentLanguage),w=g.map(function(e){return n(e,o.wgContentLanguage,r)}),k=a();w.forEach(function(t){var n=e.util.addPortletLink("p-interproject",t.url+k,t.text);t.bold&&i(n).find("a").css("font-weight","bold")})}function o(){var i=[-1,2,3,8,9];if(i.indexOf(e.config.get("wgNamespaceNumber"))!==-1){var t=e.util.addPortlet("p-interproject","Correlatos","#p-tb");t&&t.parentNode.appendChild(t),g()}}e.config.get("wgDBname")!=="ptwikibooks"&&i.when(e.loader.using(["mediawiki.util"]),i.ready).then(o)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/ClearSandbox.js]] (workaround for [[phab:T35355]])
/**
 * Script to clear the Sandbox
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,i){"use strict";function a(){(new e.Api).post({action:"edit",title:t[0],text:t[1],summary:t[2],minor:!0,watchlist:"nochange",token:e.user.tokens.get("csrfToken")}).done(function(i){i&&i.edit&&i.edit.result&&i.edit.result==="Success"?e.notify("A página foi editada"):e.notify("Houve um erro ao tentar editar")})}function n(){i(e.util.addPortletLink("p-views","#","Limpar","ca-clear","Limpar a página")).click(function(i){i.preventDefault(),e.loader.using("mediawiki.api",a)})}var t={ptwikibooks:["Wikilivros:Caixa_de_areia","<noinclude>{{sandbox}}<!-- escreva abaixo se faz favor --></noinclude>","Limpeza"],ptwiki:["Wikipédia:Página_de_testes/1","<!--não apague esta linha-->{{página de testes}}<!--não apague esta linha-->\n<!--Escreva abaixo da linha! -------------------------------- -->","Limpeza"],enwiki:["Wikipedia:Sandbox","{{Please leave this line alone (sandbox heading)}}\n<!-- Hello! Feel free to try your formatting and editing skills below this line. As this page is for editing experiments, this page will automatically be cleaned every 12 hours. -->","Cleaning"]}[e.config.get("wgDBname")];t&&e.config.get("wgPageName")===t[0]&&i(n)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/UnwatchFromWatchlist.js]] (workaround for [[phab:T35355]])
/**
 * Unwatch from watchlist
 *
 * Add an "unwatch" link near each entry on the watchlist view ([[phab:T2424]]).
 *
 * @author Krinkle, 2011-2014
 * @source: [[mw:Snippets/Unwatch_from_watchlist]]
 * @revision 2014-11-22
 */
// <nowiki>
(function(i,t){"use strict";function a(i){var a=i.find('ul.special > li > a[href$="action=history"]');t.each(a,function(){var i=t(this),a=i.clone().text("unwatch").css("color","gray").attr("href",function(i,t){return t.replace("action=history","action=unwatch")});i.after(a).after(" | ")})}i.config.get("wgCanonicalSpecialPageName")==="Watchlist"&&window.location.href.indexOf("/edit")===-1&&window.location.href.indexOf("/raw")===-1&&i.hook("wikipage.content").add(a)})(mediaWiki,jQuery);
// </nowiki>
if( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Watchlist' && /\/cw$/.test( mw.config.get( 'wgTitle' ) ) ){
// [[File:User:He7d3r/Tools/CrossWikiWatchlist.js]] (workaround for [[phab:T35355]])
/**
 * Cross-Wiki Watchlist
 *
 * @author: Helder (https://github.com/he7d3r)
 * @author: Legoktm (https://github.com/legoktm)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,e){"use strict";function t(i,t){var a=e.Deferred(),o="https://"+i+"/w/api.php",n={url:o,data:t,dataType:"json"};return i!==location.host&&(t.origin="https://"+location.host,n.xhrFields={withCredentials:!0}),e.ajax(n).done(function(e){a.resolve(i,e)}).fail(a.reject),t.origin=void 0,a.promise()}function a(i,t){var a=[],o="proj-"+i.url.replace(/^www\.(mediawiki|wikidata)\.org$/,"$1").replace(/^(meta|commons|species|incubator)\.wikimedia\.org$/,"$1").replace(/^.+?\./,"").replace(/\.org$/,""),n=function(i){return 10>i?"0"+i:i+""},s=i.newlen-i.oldlen,r=s>0?"mw-plusminus-pos":s===0?"mw-plusminus-null":"mw-plusminus-neg",l='<span class="mw-changeslist-separator">. .</span> ';return a.push(o),i.notificationtimestamp!==""&&i.timestamp>=new Date(i.notificationtimestamp)?a.push("mw-changeslist-line-watched"):a.push("mw-changeslist-line-not-watched"),a.push(t?"mw-line-odd":"mw-line-even"),e("<li></li>").addClass(a.join(" ")).append("(",e("<a></a>").attr("href","//"+i.url+"/?diff="+i.revid).text("diff")," | ",e("<a></a>").attr("href","//"+i.url+"/?action=history&curid="+i.pageid).text("hist"),")  ",l,i.minor===""?e("<abbr></abbr>").addClass("minoredit").attr("title","This is a minor edit").text("m"):"",i.unpatrolled===""?e("<abbr></abbr>").addClass("unpatrolled").attr("title","This edit has not yet been patrolled").text("!"):"",i.bot===""?e("<abbr></abbr>").addClass("botedit").attr("title","This edit was performed by a bot").text("b"):""," ",e("<span></span>").addClass("mw-title").append(e("<a></a>").addClass("mw-changeslist-title").attr("href","//"+i.url+"/wiki/"+encodeURIComponent(i.title)).text(i.title)),"; ",n(i.timestamp.getUTCHours()),":",n(i.timestamp.getUTCMinutes()),l,e("<span></span>").addClass(r).append("(",s>0?"+"+s:s,") "),l,e("<a></a>").attr("href","//"+i.url+"/wiki/User:"+encodeURIComponent(i.user)).text(i.user)," (",e("<a></a>").attr("href","//"+i.url+"/wiki/User_talk:"+encodeURIComponent(i.user)).text("talk")," | ",e("<a></a>").attr("href","//"+i.url+"/wiki/Special:Contributions/"+encodeURIComponent(i.user)).text("contribs"),") ",i.parsedcomment===""?"":e("<span></span>").addClass("comment").html(i.parsedcomment.replace(/"\/wiki\//g,'"//'+i.url+"/wiki/")).prepend("(").append(")"))}function o(t){var o,n=new Date;n.setUTCHours(0,0,0,0),n.setUTCDate(n.getUTCDate()+1),e.each(t,function(t,s){n>s.timestamp&&(o&&r.append(o),o=e('<ul class="special"></ul>'),n.setDate(n.getDate()-1),r.append(e("<h4></h4>").text([s.timestamp.getUTCDate(),i.config.get("wgMonthNames")[s.timestamp.getUTCMonth()+1],s.timestamp.getUTCFullYear()].join(" ")))),o.append(a(s,t%2===1))}),r.append(o)}function n(a,n){var s,l,p,m,d=[];for(typeof a=="string"&&(a=[a]),s={action:"query",format:"json",list:"watchlist",wlprop:"flags|ids|notificationtimestamp|parsedcomment|sizes|timestamp|title|user",wltype:"edit",wllimit:"50"},n.show.length&&(s.wlshow=n.show.join("|")),m=0;a.length>m;m++)d.push(t(a[m],s));e.when.apply(e,d).done(function(){function i(i,e){e.url=n[a][0],e.timestamp=new Date(e.timestamp),p.push(e)}function t(i,e){return e.timestamp.getTime()-i.timestamp.getTime()}var a,n=Array.prototype.slice.call(arguments);for(p=[],a=0;n.length>a;a++)n[a][1].error?r.prepend(e('<div class="error"></div>').append(n[a][0],": ",n[a][1].error.code,": ",n[a][1].error.info)):e.each(n[a][1].query.watchlist,i);l=window.wgWatchlist||[],l=l.concat(p),window.wgWatchlist=l.sort(t),o(l)}).fail(function(){i.log.warn(arguments)})}function s(){var t=(e("#mw-watchlist-form").attr("action",i.util.getUrl("Special:Watchlist/cw")),i.user.options.get("userjs-cw-watchlist",[i.config.get("wgUserLanguage").split("-")[0]+".wikipedia.org","meta.wikimedia.org"])),a={};typeof t=="string"&&(t=JSON.parse(t)),r=e(".mw-changeslist").first(),r.length||(r=e("#mw-content-text")),r.empty(),a.show=[e("#hideminor").is(":checked")?"!minor":"minor",e("#hidebots").is(":checked")?"!bot":"bot",e("#hideanons").is(":checked")?"!anon":"anon",e("#hidepatrolled").is(":checked")?"!patrolled":"patrolled"],i.util.addCSS(["li.proj-wikibooks { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/e/ec/Wikibooks-favicon.png); }","li.proj-wikinews { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/a/ac/Wikinews-favicon.png); }","li.proj-wikipedia { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/b/b0/Wikipedia-favicon.png); }","li.proj-wikiquote { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/8/8c/Wikiquote-favicon.png); }","li.proj-wikisource { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/3/3e/Wikisource-favicon.png); }","li.proj-wikiversity { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/4/4b/Wikiversity-favicon.png); }","li.proj-wikivoyage { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/thumb/d/d8/Wikivoyage_favicon.svg/16px-Wikivoyage_favicon.svg.png); }","li.proj-wiktionary { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/thumb/8/83/En.wiktionary_favicon.svg/16px-En.wiktionary_favicon.svg.png); }","li.proj-mediawiki { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/thumb/b/bb/MediaWiki-notext.svg/16px-MediaWiki-notext.svg.png); }","li.proj-commons { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/4/47/Wikimedia_Commons_favicon.png); }","li.proj-meta { list-style-image: url(//upload.wikimedia.org/wikipedia/commons/thumb/7/75/Wikimedia_Community_Logo.svg/16px-Wikimedia_Community_Logo.svg.png); }"].join("\n")),n(t,a)}var r;i.config.get("wgCanonicalSpecialPageName")==="Watchlist"&&/\/cw$/.test(i.config.get("wgTitle"))&&e.when(e.ready,i.loader.using(["mediawiki.util","user.options"])).then(s)})(mediaWiki,jQuery);
// </nowiki>
}
// [[File:User:He7d3r/Tools/WarningOnUnsignedComments.js]] (workaround for [[phab:T35355]])
/**
 * Warning on unsigned comments
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,a){"use strict";function i(){a("#wpSave").on("click",function(i){var n=a("#wpTextbox1"),o=n.val(),c=e.config.get("wgNamespaceNumber")%2===1||o.indexOf(" (UTC)")!==-1,s=/~{4}(?!<\/nowiki>)/.test(o),t='Parece que esqueceu de colocar "~~~~" no final da mensagem para assinar o seu comentário. Deseja salvar mesmo assim?';!c||s||confirm(t)||(n.focus(),i.preventDefault(),e.log("Não salvar"))})}a.inArray(e.config.get("wgAction"),["edit","submit"])!==-1&&a(i)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/EditSandbox.js]] (workaround for [[phab:T35355]])
/**
 * Script para que o link para a página de testes da Wikipédia abra a primeira que estiver vazia
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,i){"use strict";function t(i){var t,a,r=i.query;if(i.error!==void 0)alert("Erro da API: "+i.error.code+". "+i.error.info);else if(r&&r.pages&&r.pageids){for(a=0;r.pageids.length>a;a++)if(t=r.pages[r.pageids[a]],t.revisions[0]["*"].length===142)return location.href=e.util.getUrl(t.title)+"?action=edit",!0;alert("Todas as páginas de teste estão ocupadas")}else alert("Houve um erro desconhecido ao consultar a API da Wikipédia")}function a(){i("#n-testpage").injectSpinner("testpage"),i.ajax({url:e.util.wikiScript("api"),dataType:"json",data:{format:"json",action:"query",titles:"Wikipédia:Página de testes/1|Wikipédia:Página de testes/2|Wikipédia:Página de testes/3|Wikipédia:Página de testes/4",prop:"revisions",rvprop:"content",indexpageids:"1"}}).done(t).fail(function(){alert("Houve um erro ao usar AJAX para obter o conteúdo das páginas de testes.")})}i(function(){i("#n-testpage").click(function(i){i.which===1&&(i.preventDefault(),e.loader.using(["jquery.spinner"],a))}).find("a").attr("href",e.util.getUrl("WP:Página de testes/1")+"?action=edit")})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/ConvertToSearchLinks.js]] (workaround for [[phab:T35355]])
/**
 * This function replaces the "original expression" of each rule by a link
 * to search for ocurrences of that expression on wiki pages
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,e){"use strict";var t=function(){var t=e("#bodyContent").find("li"),o=/^\s*(\S[^:]*?)\s*:\s*([\S].*?)\s*(?:\/\/.*?)?$/;t.each(function(){var t=e(this),r=i.util.getUrl("Special:Search",{fulltext:1,search:'"'}),a=o.exec(t.text());a&&a[1]&&a[2]&&t.html(function(e,t){var n=i.html.element("a",{href:r+a[1]+'"',title:"Pesquisar ocorrências deste termo na wiki"},a[1]),c=n+": "+a[2]+" "+a[3];return t.replace(o,c)})})};e.inArray(i.config.get("wgPageName"),["Wikipédia:Dicionário","Wikipédia:Dicionário/pt-AO","Wikipédia:Dicionário/pt-BR","Wikipédia:Dicionário/pt-PT","Wikisource:Modernização/Dicionário","Wikisource:Modernização/Dicionário/pt-BR","Wikisource:Modernização/Dicionário/pt-PT"])!==-1&&(i.loader.load("//meta.wikimedia.org/w/index.php?title=User:He7d3r/Tools/LanguageConverterDistances.js&action=raw&ctype=text/javascript"),e(i.util.addPortletLink("p-cactions","#","Convert to search links","ca-convert-to-search","Replace the left hand side of each convertion rule by a link to the search page")).click(function(i){i.preventDefault(),t()}))})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/FormatSaleBotRegexes.js]] (workaround for [[phab:T35355]])
/**
 * Format Salebot regexes on [[w:User:Salebot/Config]]
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(t,n){"use strict";function e(){var t={0:"transparent",5:"#CFC",10:"#6F6",15:"#FFC",20:"#FCA",25:"#F99",30:"#F66"};n("#mw-content-text").find("pre").each(function(){var e=n(this);e.html(e.html().replace(/\s*([\-+#]?\d+)\s*(\/.+\/) *(#.+)?/g,function(n,e){var i=parseInt(e,10);return isNaN(i)?n:(i=Math.abs(i),i-=i%5,'<span style="background-color:'+t[i]+';">'+n+"</span>")}))})}t.config.get("wgTitle")==="Salebot/Config"&&t.config.get("wgAction")==="view"&&n(e)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/UserPages.js]] (workaround for [[phab:T35355]])
/**
 * Customize user pages
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,i){"use strict";function t(t){var n=t.query&&t.query.pages||{},a=RegExp("^.+?"+e.util.escapeRegExp(s)+"\\/"),r=[];return i.each(n,function(e,i){/\.(j|cs)s$/g.test(i.title)&&r.push([i.title,Date.parse(i.revisions[0].timestamp)])}),r.length===0?(i("#js-info").find("a").text("Este editor não possui páginas de JS nem CSS"),void 0):(i("#js-info").remove(),r.sort(function(e,i){return i[1]-e[1]}),i.each(r,function(t,n){var s=i(e.util.addPortletLink("p-js-list",e.util.getUrl(n[0],{diff:0}),n[0].replace(a,"")));((new Date).getTime()-n[1])/864e5>7&&s.find("a").css("color","gray")}),void 0)}function n(){(new e.Api).get({prop:"revisions",rvprop:"timestamp|size",generator:"allpages",gapprefix:s,gapnamespace:2,gaplimit:500,gapminsize:1}).done(t)}function a(){if(i("#p-variants").after(i("#p-cactions").clone().attr("id","p-js-list").find("ul").empty().end().find("span").text("JS").end()),i(e.util.addPortletLink("p-js-list","#","Obter lista...","js-info")).add("#p-js-list h3").one("click",function(i){i.preventDefault(),e.loader.using(["mediawiki.api","mediawiki.util"],n)}),e.config.get("wgTitle").indexOf(e.config.get("wgUserName"))===-1){var t=i("#firstHeading").html();t!==e.config.get("wgPageName")&&i("#firstHeading").html(e.config.get("wgPageName").replace(/_/g," ")),i("#mw-content-text *").filter(function(){return i(this).css("position")==="fixed"}).css("position","static")}}var s=e.config.get("wgTitle").split("/")[0];i.inArray(e.config.get("wgNamespaceNumber"),[2,3])>-1&&i.inArray(e.config.get("wgAction"),["view","purge"])>-1&&i(a)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/BytesPerEditor.js]] (workaround for [[phab:T35355]])
/**
 * Bytes por editor
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function r(r){var a,i,n,s,o={},d=[],l="<h2>Tamanho total das contribuições de cada editor desta página</h2>\n";if(r.query&&r.query.pages&&r.query.pageids){for(a=r.query.pages[r.query.pageids[0]].revisions,o[a[0].user]=a[0].size,i=1;a.length>i;i++)n=a[i].user,s=a[i].size-a[i-1].size,o.hasOwnProperty(n)?o[n]+=s:o[n]=s;t.each(o,function(t,r){d.push('<tr><td><a href="'+e.util.getUrl("User:"+t)+'">'+t+"</a></td><td>"+r+"</td></tr>")}),l+='<table class="wikitable sortable"><thead><tr><th class="headerSort" title="Ordenar por ordem ascendente">Editor</th><th class="headerSort" title="Ordenar por ordem ascendente">Bytes</th></tr></thead><tbody>'+d.join("\n")+"</tbody></table>",t("#mw-content-text").prepend(l).find("table").tablesorter()}else alert("The edit query returned an error. =(")}function a(){(new e.Api).get({prop:"revisions",titles:e.config.get("wgPageName"),indexpageids:1,rvlimit:500,rvdir:"newer",rvprop:"user|size"}).done(r).fail(function(){alert("The ajax request failed.")})}e.config.get("wgNamespaceNumber")!==-1&&t(function(){t(e.util.addPortletLink("p-cactions","#","Bytes por editor","t-bytes-editor","Ver o tamanho total das contribuições de cada editor desta página")).click(function(t){t.preventDefault(),e.loader.using(["mediawiki.api","jquery.tablesorter"],a)})})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/AjaxRollbackLinks.js]] (workaround for [[phab:T35355]])
/**
 * Makes [rollback] links for edits excecute without an additional page load. Including self-closing bookmarklet option.
 *
 * @see: [[phab:T33270]]
 * @author: [[w:en:User:Gracenotes]]
 * @author: [[m:User:Krinkle]]
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 * @source: Based on [[m:User:Krinkle/Scripts/AjaxPatrolLinks.js]] and [[w:en:User:Gracenotes/rollback.js]]
 * FIXME: Use MediaWiki API
 */
// <nowiki>
(function(e){"use strict";function t(){var t,r,a=e(".mw-rollback-link a"),o=function(t){t.preventDefault();var r=e(this),l=r.attr("href")+"&bot=1";r.text("Rolling back..."),a=r.parent(),e.get(l,null,function(t,a){a==="success"?(r.text("Rolled back").css("color","green").attr("href",mw.util.getUrl(null,{diff:0})).off("click",o),e(".patrollink").remove()):r.html('<span style="color:red">Rollback failed</span>')})};a.length>0&&(r="Foram revertidas as edições de $user",t=e("#mw-diff-otitle2").find("a").first().text(),t&&(r+=", com o conteúdo passando a estar como na última edição de "+t),r+=".",a.each(function(){var t=e(this);t.after(t.clone().text("+sum").attr("class","").click(function(e){var t,a=this.href,l=a.match(/[?&]from=([^&]*)/);e.preventDefault(),l&&(l=decodeURIComponent(l[1].replace(/\+/g," ")),t=prompt('Informe mais detalhes sobre o motivo desta reversão.\n\nDeixe em branco para utilizar o padrão. $user será trocado por "'+l+'".'),t!==null&&(t===""&&o.call(this,e),this.href+="&summary="+encodeURIComponent((r+" "+t.charAt(0).toUpperCase()+t.slice(1)).replace(/\$user/g,l)),o.call(this,e)))})).after(" | ").click(o)}))}e.when(mw.loader.using("mediawiki.util"),e.ready).then(t)})(jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/AssessmentHelper.js]] (workaround for [[phab:T35355]])
/**
 * Add some useful links for assessment of Wikipedia articles
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,a){"use strict";function i(e){var a,i,o,r=[];for(o=0;e[0].length>o;o++){for(a=[],i=0;e.length>i;i++)a.push(e[i][o]);r.push(a.join(" | "))}return["<!-- ### inicio ### -->{{Matriz de classificação","| "+r.join("\n| "),"|sobre="+f,"|projeto=Portal:"+f.charAt(0).toUpperCase()+f.slice(1),"}}","<small>'''última atualização''': ~~~~~</small>","","<!-- ### fim ### -->"].join("\n")}function o(e,a){var i,o,r=0;for(i=0;e.length>i;i++)for(o=0;a.length>o;o++)if(e[i].pageid===a[o].pageid){r++;break}return r}function r(e,i){a.each(C[e],function(r){y[r]=[],a.each(C[i],function(a){y[r][a]=o(h[e][r],h[i][a])})})}function t(o){var n={format:"json",action:"query",list:"categorymembers",cmlimit:"500",cmtitle:"Category:"+C[P[k]][v].replace(/\$1/g,f),cmprop:"ids"};o&&(n.cmcontinue=o),a.ajax({url:e.util.wikiScript("api"),dataType:"json",data:n}).done(function(o){o?o.error!==void 0?alert("Erro da API: "+o.error.code+". "+o.error.info):o.query&&o.query.categorymembers?(a.merge(h[P[k]][v],o.query.categorymembers),o["query-continue"]?t(o["query-continue"].categorymembers&&o["query-continue"].categorymembers.cmcontinue):(q++,e.notify("Concluída a análise de "+q+" das "+b+" categorias ("+(100*q/b).toFixed(1)+"%)",{tag:"category-analysis"}),v++,C[P[k]].length>v?t():(k++,P.length>k?(v=0,t()):(r("quality","importance"),a("#mw-content-text").prepend("Código wiki:<br><pre>"+e.html.escape(i(y))+"</pre>"))))):alert("Houve um erro ao consultar os membros da categoria."):alert("Erro: A API não retornou dados.")}).fail(function(){alert("Houve um erro ao usar AJAX para consultar os membros da categoria.")})}function n(){var i,o;i=function(e){var a,i=e.query.pages,o=e.query.pageids;a=i[o[0]].revisions[0]["*"],x(a)},o=function(o){a.getJSON(e.util.wikiScript("api"),{format:"json",action:"query",titles:o,prop:"revisions",rvprop:"content",indexpageids:"1"},i)},e.config.get("qcAutoCheck")&&o(e.config.get("wgPageName")),a(e.util.addPortletLink("p-cactions","#",e.msg("ah-check-quality-link"),"ca-ah-quality",e.msg("ah-check-quality-desc"))).click(function(a){a.preventDefault(),o(e.config.get("wgPageName"))})}function s(){a(e.util.addPortletLink("p-cactions","#",e.msg("ah-check-priority-link"),"ca-ah-priority",e.msg("ah-check-priority-desc"))).click(function(e){e.preventDefault(),j()})}function c(){var i=e.util.addPortletLink("p-cactions","#",e.msg("ah-matrix-updater-link"),"ca-ah-matrix-updater",e.msg("ah-matrix-updater-desc"));a(i).click(function(e){e.preventDefault(),h={},y=[],v=0,k=0,b=0,q=0,f=prompt("Informe o nome do wikiprojeto:","matemática"),f&&(a.each(P,function(e){var i=P[e];h[P[e]]=[],a.each(C[i],function(e){b++,h[i][e]=[]})}),t())})}function u(e,a,i){var o,r,t,n='{| class="wikitable sortable"\n';if(a&&(n+="|+ "+a+"\n"),!i)for(i=[],r=0;e.length>r;r++)i[r]="$"+(r+1);for(i="|-\n|"+i.join("||")+"\n",n+="|-\n!"+e[0].join("||")+"\n",o=1;e.length>o;o++){for(t=i,r=0;e.length>r;r++)t=t.replace(RegExp("\\$"+(r+1),"g"),e[o][r]);n+=t}return n+="|}"}function l(){var i=S.length,o=0,r=0,t=[["Páginas","Afluentes"]];a.each(S,function(n){var s=S[n];a.getJSON(e.util.wikiScript("api"),{format:"json",action:"query",list:"backlinks",bltitle:s,blnamespace:e.config.get("wgContentNamespaces").join("|"),blfilterredir:"nonredirects",blredirect:!0,bllimit:500,indexpageids:!0},function(n){var c;t.push([s,n.query.backlinks.length]),o++,r+=(n.query.backlinks.length-r)/o,e.notify("Processando a página "+o+" de um total de "+i+".",{tag:"page-analysis"}),o===i&&(c="Os artigos da [[:"+$+"]] têm em média "+Math.round(r)+" afluentes.\n\n",c+=u(t,"Número de afluentes das páginas de [[:"+$+"|"+$+"]]",["[[:$1]]","[[Special:Páginas afluentes/$1|$2]]"]),a("#mw-content-text").prepend('<b>Código wiki:</b><br/><br/><textarea cols="80" rows="40" style="width: 100%; font-family: monospace; line-height: 1.5em;">'+e.html.escape(c)+"</textarea>"))})})}function d(i,o){var r={format:"json",action:"query",generator:"categorymembers",gcmtitle:i,gcmlimit:"500",indexpageids:"1"};o&&(r.gcmcontinue=o),a.ajax({url:e.util.wikiScript("api"),dataType:"json",data:r}).done(function(o){var r;o?o.error!==void 0?alert("Erro da API: "+o.error.code+". "+o.error.info):o.query&&o.query.pageids&&o.query.pages?(a.each(o.query.pageids,function(e){S.push(o.query.pages[o.query.pageids[e]].title.replace(/^(?:Anexo )?Discussão:/g,""))}),r=o["query-continue"]&&o["query-continue"].categorymembers&&o["query-continue"].categorymembers.gcmcontinue,r?d(i,r):(e.notify("Concluída a consulta à "+i+".",{tag:"category-analysis"}),l())):alert("Houve um erro inesperado ao consultar os membros da categoria."):alert("Erro: a API não retornou dados.")}).fail(function(){alert("Houve um erro ao usar AJAX para consultar os membros da categoria.")})}function p(i,o){var r={format:"json",action:"query",prop:"links",pllimit:500,titles:i,indexpageids:!0,rawcontinue:1};o&&(r.plcontinue=o),a.ajax({url:e.util.wikiScript("api"),dataType:"json",data:r}).done(function(o){var r;o?o.error!==void 0?alert("Erro da API: "+o.error.code+". "+o.error.info):o.query&&o.query.pageids&&o.query.pages?(S=a.map(o.query.pages[o.query.pageids[0]].links,function(e){return e.title}),r=o["query-continue"]&&o["query-continue"].links&&o["query-continue"].links.plcontinue,r?p(i,r):(e.notify('Concluída a consulta à lista de links da página "'+i+'".',{tag:"page-links-analysis"}),l())):alert("Houve um erro inesperado ao consultar a lista de links da página."):alert("Erro: a API não retornou dados.")}).fail(function(){alert("Houve um erro ao usar AJAX para consultar a lista de links da página.")})}function g(){a(e.util.addPortletLink("p-cactions","#","Gerar tabela de afluentes (categoria)","ca-ah-backlinks","Produz uma tabela com o número de afluentes por artigo da categoria especificada")).click(function(a){a.preventDefault();var i=prompt("Informe o nome de uma categoria (usada nos artigos ou nas páginas de discussão):",e.config.get("wgNamespaceNumber")===14?e.config.get("wgPageName").replace(/_/g," "):"Categoria:!Artigos de qualidade 2 sobre matemática");i&&d(i)})}function m(){a(e.util.addPortletLink("p-cactions","#","Gerar tabela de afluentes (lista)","ca-ah-backlinks-from-list","Produz uma tabela com o número de afluentes por página para a qual há um link nesta página")).click(function(a){a.preventDefault(),p(e.config.get("wgPageName"))})}e.messages.set({"ah-check-quality-link":"Estimar qualidade","ah-check-quality-desc":"Executa alguns testes automatizados no código wiki da página para estimar sua qualidade","ah-check-priority-link":"Ver prioridade","ah-check-priority-desc":"Consulta a importância informada na página de discussão do artigo correspondente na Wikipédia inglesa","ah-matrix-updater-link":"Gerar matriz atualizada","ah-matrix-updater-desc":"Analisa as categorias de qualidade e importância do wikiprojeto e gera a versão atualizada do código wiki da matriz correspondente","ah-inform-lua-module":'<div class="error">Atenção! O <a href="$1">Módulo:Avaliação</a> já <a href="$2">está funcionando</a>. A partir de agora, só grave a avaliação se ela for diferente da que aparece por padrão.</div>',"ah-inform-level":'Estima-se que esta página seja de qualidade $1 conforme os <a href="$2">critérios da Wikipédia</a>.',"ah-inform-inconsistency":'Estima-se que esta página seja de qualidade $1 conforme os <a href="$2">critérios da Wikipédia</a>. No entanto, ela não cumpre os critérios para ser de nível $3.',"ah-inform-featured-article-inconsistency":"Confira se ela foi mesmo eleita como um artigo destacado.","ah-inform-good-article-inconsistency":"Confira se ela foi mesmo eleita como um artigo bom.","ah-ask-for-update-text":"Gravar esta avaliação mesmo assim","ah-ask-for-update-title":"Clique para confirmar que esta página é de qualidade $1 e gravar esta informação na discussão","ah-quality-update-summary":"Atualização: esta página cumpre os [[Predefinição:Escala_de_avaliação|requisitos]] para ser de [[Wikipédia:Qualidade|qualidade]] $1","ah-successful-update":"A qualidade da página foi atualizada.","ah-report":"Estatísticas:<ul><li>$1 $2 caracteres de código wiki</li><li>$3 $4 ligações internas</li><li>$5 $6 seções</li><li>$7 $8 parágrafos</li><li>$9 $10 referências</li><li>$11 $12 imagens</li></ul>"});var f,h,y,v,k,b,q,A=function(i,o,r){a.ajax({url:e.util.wikiScript("api"),type:"POST",dataType:"json",data:{format:"json",action:"edit",title:i,text:o,summary:r,token:e.user.tokens.get("csrfToken")}}).done(function(a){a&&a.edit&&a.edit.result&&a.edit.result==="Success"?e.notify(e.msg("ah-successful-update")):alert("Houve um erro ao requisitar a edição da página.")}).fail(function(){alert("Houve um erro ao usar AJAX para editar a página.")})},w=function(i,o){var r=function(a){var r,t=/\{\{\s*[Mm]arca de projeto\s*\|\s*(\?|0?\d)([^\n\}]*?)\s*(\|\s*rev\s*=\s*\d+\s*)?\}\}/;r=a?a.replace(t,function(e,a,i){return"{{marca de projeto|"+o+i+"|{"+"{subst:rev}}}}"}):"{{marca de projeto|"+o+"}}",e.log(a,r),A(i,r,e.msg("ah-quality-update-summary",o))};a.ajax({url:e.util.wikiScript("api"),dataType:"json",data:{format:"json",action:"query",titles:i,prop:"revisions",rvprop:"content",indexpageids:"1"}}).done(function(e){e.error!==void 0?alert("Erro da API: "+e.error.code+". "+e.error.info):e.query&&e.query.pages&&e.query.pageids?e.query.pages[e.query.pageids[0]].missing===""?r(""):r(e.query.pages[e.query.pageids[0]].revisions[0]["*"]):alert("Houve um erro inesperado ao usar a API do MediaWiki.")}).fail(function(){alert("Houve um erro ao usar AJAX para consultar o conteúdo da página.")})},x=function(i){var o,r,t,n,s,c,u,l,d,p=4,g=0,m={},f={},h=i.match(/(?:^|\n\n|==\n)[^*\n].{100,}?(?=\n\n|\n==|$)/g),y=i.match(/\[\[[^:]*?\]\]/g),v=i.match(/(?:^|\n)==\s*[^\n\}\{]+?\s*==[\s\S]+?(?=\n==[^=\n]|$)/g),k={size:i.length,links:y&&y.length||0,sections:v&&v.length||0,paragraphs:h&&h.length||0,references:i.split(/<ref[^\n\/]*?>[\s\S]*?<\/ref>|<ref\s*[\s\S]+?\/>|\{\{(?:[Cc]it(?:ar?|e)|[Rr]ef)/).length-1,images:i.split(/\[\[(?:Imagem?|File|Ficheiro|Arquivo)/).length-1},b=a('<div id="ah-report">'),q=e.config.get("wgNamespaceNumber"),A=e.config.get("wgFormattedNamespaces")[q-q%2+1]+":"+e.config.get("wgTitle"),x={},j="";for(r=function(e){return/<ref|\{\{(?:[Cc]it(?:ar?|e)|[Rr]ef)/.test(e)},t=function(e){var a=0;if(!h)return!1;for(a=0;h.length>a;a++)if(h[a].length>e)return!0;return!1},n=function(i,o){a.each(o,function(a,i){var r=e.util.escapeRegExp(i.charAt(0)),t=r.toUpperCase(),n=r.toLowerCase();r.length===1&&t!==n&&(r="["+t+n+"]"),o[a]=r+e.util.escapeRegExp(i.substr(1))});var r=RegExp("\\{\\{"+o.join("|"));return r.test(i)},s=function(e,a){var i;for(i=a.length-1;i>=0;i--)if(e.indexOf("{{"+a[i])===-1)return!1;return!0},c={size:{2:function(e){return r(e)?2e3:8e3},3:12e3,4:2e4},links:{2:10,3:30,4:50},sections:{3:3,4:5},paragraphs:{2:5,3:5,4:5},references:{3:5,4:10},images:{3:1,4:2},"paragraph-length":{2:2500,3:2500,4:2500},"template-black-list":{2:["contexto","reciclagem","reciclar-sobre"],3:["contexto","reciclagem","reciclar-sobre","esboço","wikificação","revisão"],4:["Mtag","Mtag/doc","Multitag","Artigo com problemas","Artigo longo","Artigo sobre direito com problemas","Disputa-bpv","BSRE","Caracteres não-padrão","Sem cat","Contextualizar","Contextualizar2","Conteúdo parcial","Controverso","Corrigir","Ctx","Ctx2","Direitos-autorais","Divisão","Em tradução","Expandir","Expandir2","S-fontes-bpv","Sem-fontes-bpv","Fusão","Fusão com","Fusão vot","Fusão de","Global","Global/Brasil","Global/Lusofonia","Global/Portugal","Hanzi","Idioma estrangeiro","Semimagem-arquitetura","Semimagem-sobre","Conflito interwiki","Matrad","Matrad/Código","Má introdução","Má tradução","Não enciclopédico","Não informado","Não informado n","Não-enc","Não-enciclopédico2","Parcial","Parcialcontroverso","Wikipédia:Projetos/Páginas novas","Publicidade","Rec","Reciclagem","Reciclar-sobre","Ren-pag","Renomear página","Revisão-sobre","Revisão","Revisão de tradução","Sem-fontes-sobre","Separar","Suspeito","Suspeito2","Tradução de","Curiosidades","VDA","VDA2","Wikificação","Wkf","Encontre fontes","Fonte primária religiosa","Carece de fontes","Carece de fontes/bloco","Carece de fontes2","Fontes primárias","Fpr","M-notas","Mais notas","Pesquisa inédita","S-fontes","S-fontes-bpv","S-notas","Sem-fontes-sobre","Sem notas","Sem-fontes","Sem-fontes-bpv","F-referências","Formatar referências"]}},u=1;p>=u;u++)f[u]=!0;for(a.each(c,function(e,o){m[e]=[],a.each(f,function(a){var r,u=o[a];if(a=parseInt(a,10),!u)return m[e].push(a),!0;switch(typeof u=="function"&&(u=u(i),c[e][a]=u),e){case"size":case"links":case"sections":case"paragraphs":case"references":case"images":r=k[e]>=u;break;case"paragraph-length":r=!t(u);break;case"template-black-list":r=!n(i,u);break;case"template-list":r=s(i,u)}r&&m[e].push(a)}),a.each(f,function(i){i=parseInt(i,10),f[i]&&a.inArray(i,m[e])===-1&&(f[i]=!1)})}),e.log("meetReq=",m),l=p;l>0;l--)if(g>0){if(!f[l])break}else f[l]&&(g=l);return l===0?b.html(e.msg("ah-inform-level",g,e.util.getUrl("Wikipédia:Avaliação automática"))):b.html(e.msg("ah-inform-inconsistency",g,e.util.getUrl("Wikipédia:Avaliação automática"),l)),p>g&&(n(i,["artigo bom"])?b.append("<br>").append(e.msg("ah-inform-good-article-inconsistency",e.util.getUrl("Wikipédia:Avaliação automática"),g)):n(i,["artigo destacado"])&&b.append("<br>").append(e.msg("ah-inform-featured-article-inconsistency",e.util.getUrl("Wikipédia:Avaliação automática"),g))),a.each(["size","links","sections","paragraphs","references","images"],function(e,a){var i,o,r,t=1.4*(c[a][p]||0);for(k[a]>t&&(t=k[a]),x[a]=k[a],c[a][g]&&(x[a]+=" > "+c[a][g]),e=1;p>e;e++)o=(c[a][e+1]||0)-(c[a][e]||0),r=100*(o/t).toFixed(2),j+="#ah-"+a+" .ah-q"+e+"{ width: "+r+"%; } ";i=100*((k[a]||0)/t).toFixed(2),j+="#ah-"+a+" .ah-percent { left: "+i.toFixed(2)+"%; } "}),e.util.addCSS(j),d='<span class="ah-percent">&nbsp;</span><span class="ah-q1"></span><span class="ah-q2"></span><span class="ah-q3"></span></div>',o=a("<input>",{id:"ah-update-link",type:"submit",value:e.msg("ah-ask-for-update-text",g),title:e.msg("ah-ask-for-update-title",g)}).click(function(e){e.preventDefault(),o.prop("disabled",!0),w(A,g)}),b.append("<br>").append(e.msg("ah-report",'<div id="ah-size">'+d,x.size,'<div id="ah-links">'+d,x.links,'<div id="ah-sections">'+d,x.sections,'<div id="ah-paragraphs">'+d,x.paragraphs,'<div id="ah-references">'+d,x.references,'<div id="ah-images">'+d,x.images)).append("<br>").append(e.msg("ah-inform-lua-module",e.util.getUrl("Módulo:Avaliação"),e.util.getUrl("Wikipédia Discussão:Avaliação automática#Implementado!"))).append(o),a("#mw-content-text").prepend(b),g},j=function(){var i=a("#p-lang").find(".interwiki-en a").attr("href"),o="Talk:"+decodeURIComponent((i||"").replace(/^.+\/wiki\//g,""));a.ajax({url:"//en.wikipedia.org/w/api.php",dataType:"jsonp",data:{format:"json",action:"query",prop:"categories",cllimit:20,titles:o,indexpageids:"1"}}).done(function(i){var o,r=!1,t={Top:4,High:3,Mid:2,Low:1};try{o=i.query.pages[i.query.pageids[0]].categories}catch(n){return e.notify("Não foi possível possível determinar a prioridade do artigo na Wikipédia inglesa.",n),!1}return o?(a.each(o,function(a){var i=o[a].title.match(/Category:(Top|High|Mid|Low)-Priority/);return i&&i[1]?(r=!0,e.notify('Este artigo corresponde a um de prioridade "'+i[1]+'" na Wikipédia inglesa. Considere indicar na discussão que ele é de importância '+t[i[1]]+"."),!1):void 0}),r?void 0:(e.notify("Não foi possível possível determinar a prioridade do artigo na Wikipédia inglesa."),!1)):(e.notify("Ainda não foi informada a prioridade da versão inglesa deste artigo."),!1)})},C={quality:["!Artigos de qualidade 1 sobre $1","!Artigos de qualidade 2 sobre $1","!Artigos de qualidade 3 sobre $1","!Artigos de qualidade 4 sobre $1","!Artigos bons sobre $1","!Artigos destacados sobre $1","!Artigos de qualidade desconhecida sobre $1"],importance:["!Artigos de importância 4 sobre $1","!Artigos de importância 3 sobre $1","!Artigos de importância 2 sobre $1","!Artigos de importância 1 sobre $1","!Artigos de importância desconhecida sobre $1"]},P=["quality","importance"],S=[],$=null;e.config.get("wgDBname").substr(-4)==="wiki"&&e.config.get("wgNamespaceNumber")===0&&e.config.get("wgAction")==="view"&&(e.loader.load("//meta.wikimedia.org/w/index.php?title=User:He7d3r/Tools/AssessmentHelper.css&action=raw&ctype=text/css","text/css"),a.when(e.loader.using("mediawiki.util"),a.ready).then(function(){n(),s()})),e.config.get("wgDBname")==="ptwiki"&&e.config.get("wgAction")==="view"&&a(c),e.config.get("wgDBname").substr(-4)==="wiki"&&e.config.get("wgAction")==="view"&&a(g),e.config.get("wgDBname").substr(-4)==="wiki"&&e.config.get("wgAction")==="view"&&a(m)})(mediaWiki,jQuery),function(e,a){"use strict";function i(e,i){var o=function(){var o,r,t,n,s=new google.visualization.DataTable,c=[];s.addColumn("number","Afluentes"),s.addColumn("number","Detalhes:"),a.each(e,function(e,a){o=a.links,r=a.size,c.push([{v:o,f:e+", com "+o+" afluentes"},{v:r,f:r+" bytes"}])}),s.addRows(c),t={height:300,pointSize:1,title:"Comparação do número de afluentes com o tamanho (em bytes) dos artigos da "+i,hAxis:{title:"Afluentes"},vAxis:{title:"Tamanho"},legend:"none"},n=new google.visualization.ScatterChart(document.getElementById("mw-js-message")),n.draw(s,t)};a.getScript("https://www.google.com/jsapi").done(function(e,a){return a!=="success"?(alert("Não foi possível carregar a API do Google"),void 0):(google.load("visualization","1",{packages:["corechart"],callback:o}),void 0)})}function o(e){var i;return Array.isArray(e)?e.length:(i=0,a.each(e,function(){i++}),i)}function r(i,r){var t,n,s=Array.isArray(i),c=o(i),u=s?{}:i,l=0,d=0;n=function(i){a.each(i.query.pages,function(a){var o=i.query.pages[a];(u[o.title]===void 0||s)&&(u[o.title]={}),u[o.title].size=o.revisions[0].size,l++,e.notify("Foi processado o tamanho da página "+l+" de um total de "+c+".",{tag:"page-analysis"}),l===c&&typeof r=="function"&&r(u)})},a.each(i,function(i,o){var r=s?o:i,u=50;d%u!==0?t+="|"+r:d===0&&(t=r),(d%u===0&&d>0||d===c-1)&&(a.getJSON(e.util.wikiScript("api"),{format:"json",action:"query",prop:"revisions",titles:t,rvprop:"size",indexpageids:!0},n),t=r),d++})}function t(i,o,r,n,s){var c={format:"json",action:"query",list:"backlinks",bltitle:i,blnamespace:e.config.get("wgContentNamespaces").join("|"),blfilterredir:"nonredirects",blredirect:!0,bllimit:500>r?r:500,indexpageids:!0,rawcontinue:1};s=s||0,n&&(c.blcontinue=n),a.ajax({url:e.util.wikiScript("api"),dataType:"json",data:c}).done(function(a){var n;a?a.error!==void 0?alert("Erro da API: "+a.error.code+". "+a.error.info):a.query&&a.query.backlinks?(n=a["query-continue"]&&a["query-continue"].backlinks&&a["query-continue"].backlinks.blcontinue,s+=a.query.backlinks.length,n&&r>s?t(i,o,r,n,s):(e.notify("Concluída a contagem de afluentes de "+i+".",{tag:"page-analysis"}),typeof o=="function"&&o(s))):alert("Houve um erro inesperado ao consultar os afluentes da página "+i+"."):alert("Erro: a API não retornou dados.")}).fail(function(){alert("Houve um erro ao usar AJAX para consultar os afluentes da página "+i+".")})}function n(i,r){var n=Array.isArray(i),s=o(i),c=n?{}:i,u=0;a.each(i,function(a,i){var o=n?i:a;t(o,function(a){u++,e.notify("Foram processados os afluentes da página "+u+" de um total de "+s+".",{tag:"page-analysis"}),(n||c[i]===void 0)&&(c[i]={}),c[i].links=a,u===s&&typeof r=="function"&&r(c)},1500)})}function s(i,o,r,t){var n=e.config.get("wgContentNamespaces").concat(a.map(e.config.get("wgContentNamespaces"),function(e){return e+1})),c={format:"json",action:"query",generator:"categorymembers",gcmnamespace:n.join("|"),gcmtitle:i,gcmlimit:"500",indexpageids:"1"};r&&(c.gcmcontinue=r),t=t||[],a.ajax({url:e.util.wikiScript("api"),dataType:"json",data:c}).done(function(r){var n;r?r.error!==void 0?alert("Erro da API: "+r.error.code+". "+r.error.info):r.query&&r.query.pageids&&r.query.pages?(a.each(r.query.pageids,function(e){t.push(r.query.pages[r.query.pageids[e]].title.replace(/^(?:Anexo )?Discussão:/g,""))}),n=r["query-continue"]&&r["query-continue"].categorymembers&&r["query-continue"].categorymembers.gcmcontinue,n?s(i,o,n,t):(e.notify("Concluída a consulta à "+i+".",{tag:"category-analysis"}),typeof o=="function"&&o(t))):r.length===0?alert("A "+i+" está vazia."):alert("Houve um erro inesperado ao consultar a categoria."):alert("Erro: a API não retornou dados.")}).fail(function(){alert("Houve um erro ao usar AJAX para consultar os membros da categoria.")})}function c(){a(e.util.addPortletLink("p-cactions","#","Gerar gráfico de Tamanho x Afluentes","ca-ah-size-vs-links","Produz um gráfico que relaciona o número de afluentes e o tamanho dos artigos de um categoria")).click(function(a){var o=/^Categor(ia|y):/,t=prompt("Informe o nome de uma categoria (usada nos artigos ou nas páginas de discussão):",e.config.get("wgNamespaceNumber")===14?e.config.get("wgPageName").replace(/_/g," "):"Categoria:!Artigos de qualidade 3 sobre matemática");a.preventDefault(),t&&(t=t.replace(/_/g," "),o.test(t)||(t="Categoria:"+t),s(t,function(a){n(a,function(a){r(a,function(a){e.notify("Pronto!"),i(a,t)})})}))})}e.config.get("wgDBname").substr(-4)==="wiki"&&a(c)}(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/LanguageConverterDistances.js]] (workaround for [[phab:T35355]])
/**
 * Adds a CSS class indicating the "Levenshtein distance" between the
 * "original expression" and the "converted expression" of each rule of the
 * dictionaries
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,o){"use strict";function t(i,o){var t,r,c,n=i.length,a=o.length;if(Math.min(n,a)===0)return Math.max(n,a);for(t=0,r=0,c=[],t=0;n>=t;t+=1)c[t]=[],c[t][0]=t;for(r=0;a>=r;r+=1)c[0][r]=r;for(t=1;n>=t;t+=1)for(r=1;a>=r;r+=1)c[t][r]=Math.min(c[t-1][r]+1,c[t][r-1]+1,c[t-1][r-1]+(i.charAt(t-1)===o.charAt(r-1)?0:1));return c[n][a]}function r(r){var c,n=o("li"),a=["li.dist-1 { background-color:#DBFFCC; }","li.dist-2 { background-color:#B8FF99; }","li.dist-3 { background-color:#94FF66; }","li.dist-4 { background-color:#FFF0CC; }","li.dist-5 { background-color:#FFD166; }","li.dist-6 { background-color:#FFB200; }","li.dist-7 { background-color:#FFCCCC; }","li.dist-8 { background-color:#FF9999; }","li.dist-9 { background-color:#FF6666; }","li.dist-10 { background-color:#FF3333; }"].join(" ");r.preventDefault(),i.util.addCSS(a),n.each(function(){var i=/^\s*(\S[^:]*?)\s*:\s*([\S].*?)\s*(?:\/\/.*?)?$/.exec(o(this).text());i&&i[1]&&i[2]&&(c=t(i[1],i[2]),c>9&&(c="10"),o(this).addClass("dist-"+c).attr("title","The edit distance is "+c))})}o.inArray(i.config.get("wgPageName"),["Wikisource:Modernização/Dicionário","Wikisource:Modernização/Dicionário/pt-BR","Wikisource:Modernização/Dicionário/pt-PT","Wikipédia:Dicionário","Wikipédia:Dicionário/pt-AO","Wikipédia:Dicionário/pt-BR","Wikipédia:Dicionário/pt-PT"])!==-1&&o(i.util.addPortletLink("p-cactions","#","Display edit distance","ca-Levenshtein-distance","Change the background of the rules according to the edit distance between the expressions")).click(r)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/SearchOnBadwordsList.js]] (workaround for [[phab:T35355]])
/**
 * Find which regular expression from badwords list detects the given expression
 *
 * @source: based on function processBadWords from [[w:pt:MediaWiki:Gadget-antivandaltool.js]]
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,a){"use strict";var t=function(t){var r,s,o,i,c,d=a("#wpTextbox1").val().split("\n"),n={repeatedChar:"(?:([^\\-\\|\\{\\}\\].\\s'=wI:*#0-9a-f])\\2{2,})",strings:"(?:<LIST>)",phrases:"(?:^|[^/\\w])(?:<LIST>)(?![/\\w])"};for(r=0;d.length>r;++r)if(s=d[r],!/^\s*$|^</.test(s)){if(/^([\\\/]).*\1\s*$/.test(s)){o=s.charAt(0)==="/",s=s.replace(/^[\\\/]|[\\\/]\s*$/g,""),s=s.replace(/\((?!\?)/g,"(?:");try{i=RegExp(s)}catch(p){e.notify("Aviso: a linha "+r+" da lista de palavrões foi ignorada"+" pois continha uma expressão regular estranha:<pre>"+e.html.escape(s)+"</pre>");continue}c=RegExp((o?n.phrases:n.strings).replace("<LIST>",s),"gi")}else c=RegExp(n.phrases.replace("<LIST>",e.util.escapeRegExp(s)),"gi");if(c.test(t))return"A regex<br><code>"+c+"</code><br>construída a partir da linha que contém<br><code>"+d[r]+'</code><br>detectou a expressão "<code>'+e.html.escape(t)+'</code>".'}return c=RegExp("("+n.repeatedChar+")","gi"),c.test(t)?"A regex<br><code>"+c+'</code><br>definida no código-fonte do script detectou a expressão "<code>'+e.html.escape(t)+'</code>".':'A expressão "<code>'+e.html.escape(t)+'</code>" não foi detectada.'},r=function(){a(e.util.addPortletLink("p-cactions","#","Qual REGEX detecta ...?","#ca-check-regexes","Confere qual das expressões regulares da lista de palavrões detecta a expressão fornecida")).click(function(a){a.preventDefault();var r=prompt("Deseja encontrar a expressão regular que detecta qual expressão?","Texto de exemplo");r&&e.notify(t(r),{autoHide:!1})})};e.config.get("wgPageName")==="Wikipédia:Software/Anti-vandal_tool/badwords"&&a.inArray(e.config.get("wgAction"),["edit","submit"])!==-1&&a.when(e.loader.using(["mediawiki.util"]),a.ready).then(r)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/ConvertPrefixIndexToList.js]] (workaround for [[phab:T35355]])
/**
 * Convert [[Special:PrefixIndex]] table to list and add the "lifilter", if available
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,t){"use strict";t.inArray(i.config.get("wgCanonicalSpecialPageName"),["Prefixindex","Allpages"])!==-1&&t(function(){var i=t(".mw-prefixindex-list-table, .mw-allpages-table-chunk"),e=t('<ol id="mw-prefixindex-list" style="-moz-column-count:3; -webkit-column-count:3; column-count:3;"></ol>');i.find("td").each(function(){e.append("<li>"+t(this).html()+"</li>")}),i.replaceWith(e),window.filterLists&&typeof filterLists.load=="function"&&typeof filterLists.buildForm=="function"&&(filterLists.load(),filterLists.buildForm())})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/CollapsibleChangesListOptions.js]] (workaround for [[phab:T35355]])
/**
 * Make recent changes and watchlist options collapsible
 * @source: [[mw:Snippets/Collapsible ChangesList options]]
 * @rev: 4
 */
// <nowiki>
(function(n,i){"use strict";i.inArray(n.config.get("wgCanonicalSpecialPageName"),["Watchlist","Recentchanges"])!==-1&&n.hook("wikipage.content").add(function(t){var e=t.find("#mw-watchlist-options, .rcoptions"),a=e.find("legend");n.config.get("wgCanonicalSpecialPageName")==="Watchlist"&&e.contents().filter(function(){return this.nodeType===3}).eq(1).wrap('<p id="mw-watchlist-options-intro" />'),e.wrapInner('<div id="mw-options-wrapper" />'),a.wrapInner('<a href="#" />').click(function(n){n.preventDefault(),i("#mw-options-wrapper").toggle("fast")}).add("#mw-watchlist-options-intro").prependTo(e),i("#mw-options-wrapper").hide()})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/AddLinksToValidationTools.js]] (workaround for [[phab:T35355]])
/**
 * Add links to CSS and HTML validators
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 * @author: [[User:Kwj2772]]
 * @source: [[commons:User:Kwj2772/validator.js]]?
 * License: Creative Commons Attribution-ShareAlike (BY-SA) 3.0
 */
// <nowiki>
(function(t,i){"use strict";function e(){var e="http://jigsaw.w3.org/css-validator/validator?&usermedium=all&warning=1&lang=en&uri=",a="http:"+t.config.get("wgServer")+t.config.get("wgScript")+"?"+i.param({title:t.config.get("wgPageName"),oldid:t.config.get("wgCurRevisionId"),action:"raw",ctype:"text/css"});t.util.addPortletLink("p-cactions",e+encodeURIComponent(a),"Validate CSS","ca-validate-css","Validate CSS","v",null)}function a(){var i="https://validator.w3.org/nu/?doc=",e="https:"+t.config.get("wgServer")+t.config.get("wgScript")+"?oldid="+t.config.get("wgCurRevisionId");t.util.addPortletLink("p-cactions",i+encodeURIComponent(e),"Validate HTML","ca-validate-html","Validate HTML","v",null)}/\.css$/i.test(t.config.get("wgTitle"))&&i.inArray(t.config.get("wgNamespaceNumber"),[2,8])!==-1?i(e):i(a)})(mediaWiki,jQuery);
// </nowiki>
if( mw.config.get( 'wgTitle' ) !== mw.config.get( 'wgUserName' ) ){
// [[File:User:He7d3r/Tools/TalkPageTools.js]] (workaround for [[phab:T35355]])
// <nowiki>
/*
 * Altera a formatação dos tópicos das páginas de discussão, ocultando aqueles que não recebem novos comentários há alguns dias
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
(function(e,t){"use strict";e.config.get("wgDBname")==="ptwiki"&&(window.tpt={extraTalkPages:["Wikipédia:Café_dos_administradores","Wikipédia:Esplanada/propostas","Wikipédia:Esplanada/geral","Wikipédia:Fusão/Central_de_fusões","Wikipédia:Fontes_fiáveis/Central_de_fiabilidade"]});var a={collapseTopics:!0,level:2,maxDays:7,extraTalkPages:[],monthNames:{en:["january","february","march","april","may","june","july","august","september","october","november","december"],pt:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},reTimeStamp:{en:/(\d{1,2}):(\d{1,2}), (\d{1,2}) (January|February|March|April|May|June|July|August|September|October|November|December) (\d{4}) \(UTC\)/gi,pt:/(\d{1,2})h(\d{1,2})min de (\d{1,2}) de (janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro) de (\d{4}) \(UTC\)/gi},dateOrder:{},i18n:{en:{"tpt-old-topic-text":"This topic was last edited $1 days ago. Click on the section header to toggle the comments.","tpt-unsigned-topic-text":"All comments on this topic are unsigned.","tpt-change-max-days":"Duration of topics","tpt-change-max-days-title":"Change the number of days during which the topics stay open by default","tpt-change-max-days-question":"Do you want to automatically hide the topics last commented more than how many days ago?"},pt:{"tpt-old-topic-text":"Este tópico foi editado pela última vez há $1 dias. Clique no título da seção para exibir ou ocultar os comentários.","tpt-unsigned-topic-text":"Todos os comentários deste tópico estão sem assinatura.","tpt-change-max-days":"Tempo de duração dos tópicos","tpt-change-max-days-title":"Alterar o número de dias durante os quais os tópicos ficam exibidos por padrão","tpt-change-max-days-question":"Deseja ocultar automaticamente os tópicos cuja última edição ocorreu há mais de quantos dias?"}}};a.timeDistanceInDays=function(e,t){var a=Math.floor((e.getTime()-t.getTime())/864e5);return a},a.getDates=function(o){var i,s,n=e.config.get("wgContentLanguage"),r=a.monthNames[n]||a.monthNames.en,d=a.reTimeStamp[n]||a.reTimeStamp.en,l={hours:1,minutes:2,day:3,month:4,year:5},c=a.dateOrder[n]||l,m=[];i=d.exec(o);while(i)s=new Date,s.setUTCFullYear(i[c.year],t.inArray(i[c.month].toLowerCase(),r),i[c.day]),s.setUTCHours(i[c.hours],i[c.minutes],0,0),m.push(s),i=d.exec(o);return m},a.formatTalkPage=function(){var o,i,s=a.level,n=new Date,r=!1,d=t(),l=t(),c=function(e,t,a){var o={"float":"none",cursor:"pointer","text-align":"left","-moz-user-select":"all","-webkit-user-select":"all","-ms-user-select":"all","user-select":"all"};a?e.addClass("mw-collapsible-toggle").css(o).add(t.wrapAll('<div class="mw-collapsible-content"></div>').parent()).wrapAll('<div class="topic mw-collapsible"></div>'):e.add(t).wrapAll('<div class="topic"></div>')};e.util.addCSS(["div.ongoing-discussion {background-color:#FFF;} ",".topic {background-color:#EEE;}"].join("\n")),t("#mw-content-text").contents().each(function(){var e=t(this),o=e.parent();!e.is("h"+s)||o.is("#toctitle")||o.hasClass("lqt-contents-wrapper")||e.attr("id")==="mw-previewheader"||e.hasClass("lqt_header")||e.hasClass("diff-currentversion-title")?d=d.add(e):(r&&c(l,d,a.collapseTopics),l=e,d=t(),r=!0)}),r&&c(l,d,a.collapseTopics),t(".topic").each(function(){var i,s,r=t(this);return o=a.getDates(r.text()),o.length===0?(r.find("h2").after(t('<i class="error" style="margin-bottom: 2em; display: block;"></i>').text(e.msg("tpt-unsigned-topic-text"))),!0):(o.sort(function(e,t){return t-e}),i=a.timeDistanceInDays(n,o[0]),s=e.cookie.get("tpt-maxDays")||a.maxDays,s>i?r.addClass("ongoing-discussion"):a.collapseTopics&&(r.find("h2").after(t('<i style="margin-bottom: 2em; display: block;"></i>').text(e.msg("tpt-old-topic-text",i))),r.addClass("mw-collapsed")),void 0)}),t(".mw-collapsible").makeCollapsible(),t("#mw-content-text").show(),i=t('[id="'+window.location.hash.substr(1)+'"]'),i.length&&t("html, body").animate({scrollTop:i.offset().top},0)},a.run=function(){if(t("#ca-addsection").length>0||t.inArray(e.config.get("wgPageName"),a.extraTalkPages)!==-1){var o=a.i18n.en;a.i18n["pt-br"]=a.i18n.pt,t.extend(!0,o,a.i18n[e.config.get("wgUserLanguage")]),e.messages.set(o),t(a.addLink),e.loader.using(["mediawiki.util","jquery.makeCollapsible","mediawiki.cookie"],a.formatTalkPage)}},a.addLink=function(){t(e.util.addPortletLink("p-cactions","#",e.msg("tpt-change-max-days"),"#ca-tpt-max-days",e.msg("tpt-change-max-days-title"))).click(function(t){t.preventDefault(),e.loader.using("mediawiki.cookie",function(){var t=prompt(e.msg("tpt-change-max-days-question"),"7");t!==null&&(e.cookie.set("tpt-maxDays",t,{expires:86400,path:"/"}),document.location.reload(!1))})})},window.tpt===void 0?window.tpt=a:typeof window.tpt=="object"&&(window.tpt=t.extend({},a,window.tpt)),t.inArray(e.config.get("wgAction"),["view","purge"])!==-1&&t(a.run)})(mediaWiki,jQuery);
// </nowiki>
}
// [[File:User:He7d3r/Tools/CustomInterface.js]] (workaround for [[phab:T35355]])
/**
 * Allow the use of a CSS3 selector such as "html:not(.mw) " to define an interface customization which may be disable/enabled by one click
 *
 * @see: [[m:User:He7d3r/global.css]] for examples
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(a,e){"use strict";function t(){var t={"true":"Restaurar a interface","false":"Personalizar a interface"};e(a.util.addPortletLink("p-cactions","#",t[!e("html").hasClass("mw")],"ca-interface","Alternar entre a interface personalizada e o padrão do MediaWiki")).click(function(a){a.preventDefault(),e(this).find("a").text(t[e("html").hasClass("mw")]),e("html").toggleClass("mw")})}e(t)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/externISBN.js]] (workaround for [[phab:T35355]])
/**
 * @source: [[w:en:User:Lunchboxhero/externISBN.js]]
 * @author: [[w:en:User:Lunchboxhero]]
 */
// <nowiki>
(function(e,i){"use strict";e.config.get("wgCanonicalSpecialPageName")!=="Booksources"&&i.inArray(e.config.get("wgPageName"),["Wikilivros:Fontes_de_livros","Wikipedia:Book sources"])===-1&&i(function(){var e="//www.google.com/search?tbs=bks:1&q=isbn:MAGICNUMBER",o=/MAGICNUMBER/gi;i("#content").find("a").each(function(){this.href.match(/Special:BookSources\/(.*)/)&&i(this).attr("href",e.replace(o,RegExp.$1.replace(/[\D]*/g,"")))})})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/AddMediaWikiVersionLinkToRecentChanges.js]] (workaround for [[phab:T35355]])
/**
 * Add a link to [[Special:RecentChanges]] indicating the current version of MW
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,i){"use strict";function a(a){if(a.query){var t=a.query.general,n=t["git-hash"],o=e.cookie.get("mw-last-checked-rev")||void 0+"",r=t.generator+":"+n.substr(0,7),c=t.generator.match(/^MediaWiki (.+)$/)[1],d=i('<div id="my-mw-version"></div>'),p=i("<a>"+r+"</a>").attr({href:"https://phabricator.wikimedia.org/source/mediawiki/history/wmf%252F"+encodeURIComponent(c)+"/","class":"updated",title:"Ver as alterações recentes no branch /wmf/"+c+"."}),s=i("<a>ok</a>").click(function(i){i.preventDefault(),e.cookie.set("mw-last-checked-rev",n,{expires:2592e3,path:"/"}),document.location.reload(!1)}),l=i("<a>"+r+"</a>").attr("href",e.util.getUrl("Special:Version"));e.util.addCSS("#my-mw-version { z-index:1; font-size:75%; position:absolute; top: 2px; left:2px; }#my-mw-version a.updated { color:green; font-weight:bold; }"),o!==n+""?d.append(p).append(" ( ").append(s).append(" )"):d.append(l),d.appendTo("#mw-head")}}i.inArray(e.config.get("wgCanonicalSpecialPageName"),["Recentchanges","Watchlist"])!==-1&&e.loader.using(["mediawiki.cookie","mediawiki.api"],function(){(new e.Api).get({action:"query",meta:"siteinfo"}).done(a)})})(mediaWiki,jQuery);
// </nowiki>
mw.config.set( 'server-admin-log-regex', /ptwiki|Portuguese|pt[-_](?:BR|PT)|He[l7]d[e3]r/i );
// [[File:User:He7d3r/Tools/SalMonitor.js]] (workaround for [[phab:T35355]])
/**
 * Notify users on Watchlist about interesting entries on Server Admin Log
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,i){"use strict";function t(){i.ajax({url:"https://wikitech.wikimedia.org/w/api.php",data:{action:"query",formatversion:2,prop:"revisions",format:"json",rvprop:"content",rvsection:2,titles:"Server Admin Log"},dataType:"jsonp"}).done(function(t){var o,n,r=e.config.get("server-admin-log-regex",RegExp(e.util.escapeRegExp(e.config.get("wgDBname"))));t&&!t.error&&(o=t.query.pages[0].revisions[0].content,i.each(o.split("\n"),function(t,o){r.test(o)&&(n="-s-a-log-"+o.substring(0,20),e.cookie.get(n)!=="1"&&(e.notify(i("<a></a>").attr("href","https://wikitech.wikimedia.org/wiki/Server_Admin_Log").text(o),{autoHide:!1,title:"Server Admin Log",type:"info"}),e.cookie.set(n,"1",{expires:86400})))}))})}e.config.get("wgCanonicalSpecialPageName")==="Watchlist"&&e.loader.using(["mediawiki.cookie","mediawiki.util"]).done(t)})(mediaWiki,jQuery);
// </nowiki>
window.buttonsForRefsIds = [
	'Q18507658', 'Q18384872', 'Q18385108', 'Q18385111', 'Q15633767', 'Q18507726', 'Q18507804',
	'Q18507818', 'Q18517565', 'Q18517603', 'Q18517614', 'Q18517606', 'Q18517618', 'Q18517621'
];
// [[File:User:He7d3r/Tools/ButtonsForRefs.js]] (workaround for [[phab:T35355]])
/**
 * Add buttons to editor toolbar for some common references I use
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,i){"use strict";function t(t){var o=i.Deferred(),n={origin:"https:"+e.config.get("wgServer"),action:"wbgetentities",ids:t.join("|"),format:"json"};return new e.Api({ajax:l}).get(n).done(function(i){var t,n,p,u,d,c,g,b,m=[],w={};for(t in i.entities){n=i.entities[t],n.labels[a]||console.log("Missing label in "+a+". These are the existing labels: ",JSON.stringify(n.labels)),m.push({label:(n.labels[a]||n.labels.pt).value,qitem:t}),u=m[m.length-1];for(p in n.claims)s[p]&&s[p][a]&&(c=n.claims[p][0].mainsnak.datavalue.value,d=n.claims[p][0].mainsnak.datatype,d==="quantity"?u[s[p][a]]=parseInt(c.amount,10):d==="string"||d==="url"||d==="external-id"?u[s[p][a]]=c:d==="time"?(g=c.time.match(/(\d{4})-\d\d-\d\dT/),g&&(u[s[p][a]]=g[1])):d==="wikibase-item"?(b="Q"+c["numeric-id"],w[b]||(w[b]=[]),w[b].push({book:u,param:s[p][a]})):console.warn('Unknown datatype "'+d+'" for https://www.wikidata.org/wiki/Property:'+p+".",s[p][a],c))}new e.Api({ajax:l}).get({origin:"https:"+e.config.get("wgServer"),action:"wbgetentities",ids:Object.keys(w).join("|"),props:"labels",languages:a,format:"json"}).done(function(e){var i,t,n,l,s={};for(i in e.entities)try{for(t=0;w[i].length>t;t++)w[i][t].book[w[i][t].param]=e.entities[i].labels[a].value}catch(p){console.warn(p,e.entities[i])}for(t=0;m.length>t;t++){l="* {{"+r[a];for(n in m[t])n!=="qitem"&&n!=="label"&&(l+="|"+n+"="+m[t][n]);l+="}}\n",s[m[t].qitem]={label:m[t].label,action:{type:"encapsulate",options:{pre:l}}}}o.resolve(s)})}),o.promise()}function o(t,o,n){i("#wpTextbox1").wikiEditor("addToToolbar",{sections:{refs:{type:"toolbar",label:"Referências"}}}).wikiEditor("addToToolbar",{section:"refs",groups:{subjects:{label:"Livros",tools:{"geometry-heading":{label:"Selecione...",type:"select",list:n}}},insert:{label:"Inserir",tools:{"my-cite-book":{label:"Citar livro",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/e/ef/Button_cite_book.png",action:{type:"encapsulate",options:{pre:function(e){return{ptwikibooks:"* {{Referência a livro|NomeAutor= |SobrenomeAutor= |Título= |Subtítulo= |Edição= |Local de publicação= |Editora= |Ano= |Páginas= |Volumes= |Volume= |ID= |URL= }}",ptwiki:"* {{Citar livro|nome= |sobrenome= |título= |subtítulo= |idioma= |edição= |local= |editora= |ano= |páginas= |volumes= |volume= |id=ISBN |url= }}\n",enwiki:"* {{cite book |last1= |first1= |authorlink1= |last2= |first2= |authorlink2= |title= |url= |edition= |series= |volume= |year= |publisher= |location= |isbn= |id= }}\n"}[e]}(e.config.get("wgDBname"))}}},"my-google-books-quote":{label:"Citar livro do Google Books",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/4/4f/Button_verse.png",action:{type:"encapsulate",options:{pre:"<ref>Author (), {{Google books quote|id=|page=9999|text=|p. }}</ref>"}}},"my-ref-improve":{label:"Precisa de mais citações",type:"button",icon:"//upload.wikimedia.org/wikipedia/commons/f/fe/Button_refs.png",action:{type:"encapsulate",options:{pre:"{{Refimprove|{{subst:DATE}}}}"}}}}}}})}var n=window.buttonsForRefsIds||[],a=e.config.get("wgContentLanguage"),l={url:"//www.wikidata.org/w/api.php",xhrFields:{withCredentials:!0}},r={pt:"Citar livro",en:"Cite book"},s={P50:{pt:"nome",en:"first1"},P357:{pt:"título",en:"title"},P392:{pt:"subtítulo"},P407:{pt:"língua",en:"language"},P393:{pt:"edição",en:"edition"},P291:{pt:"local",en:"location"},P123:{pt:"editora",en:"publisher"},P577:{pt:"ano",en:"year"},P1104:{pt:"páginas",en:"pages"},P478:{pt:"volume",en:"volume"},P957:{pt:"id",en:"isbn"},P212:{pt:"id",en:"isbn"},P953:{pt:"url",en:"url"}};i.inArray(e.config.get("wgAction"),["edit","submit"])!==-1&&e.loader.using(["user.options","mediawiki.api"],function(){e.user.options.get("usebetatoolbar")==1&&i.when(e.loader.using("ext.wikiEditor"),i.ready,t(n)).then(o)})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/DirectImageLinksToCommons.js]] (workaround for [[phab:T35355]])
/**
 * Direct imagelinks to Commons
 *
 * Required modules: mediawiki.util
 *
 * @source www.mediawiki.org/wiki/Snippets/Direct_imagelinks_to_Commons
 * @author Krinkle
 * @version 2019-09-14
 */
// <nowiki>
mw.config.get("wgNamespaceNumber",0)>=0&&mw.hook("wikipage.content").add(function(e){var i=/^\/\/upload\.wikimedia\.org\/wikipedia\/commons/,t=RegExp("^"+mw.util.escapeRegExp(mw.util.getUrl(mw.config.get("wgFormattedNamespaces")["6"]+":"))),m=RegExp("^"+mw.util.escapeRegExp(mw.util.wikiScript()+"?title="+mw.util.wikiUrlencode(mw.config.get("wgFormattedNamespaces")["6"]+":"))),a="//commons.wikimedia.org/wiki/File:",o="//commons.wikimedia.org/w/index.php?title=File:";e.find("a.image, a.mw-file-description").attr("href",function(e,w){return i.test($(this).find("img").attr("src"))?w.replace(t,a).replace(m,o):void 0})});
// </nowiki>
// {{User:He7d3r/Tools/SidebarSlider.js}}
// [[File:User:He7d3r/Tools/jsUpdater.js]] (workaround for [[phab:T35355]])
/**
 * jsUpdater
 *
 * Helper tool for implementing good practices and changes as found on:
 * [[mw:RL/MGU]], [[mw:CC#JavaScript code]], [[mw:RL/JD]].
 * @version 10
 * @author: Helder, 2011-2014 (https://github.com/he7d3r)
 * @author Timo Tijhof, 2011-2012 ([[m:User:Krinkle]])
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,s){"use strict";var a={};e.messages.set({"jsupdater-single-quotes":"single quotes","jsupdater-update-link":"Update","jsupdater-update-link-description-some":"Click here to scan this script for potential improvements for better compatibility with MW 1.17+","jsupdater-migration-summary":"[[mw:RL/MGU|Migration]]: ","jsupdater-new-code-description":"The updated code is displayed below:","jsupdater-update-button":"Update","jsupdater-select-updates":"Which updates should be performed?","jsupdater-no-updates":"No applicable updates for this script available. Perhaps this script has been updated already?"}),a.patterns={appendCSS:{regex:/\bappendCSS\s*\(/g,replace:"mw.util.addCSS(",summary:"appendCSS → mw.util.addCSS"},importScriptURI:{regex:/\bimportScriptURI\s*\(/g,replace:"mw.loader.load(",summary:"importScriptURI → mw.loader.load"},importStylesheetURI:{regex:/\bimportStylesheetURI\s*\(\s*([^\n\)]+?)\s*\)/g,replace:"mw.loader.load($1, 'text/css')",summary:"importStylesheetURI → mw.loader.load"},addOnloadHook:{regex:/^((?!.*function addOnloadHook\s*\().*)addOnloadHook\s*\(/g,replace:"$1$(",summary:"addOnloadHook → $"},getURLParamValue:{regex:/([^.])getURLParamValue\s*\(/g,replace:"$1mw.util.getParamValue(",summary:"getURLParamValue → mw.util.getParamValue"},getParamVal:{regex:/([^.])getParamVal\s*\(/g,replace:"$1mw.util.getParamValue(",summary:"getParamVal → mw.util.getParamValue"},getParamValue:{regex:/([^.])getParamValue\s*\(/g,replace:"$1mw.util.getParamValue(",summary:"getParamValue → mw.util.getParamValue"},addPortletLink:{regex:/([^.])addPortletLink\s*\(/g,replace:"$1mw.util.addPortletLink(",summary:"addPortletLink → mw.util.addPortletLink"},arrayProtoIndexOf:{regex:/((?:mw\.config\.get\( *['"])?(?:wgRevisionId|wgUserGroups|wgRestrictionEdit|wgRestrictionMove|wgSearchNamespaces|wgMWSuggestMessages|wgFileExtensions)(?:['"] *\))?)\.indexOf\s*\(\s*(.+?)\s*\)/g,replace:"$.inArray($2, $1)",summary:"arr.indexOf → $.inArray"},strProtoEscapeRE:{regex:/([a-zA-Z_][0-9a-zA-Z_]*)\.escapeRE\s*\(\s*\)/g,replace:"mw.util.escapeRegExp($1)",summary:"str.escapeRE() → mw.util.escapeRegExp(str)"},mwRegExpEscape:{regex:/mw\.RegExp\.escape\s*\(/g,replace:"mw.util.escapeRegExp(",summary:"mw.RegExp.escape → mw.util.escapeRegExp"},theOrOrOrOr:{regex:/([0-9a-zA-Z_\$\.]*|mw\.config\.get\(\s*'[a-zA-Z_]*'\s*\))\s*===?\s*([^\(\|\)&!]*)\s*\|\|\s*\1\s*===?\s*([^\(\|\)&!]*)\s*\|\|\s*\1\s*===?\s*([^\(\|\)&!]*)\s*\|\|\s*\1\s*===?\s*([^\(\|\)&!]*)\s*/g,replace:"$.inArray($1, [$2, $3, $4, $5]) !== -1",summary:"a==1||a==2 → $.inArray(a,[1,2])"},theOrOrOr:{regex:/([0-9a-zA-Z_\$\.]*|mw\.config\.get\(\s*'[a-zA-Z_]*'\s*\))\s*===?\s*([^\(\|\)&!]*)\s*\|\|\s*\1\s*===?\s*([^\(\|\)&!]*)\s*\|\|\s*\1\s*===?\s*([^\(\|\)&!]*)\s*/g,replace:"$.inArray($1, [$2, $3, $4]) !== -1",summary:"a==1||a==2 → $.inArray(a,[1,2])"},theOrOr:{regex:/([0-9a-zA-Z_\$\.]*|mw\.config\.get\(\s*'[a-zA-Z_]*'\s*\))\s*===?\s*([^\(\|\)&!]*)\s*\|\|\s*\1\s*===?\s*([^\(\|\)&!]*)\s*/g,replace:"$.inArray($1, [$2, $3]) !== -1",summary:"a==1||a==2 → $.inArray(a,[1,2])"},wgVars:{regex:/([^'"<>$0-9A-Za-z_\/])(stylepath|wgUrlProtocols|wgArticlePath|wgScriptPath|wgScriptExtension|wgScript|wgVariantArticlePath|wgActionPaths|wgServer|wgCanonicalNamespace|wgCanonicalSpecialPageName|wgNamespaceNumber|wgPageName|wgTitle|wgAction|wgArticleId|wgIsArticle|wgUserName|wgUserGroups|wgUserLanguage|wgContentLanguage|wgBreakFrames|wgCurRevisionId|wgVersion|wgEnableAPI|wgEnableWriteAPI|wgSeparatorTransformTable|wgDigitTransformTable|wgMainPageTitle|wgMainPageTitle|wgNamespaceIds|wgSiteName|wgCategories|wgRestrictionEdit|wgRestrictionMove|wgUserVariant|wgMWSuggestTemplate|wgDBname|wgSearchNamespaces|wgSearchNamespaces|wgMWSuggestMessages|wgAjaxWatch|wgLivepreviewMessageLoading|wgLivepreviewMessageReady|wgLivepreviewMessageFailed|wgLivepreviewMessageError|wgFileExtensions|wgFormattedNamespaces|wgIsRedirect|wgStableRevisionId)\b/g,replace:"$1mw.config.get('$2')",summary:"wg* → mw.config.get('wg*')"},skin:{regex:/([^'"<>$0-9A-Za-z_\/])skin\b/g,replace:"$1mw.config.get('skin')",summary:"skin → mw.config.get('skin')"},documentWriteRawScript:{regex:/document\.write\('<[Ss][Cc][Rr][Ii][Pp][Tt] (?:[Tt][Yy][Pp][Ee]="text\/javascript" )?[Ss][Rr][Cc]="(?:'\n?[\t\s]*\+[\t\s]*')?(http[^\n]+?\.js(?:'\n?[\t\s]*\+[\t\s]*')?&action=raw&ctype=text\/javascript(?:&dontcountme=s)?(?:&smaxage=\d+)?(?:&maxage=\d+)?)"><\/[Ss][Cc][Rr][Ii][Pp][Tt]>'\)/g,replace:"mw.loader.load( '$1' )",summary:"document.write('<script...') → mw.loader.load"},documentWriteScript:{regex:/document\.write\(["']<[Ss][Cc][Rr][Ii][Pp][Tt] (?:[Tt][Yy][Pp][Ee]="text\/javascript" )?[Ss][Rr][Cc]=["'](http.+?\.js)["']><\/[Ss][Cc][Rr][Ii][Pp][Tt]>["']\)/g,replace:"mw.loader.load( '$1' )",summary:"document.write('<script...') → mw.loader.load"},documentWriteStylesheet:{regex:/document\.write\(["']<[Ll][Ii][Nn][Kk] [Rr][Ee][Ll]="stylesheet" (?:[Tt][Yy][Pp][Ee]="text\/css" )?[Hh][Rr][Ee][Ff]=["'](http.+?)["']><\/[Ll][Ii][Nn][Kk]>["']\)/g,replace:"mw.loader.load( '$1', 'text/css' )",summary:"document.write('<link...') → mw.loader.load"},wgServerMissing:{regex:/(mw\.loader\.load\s*\(\s*)(mw\.config\.get\s*\(\s*(["'])wgScript\3\s*\)\s*\+\s*['"]\?)|(\s*var\s*([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*)(mw\.config\.get\s*\(\s*(["'])wgScript\7\s*\)\s*\+\s*['"]\?)(?=(?:.|\n)+?mw\.loader\.load\s*\(\s*\5\s*\))/g,replace:"$1$4mw.config.get( $3$7wgServer$3$7 ) + $2$6",summary:"+wgServer ([[phab:T36036]])"},preNowiki:{regex:/\/\/\s*(?:<\/?pre>(?:\s*<\/?nowiki>)?|<\/?nowiki>\s*<\/?pre>|<\/?pre>)\s*\n/g,replace:"",summary:"-<pre>"},isFunction:{regex:/\$\.isFunction\s*\((.+?)\)/g,replace:"typeof $1 === 'function'",summary:"$.isFunction(x) → typeof x === 'function'"},jqSize:{regex:/((?:\$|jQuery)[^;$]+)\.size\s*\(\)/g,replace:"$1.length",summary:"$obj.size() → $obj.length"},old$j:{regex:/\$j\s*(\(|\.)/g,replace:"$$$1",summary:"$j → $"},newArray:{regex:/new\s+Array\s*\(\s*\)/g,replace:"[]",summary:"new Array() → []"},newObject:{regex:/new\s+Object\s*\(\s*\)/g,replace:"{}",summary:"new Object() → {}"},wikiGetlink:{regex:/mw\.util\.wikiGetlink\s*\(/g,replace:"mw.util.getUrl(",summary:"wikiGetlink → getUrl"},hookEvent:{regex:/hookEvent\s*\(\s*(["'])load\1\s*,/g,replace:"$(",summary:"hookEvent → $"},addHandler:{regex:/addHandler\s*\((.*?),\s*(["'])focus\2\s*,/g,replace:"$($1).focus(",summary:"addHandler → $(...).focus"},live:{regex:/\$\s*\(\s*(.*?)\s*\)\.live\s*\(\s*(.*?),\s*(.*?)\s*\)/g,replace:"$(document).on($2,$1,$3)",summary:"live → $(document).on"},live2:{regex:/\$\s*\(\s*(.*?)\s*,\s*([^\),]*?)\s*\)\.live\(\s*(.*?)\s*,/g,replace:"$($2).on($3,$1,",summary:"live → $(document).on"},mwUserName:{regex:/mw\.user\.name\s*\(\s*\)/g,replace:"mw.user.getName()",summary:"mw.user.name → mw.user.getName"},mwUserAnonymous:{regex:/mw\.user\.anonymous\s*\(\s*\)/g,replace:"mw.user.isAnon()",summary:"mw.user.anonymous → mw.user.isAnon"},tooltipAccessKeyPrefix:{regex:/(?:window\.|mw\.util\.)?tooltipAccessKeyPrefix/g,replace:"/* FIXME: Use jquery.accessKeyLabel */",summary:"tooltipAccessKeyPrefix → jquery.accessKeyLabel"},tooltipAccessKeyRegexp:{regex:/(?:window\.|mw\.util\.)?tooltipAccessKeyRegexp/g,replace:"/* FIXME: Use jquery.accessKeyLabel */",summary:"tooltipAccessKeyPrefix → jquery.accessKeyLabel"},updateTooltipAccessKeys:{regex:/([^.]|window\.)updateTooltipAccessKeys/g,replace:"$1mw.util.updateTooltipAccessKeys",summary:"updateTooltipAccessKeys → mw.util.updateTooltipAccessKeys"},jsMessage:{regex:/mw\.util\.jsMessage/g,replace:"mw.notify",summary:"mw.util.jsMessage → mw.notify"},jsMsg:{regex:/jsMsg/g,replace:"mw.notify",summary:"jsMsg → mw.notify"},toJSON:{regex:/\$\.toJSON/g,replace:"JSON.stringify",summary:"$.toJSON → JSON.stringify"},parseJSON:{regex:/\$\.parseJSON/g,replace:"JSON.parse",summary:"$.parseJSON → JSON.parse"},evalJSON:{regex:/\$\.evalJSON/g,replace:"JSON.parse",summary:"$.evalJSON → JSON.parse"},secureEvalJSON:{regex:/\$\.secureEvalJSON/g,replace:"JSON.parse",summary:"$.secureEvalJSON → JSON.parse"},quoteString:{regex:/\$\.quoteString/g,replace:"JSON.stringify",summary:"$.quoteString → JSON.stringify"},browser:{regex:/\$\.browser(.*)/g,replace:"$.browser$1 /* FIXME: Use $.client */",summary:"$.browser → $.client"},andSelf:{regex:/\.andSelf\(/g,replace:".addBack(",summary:".andSelf → .addBack"},getElementsByClassName:{regex:/getElementsByClassName\s*\(\s*([^(),]+?)\s*,\s*([^(),]+?)\s*,\s*([^(),]+?)\s*\)/g,replace:"$($3).find($2 + '.' + $1)",summary:"getElementsByClassName → $('.class')"},getElementsByClassName2:{regex:/getElementsByClassName\s*\(\s*([^(),]+?)\s*\)/g,replace:"$('.' + $1)",summary:"getElementsByClassName → $('.class')"},mwEditButtons:{regex:/mwEditButtons(.*)/g,replace:"[]$1 /* FIXME: Use mw.toolbar */",summary:"-mwEditButtons"},mwCustomEditButtons:{regex:/mwCustomEditButtons(.*)/g,replace:"[]$1 /* FIXME: Use mw.toolbar */",summary:"-mwCustomEditButtons"},injectSpinner:{regex:/(?:window\.|[^.])injectSpinner\s*\(\s*(.*?)\s*,\s*(.*?)\s*\)/g,replace:"$($1).injectSpinner($2)",summary:"injectSpinner → $(...).injectSpinner"},injectSpinner2:{regex:/(?:window\.|[^.])injectSpinner\s*\(\s*(.*?)\s*\)/g,replace:"$($1).injectSpinner()",summary:"injectSpinner → $(...).injectSpinner"},removeSpinner:{regex:/(?:window\.|[^.])removeSpinner\s*\(\s*(.*?)\s*\)/g,replace:"$.removeSpinner($1)",summary:"removeSpinner → $.removeSpinner"},escapeQuotesHTML:{regex:/(?:window\.)?escapeQuotesHTML\s*\(/g,replace:"mw.html.escape(",summary:"escapeQuotesHTML → mw.html.escape"},escapeQuotes:{regex:/(?:window\.)?escapeQuotes\s*\(/g,replace:"mw.html.escape(",summary:"escapeQuotes → mw.html.escape"},liveAndTestAtStart:{regex:/(\.liveAndTestAtStart\s*\(.*)/g,replace:"$1 /* FIXME: Use .on() and .each() directly */",summary:"liveAndTestAtStart → .on()/.each()"},otherDeprecations:{regex:/((?:window\.|[^.])(?:is_gecko|is_chrome_mac|is_chrome|webkit_version|is_safari_win|webkit_match|is_ff2|ff2_bugs|is_ff2_win|is_ff2_x11|opera95_bugs|opera7_bugs|opera6_bugs|is_opera_95|is_opera_preseven|is_opera|ie6_bugs|doneOnloadHook|onloadFuncts|runOnloadHook|changeText|killEvt|addClickHandler|removeHandler|getElementsByClassName|getInnerText|checkboxes|lastCheckbox|setupCheckboxShiftClick|addCheckboxClickHandlers|checkboxClickHandler|sajax_debug_mode|sajax_request_type|sajax_debug|sajax_init_object|sajax_do_call|wfSupportsAjax|addButton|insertTags|gM\s*\().*)/g,replace:"$1 /* FIXME */",summary:"other deprecations"},maxage:{regex:/[?&]s?maxage=\d*/g,replace:"",summary:"-maxage ([[mw:Special:Diff/1068457]])"},dontcountme:{regex:/[?&]dontcountme=s/g,replace:"",summary:"-dontcountme ([[w:en:Special:PermaLink/128295924#dontcountme=s?]])"},jqEscapeRE:{regex:/(?:\$|jQuery)\.escapeRE\s*\(/g,replace:"mw.util.escapeRegExp(",summary:"$.escapeRE → mw.util.escapeRegExp"},bitsSkins:{regex:/(https?:)?\/\/bits\.wikimedia\.org\/skins\//g,replace:"/static/current/skins/",summary:"bits.wikimedia.org → static"},bitsStaticCurrent:{regex:/(https?:)?\/\/bits\.wikimedia\.org\/static-current\//g,replace:"/static/current/",summary:"bits.wikimedia.org → static"}},a.getPatterns=function(e,t){var r=[];return s.each(a.patterns,function(s,a){return a.regex.lastIndex=0,a.regex.test(e)&&(r.push(s),t)?!1:void 0}),r},a.checkForUpdates=function(t){var r,i,n,o,g,m=t.query.pages,c=t.query.pageids[0];c&&Number(c)>0&&m[c]?(r=m[c].title,i=m[c].revisions[0]["*"],n=a.getPatterns(i,!0),o=e.util.getUrl(r,{action:"edit",runjsupdater:"true"}),g=e.util.addPortletLink("p-views",o,e.msg("jsupdater-update-link"),"ca-js-updater",n.length?e.msg("jsupdater-update-link-description-some"):e.msg("jsupdater-no-updates")),s(g).find("a").css("color",n.length?"orange":"green")):e.log("API information for jsUpdater indicates this page does't exist.")},a.install=function(){var t,r=e.config.get("wgNamespaceNumber");r=r%2===0?r:r-1,t=e.config.get("wgFormattedNamespaces")[r]+":"+e.config.get("wgTitle"),s.getJSON(e.util.wikiScript("api"),{format:"json",action:"query",titles:t,prop:"revisions",rvprop:"content",indexpageids:""},a.checkForUpdates)},a.doConversion=function(e,t){var r;return r={output:e,summaries:[]},t.length?(s.each(t,function(s){var i=a.patterns[t[s]];i.regex.lastIndex=0,r.output=e.replace(i.regex,i.replace),r.output!==e&&(r.summaries.push(i.summary),e=r.output)}),r):r},a.run=function(t){var r,i=e.msg("jsupdater-migration-summary"),n=s(".ace_editor"),o=n.length?n[0].env.document.getValue():s("#wpTextbox1").val();r=a.doConversion(o,t),i+=r.summaries.join("; "),s("#js-updater-options").remove(),e.util.$content.find(".permissions-errors").length?s("#mw-content-text").prepend("<b>"+e.msg("jsupdater-new-code-description")+"</b><br><br>"+'<textarea cols="80" rows="40" style="width: 100%; font-family: monospace; line-height: 1.5em;">'+e.html.escape(r.output)+"</textarea>"):(n.length?n[0].env.document.setValue(r.output):s("#wpTextbox1").val(r.output),s("#wpSummary").val(i),s("#wpDiff").click())},a.showOptions=function(){var t,r,i,n,o,g=s(".ace_editor"),m=g.length?g[0].env.document.getValue():s("#wpTextbox1").val(),c=a.getPatterns(m,!1);if(t=s('<div id="js-updater-options"></div>'),c.length){for(t.text(e.msg("jsupdater-select-updates")),o=0;c.length>o;o++)r=s("<input>",{type:"checkbox",name:"updates",id:"update-"+c[o],value:c[o],checked:"checked"}),i=s("<label>",{"for":"update-"+c[o],text:a.patterns[c[o]].summary}),t.append("<br>",r,i);n=s("<button>",{type:"button",id:"update-button",value:"Update",text:e.msg("jsupdater-update-button")}).click(function(){var e=[];s("#js-updater-options").find('input:checkbox[name="updates"]:checked').each(function(){e.push(s(this).val())}),a.run(e)}).appendTo(t)}else t.text(e.msg("jsupdater-no-updates"));s("#mw-content-text").prepend(t.get(0))},/\.js$/g.test(e.config.get("wgTitle"))&&s.inArray(e.config.get("wgNamespaceNumber"),[8,9,2,3,4,5])!==-1&&e.loader.using(["mediawiki.util"]).then(function(){s(a.install),s.inArray(e.config.get("wgAction"),["edit","submit"])!==-1&&e.util.getParamValue("runjsupdater")&&s(a.showOptions)}),window.jsUpdater=a})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/SyncMyTools.js]] (workaround for [[phab:T35355]])
/**
 * Sync my tools
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function i(){var i="User:"+e.config.get("wgUserName")+"/vector.js",n="User:"+e.config.get("wgUserName")+"/Tools.js";t("#firstHeading").injectSpinner("spinner-sync-js"),(new e.Api).post({action:"edit",title:i,text:"//{ {subst:"+n+"}}\n{"+"{subst:"+n+"}}",summary:"Atualização com {{subst:[["+n+"]]}}",minor:!0,watchlist:"nochange",token:e.user.tokens.get("csrfToken")}).done(function(n){var s=n.edit;s&&s.result&&s.result==="Success"?e.notify(t('<p>Seu vector.js <a href="'+e.util.getUrl(i)+"?diff="+(s.newrevid||0)+'">foi editado</a>.</p>')):e.notify("Houve um erro ao tentar editar seu vector.js")}).always(function(){t.removeSpinner("spinner-sync-js")})}function n(){t(e.util.addPortletLink("p-cactions","#","Sincronizar vector.js","ca-sync-js","Sincronizar o vector.js com a versão mais recente dos seus scripts")).click(function(t){t.preventDefault(),e.loader.using(["mediawiki.api","jquery.spinner"],i)})}/\.js$/.test(e.config.get("wgTitle"))&&e.config.get("wgDBname")==="ptwikibooks"&&t(n)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/CompareTranslations.js]] (workaround for [[phab:T35355]])
/**
 * Compare pt and pt-br translations of the MW messages
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,a){"use strict";function t(a,t){(typeof a!="string"||typeof t!="string")&&e.log(a,t);var n=a.length,i=t.length;if(Math.min(n,i)===0)return Math.max(n,i);var o=0,r=0,s=[];for(o=0;n>=o;o++)s[o]=[],s[o][0]=o;for(r=0;i>=r;r++)s[0][r]=r;for(o=1;n>=o;o++)for(r=1;i>=r;r++)s[o][r]=Math.min(s[o-1][r]+1,s[o][r-1]+1,s[o-1][r-1]+(a.charAt(o-1)===t.charAt(r-1)?0:1));return s[n][i]}function n(n,i,o){function r(o,d,f){a.getJSON("//translatewiki.net/w/api.php",{format:"json",action:"query",list:"messagecollection",mclimit:500,mcgroup:d,mcoffset:f||0,mcprop:"translation",mclanguage:o,rawcontinue:1},function(f){var u=f&&f.query&&f.query.messagecollection||[],y=f&&f["query-continue"],h=y&&y.messagecollection&&y.messagecollection.mcoffset||0;l?(c+=u.length,e.notify('Processando a lista de mensagens "'+d+'" em "'+n+'"... ('+c+" mensagens processadas)",{tag:"msg-analysis"}),a.each(u,function(e,a){s[a.key]=a.translation}),h?r(o,d,h):(l=!1,r(i,d))):(a.each(u,function(a,o){s[o.key]!==o.translation&&(p[o.key]={},p[o.key][n]=s[o.key],p[o.key][i]=o.translation,p[o.key][n]&&p[o.key][i]&&t(p[o.key][n],p[o.key][i])===1&&g++,delete s[o.key],m++,e.notify('Processando a lista de mensagens "'+d+'" em "'+i+'"... (até agora, '+m+' diferem de sua versão "'+n+'", e '+g+" delas diferem apenas por um único caractere)",{tag:"msg-analysis"}))}),h?r(o,d,h):(e.notify("Há "+c+' mensagens no grupo "'+d+'",  das quais '+(c-m)+' são idênticas em "'+n+'" e "'+i+'" ('+(100*(c-m)/c).toFixed(1)+" %), e "+g+" diferem apenas por um caractere ("+(100*g/c).toFixed(1)+" % do total)",{autoHide:!1}),e.log("identical=",s),e.log("diff=",p)))}).error(function(){e.notify("Houve um erro ao requisitar a lista de traduções.")})}var s={},c=0,m=0,g=0,l=!0,p={};e.notify('Iniciando a comparação das mensagens "'+o+'" em "'+n+'" e "'+i+'"',{tag:"msg-analysis"}),r(n,o||"core")}function i(){a(e.util.addPortletLink("p-cactions","#","Compare pt & pt-br","ca-compare","Compare pt and pt-br translations of the MW messages in provided group")).click(function(e){var a;e.preventDefault(),a=prompt("What group of messages do you want to compare?\n\n Some examples include core-0-mostused and ext-0-wikimedia-main.\nSee http://translatewiki.net/w/api.php for a list of available groups","core"),a!==null&&n("pt","pt-br",a)})}e.config.get("wgCanonicalNamespace")==="MediaWiki"&&a(function(){var a,t=document.getElementById("firstHeading"),n=document.createElement("a"),i=document.createElement("a"),o=e.config.get("wgArticlePath").replace("$1",e.config.get("wgPageName")).replace(/\/[a-z\-]{2,5}$/g,"/pt");o.match(/\/pt$/g)||(o+="/pt"),a=o+"-br",n.innerHTML=" →pt",i.innerHTML=" →pt-br",n.setAttribute("href",o),i.setAttribute("href",a),e.config.get("wgPageName").match("/pt-br")?t.appendChild(n):e.config.get("wgPageName").match("/pt")?t.appendChild(i):(t.appendChild(n),t.appendChild(i))}),e.config.get("wgSiteName")==="translatewiki.net"&&a(i)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/ChangeRedTalkPageLinks.js]] (workaround for [[phab:T35355]])
/**
 * Make red links to talk pages behave like action=edit&section=new ([[phab:T24416]])
 */
// <nowiki>
(function(n){"use strict";var e=function(){n("#ca-talk.new").find("a").attr("href",function(n,e){return e.replace("redlink=1","section=new")})};n(e)})(jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/HighlightSmallDiffs.js]] (workaround for [[phab:T35355]])
/**
 * Highlight any diffs which are too small
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,e){"use strict";(i.util.getParamValue("diff")!==null||i.util.getParamValue("action")==="submit")&&e(function(){var i=function(){return e.trim(e(this).text()).length===0};e(".diff-deletedline .diffchange-inline").filter(i).css({background:"#FF7B7B",padding:"0 0.2em"}),e(".diff-addedline .diffchange-inline").filter(i).css({background:"#7BFF7B",padding:"0 0.2em"})})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/RevertedChanges.js]] (workaround for [[phab:T35355]])
/**
 * RevertedChanges
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,e){"use strict";function t(){e(".diff-ntitle").css("background","#ffe099").attr("title","After this edit, the page was restored to an older revision").find(".patrollink").css("background","#cfc")}function r(e,r){(new i.Api).get({action:"query",prop:"revisions",rvprop:"ids|sha1",pageids:e,rvlimit:50,formatversion:2,"continue":""}).done(function(i){var e,n=i.query.pages[0].revisions,o=n[0].sha1;for(e=1;n.length>e;e++)if(n[e].revid===r)break;if(!(n.length>e+1&&n[e].sha1===n[e+1].sha1))for(e++;n.length>e;e++)if(n[e].sha1===o){t();break}})}i.hook("wikipage.diff").add(function(t){i.loader.using(["mediawiki.api","mediawiki.util"]).done(function(){var n;return i.util.getParamValue("diff")!==null&&i.config.get("wgArticleId")!==0?(r(i.config.get("wgArticleId"),i.config.get("wgRevisionId")),void 0):((n=parseInt(i.util.getParamValue("oldid",e(t).find('.diff-ntitle a[href*="oldid="]:first').attr("href")),10))&&(new i.Api).get({action:"query",prop:"revisions",rvprop:"ids",revids:n,formatversion:2}).done(function(i){r(i.query.pages[0].pageid,n)}),void 0)})})})(mediaWiki,jQuery);
// </nowiki>
// {{User:He7d3r/Tools/TipsForSlangs.js}}
// [[File:User:He7d3r/Tools/CountHiddenStructuresOnCurrentPage.js]] (workaround for [[phab:T35355]])
/**
 * Inform the usage of the old "hiddenStructure" class in the pages listed at [[w:WP:Projetos/Padronização/hiddenStructure]]
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,i){"use strict";function t(){var t=new e.Api,n=i("table:not(.diff)"),r=n.find("a");n.find("tr:first").append("<th>Número de<br />hiddenStructure<br />no código</th>"),t.get({action:"query",prop:"links",pllimit:"max",titles:e.config.get("wgPageName"),indexpageids:""}).done(function(e){var n,o,a,g=/hiddenStructure|\{\{[Oo]cultar[ _]estrutura/,d=40;for(n=i.map(e.query.pages[e.query.pageids[0]].links,function(e){return e.title}),a=function(e){var t,n,o,a,d;for(d=function(){return i(this).text()===n.title},t=0;e.query.pageids.length>t;t++)n=e.query.pages[e.query.pageids[t]],o=n.missing===""?0:n.revisions[0]["*"].split(g).length-1,a=r.filter(d),a.closest("tr").append(i("<td>").text(o))},o=0;n.length>o;o+=d)t.get({action:"query",titles:n.slice(o,o+d).join("|"),prop:"revisions",rvprop:"content",indexpageids:""}).done(a)})}e.config.get("wgDBname")==="ptwiki"&&e.config.get("wgPageName")==="Wikipédia:Projetos/Padronização/hiddenStructure"&&e.config.get("wgAction")==="view"&&e.loader.using("mediawiki.api",t)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/createDiffLinks.js]] (workaround for [[phab:T35355]])
/**
 * Create links for diffs on [[w:MediaWiki:Spam-blacklist]]
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,e){"use strict";function t(){e("#mw-content-text").find("pre").each(function(){var t,n=/#(\d+).*$/g,g='<a href="'+i.config.get("wgServer")+i.config.get("wgScript")+"?diff="+'$1">#$1</a>',c=e(this),f=c.html().split("\n");for(t=0;f.length>t;t+=1)f[t]=f[t].replace(n,g);c.html(f.join("\n"))})}i.config.get("wgPageName")==="MediaWiki:Spam-blacklist"&&i.config.get("wgAction")==="view"&&e(t)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/AbuseFilterRegressionTest.js]] (workaround for [[phab:T35355]])
/**
 * Improves [[Special:AbuseFilter/test]] to allow regression testing of the filters
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(t,e){"use strict";function i(){e.removeSpinner("afrt-spinner"),e('input[type="submit"]').prop("disabled",!1)}function r(i){return e("<li>").attr("id","log-"+i.id).append(i.timestamp," (",e("<a>").attr({href:t.util.getUrl("Special:AbuseLog/"+i.id),title:"Special:AbuseLog/"+i.id}).text(t.msg("afrt-details"))," | ",e("<a>").attr({href:t.util.getUrl("Special:AbuseFilter/examine/log/"+i.id,{testfilter:e("#wpTestFilter").val()}),title:"Special:AbuseFilter/examine/log/"+i.id}).text(t.msg("afrt-examine")),"): ",e("<a>").attr({href:t.util.getUrl(i.title),title:i.title}).text(i.title)," (",e("<a>").attr({href:t.util.getUrl(i.title)+"?action=history",title:i.title}).text(t.msg("afrt-hist")),") ",'<span class="mw-changeslist-separator">. .</span>'," ",e("<a>").attr({href:t.util.getUrl("User:"+i.user),title:"User:"+i.user}).addClass("mw-userlink").text(i.user)," (",e("<a>").attr({href:t.util.getUrl("User talk:"+i.user),title:"User talk:"+i.user}).text(t.msg("afrt-talkpage"))," | ",e("<a>").attr({href:t.util.getUrl("Special:Contribs/"+i.user),title:"Special:Contribs/"+i.user}).text(t.msg("afrt-contribs"))," | ",e("<a>").attr({href:t.util.getUrl("Special:AbuseLog",{wpSearchUser:i.user}),title:t.msg("afrt-filter-logs-title")}).text(t.msg("afrt-filter-logs")),")")}function a(a){function s(i){n.post({action:"abusefiltercheckmatch",filter:d,logid:i.id}).done(function(t){var i;i=t.abusefiltercheckmatch.result?"mw-abusefilter-changeslist-match":"mw-abusefilter-changeslist-nomatch",e("#log-"+a[u].id).attr("class",i),u++,a.length>u?s(a[u]):f.resolve()}).fail(function(r){e.inArray(r,["badsyntax","permissiondenied"])!==-1?(e("#mw-content-text").append(e("<p>").text(t.msg("afrt-error-"+r))),f.reject(r)):(e("<li>").text(t.msg("afrt-error-"+r,i)).appendTo(o),u++,a.length>u&&s(a[u]))})}var l,o,f=e.Deferred(),d=e("#wpTestFilter").val(),u=0;for(o=e("#log-list"),l=0;a.length>l;l++)r(a[l]).appendTo(o);return u=0,s(a[u]),f.promise().fail(i)}function s(r){var s,l,f;l=function(r){r&&e.extend(s,r),n.get(s).done(function(r){a(r.query.abuselog).done(function(){var a=e("#afrt-load-more");f=r["query-continue"],f?a.length?a.show():e("#log-list").after(e('<input type="button" value="Load" id="afrt-load-more">').val(t.msg("afrt-load-more")).click(function(){e("#mw-content-text").injectSpinner("afrt-spinner"),l(f.abuselog)})):a.hide(),i()})}).fail(i)},s={list:"abuselog",aflfilter:r,afllimit:o,aflprop:"ids|filter|user|title|action|result|timestamp|hidden|revid",rawcontinue:1},n=new t.Api,l()}function l(){var i=e('<input id="afrt-filter-id" size="45">');i.change(function(){var t='[name="wpTestUser"], [name="wpTestPeriodStart"], [name="wpTestPeriodEnd"], [name="wpTestPage"]';e(t).prop("disabled",e.trim(e(this).val())!=="")}),e("#mw-abusefilter-test-page").after(e('<tr id="afrt-filter">').append(e('<td class="mw-label">').text(t.msg("afrt-filter")),e('<td class="mw-input">').append(i))),e('input[type="submit"]').click(function(t){var i=e.trim(e("#afrt-filter-id").val());i&&(t.preventDefault(),e(this).prop("disabled",!0),e("fieldset").last().nextAll().remove().end().after('<ol id="log-list">'),e("#mw-content-text").injectSpinner("afrt-spinner"),s(i))})}t.messages.set({"afrt-filter":"ID do filtro (desativa as opções acima)","afrt-details":"detalhes","afrt-examine":"examinar","afrt-diff":"dif","afrt-hist":"hist","afrt-talkpage":"discussão","afrt-contribs":"contribs","afrt-filter-logs":"registros dos filtros","afrt-filter-logs-title":"Registro do filtro de edições para este usuário","afrt-load-more":"Carregar mais","afrt-error-badsyntax":"Erro de sintaxe","afrt-error-permissiondenied":"Permissão negada","afrt-error-nosuchlogid":"Não foi encontrado o registro $1."});var n,o=100;t.config.get("wgCanonicalSpecialPageName")==="AbuseFilter"&&/\/test(?:\/\d+)?$/.test(t.config.get("wgTitle"))&&t.loader.using(["mediawiki.api","mediawiki.util","jquery.spinner"],function(){e(l)})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/AbuseLogStatus.js]] (workaround for [[phab:T35355]])
/**
 * Adds two links on pages like [[Special:AbuseLog/123]] to mark log entries
 * as 'correct' or 'false positive'
 * (workaround for [[phab:T30213]]
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function a(a){n.post(a).done(function(a){var i,r=a.edit;r&&r.result&&r.result==="Success"?(i=e.util.getUrl(r.title)+"?diff="+r.newrevid,e.notify(t(e.msg("al-page-edit-success",i)),{autoHide:!1,tag:"status"})):e.notify(e.msg("al-page-edit-error-unknown"),{autoHide:!1,tag:"status"})}).fail(function(t){return t==="editconflict"?(e.notify(e.msg("al-page-edit-conflict"),{autoHide:!1,tag:"status"}),void 0):(e.notify(e.msg("al-page-edit-error",t),{autoHide:!1,tag:"status"}),void 0)}).always(function(){t.removeSpinner("af-status-spinner"),t("#al-submit").removeAttr("disabled")})}function i(){var i,r=t('input[type="radio"]:checked').val()!=="correct",o=function(t){var o,s,n,u,g={action:"edit",title:e.msg("al-page-title",l),summary:e.msg("al-summary",p,r?e.msg("al-incorrect"):e.msg("al-correct")),minor:!0,watchlist:"nochange",token:e.user.tokens.get("csrfToken")},f=t.query.pages[t.query.pageids[0]],v=f.missing==="";if(i?(i=i.replace(/\|/g,"{{!}}"),o=r?e.message("al-problem-template-with-note",p,i).plain():e.message("al-correct-template-with-note",p,i).plain()):o=r?e.message("al-problem-template",p).plain():e.message("al-correct-template",p).plain(),v)n=e.message("al-page-header").plain()+"\n"+o,g.text=n,a(g);else{for(n=f.revisions[0]["*"],n=n.replace(c,"")+"\n"+o,s=n.search(m[d].reStart),n=n.substr(0,s).replace(/\n+$/g,"\n\n")+n.substr(s).split("\n").sort().join("\n").replace(/^\n+/g,""),u=0;m[d].cleanup&&m[d].cleanup.length>u;u++)n=n.replace(m[d].cleanup[u][0],m[d].cleanup[u][1]);g.basetimestamp=f.revisions[0].timestamp,g.starttimestamp=f.revisions[0].starttimestamp,g.text=n,a(g)}},s=function(){t("#mw-content-text").find("fieldset p > span > a").each(function(){return l=t(this).attr("href").match(m[d].reFilterLink),l&&l[1]?(l=l[1],!1):void 0}),t("#al-submit").injectSpinner("af-status-spinner"),n.get({prop:"info|revisions",rvprop:"content|timestamp",intoken:"edit",rvlimit:1,indexpageids:!0,titles:e.msg("al-page-title",l)}).done(o).fail(function(){t.removeSpinner("af-status-spinner")})};t("#al-submit").attr("disabled","disabled"),i=t("#al-note").val(),e.loader.using(["mediawiki.api","jquery.spinner","mediawiki.notification"],s)}function r(){var a=t("fieldset").find("p:first span:first").text().match(m[d].reDesc);c=RegExp(e.message("al-template-regex",p).plain(),"g"),t("fieldset h3").first().before(t("<h3>").text(e.msg("al-header")),t("<p>").text(a&&a[1]?e.msg("al-specific-question",a[1]):e.msg("al-question")).append(t("<br />"),t("<input>").attr({name:"al-status",id:"al-status-correct",type:"radio",value:"correct"}).prop("checked",!0),t("<label>").attr({"for":"al-status-correct",title:e.msg("al-correct-description")}).text(e.msg("al-yes")),t("<input>").attr({name:"al-status",id:"al-status-incorrect",type:"radio",value:"incorrect"}),t("<label>").attr({"for":"al-status-incorrect",title:e.msg("al-incorrect-description")}).text(e.msg("al-no"))," ",t("<input>").attr({type:"text",id:"al-note",placeholder:e.msg("al-placeholder"),size:50}),t("<input>").attr({type:"submit",value:e.msg("al-submit"),id:"al-submit",title:e.msg("al-submit-description")}).click(i)))}function o(a){e.util.addCSS(".af-log-false-positive { background: #FDD; } .af-log-correct { background: #DFD; }"),t("#mw-content-text").find("li").each(function(){var i,r,o=t(this);o.find("a").each(function(){var s,n=t(this).attr("href"),l=n.match(m[d].reFilterLink);if(l){if(i=l[1],!a[i])return!1}else l=n.match(m[d].reDetailsPage),l&&l[1]&&(r=l[1]);return r&&i?(c=RegExp(e.message("al-template-regex",r).plain(),"g"),l=a[i].match(c),l&&(s=l[0].match(m[d].reNote),m[d].reError.test(l[0])?o.addClass("af-log-false-positive").attr("title",s?e.msg("al-log-false-positive-note",e.html.escape(s[1])):e.msg("al-log-false-positive")):o.addClass("af-log-correct").attr("title",s?e.msg("al-log-correct-note",e.html.escape(s[1])):e.msg("al-log-correct"))),!1):void 0})})}function s(){var a,i={};n.get({action:"query",list:"embeddedin",eititle:m[d].header,einamespace:4,eifilterredir:"nonredirects",eilimit:"max"}).done(function(r){var s,l,c={},p=RegExp(e.message("al-analysis-page-regex").plain());for(t("#mw-content-text").find("li").each(function(){t(this).find("a").each(function(){var e=t(this).attr("href").match(m[d].reFilterLink);return e&&!c[e[1]]?(c[e[1]]=!0,!1):void 0})}),s=0;r.query.embeddedin.length>s;s++)l=r.query.embeddedin[s].title.match(p),l&&c[l[1]]&&(c[l[1]]=r.query.embeddedin[s].pageid);a=t.map(c,function(e){return e!==!0?e:null}).join("|"),a!==""&&n.get({action:"query",prop:"revisions",rvprop:"content",pageids:a}).done(function(e){t.each(e.query.pages,function(t){var a,r=e.query.pages[t];r.missing!==""&&(a=r.title.match(p),a&&a[1]&&(i[a[1]]=r.revisions[0]["*"]))}),o(i)})})}e.messages.set({"al-page-title":"Wikipédia:Filtro_de_edições/Análise/Filtro_$1","al-summary":"Status do registro [[Special:AbuseLog/$1|$1]]: $2 (edição feita com [[Wikipédia:Filtro de edições/Análise#Scripts|um script]])","al-correct-template":"*{{Ação|$1}}\n","al-problem-template":"*{{Ação|$1|erro=sim}}\n","al-correct-template-with-note":"*{{Ação|$1|nota=$2}}\n","al-problem-template-with-note":"*{{Ação|$1|erro=sim|nota=$2}}\n","al-template-regex":"\\* *\\{\\{ *[Aa]ção *\\|(?:.*?\\D)?($1)(?:\\D.*?)?\\}\\} *(?:\\n|$)","al-analysis-page-regex":"^Wikipédia:Filtro de edições\\/Análise\\/Filtro (\\d+)$","al-page-header":"{{Lista de falsos positivos (cabeçalho)}}\n\n","al-page-edit-success":'<p>A página <a href="$1">foi editada</a>.</p>',"al-page-edit-conflict":"Foi detectado um conflito entre edições. Por favor, tente novamente.","al-page-edit-error":"Houve um erro ao tentar editar ($1). Por favor, tente novamente.","al-page-edit-error-unknown":"Houve um erro desconhecido ao tentar editar. Por favor, tente novamente.","al-log-false-positive":"Um editor já identificou que este registro foi um falso positivo","al-log-correct":"Um editor já identificou que este registro estava correto","al-log-false-positive-note":"Um editor já identificou que este registro foi um falso positivo: $1","al-log-correct-note":"Um editor já identificou que este registro estava correto: $1","al-header":"Análise","al-question":"Este filtro deveria ter detectado esta ação?","al-specific-question":'Foi correto classificar esta ação como "$1"?',"al-correct-description":"Marcar este registro como correto","al-yes":"Sim","al-correct":"Correto","al-incorrect-description":"Marcar este registro como falso positivo","al-no":"Não","al-incorrect":"Falso positivo","al-placeholder":"Observação sobre esta ação (se precisar)","al-submit":"Enviar","al-submit-description":"Enviar a sua análise (editará automaticamente a página apropriada)"});var n,l,c,p,d=e.config.get("wgDBname"),m={ptwiki:{header:"Predefinição:Lista de falsos positivos (cabeçalho)",reDetailsPage:/Especial:Registro_de_abusos\/(\d+)$/,reFilterLink:/^\/wiki\/Especial:Filtro_de_abusos\/(\d+)$/,reDesc:/Descrição do filtro: (.+?) \(/,reStart:/^.*\{\{[Aa]ção/m,reNote:/nota *= *(.+?) *(?:\||\}\} *(?:\n|$))/,reError:/\| *erro *= *sim/,cleanup:[[/(^|\n)\*\s+\{\{Ação/g,"$1*{{Ação"],[/(\* *\{\{ *Ação *\| *(\d+)\D.+\n)(\* *\{\{ *Ação *\| *\2\D.+\n)+/g,"$1"]]}};e.config.get("wgCanonicalSpecialPageName")==="AbuseLog"&&m[d]&&t.when(e.loader.using("mediawiki.api"),t.ready).then(function(){var t=e.config.get("wgPageName").match(m[d].reDetailsPage);n=new e.Api,t&&t[1]?(p=t[1],r()):s()})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/AbuseFilterStats.js]] (workaround for [[phab:T35355]])
/**
 * Generates a table with statistics about abuse filters
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function s(){t.removeSpinner("spinner-filter-stats")}function a(a){var i,n,o,r,l,f,d,u,b,v=function(e){return 10>e?"0"+e:e},h="af-stats-"+g.getFullYear()+"-"+v(p),w=['{| id="'+h+'" class="wikitable sortable plainlinks"',"|+ "+e.msg("afs-table-header"),"|-",'! rowspan=4 data-sort-type="number" | '+e.msg("afs-table-filter"),'! rowspan=4 style="width: 9em;" | '+e.msg("afs-table-date"),'! rowspan=4 data-sort-type="text" | '+e.msg("afs-table-description"),"! colspan=3 | "+e.msg("afs-table-settings"),"! colspan=8 | "+e.msg("afs-table-hits-text"),"|-",'! rowspan=3 data-sort-type="text" | '+e.msg("afs-table-disallow"),'! rowspan=3 data-sort-type="text" | '+e.msg("afs-table-warn"),'! rowspan=3 data-sort-type="text" | '+e.msg("afs-table-tag"),'! rowspan=3 data-sort-type="number" | '+e.msg("afs-table-hits"),'! rowspan=3 data-sort-type="number" | '+e.msg("afs-table-warnings"),"! colspan=2 | "+e.msg("afs-table-saved-text")+'<ref name="saved" />',"! colspan=4 | "+e.msg("afs-table-checked-text"),"|-",'! rowspan=2 data-sort-type="number" | '+e.msg("afs-table-saved"),'! rowspan=2 data-sort-type="number" | '+e.msg("afs-table-saved-percent"),'! rowspan=2 data-sort-type="number" | '+e.msg("afs-table-checked"),'! rowspan=2 data-sort-type="number" | '+e.msg("afs-table-checked-percent"),"! colspan=2 | "+e.msg("afs-table-false-positives-text"),"|-",'! data-sort-type="number" | '+e.msg("afs-table-false-positives"),'! data-sort-type="number" | '+e.msg("afs-table-false-positives-percent")].join("\n");for(n=0;a.length>n;n++)o=a[n],o.date>m||(d=o.id,u=o.timestamp,f=o.hitsInPeriod,r=o.checked,l=o.errors,b=o.date&&o.date>c?o.date:c,b=[b.getUTCFullYear(),v(b.getUTCMonth()+1),v(b.getUTCDate()),v(b.getUTCHours()),v(b.getUTCMinutes()),v(b.getUTCSeconds())].join(""),w+="\n|-\n| "+["[[Special:AbuseFilter/"+d+"|"+d+"]]",o.version?"[[Special:AbuseFilter/history/"+d+"/item/"+o.version+"|"+u+"]]":"[[Special:AbuseFilter/history/"+d+"|?]]<sup>[[phab:T54919|bug]]</sup>",o.version?o.description:"? <sup>[[phab:T54919|bug]]</sup>",o.version?o.actions.indexOf("disallow")!==-1?e.message("afs-table-yes").plain():e.message("afs-table-no").plain():"? <sup>[[phab:T54919|bug]]</sup>",o.version?o.actions.indexOf("warn")!==-1?e.message("afs-table-yes").plain():e.message("afs-table-no").plain():"? <sup>[[phab:T54919|bug]]</sup>",o.version?o.actions.indexOf("tag")!==-1?e.message("afs-table-yes").plain():e.message("afs-table-no").plain():"? <sup>[[phab:T54919|bug]]</sup>","["+e.config.get("wgServer")+e.util.getUrl("Special:AbuseLog",{dir:"prev",wpSearchFilter:d,offset:b,limit:f})+" "+f+"]",o.warnings,o.savedEdits,f===0?"-":(100*o.savedEdits/f).toFixed(1)+"%",e.msg("afs-analysis-link",d,r),f===0?"-":(100*r/f).toFixed(1)+"%",l===void 0?"-":l,l===void 0||r===0?"-":(100*l/r).toFixed(1)+"%"].join("\n| "));w+="\n|}\n"+["<references>",'<ref name="saved">'+e.msg("afs-saved-note")+"</ref>","</references>"].join("\n"),i=t("#abuse-filter-stats-result"),i.length||(i=t('<div id="abuse-filter-stats-result">').prependTo("#mw-content-text")),i.empty().append("<b>"+e.msg("afs-result-intro")+"</b><br /><br />"+'<textarea cols="80" rows="10" style="width: 100%; font-family: monospace; line-height: 1.5em;">'+e.html.escape(w)+"</textarea>"),s()}function i(){var i,n;n=function(o){o&&t.extend(i,o),f.get(i).done(function(s){var i,o,r,l,f,g,p,c=RegExp(e.message("afs-error-regex").plain());for(i=0;s.query.abuselog.length>i;i++){for(o=s.query.abuselog[i],p=new Date(o.timestamp),l=parseInt(o.filter_id,10),r=0;d.length>r;r++)if(d[r].id===l)break;for(;d.length>r;r++)if(p>d[r].date||d[r].id!==l)break;(r===d.length||d[r].id!==l)&&(d[r-1].timestamp?d.splice(r,0,t.extend({},b,{id:l})):r-=1),g=d[r],g.hitsInPeriod+=1,f=g.analysisText.match(RegExp(e.message("afs-template-regex",o.id).plain())),f&&(g.checked+=1,c.test(f[0])&&(g.errors+=1)),o.revid!==void 0&&(g.savedEdits+=1),o.result.indexOf("warn")!==-1&&(g.warnings+=1)}s["query-continue"]?n(s["query-continue"].abuselog):a(d)}).fail(s)},i={list:"abuselog",afllimit:"max",aflstart:c.toISOString(),aflend:m.toISOString(),aflprop:"ids|revid|result|timestamp",afldir:"newer",rawcontinue:1},e.notify(e.msg("afs-getting-logs"),{tag:"stats",title:e.msg("afs-getting-data")}),n()}function n(){e.notify(e.msg("afs-getting-verification-pages"),{tag:"stats",title:e.msg("afs-getting-data")}),f.get({action:"query",prop:"revisions",rvprop:"content",generator:"embeddedin",geititle:e.msg("afs-header-template"),geinamespace:4,geilimit:"max"}).done(function(s){t.each(s.query.pages,function(t){var a,i=s.query.pages[t].title.match(e.msg("afs-analysis-page-regex"));if(i&&i[1])for(i=parseInt(i[1],10),a=0;d.length>a;a++)d[a].id===i&&(d[a].analysisText=s.query.pages[t].revisions[0]["*"])}),i()}).fail(s)}function o(a){var i;for(i=a;d.length>i;i++)if(!d[i].isLatestVersion&&d[i].id&&d[i].version)break;return i===d.length?(n(),void 0):(e.notify(e.msg("afs-getting-old-revision-info",d[i].version,d[i].id),{tag:"stats",title:e.msg("afs-getting-data")}),t.ajax({url:e.util.getUrl("Special:AbuseFilter/history/"+d[i].id+"/item/"+d[i].version,{uselang:"qqx"})}).done(function(e){var s=t(e);d[i].description=s.find("#mw-abusefilter-edit-description").find(".mw-input input").val(),d[i].actions=[],s.find("#mw-abusefilter-action-checkbox-disallow").is(":checked")&&d[i].actions.push("disallow"),s.find("#mw-abusefilter-action-checkbox-warn").is(":checked")&&d[i].actions.push("warn"),s.find("#mw-abusefilter-action-checkbox-tag").is(":checked")&&d[i].actions.push("tag"),d[i].actions=d[i].actions.join(","),o(i+1)}).fail(function(){e.log("ajax error: ",arguments),s()}),void 0)}function r(){var a,i,n,r,l={};n=function(g,p){var u={action:"query",list:"logevents",leaction:"abusefilter/modify",leprop:"timestamp|details",letitle:e.msg("afs-filter-page",g),ledir:"older",lelimit:7,rawcontinue:1};p&&t.extend(u,p),f.get(u).done(function(s){var f,p,u,v,h,w=s.query.logevents;for(f=0;w.length>f;f++)if(p=new Date(w[f].timestamp),u=l[w[f]["1"]],v={timestamp:w[f].timestamp,date:new Date(w[f].timestamp),version:w[f]["0"],isLatestVersion:!u.length},p>m)u[0]=v;else if(p>=c)u.length&&u[0].date>m?u[0]=v:u.push(v);else if(!u.length||c!==u[0].date){u.length&&u[0].date>m?u[0]=v:u.push(v);break}if(p>=c&&s["query-continue"])return e.log("getRevisionsOfFilter: "+g),r&&(s["query-continue"].logevents.letitle="Special:AbuseFilter/"+g),n(g,s["query-continue"].logevents),void 0;if(!r&&(!w.length||p>=c&&!s["query-continue"]))return e.log("getRevisionsOfFilter: "+g+" (old logs)"),r=!0,n(g,{lestart:m.toISOString(),letitle:"Special:AbuseFilter/"+g}),void 0;if(i++,a.length>i)return e.log("getRevisionsOfFilter: "+a[i].id),r=!1,e.notify(e.msg("afs-getting-filter-revisions",a[i].id),{tag:"stats",title:e.msg("afs-getting-data")}),n(a[i].id),void 0;for(d=[],f=0;a.length>f;f++)for(u=l[a[f].id],u.length||e.log.warn(e.msg("afs-missing-filter-revisions",a[f].id)),h=0;u.length>h;h++)d.push(t.extend({},b,u[h],u[h].isLatestVersion?a[f]:{id:a[f].id}));o(0)}).fail(s)},t("#firstHeading").injectSpinner("spinner-filter-stats"),e.notify(e.msg("afs-getting-filter-list"),{tag:"stats",title:e.msg("afs-getting-data")}),f=new e.Api,f.get({action:"query",list:"abusefilters",abflimit:"max",abfprop:"id|description|actions|status|private"}).done(function(t){var s;for(a=t.query.abusefilters,s=0;a.length>s;s++)l[a[s].id]=[];i=0,e.log("getRevisionsOfFilter: "+a[i].id),r=!1,e.notify(e.msg("afs-getting-filter-revisions",a[i].id),{tag:"stats",title:e.msg("afs-getting-data")}),n(a[i].id)}).fail(s)}function l(){t(e.util.addPortletLink("p-cactions","#",e.msg("afs-link"),"ca-AbuseFilterStatsLink",e.msg("afs-link-description"))).click(function(t){if(t.preventDefault(),g=new Date,p=prompt(e.msg("afs-month-question"),g.getMonth()+1),p!==null){if(p=parseInt(p,10),isNaN(p)||1>p||p>12)return alert(e.msg("afs-invalid-month")),void 0;c=new Date(Date.UTC(g.getFullYear(),p-1,1)),m=new Date(Date.UTC(g.getFullYear(),p,0,23,59,59)),u=new Date(Date.UTC(g.getFullYear(),g.getMonth()+1,0,23,59,59)),e.loader.using(["mediawiki.api","jquery.spinner","mediawiki.notification"],r)}})}e.messages.set({"afs-filter-page":"Especial:Filtro de abusos/$1","afs-missing-filter-version":"Não foi possível encontrar a versão do filtro $1 correspondente ao log $2.","afs-invalid-month":"Operação cancelada! O mês fornecido não é válido.","afs-month-question":"Deseja obter as estatísticas referentes a que mês? (forneça um número natural de 1 a 12)","afs-link":"Estatísticas dos filtros","afs-link-description":"Gerar uma tabela com estatísticas sobre os filtros de edição","afs-missing-filter-revisions":"Não foram encontradas revisões do filtro $1","afs-header-template":"Predefinição:Lista de falsos positivos (cabeçalho)","afs-template-regex":"\\* *\\{\\{ *[Aa]ção *\\|(?:.*?\\D)?($1)(?:\\D.*?)?\\}\\} *(?:\\n|$)","afs-error-regex":"erro *= *sim","afs-result-intro":"O código da tabela atualizada é apresentado abaixo:","afs-analysis-link":"[[WP:Filtro de edições/Análise/Filtro $1|$2]]","afs-analysis-page-regex":"Wikipédia:Filtro de edições/Análise/Filtro (\\d+)","afs-table-yes":"{{Tabela-sim}}","afs-table-no":"{{Tabela-não}}","afs-table-header":"Controle de qualidade dos filtros de edição","afs-table-filter":"Filtro","afs-table-date":"Data","afs-table-description":"Descrição","afs-table-settings":"Configurações do filtro","afs-table-hits":"Total","afs-table-hits-text":"Número de registros","afs-table-disallow":"Impedir","afs-table-warn":"Avisar","afs-table-tag":"Etiquetar","afs-table-total":"Total","afs-table-warnings":"Avisos<br />enviados","afs-table-saved-text":"Edições salvas","afs-table-checked-text":"Ações conferidas","afs-table-saved":"Total","afs-table-saved-percent":"% dos<br />registros","afs-table-checked":"Total","afs-table-checked-percent":"% dos<br />registros","afs-table-false-positives-text":"Falsos positivos","afs-table-false-positives":"Total","afs-table-false-positives-percent":"% dos<br />conferidos","afs-table-false-positives-percent-max":"% máximo","afs-saved-note":"Não apagadas? Vide página discussão.","afs-getting-filter-list":"Consultando a lista de filtros...","afs-getting-data":"Obtendo dados...","afs-getting-filter-revisions":"Obtendo as versões do filtro $1...","afs-getting-old-revision-info":"Obtendo informações sobre a versão $1 do filtro $2...","afs-getting-verification-pages":"Obtendo os registros analisados...","afs-getting-logs":"Obtendo os registros do mês escolhido..."});var f,d,g,p,c,m,u,b={id:0,description:"",actions:"",hitsInPeriod:0,warnings:0,savedEdits:0,checked:0,errors:0,analysisText:"",timestamp:"",version:""};(e.config.get("wgCanonicalSpecialPageName")==="AbuseFilter"||e.config.get("wgDBname")==="ptwiki"&&e.config.get("wgPageName").indexOf("Wikipédia:Filtro_de_edições")===0)&&t(l)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/AbuseFilterExecutionStats.js]] (workaround for [[phab:T35355]])
/**
 * Generates a table with statistics about abuse filters
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function a(){function a(a){var i,s,n=/\(abusefilter-edit-status: ([\dm,]+), ([\dm,]+), ([\d.,]+), ([\d.,]+), ([\d.,]+)\)/,o=['{| class="wikitable sortable plainlinks"',"|+ "+e.msg("afes-table-caption"),"|-",'! data-sort-type="number" | '+e.msg("afes-table-column-filter"),'! data-sort-type="number" | '+e.msg("afes-table-column-actions"),'! data-sort-type="number" | '+e.msg("afes-table-column-hits"),'! data-sort-type="number" | '+e.msg("afes-table-column-percent"),'! data-sort-type="number" | '+e.msg("afes-table-column-time"),'! data-sort-type="number" | '+e.msg("afes-table-column-conditions")].join("\n");for(i=1;a.length>i;i++)s=a[i][1].match(n),o+=s?["\n|-","| [[Special:AbuseFilter/"+a[i][0]+"|"+a[i][0]+"]]","| "+s[1],"| [{{fullurl:Special:AbuseLog|wpSearchFilter="+a[i][0]+"&limit="+s[2]+"}} "+s[2]+"]","| "+s[3],"| "+s[4],"| "+s[5]].join("\n"):"\n|-\n| "+a[i][0]+"|| || || || || ";o+="\n|}",t("#mw-content-text").empty().append(t("<pre>").text(o)),t.removeSpinner("af-status-spinner")}function i(l){e.notify(e.msg("afes-getting-data",l),{tag:"stats",title:e.msg("afes-getting-data-title")}),t.ajax({url:e.util.getUrl("Special:AbuseFilter/"+l,{uselang:"qqx"})}).done(function(e){var l=t(e),r=l.find("#mw-abusefilter-edit-id").find(".mw-input").text();n.push([r,l.find("#mw-abusefilter-edit-status-label").find(".mw-input").text()]),o===s?a(n):(o+=1,i(o))}).fail(function(){t.removeSpinner("af-status-spinner")})}var o=1;t("#firstHeading").injectSpinner("af-status-spinner"),(new e.Api).get({action:"query",list:"abusefilters",abflimit:"max",abfprop:"id"}).done(function(e){s=e.query.abusefilters.length,i(o)})}function i(){t(e.util.addPortletLink("p-cactions","#",e.msg("afes-link"),"ca-AbuseFilterExecutionStatsLink",e.msg("afes-link-title"))).click(function(){e.loader.using(["mediawiki.api","jquery.spinner","mediawiki.notification"],a)})}e.messages.set({"afes-table-caption":"Estatísticas sobre o tempo de execução dos filtros de edição","afes-table-column-filter":"Filtro","afes-table-column-actions":"Ações","afes-table-column-hits":"Correspondências","afes-table-column-percent":"%","afes-table-column-time":"Tempo","afes-table-column-conditions":"Condições","afes-link":"Estatísticas de execução dos filtros","afes-link-title":"Gerar uma tabela com estatísticas sobre a execução dos filtros de edição","afes-getting-data-title":"Obtendo dados...","afes-getting-data":"Consultando as estatísticas sobre o filtro $1..."});var s,n=[["Filtro","Estatísticas"]];(e.config.get("wgCanonicalSpecialPageName")==="AbuseFilter"||e.config.get("wgDBname")==="ptwiki"&&e.config.get("wgPageName").indexOf("Wikipédia:Filtro_de_edições")!==-1)&&t(i)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/AddLinksToGadgetDescriptionsInContentLanguage.js]] (workaround for [[phab:T35355]])
/**
 * Adds links to edit the gadget descriptions in content language to [[Special:Gadgets]]
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function a(){var a=e.config.get("wgUserLanguage"),n=RegExp("(MediaWiki:Gadget-.+?)/"+a);t("#mw-content-text").find("a").filter(function(){return n.test(t(this).attr("href"))}).each(function(){var i=t(this),r=i.clone().removeClass("new"),g=i.attr("title").match(n);g&&g[1]&&r.attr({title:g[1],href:r.attr("href").replace(n,g[1])}).append(" [",e.config.get("wgContentLanguage"),"]"),i.append(" [",a,"]").before(r," | ")})}e.config.get("wgCanonicalSpecialPageName")==="Gadgets"&&t(a)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/InternalLinkSuggestions.js]] (workaround for [[phab:T35355]])
/**
 * Insert internal links based on the articles from other wikis
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,n){"use strict";function e(){n.removeSpinner("spinner-internal-links-suggestions")}function t(){var t,s,a,l,g,o=n("#wpTextbox1"),u=[],d=[],p=function(i,n,e){return u[t].slice(1)===i.slice(2)?n+"[["+e+"]]":n+"[["+u[t]+"|"+e+"]]"};for(i.notify(i.msg("ils-applying-suggestions"),{tag:"internal-links-suggestions",title:i.msg("ils-processing-data")}),u=n.map(f,function(i,e){return c>i||n.inArray(e,r)!==-1||/^\d+$/.test(e)?null:e}),l=o.val(),t=0;u.length>t;t++)a=l,s=RegExp("([^a-záàâãçéêíñóôõúü\\-])("+i.util.escapeRegExp(u[t])+")(?![a-záàâãçéêíñóôõúü\\-]|[^\\[]*\\]\\]|.+={1,6}\\n)","i"),l=a.replace(s,p),l!==a&&(o.val(l),d.push(u[t]));g=n("#wpDiffLive"),g.length?g.click():n("#wpDiff").click(),i.notify(i.msg("ils-done",d.length),{autoHide:!1,tag:"internal-links-suggestions",title:i.msg("ils-done-title")}),e()}function s(i){var n,e,t;if(i.query)for(n=0;i.query.pageids.length>n;n++)t=i.query.pages[i.query.pageids[n]].langlinks,t&&(e=t[0]["*"],f[e]?f[e]++:f[e]=1)}function a(){var n,a=0;n=function(){var l=d[a],g=p[l];i.notify(i.msg("ils-getting-internal-links-from-other-wikis",l,g),{tag:"internal-links-suggestions",title:i.msg("ils-getting-data")}),u=new i.Api({ajax:{url:"//"+l+".wikipedia.org/w/api.php",dataType:"jsonp"}}),u.get({action:"query",prop:"langlinks",lllimit:"max",lllang:i.config.get("wgContentLanguage"),generator:"links",gplnamespace:0,gpllimit:"max",titles:g,indexpageids:!0}).done(function(i){s(i),a++,d.length>a?n():t()}).fail(e)},n()}function l(){i.notify(i.msg("ils-getting-internal-links"),{tag:"internal-links-suggestions",title:i.msg("ils-getting-data")}),u.get({action:"query",prop:"links",plnamespace:0,pllimit:"max",titles:i.config.get("wgPageName"),indexpageids:!0}).done(function(i){var e=i.query.pages[i.query.pageids[0]].links;e&&(r=n.map(e,function(i){return i.title}),a())}).fail(e)}function g(){u=new i.Api,n("#firstHeading").injectSpinner("spinner-internal-links-suggestions"),i.notify(i.msg("ils-getting-language-links"),{tag:"internal-links-suggestions",title:i.msg("ils-getting-data")}),u.get({action:"query",prop:"langlinks",lllimit:"max",indexpageids:!0,titles:i.config.get("wgPageName")}).done(function(t){var s,a=0,g=t.query.pages[t.query.pageids[0]].langlinks||[];for(s=0;g.length>s;s++)if(n.inArray(g[s].lang,d)!==-1&&(p[g[s].lang]=g[s]["*"],a++,a===d.length))break;return d=n.grep(d,function(i){return p[i]!==void 0}),d.length?(l(),void 0):(e(),i.notify(i.msg("ils-no-language-links"),{autoHide:!1,tag:"internal-links-suggestions",title:i.msg("ils-done-title")}),void 0)}).fail(e)}function o(){n(i.util.addPortletLink("p-cactions","#",i.msg("ils-link"),"ca-internal-links-suggestions",i.msg("ils-link-description"))).click(function(n){n.preventDefault(),i.loader.using(["mediawiki.api","jquery.spinner","mediawiki.util","mediawiki.notification"],g)})}i.messages.set({"ils-link":"Inserir ligações internas","ils-link-description":"Inserir as ligações internas com base nas que existem nos artigos em outros idiomas","ils-getting-data":"Obtendo dados","ils-getting-language-links":"Obtendo links para outros idiomas...","ils-getting-internal-links-from-other-wikis":'Obtendo links internos de "[[$1:$2]]"...',"ils-getting-internal-links":"Obtendo links internos desta página...","ils-processing-data":"Obtendo dados","ils-applying-suggestions":"Incluindo links sugeridos...","ils-done-title":"Concluído!","ils-done":"Foram adicionados $1 link(s).","ils-no-language-links":"Este artigo não possui links para os idiomas escolhidos."});var r,u,d=["en","de","es","fr","it","nl","ru","sv"],p={},c=2,f={};n.inArray(i.config.get("wgNamespaceNumber"),i.config.get("wgContentNamespaces"))!==-1&&location.host.indexOf("wikipedia.org")!==-1&&n.inArray(i.config.get("wgAction"),["edit","submit"])!==-1&&n(o)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/ImproveGadgetsDefinition.js]] (workaround for [[phab:T35355]])
/**
 * Creates links to the JS and CSS pages of each gadget defined at [[MediaWiki:Gadgets-definition]]
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(i,t){"use strict";function e(e){var n=e.find("li"),a=function(e,n){var a="MediaWiki:Gadget-"+t.trim(n);return'|<a href="'+i.util.getUrl(a)+'" title="'+a+'">'+n+"</a>"};n.each(function(){var i=t(this),e=i.text(),n=/^\s*([a-zA-Z](?:[-_:.\w\d ]*[a-zA-Z0-9])?)(\s*\[.*?\])?\s*((\|[^|]*)+)\s*$/;return n.test(e)?(i.html(e.replace(/\|([^|]+?\.(?:js|css)(?=\||$))/g,a)),void 0):!0})}i.config.get("wgNamespaceNumber")===8&&i.config.get("wgTitle")==="Gadgets-definition"&&i.loader.using("mediawiki.util",function(){i.hook("wikipage.content").add(e)})})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/GlobalPreferences.js]] (workaround for [[phab:T35355]])
/**
 * Set global preferences when the user visits a wiki
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,r){"use strict";function n(n){(new e.Api).saveOptions(n).done(function(){e.notify(r("<p></p>").append(e.msg("global-preferences-changed",'<pre style="white-space: pre-wrap;">'+JSON.stringify(n,null,2)+"</pre>")),{autoHide:!1})}).fail(function(n,s){e.notify(r("<p></p>").append(e.msg("global-preferences-api-error",n,s.error.info)),{autoHide:!1})})}function s(r,s){var t=prompt(e.msg(r)),o={};if(t){try{JSON.parse(t)}catch(i){return alert(i),void 0}o[s]=t,e.loader.using(["mediawiki.api"]).done(function(){n(o)})}}function t(e){e.preventDefault(),s("global-preferences-exceptions-set-prompt","userjs-global-preferences-exceptions")}function o(e){e.preventDefault(),s("global-preferences-set-prompt","userjs-global-preferences")}function i(){var s=e.config.get("wgServer"),i=e.user.options.get("global-preferences-server","//meta.wikimedia.org"),a={},p={action:"query",meta:"userinfo",uiprop:"options"};i===s?r(function(){r(e.util.addPortletLink("p-cactions","#",e.msg("global-preferences-set"),"ca-global-preferences",e.msg("global-preferences-set-desc"))).click(o),r(e.util.addPortletLink("p-cactions","#",e.msg("global-preferences-exceptions-set"),"ca-global-preferences",e.msg("global-preferences-exceptions-set-desc"))).click(t)}):(p.origin="https:"+s,a.url=i+"/w/api.php",a.xhrFields={withCredentials:!0}),new e.Api({ajax:a}).get(p).done(function(s){var t,o=s.query.userinfo.options,i=o["userjs-global-preferences"],a=o["userjs-global-preferences-exceptions"];if(i){try{i=JSON.parse(i)}catch(p){return alert(p),void 0}if(a){try{a=JSON.parse(a)[e.config.get("wgDBname")]}catch(p){return alert(p),void 0}if(a==="*")return;if(Array.isArray(a))for(t=0;a.length>t;t++)delete i[a[t]]}for(t in i)i[t]==e.user.options.get(t)&&delete i[t];r.isEmptyObject(i)||e.loader.using(["mediawiki.api"]).done(function(){n(i)})}})}e.messages.set({"global-preferences-changed":"Some of your preferences were changed on this wiki: $1.","global-preferences-set":"Set global preferences","global-preferences-set-desc":"Set the your global preferences by providing a string in JSON format","global-preferences-set-prompt":"Provide a JSON string representing the preferences you want to set as global preferences.","global-preferences-exceptions-set":"Set preference exceptions","global-preferences-exceptions-set-desc":"Set the exceptions to your global preferences by providing a string in JSON format","global-preferences-exceptions-set-prompt":'Provide a JSON string with database names as keys and "*" or arrays of preference names (the exceptions) as its values.',"global-preferences-api-error":"There was an error: $1; $2"}),e.config.get("wgAction")==="view"&&e.loader.using(["mediawiki.api","user.options"],i)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/MarkUnpatrolledContribs.js]] (workaround for [[phab:T35355]])
/**
 * Mark unpatrolled contributions of a given user with "!" on [[Special:Contributions]] and the history of pages
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function n(n){var i=t('<abbr class="unpatrolled">!</abbr>').attr("title",e.msg("muc-recentchanges-label-unpatrolled"));t("#mw-content-text").find("li").each(function(){var e,a=t(this),o=a.find("a.mw-changeslist-date").attr("href");if(!o)return!0;for(e=0;n.length>e;e++)o.indexOf("oldid="+n[e])!==-1&&a.addClass("not-patrolled").find(".mw-contributions-title").prepend(i.clone()," ")})}function i(){var i=new e.Api,a={action:"query",list:"recentchanges",rcprop:"timestamp|title|ids|patrolled",rclimit:"max",formatversion:2,"continue":""},o=function(r){t.extend(a,r),i.get(a).done(function(i){var a=[],r=e.config.get("wgPageName").replace(/_/g," ");t.each(i.query.recentchanges,function(){return this.patrolled||e.config.get("wgAction")==="history"&&this.title!==r?!0:(a.push(this.revid),void 0)}),a.length&&n(a),i["continue"]&&o(i["continue"])})};e.config.get("wgAction")!=="history"&&(a.rcuser=e.config.get("wgRelevantUserName")),o()}e.messages.set({"muc-recentchanges-label-unpatrolled":"Esta edição ainda não foi patrulhada"}),(e.config.get("wgCanonicalSpecialPageName")==="Contributions"||e.config.get("wgAction")==="history")&&t.when(e.loader.using(["mediawiki.api"]),t.ready).then(i)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/UndoFromDiff.js]] (workaround for [[phab:T35355]])
/**
 * Allow undoing parts of a change by pressing CTRL and double clicking in the parts of a diff
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function i(i){var n,d,l,o=t(i.target).closest("tr"),a=o.find("td.diff-deletedline").text(),f=o.find("td.diff-addedline").text(),c=t("#wpTextbox1"),r=c.textSelection("getContents");if(i.ctrlKey){if(!f)return alert("The script is not able to undo this change (yet!)."),void 0;if(l=RegExp(e.util.escapeRegExp(f),"g"),d=r.match(l),d&&d.length!==1)return alert("This text appears more than once in the page, so it is safer to fix it manually."),void 0;c.textSelection("setContents",r.replace(l,a)),n=t("#wpDiffLive"),n.length||(n=t("#wpDiff")),n.click()}}t.inArray(e.config.get("wgAction"),["edit","submit"])!==-1&&t.when(e.loader.using(["mediawiki.util","jquery.textSelection"]),t.ready).then(function(){t("#mw-content-text").on("dblclick",".diff-deletedline, .diff-addedline",i)})})(mediaWiki,jQuery);
// </nowiki>
// mw.config.set( 'ScoredRevisionsThresholds', { low: 0.85, medium: 0.9, high: 0.95 } );
mw.config.set( 'ScoredRevisionsEnableForPatrolledRevs', true );
mw.loader.using( [ 'user.options' ], function () {
if( mw.user.options.get( 'ores-enabled' ) != 1 ) {
// [[File:User:He7d3r/Tools/ScoredRevisions.js]] (workaround for [[phab:T35355]])
/**
 * Highlight revisions by their scores
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,i){"use strict";function r(){var i,r,n,a,t,o;if(arguments[0][0].error)return e.log.error(arguments[0][0].error),void 0;for(i=Object.keys(arguments[0][0][c.wgDBname].scores)[0],o=[],t=[],r=0;s.length>r;r++)a=arguments[r][0][c.wgDBname].scores[i],a&&!a.error&&a[s[r]]&&!a[s[r]].error&&a[s[r]].score&&(n=a[s[r]].score.probability.true,t.push((100*n).toFixed(0)+"% "+s[r]),o.push(n>=h.high?"sr-"+s[r]+"-high":n>=h.medium?"sr-"+s[r]+"-medium":n>=h.low?"sr-"+s[r]+"-low":"sr-"+s[r]+"-none"));d[i].addClass(o.join(" ")).attr("title","Scores: "+t.join("; "))}function n(){var r=i.Deferred(),n={},a={},t=c.wgCanonicalSpecialPageName==="Watchlist"||c.wgCanonicalSpecialPageName==="Recentchanges"||c.wgCanonicalSpecialPageName==="Recentchangeslinked",o=t?".mw-changeslist":c.wgCanonicalSpecialPageName==="Contributions"?".mw-contributions-list":"#pagehistory",s=e.user.options.get("usenewrc")==1&&t?"tr":"li",l=c.wgCanonicalSpecialPageName==="Contributions"||c.wgAction==="history"?"a.mw-changeslist-date":"a";return i(".unpatrolled").length&&!c.ScoredRevisionsEnableForPatrolledRevs,c.wgIsArticle&&c.wgAction==="view"?(d[c.wgCurRevisionId]=i("#ca-history a"),r.resolve([c.wgCurRevisionId]).promise()):(i(o).find(s).filter(function(){var e=i(this);return e.hasClass("wikibase-edit")?!1:!0}).each(function(){var r,t,o=i(this);o.find(l).each(function(){var n=i(this).attr("href");return r=e.util.getParamValue("diff",n),(r==="prev"||c.wgCanonicalSpecialPageName==="Contributions"||c.wgAction==="history")&&(r=e.util.getParamValue("oldid",n)),r&&/^([1-9]\d*)$/.test(r)?!1:(t||(t=e.util.getParamValue("curid",n)),void 0)}),r?(d[r]=o,n[r]=!0):t&&t!=="0"&&(a[t]=o)}),i.isEmptyObject(a)?r.resolve(Object.keys(n)):i.getJSON(e.util.wikiScript("api"),{format:"json",action:"query",prop:"revisions",rvprop:"ids",pageids:Object.keys(a).join("|")}).done(function(e){e&&e.query&&e.query.pages&&i.each(e.query.pages,function(e,i){var r=i.revisions[0].revid;d[r]||(d[r]=a[e],n[r]=!0)})}).always(function(){r.resolve(Object.keys(n))}),r.promise())}function a(e,r,n){return i.ajax({url:l+e+"-"+r+":predict",data:JSON.stringify({rev_id:n}),contentType:"application/json",type:"POST"})}function t(){var t=0,o=1,l=function(n,s){var g=[];s.forEach(function(e){g.push(a(c.wgDBname,e,Number(n)))}),i.when.apply(i,g).done(function(){s.length===1?r.apply(this,[arguments]):r.apply(this,arguments),t+=o,u.length>t&&l(u[t],s)}).fail(function(){e.log.error("The request failed.",arguments)})};e.loader.load("//meta.wikimedia.org/w/index.php?title=User:He7d3r/Tools/ScoredRevisions.css&action=raw&ctype=text/css","text/css"),n().done(function(e){u=e,u.length&&l(u[t],s)})}var o=e.util.getParamValue("showscores")!=="0",s=["damaging","goodfaith"],c=e.config.get(["wgIsArticle","wgCurRevisionId","wgCanonicalSpecialPageName","wgDBname","wgAction","ScoredRevisionsThresholds","ScoredRevisionsServerUrl","ScoredRevisionsEnableForPatrolledRevs"]),l=c.ScoredRevisionsServerUrl||"https://api.wikimedia.org/service/lw/inference/v1/models/",g=o&&(i.inArray(c.wgCanonicalSpecialPageName,["Watchlist","Recentchanges","Recentchangeslinked","Contributions"])!==-1||c.wgAction==="history"||c.wgIsArticle&&c.wgAction==="view"),u=[],d={},h=c.ScoredRevisionsThresholds||{low:.45,medium:.58,high:.8};g&&e.hook("wikipage.content").add(t)})(mediaWiki,jQuery);
// </nowiki>
}
} );
// [[File:User:He7d3r/Tools/ScoredCategories.js]] (workaround for [[phab:T35355]])
/**
 * Adds a table to category pages showing the pages with the top 10 scores
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(e,t){"use strict";function i(i){var n,r,o,a,c,u=t("<table><tbody><tr><th>Score</th><th>Page</th></tr></tbody></table>").addClass("wikitable sortable"),l=u.find("tbody");for(n=0;i.length>n;n++)r=i[n],c=r.revisions[0].revid,a=(100*r[d]).toFixed(0),o=t("<tr>").append(t("<td>").append(t("<a>").attr("href",g+"?models="+s+"&revids="+c).text(a+"%")),t("<td>").append(t("<a>").attr("href",e.util.getUrl(r.title,{diff:c})).text(r.title))),l.append(o);t("#mw-content-text").prepend(u.tablesorter())}function n(e){t.each(a,function(t,i){var n=e[i.revisions[0].revid][s].score;i[d]=!n||n.error?0:n.probability["true"]}),a=a.sort(function(e,t){return t[d]-e[d]}).slice(0,u),i(a)}function r(){var i,r=0,o={},d=function(a){t.ajax({url:g,data:{models:s,revids:a.join("|")},dataType:"json"}).done(function(a){t.extend(o,a[e.config.get("wgDBname")].scores),r+=c,i.length>r?d(i.slice(r,r+c)):n(o)}).fail(function(){e.log.error("The request failed.",arguments)})};a.length&&(i=t.map(a,function(e){return e.revisions[0].revid}),d(i.slice(r,r+c)))}function o(){var i=new e.Api,n={prop:"revisions",rvprop:"ids",generator:"categorymembers",gcmtitle:e.config.get("wgPageName"),formatversion:2,gcmlimit:"max","continue":""},o=function(e){t.extend(n,e),i.get(n).done(function(e){a=a.concat(e.query&&e.query.pages||[]),e["continue"]?o(e["continue"]):r()})};o()}var a=[],c=20,s="damaging",d=s+"Score",g="//ores.wikimedia.org/v3/scores/"+e.config.get("wgDBname")+"/",u=10;e.config.get("wgNamespaceNumber")===14&&e.config.get("wgAction")==="view"&&t.when(e.loader.using(["mediawiki.api","mediawiki.util","jquery.tablesorter"]),t.ready).then(o)})(mediaWiki,jQuery);
// </nowiki>
// [[File:User:He7d3r/Tools/HighlightTinyText.js]] (workaround for [[phab:T35355]])
/**
 * Add a link to highligh tiny text
 *
 * @author: Helder (https://github.com/he7d3r)
 * @license: CC BY-SA 3.0 <https://creativecommons.org/licenses/by-sa/3.0/>
 */
// <nowiki>
(function(t,i){"use strict";function n(){i(t.util.addPortletLink("p-cactions","#","Highlight tiny text","ca-tiny-text","Hightlight elements whose font-size is too small")).click(function(){i("*").filter(function(){var t=parseInt(i(this).css("font-size"),10);return t>0&&e>t}).css("background-color","red")})}var e=9;i(n)})(mediaWiki,jQuery);
// </nowiki>
$( function () {
	$( '#ca-tiny-text' ).click()
} );
// 

( function ( mw, $ ) {

// Show up to 500 filters by default at [[Special:AbuseFilter]]
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'AbuseFilter' ) {
	var $link = $( '.mw-abusefilter-navigation a' ).first();
	$link.attr( 'href', $link.attr( 'href' ) + '?limit=500' );
}

wget( '[[w:en:User:Js/ajaxPreview.js]]' );
wget( '[[w:en:User:Js/urldecoder.js]]' );
var myLintHints = { };
myLintHints.rooms = '*';
myLintHints.oldid = true;
myLintHints.layer = false;
mw.hook( 'lintHint.config' ).fire( myLintHints );
wget( '[[w:en:User:PerfektesChaos/js/lintHint/r.js]]' );
if(
	mw.util.getParamValue('diff') !== null ||
	mw.config.get( 'wgCanonicalSpecialPageName' ) === 'ComparePages' ||
	mw.util.getParamValue( 'action' ) === 'submit'
){
	// wget( '[[w:en:User:Cacycle/wikEdDiff.js]]' );
	wget( '[[w:de:User:Schnark/js/diff.js]]' );
}
if ( !isEditOrSubmit ){
	wget( '[[w:de:User:Schnark/js/artikel-statistik.js]]' );
}
/*if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Watchlist' && ! /\/cw$/.test( mw.config.get( 'wgTitle' ) ) ) {
	wget( '[[w:en:User:Theopolisme/Scripts/ajaxWatchlist.js]]' );
}*/
// window.replyLinkPreloadPingTpl = '@[[User:##|]]: '
// wget( '[[w:en:User:Enterprisey/reply-link.js]]' );
wget( '[[w:en:User:Joeytje50/JWB.js/load.js]]' );
wget( '[[w:fr:MediaWiki:Gadget-AncreTitres.js]]' );
wget( '[[mw:MediaWiki:Gadget-UTCLiveClock.js]]' );
wget( '[[c:MediaWiki:Gadget-rightsfilter.js]]' );
if ( mw.config.get( 'wgNamespaceNumber' ) >= 0 && mw.config.get( 'wgNamespaceNumber' ) % 2 === 0 ) {
	wget( '[[d:User:Yair rand/WikidataInfo.js]]' );
	wget( '[[d:User:Yair rand/checksitelinks.js]]' );
}
// mw.loader.load( 'https://translatewiki.net/w/i.php?title=MediaWiki:Gadget-HoverPopTools.css&action=raw&ctype=text/css', 'text/css' );
// mw.loader.load( 'https://translatewiki.net/w/i.php?title=MediaWiki:Gadget-HoverPopTools.js&action=raw&ctype=text/javascript', 'text/javascript' );
// wget( '[[mw:MediaWiki:Gadget-DotsSyntaxHighlighter.js]]' );

/**
 * Forces left-to-right layout and editing on RTL wikis.
 * @see https://meta.wikimedia.org/wiki/Force_ltr
 * @update-token [[File:pathoschild/forceltr.js]]
 */
// wget( 'https://tools-static.wmflabs.org/meta/scripts/pathoschild.forceltr.js' );
/*try {
	localStorage.setItem( 'mw-mobile-sidebar-state', 'hidden' );
} catch( e ) {
	// [[phab:T66721]]?
}
wget( '[[m:User:Brion VIBBER/mobile-sidebar.css]]' );
wget( '[[m:User:Brion VIBBER/mobile-sidebar.js]]' );*/
// wget( '[[mw:XTools/ArticleInfo.js]]' );
if( mw.config.get( 'wgDBname' ) === 'enwiki' ){
	wget( '[[w:en:User:Lupin/recent2.js]]' );
}
if( mw.config.get( 'wgDBname' ) === 'ptwiki'
	&& mw.config.get( 'wgCanonicalSpecialPageName' ) !== 'ContentTranslation'
){
	wget( '[[w:pt:User:Luizdl/Script de ajustes.js]]' );
}

if( mw.config.get( 'wgDBname' ) === 'wikidatawiki' ){
	wget( '[[m:User:He7d3r/Tools/LowerCaseLabels.js]]' );
	wget( '[[m:User:He7d3r/Tools/WikidataAutofill.js]]' );
	wget( '[[d:User:Joern/altLabels.js]]' );
	// wget( '[[d:User:Magnus Manske/wikidata useful.js]]' );
}

if( location.host.indexOf( 'wikipedia.org' ) !== -1 ){
	window.articleTranslatorConf = {
		'homeWiki': 'pt'
	};
	// wget( '[[w:en:User:Ebraminio/ArticleTranslator.js]]' );
	// [[w:es:User:Qwertyytrewqqwerty/DisamAssist]]
	wget( '[[w:pt:User:Lijealso/DisamAssist.css]]' );
	wget( '[[w:pt:User:Lijealso/DisamAssist.js]]' );
	if ( /[?&]RLRL(?:S|R|RD)=/.test( document.location.href ) ){
		wget( '[[w:en:User:Topbanana/RLRL SR Utility.js]]' );
	}
}

if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Search' ||
	( mw.config.get( 'wgArticleId' ) === 0 && mw.config.get( 'wgCanonicalSpecialPageName' ) === false )
) {
	wget( '[[w:en:MediaWiki:Wdsearch.js]]' );
}

if ( mw.config.get( 'wgTitle' ) === 'Krinkle/RTRC'
	&& $.inArray( mw.config.get( 'wgAction' ), [ 'view', 'edit' ] ) !== -1
) {
	// [[File:Krinkle RTRCdev.js]] (workaround for [[phab:T35355]])
	wget( '[[mw:MediaWiki:Gadget-rtrc.css]]' );
	wget( '[[mw:MediaWiki:Gadget-rtrc.js]]' );
}

}( mediaWiki, jQuery ) );
// 


/**
 * Do not follow redirects on prefix index lists
 */
if ( 'Prefixindex' === mw.config.get( 'wgCanonicalSpecialPageName' ) ) {
	$(function () {
		$('.allpagesredirect a').each(function(){
			$(this).attr('href', $(this).attr('href') + '?redirect=no');
		});
	});
}


/* End user scripts */
} else {
	$( '#ca-toggle-js' ).find( 'a' ).css( 'color', 'red' );
	mw.log.warn( 'Note: Your scripts are disabled.' );
}

/* Loader for scripts from localhost */
/*
enableLocalScripts = mw.cookie.get( 'enable-local-scripts' ) !== 'false';
$( function () {
	var label = {
		'true': 'Disable local scripts',
		'false': 'Enable local scripts'
	};
	$( mw.util.addPortletLink(
		'p-tb',
		'#',
		label[ enableLocalScripts ],
		'ca-local-scripts',
		'Turn local scripts on or off and reload the page'
	) ).click( function (e) {
		// prevent '#' from appearing in URL bar
		e.preventDefault();
		cookieOptions = {
			expires: 86400, // 1 day
			path: '/'
		}
		if ( enableLocalScripts ) {
			mw.cookie.set( 'enable-local-scripts', 'false', cookieOptions );
		} else {
			mw.cookie.set( 'enable-local-scripts', null, cookieOptions );
		}
		// Reloads the document (from the cache)
		document.location.reload( false );
	} );
} );

if ( enableLocalScripts ) {
	wget(
		'http://localhost/w/index.php?title=' +
		'User:' + mw.util.wikiUrlencode( mw.config.get( 'wgUserName' ) ) +
		'/common.js&action=raw&ctype=text/javascript'
	);
}*/

} ); // using mediawiki.util, mediawiki.cookie

}( mediaWiki, jQuery ) );