From d229c257210a45e4700489a44f78b9312cf6c4fe Mon Sep 17 00:00:00 2001
From: Till Brehm <tbrehm@ispconfig.org>
Date: Sun, 23 Feb 2014 18:21:52 +0100
Subject: [PATCH] Fixed: FS#2954 - Add minimum ttl values in all dns sub
 records

---
 interface/web/dns/form/dns_a.tform.php      | 4 ++++
 interface/web/dns/form/dns_aaaa.tform.php   | 4 ++++
 interface/web/dns/form/dns_alias.tform.php  | 4 ++++
 interface/web/dns/form/dns_cname.tform.php  | 4 ++++
 interface/web/dns/form/dns_hinfo.tform.php  | 4 ++++
 interface/web/dns/form/dns_mx.tform.php     | 4 ++++
 interface/web/dns/form/dns_ns.tform.php     | 4 ++++
 interface/web/dns/form/dns_ptr.tform.php    | 4 ++++
 interface/web/dns/form/dns_rp.tform.php     | 4 ++++
 interface/web/dns/form/dns_srv.tform.php    | 4 ++++
 interface/web/dns/form/dns_txt.tform.php    | 4 ++++
 interface/web/dns/lib/lang/en_dns_a.lng     | 1 +
 interface/web/dns/lib/lang/en_dns_aaaa.lng  | 1 +
 interface/web/dns/lib/lang/en_dns_alias.lng | 1 +
 interface/web/dns/lib/lang/en_dns_cname.lng | 1 +
 interface/web/dns/lib/lang/en_dns_hinfo.lng | 1 +
 interface/web/dns/lib/lang/en_dns_mx.lng    | 1 +
 interface/web/dns/lib/lang/en_dns_ns.lng    | 1 +
 interface/web/dns/lib/lang/en_dns_ptr.lng   | 1 +
 interface/web/dns/lib/lang/en_dns_rp.lng    | 1 +
 interface/web/dns/lib/lang/en_dns_srv.lng   | 1 +
 interface/web/dns/lib/lang/en_dns_txt.lng   | 1 +
 22 files changed, 55 insertions(+)

diff --git a/interface/web/dns/form/dns_a.tform.php b/interface/web/dns/form/dns_a.tform.php
index b7def7d1ea..95aa5b81c0 100644
--- a/interface/web/dns/form/dns_a.tform.php
+++ b/interface/web/dns/form/dns_a.tform.php
@@ -129,6 +129,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/form/dns_aaaa.tform.php b/interface/web/dns/form/dns_aaaa.tform.php
index 0550aa4269..47bbac39c2 100644
--- a/interface/web/dns/form/dns_aaaa.tform.php
+++ b/interface/web/dns/form/dns_aaaa.tform.php
@@ -122,6 +122,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/form/dns_alias.tform.php b/interface/web/dns/form/dns_alias.tform.php
index 3325814dc1..663bf84278 100644
--- a/interface/web/dns/form/dns_alias.tform.php
+++ b/interface/web/dns/form/dns_alias.tform.php
@@ -138,6 +138,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/form/dns_cname.tform.php b/interface/web/dns/form/dns_cname.tform.php
index e2a86dea85..ca2419b1fd 100644
--- a/interface/web/dns/form/dns_cname.tform.php
+++ b/interface/web/dns/form/dns_cname.tform.php
@@ -136,6 +136,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/form/dns_hinfo.tform.php b/interface/web/dns/form/dns_hinfo.tform.php
index 6e815f5cd8..231bdfc65a 100644
--- a/interface/web/dns/form/dns_hinfo.tform.php
+++ b/interface/web/dns/form/dns_hinfo.tform.php
@@ -128,6 +128,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/form/dns_mx.tform.php b/interface/web/dns/form/dns_mx.tform.php
index 6e0c7e3236..2a8ee6df62 100644
--- a/interface/web/dns/form/dns_mx.tform.php
+++ b/interface/web/dns/form/dns_mx.tform.php
@@ -137,6 +137,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/form/dns_ns.tform.php b/interface/web/dns/form/dns_ns.tform.php
index 5020977739..82b30901fd 100644
--- a/interface/web/dns/form/dns_ns.tform.php
+++ b/interface/web/dns/form/dns_ns.tform.php
@@ -136,6 +136,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/form/dns_ptr.tform.php b/interface/web/dns/form/dns_ptr.tform.php
index b749992884..59a91e7c8f 100644
--- a/interface/web/dns/form/dns_ptr.tform.php
+++ b/interface/web/dns/form/dns_ptr.tform.php
@@ -136,6 +136,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/form/dns_rp.tform.php b/interface/web/dns/form/dns_rp.tform.php
index 3b7808e716..35b8e55ad1 100644
--- a/interface/web/dns/form/dns_rp.tform.php
+++ b/interface/web/dns/form/dns_rp.tform.php
@@ -129,6 +129,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/form/dns_srv.tform.php b/interface/web/dns/form/dns_srv.tform.php
index 368ecbf076..2741a5f7f1 100644
--- a/interface/web/dns/form/dns_srv.tform.php
+++ b/interface/web/dns/form/dns_srv.tform.php
@@ -127,6 +127,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/form/dns_txt.tform.php b/interface/web/dns/form/dns_txt.tform.php
index 489c5e8138..a4b7d4073e 100644
--- a/interface/web/dns/form/dns_txt.tform.php
+++ b/interface/web/dns/form/dns_txt.tform.php
@@ -126,6 +126,10 @@ $form["tabs"]['dns'] = array (
 		'ttl' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'RANGE',
+					'range' => '60:',
+					'errmsg'=> 'ttl_range_error'),
+			),
 			'default' => '86400',
 			'value'  => '',
 			'width'  => '10',
