Skip to content

dateutils

Get configuration data.

get_datetime_data(datetime_obj=None)

Returns current datetime data as dictionary.

Parameters:

Name Type Description Default
datetime_obj datetime

Specific datetime object

None

Returns:

Name Type Description
dict

prepared date & time data

Available keys

"d" - in shortest possible way. "dd" - with 2 digits. "ddd" - shortened week day. e.g.: Mon, ... "dddd" - full name of week day. e.g.: Monday, ... "m" - in shortest possible way. e.g.: 1 if January "mm" - with 2 digits. "mmm" - shortened month name. e.g.: Jan, ... "mmmm" - full month name. e.g.: January, ... "yy" - shortened year. e.g.: 19, 20, ... "yyyy" - full year. e.g.: 2019, 2020, ... "H" - shortened hours. "HH" - with 2 digits. "h" - shortened hours. "hh" - with 2 digits. "ht" - AM or PM. "M" - shortened minutes. "MM" - with 2 digits. "S" - shortened seconds. "SS" - with 2 digits.

Source code in client/ayon_core/lib/dateutils.py
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
def get_datetime_data(datetime_obj=None):
    """Returns current datetime data as dictionary.

    Args:
        datetime_obj (datetime): Specific datetime object

    Returns:
        dict: prepared date & time data

    Available keys:
        "d" - <Day of month number> in shortest possible way.
        "dd" - <Day of month number> with 2 digits.
        "ddd" - <Week day name> shortened week day. e.g.: `Mon`, ...
        "dddd" - <Week day name> full name of week day. e.g.: `Monday`, ...
        "m" - <Month number> in shortest possible way. e.g.: `1` if January
        "mm" - <Month number> with 2 digits.
        "mmm" - <Month name> shortened month name. e.g.: `Jan`, ...
        "mmmm" - <Month name> full month name. e.g.: `January`, ...
        "yy" - <Year number> shortened year. e.g.: `19`, `20`, ...
        "yyyy" - <Year number> full year. e.g.: `2019`, `2020`, ...
        "H" - <Hours number 24-hour> shortened hours.
        "HH" - <Hours number 24-hour> with 2 digits.
        "h" - <Hours number 12-hour> shortened hours.
        "hh" - <Hours number 12-hour> with 2 digits.
        "ht" - <Midday type> AM or PM.
        "M" - <Minutes number> shortened minutes.
        "MM" - <Minutes number> with 2 digits.
        "S" - <Seconds number> shortened seconds.
        "SS" - <Seconds number> with 2 digits.
    """

    if not datetime_obj:
        datetime_obj = datetime.datetime.now()

    year = datetime_obj.strftime("%Y")

    month = datetime_obj.strftime("%m")
    month_name_full = datetime_obj.strftime("%B")
    month_name_short = datetime_obj.strftime("%b")
    day = datetime_obj.strftime("%d")

    weekday_full = datetime_obj.strftime("%A")
    weekday_short = datetime_obj.strftime("%a")

    hours = datetime_obj.strftime("%H")
    hours_midday = datetime_obj.strftime("%I")
    hour_midday_type = datetime_obj.strftime("%p")
    minutes = datetime_obj.strftime("%M")
    seconds = datetime_obj.strftime("%S")

    return {
        "d": str(int(day)),
        "dd": str(day),
        "ddd": weekday_short,
        "dddd": weekday_full,
        "m": str(int(month)),
        "mm": str(month),
        "mmm": month_name_short,
        "mmmm": month_name_full,
        "yy": str(year[2:]),
        "yyyy": str(year),
        "H": str(int(hours)),
        "HH": str(hours),
        "h": str(int(hours_midday)),
        "hh": str(hours_midday),
        "ht": hour_midday_type,
        "M": str(int(minutes)),
        "MM": str(minutes),
        "S": str(int(seconds)),
        "SS": str(seconds),
    }

get_timestamp(datetime_obj=None)

Get standardized timestamp from datetime object.

Parameters:

Name Type Description Default
datetime_obj datetime

Object of datetime. Current time is used if not passed.

None
Source code in client/ayon_core/lib/dateutils.py
79
80
81
82
83
84
85
86
87
88
89
90
91
def get_timestamp(datetime_obj=None):
    """Get standardized timestamp from datetime object.

    Args:
        datetime_obj (datetime.datetime): Object of datetime. Current time
            is used if not passed.
    """

    if datetime_obj is None:
        datetime_obj = datetime.datetime.now()
    return datetime_obj.strftime(
        "%Y%m%dT%H%M%SZ"
    )