Problem/Motivation
"Bar with progress meter" in field is not show during upload files
Reproduce:
1. enable "Bar with progress meter" in fields
2. upload a file.
Proposed resolution
Getting it show normally.
(http://drupal.org/files/issues/screenshot_after_patched.jpg)
Remaining tasks
1. Needs reviews patch #70
- test it with PECL uploadprogress (#93, #96 tested & passed)
- test it with APC (#99, #100, if you hit Err 500, try to upgrade your APC to stable version (3.1.9+)
- needs code review (#93 reviewed)
2. Write better code comments (see #103 suggestion)
(CLEAN CACHES AFTER PATCHED YOUR SITE)
User interface changes
(http://drupal.org/files/issues/screenshot_after_patched.jpg)
API changes
--
Original report by [Tom Jacobs]
If I set to "Bar with progress meter" in field files. I then upload heavy file. results show no bar with progress meter.
Comment | File | Size | Author |
---|---|---|---|
#142 | 129-141-interdiff.txt | 1.73 KB | Tor Arne Thune |
#141 | 935208-uploadprogress-bar-fix-129-reroll.patch | 2.82 KB | droplet |
#141 | testing-with-D7.patch | 2.82 KB | droplet |
#138 | 935208-uploadprogress-bar-fix-129-reroll_d7.patch | 2.82 KB | droplet |
#136 | 935208-uploadprogress-bar-fix-129-reroll.patch | 2.88 KB | droplet |
Comments
Comment #1
Tom Jacobs CreditAttribution: Tom Jacobs commentedComment #2
adrinux CreditAttribution: adrinux commentedI'm seeing this too, on two different servers running Ubuntu 10.04.1 LTS, on both servers PECL uploadprogress bar is working perfectly in Drupal-6, just not in Drupal-7.
Add an image field to a custom content-type and in 'manage fields' set progress indicator to 'Bar with progress meter'. (public files, single value)
From status report:
PHP 5.3.2-1ubuntu4.5
Database MySQL 5.1.41-3ubuntu12.7
Upload progress Enabled (PECL uploadprogress)
Web server Apache/2.2.14 (Ubuntu)
No apparent errors to explain why.
Comment #3
adrinux CreditAttribution: adrinux commentedI will add that the progress bar doesn't appear in Safari, Opera or Firefox.
Comment #4
assert0 CreditAttribution: assert0 commentedI see this problem as well with PECL uploadprogress properly installed. I am only seeing the throbber when uploading, even when I've selected "Bar with progress meter" as the "Progress Indicator".
From status report:
drupal 7.0-rc2
PHP 5.3.3-1ubuntu9.1
Upload progress Enabled (PECL uploadprogress) OK
Web server Apache/2.2.16 (Ubuntu)
Comment #5
indigoblue CreditAttribution: indigoblue commented#4 ditto
D7-RC2
Centos 2.6 on x86_64
php 5.2.14
Apache 2.2.3
Upload progress Enabled (PECL uploadprogress) OK
Comment #6
droplet CreditAttribution: droplet commentedbump up to Dev.
7.0-dev
5.1.37-1ubuntu5.5
Enabled (APC RFC1867)
Apache/2.2.12 (Ubuntu)
Comment #7
sobi3ch CreditAttribution: sobi3ch commentedCheck your Suhosin patch version..
Comment #8
adrinux CreditAttribution: adrinux commentedThanks for the heads up @sobi3ch
FWIW my Suhosin Patch 0.9.9.1, default Ubuntu 10.04.1 LTS package.
Comment #9
droplet CreditAttribution: droplet commentedsettings always return throbber
Comment #10
assert0 CreditAttribution: assert0 commentedI confirm #9.. throbber is always set. I haven't been able to track down why the setting is not getting set, so I tried manually setting the #progress_indicator to 'bar' in the code segment below, however now I get an ajax error shown in the attached image.
Comment #11
droplet CreditAttribution: droplet commentedI did some trace
1. always throbber
2. return invalid json ( first output from file_ajax_progress(), and the delivery callback "ajax_deliver" added ajax_render() outputs )
Comment #12
droplet CreditAttribution: droplet commentedComment #13
yched CreditAttribution: yched commentedRecategorizing
Comment #14
assert0 CreditAttribution: assert0 commentedOne of the issues is that the UPLOAD_IDENTIFIER field is showing up after the "file" type in the form. The blog post mentioned in #7 (http://blog.liip.ch/archive/2009/03/31/upload-progress-meter-common-issu...) states the following..
To fix this you need to add a weight to the UPLOAD_IDENTIFIER field to push it up to the top of the form as done with the code below.
This fix at least allows us to call the uploadprogress_get_info function and get the status of our upload; however, this still doen't fix the fact that the setting is always throbber and the fact that we are getting a second call to the drupal_json_output function which creates an invalid json object.
Comment #15
ogi CreditAttribution: ogi commentedsubscribe
Comment #16
ogi CreditAttribution: ogi commentedIn addition to changing the hardcoded
#progress_indicator
tobar
and setting#weight
, I commented out the'delivery callback'
and'theme callback'
entries for'file/progress'
in file_menu(). This is not a complete solution because hardcoded progress indicator still needs to be fixed.Comment #17
ogi CreditAttribution: ogi commentedOh, I forgot to say that this way the progress indicator is shown :-)
Comment #18
Anonymous (not verified) CreditAttribution: Anonymous commentedSubscribe. Note: v. 7.0 exhibits the same behavior, so this isn't something that got broken in the .dev branch.
Comment #19
droplet CreditAttribution: droplet commentedTemporary solve my problem, I think there have a more right, simple & drupal way to do that.
(don't forget clean caches when you use this patch)
Comment #20
apadernoComment #21
assert0 CreditAttribution: assert0 commentedPatch in #19 works great for me. Unfortunately the progress meter is still missing. To fix that, the file.css file needs an update. This patch adds the css fix to the patch in #19.
Comment #22
assert0 CreditAttribution: assert0 commentedsorry rolled up the patch wrong.. use this patch instead.
Comment #23
rfayJust putting this in "needs work" because the testbots seem to be getting in an infinite loop of some type. Ok to retest later.
Comment #24
calte CreditAttribution: calte commentedAny movement on this?
Comment #25
stoptime CreditAttribution: stoptime commentedSubscribe. Same problem in 7.0
Comment #26
droplet CreditAttribution: droplet commented#22: 935208_3.patch queued for re-testing.
Comment #28
nilsja CreditAttribution: nilsja commentedsubscribing. also dont get the "with progress meter" option running...
Comment #29
jarizaro CreditAttribution: jarizaro commentedFor me... patch #22 is working only at half,
i see the progress bar metter, and "Starting upload..." until download finish. BUT i only see a bit of blue. and progress bar doesn't move. Upload file is ok.
Tested in google chrome and firefox.
Comment #30
jarizaro CreditAttribution: jarizaro commentedno working solution?
Comment #31
steinmb CreditAttribution: steinmb commentedBroken om my D7 site, works just fine on my D6-sites on the same server.
Drupal 7.0
PHP 5.2.6 with APC cache enabled
Upload Progress ver. 1.0.1
The #22 patch just make i worse then it throw this error when upload starts:
An AJAX HTTP error occurred. HTTP Result Code: 200 Debugging information follows. Path: /file/progress/2119719244 StatusText: OK ResponseText: {"message":"Starting upload...","percentage":-1}[{"command":"settings","settings":{"basePath":"\/","ajaxPageState":{"theme":"bartik","theme_token":"feaPnRIlk0Q-GR3kAmtaUOr6k_GU4gebNw8XeNaGuTM","css":[]},"colorbox":{"transition":"elastic","speed":350,"opacity":"0.85","slideshow":false,"slideshowAuto":false,"slideshowSpeed":2500,"slideshowStart":"","slideshowStop":"","current":"{current} of {total}","previous":"\u00ab Prev","next":"Next \u00bb","close":"Close","overlayClose":true,"maxWidth":"100%","maxHeight":"100%","__drupal_alter_by_ref":["default"]},"overlay":{"paths":{"admin":"overlay\/dismiss-message\nadmin\nadmin\/*\nbatch\ntaxonomy\/term\/*\/edit\nuser\/*\/cancel\nuser\/*\/edit\nuser\/*\/edit\/*","non_admin":"admin\/structure\/block\/demo\/*\nadmin\/reports\/status\/php"},"ajaxCallback":"overlay-ajax"}},"merge":true}]
Comment #32
mariomaric CreditAttribution: mariomaric commentedAs far as I understand, this bug first needs to be fixed in D8, and then backported, hence I changed the version info and added the needs backport to D7 tag.
More info about the backport policy.
Ah, yes, also subscribing. ;)
Comment #33
Tor Arne Thune CreditAttribution: Tor Arne Thune commented#22: 935208_3.patch queued for re-testing.
Comment #35
3rdLOF CreditAttribution: 3rdLOF commentedsubscribing.
Comment #36
Daemon_Byte CreditAttribution: Daemon_Byte commentedsubscribing
Comment #37
munkyonline CreditAttribution: munkyonline commentedsubscribing
Comment #38
droplet CreditAttribution: droplet commentedTry this one, more perfect now :)
** CLEAR CACHES AFTER PATCHED IT **
Comment #39
3rdLOF CreditAttribution: 3rdLOF commentedA) Patch worked.
B) After clearing patched, it worked, but only partially
In my case before this patch nothing showed up. Now I can see the actual bar field shows up, but even when using the largest file I could find, the actual moving bar only showed up once and never with the standard blue/bars theme, just gray. I am testing on a local machine, but the bar always showed up in d6, even in local test sites.
I did and odd ajax error once. Never happened again.
Comment #40
3rdLOF CreditAttribution: 3rdLOF commentedSwitched over to Seven....So the blue bar is there but never actually moves pass the initial stage, so it is not the theme I am using.
Also, I have gotten this ajax error at least twice:
I suppose this is not related, but just in case it matters.
Comment #41
droplet CreditAttribution: droplet commented@kannary100,
yes, #40 is not related.
do you use APC or uploadprogress ?? I suppose they are same but I have only tested with APC.
try to open your browsers console ( firebug, chrome console) see what happening
EDIT: confirmed both APC or uploadprogress works. if you are not, please post more info ( APC / uploadprogress version, etc)
Comment #42
steinmb CreditAttribution: steinmb commentedYAY! #38 is working perfect. Fixes the problems I had with #22. I have not have not looked a lot at the patch but it is small, but important patch from a usability point of view. RTBC?
Comment #43
droplet CreditAttribution: droplet commentedsome more, I tested with nginx progress and sent a patch to that project : #1142338: Progress bar error in D7
Comment #44
sunWhy is the delivery callback removed?
Wrong indentation here.
Powered by Dreditor.
Comment #45
droplet CreditAttribution: droplet commentedit's similar to batch, return JSON back and progress.js will handle it. any reason it should use delivery callback?
Comment #47
droplet CreditAttribution: droplet commented#45: 935208-uploadprogress-bar-fix.patch queued for re-testing.
Comment #48
anglo CreditAttribution: anglo commentedWhere can the patch for D7 be obtained?
Comment #49
steinmb CreditAttribution: steinmb commented@anglo see #45
Comment #50
xgmorkx CreditAttribution: xgmorkx commented@steinmb: as far as I can see, this patch is for D8 and still has to be backported to D7?
Comment #51
droplet CreditAttribution: droplet commented@xgmorkx, anglo,
It's patch still works for both D7 & D8 version.
Comment #52
steinmb CreditAttribution: steinmb commentedFinally some feedback from http://drupal.org/node/1142338#comment-4599968
Comment #53
droplet CreditAttribution: droplet commented@steinmb,
seems like not easy to fix on nginx, until now I don't see any quick way to change the PATH.
we need some way to alter file_field_widget_form function, any idea ??
Comment #54
steinmb CreditAttribution: steinmb commentedSorry, have not worked on/with hook_field_widget_form() in D7. Let's hope perhaps @sun find time to share some of his knowledge on the field-API.
Comment #55
sunSomeone needs to test whether this change retains proper styling 1) with APC, and 2) without any upload extension.
We can directly access the settings in $instance, no need for these variables.
Based on the menu router item definition, as well as code in file_field_widget_process() that's using #ajax, the original intention was to use the AJAX framework to ensure proper theming and page callback result delivery. Therefore, I think we should keep ajax_deliver as delivery callback.
In turn, the actual problem is that file_ajax_progress attempts to generate a JSON response manually instead of passing the result back to the delivery callback.
According to the issue comments above, this #weight change seems to be essential. Therefore, both lines should each have a comment above them explaining why they are required, so they won't get changed or removed in the future.
13 days to next Drupal core point release.
Comment #56
adrinux CreditAttribution: adrinux commentedApplied patch from #45 to drupal-7.2, fixes the issue for me.
Comment #57
sunComment #58
droplet CreditAttribution: droplet commented@sun,
Thanks
I'm not very sure. In this case we don't need delivery theming and page callback result back to Drupal ?
seems like it also need to update the progress.js as well if it use the AJAX framework, is it possible to make some changes on progress.js in D7 directly ?
anyone could make a patch ? (next release point coming, I have no time recently.) (and don't forget update on batch API)
Comment #59
adrinux CreditAttribution: adrinux commentedI've followed up on some of @sun's comments, updated version of @droplet's patch attached.
+ added a comments about the field weight change
+ added back the delivery callback, but that gives the ajax error other people have reported above:
- commented out the delivery call back for now. The ajax error needs fixed in this patch too.
Attached current work in progress patch.
Comment #60
adrinux CreditAttribution: adrinux commentedI think I've addressed the ajax error now. So compared to @droplet's patch in #45 the attached patch:
+ added comments about the field weight change as per @sun's suggestion in #55
+ gets a variable directly from $instance and removes the two new ones as per @sun's suggestion in #55
+ added back the delivery callback as per @sun's suggestion in #55
+ fixes file_ajax_progress as per @sun's suggestion in #55
Works for me on Ubuntu 10.04 LTS with pecl uploadprogress 1.0.1 stable both with and without apc, in 7.x, and Drupal-7.22.
What it needs now is more testing:
> in 8.x
> without any upload extension. (in both 7.x and 8.x)
Comment #61
droplet CreditAttribution: droplet commentedadrinux,
are you sure its working ? on my latest test, seems like it should fix progress.js to handle the bar updates.
Comment #62
adrinux CreditAttribution: adrinux commented@droplet I wouldn't have written 'works for me' in #60 if it didn't :P
Obviously the conditions I tested are limited, as described in #60
Are you testing the reworked patch from #60?
Under what conditions (drupal branch etc)?
What breakage do you see?
Comment #63
droplet CreditAttribution: droplet commentedyes. no error. but no progress updates :(
progress.js:
ajax response:
new response is in an array?
do you cleared caches ??
** im tested on both D8/D7 master
Comment #64
adrinux CreditAttribution: adrinux commentedI see, so how to fix it? I don't even see when progress.js kicks in? Is it only used if an uploadprogress extension isn't installed? Hard to test until you know how to break it :/
(no time left for this today…)
It always was an array, no? Maybe you can play with line 314 of file.module:
return array('#type' => 'ajax', '#commands' => $progress);
and come up with something that works for progress.js as well as uploadprogress, unless progress.js needs adapted to this change…
I should probably mention that I've only tested using Seven admin theme, not bartik.
Comment #65
sunTried to look into this, but running out of time.
Looks like I've been wrong. #ajax resp. Drupal.ajax.prototype.beforeSend in ajax.js calls into Drupal.progressBar of progress.js, and that expects a JSON response, so file_ajax_progress() is likely correct. What a mess.
However, file_ajax_progress() should properly end the request. It's a regular page callback, so Drupal attempts to render a full page afterwards. That was most probably the reason for specifying 'ajax_deliver' as "fake" delivery callback. By printing the JSON and simply returning nothing (NULL) from the page callback, ajax_deliver() does basically nothing, too. However, that's quite a hack.
Since the result has been printed already and that way can't be altered anyway, the drupal_json_output() should be followed by a drupal_exit(); -- when doing so, we can remove the delivery callback from the menu router item definition.
Comment #66
droplet CreditAttribution: droplet commentedWell. we don't need set CSS to inline or block :)
Comment #67
aspilicious CreditAttribution: aspilicious commentedSomeone should test this in IE.
Comment #68
droplet CreditAttribution: droplet commentedYes, tested. and need someone to do test too :)
It should be safe to remove :)
WOW, drupal looks very ugly in IE7 !!! Seems like Drupal community hate IE so much.
Comment #69
sunok, I'm terribly sorry having hi-jacked this issue. @pwolanin recently reminded my in another issue that returning NULL (or just simply not returning anything) from a page callback is sufficient, since drupal_deliver_html_page() will only call drupal_page_footer() in that case, which is functionally identical to drupal_exit().
Removing ajax_deliver() as delivery callback is a required part of the fix here, since the difference to drupal_deliver_html_page() is that ajax_deliver() always attempts to add JS/CSS file information for AJAX lazy-loading. However, this page callback is NOT invoked from ajax.js - it is invoked from progress.js, and therefore, the response has to be JSON, as expected by progress.js.
4 days to next Drupal core point release.
Comment #70
droplet CreditAttribution: droplet commentedit's a new update, we never use progress Bar on remove buttons.
Comment #71
PI_Ron CreditAttribution: PI_Ron commentedsubscribe
Comment #72
PI_Ron CreditAttribution: PI_Ron commentedPatch in #66 worked for me, D7. patch in #70 produced showed the bar briefly, then pumped out an ajax error.
Comment #73
droplet CreditAttribution: droplet commented@Tigeda,
what's the error? can you give more info. and do you use APC or upload progress extension
Comment #74
Tsubo CreditAttribution: Tsubo commentedOn a centos box running drupal 7.x-dev version,
I experience a client-side javascript error on Firefox (version 3.6, 4, and 5 - all on OSx)
Patches obtained from the list through fix-67.patch have been applied.
The progress bar appears, and updates till about 75% full then stalls,
the upload completes but the browser then serves a json commands
array and the progress bar remains on screen.
This behaviour is not observed under safari (any version).
Essentially I belive this to be an error in the "upload_completed"
callback or what ever the drupal name is for the pertinant callback.
It is likely that the bug resides in ajax.js however further
investigation is required to narrow down the issue.
I suspect this issue also happens with the throbber, but doesn't
manifiest in the same way.
Hope this helps...
Comment #75
aspilicious CreditAttribution: aspilicious commentedPlease leave this at 8.x as we fix bugs first in 8.x and backport them as fast as possible.
Comment #76
infines CreditAttribution: infines commentedsubscribe
Comment #77
flokli CreditAttribution: flokli commentedsubscribe
Comment #78
infines CreditAttribution: infines commentedComment #79
aspilicious CreditAttribution: aspilicious commentedWHY should this be critical o_O
Comment #80
droplet CreditAttribution: droplet commented@Tsubo #74,
IMO, this issue will only fix uploadprogress bar to make it show normally (and upload normally). Other error we can fix in a separated issue.
Needs code reviews
Comment #81
infines CreditAttribution: infines commentedMy opinion, it should be critical, because its a feature that's apart of core. Drupal 7 has been released for 8 months now. I realize that there are other critical bugs and security issues, but some of the features that are supposed to work in a released product don't. Which isn't good for PR for a product. Handle it as you will though.
Comment #82
aspilicious CreditAttribution: aspilicious commentedCritical bugs ar ebugs that make the site unusable.
Comment #83
Tsubo CreditAttribution: Tsubo commentedany movement on this?
Comment #84
catch@gridbitlabs "but some of the features that are supposed to work in a released product don't"
That's the case for every bug in core, why bother with statuses at all then? You haven't indicated whether you tested the patch in #70 or not. If people don't test the patches and report back, then the bug won't get fixed. Instructions are at http://drupal.org/patch/apply
Comment #85
chx CreditAttribution: chx commentedI think I grok #70 (although the issue summary could use some work -- it only explains what's visible of the error not the causes and the proposed fix merely points to #70 instead of explaining what it does) but
what's that? Why?
Comment #86
droplet CreditAttribution: droplet commented@chx,
#68 for more details
Comment #87
dlumberg CreditAttribution: dlumberg commented#70 In chrome with APC and uploadprogress installed.
It looks like it's sending back the AJAX and then it's loading jquery options that are completely unnecessary for the progress bar.
Comment #88
sun@dlumberg: Sounds like you didn't flush all caches after applying #70.
Comment #89
chx CreditAttribution: chx commented#68 is "Yes, tested. and need someone to do test too :) It should be safe to remove :) " folowed by the stuff removed. Why it is safe to remove, why it was there in the first place etc?
Comment #90
droplet CreditAttribution: droplet commented@chx,
Okay. to be clearly..actually it's a BUG. Remove it to make it working normally.try to test the patch with/without it, you will see the different.
throbber = the icon will show next to the upload input
progress bar = show on a new line (http://drupal.org/files/issues/screenshot_after_patched.jpg) (in other word, it should be a block element or display: block)
here is the throbber html:
and progress bar html:
If you defined inner DIV with display:inline, there is no width of that elements.
throbber style has defined in
and following code is redefined it again (or you can think is a mistake):
remove the code to get progress bar show normally and still don't affect throbber style.
Comment #91
mshick CreditAttribution: mshick commentedI installed and tested the patch in #70 after having the same problem, and it solved everything after a cache clear.
I am running Ubuntu 10.04 LTS, and the APC upload progress library.
Using the Seven library I didn't notice any display issues.
Thanks!
Comment #92
Jazz Li CreditAttribution: Jazz Li commentedSubscribing.
Comment #93
chx CreditAttribution: chx commentedA number of bugs are fixed in here, if I understand correctly:
Given the positive reports I am RTBC'ing this.
Comment #94
steinmb CreditAttribution: steinmb commentedUnable to get #70 working. It only show the throbber but does not display any error messages. The patch I testet at #42 used to work, though have not tested it on D7.7 and yes the field setting is set to "Bar with progress meter"
Test environment:
http://pecl.php.net/package/uploadprogress ver. 1.0.1
PHP 5.2.6
Drupal 7.7
APC-3.1.9
Restartet Apache (to flush APC upcode cache) and a drush cc all.
Comment #95
droplet CreditAttribution: droplet commented@steinmb,
can you test it again ?? #70 and patch before #42 almost same.
have you refresh your browser pages ?
try to drush cc all few time :)
My env is same to you but im PHP 5.3
Comment #96
steinmb CreditAttribution: steinmb commentedAh, now it behaved correctly when adding and removing files. Sorry about that, let's get this one in :)
Comment #97
droplet CreditAttribution: droplet commentedAnyway thanks for info.
I find a problem on APC.
APC working in opposite direction,
if #weight=-20 on APC, click the button directly (no select any file) will get errors.
Comment #98
droplet CreditAttribution: droplet commentedAnyone have chance to turn off PECL uploadprogress and do a test on APC ?
Comment #98.0
droplet CreditAttribution: droplet commentedadd issue summary
Comment #99
steinmb CreditAttribution: steinmb commentedPHP 5.2.6
Drupal 7.7
APC-3.1.9
uploadprogress.so disabled
APC and #97.
#97 break the progress bar on my server. It load the bar OK, but it is not showing (updating) the progress during upload. Going back to #70, and APC is performing correctly again. Not 100% on how to provoke the problem you are referring in #97. We are suppose to set the weight of the file-field to -20, and then click upload with no files selected? If so, did I try that, but without seeing any errors with #70 applied.
Comment #100
droplet CreditAttribution: droplet commentedOkay.
upgrade my APC form beta to 3.1.9 stable version solved my problem.
Back to RTBC #70 is the right patch
Comment #100.0
droplet CreditAttribution: droplet commentedUpdated issue summary.
Comment #101
sunThis "resets" everything to "none" or "throbber". What happened to "bar"?
Perhaps we want to make it a follow-up issue, but AFAIK, the idea here was to make the progress implementation 'pluggable', so if I wanted to, I could have my own custom "beerbar" implementation.
If the code purposively intends and prevents me from using my implementation, then we need a better inline comment explaining why that is done.
15 days to next Drupal core point release.
Comment #102
droplet CreditAttribution: droplet commentedRemoving an upload is less than 1 sec, show a bar is no meaning I think. (and there isn't a way to tracking remove action metre ?)
It still able to do custom beerbar implementation.
Comment #103
Steven Jones CreditAttribution: Steven Jones commented@sun This code is only concerned with the ajax settings on the remove button at this point, which we're restricting to only use either 'none' or 'throbber', which is the only two that probably make sense for the remove button anyway. You can still have a custom progress implementation on the main file upload itself.
Agreed that the comment on this code could and should be better though.
How about:
12 days to next Drupal core point release.
Comment #104
dddbbb CreditAttribution: dddbbb commentedsub
Comment #105
dddbbb CreditAttribution: dddbbb commented#70 & #97 just resulted in great big AJAX errors. #66 worked for me kind of (I'm using PECL uploadprogress) but I still get a progress bar on clicking remove. On one of my servers the progress bar never goes away on remove (not good) on another server it appears on remove but eventually goes away and the file is removed.
Also, I'm getting a differently styled progress bar on each server - anyone have any ideas what could be causing that?
Comment #106
droplet CreditAttribution: droplet commentedApply #70 and clean caches.
Post your sever info if no helps.
Comment #107
dddbbb CreditAttribution: dddbbb commentedThat sorted it, nice one. Turns out my odd styling issue was entirely cache related also.
Comment #107.0
dddbbb CreditAttribution: dddbbb commentedUpdated issue summary.
Comment #108
Nico Heulsen CreditAttribution: Nico Heulsen commentedsubscribe
Comment #109
bluestarstudios CreditAttribution: bluestarstudios commentedSo is patch from #70 the one we should use right now? Will it work in Drupal 7? Thanks.
Comment #110
droplet CreditAttribution: droplet commentedYes. working in D7
Comment #111
infines CreditAttribution: infines commentedThis should be committed before tomorrow!
Comment #112
droplet CreditAttribution: droplet commentedis suggestion on #103 good enough ? I will reroll it.
Comment #112.0
droplet CreditAttribution: droplet commentedUpdated issue summary.
Comment #113
Nico Heulsen CreditAttribution: Nico Heulsen commentedI can confirm that patch #70 is working in combination with the PECL uploadprogress version 1.0.1. The version of the PECL extension is important. With the latest version (1.0.3.1) it will show the progressbar, but no progress.
Comment #114
jonesmac CreditAttribution: jonesmac commentedI patched Drupal 7.8 and had no luck getting it to even appear. I cleared my cache twice. I applied patch #70. Anyone have and thoughts as to what else to try?
Comment #115
Nico Heulsen CreditAttribution: Nico Heulsen commented@jonesmac What message do you get on the status report? I think you also have to change a setting of APC in your server configuration.
Comment #116
jonesmac CreditAttribution: jonesmac commentedUnder Upload Progress, it simply has it as "Enabled (PECL uploadprogress)".
I applied patch #70 and nothing changed.
I have this is my log:
"Notice: Undefined index: progress_indicator in file_field_widget_form() (line 485 of /home/mydirectory/file/file.field.inc)."
Not sure if its from the patch or not. I am running drupal 7.8
Comment #117
heshanlksub
Comment #118
jonesmac CreditAttribution: jonesmac commentedDisregard #114. It appears to be an issue with the audiofield module. For some reason it doesn't allow you to select between progress bar and throbber when uploading audio files. Don't believe its related to this issue however.
Comment #119
infines CreditAttribution: infines commentedSo the patch in #70 is the answer.
Comment #120
patrickd CreditAttribution: patrickd commentedHad the same issue, tried:
applied patch of #70
Progressbar is displayed now but upload hangs on "Starting upload..."
applied patch of #97
Now only progressbar is shown but still hanging and I get an AJAX error:
Used a clean installation with bartik theme.
Hosting on acquia devcloud with PECL extension enabled.
Comment #121
droplet CreditAttribution: droplet commented@patrickd,
patch of #97 only affect APC, so you should get same result of #70 & #97.
Suggest reinstall drupal again, patch it with #70 and clear caches. Post your PECL version if you still get failed.
see #113, maybe same problem ?
Comment #122
patrickd CreditAttribution: patrickd commentedI just tested #97 to tell you how/wether its working on my server
I applied #70 on a absolutelly clean install and cleared cache without success (same problems to #120)
upload progress version: 1.0.1
Comment #123
xavierraffin CreditAttribution: xavierraffin commentedpatch #70 works fine for me (D 7.8).
I have several D6 Drupal web sites which works on same server (with PECL progress bar).
So maybe, issue #120 is due to bad PECL conf ?
Comment #124
JordanMagnuson CreditAttribution: JordanMagnuson commented#97 works fine for me (D 7.8 pecl upload_progress 1.0.3.1).
Comment #125
droplet CreditAttribution: droplet commentedComment #126
infines CreditAttribution: infines commentedThis needs to be commited.
Comment #127
catchBefore it gets committed it needs someone to reroll per the feedback in #101, until someone does that posting on this issue is not very helpful, perhaps you'd like to try the re-roll?
Comment #128
infines CreditAttribution: infines commentedI'm afraid I don't have the proper tools to do that at the current point in time, if someone, anyone could reroll this patch that would be great.
Comment #129
droplet CreditAttribution: droplet commentedreroll patch:
- new /CORE dir
- changed comment message (#103)
(Please reroll a new patch instead just leave a comment here if you think the comment or other part of this patch is not good enough, it helps this issue move forward)
Comment #130
brainbite CreditAttribution: brainbite commentedI'm new to Drupal. And so far my experienced was pretty amazing.
But I see this issue as very critical!
Large file uploads are not possible without a progress bar!
No one waits 10 minutes before his screen looking on the trobber icon.
Too bad I'm buidling a site for a video contest where large files are submitted.
Not sure what I will tell my costumers tomorrow.
Any chance the progress bar will EVER be working in Drupal 7 ?
Comment #131
infines CreditAttribution: infines commentedYes, that patch should work now with Drupal 7. However it needs to be applied to Drupal 8 before it can be committed to Drupal 7.
Comment #132
infines CreditAttribution: infines commentedThat patch works for me perfectly, using drupal 7.9
The patch should be submitted and anyone with issues with the feature should open them up separately as the patch seems to be working for the majority of testers.
The patch doesn't work however when the upload buttons aren't clicked but the save button on a node is instead clicked by the end user. Clicking save should execute the progress bar ajax actions also.
Comment #133
infines CreditAttribution: infines commentedComment #134
catch@gridbitlabs: please open a new bug report for the save button issue and link to it from here.
The comment looks better, but two comments at the end of the patch file are missing periods on the end and don't wrap at 80 characters. I'm adding the Novice tag for a re-roll - I could fix on commit, but then webchick would have to do the same thing for Drupal 7 as well, so might as well just fix it now.
Comment #135
catchComment #136
droplet CreditAttribution: droplet commentedComment #137
catchPerfect crosspost, thanks!
Committed/pushed to 8.x, moving to 7.x. This will need a minor re-roll for 7.x as well.
Comment #138
droplet CreditAttribution: droplet commentedComment #140
catch@droplet - you'd need to upload the D7 patch without the D7 suffix for the test bot to not skip it.
Comment #141
droplet CreditAttribution: droplet commentedComment #142
Tor Arne Thune CreditAttribution: Tor Arne Thune commentedI can confirm that 935208-uploadprogress-bar-fix-129-reroll_0.patch is just a re-roll for D7 of 935208-uploadprogress-bar-fix-70-reroll.patch. Interdiff attached.
Still applies cleanly to D7.x.
Comment #143
Dane Powell CreditAttribution: Dane Powell commentedI can confirm that #141 works on 7.9, using APC 3.1.9 and PECL uploadprogress.
Comment #144
webchickThe only unfortunate thing about this from a D7 backport standpoint is that it changes a hook_menu() definition, which results in a nasty error when you hit the upload button, until you clear the cache.
However, since #1049284: Running update.php to flush caches no longer works unless there are updates pending was just committed, hopefully this won't cause too many issues in the field.
Committed and pushed to 7.x. Thanks!
Comment #145
daigorocub CreditAttribution: daigorocub commentedI tested all patches and none works. I see the progress bar saying "Starting upload", there's some ajax running, but the result is always the same:
{"message":"Starting upload...","percentage":-1}
I'm using drupal 7.9, PECL 1.0.1 and tested also with 1.0.3.1.
Please advise!
Comment #146
infines CreditAttribution: infines commentedMy advice is to wait for the next release of drupal which will have the fixes built in. Then clear your cache twice. Try that with these patches. If all fails then, open up a new issue against core about this. Next drupal point release is the 11/30/11
Comment #147
infines CreditAttribution: infines commentedAlso I advise that extension=uploadprogress.so is enabled in php.ini
Comment #149
droplet CreditAttribution: droplet commentedGreat.
Drupal 7.10 included this patch. do a fresh installation if you're failed :)
- try D7.10
- try new version of PECL
- try APC
and report as a new thread if you still hit the problems :)
Comment #150
j0rd CreditAttribution: j0rd commentednvm
Comment #150.0
j0rd CreditAttribution: j0rd commentedUpdated issue summary.
Comment #151
mendu.sriram CreditAttribution: mendu.sriram commentedUpload progress not working in content type loaded through Ajax...
I have trace response
{"message":"Starting upload...","percentage":-1}
can anybody help me please ...