Zenphoto 0.2.2 Jun 27, 2005
- Database garbage collection functions implemented.
- Temporarily added a "pruning" page to clean the database manually - prune.php (GC will be used later before any operation relying on the database)
Comments and navigation are done! Zenphoto is now very functional, and I’m probably going to move the photos site on this page over to it pretty soon (as soon as I do some image/album metadata editing, which just needs the forms).
Check out the demo gallery and test it thouroughly.
0.2 Demo Gallery
You can leave test comments there (and please do), but leave any meaningful comments here so I don’t have to search for them. I’m looking for ideas for the admin interface now that you’ve seen the public face of the gallery (which is, remember, fully customizable — this is only a test theme), so let me know how you want it to work. I’m leaning toward an intuitive “admin mode” which would let you browse the gallery with special actions available (like editing titles, descriptions, and comments on the fly with AJAX), plus a few extra panes for mass-title/description-editing and (...)
The point: You’ll never have to resize images again.
0.11 Demo Gallery
Feel free to play with the URLs and make your own sizes, but please, don’t request every pixel size from 1 to ten thousand until I’ve made some way to limit the cache… thanks.
I’m not making the source available just yet, but here’s a preview.
zenphoto 0.1 test gallery
Right now, it’s a fully navigable gallery, with full on-the-fly image processing, a simple design using new template functions, display of image and album metadata, and more. Yet to be implemented are the admin interface (which you can’t see anyway :-) ), storing image metadata, comments, cruft-free URLs, and lots of other stuff…
This week, I fully implemented templates, which was big. It’s a simple template system. For example, this is how you print album thumbnails in the gallery index:
< ?php while (next_album()): ?> < ?php printAlbumThumbImage(getAlbumTitle()); ?> < ?php endwhile; ?>
Minimal code for the loop, yet still powerful. The functions run in “contexts” which give internal template functions more info on where they’re called. next_album(), next_image(), (...)
I’ve been working on it all weekend. I’m still in the first stages, but I’ve finished all image functions, including that spiffy size-in-the-url resizer feature. In fact, that went so well, I made all images in the program use it, which means every image displayed is actually proxied through a PHP script (i.php to be specific). It took some work, but I’ve got it caching images after processing, and sending the right headers so the user’s browser always caches it locally. That makes it behave exactly like a normal image. With mod_rewrite on, you won’t notice a difference.
If you would like a sneak preview of the horrible-looking version .01 alpha, leave a comment with your email and I’ll send you a link. I’m afraid of it being somehow insecure at this stage. In fact, I just thought of two vulnerabilities while writing that sentence. So leave me your email and if I trust you I’ll send you a link :-)
What I’ve done so far:
This is the official announcement for the start of development of zenphoto, a new, better, simpler, more useful, open-sourced, and overhyped personal web photo album app.
Keep in mind that I’m very open to comments — I’m building this for you, so I want your ideas and feedback!
So it begins…