This repository has been archived on 2024-03-03. You can view files and clone it, but cannot push or open issues or pull requests.
adlin/token-validator/htdocs/views/domains.html

233 lines
7.5 KiB
HTML

<h2>
Noms de domaine
</h2>
<h3>Association simple</h3>
<table class="table table-striped table-hover">
<thead>
<tr>
<th>Domaine</th>
<th>TTL</th>
<th>Type</th>
<th>Entrée</th>
</tr>
</thead>
<tbody style="font-family: monospace">
<tr ng-repeat="ad in adomains">
<td>{{ ad.domain }}</td>
<td>{{ ad.ttl }}</td>
<td>{{ ad.rr }}</td>
<td><span ng-repeat="val in ad.values">{{ val }} </span></td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="4">
<button class="btn btn-primary" ng-click="newAssociationD()">
<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true" ng-show="pleaseWaitNewAssociation"></span>
Demander un nouveau nom de domaine
</button>
</td>
</tr>
</tfoot>
</table>
<hr class="my-4">
<h3>Délégation</h3>
<ul class="nav nav-tabs" id="ddomainTabs" role="tablist">
<li class="nav-item">
<a class="nav-link active" data-toggle="tab" data-target="#NS" role="tab" aria-controls="ns" aria-selected="true">Serveurs de nom</a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" data-target="#GLUE" role="tab" aria-controls="glue" aria-selected="false">GLUE</a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" data-target="#DNSSEC" role="tab" aria-controls="dnssec" aria-selected="false">DNSSEC</a>
</li>
</ul>
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="NS" role="tabpanel" aria-labelledby="ns-tab">
<div ng-repeat="domain in ddomains">
<h4 class="text-muted">{{ domain }}</h4>
<table class="table table-striped table-hover" ng-controller="NSDomainsController">
<thead>
<tr>
<th>Serveur DNS</th>
<th>Joignable</th>
</tr>
</thead>
<tbody style="font-family: monospace" ng-if="domainNS">
<tr ng-repeat="rr in domainNS">
<td><span ng-repeat="val in rr.values">{{ val }} </span></td>
<td>
<span class="badge badge-pill badge-secondary">Not implemented yet</span>
</td>
<td>
<button class="btn btn-warning" ng-click="updateNS(domain, rr)">Modifier</button>
<button class="btn btn-danger" ng-click="deleteRR(domain, rr)">
<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true" ng-show="rr.pleaseWaitNSdel"></span>
Supprimer
</button>
</td>
</tr>
</tbody>
<tbody style="font-family: monospace" ng-if="!domainNS">
<tr>
<td colspan="4">Vous n'avez défini aucun serveur de noms pour l'instant</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="3">
<button class="btn btn-primary" ng-click="addNS(domain)">Ajouter un nouveau serveur de noms</button>
</td>
</tr>
</tfoot>
</table>
</div>
</div>
<div class="tab-pane fade" id="GLUE" role="tabpanel" aria-labelledby="glue-tab">
<div ng-repeat="domain in ddomains">
<h4 class="text-muted">{{ domain }}</h4>
<table class="table table-striped table-hover" ng-controller="GLUEDomainsController">
<thead>
<tr>
<th>Domaine DNS</th>
<th>IP</th>
<th>Joignable</th>
</tr>
</thead>
<tbody style="font-family: monospace" ng-if="domainGLUE">
<tr ng-repeat="rr in domainGLUE">
<td>{{ domain }}</td>
<td><span ng-repeat="val in rr.values">{{ val }} </span></td>
<td>
<span class="badge badge-pill badge-secondary">Not implemented yet</span>
</td>
<td>
<button class="btn btn-warning" ng-click="updateGLUE(domain, rr)">Modifier</button>
<button class="btn btn-danger" ng-click="deleteRR(domain, rr)">
<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true" ng-show="rr.pleaseWaitAAAAdel"></span>
Supprimer
</button>
</td>
</tr>
</tbody>
<tbody style="font-family: monospace" ng-if="!domainGLUE">
<tr>
<td colspan="4">Vous n'avez défini aucun enregistrement glue pour l'instant</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="4">
<button class="btn btn-primary" ng-click="addGLUE(domain)">Ajouter un enregistrement glue</button>
</td>
</tr>
</tfoot>
</table>
</div>
</div>
<div class="tab-pane fade" id="DNSSEC" role="tabpanel" aria-labelledby="dnssec-tab">
<div ng-repeat="domain in ddomains">
<h4 class="text-muted">{{ domain }}</h4>
<table class="table table-striped table-hover" ng-controller="DSDomainsController">
<thead>
<tr>
<th>Key Tag</th>
<th>Algorithme de la clef</th>
<th>Algorithme de hash</th>
<th>Hash (hex)</th>
</tr>
</thead>
<tbody style="font-family: monospace" ng-if="domainDS">
<tr ng-repeat="rr in domainDS">
<td ng-repeat="val in rr.values">{{ val }}</td>
<td>
<button class="btn btn-warning" ng-click="updateDS(domain, rr)">Modifier</button>
<button class="btn btn-danger" ng-click="deleteRR(domain, rr)">
<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true" ng-show="rr.pleaseWaitDSdel"></span>
Supprimer
</button>
</td>
</tr>
</tbody>
<tbody style="font-family: monospace" ng-if="!domainDS">
<tr>
<td colspan="4">Vous n'avez défini aucun enregistrement DS pour l'instant</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="5">
<button class="btn btn-primary" ng-click="addDS(domain)">Ajouter un enregistrement DS</button>
</td>
</tr>
</tfoot>
</table>
</div>
</div>
</div>
<div class="modal" id="NSModal" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" ng-if="nsrr.rr == 'NS'">Modifier la liste des serveurs de noms de la zone</h5>
<h5 class="modal-title" ng-if="nsrr.rr == 'AAAA'">Modifier les enregistrements GLUE du domaine</h5>
<h5 class="modal-title" ng-if="nsrr.rr == 'DS'">Modifier les clefs DNSSEC de la zone parente</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<form class="ml-2 mr-2">
<div class="form-group row">
<label class="col-sm-2 col-form-label">Domaine</label>
<div class="col-sm-10">
<input class="form-control-plaintext" ng-model="nsrr.domain" ng-if="nsrr.rr == 'NS' || nsrr.rr == 'DS'" readonly>
<input class="form-control" ng-model="nsrr.domain" ng-if="nsrr.rr == 'AAAA'">
</div>
</div>
<div class="form-group row">
<label for="ttl" class="col-sm-2 col-form-label">TTL</label>
<div class="col-sm-10">
<input class="form-control" id="ttl" ng-model="nsrr.ttl">
</div>
</div>
<div class="form-group row">
<label class="col-sm-2 col-form-label">Type</label>
<div class="col-sm-10">
<input class="form-control-plaintext" ng-model="nsrr.rr" readonly>
</div>
</div>
<div class="form-group row" ng-repeat="v in nsrr.values track by $index">
<label for="value{{$index}}" class="col-sm-2 col-form-label" ng-if="nsrr.labels">{{ nsrr.labels[$index] }}</label>
<label for="value{{$index}}" class="col-sm-2 col-form-label" ng-if="!nsrr.labels">Valeur</label>
<div class="col-sm-10">
<input class="form-control" id="value{{$index}}" ng-model="nsrr.values[$index]">
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Annuler</button>
<button type="button" class="btn btn-primary" ng-click="saveNSRR(nsrr)">Enregistrer</button>
</div>
</div>
</div>
</div>