MediaWiki:Common.js: mudanças entre as edições
Ir para navegação
Ir para pesquisar
Sem resumo de edição |
Sem resumo de edição |
||
| (Uma revisão intermediária pelo mesmo usuário não está sendo mostrada) | |||
| Linha 79: | Linha 79: | ||
window.location.href = url; | window.location.href = url; | ||
} | } | ||
document.addEventListener("DOMContentLoaded", function () { | |||
var btn = document.getElementById("btnCriarCliente"); | |||
if (!btn) return; | |||
btn.addEventListener("click", function () { | |||
var nome = prompt("Digite o nome do cliente:"); | |||
if (!nome) return; | |||
nome = nome.trim().replace(/\s+/g, "_"); | |||
var base = mw.config.get("wgScriptPath") + "/index.php/"; | |||
var url = base + "Cliente/" + nome + "?action=edit&preload=Cliente:MODELO"; | |||
window.location.href = url; | |||
}); | |||
}); | |||
document.addEventListener("DOMContentLoaded", function () { | |||
function atualizarStatusServidor(nome) { | |||
fetch('/noc/status.php?host=' + nome.toLowerCase()) | |||
.then(response => response.json()) | |||
.then(data => { | |||
var el = document.getElementById('status-' + nome); | |||
if (!el) return; | |||
if (data.status === "online") { | |||
el.innerHTML = "🟢 Operacional<br><small>Uptime: " | |||
+ formatUptime(data.uptime) | |||
+ "</small><br><small>Último check: " | |||
+ data.lastcheck + "</small>"; | |||
} else if (data.status === "offline") { | |||
el.innerHTML = "🔴 Offline<br><small>Último check: " | |||
+ data.lastcheck + "</small>"; | |||
} else { | |||
el.innerHTML = "🟡 Indefinido"; | |||
} | |||
}); | |||
} | |||
function formatUptime(seconds) { | |||
if (!seconds) return '-'; | |||
const days = Math.floor(seconds / 86400); | |||
const hours = Math.floor((seconds % 86400) / 3600); | |||
const minutes = Math.floor((seconds % 3600) / 60); | |||
return `${days}d ${hours}h ${minutes}m`; | |||
} | |||
// Detecta automaticamente nome do servidor pela URL | |||
var pageName = mw.config.get("wgTitle"); | |||
if (pageName.startsWith("WEB") || pageName.startsWith("NS")) { | |||
atualizarStatusServidor(pageName); | |||
} | |||
}); | |||
Edição atual tal como às 19h44min de 20 de fevereiro de 2026
$(function () {
function formatUptime(seconds) {
if (!seconds) return '-';
var days = Math.floor(seconds / 86400);
var hours = Math.floor((seconds % 86400) / 3600);
var minutes = Math.floor((seconds % 3600) / 60);
return days + "d " + hours + "h " + minutes + "m";
}
function atualizarStatus(host, elementId) {
$.getJSON('/noc/status.php?host=' + host)
.done(function(data){
var el = $('#' + elementId);
if (!el.length) return;
if (data.status === "online") {
el.html(
'<span class="status-dot status-green"></span> Operacional<br>' +
'<small>Uptime: ' + formatUptime(data.uptime) + '</small><br>' +
'<small>Último check: ' + data.lastcheck + '</small>'
);
el.removeClass("blink");
} else if (data.status === "offline") {
el.html(
'<span class="status-dot status-red"></span> Offline<br>' +
'<small>Último check: ' + (data.lastcheck || '-') + '</small>'
);
el.addClass("blink");
} else {
el.html('<span class="status-dot status-yellow"></span> Indefinido');
}
})
.fail(function(){
$('#' + elementId).html("🟡 Erro");
});
}
function atualizarTodos() {
atualizarStatus("web01", "web01-status");
atualizarStatus("web02", "web02-status");
atualizarStatus("web03", "web03-status");
atualizarStatus("web04", "web04-status");
atualizarStatus("ns1-cloud", "ns1-status");
atualizarStatus("ns2-cloud", "ns2-status");
}
atualizarTodos();
setInterval(atualizarTodos, 30000);
});
function criarNovoCliente() {
var nome = prompt("Digite o nome do cliente:");
if (!nome) return;
nome = nome.trim().replace(/\s+/g, "_");
var url = mw.util.getUrl("Cliente/" + nome, {
action: "edit",
preload: "Cliente:MODELO"
});
window.location.href = url;
}
document.addEventListener("DOMContentLoaded", function () {
var btn = document.getElementById("btnCriarCliente");
if (!btn) return;
btn.addEventListener("click", function () {
var nome = prompt("Digite o nome do cliente:");
if (!nome) return;
nome = nome.trim().replace(/\s+/g, "_");
var base = mw.config.get("wgScriptPath") + "/index.php/";
var url = base + "Cliente/" + nome + "?action=edit&preload=Cliente:MODELO";
window.location.href = url;
});
});
document.addEventListener("DOMContentLoaded", function () {
function atualizarStatusServidor(nome) {
fetch('/noc/status.php?host=' + nome.toLowerCase())
.then(response => response.json())
.then(data => {
var el = document.getElementById('status-' + nome);
if (!el) return;
if (data.status === "online") {
el.innerHTML = "🟢 Operacional<br><small>Uptime: "
+ formatUptime(data.uptime)
+ "</small><br><small>Último check: "
+ data.lastcheck + "</small>";
} else if (data.status === "offline") {
el.innerHTML = "🔴 Offline<br><small>Último check: "
+ data.lastcheck + "</small>";
} else {
el.innerHTML = "🟡 Indefinido";
}
});
}
function formatUptime(seconds) {
if (!seconds) return '-';
const days = Math.floor(seconds / 86400);
const hours = Math.floor((seconds % 86400) / 3600);
const minutes = Math.floor((seconds % 3600) / 60);
return `${days}d ${hours}h ${minutes}m`;
}
// Detecta automaticamente nome do servidor pela URL
var pageName = mw.config.get("wgTitle");
if (pageName.startsWith("WEB") || pageName.startsWith("NS")) {
atualizarStatusServidor(pageName);
}
});