+++ /dev/null
-#!/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