There is still a need for the ability to easily upload many images to a node without having to painstakingly attach them one at a time.

The most direct way to achieve this seems to be by allowing the user the option to upload a .ZIP archive. (similar to the way Typepad handles it - see attached screenshot)

With this powerful functionality, CCK nodes could easily house galleries/slideshows/etc.

(The image publishing module is great for bulk uploading, but of course it uses the image and image gallery modules, combined with taxonomy to group images. Can anyone think of a way a module like image publish could use actual CCK nodes instead?)

Comments

zach harkey’s picture

Willing to financially support the development of this feature. Just give me a $ figure.

bradlis7’s picture

I might be interested in developing this. With the amount of time it would take, I'm not really sure what a reasonable price is, but I would estimate somewhere around $50-100. It would be leaning to $100 if I implemented a bulk edit form as well, where at least the title can be edited for the images all on one page. I'll take a look into implementation, and see what I can come up with.

zach harkey’s picture

Deal — in fact, I'll pay you $150.

bradlis7’s picture

Component: Miscellaneous » User interface
Assigned: Unassigned » bradlis7

I've sent you a message through the contact form.

bradlis7’s picture

I've run into a small problem... it seems as though imagefield will not allow image uploads unless the image was actually uploaded by the browser, because of the way file_check_upload() works. I'm trying to mess with the code in imagefield to see if I could add a way to get around that, but I'm not a uber-genius when it comes to drupal quite yet, so it'll take me a little bit longer to get that completed.

Once I get this to work, the module should be to a working state, with only a few things that need to be cleaned up.

bradlis7’s picture

StatusFileSize
new7.72 KB

Here's what I've come up with. So far it uploads and extracts the zip file, or tar.gz file, and presents the user with image thumbnails, and a title field. Further than that won't work, because using imagefield without actually uploading the images hasn't worked yet. I think I could change some of the code from imagefield to do the trick, but I haven't figured out how to yet. If you imagefield guys (or anyone else) wants to take a shot at the code, be my guest...

imagefield.info:

; $Id$
name = Image Bulk Upload
description = This module adds support for mass uploading images in zip, or tgz format.
version = "$Name:  $"
dependencies = content imagefield
package = CCK
bradlis7’s picture

Well, I'll give this a last shot using SQL, which is more likely to need updating when the modules are updated... but it's the only thing I can do to get the file connected right now.

bradlis7’s picture

StatusFileSize
new9.83 KB

There you go. The codes a little ugly, but it's the only method I could get to work.

A Few Limitations: The imagefield can't be required on the node, with the way drupal_execute works. Also, right now, the tmp directory needs to be in the files directory, so that thumbnails can be accessed.

I can do a little more work on it, and add better documentation, but it should be at a working state for right now.

Don't forget to create a imagefield_bulkupload.info file. I put them both in the imagefield folder.

dopry’s picture

@bradlis7,
You can get the previews working without the files being stored in tmp, see hook_menu in imagefield.module and upload.module for examples. I'm working on making this kind of work easier, but on a lower level in core. There are a couple things about upload handling that can be changed to make this much easier to deal with. I applaud your effort. Its no simple task.

sgriffin’s picture

I uploaded both, files into the imagefield directory, created and chown the tmp direction, enabled the modules, updated the schema, and now what?
Zip files are supposed to be able to be uploaded in place of images?

I can't get it to work.

sgriffin’s picture

Found a menu link. Uploaded a zip and was whisked away into a blank page. It doesn't appear that this is compatible with cck.

bradlis7’s picture

As I said in the reply to my email, there seems to be webpage timeout issues, as processing zip files and images takes time. You could try uploading a zip file of 1 or 2 small images to see if that's really the problem.

I kind of hit a brick wall I suppose, and didn't know where to go.

astroboy’s picture

Assigned: bradlis7 » astroboy

Hello there.

Timeout is definitely going to be a problem with zip uploading, wether in the upload time, unzip time or processing time.

Since Drupal is used in shared hosting also, upping the timeout values is not an option, and because of the way PHP is implemented, you can't have feedback while uploading or processing.

