From 637939b78354297d90cad907bf748b7440d6dbce Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Wed, 05 Dec 2012 03:24:01 -0500
Subject: [PATCH] Fixed: FS#2568 - ISPConfig 3.0.5 mailbox Speicher Error

---
 interface/web/mail/form/mail_user.tform.php |    2 +-
 interface/lib/classes/tform.inc.php         |    4 ++--
 interface/lib/classes/functions.inc.php     |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/interface/lib/classes/functions.inc.php b/interface/lib/classes/functions.inc.php
index 0801c1c..a79942d 100644
--- a/interface/lib/classes/functions.inc.php
+++ b/interface/lib/classes/functions.inc.php
@@ -303,7 +303,7 @@
 	}
 
     public function intval($string, $force_numeric = false) {
-        if(intval($string) == 2147483647) {
+        if(intval($string) == 2147483647 || ($string > 0 && intval($string) < 0)) {
             if($force_numeric == true) return floatval($string);
             elseif(preg_match('/^([-]?)[0]*([1-9][0-9]*)([^0-9].*)*$/', $string, $match)) return $match[1].$match[2];
             else return 0;
diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php
index b0b727c..c51e3e1 100644
--- a/interface/lib/classes/tform.inc.php
+++ b/interface/lib/classes/tform.inc.php
@@ -687,7 +687,7 @@
 										}
                                 break;
                                 case 'INTEGER':
-                                        $new_record[$key] = (isset($record[$key]))?$app->functions->intval($record[$key]):0;
+										$new_record[$key] = (isset($record[$key]))?$app->functions->intval($record[$key]):0;
                                         //if($new_record[$key] != $record[$key]) $new_record[$key] = $field['default'];
                                         //if($key == 'refresh') die($record[$key]);
                                 break;
@@ -856,7 +856,7 @@
 									}
                                 break;
                                 case 'ISINT':
-									if(function_exists('filter_var')) {
+									if(function_exists('filter_var') && $field_value < 2147483647) {
 										if($field_value != '' && filter_var($field_value, FILTER_VALIDATE_INT) === false) {
 											$errmsg = $validator['errmsg'];
 											if(isset($this->wordbook[$errmsg])) {
diff --git a/interface/web/mail/form/mail_user.tform.php b/interface/web/mail/form/mail_user.tform.php
index 16543ca..94d35bf 100644
--- a/interface/web/mail/form/mail_user.tform.php
+++ b/interface/web/mail/form/mail_user.tform.php
@@ -134,7 +134,7 @@
 			'searchable' => 2
 		),
 		'quota' => array (
-			'datatype'	=> 'INTEGER',
+			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'TEXT',
 			'validators'	=> array ( 	0 => array (	'type'	=> 'ISINT',
 														'errmsg'=> 'quota_error_isint'),

--
Gitblit v1.9.1