In this blog entry I’m going to explain the processes Lizzy™ uses in order to store and track time information relative to the different time zones a company may work in. The process is actually quite simple, although it did take a considerable amount of work to get it all functioning correctly.
What Lizzy™ does is take the current time an event occurs and converts it to UTC time. This is basically time zero where no time zone is added or subtracted. This time is what is physically stored in the system whenever you schedule a meeting, log a call or anything else where a time is recorded.
Next, whenever you or another employee views data from the database, Lizzy™ converts that time information back into your local time zone. She does this by determining what time zone you’re in, then adding or subtracting the necessary hours to the ones stored in the database. So as an example: you schedule a meeting for me at 12pm your time and save it. I’m in California, you’re in Georgia. So in the database the system adds 4 hours to the time and stores it. Then if you view it, Lizzy™ subtracts 4 hours to show me 12pm. When I view the time in California, she will subtract 7 hours to show me a meeting has been scheduled for 9am. All of this is done automatically, allowing the users to always deal with times in their own time zones without concern for those in other zones.
If you view office hours in Lizzy, they also will be displayed for each person based on their local time zones, not the time zones of the companies or people themselves. This would allow me to see that a company in California operates between 11am and 8pm based on where I’m located, not where the company is located. So no more converting between one zone and another.