 	initValue: ->
 		super()
 		value = @getValue()
-		corrected_value = @parseValue(value, "store")
-		if corrected_value and corrected_value != value
-			console.warn("CUI.DateTime.initValue: Corrected value in data:", corrected_value, "Original value:", value)
-			@__data[@_name] = corrected_value
+		parsedValue = @parseValue(value, "store")
+		if parsedValue
+			# When the parsedValue and the value are different in a display format, it means that there is something wrong.
+			# We do not compare only the store value because they can be different but represent the same value if they have different timezones.
+			_value = @format(value)
+			_parsedValue = @format(parsedValue)
+			if _parsedValue != _value
+				console.warn("CUI.DateTime.initValue: Corrected value in data:", parsedValue, "Original value:", value)
+				@__data[@_name] = parsedValue
 		@
 
 	getValueForDisplay: ->

	# format the date_str
	# output_format "display_short", "display", "store", "input"
	# output_type "date_time", "date", "date_time_secons", "year_month",v "year"
	@format: (datestr_or_moment, output_format, output_type) ->
		dt = new CUI.DateTime()
		str = dt.format(datestr_or_moment, output_format, output_type)
		# console.debug "DateTime.format", date, type, output_type, DateTime.__locale, str
		str



		switch _output_format
			when "store"
				return CUI.DateTime.formatMoment(mom, output_format[_output_format], parseZone)
			else
				return CUI.DateTime.formatMomentWithBc(mom, output_format[_output_format])

