From 0ae667e6cfdd1bcc85bacf85cd93a84f99fa88f8 Mon Sep 17 00:00:00 2001
From: cfoe <cfoe@ispconfig3>
Date: Tue, 22 May 2012 04:08:05 -0400
Subject: [PATCH] added missing language string already present in default theme

---
 interface/lib/classes/tform.inc.php |   35 +++++++++++++++++++++++++++++++++--
 1 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php
index 324d5b8..648a1b4 100644
--- a/interface/lib/classes/tform.inc.php
+++ b/interface/lib/classes/tform.inc.php
@@ -364,7 +364,12 @@
                         $record = $this->decode($record,$tab);
                         if(is_array($record)) {
                                 foreach($this->formDef['tabs'][$tab]['fields'] as $key => $field) {
-                                        $val = $record[$key];
+								
+                                        if(isset($record[$key])) {
+											$val = $record[$key];
+										} else {
+											$val = '';
+										}
 
                                         // If Datasource is set, get the data from there
                                         if(isset($field['datasource']) && is_array($field['datasource'])) {
@@ -478,7 +483,11 @@
                                         break;
 
                                         default:
+											if(isset($record[$key])) {
                                                 $new_record[$key] = htmlspecialchars($record[$key]);
+											} else {
+												$new_record[$key] = '';
+											}
                                         }
                                 }
                         }
@@ -760,7 +769,17 @@
                                         }
                                 break;
                                 case 'ISEMAIL':
-                                        if(!preg_match("/^\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\w+\.[a-zA-Z0-9\-]{2,30}$/i", $field_value)) {
+                                    if(function_exists('filter_var')) {
+										if(!filter_var($field_value, FILTER_VALIDATE_EMAIL)) {
+											$errmsg = $validator['errmsg'];
+                                            if(isset($this->wordbook[$errmsg])) {
+                                                $this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
+											} else {
+												$this->errorMessage .= $errmsg."<br />\r\n";
+											}
+                                        }
+									} else {
+										if(!preg_match("/^\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\w+\.[a-zA-Z0-9\-]{2,30}$/i", $field_value)) {
                                                 $errmsg = $validator['errmsg'];
                                                 if(isset($this->wordbook[$errmsg])) {
                                                     $this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
@@ -768,8 +787,19 @@
 													$this->errorMessage .= $errmsg."<br />\r\n";
 												}
                                         }
+									}
                                 break;
                                 case 'ISINT':
+									if(function_exists('filter_var')) {
+										if(!filter_var($field_value, FILTER_VALIDATE_INT)) {
+											$errmsg = $validator['errmsg'];
+                                            if(isset($this->wordbook[$errmsg])) {
+                                                $this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
+											} else {
+												$this->errorMessage .= $errmsg."<br />\r\n";
+											}
+                                        }
+									} else {
                                         $tmpval = intval($field_value);
                                         if($tmpval === 0 and !empty($field_value)) {
                                                 $errmsg = $validator['errmsg'];
@@ -779,6 +809,7 @@
 													$this->errorMessage .= $errmsg."<br />\r\n";
 												}
                                         }
+									}
                                 break;
                                 case 'ISPOSITIVE':
                                         if(!is_numeric($field_value) || $field_value <= 0){

--
Gitblit v1.9.1