/*
 * Generic external JavaScript Document for Chiaroscuro Winery Web site
 * Assembled by:  Ruth Iverson, 2007
 *
 */
 
//-- Generic "call JavaScript" function

function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}

//-- Two-state rollover

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;
}
	

//-- Pre-load images

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];
				}
	}
}


//-- Get object you are manipulating

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;
}


//-- Swap Image

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];
		}
}


//-- Show-Hide layers

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
	
  for (i=0; i < (args.length-2); i+=3)
		if ((obj=MM_findObj(args[i]))!=null) { 
			v=args[i+2];
    	if (obj.style) { 
				obj=obj.style; 
				v=(v=='show')?'visible':(v=='hide')?'hidden':v; 
			}
    	obj.visibility=v; 
		}
}


//-- Form validation

function MM_validateForm() { //v4.0
  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=MM_findObj(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';
				} 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'; 
		}
  } 
	if (errors) 
		alert('The following error(s) occurred:\n'+errors);
  document.MM_returnValue = (errors == '');
}

// open browser window

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

// go to url

function MM_goToURL() { //v3.0
  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}