document.execCommand("BackgroundImageCache",false,true);

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];}}
}

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_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_validateForm() { //v4.0
  if (document.getElementById){
    var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
    for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
      if (val) { nm=val.name; if ((val=val.value)!="") {
        if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
          if (p<1 || p==(val.length-1)) {
		  	errors+='- '+nm+' must contain an e-mail address.\n'
			document.getElementById(args[i]).className = nm+'Err'; 
			document.getElementById(args[i]).style.backgroundColor = '#F6E4E4'; 
			};
        } else if (test!='R') { num = parseFloat(val);
          if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
          if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
            min=test.substring(8,p); max=test.substring(p+1);
            if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
      } } } else if (test.charAt(0) == 'R') { 
	  			errors += '- '+nm+' is required.\n'; 
				document.getElementById(args[i]).className = nm+'Err'; 
				document.getElementById(args[i]).style.backgroundColor = '#F6E4E4'; 
			}}
    } //if (errors) alert('The following error(s) occurred:\n'+errors);
    document.MM_returnValue = (errors == '');
} }

function promoDisplay(obj) {
	var y = document.getElementById(obj);
	var offer = document.getElementById('promoOffer');
	var freeGift = document.getElementById('promoFreeGift');
	
	if ( y.style.display != "none" ) {
		y.style.display = 'none';
		document.getElementById(obj+"BG").style.display = 'none';
		document.getElementById(obj+"BT").style.backgroundPosition = '0 0';
	}
	else {
		y.style.display = 'block';
		document.getElementById(obj+"BG").style.display = 'block';
		document.getElementById(obj+"BT").style.backgroundPosition = '0 -22px';
}
	
	var promo = new Array();
	promo[0] = "promoOffer";
	promo[1] = "promoFreeGift";
	
	var i = 0;
	for (i=0;i<=1;i++)
	{
		var x = promo[i];
	    if ( obj == x ) {
			if ( document.getElementById(x).style.display != "none" ) {
				document.getElementById(x).style.display = 'block';
				document.getElementById(x+"BG").style.display = 'block';
				document.getElementById(x+"BT").style.backgroundPosition = '0 -22px';
			}
			else {
				document.getElementById(x).style.display = 'none';
				document.getElementById(x+"BG").style.display = 'none';
				document.getElementById(x+"BT").style.backgroundPosition = '0 0';
			}
		}
		else {
		  	document.getElementById(x).style.display = 'none';
			document.getElementById(x+"BG").style.display = 'none';
			document.getElementById(x+"BT").style.backgroundPosition = '0 0';
		}
	}
	
}

function promoClose(obj) {
	document.getElementById(obj).style.display = 'none' ;
	document.getElementById(obj+"BG").style.display = 'none' ;
	document.getElementById(obj+"BT").style.backgroundPosition = '0 0';
}

function FGTextChange(obj) 
{	
	var text = document.getElementById(obj);

	if ( text.value == '' ) {
		text.className = 'default';
		text.style.backgroundColor = '#dff6f9'; 
	}
}

function FGTextChangeR(obj) 
{	
	var text = document.getElementById(obj);
	
	if (obj == 'Yname' ) { var textClass = 'nameErr'; }
	if (obj == 'Yemail' ) { 
		var textClass = 'emailErr'; 
		
		if ((val=text.value)!="") {
			p=val.indexOf('@');
			if (p<1 || p==(val.length-1)) {
				text.style.backgroundColor = '#F6E4E4';
			};
		}
	}
	if (obj == 'Yaddress' ) { var textClass = 'addressErr'; }
	if (obj == 'Ycity' ) { var textClass = 'cityErr'; }
	if (obj == 'Ystate_pc' ) { var textClass = 'state_pcErr'; }
	if (obj == 'Nname' ) { var textClass = 'nameErr'; }
	if (obj == 'Nemail' ) { 
		var textClass = 'emailErr'; 
		
		if ((val=text.value)!="") {
			p=val.indexOf('@');
			if (p<1 || p==(val.length-1)) {
				text.style.backgroundColor = '#F6E4E4';
				 
			};
		}
	}
	if (obj == 'Naddress' ) { var textClass = 'addressErr'; }
	if (obj == 'Ncity' ) { var textClass = 'cityErr'; }
	if (obj == 'Nstate_pc' ) { var textClass = 'state_pcErr'; }
	if (obj == 'Sname' ) { var textClass = 'nameErr'; }
	if (obj == 'Semail' ) { 
		var textClass = 'emailErr'; 
		
		if ((val=text.value)!="") {
			p=val.indexOf('@');
			if (p<1 || p==(val.length-1)) {
				text.style.backgroundColor = '#F6E4E4';
			};
		}
	}
	if (obj == 'Swhere' ) { var textClass = 'whereErr'; }
	
	if ( text.value == '' ) {
		text.className = textClass
		text.style.backgroundColor = '#F6E4E4'; 
	}
}

var secs
var timerID = null
var timerRunning = false
var delay = 1000;

function InitializeTimer()
{
    // Set the length of the timer, in seconds
    secs = 6
    StopTheClock()
    StartTheTimer()
	//document.getElementById("promoOffer").style.display = 'block';
	//document.getElementById("promoOfferBG").style.display = 'block';
	new Effect.Appear('promoOffer', { duration: 1.0 });
	new Effect.Appear('promoOfferBG', { duration: 1.0 });
}

function StopTheClock()
{
    if(timerRunning)
        clearTimeout(timerID)
    timerRunning = false
}

function StartTheTimer()
{
	
    if (secs==0)
    {
        StopTheClock()
        // Here's where you put something useful that's
        // supposed to happen after the allotted time.
        // For example, you could display a message:
		new Effect.Fade('promoOffer', { duration: 1.0 });
		new Effect.Fade('promoOfferBG', { duration: 1.0 });
        
    }
    else
    {
        self.status = secs
        secs = secs - 1
        timerRunning = true
        timerID = self.setTimeout("StartTheTimer()", delay)
		
    }
}

window.addEvent('domready', function() {
									 
	var options = { height: 20}; 					 
	$$('img.reflect').each(function(img) {
		img.reflect(options);
	});
	
	if ( $('buy') != null && $('qty_total') != null ) {
		
		$('buy').addEvent('submit', function(x) {
			var a = parseInt(0);
			this.getParent().getElements('input.qty').each(function(z) {
				if ( z.value != "" ) a = parseInt(z.value) + parseInt(a);
			});
			if ( a == 0 ) a = "";
			$('qty_total').set('value', a);
		});
	}

});
