<!DOCTYPE html>
<html lang="pt-br">
<head>
	<script type="text/JavaScript" {{#main.NonceToken}}nonce="{{main.NonceToken}}"{{/main.NonceToken}}>
		<!--
			function AutoRefresh( t ) {
			setTimeout("location.reload(true);", t);
			}
		//-->
	</script>
	<style>
		table {
			font-family: arial, sans-serif;
			border-collapse: collapse;
			width: 100%;
		}

		td, th {
			border: 1px solid #dddddd;
			text-align: left;
			padding: 8px;
		}

		tr:nth-child(even) {
			background-color: #dddddd;
		}
	</style>

	{{#Scope.Tempo}}
	<script {{#main.NonceToken}}nonce="{{main.NonceToken}}"{{/main.NonceToken}}>
		window.addEventListener('load', function() { AutoRefresh({{{Scope.Tempo}}}) });
	</script>
	{{/Scope.Tempo}}
	{{>GoogleTag}}
</head>
<body>
<h1>Informações do servidor</h1>

{{^Main.administradorcloud}}<a href="Inicio">Login</a>{{/Main.administradorcloud}}
{{#Main.administradorcloud}}<a href="LogOut">Sair</a><br><a id="restart" href="reiniciar">Reiniciar</a>{{/Main.administradorcloud}}<br><a href="Estatisticas">Estatísticas</a><br><a href="Processos">Processos</a><br><a href="Sessoes">Sessões</a><br>
{{#Scope.ServerInfo}}
<p><b>Versão:</b> {{Versao}} <b>Tempo Ativo:</b> {{TempoAtivo}} <b>Build:</b> {{BuildInfo}} <b>Administrador:</b> {{Administrador}}</p>
<h2 style="color:{{MemoriaCor}}">Processador em Uso: {{ProcessadorEmUso}}%</h2>
<h2 style="color:{{MemoriaCor}}">Memória em Uso: {{MemoriaEmUso}}% Limite: {{MemoriaLimite}}%</h2>
{{/Scope.ServerInfo}}

<p> Tempo atualizacao da página em milisegundos: <input type="text" id="tempo" value="{{Scope.Tempo}}"></p>
<h2>Sessões</h2>
<table>
<tr>
	<td>Ativas a menos de 5 minutos:</td><td>{{Scope.Sessoes.Ativos5}}</td>
</tr>
<tr>
	<td>Ativas a menos de 10 minutos:</td><td> {{Scope.Sessoes.Ativos10}}</td>
</tr>
<tr>
	<td>Ativas a mais de 10 minutos:</td><td> {{Scope.Sessoes.AtivosMais10}}</td>
</tr>
<tr>
	<td>Expiradas:</td><td> {{Scope.Sessoes.Expirados}}</td>
</tr>
</table>

<h2>Requisições Ativas</h2>
<table>
<tr>
	<th>Início</th>
	<th>Método</th>
	<th>Usuário</th>
	<th>Base</th>
	<th>Client</th>
	<th>Parâmetros</th>
	<th>Body</th>
</tr>
{{#Scope.RequestsAtivas}}
<tr>
  <td>{{Inicio}}</td>
  <td>{{Methodo}}</td>
  <td>{{Usuario}}</td>
  <td>{{Base}}</td>
  <td>{{Client}}</td>
  <td>{{Params}}</td>
  <td>{{Body}}</td>
</tr>
{{/Scope.RequestsAtivas}}
</table>

{{#Scope.Erros}}
<h2>Requests</h2>
<table>
<tr>
	<th>Projeto</th>
	<th>Total Requests</th>
	<th>Erros</th>
	<th>Percentual Erro</th>
</tr>
<tr>
	<td>Cloud/Geral</td>
	<td>{{Scope.Erros.TotalRequests}}</td>
	<td>{{Scope.Erros.TotalErros}}</td>
	<td>{{Scope.Erros.ErrorRate}}</td>
</tr>
<tr>
	<td>API</td>
	<td>{{Scope.Erros.TotalRequestsAPI}}</td>
	<td>{{Scope.Erros.TotalErrosAPI}}</td>
	<td>{{Scope.Erros.ErrorRateAPI}}</td>
</tr>
</table>
{{/Scope.Erros}}

<h2>Listagem dos últimos erros</h2>
<table>
<tr>
    <th>Data/Hora</th>
	<th>Método</th>
	<th>Usuário</th>
	<th>Base</th>
	<th>Client</th>
	<th>Params</th>
	<th>Erro</th>
</tr>
{{#Scope.Erros.Erros}}
<tr>
  <td>{{DataHora}}</td>
  <td>{{Methodo}}</td>
  <td>{{Usuario}}</td>
  <td>{{Base}}</td>
  <td>{{Client}}</td>
  <td>{{Params}}</td>
  <td>{{Erro}}</td>
</tr>
{{/Scope.Erros.Erros}}
</table>

<script {{#main.NonceToken}}nonce="{{main.NonceToken}}"{{/main.NonceToken}}>
	const restartEl = document.getElementById('restart');
	const tempoEl = document.getElementById('tempo');

	if (restartEl) {
		restartEl.addEventListener('click', function() { return confirm('Deseja realmente reiniciar o servidor?') });
	}

	if (tempoEl){
		tempoEl.addEventListener('change',  function() { window.location.assign('info?tempo='+ document.getElementById('tempo').value) });
	}
</script>
</body>
</html>
