MediaWiki:Common.js
Aparência
Nota: Após publicar, você pode ter que limpar o "cache" do seu navegador para ver as alterações.
- Firefox / Safari: Pressione Shift enquanto clica Recarregar, ou pressione Ctrl-F5 ou Ctrl-R (⌘-R no Mac)
- Google Chrome: Pressione Ctrl-Shift-R (⌘-Shift-R no Mac)
- Edge: Pressione Ctrl enquanto clica Recarregar, ou pressione Ctrl-F5.
- Opera: Pressione Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */
/**
* GUIA GALÁCTICO — Estatísticas da Sporepédia (Spore-o-Meter)
* Cole em MediaWiki:Common.js
*
* Busca os dados via proxy CORS e preenche a faixa .gg-stats
* da página inicial. Se a API falhar, a faixa é escondida
* (classe .gg-stats--erro, tratada no CSS) — a página segue
* funcionando normalmente sem ela.
*
* Resposta esperada da API:
* { currentAssetCount, totalAssetCount, dayAssetCount,
* totalUsers, dayUsers }
*/
(function () {
'use strict';
var faixa = document.querySelector('.gg-stats');
if (!faixa) {
return; // não estamos na página inicial
}
var API =
'https://cross.esporo.net/corsproxy/?apiurl=' +
encodeURIComponent('https://spore-o-meter.sporecommunity.com');
function formatar(n) {
return Number(n).toLocaleString('pt-BR');
}
function preencher(classe, valor) {
document.querySelectorAll('.' + classe).forEach(function (el) {
el.textContent = formatar(valor);
});
}
fetch(API)
.then(function (r) {
if (!r.ok) {
throw new Error('HTTP ' + r.status);
}
return r.json();
})
.then(function (dados) {
preencher('gg-stat-acervo', dados.currentAssetCount);
preencher('gg-stat-total', dados.totalAssetCount);
preencher('gg-stat-hoje', dados.dayAssetCount);
preencher('gg-stat-criadores', dados.totalUsers);
preencher('gg-stat-criadores-hoje', dados.dayUsers);
})
.catch(function (erro) {
faixa.classList.add('gg-stats--erro');
if (window.console && console.warn) {
console.warn('[Guia Galáctico] Spore-o-Meter indisponível:', erro);
}
});
})();