CIMSU OTS Technical Blog

Tuesday, April 17, 2007

Tutor Time Errors, DST, and Profile Updates

Dealing with users is timezones over 12 hours apart has caused all sorts of interesting errors. Most recently, we noticed that adding new availability tended to be 12 hours off. Turns out there was a series of errors that lead to times being added wrong&em;apparently when I fixed it I didn't fix it everywhere.

So now, theoretically, that's fixed so that all times really are stored in the servers timezone and then converted for each user.

I also found an easy way to automatically adjust for Daylight Saving Time. Unfortunately, due to PHP's slight bias, it only works with US DST, not with European Summer Time. So, sorry Europeans, but you'll have to go through and adjust your timezone yourself.

Finally, I added what I always intended to have, but forgot about: immediate profile updates. If you change something on your profile, the update will automatically appear in both the database and the session, so the changes appear everywhere on the site simultaneously.

Labels: ,

Thursday, April 12, 2007

Bugs

A while ago we created our own small bug reporting script to handle, well, bug reporting. That script (http://msuconfuciusinstitute.org/scheduler/bugs/) is the first live test of FrameWorks 2. It seems to be running well so far.

Labels:

IE Fix

Because Internet Explorer does not support the display: table-cell; value in CSS (or any of its related values), apparently all the calendars were appearing as vertical columns in IE. Apparently "We don't support Internet Explorer" wasn't a valid response, so I had to alter the Calendar object a bit to output tables instead of divs.

Just to make it harder, though, the system wasn't using a new version of Calendar, it was using something along the lines of v0.9. When I altered the file directly, very weird stuff happened. So I tried to upgrade to 1.2 which uses Parser and some templates, but of course I ended up with several conflicting class names and it was more work than it was worth. So I downgraded to Calender 1.1, and modified the output code.

This all involved breaking the site for maybe half an hour, which is pretty good.

I haven't had the chance to work on this project lately, but now the plethora other small projects seem to be vanishing so I can really start work on version 2 again.

Labels: