Le update (http://blog.borgborg.org/).
- Switched from Viewport's content slider implementation to this (http://jqueryfordesigners.com/coda-slider-effect/). Mainly because with this one you can implement a support for incoming linking; it displays the slide URL in the addressbar, and if you use that URL... you'll end up viewing that slide. It's not flawless yet - the slider gets confused if you do that, and thinks that you are on the leftmost slide, so pressing the next and previous-buttons will have an interesting effect.
- Trident is ass-buggingly slow. But surprise of surprises; you can get quite decent JS-performance out of IE8 when you force it into IE7 compatibility mode. There's just one issue; how to do that? If you use the meta-tag, you'll have to place it before the doctype-declaration, or it won't work. That very much breaks validation. Solution: have Apache sent the string as reply to browser's HTTP request. Won't break validation, and IE8 obeys it.
- IE8's support for transparent png alpha blending is STILL broken. It has been since IE6. Sure, it has almost worked since IE7 - only the gamma has been fucked up... except... when you try to make a transparent png with alpha channel fade in or out. Then it breaks horribly. The fix? Very same method that was used to fix IE6's broken alpha support. :-D This introduces another problem, though; IE8 won't obey opacity set in CSS anymore. No matter what I tried, I couldn't get it working. Solution: manipulate opacity from JS.
- Do note the fancy ass font used in the post titles. :-D No, it's not an image. Nor Flash. It's actually done via JS, on the client end, with cufón (http://cufon.shoqolate.com/generate/).
- Also, note the obnoxiously large and very l33tly glowing-fading navigation arrows. :-D This is what I needed the IE8 png alpha fix for.
- And see the awesome accordion-effect in the traditional navigation links. BTW, only the ones under 'Recent posts' do anything sensible - rest of them do kinda work, but the pages you end up seeing are still from original Viewport - won't look very nice, that is
- Not to mention the Lightbox. It's Floatbox, but with a twist. Move your mouse cursor close to the top edge of the image, and see mah awesome EXIF-display overlay. :lol: You better like it, I spent several days getting it to work - there certainly were several issues:
- Largest one being that NextGen gallery loses the EXIF when you resize the images. It uses plain vanilla resize from GD, so no wonder. I tried to tweak the resize function to use PEL, and while I managed to make it work outside of NextGen, in NextGen I only managed to read the EXIF, never inject it back into the resized image.
- So, then I found a hack someone had made, it reads the EXIF into a database. Only problem was that it used PHP's built-in EXIF-functions, and they are not good enough for me; I want the makernotes as well.
- Exifier to help; it's a PHP library for reading EXIF, much like PEL, but can't write it. Which is of no concern, since it's only going to the database now. Hacking NextGen to use Exifier was actually pretty darn easy. It did take some time to build manufacturer-specific features into it, though... also some more sanity checks were needed. And least one more has to be implemented; Exifier does not like photos taken with Olympus-cameras. At all. At worst they'll make Exifier hang, at the best you can recover only the camera make-field.
- After that I had to tweak NextGen's template for showing images; it already did read the caption (which actually holds the EXIF), but my EXIF was there in a comma separated format, and many photos do not contain all of the fields. Something had to be done about that. So, I made the template turn that string into an array, and built a nice, HTML-formated string from that array - with some conditional checks; for example you won't (at least shouldn't) see fields like flash bias if there was no flash used, also exposure bias displays only if there was actually some. After doing all that, the template puts that into a 'rev' of the anchor-tag. Floatbox reads it from that.
- Then I had to tweak Floatbox into doing what I wanted. I wanted an overlay display, bit similar to the one used in Lightroom. And I pretty much had to built the darn thing myself. But there it is, and it works. :-P
Oh boy. List so didn't work for that mass of text. :| Oh well, can't be arsed to fix that now, you'll just have manage.
I think that covers most of the shit I've managed to do. I'm fairly pleased with myself, so far. :-D Understand that I'm not really a programmer, I suck at PHP and I find JS-code revolting. :-P Thus, small achievements in those areas please me and give me satisfaction. :-)
Pay no attention to the first photo of the first page - yes, it obviously should be rotated, but I couldn't be arsed to, since I was just interested in the EXIF; and that was the first one I found that had all the fields written by the camera still intact.
I wonder what I'll start to tweak next; certainly the content styling (fonts, headers, post info like date, categories and shit, and comments) needs work. I think they are straight from Viewport, except for the fancy-ass post titles.
Also; it's very much in development mode right now; for example there's an assload of JS-scripts being loaded. When it's ready I'll of course combine them into one monolith, minify it, pack and obfuscate it and then gzip it. That alone takes several seconds away from the page loading time, as browsers have this nasty habit of loading only one JS-file at a time. Thus sites with a dozen of them will take an obvious performance hit.
----------------
Now playing: Chris De Burgh - [M1+ Top 1000 #114] Lady In Red [foobar2000 v0.9.6.3 beta 2]
via FoxyTunes (http://www.foxytunes.com/signatunes/)