We are in the process of rolling out a new [url removed, login to view] that allows our customers to make appointments online by means of personal accounts. This is completed by making API calls to Google Calendar, where our technician's calendars are hosted.
We had a web developer completing the online appointment creation process, however he did not complete the job exactly to spec and has since been out of contact. We are looking for someone to take up where the last developer left off, and add the finishing touches.
This is where the system currently is:
User is able to select a technician's calendar to view availability on a day-by-day basis. This requires selecting left and right to view days forward and back. Queries use Google Calendar's API to view availability, and appointment creation is done by generating an ICS attachment and sending it to the technician's email. Once a user goes to the next step of the process, going back and making a change is not possible.
Account creation is done by linking to a page that has many fields. (Address, phone, email, etc.)
The following changes need to be made so the system is as spec'd:
User sees a week view of availability starting from the current day. Scrolling left and right between each week is not possible, only 7 days out are shown. (Making an appointment longer than a week out encourages customers to forget about the appointment and waive our technician's off when they get there, which loses our company money.)
Additionally, this week view must default to show availability for all technician's calendars combined. We still want to allow the customer to select an individual technician if they have a favorite, however the default view must combine the availability of all technicians.
The account creation process must change. We only want to require a customer to enter their email and a password to sign up for an account. As the appointment creation process progresses, certain information should automatically be saved into the MySQL database which will be recalled the next time the user goes through the process. We should not be requiring the customer to enter all that information in the beginning.
A My Account page should be created which will show all saved information for a customer, and show their last scheduled appointment time.
Overall, this job will require you to become familiar with the code already written and perform the required changes above. This must be completed within 2 weeks of the start date.
If you have any questions, please send a private message and I will be happy to answer them. Thank you for your consideration, and happy coding!
NOTE: The file attached is a general example of what we want the 'week view' to look like. A more specific description will be provided on your start date.