diff --git a/interface/web/dns/lib/lang/en_dns_a.lng b/interface/web/dns/lib/lang/en_dns_a.lng
index 5bd9c33544..b2a3a98008 100644
--- a/interface/web/dns/lib/lang/en_dns_a.lng
+++ b/interface/web/dns/lib/lang/en_dns_a.lng
@@ -13,4 +13,5 @@ $wb["name_error_regex"] = 'The hostname has the wrong format.';
 $wb["data_error_empty"] = 'IP-Address empty';
 $wb["data_error_regex"] = 'IP-Address format invalid';
 $wb["data_error_duplicate"] = 'Duplicate A-Record or CNAME-Record';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_aaaa.lng b/interface/web/dns/lib/lang/en_dns_aaaa.lng
index c56d55863b..939952d568 100644
--- a/interface/web/dns/lib/lang/en_dns_aaaa.lng
+++ b/interface/web/dns/lib/lang/en_dns_aaaa.lng
@@ -12,4 +12,5 @@ $wb["name_error_empty"] = 'The hostname is empty.';
 $wb["name_error_regex"] = 'The hostname has the wrong format.';
 $wb["data_error_empty"] = 'IP-Address empty';
 $wb["data_error_regex"] = 'IP-Address format invalid';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_alias.lng b/interface/web/dns/lib/lang/en_dns_alias.lng
index 46f73a3878..35c0e0451a 100644
--- a/interface/web/dns/lib/lang/en_dns_alias.lng
+++ b/interface/web/dns/lib/lang/en_dns_alias.lng
@@ -12,4 +12,5 @@ $wb["name_error_empty"] = 'The hostname is empty.';
 $wb["name_error_regex"] = 'The hostname has the wrong format.';
 $wb["data_error_empty"] = 'Target hostname empty';
 $wb["data_error_regex"] = 'Target hostname format invalid';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_cname.lng b/interface/web/dns/lib/lang/en_dns_cname.lng
index 96061b27c9..ea67106e7a 100644
--- a/interface/web/dns/lib/lang/en_dns_cname.lng
+++ b/interface/web/dns/lib/lang/en_dns_cname.lng
@@ -13,4 +13,5 @@ $wb["name_error_regex"] = 'The hostname has the wrong format.';
 $wb["data_error_empty"] = 'Target hostname empty';
 $wb["data_error_regex"] = 'Target hostname format invalid';
 $wb["data_error_duplicate"] = 'Duplicate A-Record or CNAME-Record';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_hinfo.lng b/interface/web/dns/lib/lang/en_dns_hinfo.lng
