no files were imported

jsgammato - August 11, 2008 - 21:47
Project:File import
Version:5.x-1.0
Component:User interface
Category:support request
Priority:normal
Assigned:Unassigned
Status:closed
Description

I just installed File import. It finds the files in my /import folder just fine, but it does not import them. I get this message:

warning: Invalid argument supplied for foreach() in /webroot/s/g/sgamm001/www/stc-ctf/includes/form.inc on line 949.

Also, no nodes are listed in the dropdown.

Is there something that I did wrong?

#1

jsgammato - August 11, 2008 - 21:57

ps The screen is too wide for the page, too. There's obviously something screwy in the interface, but I can find no documentation to help me work through this issue.

#2

Bacteria Man - October 17, 2008 - 19:45

I just installed this module and used it successfully. In fact, it works like a charm. If you're experiencing problems, try checking the names of your files. One or more of them might contain some funky character that's throwing the above error.

#3

kingandy - October 17, 2008 - 15:59

I experienced this too, until I opened the 'page' content type and saved it. I expect you have an empty "ID - Title" dropdown as well? (EDIT: Oh, I guess you said that you do in the original post...)

I believe this may be due to file_import not anticipating the default "allow file attachments" settings. If the content type's settings page has never been saved, the 'file attachments' setting will not actually exist - the file upload module using an internal default of 'true' for the 'page' content type - so file_import can't find any content types with file attachments enabled.

An easier alternative to rummaging around with the defaults would be to provide a more useful error message than 'no files were imported'. Certainly it should be noted whether a file attachment has been rejected due to the node type not supporting attachments, or due to a non-existent node ID, or some other reason.

#4

kingandy - October 17, 2008 - 16:00

Also, the page being too wide is a natural result of using text fields and arbitrary filenames in rows of a table.

#5

emdalton - April 6, 2009 - 16:47

Thanks, this answer helped me, too. Once I opened and resaved the Page content type, I was able to import. I think at minimum it would be a good idea to put a note about this on the configuration page for the File Import module.

#6

xurizaemon - April 15, 2009 - 03:33

A popular alternative to documenting broken behaviour is ... fixing the problem :)

I noticed this bug also when porting this module to D6, so here's the patch against 5.x for that issue alone.

The per-contenttype 'upload_page' (and 'upload_blog', 'upload_story' etc) variable only gets saved when the content type is edited, so this module will not function on a default Drupal install with a single node added.

Otherwise, no nodes are made available to attach the files to.

I have not tested this code extensively, but can confirm that it worked for me.

It's intended to reverse the test for whether upload_page and friends are set. Previously, file_import did

<?php
       
if ((!$only_with_uploads)||(variable_get("upload_$type->type", $only_with_upload))) {
?>

but instead, this patch makes it do
<?php
     
if ((!$only_with_uploads)||!(variable_get("upload_$type->type", $only_with_upload)==0)) {
?>

AttachmentSize
294054-type_uploads_allowed.patch 651 bytes

#7

xurizaemon - April 15, 2009 - 03:45

Patch to fix this issue attached.

(Reposting; my original patch comments didn't appear in the issue updates, and there seem to be a few people waiting on this fix.)

AttachmentSize
file_import-294054.patch 877 bytes

#8

xurizaemon - April 15, 2009 - 03:46

Apologies - either my internet connection or D.O is flaking today, causing form submissions to appear unresponsive. I blame the internet this end. And the ducks.

#9

neochief - April 21, 2009 - 00:03
Status:active» fixed

Fixed in 5x-1.1 and 6.x-beta1

#10

System Message - May 5, 2009 - 00:10
Status:fixed» closed

Automatically closed -- issue fixed for 2 weeks with no activity.

 
 

Drupal is a registered trademark of Dries Buytaert.