# zenphoto changelog

### Version 1.2

#### 08/15/2008

- Move/copy/rename albums and images [trisweb]
- Mutli-lingual content support [sbillard]
- Separate plugin translation capability [acrylian, sbillard]
- Lots of security/vulnerability fixes [krainbolt]
- Admin backend improvements [trisweb, sbillard, acrylian]
- Slideshow plugin updates: progressive image preloading, slideshow from search and dynamic albums [dpeterson, sbillard, acrylian]
- Setup improvements with more checks [sbillard]
- Translation updates
  - Traditional Chinese translation [fatman]
  - German translation [acrylian]
  - Dutch translation [Vincent]
- Upload video and audio files via admin backend [sbillard]
- Tag management improvements [sbillard]
- RSS feeds with language option [acrylian]
- Many minor improvements and bugfixes.

### Version 1.1.7

#### 07/01/2008

- Translation support improved [sbillard, acrylian, trisweb]
  - French translation [fetard]
  - Dutch translation [Vincent]
  - Traditional Chinese translation [fatman]
  - German translation [acrylian]
- Tag Management [sbillard]
- Paging for image and comments admin pages [sbillard]
- New distributed plugins
  - dynamic-locale [sbillard]
  - flv_playlist [acrylian, sbillard]
  - GoogleCheckout [mammlouk, sbillard]
  - tag_suggest [acrylian, sbillard]
  - user_logout [sbillard]
- several bugfixes and improvements

### Version 1.1.6

#### 05/15/2008

- Localization framework [acrylian, sbillard, aitf311]
- German translation [acrylian]
- Full image protection improvements [sbillard]
- RSS validation and sorting impovements [acrylian, sbillard]
- Tag improvements [sbillard]
- Album themes [sbillard]
- Watermark scaling [sbillard]
- Plugin system plus several default plugins [sbillard, acrylian]
- Slideshow (plugin) [acrylian, sbillard and special thanks to djdevine for the IE CSS positioning fix]
- JS changes from prototype to jQuery for admin backend [aitf311]
- Stronger captcha for comments [sbillard]
- MP3 and MP4 (video/audio) support [sbillard, acrylian]
- Rating IE CSS display fix [jimhawkins]
- Setup improvements [sbillard]
- Various bugfixes
- Full list of resolved issues on Trac

### Version 1.1.5

#### 02/29/2008

- Performance improvements [trisweb]
- Security improvements [sbillard]
- Boolean expressions for searches [sbillard]
- Dynamic Albums [sbillard]
- Multiple Admins with varying rights [sbillard]
- various bugfixes
- Full list of resolved issues on Trac

### Version 1.1.4

#### 02/01/2008

- Improves system configuration checks in setup.php [sbillard]
- Zenphoto function guide [sbillard, acrylian]
- Password protection improvements [sbillard, acrylian]
- Comments on albums [sbillard]
- Admin pages enhancements [sbillard, acrylian, aitf311]
- Mod_rewrite rules for TAGS, Search Fields [sbillard, acrylian]
- Simple Captcha for comment form validation [gregb34, sbillard]
- Site defined custom data fields for images and albums [sbillard]
- Fixes for HTML, XSS, and SQL injection vulnerabilities [trisweb, acrylian, sbillard]
- Boolean logic on tokens for searches [sbillard]
- Option for full image quality [sbillard]
- Album rating [acrylian]
- Full list of resolved issues on Trac

### Version 1.1.3

#### 12/14/2007

- Integrated setup and upgrade, makes both easier [sbillard]
- Setup now performs a system setup, corrects many issues on its own, otherwise lets you know what to fix [sbillard]
- Password protection for gallery/albums [sbillard]
- Significantly improved admisitration tools [sbillard]
- Removed admin pass from zp-config and encrypted it in the DB table [sbillard]
- Pre-caching of images [sbillard]
- Pre-caching of images [sbillard]
- Additional IPTC fields [sbillard]
- Image rating along with Image and Album hit counter [acrylian]
- Global album sort including ascending/descending. Album inheritance of these settings [sbillard]
- Full list of resolved issues on Trac

### Version 1.1.2

#### 11/8/2007

- Fixed significant bug that forced usuers to manually make the options table [trisweb, sbillard]
- Full list of resolved issues on Trac

### Version 1.1.1

