Autoviewer is a popular flash image gallery script. The thing that makes it little bit annoying is that updating the images requires editing a configuration file manually. A friend of mine wanted to publish some of his art online so I wrote a simple dynamic script for him to manage his gallery by himself. This script uses PHP and MySQL database and the backend admin interface is built on top of example scripts by Greg that use scriptaculous and prototype AJAX libraries.
See the new version!
Basic features of the script include upload, removal and management of images. Images (jpegs from camera) are uploaded to the server using a separate administration interface. The script automatically resizes the images to a more manageable size. Once uploaded image order can be changed dragging and dropping the images back and forth. If an image seems useless it can be removed simply by clicking the delete (x) button.
To get started you will need to download the zip-package and make sure you have the prerequisites (PHP with gd-image support and MySql configured)
- download download.jpg, rename it to .zip and extract the contents
- extract flashviewer.zip contents to /backend folder
- rename htaccess.txt to .htaccess
- create a dabase in your mysql admin tool
- add database name, login and password to configure.php, configure.php in /admin and to db-php in /admin
- Set password control into the admin folder
- create the database table by calling install.php in admin folder
- set the write permissions for the folders
I have done little bit of special customization for my friend by adding diameter and price fields, but you can just omit those fields or change to something more suitable. I have had lot of other ideas about improving the script also. It would for example be nice to allow creating multiple galleries dynamically. With little bit of more tinkering I could utilize the new xmlURL parameter in the new Autoviewer version. Another idea I have playing around with is making the tool available using the Google App Engine. Thing is that it would require porting the app to python, but maybe I have too much time on my hands some time soon.