5 : 49 AM EDT
I've been working on sophia for the last few days and it is really coming along. unlike sophia1, posts in sophia2 can be in many sigs at once.
form handling has been improved, too. there are two new functions in bbsengine3.php for handling forms: processform() and displayform(). expect a more detailed posting as well as a new release later.
zoid technologies has an animated page header shown only on the index page using css3 animations.
behind the scenes, I copy-pasted the two effects I wanted (lightspeedin and rubberband) out of animate.css into index.css on www.zoidweb, which is why it works only on the index page. I found a decent video tutorial regarding animate.css after this feature was added to zoidweb.
recently I came across some CSS3 that turns an unordered list (ul tag) into a comma separated list that correctly uses the serial comma aka "oxford" comma. I've applied this technique to sophia (posts), member details (flags listing), and will apply it to vulcan (links) once it can handle more than one sig.
tooltips were working for posts and mantra details except that an AJAX request was made for every url even if it had already been loaded. this wastes bandwidth and RAM and I set about making it more efficient.
the trouble I was having was that the cache was always initialized to empty. I thought at first it was a scoping problem which was not the case.
over the last couple of days a friend I met on IRC has been helping improve zoidweb2. specifically, he has made some changes to the 'topbar' (which contains the digital clock with flashing colon) so that it transitions more smoothly to 'fixed' from 'relative' positioning instead of 'jumping'. the fix was to wrap the topbar in a div.
getbbsengine() has been changed so that it only creates one instance of the bbsengine object per page.this change is backwards compatible with the old way of returning multiple instances.
added initvisibilityeventhandler(), addinterval(), restartintervals(), and cancelintervals() methods to bbsengine3.js. modified notify.js and clock.js to use addinterval() instead of setting up the event handling per module which meant elimination of a lot of duplicate code. addinterval() checks a boolean to decide if the event handling needs to be set up, so that it is only done once.
the clock now displays an abbreviation for the local time zone of the browser. this is done entirely client side and no polling of my server is done (and anyone is free to use the source if there is a question).
asked someone with a clue on IRC (freenode) to have a look at my site. they made some suggestions. I made various style changes related to gradients and text shadows. I asked my contact to have a look, and I was complimented with "glorious consistency" and "shazam".
smarty has been upgraded to 3.1.30
smarty has been upgraded to 3.1.32
there was a layout problem w forms wherein the "footnote" appeared to the right of the form itself instead of under it. the fix was to use the 'content' block instead of the 'main' block.