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

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_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features).focus();
}

function onLoad1() {}

function switchImage(imgName, imgSrc)  {
  if (document.images)   {
    if (imgSrc != "none")   {
      document.images[imgName].src = imgSrc;
    }
  }
}

function SlideShow(slideList, image, speed, name)          
{
  this.slideList = slideList;
  this.image = image;
  this.speed = speed;
  this.name = name;
  this.current = 0;
  this.timer = 0;
}
SlideShow.prototype.play = SlideShow_play;  
function SlideShow_play()       
{
  with(this)
  {
	if(current++ == slideList.length-1) current = 0;
	switchImage(image, slideList[current]);
    clearTimeout(timer);
    timer = setTimeout(name+'.play()', speed);
  }
}







function makeHilight(d, d2) { if (d!=d2) {document.getElementById(d).style.background = "url(../Images/gallery-thumb128x96-cur.gif)"; 
		document.getElementById(d2).style.background = "url(../Images/gallery-thumb128x96-bkg.gif)"; }}
function makeHilight2(d, d2) { if (d!=d2) {document.getElementById(d).style.background = "url(../Images/gallery-thumb113x120-cur.gif)"; 
		document.getElementById(d2).style.background = "url(../Images/gallery-thumb113x120-bkg.gif)"; }}
function swapDIV(d, d2) {document.getElementById(d2).style.display = "none";
						document.getElementById(d).style.display = "block"; }
function HideDIV(d) { document.getElementById(d).style.display = "none"; }
function DisplayDIV(d) { document.getElementById(d).style.display = "block"; }
function makeRed(d) {document.getElementById(d).style.color = "#cc0000"; }
function makeCCC(d) {document.getElementById(d).style.color = "#CCCCCC"; }
function makeYellow(d) {document.getElementById(d).style.color = "#ffcc00"; }

function makeInverse(d) {document.getElementById(d).style.color = "#ffcc00"; document.getElementById(d).style.backgroundColor="#006633";}
function makeBlack(d) {document.getElementById(d).style.color = "#000000"; }
function makeWhite(d) {document.getElementById(d).style.color="#ffffff"; }
function makeBkgGray(d) {document.getElementById(d).style.backgroundColor="#ccccdd"; }
function makeBkgDarkGreen(d) {document.getElementById(d).style.backgroundColor="#004400";
								document.getElementById(d).style.borderTopColor="#003f00";
								document.getElementById(d).style.borderBottomColor="#005500";} //bkg 004400
function makeBkgNormal(d) {document.getElementById(d).style.backgroundColor="#006633";
								document.getElementById(d).style.borderTopColor="#009900";
								document.getElementById(d).style.borderBottomColor="#003300";}								
function makeBkg999(d) {document.getElementById(d).style.backgroundColor="#999999"; }
function makeBkg666(d) {document.getElementById(d).style.backgroundColor="#666666"; }


function keyCheck(eventObj, obj) 
{ 
	var keyCode 

	// Check For Browser Type 
	if (document.all){ 
	keyCode=eventObj.keyCode 
	} 
	else{
	keyCode=eventObj.which 
	}

	var str=obj.value 

	//if(keyCode==46){ 
	//	if (str.indexOf(".")>0){ 
	//		return false 
	//	} 
	//} 

	if((keyCode<48 || keyCode >58) && (keyCode!=46) && (keyCode!=40) && (keyCode!=41) && (keyCode!=45) && (keyCode!=32))  { // Allow only integers and )(- 
		return false 
	} 
	return true 
} 

function isReturn(eventObj) {
	var keyCode 

	// Check For Browser Type 
	if (document.all){ 
		keyCode=eventObj.keyCode 
	} 
	else{
		keyCode=eventObj.which 
	}
    if( keyCode==13) return true;
	else   		   return false;
}	



// A utility function that returns true if a string contains only 
// whitespace characters.
function isblank(s) {
    for(var i = 0; i < s.length; i++) {
        var c = s.charAt(i);
        if ((c != ' ') && (c != '\n') && (c != '\t')) return false;
    }
    return true;
}

// This is the function that performs form verification. It is invoked
// from the onsubmit event handler. The handler should return whatever
// value this function returns.
function verify(f) {
    var msg;
    var empty_fields = "";
    var errors = "";

    // Loop through the elements of the form, looking for all 
    // text and textarea elements that don't have an "optional" property
    // defined. Then, check for fields that are empty and make a list of them.
    // Also, if any of these elements have a "min" or a "max" property defined,
    // verify that they are numbers and in the right range.
    // If the element has a "numeric" property defined, verify that
    // it is a number, but don't check its range.
    // Put together error messages for fields that are wrong.
    for(var i = 0; i < f.length; i++) {
        var e = f.elements[i];
        if (((e.type == "text") || (e.type == "textarea")) && !e.optional) {
            // first check if the field is empty
            if ((e.value == null) || (e.value == "") || isblank(e.value)) {
                empty_fields += "\n          " + e.name;
                continue;
            }

            // Now check for fields that are supposed to be numeric.
            if (e.numeric || (e.min != null) || (e.max != null)) { 
                var v = parseFloat(e.value);
                if (isNaN(v) || 
                    ((e.min != null) && (v < e.min)) || 
                    ((e.max != null) && (v > e.max))) {
                    errors += "- The field " + e.name + " must be a number";
                    if (e.min != null) 
                        errors += " that is greater than " + e.min;
                    if (e.max != null && e.min != null) 
                        errors += " and less than " + e.max;
                    else if (e.max != null)
                        errors += " that is less than " + e.max;
                    errors += ".\n";
                }
            }
        }
    }

    // Now, if there were any errors, display the messages, and
    // return false to prevent the form from being submitted. 
    // Otherwise return true.
    if (!empty_fields && !errors) { 
//		MM_openBrWindow('Gift_Certificate_Sent.html','Certificate','');
		return true;
	}
    msg  = "______________________________________________________\n\n"
    msg += "The form was not submitted because of the following error(s).\n";
    msg += "Please correct these error(s) and re-submit.\n";
    msg += "______________________________________________________\n\n"

    if (empty_fields) {
        msg += "- The following required field(s) are empty:" 
                + empty_fields + "\n";
        if (errors) msg += "\n";
    }
    msg += errors;
    alert(msg);
    return false;
}
/***************************************/

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