#### 11/65/2007

- Simplified the install process by getting rid of a lot of the fields in zp-config.php [sbillard]
- Email your password from the admin login [sbillard]
- Ability to sort in ascending or descending [sbillard]
- Full list of resolved issues on Trac

### Version 1.1

#### 11/2/2007

- Subalbum administration including ordering, deleting, editing, uploading, etc. #6 [sbillard, trisweb]
- Subalbum paging. #2 [sbillard]
- RSS feeds for gallery, albums and comments. #7 [WillHamilton, thinkdreams, Alenonimo, acrylian]
- EXIF display #4 [trisweb]
- Download complete album as zip using: `printAlbumZip()` #32 [mankind]
- Password protected theme (temporary solution); load the theme 'default-pass' #46 [La0c00n]
- Support for Videos (flv, mov, 3gp): ZenVideo #54 [La0c00n]
- Geospatial Visualization (Google Maps) using: `printAlbumMap()` and `printImageMap()` #54 and #78 [mankind]
- Deleting album with subalbums no longer leaves tracks #75 [sbillard]
- Subalbums work with all the themes included in this release [aitf311]
- Options (zp-config.php entries) moved to web-based admin [sbillard]
- `/zen/` folder renamed to `/zp-core/` because of conflicts; take note!
- Partial plugin support: theme plugins and zenphoto core plugins (see Spam Filter in admin options) [sbillard]
- IPTC support for Title and Caption. #67 [sbillard]
- Spam Filtering with Askimet and another simple algorithm. #123 [sbillard, thinkdreams]
- Image and Album searching. [acrylian, sbillard]
- Basic Image and Album tag support. [sbillard, aitf311]
- Image and Album archives, based on available metadata dates. [sbillard]
- Full list of resolved issues on Trac

### Version 1.0.8

#### 3/1/2007

- Faster image loading by using the cached image path directly if the file exists. [trisweb]
- Custom suffix for image pages (eg: `/alb/img1.jpg` » `/alb/img1.jpg.php`) Defaults to `.php`, is backward-compatible with older URLs by 301-redirect, and makes sense. #16 [trisweb]
- Now compatible with PHP safe_mode restriction. [trisweb]
- Fix for permissions wrongly set in cache folder (could not delete cached images). [trisweb]
- Added optional Unsharp Mask for thumbnails, defaults to off. Config param: `thumb_sharpen`. [trisweb]
- Refactored the way requests are handled. Split into 2 include files: `controller.php` and `functions-controller.php`. [trisweb]
- mod_rewrite rules for sub-albums complete; works to infinite path depth. [trisweb]
- Much improved SEO (Search Engine Optimization) - URLs are always 301-redirected to their single canonical form; #16 (custom suffix) fixes image pages not appearing in indexes. [trisweb]
- Major code refactoring and reorganization. [trisweb]
- Warning if you use the default password. [Chris S.]
- Better filtering of the album folder/image filename to avoid duplicate database entries. [trisweb]
- Collected garbage in garbage collection methods. Fixed several bugs. [trisweb]
- 1.0.8.1 - Fixed a bug with the image suffix as '.php' [trisweb]

### Version 1.0.7

#### 1/26/2007

- Large security bug patched; thanks to nicosomb for reporting it. [trisweb]
- No other changes.

### Version 1.0.6

#### 12/11/2006

- Bug: image sorting within albums fixed (getImageId() not found error). [trisweb]
- Bug: image dimensions are now cached in the database again (no functional difference, but much faster). [trisweb]
- Changed the default RewriteBase in .htaccess to `/zenphoto` to correspond with the default folder in the package. [trisweb]
- Now detects changed images and reprocesses them if the cached versions are old. [trisweb]
- When an image cannot be found/loaded, an error image is shown instead of no image (passing `i.php?...&debug` disables this and shows the error output) [trisweb]
- Other minor bugfixes and code cleanups.

### Version 1.0.5

#### 12/8/2006

- 1.0.4 was littered with PHP short tags by accident (an SVN reversion somehow happened), now fixed. [trisweb]
- No other changes.

#### Relevant links:

- trisweb.com - Zenphoto 1.0.5 Released

### Version 1.0.4

#### 12/8/2006

