BajaCloud/interviewPackagers.py

63 lines
1.7 KiB
Python

from ReadDB import ReadDatabase
def getSchedulePackager():
"""
Packages up the response for a http response
``REQUIRES``: None
``PROMISES``: ``JSON`` http response ready
``Develop in part by``: Brock T
``Contact``: darkicewolf50@gmail.ocm
"""
return {
"interviewDates": ReadDatabase()
}
from WriteDB import AppendAppointment
from email_validator import validate_email, EmailNotValidError
def SelectAppointment (appointmentJson):
"""
Packages up a response for a http request
``REQUIRES``: ``JSON`` with the data of interviewee name, date, starttime and interviewee email
``PROMISES``: ``JSON`` Returns if the booking was a success
``Developed in part by``: Brock
``Contact``: darkicewolf50@gmail.com
"""
"""
Example of an incoming http post body
{
"intervieweeName": "Brock",
"date": "2024-09-16",
"startTime": "10:30:00",
"intervieweeEmail": "darkicewolf50@gmail.com"
}
"""
try:
validEmail = validate_email(appointmentJson["intervieweeEmail"], check_deliverability=True)
if validEmail:
status = AppendAppointment(date=appointmentJson["date"], start_time=appointmentJson["startTime"], interviewee_name=appointmentJson["intervieweeName"], interviewee_email=appointmentJson["intervieweeEmail"])
if status:
resBody = {"Success": True, "validEmail": "true"}
else:
resBody = {"Success": False, "validEmail": "true"}
# resBody["message"] = appointmentJson for testing
return resBody
except EmailNotValidError as e:
return {"Success": False, "validEmail": "false"}