XUpload - Inline windows and Safari

Message
Author
tubbly
Posts: 18
Joined: Sep 06, 2006 10:59 pm

Inline windows and Safari

#1 Postby tubbly » Sep 18, 2006 3:00 pm

I've bought and got XUpload 2.2 working - it's great!

However, Safari will not display the inline graphics. It does upload the files but the user has no idea what is happening until the file has uploaded.

Also, when choosing a pop-up window, the pop-up immediately goes to the back of the main window so it's possible that the user will not notice it and again wonder what is happening.

This can be seen on your demo's as well.

Does anyone know what needs to be done to reveal the inline graphics?

User avatar
PilgrimX182
Posts: 2186
Joined: Mar 22, 2006 1:39 pm

#2 Postby PilgrimX182 » Sep 19, 2006 6:17 am

Yea, had this problems some times. This is a browser problem. But I think we have a solution. Find this string in xupload.js:

Code: Select all

<iframe src="about:blank"
and change "about:blank" to filename containing HTML with images inside like

Code: Select all

<HTML><BODY>
<img src="http://..../img1.jpg">
<img src="http://..../img2.jpg">
...
</HTML></BODY>
this will cache images for that inline frame.

tubbly
Posts: 18
Joined: Sep 06, 2006 10:59 pm

#3 Postby tubbly » Sep 19, 2006 7:51 am

Sorry, I don't quite follow what you mean.

I've found the string <iframe src="about:blank" in xupload.js
in which to put an html filename.

Presumably I create a new html file as per your code,
but what images are you referring to?

User avatar
PilgrimX182
Posts: 2186
Joined: Mar 22, 2006 1:39 pm

#4 Postby PilgrimX182 » Sep 20, 2006 6:33 am

Ah, probably I didn't get your point. I thought you meant images for graphics. I guess you meant progress bar not showing till the end of transmission.
That's the Safai little problem - it not refreshing content till get another 4kb data chunk. I've played with XUpload in Safari and made some hacks for it:

for pop-up focus: in upload_status.cgi add this string next line after "print $t->output;"

Code: Select all

print"<Script>window.focus();</Script>";
for correct refreshing: in upload_status.cgi change this string

Code: Select all

print"<Script>SP('$size',$time,$speed,$files_uploaded,$time_left);$speed_str</Script>"
to

Code: Select all

print"<Script>SP('$size',$time,$speed,$files_uploaded,$time_left);$speed_str</Script>".' 'x4100;
Please report if this will help. I've tested this in Safari 1.3.2
Updated our demo on original XUpload page too.

tubbly
Posts: 18
Joined: Sep 06, 2006 10:59 pm

#5 Postby tubbly » Sep 20, 2006 12:36 pm

I'm using Safari 2.04

The pop-up fix works OK (as does the Inline1).

The Inline2 (i.e. displaying within the table) doesn't and unfortunately this is the one we're going to be using.
On clicking the Upload button, it goes straight to the redirect_link url and does not pass the filename (nor uploads the file!). This is the same on my own website and your demo.

I get the impression Safari can be a bit of a nuisance at times, but unfortunately a lot of our clients from the Print/Design trade will be using it.

Thanks

User avatar
PilgrimX182
Posts: 2186
Joined: Mar 22, 2006 1:39 pm

#6 Postby PilgrimX182 » Sep 21, 2006 8:38 am

Thanks for reporting the problem. It took me a while to make it work in Safari(kinda strange browser), now working the same in IE,FireFox,Opera,Safari.

Here's the fix:

in upload_form.html replace line "<iframe src="about:blank" id="progress..." with

Code: Select all

<div id="progress2" style="position: absolute; left: -999px;"><iframe src="about:blank" id="progress2f" name="transfer2" border=0 SCROLLING=NO topmargin=0 leftmargin=0 frameborder=0 style="width: 395px; height: 260px;"></iframe></div>
Aslo here's fixed xupload.js: http://sibsoft.net/test/xupload.js

Tested in Safari 1, hope it will work in 2 too.

tubbly
Posts: 18
Joined: Sep 06, 2006 10:59 pm

#7 Postby tubbly » Sep 21, 2006 12:54 pm

Yes, that works in Safari 2.04 :D

Thanks for the quick replies.

tubbly
Posts: 18
Joined: Sep 06, 2006 10:59 pm

#8 Postby tubbly » Sep 22, 2006 7:48 am

Well, it almost works..... inline2 (show in table) now displays the upload correctly in Safari 2.04 but the stop button does not stop the upload (this is the same on your demo).

Not a major problem as it the user can click the browser's Stop button but it's not ideal!


I also notice that the display for Explorer 5.2 (Mac) is a bit flaky, the numeric info (amount uploaded, time etc) appear briefly then vanish until the next refresh. Again, not a major problem as you can see the progress bar but not ideal.
I tried the fix you put in the other topic ("if (navigator.appVersion.indexOf("Mac")>0 && navigator.appVersion.indexOf("MSIE")>0)return;") but it doesn't seem to make any difference.