- Backend performance improvements! Zenphoto is now up to 10 times faster at rendering album and image pages with extremely large albums, and at least three times as fast for moderately-sized ones. [trisweb]
- Fixed bug where clicking the album or gallery in the breadcrumb would always go to page 1 [trisweb]
- Fixed a bug with database constraint naming conflicts with multiple installations [trisweb]
- Added an `ini_set` to try to adjust PHP's memory limit (may allow for larger images to be processed). [trisweb]
- Better and more secure comment input filtering from the kses library. [Niels Leehneer]
- Database access code abstracted and refactored. All (most) queries are now generalized through a new database class: PersistentObject. [trisweb]
- Bugfixes in saving of "Place" field - formerly overwrote the title (oops) [trisweb]
- Sub-albums half implemented (for TESTING ONLY). Use the Sub-Albums Test Theme to try it out! Admin control and paging yet to be done. [trisweb]
- Three new themes included: "Default Dark" and "Sterile" by Levi Buzolic, and "Stoppeddesign" by Ben Spicer.

### Version 1.0.3 beta

#### 5/31/2006

- Added more image size options to i.php (custom sizes and crops) [trisweb]
- Added ability to get image size/orientation from a theme (see documentation) [trisweb]
- Width and height attributes now filled in theme images (page loading looks much better) [trisweb]
- Changed name of a function that conflicts with WordPress (is_valid_email) [trisweb]
- Special characters in file and folder names should now work (with or without mod_rewrite) [trisweb]
- Fixed several critical vulnerabilities and security issues. [trisweb]
- Support for UTF-8 and any other desired character set added. [Niels Leehneer]
- Added way for themes to have custom pages. Use `index.php?p=page` in your theme for access to /themes/yourtheme/page.php [trisweb]
- Many other bugs fixed: View All

### Version 1.0.2 beta

#### 4/1/2006

Due to the security enhancements in this release, we strongly recommend all users upgrade immediately.

- Changed the way images are returned. Should drastically reduce CPU time used (a big issue for Dreamhost users). [trisweb]
- Fixed bug with installation paths containing the string 'zen'; refined path resolution more. [trisweb]
- Fixed several critical vulnerabilities and security issues. [trisweb]
- Minor cosmetic path fix— `/page/1` should never be seen now. [trisweb]
- Root domain and subdomain installations now work. For mod_rewrite, use `RewriteBase /` [trisweb]

### Version 1.0.1 beta

#### 1/11/06

- Fixed an embarrasing bug in template-functions.php where an empty Gallery would cause failures. [luckyspin]

### Version 1.0.0 beta

#### 1/10/06

- Added Album sorting. Default is by filename, but you can drag and drop your preferred order manually. [luckyspin]
- Added [refresh] link to Gallery stats, you can now manually reset your stats and clean up your DB tables. [trisweb]
- Added Gallery sorting. Default is newest first, but you can drag and drop your preferred order. [luckyspin]
- Added deletion of images and albums in admin. [trisweb]
- Added email notification to the admin user when comments are posted. [luckyspin]
- Admin: Created admin functions to clean up admin page(s). [luckyspin]
- Admin: Created an upgrade page to migrate db tables to new schema. [luckyspin]
- Admin: Spruced up some of the admin pages to their L&F was consistent. [luckyspin]
- Improved path resolution; please report any bugs you run into! [trisweb]

### Version 0.9.0

#### 9/27/2005

- Removed web_path and server_path config variables. They are now automatically deduced (and there was much rejoicing).
- Added theme functions: `getPrevImageThumb()` and `getNextImageThumb()` - return the path to the thumbnail of the previous or next image relative to the current image.
- Fixed bugs with using next_image() (for iterating through all album images) on an image page. You should now be able to use any loop anywhere without affecting the state.
- [Bug 005102] Images smaller than the standard image size will not be sized up anymore.
- [Bug 005125] AJAX-editing no longer strips HTML from titles/descriptions.
- [Bug 005086] Using zenphoto without mod_rewrite should work fine now.

### Version 0.8.1, 0.8.2

#### 9/16/2005

- Fixed bugs in setup script causing instructions not to be shown.
- (Note: 0.8.2 was a fix for a syntax error in 0.8.1 that I hope no one saw)

### Version 0.8.0 (Developer Release)

#### 9/15/2005

