initial commit
This commit is contained in:
42
custom_components/truenas/helper.py
Normal file
42
custom_components/truenas/helper.py
Normal file
@@ -0,0 +1,42 @@
|
||||
"""Helper functions"""
|
||||
from pytz import utc
|
||||
from datetime import datetime
|
||||
|
||||
DEFAULT_TIME_ZONE = None
|
||||
|
||||
|
||||
# ---------------------------
|
||||
# format_attribute
|
||||
# ---------------------------
|
||||
def format_attribute(attr):
|
||||
res = attr.replace("_", " ")
|
||||
res = res.replace("-", " ")
|
||||
res = res.capitalize()
|
||||
res = res.replace("zfs", "ZFS")
|
||||
res = res.replace(" gib", " GiB")
|
||||
res = res.replace("Cpu ", "CPU ")
|
||||
res = res.replace("Vcpu ", "vCPU ")
|
||||
res = res.replace("Vmware ", "VMware ")
|
||||
res = res.replace("Ip4 ", "IP4 ")
|
||||
res = res.replace("Ip6 ", "IP6 ")
|
||||
return res
|
||||
|
||||
|
||||
# ---------------------------
|
||||
# as_local
|
||||
# ---------------------------
|
||||
def as_local(dattim: datetime) -> datetime:
|
||||
"""Convert a UTC datetime object to local time zone"""
|
||||
if dattim.tzinfo == DEFAULT_TIME_ZONE:
|
||||
return dattim
|
||||
if dattim.tzinfo is None:
|
||||
dattim = utc.localize(dattim)
|
||||
|
||||
return dattim.astimezone(DEFAULT_TIME_ZONE)
|
||||
|
||||
|
||||
# ---------------------------
|
||||
# b2gib
|
||||
# ---------------------------
|
||||
def b2gib(b: int) -> float:
|
||||
return round(b / 1073741824, 2)
|
||||
Reference in New Issue
Block a user