X-Git-Url: https://wannabe.guru.org/gitweb/?a=blobdiff_plain;f=utils.py;fp=utils.py;h=0000000000000000000000000000000000000000;hb=477c84bcdefc573278ec8ed8974d5be8baac562d;hp=98238a1f43e7ec9133122d0f8e0262b5812603b1;hpb=55bcd1ba1b9d481e0d0dc604932bcc0f7f4fa127;p=kiosk.git diff --git a/utils.py b/utils.py deleted file mode 100644 index 98238a1..0000000 --- a/utils.py +++ /dev/null @@ -1,108 +0,0 @@ -#!/usr/bin/env python3 - -import time -import logging -import os -from datetime import datetime - -import constants - - -logger = logging.getLogger(__file__) - - -def timestamp() -> str: - t = datetime.fromtimestamp(time.time()) - return t.strftime("%d/%b/%Y:%H:%M:%S%Z") - - -def describe_age_of_file(filename: str) -> str: - try: - now = time.time() - ts = os.stat(filename).st_ctime - age = now - ts - age = int(age) - return describe_duration(age) - except Exception as e: - logger.exception(e) - return "?????" - - -def describe_age_of_file_briefly(filename: str) -> str: - try: - now = time.time() - ts = os.stat(filename).st_ctime - age = now - ts - age = int(age) - return describe_duration_briefly(age) - except Exception as e: - logger.exception(e) - return "?????" - - -def describe_duration(age: int) -> str: - days = divmod(age, constants.seconds_per_day) - hours = divmod(days[1], constants.seconds_per_hour) - minutes = divmod(hours[1], constants.seconds_per_minute) - - descr = "" - if days[0] > 1: - descr = f"{int(days[0]):d} days, " - elif days[0] == 1: - descr = "1 day, " - if hours[0] > 1: - descr = descr + f"{int(hours[0]):d} hours, " - elif hours[0] == 1: - descr = descr + "1 hour, " - if len(descr) > 0: - descr = descr + "and " - if minutes[0] == 1: - descr = descr + "1 minute" - else: - descr = descr + f"{int(minutes[0]):d} minutes" - return descr - - -def describe_duration_briefly(age: int) -> str: - days = divmod(age, constants.seconds_per_day) - hours = divmod(days[1], constants.seconds_per_hour) - minutes = divmod(hours[1], constants.seconds_per_minute) - - descr = "" - if days[0] > 0: - descr = f"{int(days[0]):d}d " - if hours[0] > 0: - descr = descr + f"{int(hours[0]):d}h " - descr = descr + f"{int(minutes[0]):d}m" - return descr - - -def minute_number(hour: int, minute: int) -> int: - """Convert hour:minute into minute number from start of day.""" - return hour * 60 + minute - - -def datetime_to_minute_number(dt: datetime) -> int: - """Convert a datetime into a minute number (of the day)""" - return minute_number(dt.hour, dt.minute) - - -def minute_number_to_time_string(minute_num: int) -> str: - """Convert minute number from start of day into hour:minute am/pm - string.""" - - hour = minute_num // 60 - minute = minute_num % 60 - ampm = "a" - if hour > 12: - hour -= 12 - ampm = "p" - if hour == 12: - ampm = "p" - if hour == 0: - hour = 12 - return f"{hour:2}:{minute:02}{ampm}" - - -# x = describe_age_of_file_briefly("pages/clock_10_none.html") -# print x