- Finalized default theme.
- Admin: Added ability to choose which image to use for the album thumbnail.
- More bugfixes.

#### Relevant links:

- trisweb.com - zenphoto 0.8 developer release

### Version 0.6.0

#### 6/12/2005

- Admin: Checked-in Joen's design.
- Default Theme: new RC from Joen; for admins, added "edit comment" and "admin" links.
- Default Theme: gave all thumbnails width/height so floating DIVs line up properly before load.
- Many small changes and bugfixes.

### Version 0.5.0

#### 8/16/2005

- Admin/Themes: New tab "Options" contains the theme switcher.
- Better comment validation (only allows tags specified in a list in config.php)
- Themes: Added a 'theme.txt' definition file and parser. Theme metadata is now set.
- Themes: Added a 'theme.*' image, where * can be either gif, png, or jpg. Images must be 150x150 and should be a screenshot only; no text.
- Added zen/setup.php - a setup script to make the database tables and give basic instructions.
- Lots of bugfixes.

#### Relevant links:

- trisweb.com - zenphoto 0.5 - "Almost Ready"

### Version 0.4.0

#### 8/12/2005

- Admin section: Added javascript image-enlargement while editing (click the image to enlarge).
- Implemeted themes. Add themes in new directories in /themes, switch themes with the 'theme' var in config.php
- Converted 2 current designs to themes ('default' (Joen's theme) and 'testing' (the old testing theme))

### Version 0.3.6

#### 8/11/2005

- Admin section: All comment functionality (edit/delete/view/respond).
- Admin section complete except for deletion of images. Possibly leaving for apres-1.0

### Version 0.3.5

#### 7/29/2005

- Admin section: Intuitive Javascript validation of album uploads.
- Admin section: Delete buttons and actions.
- (Test Version: Uploads and deletes are disabled for the public.)

### Version 0.3.4

#### 7/28/2005

- Admin section: Upload interface.
- Admin section: Upload file handling (all image types *plus* ZIP files).

### Version 0.3.3

#### 7/25/2005

- Admin section - overview page basic layout (10 comments, links, etc)
- Admin section - mass-edit albums and images complete.

### Version 0.3.2

#### 7/23/2005

- Comments error more gracefully; removed saved comment info from the template.
- Administration section design complete.
- Login logic, authentication complete (login at /zp/admin/)
- AJAX in main gallery only works for loggied-in user
- Added template functions for album date/place

### Version 0.3.1

#### 7/7/2005

- Fixed bug with AJAX editing and PHP magic_quotes_gpc
- Refactored config to use an array and getter function instead of global variables.

### Version 0.3

#### 7/4/2005

- AJAX title/description editing on images and albums.
- Comment saving
- Bugfixes; improved IE support.

#### Relevant links:

- trisweb.com - zenphoto 0.3 - "AJAX Fireworks"

### Version 0.2.2

#### 6/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)

### Version 0.2.1

#### 6/25/2005

- Improved comments - website "http://" bug and line breaks.

### Version 0.2

#### 6/24/2005

- Comments, comment template functions added.
- Lots of bugfixes, speedups, etc.

#### Relevant links:

- trisweb.com - zenphoto 0.2 - "Comments Enabled"

### Version 0.1.2

#### 6/20/2005

- Pagination:
- Template functions to get/print links to next/prev page based on context, and to any page given its number.
- Improved album/gallery links: now point to the page where the current element resides (eg: the Album link for an Image page would point to the page of the album that image is on).
- "Page list" widget (printPageList), prints a UL of links to all pages in the current context, current one has LI.current class.

### Version 0.1.1

#### 6/12/2005

- mod_rewrite rules written (cruft-free URLs)
- Class functions to save new metadata to the database
- Lots of small bugfixes

#### Relevant links:

- trisweb.com - zenphoto 0.11 - "cruft free"

### Version 0.1 (preview release)

#### 6/4/2005

- Initial Release
- Implemented base structure:
  - Directory traversals for album lists and image lists.
  - Full image processing and smart caching.
  - Images returned at custom size via URL request.
  - Database schema created; entries are added on detection of new album or image
  - Config file started, most options available
- Template functions, and a simple template to test them.

#### Relevant links:

- trisweb.com - zenphoto 0.1 preview
- trisweb.com - zenphoto status
- trisweb.com - zenphoto announcement