From 6ff802f6046f2e8a5b80e55e530179593ea29e7e Mon Sep 17 00:00:00 2001
From: HamodiGit <ahmad.ahmad1@ucalgary.ca>
Date: Sat, 30 Nov 2024 13:37:30 -0700
Subject: [PATCH] Fixed the code for date which caused issues, create a new
 file to ensure WriteDB and SendEmail work from any script

---
 TestBookAppointment.py                 |  11 +++++++++++
 WriteDB.py                             |   9 +++++----
 __pycache__/WriteDB.cpython-312.pyc    | Bin 0 -> 5852 bytes
 __pycache__/send_email.cpython-312.pyc | Bin 2065 -> 4134 bytes
 interview_database.xlsx                | Bin 5586 -> 5561 bytes
 send_email.py                          |   5 +++--
 6 files changed, 19 insertions(+), 6 deletions(-)
 create mode 100644 TestBookAppointment.py
 create mode 100644 __pycache__/WriteDB.cpython-312.pyc

diff --git a/TestBookAppointment.py b/TestBookAppointment.py
new file mode 100644
index 0000000..f076d51
--- /dev/null
+++ b/TestBookAppointment.py
@@ -0,0 +1,11 @@
+from WriteDB import AppendAppointment
+
+def TestBookAppointment():
+    date_1 = "2024-09-16"
+    start_time_1 = "10:30:00"
+    interviewee_name_1 = "Alice Johnson"
+    interviewee_email_1 = "ahmadmuhammadofficial@gmail.com"
+    print(f"\nTest Case 1: Trying to book {date_1} at {start_time_1} for {interviewee_name_1} ({interviewee_email_1})")
+    AppendAppointment(date_1, start_time_1, interviewee_name_1, interviewee_email_1)
+
+TestBookAppointment()  
\ No newline at end of file
diff --git a/WriteDB.py b/WriteDB.py
index 9073367..cf9ad46 100644
--- a/WriteDB.py
+++ b/WriteDB.py
@@ -1,7 +1,7 @@
 import pandas as pd
 import json
 from openpyxl import load_workbook
-#from send_email import send_email
+from send_email import send_email
 from filelock import FileLock 
 
 # Define the path to the Excel file and the lock file
@@ -93,7 +93,7 @@ def AppendAppointment(date, start_time, interviewee_name, interviewee_email):
                     email_cell.value = updated_emails
 
                     workbook.save(file_path)
-                    #send_email(interviewee_email, interviewee_name, date, start_time)
+                    send_email(interviewee_email, interviewee_name, date, start_time)
                     return True
 
     # If no slots available, return that the slot is unavailable
@@ -116,7 +116,7 @@ def run_tests():
     date_1 = "2024-09-16"
     start_time_1 = "10:30:00"
     interviewee_name_1 = "Alice Johnson"
-    interviewee_email_1 = "alice.johnson@example.com"
+    interviewee_email_1 = "ahmadmuhammadofficial@gmail.com"
     print(f"\nTest Case 1: Trying to book {date_1} at {start_time_1} for {interviewee_name_1} ({interviewee_email_1})")
     AppendAppointment(date_1, start_time_1, interviewee_name_1, interviewee_email_1)
 
@@ -137,4 +137,5 @@ def run_tests():
     AppendAppointment(date_3, start_time_3, interviewee_name_3, interviewee_email_3)
 
 # Run tests
-run_tests()
+if __name__ == "__main__":
+    run_tests()
diff --git a/__pycache__/WriteDB.cpython-312.pyc b/__pycache__/WriteDB.cpython-312.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..401e4ac5dc3fe01ea4c805117385b742890ecc71
GIT binary patch
literal 5852
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

literal 0
HcmV?d00001

diff --git a/__pycache__/send_email.cpython-312.pyc b/__pycache__/send_email.cpython-312.pyc
index 4cab579e27d0da1d8f4af79c05bf197ee0b4b311..1b561ac4a65d1d012b1201b20a480d9c42bded85 100644
GIT binary patch
literal 4134
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
MGL-v>mVh<?0>;F4jsO4v

delta 822
zcmZ8fO-vI(6n?Wm-F9}j1-2NJ1Q+=!)q-HapjHztiP(6Pm_R(xu$zX4AG0l%npr3b
z#>9AO<^T!dYGOEO;)RO`!qH0;J&+o_dadEc$+s<=8ecNsy!qa@Z@#y?AIwTy_?xa%
zz}WbGGy64A33rjZmDu2A*^;)&oGgGXA9!U90wod;RNnP%E=WzLfeNCC>+BZ+*a3^U
z5-!;i+&}@DX81i^g~?2@#3a%T_P~;uv<Lela<a!+0nC&}7GwnLAtoSFCL*f)iW_7~
zZrr=>zbME)!Ge}{AT&=07X}D~_ziNk!_uv=Uvon&lv8<?T$v_-sqQyu?dUb&%Nv?V
ztLA5@0VZVy^wrMi#Q`ytGrXpo1PYzL$ci+EZS#h;+V|y_uaeORg-gD!ADk|i{_|W1
zqxgD+mVOp2!=)RvWHk38DZ;uq3q=x-W_oa3lbRUM>@U62W5PelNmZV*GmiOsC_yP_
zfrL0WLb;|)T&MJroiCV<oy|B_K0#+!*BtZ7O2KwsE!stM#?CC)<d;jC#TC9ypA(Ju
zsPjbSo9ZM#Qb+lWW^|}%+`H}~&WBTcOS{wCi?sJW@&+0zL%j{6qvfY3?Zf5tN!M^y
z>f{Uht$PrOR-^q@W1tRXaQtL^^7HM(=wa^gMID4R8LNw;K31Np2SE<LO>d>&ukT8`
z+3%6TA5x5$!#mwa`osGv6^_+VDj^<6!>O2f9FsAROFS7dX^oU>WIY~mG|nOu)1Il1
zaE1tuiEtiFF0Wc^OZEdNjz@F~`EG=|NC^1};Zqnnh5j??8cF=YKZK}nG-n9we*uIy
BqUrzu

diff --git a/interview_database.xlsx b/interview_database.xlsx
index 97233833ab09eebf643dd0669e9b1acd5f50fbfd..e89113f5c38b9a9b4902fede8d683f4b19794584 100644
GIT binary patch
delta 2738
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

delta 2762
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
PK`0Uts>&M=`PKa&qde99

diff --git a/send_email.py b/send_email.py
index 3a82b6d..736b75d 100644
--- a/send_email.py
+++ b/send_email.py
@@ -20,7 +20,7 @@ def send_email(interviewee_email="darkicewolf50@gmail.com", interviewee_name="br
     mst = pytz.timezone("America/Edmonton")  # MST with Daylight Savings considered
 
     # Parse the input date and time, localize to MST
-    start_datetime = mst.localize(datetime.strptime(f"{date} {start_time}", "%d-%m-%Y %I:%M %p"))
+    start_datetime = mst.localize(datetime.strptime(f"{date} {start_time}", "%Y-%m-%d %H:%M:%S"))
     end_datetime = start_datetime + timedelta(minutes=30)
 
     # Format date and time for the calendar URLs
@@ -78,4 +78,5 @@ def send_email(interviewee_email="darkicewolf50@gmail.com", interviewee_name="br
     except Exception as e:
         print(f"Failed to send email: {e}")
 
-send_email()
+if __name__ == "__main__":
+  send_email()