240 likes | 466 Views
Introduction to Gallery. Bharat Mediratta July 25, 2002. What is Gallery. Open Source PHP application Your photos on your website Provides similar functionality to commercial ASP products like Yahoo! Photos, Club Photo, PBASE. Brief History of Gallery.
E N D
Introduction to Gallery Bharat Mediratta July 25, 2002
What is Gallery • Open Source PHP application • Your photos on your website • Provides similar functionality to commercial ASP products like Yahoo! Photos, Club Photo, PBASE
Brief History of Gallery • Started May 2000, small development team • Targeted at individual webmasters (me!) • Installed on 20-30K+ websites today • 200-300 new installs every day
Why Do You Need Gallery? • You have a digital camera – and you use it! • You want the photos nicely integrated on your website • You don’t want to subject your visitors to advertising • You don’t trust dot coms with your data.
The Gallery 1.x Challenge • Create an application with low barrier to entry to reach the broadest user base: • No database requirement • Don’t require custom PHP configuration (eg, compiled in GD, JPEG, PNG support) • Don’t require shell access to install • Run on Unix and Windows • Provide configuration wizard
The Tradeoffs • No database concurrency issues • External graphics library config issues
Gallery Configuration Security Problem Config wizard needs to create an output file, but we only want that file to be writeable at configuration time: Solution (borrowed from Horde) Create scripts to switch Gallery between configuration and secure modes
Gallery Config Wizard Part 1 • Check out the user’s system
Gallery Config Wizard Part 2 • Ask the user lots of questions and provide example answers
Gallery Config Wizard Part 3 • Check the user’s answers! • The sooner we find configuration problems, the less time the user wastes
Add photos! • Log in • Create a New Album • Set Album title, URL, etc. • Upload Photos from browser • Slurp photos from another website
Manage Photos • Rotate images • Automatically create thumbnails • Resize images • Cutomize thumbnails
Organize Albums • Nested albums • User permissions • Optional Features: • Print Service • Slideshow • User Comments
Gallery Remote • Java companion program • Upload Photos using a rich interface
Customizing: HTML Wrappers • Use HTML wrappers to frame your Gallery, Albums, and Photos • Wrappers canalso be used toadd functionality(like a ShoppingCart interface)
Customizing: Style Sheets • Easily change the lookby modifying the Gallerystyle sheet
Customizing: Change the code • The Open Source advantage: Add all new functionality to Gallery by modifying the source code
Gallery and CMS/Portals • PHP-Nuke and PostNuke • Geeklog • PhpBB2 • XOOPS
Gallery E-commerce Plugins • Use the HTML Wrappers to add: • Shopping cart • Inventory integration • Virtual post cards • Print services
Strengths • Lightweight • Easy to install • Works in most environments • Uncluttered interface • Feature rich • Good support community
Weaknesses • Performance degrades in large Galleries • Reliability issues • greatly improved in newer versions • No Internationalization • No Templates • Concurrency Problems
Lessons Learned • Hold the user’s hand (config wizard) • Build a community! • Release early, release often • Accept and integrate user criticism
G2: The Future of Gallery • Reliability, Scalability, Flexibility • Templates • Concurrency Support • Relational Database support • Better CMS Integration • Internationalization • Dynamic thumbnail generation