commit f3dc2783f0327776a62468987b2d76cce5b94205
parent d73b0d2765ec641e5e3d232733d91de07c5fdf97
Author: Carlosokumu <carlosokumu254@gmail.com>
Date: Mon, 25 Aug 2025 14:24:17 +0300
extend ArgsParser:
- add an email regex for checking valid emails
-extend _get_user_updates_from_args to check if the provided contact is an email,if so add a mailto as ALTREP.
Diffstat:
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/calendarapp/cmd/args_parser.py b/calendarapp/cmd/args_parser.py
@@ -9,6 +9,8 @@ from calendarapp.logging.logging_manager import LoggingManager
class ArgsParser:
+ EMAIL_RE = re.compile(r"^[^@]+@[^@]+\.[^@]+$")
+
def __init__(self):
self.parser = argparse.ArgumentParser(
description="Create a customized iCalendar (.ics) event"
@@ -283,8 +285,11 @@ class ArgsParser:
if args.organizer: updates["ORGANIZER"] = args.organizer
if args.contact:
value, params = self._process_contact_arg(args.contact)
- if params:
- updates["CONTACT"] = (value, params) # will be expanded
+ if not params and self.EMAIL_RE.match(value):
+ params = {"ALTREP": f"mailto:{value}"}
+ updates["CONTACT"] = (value, params)
+ elif params:
+ updates["CONTACT"] = (value, params)
else:
updates["CONTACT"] = value