// Product-info page function which opens new image window for large product shots
function getImageXtraLarge(pExistingImageID, ImageURL, imageWidth, imageHeight)
{
	$imageLink = document.getElementById(pExistingImageID).src; // Get image link using the img id (placeholder)
	
	$imageName=$imageLink.split("/"); // Because the link contains directorys, use split to create an array
	
	$arrayLength=$imageName.length-1; // We only need the last array value so obtain it using length minus 1.
	
	// Open new window with the url created with [PRD_XTRA_LARGE_LINK] and the image name (taken from the created array)
	newwindow=window.open("/library/image_popup/popup.php?url="+ImageURL+$imageName[$arrayLength]+"&clTxt=Click on image to close window", "mywindow","menubar=1,resizable=1"); // ,'name','height='+imageWidth+', width='+imageHeight+', location=yes'

	if (window.focus) 
	{
		newwindow.focus()
	}
}

// Function to get medium image and display it on product info page.
function getImage(pExistingImageID, pImageURL) // Pass in div id (placeholder) and image url
{ 

	//var zoomimage = '/library/ZoomImage.php?src=';
    var img = document.createElement('img'); // Build image element
    
    img.onload = function (evt) // Create a function which is run when the image loads and appends our existing page (without having to reload it).
    {
        document.getElementById(pExistingImageID).src=this.src;
        document.getElementById(pExistingImageID).width=this.width;
        document.getElementById(pExistingImageID).height=this.height;
    }
    //img.src = zoomimage+pImageURL;
	img.src = pImageURL;
}

function doNothing() {
}

function show_large($new_src) { 
	document.getElementById('large_img').src='/templates/img/products/larges/'+$new_src;
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function Add_A_Favorite() 
{ 
if (window.external) 
// if the browser is IE open the add favorite window
{
external.AddFavorite(location.href, document.title)
// Add the document location and title to the AddFavorite window
}
else 
// Display and alert box for any other browser.
{
alert("Sorry, your browser doesn't support this feature." + 
"\nPlease use the bookmark feature of your browser to save the location of this page.");
}

}

function printPage() {
  if (window.print)
    window.print()
  else
    alert("Sorry, your browser doesn't support this feature.");
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
   var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
   if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

//////////////////////////////////////////////////////////////////////////////
/////////////////////// Used to validate blog post form
function checkForm() 
{
	var field_names = new Array("author","email","comment");
	var status = true;
	
	for (i=0;i<field_names.length;i++) 
	{
		if (document.getElementById(field_names[i])) 
		{
			if (document.getElementById(field_names[i]).value.length==0) 
			{
				document.getElementById(field_names[i]).parentNode.className = "invalid";
				status = false;
			} else 
			{
				document.getElementById(field_names[i]).parentNode.className = "";
			}
		}
	}
	
	if (!status) 
	{
		document.getElementById("comment-status").innerHTML = "Please fill in required fields";
	}
	if (status) 
	{
		if (echeck(document.getElementById("email").value)==false){
			
			status = false;
		}
	}
	return status;
}

// Check for commentform
function checkCommentForm() 
{
	if (document.getElementById) 
	{ 
		if (document.getElementById("commentform")) // If the page contains the commentform, attach the checkForm function
		{
			document.getElementById("commentform").onsubmit = checkForm;
		}
	}
}
// This function runs the funtion (defined as an argument) after the page has loaded (it is used so we dont overwrite additional onLoad functions that could be located in the body tag
function onPageLoad(func) 
{
	var oldonLoad = window.onload; // Set variable to the window.onload event
	// If the window.onload event does not already have a function attached, run checkCommentForm() function (or whatever the argument is)
	if (typeof window.onload != 'function') 
	{
		window.onload = func;
	} 
	else  // If the onload event has functions attached to it, run them first before runnning the checkCommentForm() function
	{
		window.onload = function() 
		{
			oldonLoad();
			func();
		}
	}
}

/**
 * DHTML email validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */

function echeck(str) 
{
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1){
	   document.getElementById("comment-status").innerHTML = "Invalid E-mail";
	   return false
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   document.getElementById("comment-status").innerHTML = "Invalid E-mail";
	   return false
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		document.getElementById("comment-status").innerHTML = "Invalid E-mail";
		return false
	}

	 if (str.indexOf(at,(lat+1))!=-1){
		document.getElementById("comment-status").innerHTML = "Invalid E-mail";
		return false
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		document.getElementById("comment-status").innerHTML = "Invalid E-mail";
		return false
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
		document.getElementById("comment-status").innerHTML = "Invalid E-mail";
		return false
	 }
	
	 if (str.indexOf(" ")!=-1){
		document.getElementById("comment-status").innerHTML = "Invalid E-mail";
		return false
	 }
	 return true
 }
 
// function below used for the captcha scripts (contact-us.php)
function new_freecap()
{
	// loads new freeCap image
	if(document.getElementById)
	{
		// extract image name from image source (i.e. cut off ?randomness)
		thesrc = document.getElementById("freecap").src;
		thesrc = thesrc.substring(0,thesrc.lastIndexOf(".")+4);
		// add ?(random) to prevent browser/isp caching
		document.getElementById("freecap").src = thesrc+"?"+Math.round(Math.random()*100000);
	} 
	else
	{
		alert("Sorry, cannot autoreload freeCap image\nSubmit the form and a new freeCap will be loaded");
	}
}

/**
 * DHTML email validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */
////////////////// Check comment form
///////////////////////////////////////////////////////////////