Met with Claire to discuss the site. She'll send over some text about the licence terms (it's a Creative Commons one, as we've discussed before), as well as something to act as a disclaimer on the site, noting that it's a long way from finished and some texts are incomplete.
Struggling with GIMP, did another image in Photoshop to see how that went. The image was actually a more difficult one, but some aspects went easier (fading the sea to transparent at the bottom). Not a great job, but better than nothing for the moment.
Since Greg's away and deadlines are looming, I thought I'd do my best to cut out another image for the Icohtec site, so there are three. Chose a fairly simple one with a snowmobile in it, and it took about an hour. There must be more effective ways to do this than pixel-editing, so I'll take a look through the GIMP manual for tips.
Instead of calling the function which starts the image cycling directly from the body onload attribute, I've used a JavaScript function to append the function call to whatever is already in the onload event. That makes the code more portable, because the page itself doesn't need to be modified (other than adding the <script> tag which includes the library).
The bug afflicting Safari turned out to be related to an obscure function designed to work around a problem in old browsers. The method Array.splice() should return an array, even if there's only one item in it; however, with older browsers, it sometimes returns the single item instead. I was using a checking function called isArray() to see if what was coming back was an array or not, but that was failing (returning false when the object WAS an array) on Safari. A simplification solved the problem; now I try accessing a property of an object in the array, and if that succeeds, assume I have an array; otherwise, assume I have a single item. The image cycling code now works on Safari as well as FF, Opera and IE7.
Went to the monthly meeting to learn more about the Events Calendar API and the plans for LCMS and web.uvic.ca.
The day was half-consumed with meetings, while the Icohtec deadline looms, so I stayed late to get stuck into the image-cycling code for the Icohtec site.
Wrote the classes for cycling several images and descriptions through as background and tooltip for an element. I took the time to write this as properly generalizable classes, and to document it properly, and it seems to work fine on IE7, FF and Opera. On Safari (Win and Mac), though, it fails, and I think it's something to do with array handling in the browser's JavaScript engine, although I'm not exactly sure yet. I'll debug this tomorrow, and assuming I can get it fixed, the code is clean and useful. The code is here. I added a link to it in the header.inc file, along with a call to start it up in the body onload event. Actually (note to self), that's probably unnecessary; I could add the onload call in the JavaScript file itself, which would be a bit cleaner.
A teacher reported no audio when playing back a DVD in lab B. I went in and tried everything I could think of, but no joy -- followed exactly my own instructions from a few weeks ago, which are still available in the lab for teachers, so presumably still current -- nothing. Tried using RealPlayer instead: nothing there either. Tried restarting the machine and logging in as me (an admin); no change. I searched the blog for any more recent documentation from Greg, and found a couple of posts, this one describing a problem, and this one suggesting it's fixed, but no detail. I'm going to email Greg to see if there's anything he remembers changing, but failing that, I'm not sure what to do; there are too many urgent projects for us to embark on a long troubleshooting gig right now.
Attended the training session for the UVic Events Calendar (events.uvic.ca). Arranged to have our calendar set up, with me as admin, and then added Stew and Greg as admins too; we should also add Elizabeth and Judy when we've run through the system with them. Our calendar is here. It doesn't have any events in it yet, nor has it been customized with a heading/banner, but it works. This afternoon I'm going to the WebDev meeting at which we'll learn about accessing the RSS feeds from the calendars, and other API features.