From 7d52e00a51450bc4a080d4e21b7dda02c0a65191 Mon Sep 17 00:00:00 2001
From: Marius Cramer <m.cramer@pixcept.de>
Date: Thu, 14 Nov 2013 05:42:06 -0500
Subject: [PATCH] Fixed list sorting
---
interface/web/dns/form/dns_soa.tform.php | 81 +++++++++++++++++++++++++++++++++++-----
1 files changed, 71 insertions(+), 10 deletions(-)
diff --git a/interface/web/dns/form/dns_soa.tform.php b/interface/web/dns/form/dns_soa.tform.php
index 66ac103..ebc49cf 100644
--- a/interface/web/dns/form/dns_soa.tform.php
+++ b/interface/web/dns/form/dns_soa.tform.php
@@ -29,9 +29,15 @@
Hint:
The ID field of the database table is not part of the datafield definition.
The ID field must be always auto incement (int or bigint).
+
+ Search:
+ - searchable = 1 or searchable = 2 include the field in the search
+ - searchable = 1: this field will be the title of the search result
+ - searchable = 2: this field will be included in the description of the search result
*/
+global $app;
$form["title"] = "DNS Zone";
$form["description"] = "";
@@ -77,44 +83,68 @@
'origin' => array (
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
+ 'filters' => array( 0 => array( 'event' => 'SAVE',
+ 'type' => 'IDNTOASCII'),
+ 1 => array( 'event' => 'SHOW',
+ 'type' => 'IDNTOUTF8'),
+ 2 => array( 'event' => 'SAVE',
+ 'type' => 'TOLOWER')
+ ),
'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY',
'errmsg'=> 'origin_error_empty'),
1 => array ( 'type' => 'UNIQUE',
'errmsg'=> 'origin_error_unique'),
2 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-\/]{2,255}\.[a-zA-Z]{2,10}[\.]{0,1}$/',
+ 'regex' => '/^[\w\.\-\/]{2,255}\.[a-zA-Z0-9\-]{2,30}[\.]{0,1}$/',
'errmsg'=> 'origin_error_regex'),
),
'default' => '',
'value' => '',
'width' => '30',
- 'maxlength' => '255'
+ 'maxlength' => '255',
+ 'searchable' => 1
),
'ns' => array (
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
+ 'filters' => array( 0 => array( 'event' => 'SAVE',
+ 'type' => 'IDNTOASCII'),
+ 1 => array( 'event' => 'SHOW',
+ 'type' => 'IDNTOUTF8'),
+ 2 => array( 'event' => 'SAVE',
+ 'type' => 'TOLOWER')
+ ),
'validators' => array ( 0 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-]{1,64}$/',
+ 'regex' => '/^[\w\.\-]{1,255}$/',
'errmsg'=> 'ns_error_regex'),
),
'default' => '',
'value' => '',
'width' => '30',
- 'maxlength' => '255'
+ 'maxlength' => '255',
+ 'searchable' => 2
),
'mbox' => array (
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
+ 'filters' => array( 0 => array( 'event' => 'SAVE',
+ 'type' => 'IDNTOASCII'),
+ 1 => array( 'event' => 'SHOW',
+ 'type' => 'IDNTOUTF8'),
+ 2 => array( 'event' => 'SAVE',
+ 'type' => 'TOLOWER')
+ ),
'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY',
'errmsg'=> 'mbox_error_empty'),
1 => array ( 'type' => 'REGEX',
- 'regex' => '/^[[a-zA-Z0-9\.\-\_]{0,64}\.$/',
+ 'regex' => '/^[[a-zA-Z0-9\.\-\_]{0,255}\.$/',
'errmsg'=> 'mbox_error_regex'),
),
'default' => '',
'value' => '',
'width' => '30',
- 'maxlength' => '255'
+ 'maxlength' => '255',
+ 'searchable' => 2
),
'serial' => array (
'datatype' => 'INTEGER',
@@ -127,7 +157,11 @@
'refresh' => array (
'datatype' => 'INTEGER',
'formtype' => 'TEXT',
- 'default' => '28800',
+ 'validators' => array ( 0 => array ( 'type' => 'RANGE',
+ 'range' => '60:',
+ 'errmsg'=> 'refresh_range_error'),
+ ),
+ 'default' => '7200',
'value' => '',
'width' => '10',
'maxlength' => '10'
@@ -135,7 +169,11 @@
'retry' => array (
'datatype' => 'INTEGER',
'formtype' => 'TEXT',
- 'default' => '7200',
+ 'validators' => array ( 0 => array ( 'type' => 'RANGE',
+ 'range' => '60:',
+ 'errmsg'=> 'retry_range_error'),
+ ),
+ 'default' => '540',
'value' => '',
'width' => '10',
'maxlength' => '10'
@@ -143,6 +181,10 @@
'expire' => array (
'datatype' => 'INTEGER',
'formtype' => 'TEXT',
+ 'validators' => array ( 0 => array ( 'type' => 'RANGE',
+ 'range' => '60:',
+ 'errmsg'=> 'expire_range_error'),
+ ),
'default' => '604800',
'value' => '',
'width' => '10',
@@ -151,6 +193,10 @@
'minimum' => array (
'datatype' => 'INTEGER',
'formtype' => 'TEXT',
+ 'validators' => array ( 0 => array ( 'type' => 'RANGE',
+ 'range' => '60:',
+ 'errmsg'=> 'minimum_range_error'),
+ ),
'default' => '86400',
'value' => '',
'width' => '10',
@@ -159,7 +205,11 @@
'ttl' => array (
'datatype' => 'INTEGER',
'formtype' => 'TEXT',
- 'default' => '86400',
+ 'validators' => array ( 0 => array ( 'type' => 'RANGE',
+ 'range' => '60:',
+ 'errmsg'=> 'ttl_range_error'),
+ ),
+ 'default' => '3600',
'value' => '',
'width' => '10',
'maxlength' => '10'
@@ -167,6 +217,11 @@
'xfer' => array (
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
+ 'validators' => array ( 0 => array ( 'type' => 'ISIP',
+ 'allowempty' => 'y',
+ 'separator' => ',',
+ 'errmsg'=> 'xfer_error_regex'),
+ ),
'default' => '',
'value' => '',
'width' => '30',
@@ -175,6 +230,12 @@
'also_notify' => array (
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
+ 'validators' => array ( 0 => array ( 'type' => 'ISIP',
+ 'allowempty' => 'y',
+ 'separator' => ',',
+ 'errmsg'=> 'also_notify_error_regex'
+ ),
+ ),
'default' => '',
'value' => '',
'width' => '30',
@@ -218,7 +279,7 @@
'class' => 'plugin_listview',
'options' => array(
'listdef' => 'list/dns_a.list.php',
- 'sqlextwhere' => "zone = ".@intval(@$_REQUEST['id']),
+ 'sqlextwhere' => "zone = ".@$app->functions->intval(@$_REQUEST['id']),
'sql_order_by' => "ORDER BY type, name"
)
)
--
Gitblit v1.9.1