42 lines
1.6 KiB
HTML
42 lines
1.6 KiB
HTML
{% extends "base.html" %}
|
|
|
|
{% block title %}Setup | IP Subnet Allocator{% endblock %}
|
|
|
|
{% block content %}
|
|
<section class="box">
|
|
<div class="box-title">Initial setup</div>
|
|
|
|
<p>Create the first IP pool. You can add more pools later from the <a href="/pools">Manage pools</a> page.</p>
|
|
|
|
{% if error != "" %}
|
|
<div class="message error">
|
|
<p>{{ error }}</p>
|
|
</div>
|
|
{% endif %}
|
|
|
|
<form method="post" action="/setup">
|
|
<input type="hidden" name="csrf_token" value="{{ csrf_token }}">
|
|
|
|
<label for="slug">Pool slug *</label>
|
|
<input type="text" id="slug" name="slug" required maxlength="50" pattern="[a-z0-9-]+" placeholder="e.g. vlan-customers">
|
|
<p class="small">Lowercase letters, numbers and hyphens only. Used in URLs.</p>
|
|
|
|
<label for="name">Pool name *</label>
|
|
<input type="text" id="name" name="name" required minlength="2" maxlength="100" placeholder="e.g. VLAN / customer subnets">
|
|
|
|
<label for="cidr">Parent prefix (CIDR) *</label>
|
|
<input type="text" id="cidr" name="cidr" required placeholder="e.g. 10.91.0.0/16">
|
|
|
|
<label for="kind">Type *</label>
|
|
<input type="text" id="kind" name="kind" required maxlength="50" placeholder="e.g. VLAN">
|
|
|
|
<label for="allowed_prefixes">Allowed prefix lengths *</label>
|
|
<input type="text" id="allowed_prefixes" name="allowed_prefixes" required value="20,21,22,23,24,25,26,27,28,29,30" placeholder="e.g. 24,25,26">
|
|
<p class="small">Comma-separated list of prefix lengths. Each must be equal to or larger than the pool prefix.</p>
|
|
|
|
<div style="margin-top: 1rem;">
|
|
<button type="submit" class="btn">Create pool</button>
|
|
</div>
|
|
</form>
|
|
</section>
|
|
{% endblock %}
|