MediaWiki:Common.js: diferenças entre revisões
Conteúdo apagado Conteúdo adicionado
mSem resumo de edição |
mSem resumo de edição |
||
Linha 9: | Linha 9: | ||
} |
} |
||
else if (mw.config.get( ' |
else if ( mw.config.get( 'wgCanonicalSpecialPageName' ) == 'Search' ) |
||
{ |
{ |
||
importScript("MediaWiki:Search.js"); |
importScript("MediaWiki:Search.js"); |
||
} |
} |
||
if (navigator.appName == "Microsoft Internet Explorer") |
|||
{ |
{ |
||
importScript("MediaWiki:IEFixes.js"); |
importScript("MediaWiki:IEFixes.js"); |
||
} |
} |
||
if ( mw.config.get( 'wgAction' ) === 'view' |
|||
&& !mw.config.get( 'wgCanonicalSpecialPageName' ) |
|||
{ |
|||
&& !$.isEmpty( mw.config.get( 'wgRestrictionEdit' ) ) |
|||
⚫ | |||
&& $.inArray( mw.config.get( 'wgRestrictionEdit' )[0], ['autoconfirmed', 'sysop'] ) > -1 |
|||
&& mw.config.get( 'wgPageName' ) !== 'Página_principal' |
|||
) { |
|||
⚫ | |||
} |
} |
||
Linha 27: | Linha 31: | ||
* Upload form |
* Upload form |
||
*/ |
*/ |
||
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) == 'Upload' ) { |
|||
importScript('MediaWiki:UploadForm.js'); |
importScript('MediaWiki:UploadForm.js'); |
||
} |
|||
Linha 53: | Linha 58: | ||
function linkUploadToCommons() |
function linkUploadToCommons() |
||
{ |
{ |
||
if (document.getElementById("carrega-para-commons")) |
if (document.getElementById("carrega-para-commons")) { |
||
⚫ | |||
⚫ | |||
var li_carrega = document.getElementById("t-upload"); |
var li_carrega = document.getElementById("t-upload"); |
||
if (!li_carrega) |
if (!li_carrega) { |
||
⚫ | |||
⚫ | |||
var afegit = li_carrega.nextSibling; |
var afegit = li_carrega.nextSibling; |
||
var ul_eines = li_carrega.parentNode; |
var ul_eines = li_carrega.parentNode; |
||
var li = document.createElement("li"); |
var li = document.createElement("li"); |
||
var commonsURL = 'http://commons.wikimedia.org/wiki/Special:Upload'; |
|||
if (mw.config.get('wgServer').indexOf('https://') === 0) { |
|||
commonsURL = 'https://secure.wikimedia.org/wikipedia/commons/wiki/Special:Upload'; |
|||
⚫ | |||
li.id = "carrega-para-commons"; |
li.id = "carrega-para-commons"; |
||
li.innerHTML = '<a href=" |
li.innerHTML = '<a href="' + commonsURL + '">Carregar no Commons</a>'; |
||
if (afegit) ul_eines.insertBefore(li, afegit); |
if (afegit) { |
||
ul_eines.insertBefore(li, afegit); |
|||
else ul_eines.appendChild(li); |
} |
||
else { |
|||
ul_eines.appendChild(li); |
|||
} |
|||
} |
} |
||
$(linkUploadToCommons); |
|||
Linha 88: | Linha 105: | ||
// END Enable multiple onload functions |
// END Enable multiple onload functions |
||
// ============================================================ |
// ============================================================ |
||
// @deprecated: Use a função $() do jQuery |
|||
⚫ | |||
function addLoadEvent(func) |
function addLoadEvent(func) |
||
{ |
{ |
||
if (window.addEventListener) |
if (window.addEventListener) { |
||
window.addEventListener("load", func, false); |
window.addEventListener("load", func, false); |
||
else if (window.attachEvent) |
} else if (window.attachEvent) { |
||
window.attachEvent("onload", func); |
window.attachEvent("onload", func); |
||
} |
|||
} |
} |
||
Linha 210: | Linha 228: | ||
} |
} |
||
$(createNavigationBarToggleButton); |
|||
/* Interwikis */ |
/* Interwikis */ |
||
Linha 241: | Linha 259: | ||
} |
} |
||
$(interwikiExtra); |
|||
/** Banners para dicas e doações vista apenas por anônimos ************************** |
/** Banners para dicas e doações vista apenas por anônimos ************************** |
||
Linha 249: | Linha 267: | ||
importScript('MediaWiki:WikiBanners.js'); |
importScript('MediaWiki:WikiBanners.js'); |
||
/** |
|||
/** Altera o título da página ************************************************************** |
|||
* Altera o título da página |
|||
⚫ | |||
⚫ | |||
* A função procura por um banner como: |
|||
* <nowiki><div id="RealTitleBanner">Div that is hidden</nowiki> |
|||
* <nowiki><div id="RealTitleBanner">Div que está oculto</nowiki> |
|||
* <nowiki><span id="RealTitle">título</span></nowiki> |
|||
* <nowiki></div></nowiki> |
|||
* Um elemento com id=DisableRealTitle desabilita a função |
|||
********************************************************************************************/ |
|||
⚫ | |||
⚫ | |||
*/ |
|||
rewritePageH1 = function () { |
|||
⚫ | |||
try { |
|||
var realTitleBanner = document.getElementById( 'RealTitleBanner' ); |
|||
if (realTitleBanner) { |
|||
if (!document.getElementById("DisableRealTitle")) { |
|||
if ( !document.getElementById( 'DisableRealTitle' ) ) { |
|||
var realTitle = document.getElementById( 'RealTitle' ); |
|||
var h1 = document.getElementsByTagName( 'h1' )[0]; |
|||
if ( realTitle && h1 ) { |
|||
h1.innerHTML = realTitle.innerHTML; |
|||
realTitleBanner.style.display = 'none'; |
|||
} |
|||
} |
|||
⚫ | |||
} |
|||
⚫ | |||
} |
|||
⚫ | |||
catch (e) { |
} catch (e) { |
||
mw.log( 'Algo deu errado ao tentar reescrever o título da página.' ); |
|||
/* Algo deu errado. */ |
|||
⚫ | |||
⚫ | |||
}; |
|||
$( rewritePageH1 ); |
|||
/** |
|||
/** Transforma determinadas páginas em páginas de discussão ** |
|||
⚫ | |||
* @source: [[:fr:w:MediaWiki:Common.js]] |
|||
⚫ | |||
* @author: [[:fr:User:Aoineko]] |
|||
*/ |
|||
$(function() { |
|||
⚫ | |||
if ( $('#PaginaDeDiscussao').length ) { |
|||
function TransformeEmPaginaDeDiscussao() { |
|||
$(document.body).removeClass('ns-subject').addClass('ns-talk'); |
|||
⚫ | |||
document.body.className = 'ns-talk'; |
|||
} |
}); |
||
$(TransformeEmPaginaDeDiscussao); |
Revisão das 00h09min de 14 de agosto de 2011
/* Código Javascript colocado aqui será carregado para todos os utilizadores em cada carregamento de página */
if ($.inArray( mw.config.get( 'wgAction' ), [ "edit" , "submit" ]) > -1)
{
var load_edittools = true;
importScript("MediaWiki:Edittools.js");
importScript("MediaWiki:Extrabo.js");
importScript("MediaWiki:Forcepreview.js");
}
else if ( mw.config.get( 'wgCanonicalSpecialPageName' ) == 'Search' )
{
importScript("MediaWiki:Search.js");
}
if (navigator.appName == "Microsoft Internet Explorer")
{
importScript("MediaWiki:IEFixes.js");
}
if ( mw.config.get( 'wgAction' ) === 'view'
&& !mw.config.get( 'wgCanonicalSpecialPageName' )
&& !$.isEmpty( mw.config.get( 'wgRestrictionEdit' ) )
&& $.inArray( mw.config.get( 'wgRestrictionEdit' )[0], ['autoconfirmed', 'sysop'] ) > -1
&& mw.config.get( 'wgPageName' ) !== 'Página_principal'
) {
importScript( 'MediaWiki:Topicon.js' );
}
/*
* Upload form
*/
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) == 'Upload' ) {
importScript('MediaWiki:UploadForm.js');
}
/** Correlatos ******************************************************************************
* Descrição:Correlatos no menu lateral. Código copiado do de:wikt
********************************************************************************************/
mw.util.addCSS( '#interProject, #sisterProjects {display: none; speak: none;} #p-tb .pBody {padding-right: 0;}' );
function iProject() {
if (document.getElementById("interProject")) {
var iProjectElem = document.getElementById("interProject").innerHTML,
interProject = document.createElement("div");
interProject.style.marginTop = "0.7em";
interProject.innerHTML = '<h5>Correlatos<\/h5><div class="pBody">'+iProjectElem+'<\/div>';
document.getElementById("p-tb").appendChild(interProject);
}
}
$(iProject);
/** Commons ******************************************************************************
* Descrição:Adiciona um link direto para carregamentos no Commons
********************************************************************************************/
function linkUploadToCommons()
{
if (document.getElementById("carrega-para-commons")) {
return;
}
var li_carrega = document.getElementById("t-upload");
if (!li_carrega) {
return;
}
var afegit = li_carrega.nextSibling;
var ul_eines = li_carrega.parentNode;
var li = document.createElement("li");
var commonsURL = 'http://commons.wikimedia.org/wiki/Special:Upload';
if (mw.config.get('wgServer').indexOf('https://') === 0) {
commonsURL = 'https://secure.wikimedia.org/wikipedia/commons/wiki/Special:Upload';
}
li.id = "carrega-para-commons";
li.innerHTML = '<a href="' + commonsURL + '">Carregar no Commons</a>';
if (afegit) {
ul_eines.insertBefore(li, afegit);
}
else {
ul_eines.appendChild(li);
}
}
$(linkUploadToCommons);
// ============================================================
// BEGIN Enable multiple onload functions
// setup onload functions this way:
// aOnloadFunctions[aOnloadFunctions.length] = function_name; // without brackets!
if (!window.aOnloadFunctions) {
var aOnloadFunctions = [];
}
window.onload = function() {
if (window.aOnloadFunctions) {
for (var _i=0; _i<aOnloadFunctions.length; _i++) {
aOnloadFunctions[_i]();
}
}
};
// END Enable multiple onload functions
// ============================================================
// @deprecated: Use a função $() do jQuery
function addLoadEvent(func)
{
if (window.addEventListener) {
window.addEventListener("load", func, false);
} else if (window.attachEvent) {
window.attachEvent("onload", func);
}
}
/* Barras de navegação */
/** Barras de navegação dinâmica ************************************************************
* Origem: [[:it:MediaWiki:Common.js]]
********************************************************************************************/
// set up the words in your language
var NavigationBarHide = ' [ocultar]';
var NavigationBarShow = ' [exibir]';
// set up max count of Navigation Bars on page,
// if there are more, all will be hidden
// NavigationBarShowDefault = 0; // all bars will be hidden
// NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
var NavigationBarShowDefault = 0;
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
function toggleNavigationBar(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar),
NavFrame = document.getElementById("NavFrame" + indexNavigationBar),
NavChild;
if (!NavFrame || !NavToggle) {
return false;
}
// if shown now
if (NavToggle.firstChild.data == NavigationBarHide) {
for (
NavChild = NavFrame.firstChild;
NavChild !== null;
NavChild = NavChild.nextSibling
) {
if (NavChild.className == 'NavPic') {
NavChild.style.display = 'none';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = NavigationBarShow;
// if hidden now
} else if (NavToggle.firstChild.data == NavigationBarShow) {
for (
NavChild = NavFrame.firstChild;
NavChild !== null;
NavChild = NavChild.nextSibling
) {
if (NavChild.className == 'NavPic') {
NavChild.style.display = 'block';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = NavigationBarHide;
}
}
// adds show/hide-button to navigation bars
function createNavigationBarToggleButton()
{
var indexNavigationBar = 0, i;
// iterate over all < div >-elements
for(
i=0, NavFrame = document.getElementsByTagName("div")[0];
NavFrame;
i++
) {
// if found a navigation bar
if (NavFrame.className == "NavFrame") {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
var NavToggleText = document.createTextNode(NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
for(
var j=0;
j < NavFrame.childNodes.length;
j++
) {
if (NavFrame.childNodes[j].className == "NavHead") {
NavFrame.childNodes[j].appendChild(NavToggle);
}
}
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
NavFrame = document.getElementsByTagName("div")[i];
}
// if more Navigation Bars found than Default: hide all
if (NavigationBarShowDefault < indexNavigationBar) {
for(
i=1;
i<=indexNavigationBar;
i++
) {
toggleNavigationBar(i);
}
}
}
$(createNavigationBarToggleButton);
/* Interwikis */
function interwikiExtra()
{
// iterate over all <span>-elements
for(var i=0, a = document.getElementsByTagName("span")[0]; a; i++) {
// if found a linkInfo span
if(a.className == "interwiki-info") {
// iterate over all <li>-elements
var count=0;
for(var j=0, b = document.getElementsByTagName("li")[0]; b; j++) {
if(b.className == "interwiki-" + a.id) {
b.innerHTML = b.innerHTML + " "+a.title;
if(a.title == "(vo)") { b.title = "Texto original"; }
}
else if(b.className == "interwiki-" + a.id.substr(0,a.id.length-1)) {
count = count+1;
if(a.id.charAt(a.id.length-1) == count) {
b.innerHTML = b.innerHTML + " "+a.title;
}
}
b = document.getElementsByTagName("li")[j];
}
}
a = document.getElementsByTagName("span")[i];
}
}
$(interwikiExtra);
/** Banners para dicas e doações vista apenas por anônimos **************************
* Descrição: Frases aleatórias que podem ser vistas por anônimos the bug:
* Autores: [[:en:User:Gmaxwell]], [[:en:User:MZMcBride]]
******************************************************************************/
importScript('MediaWiki:WikiBanners.js');
/**
* Altera o título da página
*
* A função procura por um banner como:
* <nowiki><div id="RealTitleBanner">Div que está oculto</nowiki>
* <nowiki><span id="RealTitle">título</span></nowiki>
* <nowiki></div></nowiki>
* Um elemento com id=DisableRealTitle desabilita a função
* @source: [[w:en:MediaWiki:Common.js]]
*/
rewritePageH1 = function () {
try {
var realTitleBanner = document.getElementById( 'RealTitleBanner' );
if (realTitleBanner) {
if ( !document.getElementById( 'DisableRealTitle' ) ) {
var realTitle = document.getElementById( 'RealTitle' );
var h1 = document.getElementsByTagName( 'h1' )[0];
if ( realTitle && h1 ) {
h1.innerHTML = realTitle.innerHTML;
realTitleBanner.style.display = 'none';
}
}
}
} catch (e) {
mw.log( 'Algo deu errado ao tentar reescrever o título da página.' );
}
};
$( rewritePageH1 );
/**
* Transforma páginas comuns em páginas de discussão, para permitir coloração baseada na indentação
* @source: [[:fr:w:MediaWiki:Common.js]]
* @author: [[:fr:User:Aoineko]]
*/
$(function() {
if ( $('#PaginaDeDiscussao').length ) {
$(document.body).removeClass('ns-subject').addClass('ns-talk');
}
});