core/source/logic/condition.py

40 lines
899 B
Python
Raw Normal View History

class enum_condition(_enum.Enum):
unknown = 0
ok = 1
2023-03-04 16:00:35 +01:00
concerning = 2
critical = 3
'''
converts a condition to a human readable string
'''
def condition_show(condition):
return translation_get(
{
enum_condition.unknown: "conditions.unknown",
enum_condition.ok: "conditions.ok",
2023-03-04 16:00:35 +01:00
enum_condition.concerning: "conditions.concerning",
enum_condition.critical: "conditions.critical",
}[condition]
)
def condition_encode(condition):
return {
enum_condition.unknown: "unknown",
enum_condition.ok: "ok",
2023-03-04 16:00:35 +01:00
enum_condition.concerning: "concerning",
enum_condition.critical: "critical",
}[condition]
def condition_decode(condition_encoded):
return {
"unknown": enum_condition.unknown,
"ok": enum_condition.ok,
2023-03-04 16:00:35 +01:00
"warning": enum_condition.concerning, # deprecated
"concerning": enum_condition.concerning,
"critical": enum_condition.critical,
}[condition_encoded]