server/onyx/tpl/bootstrap/admin/home.tpl

163 lines
6.1 KiB
Smarty

{extends file="admin/layout.tpl"}
{block name=content}
<div class="row">
<div class="col-md-6">
<div class="panel panel-primary">
<div class="panel-heading">
<h3 class="panel-title">Certificat racine</h3>
</div>
<div class="panel-body">
{if isset($cert_CA)}
<ul>
{foreach from=$cert_CA.subject key=k item=crt}
<li><strong>[{$k}] :</strong> {$crt}</li>
{/foreach}
</ul>
<a href="/{$SALT_ADMIN}/certificate/deleteca" class="btn btn-danger"
onclick="return confirm('Êtes-vous sûr de vouloir supprimer ce certificat ?')">Supprimer</a>
{elseif empty($cert_writable)}
<div class="alert alert-danger"><span class="glyphicon glyphicon-warning-sign"></span> Répertoire non accessible en écriture.</div>
<a href="/{$SALT_ADMIN}/certificate/newca" class="btn btn-primary" disabled="disabled">Nouveau</a>
{else}
Pas de certificat
<a href="/{$SALT_ADMIN}/certificate/newca" class="btn btn-primary">Nouveau</a>
{/if}
</div>
</div>
</div>
<div class="col-md-6">
<div class="panel panel-info">
<div class="panel-heading">
<h3 class="panel-title">Certificat serveur</h3>
</div>
<div class="panel-body">
{if isset($cert_srv)}
<ul>
{foreach from=$cert_srv.subject key=k item=crt}
<li><strong>[{$k}] :</strong> {$crt}</li>
{/foreach}
</ul>
<a href="/{$SALT_ADMIN}/certificate/revokesrv" class="btn btn-danger"
onclick="return confirm('Êtes-vous sûr de vouloir supprimer ce certificat ?')">Supprimer</a>
{elseif empty($cert_writable)}
<div class="alert alert-danger"><span class="glyphicon glyphicon-warning-sign"></span> Répertoire non accessible en écriture.</div>
<a href="/{$SALT_ADMIN}/certificate/newsrv" class="btn btn-primary" disabled="disabled">Nouveau</a>
{else}
Pas de certificat
<a href="/{$SALT_ADMIN}/certificate/newsrv" class="btn btn-primary">Nouveau</a>
{/if}
</div>
</div>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Chrono <span class="label label-{if isset($END)}success">Lanc&eacute;{else}danger">Arr&ecirc;t&eacute;{/if}</span></h3>
</div>
<div class="panel-body">
<form method="post" action="/{$SALT_ADMIN}/chrono/start" role="form" class="form-inline">
<div class="form-group">
<label class="sr-only" for="time">Temps :</label>
<div class="input-group">
<input type="input" class="form-control" id="time" name="time" value="{$DEF_TIME|default:240}">
<span class="input-group-addon">minutes</span>
</div>
</div>
<div class="form-group">
<button type="submit" class="btn btn-success">Start</button>
<a href="/{$SALT_ADMIN}/chrono/init" class="btn btn-danger">R&eacute;initialiser</a>
</div>
</form>
</div>
</div>
<div class="panel panel-success">
<div class="panel-heading">
<h3 class="panel-title">Génération</h3>
</div>
<div class="panel-body container">
<div class="col-xs-4">
<table class="table table-hover table-striped">
<thead>
<tr>
<th>File d'attente</th>
</tr>
</thead>
<tbody id="genst">
<tr>
<td>Pending...</td>
</tr>
</tbody>
</table>
</div>
<pre class="col-xs-4" id="logs"></pre>
<div class="col-xs-4">
<a href="/{$SALT_ADMIN}/generation/full" onclick="call_gen('full'); return false" class="btn btn-default">Complet</a>
<a href="/{$SALT_ADMIN}/generation/home" onclick="call_gen('home'); return false" class="btn btn-default">Accueil</a>
<a href="/{$SALT_ADMIN}/generation/errors" onclick="call_gen('errors'); return false" class="btn btn-danger">Pages d'erreurs</a><br><br>
<a href="/{$SALT_ADMIN}/generation/sync" onclick="call_gen('sync'); return false" class="btn btn-info">Synchro légère</a>
<a href="/{$SALT_ADMIN}/generation/clear" onclick="call_gen('clear'); return false" class="btn btn-warning">Vider la file d'attente</a><br><br>
<a href="/{$SALT_ADMIN}/generation/freeze" onclick="call_gen('freeze'); return false" class="btn btn-danger">Freeze</a>
<a href="/{$SALT_ADMIN}/generation/unfreeze" onclick="call_gen('unfreeze'); return false" class="btn btn-success">Unfreeze</a><br><br>
<form method="post" action="/{$SALT_ADMIN}/generation/team" onsubmit="call_gen('team'); return false" role="form" class="form-inline">
<div class="form-group">
<input type="input" class="form-control" id="regenteam" name="team" placeholder="Team to regen">
<button type="submit" class="btn btn-primary">Regénérer</button>
</div>
</form><br>
<form method="post" action="/{$SALT_ADMIN}/generation/custom" onsubmit="call_gen('custom'); return false" role="form" class="form-inline">
<div class="form-group">
<input type="input" class="form-control" id="cmds" name="cmds" placeholder="Custom commands, : separated">
<button type="submit" class="btn btn-warning">Envoyer</button>
</div>
</form>
</div>
</div>
</div>
{/block}
{block name=end2}
<script type="text/javascript">
function call_gen(which) {
if (which == "team") datas = { 'team': $('#regenteam').val() }
else if (which == "custom") datas = { 'cmds': $('#cmds').val() }
else datas = { }
$.ajax({
type: 'POST',
data: datas,
url: './generation/' + which,
success: function(data){
$('#logs').html($(data).find('logs').text());
},
error: function() {
$('#logs').html('Oops! an error occurs during command execution');
}
});
}
function refresh_state() {
$.ajax({
type: 'GET',
url: './generation',
success: function(data){
$('#genst').empty();
$(data).find('item').each(function(i){
if (i == 0 && $(this).text() == "empty!")
color = "warning";
else if (i == 0)
color = "success";
else
color = "";
$('#genst').append('<tr><td class="' + color + '">' + $(this).text() + '</td></tr>') })
},
error: function() {
$('#genst').html('<tr><td class="danger">Oops! an error occurs during status refresh</td></tr>');
}
});
};
setInterval(refresh_state, 1000);
</script>
{/block}