From 6105b5fb29120b04ec637d74a09976f1252903f3 Mon Sep 17 00:00:00 2001
From: satish <satish.dvnk@vtiger.com>
Date: Mon, 12 Sep 2016 17:29:50 +0530
Subject: [PATCH] Fixes #228 - Date time range search(list column search) is
 not proper due to timezone conversion (such as search in created time and
 modified time)

---
 include/QueryGenerator/QueryGenerator.php | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/include/QueryGenerator/QueryGenerator.php b/include/QueryGenerator/QueryGenerator.php
index 5e4e13d14..24a9f0e8c 100644
--- a/include/QueryGenerator/QueryGenerator.php
+++ b/include/QueryGenerator/QueryGenerator.php
@@ -774,15 +774,15 @@ class QueryGenerator {
 							$fieldSql .= "$dateFieldColumnName $valueSql";
 						}
 					} else {
-                                                if(is_array($value)){
-                                                    $value = $value[0];
-                                                }
-                                                $values = explode(' ', $value);
-                                                if(count($values) == 2) {
-                                                        $fieldSql .= "$fieldGlue CAST(CONCAT($dateFieldColumnName,' ',$timeFieldColumnName) AS DATETIME) $valueSql ";
-                                                } else {
-                                                        $fieldSql .= "$fieldGlue $dateFieldColumnName $valueSql";
-                                                }
+						if(is_array($value)){
+							$value = $value[0];
+						}
+						$values = explode(' ', $value);
+						if(count($values) == 2) {
+								$fieldSql .= "$fieldGlue CAST(CONCAT($dateFieldColumnName,' ',$timeFieldColumnName) AS DATETIME) $valueSql ";
+						} else {
+								$fieldSql .= "$fieldGlue $dateFieldColumnName $valueSql";
+						}
 					}
 				} elseif($field->getFieldDataType() == 'datetime') {
 					$value = $conditionInfo['value'];
@@ -792,7 +792,7 @@ class QueryGenerator {
 						$startDateValue = explode(' ', $values[0]);
 						$endDateValue = explode(' ', $values[1]);
 						if($startDateValue[1] == '00:00:00' && ($endDateValue[1] == '00:00:00' || $endDateValue[1] == '23:59:59')) {
-							$fieldSql .= "$fieldGlue CAST(".$field->getTableName().'.'.$field->getColumnName()." AS DATE) $valueSql";
+							$fieldSql .= "$fieldGlue CAST(".$field->getTableName().'.'.$field->getColumnName()." AS DATETIME) $valueSql";
 						} else {
 							$fieldSql .= "$fieldGlue ".$field->getTableName().'.'.$field->getColumnName().' '.$valueSql;
 						}
-- 
GitLab