From a8ab61eeb0beac52d5a1e8c41d549df4ed87bf71 Mon Sep 17 00:00:00 2001
From: Till Brehm <tbrehm@ispconfig.org>
Date: Fri, 29 Jan 2016 10:13:44 -0500
Subject: [PATCH] Added allowempty setting to ISEMAIL validator.

---
 interface/lib/classes/tform_base.inc.php |   23 ++++++++++++++---------
 1 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/interface/lib/classes/tform_base.inc.php b/interface/lib/classes/tform_base.inc.php
index bc995c1..4405de4 100644
--- a/interface/lib/classes/tform_base.inc.php
+++ b/interface/lib/classes/tform_base.inc.php
@@ -974,16 +974,21 @@
 					}
 				}
 			case 'ISEMAIL':
-				if(function_exists('filter_var')) {
-					if(filter_var($field_value, FILTER_VALIDATE_EMAIL) === false) {
-						$errmsg = $validator['errmsg'];
-						if(isset($this->wordbook[$errmsg])) {
-							$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
-						} else {
-							$this->errorMessage .= $errmsg."<br />\r\n";
+				if($validator['allowempty'] != 'y') $validator['allowempty'] = 'n';
+				if($validator['allowempty'] == 'y' && $field_value == '') {
+					//* Do nothing
+				} else {
+					if(function_exists('filter_var')) {
+						if(filter_var($field_value, FILTER_VALIDATE_EMAIL) === false) {
+							$errmsg = $validator['errmsg'];
+							if(isset($this->wordbook[$errmsg])) {
+								$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
+							} else {
+								$this->errorMessage .= $errmsg."<br />\r\n";
+							}
 						}
-					}
-				} else $this->errorMessage .= "function filter_var missing <br />\r\n";
+					} else $this->errorMessage .= "function filter_var missing <br />\r\n";
+				}
 				break;
 			case 'ISINT':
 				if(function_exists('filter_var') && $field_value < 2147483647) {

--
Gitblit v1.9.1