diff --git a/frappe/utils/data.py b/frappe/utils/data.py index 03214df80e..d6618d3b07 100644 --- a/frappe/utils/data.py +++ b/frappe/utils/data.py @@ -26,9 +26,9 @@ def getdate(string_date=None): """ Coverts string date (yyyy-mm-dd) to datetime.date object """ + if not string_date: return get_datetime().date() - if isinstance(string_date, datetime.datetime): return string_date.date() @@ -38,7 +38,6 @@ def getdate(string_date=None): # dateutil parser does not agree with dates like 0000-00-00 if not string_date or string_date=="0000-00-00": return None - return parser.parse(string_date).date() def get_datetime(datetime_str=None): @@ -199,7 +198,6 @@ def get_time(time_str): def get_datetime_str(datetime_obj): if isinstance(datetime_obj, string_types): datetime_obj = get_datetime(datetime_obj) - return datetime_obj.strftime(DATETIME_FORMAT) def get_user_format(): @@ -226,11 +224,11 @@ def formatdate(string_date=None, format_string=None): date = getdate(string_date) if not format_string: format_string = get_user_format().replace("mm", "MM") - try: formatted_date = babel.dates.format_date(date, format_string, locale=(frappe.local.lang or "").replace("-", "_")) except UnknownLocaleError: - formatted_date = date.strftime("%Y-%m-%d") + format_string = format_string.replace("MM", "%m").replace("dd", "%d").replace("yyyy", "%Y") + formatted_date = date.strftime(format_string) return formatted_date def format_time(txt):