I'm currently experimenting with the different options for hosting images and creating galleries within Drupal in order to make a decision as to what the best direction to head is.
There are currently many different options available each with their own potential benefits and drawbacks.
Option 1 - Image.module
This module works very simply. It creates a node that holds an image, creates a thumbnail, and creates albums based upon the taxonomy of the image node. The benefits of this approach are its simplicity. The drawbacks are users can't create their own albums, unless they have permission to modify taxonomy. There is also no easy option for bulk uploading that is current with 4.7 in the CVS. Image_import is not updated to work with the latest 4.7 codebase. Also interesting about image is the potential of shazamgallery to augment and add features to image module, but it currently isn't stable or very functional.
Option 2 - Upload to Node Attachment + Inline Module
This option doesn't lend itself well to an image gallery but does add basic functionality which could be useful in terms of adding photos to stories. What would happen is you write a story, then upload whatever media to it and then the inline module will automatically create a thumbnail for use on the front page and add the image to your story. This is very simple but lacks functionality in terms of viewing all of the images or grouping them based upon album to a gallery or even based upon category or freetag.
Option 3 - Acidfree.module
Developed to act as a basic gallery, this module still creates images as nodes and also incorporates basic video such as you would find on a digital camera. It also incorporates bulk uploading via zip or ftping to a serverside directory. This module has many features image.module doesn't but seems a little bit more proprietary than image.module. I mean in the sense of doing the gallery its own way rather than incorporating the drupal API and philosophy. Of course at this point there is no best practice so it fills a niche and could continue to be a viable option for multimedia.
Option 4 - Gallery2 integration
Gallery has long been the most feature rich FOSS web-based gallery software. There is a module which attempts to integrate Gallery2.1 with Drupal 4.7. I decided to try this out after hearing that they were more tightly integrated and there was an option to add images directly to nodes from Gallery2 albums. Upon investigation there indeed was a stand-alone plugin and/or a TinyMCE plugin that allows you to pull images into nodes. Then came the install, there is some integration of userbase but as far as I can tell Gallery2 lacks the same permissions structure that would enable say anonymous users to upload photos or create their own albums. Also I couldn't figure out how to let non-admin users create albums or upload items. This points to a bigger problem of gallery2 and drupal being seperate software bases and the need to constantly synch and update both vs. just maintaining the core of drupal and a module. These features could probably be rectified by some code on either side of the software but the images would still remain somewhat outside of drupal. One difference is the lack of categorization and/or synch between the drupal category system and the gallery2 album system. This is a basic aspect of drupal and it would be nice if it were an option. Also I couldn't figure out the permissions system for Gallery2 and it tended to log-out the non-admin user out of both gallery2 and drupal, which is probably a bug which I should report. Yet again I look to Gallery2 and drool a little bit and then step away because it isn't tightly integrated enough into drupal to be used for a community site. If I were intending to create a blog where I just wanted to share my photos it would indeed be a powerful option but for a more news orientated site with lots of people potentially contributing photos it doesn't seem ready yet.
Option5 - Flickr.module - I'm not even sure if this mod has been updated for 4.7 nor am I interested in it although a lot of people seem to be way into it. Flickr costs money and would have to be paid for by each user and therefore the mod only acts as an extender of the photo hosting service for individuals to their web-blogs. A community of users wouldn't be able to take advantage of it and you would have to pay for the service rather than just hosting + bandwidth if you host the images yourself. At the sametime Flickr is almost ubiquitous and utilizing it lends some exposure and adds potential views to your images through its social tagging system.
So right now I have to go with Acidfree because it is the best option at the moment. I have doubts about its long-term usability or development cycle but at the same time I can't wait to build sites until the perfect toolset is crafted. We have to improve our tools by improving our skills through practice.
Additional thoughts I have for improving all Drupal image modules. Ideas from other software.
I recently found a pretty nice photo manager for linux called Jbrout. It was developed by someone who wanted to learn Python and is available crossplatform. It does some nice things with EXIF like renaming your photos to a timestamp which in turn lets you view them sorted by the date without storing the data in a database. It also has a pretty nice tagging feature, which is similar to drupal taxonomy in terms of being hierarchical. You can create tags such as Places and then Create Tags that go underthis such as Home, Work, School, The Bar etc. Then you can drag the tags onto your image and it writes them in the EXIF part of the image which means that the tag now transcends this software and could be used by other pieces of software. The taxonomy of the tags is actually stored in Jbrout so all that is stored in the image file is the tags themselves seperated by comas.
This seems like something which could be good to be integrated into Drupal.
The real benefit of this is similar to taxonomy for drupal, when you click on a tag it will search through the images and find the ones that have this. One to be able to pull up all of your pictures of a certain friend, just create a people tagging category, put their name as a tag under it and then drag and drop it onto their pic everytime you see them. Then you just double click on their tag and Jbrout will pull up their picture in its own psuedo album.
Also as an additional feature Jbrout has an option to export to Flickr or create a simple index of a webpage. I'm interested in creating an option to export to Archive.org or to a Drupal site, but I'm not sure how this would work without tighter integration and something similar to the BlogAPI for Files/Images. It'd be cool to develop though.
Additional thoughts/ideas are welcome.
Robb
Comments
Very helpful
Thanks for this very helpful review - I am going through similar deliberations now for a community site.
I was leaning towards trying acidfree, but like you have reservations about it's long term future and found that some people find it a bit buggy: http://drupal.org/node/57206
It looks like there is a way of adding previous/next buttons to existing galleries: http://drupal.org/node/45050
And drupal does come with an image_rotate function, so I'm wondering if it might be possible to hook it into the image editting form: http://api.drupal.org/api/4.7/function/image_rotate
So I'm 50/50 going with acidfree or hacking themes to add functions critical for our site to image.
I've not reached a conclusion yet!
Thanks, but now I'm depressed
I am using Gallery2 on my site for hosting photos commissioned by clients, for which it is perfect. As are the bits of Drupal I've set up...
However I have been looking for some way of presenting other sets of images as exhibits of words and text.
Image module is nearly OK but lacks any means of explicitly setting image order. This is a showstopper for me, as the exhibits have a narrative order and flow. I want to be able to set 1..2..3.. ...50 and can't see any way to do it. Leaving order to upload/edit date/time, (or even NID or filename), is just perversely indirect. I edit a page and sequence gets shuffled and it ends up doing a William Burroughs cut-up on my narrative.
Nor are there prev|next links - the only image presentation software I think I've ever seen that makes the viewer flit back to to the index page in order to select the next. To be honest, I don't even want the thumbnail page much, although I can live with it.
I have seen the code for adding prev|next at http://drupal.org/node/45050 but I'm using a Smarty template because with my PHP illiteracy I couldn't customise in Phptemplate. I might be able to adapt it. But the main issue is my total lack of explicit control over narrative order, without which prev|next may as well be a roulette wheel.
I have looked at Acidfree, but found it too close to Gallery2 in concept and function, to be usable for this.
This seems so fundamental a gap in image presentation I wonder if I am missing something?
I wondered about using the book module, since that seems to fit pretty much what I want to do. But that appears to use the Drupal 'weight' system, which limits the number of pages to 30 before it starts using other indirect criteria (page title, if I remember correctly).
All I can think of doing is sticking each exhibit into a huge single flash movie, which I really would prefer not to do and probably cannot because of file size limitations (2MB).
The odd thing is that these two issues, explicit order and prev|next buttons, seem to have come up in these forums many times. Maybe it is just isn't possible? At my current rate of progress with PHP, I'll do it myself within, oh, 5-10 years :)
Any suggestions welcome. Wordpress? Joomla? Go away?;)
Regards
Tony Sleep
Order of Images
Use the weight module to control the order in which your images are displayed.
Gallery2
I went through a similar experience of looking for the best gallery to meet my needs, and while I would have loved to use Gallery2 for its look and features, I had a few very bad issues with it, the most important being it can not handle more than a couple users without being a massive load on my web server! If you want my full review of gallery2 you can see it at http://www.desinc.net/gallery2_review
I too ended up using acidfree and find that while it has no where near the features of gallery, it works well and is far less of a burden to my server.
Acidfree as the 80% solution
Oracle co-founder Larry Ellison has noted that no software fills 100% of a client's need. Go with 80% needs fulfillment and let the rest be imperfect or you'll drive yourself crazy and get nowhere. While the perfectionist in me hates that philosophy, sadly it seems to make sense.
I went with Acidfree and keep hoping it will continue development until some sensible image-management functionality makes it into core eventually. I figure I'm not alone in my decision, so the module has a pretty good chance of staying alive in the short to middle term.
anon can add images and albums w/ gallery
Hi. You can set up gallery2 to have anonymous permissions--you can give them the same permissions as admin, even, if you want. Just go to your base album or the album you want this for and click "edit permissions". (it's not under administer site, it's under the individual album's options if you're logged in as a user with proper permissions). Permissions you can select are called "core--all permissions" or "add items" or "add albums" etc. Whatever you want. I always select them for the anonymous group and the user "guest". There are more options than you think in gallery. As far as I can tell, the syncrhonziation of image additions and databases between drupal and gallery is fine. If an image is added in drupal it's also in the standalone gallery and vice versa.
The difference I've seen so far is that if you add users through the admin, you should do it in the drupal admin (using the drupal user.module) and they'll be automatically added to the gallery user list. However I did encounter some problems when users were added through the gallery standalone and drupal seemed to have some issues recognizing them. This might just be because I haven't done it right, though. As for categorizing and tagging, I don't really use those features on my site, so I'm not sure if/how it would work.
Also, If you use the g2image plugin you can add gallery images to drupal posts. If you want to add another button for uploading images directly into a post with tiny (not through gallery), install the image assist module and the included drupalimage plugin for tiny. I'm thinking about writing a tutorial on setting up tiny with image uploading through drupalimage since I just went through it myself. If you want, I can put up a link to a zipped tinymce folder that already has drupalimage in it and is already configured with the g2image plugin since it took me a lot of searching to figure it all out...
www.robcomm.net
Option 1 - Image.module
Not true, http://drupal.org/node/82338
--------------------->
underpressure
http://ravalonline.com
Acidfree+TinyMCE
Does somebody know the possibility to do acidfree video insertion editing in tinymce, like it is done for img_assistant?
--
DomNa :: Дом Науки и Техники
xScience.Info
IMCE for positioning in posts
I've had success with module IMCE http://drupal.org/project/imce. It provides a quick and easy way for clients to insert images in posts when they are using TinyMCE. They can either select previously uploaded images, or can upload on the fly. Readme notes say it also works for other text areas, but I've not tested that personally.
For individual clients who need to do bulk uploads from Windows machines, Image publishing http://drupal.org/project/image_pub seems to be a good answer. It involves updating the Windows registry, so this is not for everyone, but it looks ideal for small business sites where a client might need to upload a whole folder of photos from his 6 megapix camera. Images are resized before uploading.
I'm using Gallery2 with
I'm using Gallery2 with Drupal myself and have no issues with it. There is a learning curve with the permissions setup , just as there is with drupal, but I have the same groups in both areas and it works well. I dont use the g2image or tinymce for an option for users to insert inline pictures and use instead bbcode and quicktags. Mine is essentially a photographic site dealing with large format digital printing so the need to handle RAW files is paramount. Gallery2 handles all this with ease. I've wrapped around this core business a website that caters to my interests in Photography and Motorbikes , but the users of this side of things are unaware and seperate from my client base who use the website for sending files, receiving profiled images etc and ordering and approving the final prints. All handled flawlessly by Drupals taxonomy and categories and access , and gallery2's superb feature rich presentation.
Forums dependant on login, albums access dependant on login, News stories for any surfer with extra news items dependant on login.
For me , Drupal with Gallery2 absolutely rocks the world.
The one issue I have is with ie6 and firefox presentations of inline images using bbcode. I hope to have a solution soon .... or else my dreams will come true and ie6 will disappear back into the hell it came from.