For the first major sample, we have written a small appointment management system. Although we have designed the system to handle multiple users, we have limited the implementation and actual pages in the demonstrated code to handling only a single user. (Otherwise, the sample would be triple its current size.)
This system effectively enables users to schedule appointments in a database, setting a start and end time, a title for the appointment, and then some other optional details, such as the location and possibly a description of the appointment. The home page for the application shows the next five appointments in the calendaring system for them (see Figure 31-1), and a menu bar across the top enables users to add a new appointment or show the appointments they have for the current day, week, or month.
Figure 31-1. Viewing upcoming appointments.
The monthly and weekly view pages also have Next and Previous hyperlinks, which allow the user to navigate through the calendars (see Figure 31-2). Whenever a particular day has an appointment, a hyperlink (monthly view) or hyperlinked summary (weekly view) is provided for users to click to see the full appointment details.
Figure 31-2. Navigating through the calendar one month at a time.