create local_settings, pass TTL_CHOICES around to be able to pick TTL when creating record.
This commit is contained in:
parent
a3f0a643a1
commit
42db5cedee
|
@ -6,14 +6,7 @@ from django.core.exceptions import ValidationError
|
||||||
|
|
||||||
# App Imports
|
# App Imports
|
||||||
from models import Key
|
from models import Key
|
||||||
|
import local_settings
|
||||||
TTL_CHOICES = ((300, "5 minutes"),
|
|
||||||
(1800, "30 minutes"),
|
|
||||||
(3600, "1 hour"),
|
|
||||||
(43200, "12 hours"),
|
|
||||||
(86400, "1 day"))
|
|
||||||
|
|
||||||
RECORD_TYPE_CHOICES = (("A", "A"), ("AAAA", "AAAA"), ("CNAME", "CNAME"))
|
|
||||||
|
|
||||||
### Custom Form Fields
|
### Custom Form Fields
|
||||||
|
|
||||||
|
@ -37,7 +30,7 @@ class FormAddRecord(forms.Form):
|
||||||
record_type = forms.CharField(max_length=10)
|
record_type = forms.CharField(max_length=10)
|
||||||
zone_name = forms.CharField(max_length=100)
|
zone_name = forms.CharField(max_length=100)
|
||||||
record_data = forms.GenericIPAddressField()
|
record_data = forms.GenericIPAddressField()
|
||||||
ttl = forms.IntegerField(min_value=1)
|
ttl = forms.ChoiceField(choices=local_settings.TTL_CHOICES)
|
||||||
create_reverse = forms.BooleanField(required=False)
|
create_reverse = forms.BooleanField(required=False)
|
||||||
key_name = forms.ModelChoiceField(queryset=Key.objects.all(), required=False)
|
key_name = forms.ModelChoiceField(queryset=Key.objects.all(), required=False)
|
||||||
|
|
||||||
|
@ -48,7 +41,7 @@ class FormAddCnameRecord(forms.Form):
|
||||||
originating_record = forms.CharField(max_length=100)
|
originating_record = forms.CharField(max_length=100)
|
||||||
cname = forms.RegexField(max_length=100, regex="^[a-zA-Z0-9-_]+$")
|
cname = forms.RegexField(max_length=100, regex="^[a-zA-Z0-9-_]+$")
|
||||||
zone_name = forms.CharField(max_length=256)
|
zone_name = forms.CharField(max_length=256)
|
||||||
ttl = forms.ChoiceField(choices=TTL_CHOICES)
|
ttl = forms.ChoiceField(choices=local_settings.TTL_CHOICES)
|
||||||
key_name = forms.ModelChoiceField(queryset=Key.objects.all(), required=False)
|
key_name = forms.ModelChoiceField(queryset=Key.objects.all(), required=False)
|
||||||
|
|
||||||
class FormDeleteRecord(forms.Form):
|
class FormDeleteRecord(forms.Form):
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
### Local settings to be shared across modules.
|
||||||
|
|
||||||
|
TTL_CHOICES = ((300, "5 minutes"),
|
||||||
|
(1800, "30 minutes"),
|
||||||
|
(3600, "1 hour"),
|
||||||
|
(43200, "12 hours"),
|
||||||
|
(86400, "1 day"))
|
||||||
|
|
||||||
|
RECORD_TYPE_CHOICES = (("A", "A"),
|
||||||
|
("AAAA", "AAAA"),
|
||||||
|
("CNAME", "CNAME"))
|
|
@ -42,7 +42,11 @@ Add CNAME record for {{ originating_record }}
|
||||||
<label class="control-label">TTL: </label>
|
<label class="control-label">TTL: </label>
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<select name="ttl">
|
<select name="ttl">
|
||||||
<option value="86400">86400 (1 day)</option>
|
{% for ttl, description in ttl_choices %}
|
||||||
|
<option value="{{ttl}}">
|
||||||
|
{{ttl}} ({{description}})
|
||||||
|
</option>
|
||||||
|
{% endfor %}
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -60,7 +60,11 @@ Add record in {{ zone_name }}
|
||||||
<label class="control-label">TTL: </label>
|
<label class="control-label">TTL: </label>
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<select name="ttl">
|
<select name="ttl">
|
||||||
<option value="86400">86400 (1 day)</option>
|
{% for ttl, description in ttl_choices %}
|
||||||
|
<option value="{{ttl}}">
|
||||||
|
{{ttl}} ({{description}})
|
||||||
|
</option>
|
||||||
|
{% endfor %}
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -5,6 +5,7 @@ from django.shortcuts import redirect, render
|
||||||
|
|
||||||
# App Imports
|
# App Imports
|
||||||
from binder import exceptions, forms, helpers, models
|
from binder import exceptions, forms, helpers, models
|
||||||
|
import local_settings
|
||||||
|
|
||||||
def home_index(request):
|
def home_index(request):
|
||||||
""" List the main index page for Binder. """
|
""" List the main index page for Binder. """
|
||||||
|
@ -63,7 +64,9 @@ def view_add_record(request, dns_server, zone_name):
|
||||||
return render(request, "bcommon/add_record_form.htm",
|
return render(request, "bcommon/add_record_form.htm",
|
||||||
{ "dns_server" : dns_server,
|
{ "dns_server" : dns_server,
|
||||||
"zone_name" : zone_name,
|
"zone_name" : zone_name,
|
||||||
"tsig_keys" : models.Key.objects.all() })
|
"tsig_keys" : models.Key.objects.all(),
|
||||||
|
"ttl_choices" : local_settings.TTL_CHOICES,
|
||||||
|
})
|
||||||
|
|
||||||
def view_add_record_result(request):
|
def view_add_record_result(request):
|
||||||
""" Process the input given to add a DNS record. """
|
""" Process the input given to add a DNS record. """
|
||||||
|
@ -104,6 +107,7 @@ def view_add_cname_record(request, dns_server, zone_name, record_name):
|
||||||
{ "dns_server" : dns_server,
|
{ "dns_server" : dns_server,
|
||||||
"originating_record" : "%s.%s" % (record_name, zone_name),
|
"originating_record" : "%s.%s" % (record_name, zone_name),
|
||||||
"zone_name" : zone_name,
|
"zone_name" : zone_name,
|
||||||
|
"ttl_choices" : local_settings.TTL_CHOICES,
|
||||||
"tsig_keys" : models.Key.objects.all() })
|
"tsig_keys" : models.Key.objects.all() })
|
||||||
|
|
||||||
def view_add_cname_result(request):
|
def view_add_cname_result(request):
|
||||||
|
|
Loading…
Reference in New Issue