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

---
 interface/web/dns/lib/lang/en_dns_ns.lng    |    1 +
 interface/web/dns/form/dns_cname.tform.php  |    4 ++++
 interface/web/dns/form/dns_srv.tform.php    |    4 ++++
 interface/web/dns/lib/lang/en_dns_alias.lng |    1 +
 interface/web/dns/form/dns_rp.tform.php     |    4 ++++
 interface/web/dns/form/dns_mx.tform.php     |    4 ++++
 interface/web/dns/form/dns_ns.tform.php     |    4 ++++
 interface/web/dns/lib/lang/en_dns_hinfo.lng |    1 +
 interface/web/dns/lib/lang/en_dns_txt.lng   |    1 +
 interface/web/dns/form/dns_a.tform.php      |    4 ++++
 interface/web/dns/form/dns_hinfo.tform.php  |    4 ++++
 interface/web/dns/form/dns_aaaa.tform.php   |    4 ++++
 interface/web/dns/lib/lang/en_dns_a.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_cname.lng |    1 +
 interface/web/dns/form/dns_ptr.tform.php    |    4 ++++
 interface/web/dns/lib/lang/en_dns_mx.lng    |    1 +
 interface/web/dns/lib/lang/en_dns_srv.lng   |    1 +
 interface/web/dns/form/dns_alias.tform.php  |    4 ++++
 interface/web/dns/lib/lang/en_dns_aaaa.lng  |    1 +
 interface/web/dns/form/dns_txt.tform.php    |    4 ++++
 22 files changed, 55 insertions(+), 0 deletions(-)

diff --git a/interface/web/dns/form/dns_a.tform.php b/interface/web/dns/form/dns_a.tform.php
index b7def7d..95aa5b8 100644
--- a/interface/web/dns/form/dns_a.tform.php
+++ b/interface/web/dns/form/dns_a.tform.php
@@ -129,6 +129,10 @@
 		'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 0550aa4..47bbac3 100644
--- a/interface/web/dns/form/dns_aaaa.tform.php
+++ b/interface/web/dns/form/dns_aaaa.tform.php
@@ -122,6 +122,10 @@
 		'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 3325814..663bf84 100644
--- a/interface/web/dns/form/dns_alias.tform.php
+++ b/interface/web/dns/form/dns_alias.tform.php
@@ -138,6 +138,10 @@
 		'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 e2a86de..ca2419b 100644
--- a/interface/web/dns/form/dns_cname.tform.php
+++ b/interface/web/dns/form/dns_cname.tform.php
@@ -136,6 +136,10 @@
 		'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 6e815f5..231bdfc 100644
--- a/interface/web/dns/form/dns_hinfo.tform.php
+++ b/interface/web/dns/form/dns_hinfo.tform.php
@@ -128,6 +128,10 @@
 		'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 6e0c7e3..2a8ee6d 100644
--- a/interface/web/dns/form/dns_mx.tform.php
+++ b/interface/web/dns/form/dns_mx.tform.php
@@ -137,6 +137,10 @@
 		'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 5020977..82b3090 100644
--- a/interface/web/dns/form/dns_ns.tform.php
+++ b/interface/web/dns/form/dns_ns.tform.php
@@ -136,6 +136,10 @@
 		'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 b749992..59a91e7 100644
--- a/interface/web/dns/form/dns_ptr.tform.php
+++ b/interface/web/dns/form/dns_ptr.tform.php
@@ -136,6 +136,10 @@
 		'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 3b7808e..35b8e55 100644
--- a/interface/web/dns/form/dns_rp.tform.php
+++ b/interface/web/dns/form/dns_rp.tform.php
@@ -129,6 +129,10 @@
 		'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 368ecbf..2741a5f 100644
--- a/interface/web/dns/form/dns_srv.tform.php
+++ b/interface/web/dns/form/dns_srv.tform.php
@@ -127,6 +127,10 @@
 		'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 489c5e8..a4b7d40 100644
--- a/interface/web/dns/form/dns_txt.tform.php
+++ b/interface/web/dns/form/dns_txt.tform.php
@@ -126,6 +126,10 @@
 		'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 5bd9c33..b2a3a98 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["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 c56d558..939952d 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_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 46f73a3..35c0e04 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_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 96061b2..ea67106 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["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 0fb7f45..7a954b0 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_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 d61f592..298568c 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["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 9e0e1e1..1567811 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_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 1219a96..e9ed6ae 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_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 e705d9f..d3e76e7 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_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 c50b721..a90be03 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["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 af43605..b70b8b1 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_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

--
Gitblit v1.9.1