<div>Well this is just odd.</div>
<div> </div>
<div>When Firefox, Chrome and IE6 submit files-to-upload, the structure returned by $c->req->uploads is DIFFERENT for explorer -- it's an ARRAYREF instead of a HASHREF:</div>
<div><br></div><div><div>DB<2> x $c->req->uploads</div><div><b><span class="Apple-style-span" style="background-color: rgb(255, 255, 51);">0 HASH(0x9d04d20)</span></b></div><div> '<b><span class="Apple-style-span" style="background-color: rgb(255, 255, 51);">newatt[1]</span></b>' => Catalyst::Request::Upload=HASH(0xb81a098)</div>
<div> 'filename' => '<a href="http://japh.pl" target="_blank">japh.pl</a>'</div>
<div> 'headers' => HTTP::Headers=HASH(0xb448c28)</div><div> 'content-disposition' => 'form-data; name="newatt[1]"; filename="<a href="http://japh.pl" target="_blank">japh.pl</a>"'</div>
<div> 'content-type' => 'text/x-perl-script'</div><div> 'size' => 104</div><div> 'tempname' => '/tmp/6V0Vlas5td'</div><div> 'type' => 'text/x-perl-script'</div>
<div> '<b><span class="Apple-style-span" style="background-color: rgb(255, 255, 51);">newatt[2]</span></b>' => Catalyst::Request::Upload=HASH(0xb448c88)</div><div> 'filename' => 'TODO'</div>
<div> 'headers' => HTTP::Headers=HASH(0xb650140)</div><div> 'content-disposition' => 'form-data; name="newatt[3]"; filename="TODO"'</div>
<div> 'content-type' => 'application/octet-stream'</div><div> 'size' => 29</div><div> 'tempname' => '/tmp/2RTgotIgut'</div><div> 'type' => 'application/octet-stream'</div>
<div><br></div>The same attempted upload for Explorer 8 looks like this instead:</div><div><br></div><div><div><b><span class="Apple-style-span" style="background-color: rgb(255, 255, 51);">0 ARRAY(0xab06360)</span></b></div>
<div><b><span class="Apple-style-span" style="background-color: rgb(255, 255, 51);"> 0</span></b> Catalyst::Request::Upload=HASH(0xb448c88)</div><div> 'filename' => '<a href="http://japh.pl" target="_blank">japh.pl</a>'</div>
<div> 'headers' => HTTP::Headers=HASH(0xb81a098)</div><div> 'content-disposition' => 'form-data; name="newatt[1]"; filename="<a href="http://japh.pl" target="_blank">japh.pl</a>"'</div>
<div> 'content-type' => 'text/x-perl-script'</div><div> 'size' => 104</div><div> 'tempname' => '/tmp/3Tg94Iq85j'</div><div> 'type' => 'text/x-perl-script'</div>
<div><span class="Apple-style-span" style="background-color: rgb(255, 255, 51);"> </span><b><span class="Apple-style-span" style="background-color: rgb(255, 255, 51);">1</span></b> Catalyst::Request::Upload=HASH(0xb448c28)</div>
<div> 'filename' => 'TODO'</div><div> 'headers' => HTTP::Headers=HASH(0xb448c88)</div><div> 'content-disposition' => 'form-data; name="newatt[3]"; filename="TODO"'</div>
<div> 'content-type' => 'application/octet-stream'</div><div> 'size' => 29</div><div> 'tempname' => '/tmp/T2r9F7Ex11'</div><div> 'type' => 'application/octet-stream'</div>
<div><br></div><div>The structure of each node is the same, but as a whole the upload-list switches internally from a HASHREF to an ARRAYREF. IE6, FireFox, Chrome all bring in the Hashref, but IE8 brings in an Arrayref.</div>
<div><br></div><div>On top of that, if there's just one upload, it's not even an array, it's just the node itself.</div><div><br></div><div>What the heck? Sure seems odd to offer a different storage structure based on browser-platform...</div>
<div><br></div> </div>
<div class="gmail_quote">On Wed, Oct 6, 2010 at 8:27 AM, will trillich <span dir="ltr"><<a href="mailto:will.trillich@serensoft.com" target="_blank">will.trillich@serensoft.com</a>></span> wrote:<br>
<blockquote style="border-left:#ccc 1px solid;margin:0px 0px 0px 0.8ex;padding-left:1ex" class="gmail_quote">
<div>The FormBuilder/Catalyst -generated HTML works just fine in Chrome and in Firefox, so debugging there isn't useful. It also works fine in older Internet Explorers. :( I was hoping someone has already run into this FormBuilder-snag-with-IE8 and found an elegant fix...<br>
<br></div>
<div>And the "<span style="border-collapse:collapse;font-family:arial, sans-serif;font-size:13px">return validate_incident(this)" code is generated via FormBuilder, that's why I was asking the list, hoping someone else here has run into this and found a workaround.</span></div>
<div><br></div>
<div>We do have other DHTML javascript on the page (e.g. click to dynamically add another upload-field) so Javascript and JQuery are working. IE8 has apparently been tweaked enough that it doesn't recognize the object in that context...?</div>
<div><br></div>
<div>Any ideas?</div>
<div>
<div></div>
<div>
<div><br></div>
<div><br>
<div class="gmail_quote">On Wed, Oct 6, 2010 at 1:13 AM, Toby Corkindale <span dir="ltr"><<a href="mailto:toby.corkindale@strategicdata.com.au" target="_blank">toby.corkindale@strategicdata.com.au</a>></span> wrote:<br>
<blockquote style="border-left:#ccc 1px solid;margin:0px 0px 0px 0.8ex;padding-left:1ex" class="gmail_quote">
<div>On 06/10/10 14:00, will trillich wrote:<br>
<blockquote style="border-left:#ccc 1px solid;margin:0px 0px 0px 0.8ex;padding-left:1ex" class="gmail_quote">Short version: Catalyst/Formbuilder uploads work fine in firefox and<br>chrome, works fine in IE 6... but not IE 8, where it throws an "object<br>
expected" error.<br></blockquote><br></div>Ugh, I hit this a little while ago, but have forgotten the details already.<br>I think you are looking in the right direction with the "this" though; try validating it in your function to ensure it contains what you're expecting perhaps?<br>
<br>Also, can you verify that jquery is actually getting loaded OK?<br><br>ie. In your document, put something like:<br> $(function() { alert("jquery has loaded!"); });<br><br>and check to see that you get an alert box when you load the page. If not, fire up Chrome's developer tools, or Firefox's Firebug, and see they mention any warnings or errors.<br>
<br>-Toby<br><br>_______________________________________________<br>List: <a href="mailto:Catalyst@lists.scsys.co.uk" target="_blank">Catalyst@lists.scsys.co.uk</a><br>Listinfo: <a href="http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst" target="_blank">http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst</a><br>
Searchable archive: <a href="http://www.mail-archive.com/catalyst@lists.scsys.co.uk/" target="_blank">http://www.mail-archive.com/catalyst@lists.scsys.co.uk/</a><br>Dev site: <a href="http://dev.catalyst.perl.org/" target="_blank">http://dev.catalyst.perl.org/</a><br>
</blockquote></div><br></div></div></div></blockquote></div>
<div><br></div>