date module update
This commit is contained in:
parent
e9a853c31a
commit
784409cef6
@ -23,10 +23,39 @@ async def handle_command(room, message, bot, prefix, config):
|
||||
if match.is_not_from_this_bot() and match.prefix() and match.command("date"):
|
||||
logging.info("Fetching current date and time")
|
||||
current_datetime = datetime.datetime.now()
|
||||
|
||||
# Extract individual date components
|
||||
day_of_week = current_datetime.strftime("%A")
|
||||
date_of_month = current_datetime.strftime("%d") # Day with leading zero
|
||||
month = current_datetime.strftime("%B")
|
||||
year = current_datetime.strftime("%Y")
|
||||
time = current_datetime.strftime("%I:%M:%S %p")
|
||||
date_message = f"📅 Today is **{day_of_week}** of **{month}** in **{year}**. The time is **⏰ {time}**"
|
||||
|
||||
# Format date with ordinal suffix
|
||||
date_with_ordinal = f"{date_of_month}{get_ordinal_suffix(date_of_month)}"
|
||||
|
||||
# Construct the message
|
||||
date_message = f"Date: **{day_of_week}** the {date_with_ordinal}, **{month} {year}**. \nTime: **⏰ {time}**"
|
||||
|
||||
await bot.api.send_markdown_message(room.room_id, date_message)
|
||||
logging.info("Sent current date and time to the room")
|
||||
|
||||
|
||||
def get_ordinal_suffix(day_of_month):
|
||||
"""
|
||||
Helper function to get the ordinal suffix for a day number.
|
||||
|
||||
Args:
|
||||
day_of_month (str): The day number as a string (e.g., "1", "13")
|
||||
|
||||
Returns:
|
||||
str: The ordinal suffix (e.g., "st", "th", "nd")
|
||||
"""
|
||||
if day_of_month.endswith("11") or day_of_month.endswith("12") or day_of_month.endswith("13"):
|
||||
return "th"
|
||||
elif day_of_month.endswith("1") or day_of_month.endswith("3"):
|
||||
return "st"
|
||||
elif day_of_month.endswith("2"):
|
||||
return "nd"
|
||||
else:
|
||||
return "th"
|
||||
|
Loading…
Reference in New Issue
Block a user