42 lines
1.1 KiB
PHP
42 lines
1.1 KiB
PHP
<?php require "../../common/html.php"; ?>
|
|
|
|
<form method="post">
|
|
<label for="zone">Zone</label>
|
|
<select required="" name="zone" id="zone">
|
|
<option value="" disabled="" selected="">-</option>
|
|
<?php
|
|
if (isset($_SESSION['username']))
|
|
foreach (nsListUserZones($_SESSION['username']) as $zone)
|
|
echo " <option value='" . $zone . "'>" . $zone . "</option>\n";
|
|
?>
|
|
</select>
|
|
<br>
|
|
<input value="Supprimer toutes les données liées à cette zone" type="submit">
|
|
</form>
|
|
|
|
<?php
|
|
|
|
switchToFormProcess();
|
|
|
|
nsCheckZonePossession($_POST['zone']);
|
|
|
|
// Remove from Knot configuration
|
|
exec(CONF['dns']['knotc_path'] . " conf-begin");
|
|
exec(CONF['dns']['knotc_path'] . " conf-unset 'zone[" . $_POST['zone'] . "]'");
|
|
exec(CONF['dns']['knotc_path'] . " conf-commit");
|
|
|
|
// Remove Knot zone file
|
|
if(unlink(CONF['ns']['knot_zones_path'] . "/" . $_POST['zone'] . "zone") !== true)
|
|
serverError("Failed to remove Knot zone file.");
|
|
|
|
// Remove Knot related data
|
|
exec(CONF['dns']['knotc_path'] . " zone-purge " . $_POST['zone']);
|
|
|
|
// Remove from database
|
|
query('delete', 'zones', [
|
|
'zone' => $_POST['zone'],
|
|
'username' => $_SESSION['username'],
|
|
]);
|
|
|
|
success("Zone effacée.");
|