the only option then becomes fractionned uploads, image by image.
doing that manually for 100's of images is not possible, but with Flash now, you can upload files in a batch.
SWFUpload, already existing as a project for drupal (http://drupal.org/project/swfupload) does that really nicely for upload.

if it could be adapted for Imagefield multiple uploads, you would solve:
1 - batch uploading
2 - processing time
3 - user feedback
4 - the lesser problem (but still a problem in cybercafes and such) of zip file creation, and creation time. size isn't gonna change much since jpegs are already compressed

I hope to have time to do such research, but wouldn't bet on it, but it would solve all the problems we have.

Combine that with the fileview module for editing-time previews (drupal.org/project/fileview) and you have a winner gallery.

jpetso’s picture

Title: Add option to batch upload several files at once (.zip archive) » Upload multiple images at once
Assigned: astroboy » Unassigned

Having triaged multiple duplicates of this issue (including #203933: Multiple file upload), I think this title should fit better. Also, astroboy hasn't posted any progress for more than half a year, which I believe is a good reason to unassign this issue from him.

byteslinger’s picture

Check out the imagex module: http://drupal.org/project/imagex. It uses an applet, written by the same author (thank you sdrycroft!) It's not perfect (I had a slight hiccup with FireFox on the Mac), but it does get the job done, multiple image files uploaded, with drag and drop too.

My only issue is that it seems to load the images in the opposite order from what I dragged into the drop box.

jjh’s picture

Priority: Normal » Critical

What is the current status of development concerning this issue? Is there anybody working on it? Will this be implemented in imagefield for D6?

In my eyes, not being able to upload multiple images at once makes the imagefield module close to not being useful at all for image galleries - which is why I set the priority of the issue to 'critical', hoping to thereby catch more attraction...

jpetso’s picture

Priority: Critical » Normal

More attention will be paid if there's a good clean patch, preferably for file handling in Drupal core instead of imagefield. More attention will also be paid if the "critical" issue is actually one that cripples the module, like a PHP error on enabling imagefield or something that makes uploading images impossible.

More attention will NOT be paid by raising an issue to "critical" when great numbers of people have done just fine without that feature in the past two years or so. "critical" is not a way to get your favorite feature implemented, it's a means to mark an issue as "blocker", such that the maintainer should not even *try* to release a new stable version without getting it done.

This issue is not "critical", and the only gain you get from setting it to "critical" is
1. me setting it back to "normal", and
2. me being annoyed by a lack of sense for responsibility towards the maintainers.

Don't do that.

cs8c’s picture

Priority: Normal » Critical

Multi upload was overlooked! I wish it was a feature too!

jpetso’s picture

Priority: Critical » Normal

Oh, and one more thing: while it's true that imagefield is not really usable for image galleries without a mass uploader, it does have a lot of other use cases other than that. Just try to think outside your own narrow set of requirements.

Anonymous’s picture

It isn't the thing imagefield can do (in relation to image galleries here). It can do a LOT more, allowing images to be added to any CCK content type is equally useful.

Multiple uploads would be a nice feature, there is already a working module for it, in fact two.

See: http://drupal.org/node/216177 for imagefield import. It is a CVS module, but my preliminary testing seems to prove it works. Its not perfect, hopefully it'll get more work done on it to improve it even further as it is very simple thus far imo.

The other option: http://drupal.org/project/emfield - it has a media import sub-module. Currently it can only import from flickr, but i've tested that too, and it works flawlessly, even better than imagefield import. Bad thing, Yahoo!'s terms of service.

So, there are two (maybe more) methods to do this.

Maybe they'd be best used as the basis for anything wished for here?

Dimm’s picture

Status: Closed (duplicate) » Active

Upload multiple images at once - I did it!
Now you can upload *.zip and *tar.gz files with images.

http://drupal.org/node/251096

jjh’s picture

@jpetso: sorry for setting the issue to critical - I was not aware of the field's different intended usage.
@kellyharding, dimm: thank you for the info! I think I'll give these options a try!

sun’s picture

Status: Active » Closed (duplicate)
jax’s picture

Could you please state which issue this is a duplicate of? Kind of difficult to find the issue that is being worked on without a link.

mandclu’s picture

Going back to the original start of this discussion, uploading a zip file and then having the server unzip and process all the images could be very demanding on the server. Personally, I'd much rather the multiple upload implemented through integration with something like ImgUpload. The main benefit is that the heavy lifting is done by the local machine, not the server, so it should be more more scalable.

caktux’s picture

Status: Active » Closed (duplicate)

I think this might be worth checking out for the future of multiple file uploads : http://code.google.com/p/noswfupload/

ccshannon’s picture

Just want to throw in my 2 cents about this ability.

I work with large corporate clients. I push Drupal as a CMS solution because of how quickly powerful features can be added, without me having to write much code. The code that I do write, is for really specific little things the customer wants, not so much typical functionality.

They see batch file uploading as a necessity, and it's unfortunately a mark against Drupal as a CMS solution, when they find out it can't be done well. They can upload multiple attachments in Gmail, so why can't they upload multiple images at once in this supposedly wonderful Drupal thing I keep pushing on them? So, though it is not a universally needed feature, it is one that is expected to be just 'built-in' to a CMS, expected by customers ... and like it or not, they are always right. I sometimes want to mow them down with a giant street sweeper, but I concede to them on this issue.

Given how advanced CCK/Filefield/Imagefield/etc. all are, I hope and pray that such a feature can be integrated into the Imagefield widget, rather than trying to develop a 3rd party solution.

I've tried the following solutions to batch upload images into a multi-value Imagefield: jUpload for Imagefield, Aurigma Uploader for Imagefield, Image FUpload, and ImageField zip support

I'm using Drupal 6.10, CCK 6.x-3.x-dev and Imagefield 6.x-3.0. In cases where the experimental CCK 3 version causes conflict, I uninstalled it and reverted to CCK 6.x-2.5.

NONE of the above solutions are satisfactory:

  • All modules require saving the node and returning to edit screen, to see the uploaded images within the Imagefield widget - so you have to edit your node twice for every gallery.
  • Aurigma and jupload have the same maintainer. Aurigma is a commercial applet and jupload is free. Both appear as a local file window within the node edit form. You select images you want to upload and hit send. The page (node) must refresh (save) but you lose any body text or taxonomy terms you added that you hadn't saved, yet. You have to edit and save those things separately from adding the images. The maintainer is aware of this limitation but of course is very busy. Also, I have to say, using these applets with Firefox on Mac, the applet windows flicker a lot on screen, and once loaded they cause Firefox to become unusable (can't type into input fields on any page, the tabs change to a light grey color as though another app is active). I don't know if that's an issue with Java applets on Mac Firefox only, or what (Safari fares a little better with the Java applets), but the fact that other node data is lost on upload, makes both of them no-go. And again, the maintainer is overwhelmed by a large issue queue and compatibility issues of getting an external uploader to 'work with' imagefield/filefield.
  • Image FUpload uses SWFUpload, a flash-based uploader. This module creates an image button under an imagefield widget to add images to the node. The upload window appears like my Mac windows normally do, I can select multiple images, and the uploads happen onscreen, but then you are presented with a 'Next Step' link you must click to continue, which takes you out of the node edit form into another screen, which looks like a full-page version of the imagefield widget, where you can edit your alt, title, descriptions. Then you have to click 'Done Editing'. On CCK3, that last part fails and you get a WSOD. In CCK2.5, you are taken back to the node edit form where you can see your images listed, but once again, you lose your body text. So, you have to go back into the edit form to edit/save your text values.
  • Imagefield Zip extract provides a simple upload widget to ALL your imagefield-enabled node forms. The other modules allow you to set which content types and imagefield you want to attach batch uploading to. This one shows up everywhere you have an imagefield. The upload widget appears randomly on the page, so I can't order it with the other fields. You select a .zip file using a normal upload browse window, and when you click 'Upload', it uploads the zip, extracts the image files, and adds them to the imagefield. This works, but it has lots of bugs -- some are little things like the fields below the widget jump to the right of the uploader when it's running; or when your upload is finished you only see one image onscreen, and cannot see/edit your images until you save the node and go back into the edit form. The original maintainer kind of went MIA, so another one jumped in, and he doesn't have the cycles to address the several bugs.

My point of all this is, wouldn't it be better for this functionality to be a per-content-type option in the Imagefield widget? It would be integrated, no java or activex or flash, no extra screens, etc.

Here's how I imagine it would look to the editor-user:

- node/add form: empty multi-value Imagefield widget with one empty input visible
- Click 'Browse', get local file window
- Allow ctl-click multiple items (cmd-click for mac users)
- Click 'Open' or 'OK' or whatever the main button is in your file window
- The imagefield widget refreshes with an input box filled in with the path for each image you selected, non-images don't appear, they are not uploaded yet
- No different from current widget, each image still has an Upload button
- New button at bottom of widget 'Upload All'. Press this and each input item uploads, any inputs that still have the path filled in, one at a time.
- The differences (on the surface) btwn this and current widget:
- mutliple select file in window
- automated 'add another item' upon selecting multiple image files
- automated filling in of input fields of added items with paths of selected items
- New button 'Upload All'
- Sequential upload of multiple items (one at a time) upon Upload All submit

Does this sound plausible with the Imagefield widget? I don't think this could be done through a contrib module. It would have to be done within the Imagefield widget OR the Filefield widget.

Sorry for long post, just wanted to get my thoughts into what I see as the most pertinent issue thread.

nakouzia’s picture

Hello

I need the same solution for my system.

If you are interested to do it, please send me a message to my email and then I will provide full list of my needs.

Note: not for Drupal...

A.Nakouzi

>>>>>>>>>>>>>>
#2
bradlis7 - January 22, 2007 - 05:23

I might be interested in developing this. With the amount of time it would take, I'm not really sure what a reasonable price is, but I would estimate somewhere around $50-100. It would be leaning to $100 if I implemented a bulk edit form as well, where at least the title can be edited for the images all on one page. I'll take a look into implementation, and see what I can come up with.
>>>>>>>>>>>>>>>

adr_p’s picture

Subscribing.

mattiasj’s picture

subscribe

narongwit12’s picture

subscribing

Gaperville’s picture

Priority: Normal » Major
Status: Closed (duplicate) » Active

I don't see anything for D7 and have searched in multiple areas.

Gaperville’s picture

Anything for D7 yet? Thanks.

quicksketch’s picture

Status: Active » Closed (won't fix)

ImageField has entirely been moved into core. I don't think that either the ImageField module in Drupal 6 nor the Image module in Drupal 7 will have this feature built-in. You should try installing add-on modules that enhance ImageField, such as Plupload or Image FUpload.