index 0fb7f4597c..7a954b01db 100644
--- a/interface/web/dns/lib/lang/en_dns_hinfo.lng
+++ b/interface/web/dns/lib/lang/en_dns_hinfo.lng
@@ -12,4 +12,5 @@ $wb["name_error_empty"] = 'The hostname is empty.';
 $wb["name_error_regex"] = 'The hostname has the wrong format.';
 $wb["data_error_empty"] = 'Host information empty';
 $wb["data_error_regex"] = 'Host Information format invalid';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_mx.lng b/interface/web/dns/lib/lang/en_dns_mx.lng
index d61f592ec2..298568c16c 100644
--- a/interface/web/dns/lib/lang/en_dns_mx.lng
+++ b/interface/web/dns/lib/lang/en_dns_mx.lng
@@ -14,4 +14,5 @@ $wb["name_error_regex"] = 'The hostname has the wrong format.';
 $wb["data_error_empty"] = 'Mailserver hostname empty';
 $wb["data_error_regex"] = 'Mailserver hostname format invalid';
 $wb["duplicate_mx_record_txt"] = 'Duplicate MX record.';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_ns.lng b/interface/web/dns/lib/lang/en_dns_ns.lng
index 9e0e1e149e..1567811179 100644
--- a/interface/web/dns/lib/lang/en_dns_ns.lng
+++ b/interface/web/dns/lib/lang/en_dns_ns.lng
@@ -12,4 +12,5 @@ $wb["name_error_empty"] = 'The zone is empty.';
 $wb["name_error_regex"] = 'The zone has the wrong format.';
 $wb["data_error_empty"] = 'Nameserver empty';
 $wb["data_error_regex"] = 'Nameserver format invalid';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_ptr.lng b/interface/web/dns/lib/lang/en_dns_ptr.lng
index 1219a96e1f..e9ed6aeac6 100644
--- a/interface/web/dns/lib/lang/en_dns_ptr.lng
+++ b/interface/web/dns/lib/lang/en_dns_ptr.lng
@@ -12,4 +12,5 @@ $wb["name_error_empty"] = 'The name is empty.';
 $wb["name_error_regex"] = 'The name has the wrong format.';
 $wb["data_error_empty"] = 'Canonical hostname empty';
 $wb["data_error_regex"] = 'Canonical hostname format invalid';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_rp.lng b/interface/web/dns/lib/lang/en_dns_rp.lng
index e705d9fff0..d3e76e711d 100644
--- a/interface/web/dns/lib/lang/en_dns_rp.lng
+++ b/interface/web/dns/lib/lang/en_dns_rp.lng
@@ -12,4 +12,5 @@ $wb["name_error_empty"] = 'The hostname is empty.';
 $wb["name_error_regex"] = 'The hostname has the wrong format.';
 $wb["data_error_empty"] = 'Responsible person field empty';
 $wb["data_error_regex"] = 'Responsible person field format invalid';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_srv.lng b/interface/web/dns/lib/lang/en_dns_srv.lng
index c50b721983..a90be03102 100644
--- a/interface/web/dns/lib/lang/en_dns_srv.lng
+++ b/interface/web/dns/lib/lang/en_dns_srv.lng
@@ -16,4 +16,5 @@ $wb["name_error_regex"] = 'The hostname has the wrong format.';
 $wb["data_error_empty"] = 'Server record empty';
 $wb["data_error_regex"] = 'Server record format invalid';
 $wb["srv_error_regex"] = 'Invalid server record format. The server record must contain 3 text strings separated by spaces.';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_txt.lng b/interface/web/dns/lib/lang/en_dns_txt.lng
index af43605901..b70b8b19d5 100644
--- a/interface/web/dns/lib/lang/en_dns_txt.lng
+++ b/interface/web/dns/lib/lang/en_dns_txt.lng
@@ -12,4 +12,5 @@ $wb["name_error_empty"] = 'The hostname is empty.';
 $wb["name_error_regex"] = 'The hostname has the wrong format.';
 $wb["data_error_empty"] = 'Text empty';
 $wb["data_error_regex"] = 'Text format invalid';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
\ No newline at end of file
-- 
GitLab