diff --git a/data/CRMEntity.php b/data/CRMEntity.php
index b0c7008f400735858e39442fb04d6804c94e6a7e..041febdb4b30334eed58687ff28bb5d25d3e3921 100644
--- a/data/CRMEntity.php
+++ b/data/CRMEntity.php
@@ -945,7 +945,7 @@ class CRMEntity {
 			$em->triggerEvent("vtiger.entity.beforesave.modifiable", $entityData);
 			$em->triggerEvent("vtiger.entity.beforesave", $entityData);
 			$em->triggerEvent("vtiger.entity.beforesave.final", $entityData);
-		}
+        }
 		//Event triggering code ends
 
 		//GS Save entity being called with the modulename as parameter
diff --git a/include/fields/DateTimeField.php b/include/fields/DateTimeField.php
index 56cdfb0e7f80a0782a8e807ca54c9854788314cc..4425c3a36170f80b3d955aac46106cc95e4cb0af 100644
--- a/include/fields/DateTimeField.php
+++ b/include/fields/DateTimeField.php
@@ -83,8 +83,10 @@ class DateTimeField {
         if (empty($user)) {
             $user = $current_user;
         }
-
-        $format = $current_user->date_format;
+        if (preg_match("/^[0-9]{2,4}[-][0-1]{1,2}?[0-9]{1,2}[-][0-3]{1,2}?[0-9]{1,2}$/", $date) == 1) {
+            return $date;
+        }
+        $format = $user->date_format;
         if (empty($format)) {
             if (false !== strpos($date, '.')) {
 				$format = 'dd.mm.yyyy';
diff --git a/include/utils/utils.php b/include/utils/utils.php
index 7dd268dcda2779ac3f73d941474498256b530e02..fd46ecd56a0221215a96a1177a30d1737b4a9a99 100755
--- a/include/utils/utils.php
+++ b/include/utils/utils.php
@@ -1786,40 +1786,9 @@ function isRecordExists($recordId) {
 function getValidDBInsertDateValue($value) {
 	global $log;
 	$log->debug("Entering getValidDBInsertDateValue(".$value.") method ...");
-	$value = trim($value);
-	$delim = array('/','.');
-	foreach ($delim as $delimiter){
-		$x = strpos($value, $delimiter);
-		if($x === false) continue;
-		else{
-			if (false !== strpos($value, '-')) {
-				$value = str_replace($delimiter, '-', $value);
-			}
-			break;
-		}
-	}
-	if (false !== strpos($value, '.')) {
-		list($y, $m, $d) = explode('.', $value);
-	} else if (false !== strpos($value, '/')) {
-		list($y, $m, $d) = explode('/', $value);
-	} else {
-		list($y, $m, $d) = explode('-', $value);
-	}
-	if(strlen($y) == 1) $y = '0'.$y;
-	if(strlen($m) == 1) $m = '0'.$m;
-	if(strlen($d) == 1) $d = '0'.$d;
-	$value = implode('-', array($y,$m,$d));
-
-	if(strlen($y)<4){
-		$insert_date = DateTimeField::convertToDBFormat($value);
-	} else {
-		$insert_date = $value;
-	}
-
-	if (preg_match("/^[0-9]{2,4}[-][0-1]{1,2}?[0-9]{1,2}[-][0-3]{1,2}?[0-9]{1,2}$/", $insert_date) == 0) {
-		return '';
-	}
-
+	
+    $insert_date = DateTimeField::convertToDBFormat($value);
+	
 	$log->debug("Exiting getValidDBInsertDateValue method ...");
 	return $insert_date;
 		}