Reply
Php Code w/ Javascript Doesn't wanna work...
Old 03-25-2006, 01:35 AM Php Code w/ Javascript Doesn't wanna work...
Brian07002's Avatar
Webmaster Talker

Posts: 537
Name: Brian
Location: United States
Ok,

I'm trying to get a javascript popup script from
to work from 'inside' my shopping cart...Basically changing the default javascript popup to this one:

Quote:

// Set the horizontal and vertical position for the popup

PositionX = 100;
PositionY = 100;

// Set these value approximately 20 pixels greater than the
// size of the largest image to be used (needed for Netscape)

defaultWidth = 500;
defaultHeight = 500;

// Set autoclose true to have the window close automatically
// Set autoclose false to allow multiple popup windows

var AutoClose = true;

// Do not edit below this line...
// ================================
if (parseInt(navigator.appVersion.charAt(0))>=4){
var isNN=(navigator.appName=="Netscape")?1:0;
var isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;}
var optNN='scrollbars=no,width='+defaultWidth+',height ='+defaultHeight+',left='+PositionX+',top='+Positi onY;
var optIE='scrollbars=no,width=150,height=100,left='+P ositionX+',top='+PositionY;
function EnlargeImage(imageURL,imageTitle){
if (isNN){imgWin=window.open('about:blank','',optNN); }
if (isIE){imgWin=window.open('about:blank','',optIE); }
with (imgWin.document){
writeln('<html><head><title>Loading...</title><style>body{margin:0px;}</style>');writeln('<sc'+'ript>');
writeln('var isNN,isIE;');writeln('if (parseInt(navigator.appVersion.charAt(0))>=4){');
writeln('isNN=(navigator.appName=="Netscape")?1:0; ');writeln('isIE=(navigator.appName.indexOf("Micro soft")!=-1)?1:0;}');
writeln('function reSizeToImage(){');writeln('if (isIE){');writeln('window.resizeTo(100,100);');
writeln('width=100-(document.body.clientWidth-document.images[0].width);');
writeln('height=100-(document.body.clientHeight-document.images[0].height);');
writeln('window.resizeTo(width,height);}');writeln ('if (isNN){');
writeln('window.innerWidth=document.images["George"].width;');writeln('window.innerHeight=document.ima ges["George"].height;}}');
writeln('function doTitle(){document.title="'+imageTitle+'";}');writ eln('</sc'+'ript>');
if (!AutoClose) writeln('</head><body bgcolor=000000 scroll="no" onload="reSizeToImage();doTitle();self.focus()">')
else writeln('</head><body bgcolor=000000 scroll="no" onload="reSizeToImage();doTitle();self.focus()" onblur="self.close()">');
writeln('<img name="George" src='+imageURL+' style="display:block"></body></html>');
close();
}}
The code above 'almost' works, but here's the deal, I get a broken image. But I know why the code is faulting, just having a problem getting it to work. It's because the way the shopping cart parses the urls. Here's the url string that my cart is using to get the image.

Quote:
<a href="javascript:EnlargeImage('{$url_http}p=image& image_src={if $product.image_location=="Local"}{$url_base}{/if}{$product.image}','{$product.image_width}','{$p roduct.image_height}');"><img src="{$product.image}" {$img_width} style="border-width: 1px;" padding:0px 0px 0px 0px;margin:0px 0px 0px 0px;" alt="{$product.title|gs}" title="{$product.title|gs}"/></a>
Note that in the <a href code above where you see the function name EnlargeImage, that used to be popImage (my shopping carts default popup function), and the popImage is the only thing that I changed in the url code, but the popImage function is what I removed and put the new javascript (the first bit of code)

If you want to see what the error is all about, goto: and click the image, it will pop up with a broken 'x'

Note: Only in Internet Explorer, Firefox will open a 'default' popup, which is what I am trying to avoid in the first place.

-Brian
__________________
Millart's Wonderful World of Vector Art
http://millart.110mb.com/

