netbox-plugin-dns 0.21.4__py3-none-any.whl → 1.4.7__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- netbox_dns/__init__.py +106 -41
- netbox_dns/api/field_serializers.py +25 -0
- netbox_dns/api/nested_serializers.py +95 -52
- netbox_dns/api/serializers.py +14 -296
- netbox_dns/api/serializers_/__init__.py +0 -0
- netbox_dns/api/serializers_/dnssec_key_template.py +69 -0
- netbox_dns/api/serializers_/dnssec_policy.py +165 -0
- netbox_dns/api/serializers_/nameserver.py +56 -0
- netbox_dns/api/serializers_/prefix.py +18 -0
- netbox_dns/api/serializers_/record.py +105 -0
- netbox_dns/api/serializers_/record_template.py +71 -0
- netbox_dns/api/serializers_/registrar.py +45 -0
- netbox_dns/api/serializers_/registration_contact.py +50 -0
- netbox_dns/api/serializers_/view.py +81 -0
- netbox_dns/api/serializers_/zone.py +247 -0
- netbox_dns/api/serializers_/zone_template.py +157 -0
- netbox_dns/api/urls.py +13 -2
- netbox_dns/api/views.py +96 -58
- netbox_dns/choices/__init__.py +4 -0
- netbox_dns/choices/dnssec_key_template.py +67 -0
- netbox_dns/choices/dnssec_policy.py +40 -0
- netbox_dns/choices/record.py +104 -0
- netbox_dns/choices/utilities.py +4 -0
- netbox_dns/choices/zone.py +119 -0
- netbox_dns/fields/__init__.py +4 -0
- netbox_dns/fields/address.py +22 -16
- netbox_dns/fields/choice_array.py +33 -0
- netbox_dns/fields/ipam.py +15 -0
- netbox_dns/fields/network.py +42 -18
- netbox_dns/fields/rfc2317.py +97 -0
- netbox_dns/fields/timeperiod.py +33 -0
- netbox_dns/filters.py +7 -0
- netbox_dns/filtersets/__init__.py +12 -0
- netbox_dns/filtersets/dnssec_key_template.py +57 -0
- netbox_dns/filtersets/dnssec_policy.py +101 -0
- netbox_dns/filtersets/nameserver.py +46 -0
- netbox_dns/filtersets/record.py +135 -0
- netbox_dns/filtersets/record_template.py +59 -0
- netbox_dns/{filters → filtersets}/registrar.py +8 -1
- netbox_dns/{filters/contact.py → filtersets/registration_contact.py} +9 -3
- netbox_dns/filtersets/view.py +45 -0
- netbox_dns/filtersets/zone.py +254 -0
- netbox_dns/filtersets/zone_template.py +165 -0
- netbox_dns/forms/__init__.py +5 -1
- netbox_dns/forms/dnssec_key_template.py +250 -0
- netbox_dns/forms/dnssec_policy.py +654 -0
- netbox_dns/forms/nameserver.py +121 -27
- netbox_dns/forms/record.py +215 -104
- netbox_dns/forms/record_template.py +285 -0
- netbox_dns/forms/registrar.py +108 -31
- netbox_dns/forms/registration_contact.py +282 -0
- netbox_dns/forms/view.py +331 -20
- netbox_dns/forms/zone.py +769 -373
- netbox_dns/forms/zone_template.py +463 -0
- netbox_dns/graphql/__init__.py +25 -22
- netbox_dns/graphql/enums.py +41 -0
- netbox_dns/graphql/filter_lookups.py +13 -0
- netbox_dns/graphql/filters/__init__.py +12 -0
- netbox_dns/graphql/filters/dnssec_key_template.py +63 -0
- netbox_dns/graphql/filters/dnssec_policy.py +124 -0
- netbox_dns/graphql/filters/nameserver.py +32 -0
- netbox_dns/graphql/filters/record.py +89 -0
- netbox_dns/graphql/filters/record_template.py +55 -0
- netbox_dns/graphql/filters/registrar.py +30 -0
- netbox_dns/graphql/filters/registration_contact.py +27 -0
- netbox_dns/graphql/filters/view.py +28 -0
- netbox_dns/graphql/filters/zone.py +147 -0
- netbox_dns/graphql/filters/zone_template.py +97 -0
- netbox_dns/graphql/schema.py +89 -7
- netbox_dns/graphql/types.py +355 -0
- netbox_dns/locale/de/LC_MESSAGES/django.mo +0 -0
- netbox_dns/locale/en/LC_MESSAGES/django.mo +0 -0
- netbox_dns/locale/fr/LC_MESSAGES/django.mo +0 -0
- netbox_dns/management/commands/cleanup_database.py +175 -156
- netbox_dns/management/commands/cleanup_rrset_ttl.py +64 -0
- netbox_dns/management/commands/rebuild_dnssync.py +23 -0
- netbox_dns/management/commands/setup_dnssync.py +140 -0
- netbox_dns/migrations/0001_squashed_netbox_dns_0_15.py +0 -27
- netbox_dns/migrations/0001_squashed_netbox_dns_0_22.py +557 -0
- netbox_dns/migrations/{0013_add_nameserver_zone_record_description.py → 0002_contact_description_registrar_description.py} +4 -9
- netbox_dns/migrations/0003_default_view.py +15 -0
- netbox_dns/migrations/0004_create_and_assign_default_view.py +26 -0
- netbox_dns/migrations/0005_alter_zone_view_not_null.py +18 -0
- netbox_dns/migrations/0006_templating.py +172 -0
- netbox_dns/migrations/0007_alter_ordering_options.py +25 -0
- netbox_dns/migrations/0008_view_prefixes.py +18 -0
- netbox_dns/migrations/0009_rename_contact_registrationcontact.py +36 -0
- netbox_dns/migrations/0010_view_ip_address_filter.py +18 -0
- netbox_dns/migrations/0011_rename_related_fields.py +63 -0
- netbox_dns/migrations/0012_natural_ordering.py +88 -0
- netbox_dns/migrations/0013_zonetemplate_soa_mname_zonetemplate_soa_rname.py +30 -0
- netbox_dns/migrations/0014_alter_unique_constraints_lowercase.py +42 -0
- netbox_dns/migrations/0015_dnssec.py +168 -0
- netbox_dns/migrations/{0015_add_record_status.py → 0016_dnssec_policy_status.py} +5 -4
- netbox_dns/migrations/0017_dnssec_policy_zone_zone_template.py +41 -0
- netbox_dns/migrations/0018_zone_domain_status_zone_expiration_date.py +23 -0
- netbox_dns/migrations/0019_dnssecpolicy_parental_agents.py +25 -0
- netbox_dns/migrations/0020_netbox_3_4.py +1 -1
- netbox_dns/migrations/0020_remove_dnssecpolicy_parental_agents_and_more.py +29 -0
- netbox_dns/migrations/0021_alter_record_ptr_record.py +25 -0
- netbox_dns/migrations/0021_record_ip_address.py +1 -1
- netbox_dns/migrations/0022_alter_record_ipam_ip_address.py +26 -0
- netbox_dns/migrations/0023_disable_ptr_false.py +27 -0
- netbox_dns/migrations/0024_zonetemplate_parental_agents.py +25 -0
- netbox_dns/migrations/0025_remove_zone_inline_signing_and_more.py +22 -0
- netbox_dns/migrations/0026_alter_dnssecpolicy_nsec3_opt_out.py +18 -0
- netbox_dns/migrations/0026_domain_registration.py +1 -1
- netbox_dns/migrations/0027_zone_comments.py +18 -0
- netbox_dns/migrations/0028_alter_zone_default_ttl_alter_zone_soa_minimum_and_more.py +54 -0
- netbox_dns/migrations/0028_rfc2317_fields.py +44 -0
- netbox_dns/migrations/0029_alter_registrationcontact_street.py +18 -0
- netbox_dns/migrations/0029_record_fqdn.py +30 -0
- netbox_dns/mixins/__init__.py +1 -0
- netbox_dns/mixins/object_modification.py +57 -0
- netbox_dns/models/__init__.py +5 -1
- netbox_dns/models/dnssec_key_template.py +114 -0
- netbox_dns/models/dnssec_policy.py +203 -0
- netbox_dns/models/nameserver.py +61 -30
- netbox_dns/models/record.py +781 -234
- netbox_dns/models/record_template.py +198 -0
- netbox_dns/models/registrar.py +34 -15
- netbox_dns/models/{contact.py → registration_contact.py} +72 -43
- netbox_dns/models/view.py +129 -9
- netbox_dns/models/zone.py +806 -242
- netbox_dns/models/zone_template.py +209 -0
- netbox_dns/navigation.py +176 -76
- netbox_dns/signals/__init__.py +0 -0
- netbox_dns/signals/dnssec.py +32 -0
- netbox_dns/signals/ipam_dnssync.py +216 -0
- netbox_dns/tables/__init__.py +5 -1
- netbox_dns/tables/dnssec_key_template.py +49 -0
- netbox_dns/tables/dnssec_policy.py +140 -0
- netbox_dns/tables/ipam_dnssync.py +12 -0
- netbox_dns/tables/nameserver.py +14 -17
- netbox_dns/tables/record.py +117 -59
- netbox_dns/tables/record_template.py +91 -0
- netbox_dns/tables/registrar.py +20 -10
- netbox_dns/tables/{contact.py → registration_contact.py} +22 -11
- netbox_dns/tables/view.py +47 -3
- netbox_dns/tables/zone.py +62 -31
- netbox_dns/tables/zone_template.py +78 -0
- netbox_dns/template_content.py +124 -38
- netbox_dns/templates/netbox_dns/dnsseckeytemplate.html +70 -0
- netbox_dns/templates/netbox_dns/dnssecpolicy.html +163 -0
- netbox_dns/templates/netbox_dns/nameserver.html +31 -28
- netbox_dns/templates/netbox_dns/record/managed.html +2 -1
- netbox_dns/templates/netbox_dns/record/related.html +17 -6
- netbox_dns/templates/netbox_dns/record.html +140 -93
- netbox_dns/templates/netbox_dns/recordtemplate.html +96 -0
- netbox_dns/templates/netbox_dns/registrar.html +41 -34
- netbox_dns/templates/netbox_dns/registrationcontact.html +76 -0
- netbox_dns/templates/netbox_dns/view/button.html +10 -0
- netbox_dns/templates/netbox_dns/view/prefix.html +44 -0
- netbox_dns/templates/netbox_dns/view/related.html +33 -0
- netbox_dns/templates/netbox_dns/view.html +62 -18
- netbox_dns/templates/netbox_dns/zone/base.html +6 -3
- netbox_dns/templates/netbox_dns/zone/child.html +6 -5
- netbox_dns/templates/netbox_dns/zone/child_zone.html +18 -0
- netbox_dns/templates/netbox_dns/zone/delegation_record.html +18 -0
- netbox_dns/templates/netbox_dns/zone/managed_record.html +1 -1
- netbox_dns/templates/netbox_dns/zone/record.html +6 -5
- netbox_dns/templates/netbox_dns/zone/registration.html +43 -24
- netbox_dns/templates/netbox_dns/zone/rfc2317_child_zone.html +18 -0
- netbox_dns/templates/netbox_dns/zone.html +178 -119
- netbox_dns/templates/netbox_dns/zonetemplate/child.html +46 -0
- netbox_dns/templates/netbox_dns/zonetemplate.html +124 -0
- netbox_dns/templatetags/netbox_dns.py +10 -0
- netbox_dns/urls.py +50 -210
- netbox_dns/utilities/__init__.py +3 -0
- netbox_dns/{utilities.py → utilities/conversions.py} +55 -7
- netbox_dns/utilities/dns.py +11 -0
- netbox_dns/utilities/ipam_dnssync.py +370 -0
- netbox_dns/validators/__init__.py +4 -0
- netbox_dns/validators/dns_name.py +116 -0
- netbox_dns/validators/dns_value.py +147 -0
- netbox_dns/validators/dnssec.py +148 -0
- netbox_dns/validators/rfc2317.py +28 -0
- netbox_dns/views/__init__.py +5 -1
- netbox_dns/views/dnssec_key_template.py +78 -0
- netbox_dns/views/dnssec_policy.py +146 -0
- netbox_dns/views/nameserver.py +34 -15
- netbox_dns/views/record.py +156 -15
- netbox_dns/views/record_template.py +93 -0
- netbox_dns/views/registrar.py +32 -13
- netbox_dns/views/registration_contact.py +101 -0
- netbox_dns/views/view.py +58 -14
- netbox_dns/views/zone.py +130 -33
- netbox_dns/views/zone_template.py +82 -0
- netbox_plugin_dns-1.4.7.dist-info/METADATA +132 -0
- netbox_plugin_dns-1.4.7.dist-info/RECORD +201 -0
- {netbox_plugin_dns-0.21.4.dist-info → netbox_plugin_dns-1.4.7.dist-info}/WHEEL +2 -1
- {netbox_plugin_dns-0.21.4.dist-info → netbox_plugin_dns-1.4.7.dist-info/licenses}/LICENSE +2 -1
- netbox_plugin_dns-1.4.7.dist-info/top_level.txt +1 -0
- netbox_dns/filters/__init__.py +0 -6
- netbox_dns/filters/nameserver.py +0 -18
- netbox_dns/filters/record.py +0 -53
- netbox_dns/filters/view.py +0 -18
- netbox_dns/filters/zone.py +0 -112
- netbox_dns/forms/contact.py +0 -211
- netbox_dns/graphql/contact.py +0 -19
- netbox_dns/graphql/nameserver.py +0 -19
- netbox_dns/graphql/record.py +0 -19
- netbox_dns/graphql/registrar.py +0 -19
- netbox_dns/graphql/view.py +0 -19
- netbox_dns/graphql/zone.py +0 -19
- netbox_dns/management/commands/setup_coupling.py +0 -75
- netbox_dns/management/commands/update_soa.py +0 -22
- netbox_dns/middleware.py +0 -226
- netbox_dns/migrations/0001_initial.py +0 -115
- netbox_dns/migrations/0002_zone_default_ttl.py +0 -18
- netbox_dns/migrations/0003_soa_managed_records.py +0 -112
- netbox_dns/migrations/0004_create_ptr_for_a_aaaa_records.py +0 -80
- netbox_dns/migrations/0005_update_ns_records.py +0 -41
- netbox_dns/migrations/0006_zone_soa_serial_auto.py +0 -29
- netbox_dns/migrations/0007_alter_zone_soa_serial_auto.py +0 -17
- netbox_dns/migrations/0008_zone_status_names.py +0 -21
- netbox_dns/migrations/0009_netbox32.py +0 -71
- netbox_dns/migrations/0010_update_soa_records.py +0 -58
- netbox_dns/migrations/0011_add_view_model.py +0 -70
- netbox_dns/migrations/0012_adjust_zone_and_record.py +0 -17
- netbox_dns/migrations/0014_add_view_description.py +0 -16
- netbox_dns/migrations/0016_cleanup_ptr_records.py +0 -38
- netbox_dns/migrations/0017_alter_record_ttl.py +0 -17
- netbox_dns/migrations/0018_zone_arpa_network.py +0 -51
- netbox_dns/migrations/0019_update_ns_ttl.py +0 -19
- netbox_dns/templates/netbox_dns/contact.html +0 -71
- netbox_dns/templates/netbox_dns/related_dns_objects.html +0 -21
- netbox_dns/templatetags/view_helpers.py +0 -15
- netbox_dns/validators.py +0 -57
- netbox_dns/views/contact.py +0 -83
- netbox_plugin_dns-0.21.4.dist-info/METADATA +0 -101
- netbox_plugin_dns-0.21.4.dist-info/RECORD +0 -110
|
@@ -1,36 +1,80 @@
|
|
|
1
1
|
{% extends 'generic/object.html' %}
|
|
2
|
+
{% load i18n %}
|
|
2
3
|
|
|
3
4
|
{% block content %}
|
|
4
5
|
<div class="row">
|
|
5
6
|
<div class="col col-md-6">
|
|
6
7
|
<div class="card">
|
|
7
|
-
<h5 class="card-header">View</h5>
|
|
8
|
+
<h5 class="card-header">{% trans "View" %}</h5>
|
|
9
|
+
<table class="table table-hover attr-table">
|
|
10
|
+
<tr>
|
|
11
|
+
<th scope="row">{% trans "Name" %}</th>
|
|
12
|
+
<td>{{ object.name }}</td>
|
|
13
|
+
</tr>
|
|
14
|
+
<tr>
|
|
15
|
+
<th scope="row">{% trans "Default View" %}</th>
|
|
16
|
+
<td>{% checkmark object.default_view %}</td>
|
|
17
|
+
</tr>
|
|
18
|
+
{% if object.description %}
|
|
19
|
+
<tr>
|
|
20
|
+
<th scope="row">{% trans "Description" %}</th>
|
|
21
|
+
<td style="word-break:break-all;">{{ object.description }}</td>
|
|
22
|
+
</tr>
|
|
23
|
+
{% endif %}
|
|
24
|
+
{% if object.tenant %}
|
|
25
|
+
<tr>
|
|
26
|
+
<th scope="row">{% trans "Tenant" %}</th>
|
|
27
|
+
<td>
|
|
28
|
+
{% if object.tenant.group %}
|
|
29
|
+
{{ object.tenant.group|linkify }} /
|
|
30
|
+
{% endif %}
|
|
31
|
+
{{ object.tenant|linkify|placeholder }}
|
|
32
|
+
</td>
|
|
33
|
+
</tr>
|
|
34
|
+
{% endif %}
|
|
35
|
+
</table>
|
|
36
|
+
</div>
|
|
37
|
+
{% include 'inc/panels/custom_fields.html' %}
|
|
38
|
+
</div>
|
|
39
|
+
<div class="col col-md-6">
|
|
40
|
+
{% include 'inc/panels/tags.html' %}
|
|
41
|
+
{% if not settings.PLUGINS_CONFIG.netbox_dns.dnssync_disabled %}
|
|
42
|
+
<div class="card">
|
|
43
|
+
<h5 class="card-header">{% trans "IPAM Prefixes" %}</h5>
|
|
8
44
|
<div class="card-body">
|
|
9
45
|
<table class="table table-hover attr-table">
|
|
46
|
+
{% if object.prefixes.exists %}
|
|
47
|
+
{% for prefix in object.prefixes.all %}
|
|
10
48
|
<tr>
|
|
11
|
-
<th scope="row">Name</th>
|
|
12
|
-
<td>{{ object.name }}</td>
|
|
13
|
-
</tr>
|
|
14
|
-
<tr>
|
|
15
|
-
<th scope="row">Tenant</th>
|
|
16
49
|
<td>
|
|
17
|
-
{
|
|
18
|
-
{{ object.tenant.group|linkify }} /
|
|
19
|
-
{% endif %}
|
|
20
|
-
{{ object.tenant|linkify|placeholder }}
|
|
50
|
+
{{ prefix|linkify }}
|
|
21
51
|
</td>
|
|
52
|
+
{% if prefix.vrf %}
|
|
53
|
+
<td>
|
|
54
|
+
{{ prefix.vrf|linkify }}
|
|
55
|
+
</td>
|
|
56
|
+
{% else %}
|
|
57
|
+
<td>{% trans "Global" %}</td>
|
|
58
|
+
{% endif %}
|
|
22
59
|
</tr>
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
<
|
|
26
|
-
|
|
60
|
+
{% endfor %}
|
|
61
|
+
{% else %}
|
|
62
|
+
<span class="text-muted">{% trans "No prefixes assigned" %}</span>
|
|
63
|
+
{% endif %}
|
|
27
64
|
</table>
|
|
28
65
|
</div>
|
|
29
66
|
</div>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
67
|
+
<div class="card">
|
|
68
|
+
<h5 class="card-header">{% trans "IP Address Filters" %}</h5>
|
|
69
|
+
<div class="card-body">
|
|
70
|
+
{% if object.ip_address_filter %}
|
|
71
|
+
<pre>{{ object.ip_address_filter|json }}</pre>
|
|
72
|
+
{% else %}
|
|
73
|
+
<span class="text-muted">{% trans "No filters defined" %}</span>
|
|
74
|
+
{% endif %}
|
|
75
|
+
</div>
|
|
76
|
+
</div>
|
|
77
|
+
{% endif %}
|
|
34
78
|
</div>
|
|
35
79
|
</div>
|
|
36
80
|
{% endblock %}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
{% extends 'generic/object.html' %}
|
|
2
|
+
{% load buttons %}
|
|
2
3
|
{% load helpers %}
|
|
3
4
|
{% load plugins %}
|
|
4
|
-
{% load render_table from django_tables2 %}
|
|
5
5
|
{% load perms %}
|
|
6
|
+
{% load i18n %}
|
|
6
7
|
|
|
7
8
|
{% block extra_controls %}
|
|
8
9
|
{% if perms.netbox_dns.add_record %}
|
|
9
|
-
<a href="{% url 'plugins:netbox_dns:record_add' %}?zone={{ object.
|
|
10
|
-
<
|
|
10
|
+
<a href="{% url 'plugins:netbox_dns:record_add' %}?zone={{ object.pk }}&return_url={% url 'plugins:netbox_dns:zone_records' pk=object.pk %}">
|
|
11
|
+
<button type="submit" class="btn btn-primary" name="add-record">
|
|
12
|
+
<i class="mdi mdi-plus-thick" aria-hidden="true"></i>{% trans "Add Record" %}
|
|
13
|
+
</button>
|
|
11
14
|
</a>
|
|
12
15
|
{% endif %}
|
|
13
16
|
{{ block.super }}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
{% load helpers %}
|
|
3
3
|
{% load render_table from django_tables2 %}
|
|
4
4
|
{% load perms %}
|
|
5
|
+
{% load i18n %}
|
|
5
6
|
|
|
6
7
|
{% block content %}
|
|
7
8
|
{% include 'inc/table_controls_htmx.html' with table_modal="ZoneTable_config" %}
|
|
@@ -11,7 +12,7 @@
|
|
|
11
12
|
<input type="hidden" name="return_url" value="{% if return_url %}{{ return_url }}{% else %}{{ request.path }}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}{% endif %}" />
|
|
12
13
|
|
|
13
14
|
<div class="card">
|
|
14
|
-
<div class="
|
|
15
|
+
<div class="htmx-container table-responsive" id="object_list">
|
|
15
16
|
{% include 'htmx/table.html' %}
|
|
16
17
|
</div>
|
|
17
18
|
</div>
|
|
@@ -22,13 +23,13 @@
|
|
|
22
23
|
<div class="bulk-button-group">
|
|
23
24
|
{% block bulk_buttons %}{% endblock %}
|
|
24
25
|
{% if bulk_edit_url and perms.netbox_dns.change_zone %}
|
|
25
|
-
<button type="submit" name="_edit" formaction="{% url bulk_edit_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-warning
|
|
26
|
-
<i class="mdi mdi-pencil" aria-hidden="true"></i> Edit Selected
|
|
26
|
+
<button type="submit" name="_edit" formaction="{% url bulk_edit_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-warning">
|
|
27
|
+
<i class="mdi mdi-pencil" aria-hidden="true"></i> {% trans "Edit Selected" %}
|
|
27
28
|
</button>
|
|
28
29
|
{% endif %}
|
|
29
30
|
{% if bulk_delete_url and perms.netbox_dns.delete_zone %}
|
|
30
|
-
<button type="submit" name="_delete" formaction="{% url bulk_delete_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-danger
|
|
31
|
-
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> Delete Selected
|
|
31
|
+
<button type="submit" name="_delete" formaction="{% url bulk_delete_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-danger">
|
|
32
|
+
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete Selected" %}
|
|
32
33
|
</button>
|
|
33
34
|
{% endif %}
|
|
34
35
|
</div>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{% extends 'netbox_dns/zone/base.html' %}
|
|
2
|
+
{% load helpers %}
|
|
3
|
+
{% load render_table from django_tables2 %}
|
|
4
|
+
{% load perms %}
|
|
5
|
+
|
|
6
|
+
{% block content %}
|
|
7
|
+
{% include 'inc/table_controls_htmx.html' with table_modal="ChildZoneTable_config" %}
|
|
8
|
+
<div class="card">
|
|
9
|
+
<div class="htmx-container table-responsive" id="object_list">
|
|
10
|
+
{% include 'htmx/table.html' %}
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
{% endblock %}
|
|
14
|
+
|
|
15
|
+
{% block modals %}
|
|
16
|
+
{{ block.super }}
|
|
17
|
+
{% table_config_form table %}
|
|
18
|
+
{% endblock modals %}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{% extends 'netbox_dns/zone/base.html' %}
|
|
2
|
+
{% load helpers %}
|
|
3
|
+
{% load render_table from django_tables2 %}
|
|
4
|
+
{% load perms %}
|
|
5
|
+
|
|
6
|
+
{% block content %}
|
|
7
|
+
{% include 'inc/table_controls_htmx.html' with table_modal="DelegationRecordTable_config" %}
|
|
8
|
+
<div class="card">
|
|
9
|
+
<div class="htmx-container table-responsive" id="object_list">
|
|
10
|
+
{% include 'htmx/table.html' %}
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
{% endblock %}
|
|
14
|
+
|
|
15
|
+
{% block modals %}
|
|
16
|
+
{{ block.super }}
|
|
17
|
+
{% table_config_form table %}
|
|
18
|
+
{% endblock modals %}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
{% block content %}
|
|
7
7
|
{% include 'inc/table_controls_htmx.html' with table_modal="ManagedRecordTable_config" %}
|
|
8
8
|
<div class="card">
|
|
9
|
-
<div class="
|
|
9
|
+
<div class="htmx-container table-responsive" id="object_list">
|
|
10
10
|
{% include 'htmx/table.html' %}
|
|
11
11
|
</div>
|
|
12
12
|
</div>
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
{% load helpers %}
|
|
3
3
|
{% load render_table from django_tables2 %}
|
|
4
4
|
{% load perms %}
|
|
5
|
+
{% load i18n %}
|
|
5
6
|
|
|
6
7
|
{% block content %}
|
|
7
8
|
{% include 'inc/table_controls_htmx.html' with table_modal="RecordTable_config" %}
|
|
@@ -11,7 +12,7 @@
|
|
|
11
12
|
<input type="hidden" name="return_url" value="{% if return_url %}{{ return_url }}{% else %}{{ request.path }}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}{% endif %}" />
|
|
12
13
|
|
|
13
14
|
<div class="card">
|
|
14
|
-
<div class="
|
|
15
|
+
<div class="htmx-container table-responsive" id="object_list">
|
|
15
16
|
{% include 'htmx/table.html' %}
|
|
16
17
|
</div>
|
|
17
18
|
</div>
|
|
@@ -22,13 +23,13 @@
|
|
|
22
23
|
<div class="bulk-button-group">
|
|
23
24
|
{% block bulk_buttons %}{% endblock %}
|
|
24
25
|
{% if bulk_edit_url and perms.netbox_dns.change_record %}
|
|
25
|
-
<button type="submit" name="_edit" formaction="{% url bulk_edit_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-warning
|
|
26
|
-
<i class="mdi mdi-pencil" aria-hidden="true"></i> Edit Selected
|
|
26
|
+
<button type="submit" name="_edit" formaction="{% url bulk_edit_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-warning">
|
|
27
|
+
<i class="mdi mdi-pencil" aria-hidden="true"></i> {% trans "Edit Selected" %}
|
|
27
28
|
</button>
|
|
28
29
|
{% endif %}
|
|
29
30
|
{% if bulk_delete_url and perms.netbox_dns.delete_record %}
|
|
30
|
-
<button type="submit" name="_delete" formaction="{% url bulk_delete_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-danger
|
|
31
|
-
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> Delete Selected
|
|
31
|
+
<button type="submit" name="_delete" formaction="{% url bulk_delete_url %}{% if request.GET %}?{{ request.GET.urlencode }}{% endif %}" class="btn btn-danger">
|
|
32
|
+
<i class="mdi mdi-trash-can-outline" aria-hidden="true"></i> {% trans "Delete Selected" %}
|
|
32
33
|
</button>
|
|
33
34
|
{% endif %}
|
|
34
35
|
</div>
|
|
@@ -1,36 +1,55 @@
|
|
|
1
1
|
{% extends 'netbox_dns/zone/base.html' %}
|
|
2
2
|
{% load helpers %}
|
|
3
|
+
{% load i18n %}
|
|
3
4
|
|
|
4
5
|
{% block content %}
|
|
5
6
|
<div class="card">
|
|
6
|
-
<h5 class="card-header">Domain Registration</h5>
|
|
7
|
-
<
|
|
8
|
-
<
|
|
7
|
+
<h5 class="card-header">{% trans "Domain Registration" %}</h5>
|
|
8
|
+
<table class="table table-hover attr-table">
|
|
9
|
+
<tr>
|
|
10
|
+
<th scope="row">{% trans "Registrar" %}</th>
|
|
11
|
+
<td>{{ object.registrar|linkify|placeholder }}</td>
|
|
12
|
+
</tr>
|
|
13
|
+
<tr>
|
|
14
|
+
<th scope="row">{% trans "Registry Domain ID" %}</th>
|
|
15
|
+
<td>{{ object.registry_domain_id|placeholder }}</td>
|
|
16
|
+
</tr>
|
|
17
|
+
<tr>
|
|
18
|
+
<th scope="row">{% trans "Expiration Date" %}</th>
|
|
19
|
+
<td>{{ object.expiration_date|placeholder }}</td>
|
|
20
|
+
</tr>
|
|
21
|
+
{% if expiration_warning %}
|
|
9
22
|
<tr>
|
|
10
|
-
<th scope="row">
|
|
11
|
-
<td>{{
|
|
23
|
+
<th class="text-warning" scope="row">{% trans "Warning" %}</th>
|
|
24
|
+
<td class="text-warning">{{ expiration_warning }}</td>
|
|
12
25
|
</tr>
|
|
26
|
+
{% elif expiration_error %}
|
|
13
27
|
<tr>
|
|
14
|
-
<th scope="row">
|
|
15
|
-
<td>{{
|
|
28
|
+
<th class="text-danger" scope="row">{% trans "Error" %}</th>
|
|
29
|
+
<td class="text-danger">{{ expiration_error }}</td>
|
|
16
30
|
</tr>
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
</
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
</
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
</
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
</
|
|
33
|
-
</
|
|
31
|
+
{% endif %}
|
|
32
|
+
<tr>
|
|
33
|
+
<th scope="row">{% trans "Domain Status" %}</th>
|
|
34
|
+
<td>{% badge object.get_domain_status_display bg_color=object.get_domain_status_color %}</td>
|
|
35
|
+
</tr>
|
|
36
|
+
<tr>
|
|
37
|
+
<th scope="row">{% trans "Registrant" %}</th>
|
|
38
|
+
<td>{{ object.registrant|linkify|placeholder }}</td>
|
|
39
|
+
</tr>
|
|
40
|
+
<tr>
|
|
41
|
+
<th scope="row">{% trans "Administrative Contact" %}</th>
|
|
42
|
+
<td>{{ object.admin_c|linkify|placeholder }}</td>
|
|
43
|
+
</tr>
|
|
44
|
+
<tr>
|
|
45
|
+
<th scope="row">{% trans "Technical Contact" %}</th>
|
|
46
|
+
<td>{{ object.tech_c|linkify|placeholder }}</td>
|
|
47
|
+
</tr>
|
|
48
|
+
<tr>
|
|
49
|
+
<th scope="row">{% trans "Billing Contact" %}</th>
|
|
50
|
+
<td>{{ object.billing_c|linkify|placeholder }}</td>
|
|
51
|
+
</tr>
|
|
52
|
+
</table>
|
|
34
53
|
</div>
|
|
35
54
|
</div>
|
|
36
55
|
{% endblock %}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{% extends 'netbox_dns/zone/base.html' %}
|
|
2
|
+
{% load helpers %}
|
|
3
|
+
{% load render_table from django_tables2 %}
|
|
4
|
+
{% load perms %}
|
|
5
|
+
|
|
6
|
+
{% block content %}
|
|
7
|
+
{% include 'inc/table_controls_htmx.html' with table_modal="RFC2317ChildZoneTable_config" %}
|
|
8
|
+
<div class="card">
|
|
9
|
+
<div class="htmx-container table-responsive" id="object_list">
|
|
10
|
+
{% include 'htmx/table.html' %}
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
{% endblock %}
|
|
14
|
+
|
|
15
|
+
{% block modals %}
|
|
16
|
+
{{ block.super }}
|
|
17
|
+
{% table_config_form table %}
|
|
18
|
+
{% endblock modals %}
|