Last edited by Brian07002 : 03-25-2006 at 01:44 AM.
Brian07002 is offline
Reply With Quote
View Public Profile
 
When You Register, These Ads Go Away!
Old 03-25-2006, 04:47 AM Re: Php Code w/ Javascript Doesn't wanna work...
chrishirst's Avatar
Super Moderator

Posts: 13,669
Location: Blackpool. UK
the problem with FF is there isn't a version 4 never mind one greater than;
this
Code:
if (parseInt(navigator.appVersion.charAt(0))>=4){
will only run the popup script if the version number is 4 or greater than 4

to find out what is going wrong with the images you will need to have the script write the variable names and values out to the browser so you can do some basic debugging and see what is going wrong.
You cannot tell from looking at the script code you posted.
__________________
Chris. ->> Links are advertising NOT optimising!! <<-
Indifference will be the downfall of mankind, but who cares?
Code Samples | People Counting System
chrishirst is offline
Reply With Quote
View Public Profile Visit chrishirst's homepage!
 
Old 03-25-2006, 06:05 PM Re: Php Code w/ Javascript Doesn't wanna work...
Brian07002's Avatar
Webmaster Talker

Posts: 537
Name: Brian
Location: United States
Quote:
to find out what is going wrong with the images you will need to have the script write the variable names and values out to the browser so you can do some basic debugging and see what is going wrong.
Is there a way to also allow FF to be included as a valid browser to display the code correctly?

Could you show me what you mean, I am not that advanced in coding.

-Brian
__________________
Millart's Wonderful World of Vector Art
http://millart.110mb.com/

Last edited by Brian07002 : 03-25-2006 at 06:13 PM.
Brian07002 is offline
Reply With Quote
View Public Profile
 
Old 03-25-2006, 07:06 PM Re: Php Code w/ Javascript Doesn't wanna work...
chrishirst's Avatar
Super Moderator

Posts: 13,669
Location: Blackpool. UK
just been checking things out. FF reports as Netscape 5 so sghould be ok.

The image code in the popup is going wrong
HTML Code:
<img name="George" src=http://www.brothersvarietystore.com/apparel/shop/index.php?p=image&image_src=http://www.dollardays.com/images/g39/image2/fm91042.jpg
This bit of the code is where the problem is
HTML Code:
<a href="javascript:EnlargeImage('{$url_http}p=image& image_src={if $product.image_location=="Local"}{$url_base}{/if}{$product.image}','{$product.image_width}','{$p roduct.image_height}');">
so If I've read the source code properly this should work;
HTML Code:
<a href="javascript:EnlargeImage('{$product.image}','{$product.image_width}','{$product.image_height}');"><img src="{$product.image}" {$img_width} style="border-width: 1px;" padding:0px 0px 0px 0px;margin:0px 0px 0px 0px;" alt="{$product.title|gs}" title="{$product.title|gs}"/></a>
__________________
Chris. ->> Links are advertising NOT optimising!! <<-
Indifference will be the downfall of mankind, but who cares?
Code Samples | People Counting System
chrishirst is offline
Reply With Quote
View Public Profile Visit chrishirst's homepage!
 
Old 03-25-2006, 08:21 PM Re: Php Code w/ Javascript Doesn't wanna work...
Brian07002's Avatar
Webmaster Talker

Posts: 537
Name: Brian
Location: United States
Thank you Chrishirst!

You helped me out again! It works awesome! Now I am just going to update the rest of my site to reflect the changes.

-Brian
__________________
Millart's Wonderful World of Vector Art
http://millart.110mb.com/
Brian07002 is offline
Reply With Quote
View Public Profile
 
Reply     « Reply to Php Code w/ Javascript Doesn't wanna work...
 

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off




   
RSS Feed  Feeds: RSS   JS   XML
RSS Feed  Feeds for this forum: RSS   JS   XML

 


Page generated in 0.13081 seconds with 12 queries