
function verify_email(str) {
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1){return false}
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) {return false}
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) {return false}
	if (str.indexOf(at,(lat+1))!=-1) {return false}
	if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) {return false}
	if (str.indexOf(dot,(lat+2))==-1) {return false}
	if (str.indexOf(" ")!=-1) {return false}
	return true					
	}

function ensureNumeric(strString,mini,maxi)
   {
   var strValidChars = "0123456789";
   var strChar;
   var blnResult = true;
   if (strString.length < mini | strString.length > maxi) return false;
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
   }

function check_form(str_form,str_args) { // v0 copyright Andrew Watson Paligap 2004 (CALL) onClick="check_form('frm_subscribe','str_name|t|1|You have not entered your name.,str_email|e|1|You have entered an invalid e-mail address.');return document.check_form_return;"
	var arr_args = str_args.split(",")
	str_error_message = ""
	for(i=0;i<arr_args.length;i++) {
		var arr_this_element = arr_args[i].split("|")
		str_field = arr_this_element[0]
		str_type = arr_this_element[1]
		bln_required = arr_this_element[2]
		str_message = arr_this_element[3]
		this_value = eval("document." + str_form + "." + str_field + ".value")
		this_value = this_value.replace(" ","")
			if (str_type == "t") { //Check String
				if (bln_required==1) {
					if (this_value=='') {str_error_message = str_error_message + str_message + "\n\n"}
				}
			} else if (str_type == "b") { //Check bln checkbox
				if (bln_required==1) {
					if (eval("document." + str_form + "." + str_field + ".checked")!=true) {str_error_message = str_error_message + str_message + "\n\n"}
				} else {
					if (this_value!=''&&isNaN(this_value)) {str_error_message = str_error_message + str_message + "\n\n"}
				}
			} else if (str_type == "e") { //Check Email
				if (bln_required==1) {
					if (this_value==''||!verify_email(this_value)) {str_error_message = str_error_message + str_message + "\n\n"}
				} else {
					if (this_value!=''&&!verify_email(this_value)) {str_error_message = str_error_message + str_message + "\n\n"}
				}
			} else if (str_type == "n") { //Check Numeric
				if (bln_required==1) {
					if (this_value==''||isNaN(this_value)) {str_error_message = str_error_message + str_message + "\n\n"}
				} else {
					if (this_value!=''&&isNaN(this_value)) {str_error_message = str_error_message + str_message + "\n\n"}
				}
			} else if (str_type == "d") { //Check Date
				if (bln_required==1) {
					if (this_value==''||!verify_date(this_value)) {str_error_message = str_error_message + str_message + "\n\n"}
				} else {
					if (this_value!=''&&!verify_date(this_value)) {str_error_message = str_error_message + str_message + "\n\n"}
				}
			}
		}
		if (str_error_message!="") {
			str_error_message = "Incomplete Form Information!                              \n________________________\n\n" + str_error_message
			alert(str_error_message)
			document.check_form_return = false
		} else {
			document.check_form_return = true
			//eval("document.forms." + str_form + ".submit();")
		}
	}
	
//Date Picker

function set_date(str_fieldname) {
 
 str_target_field = document.getElementById(str_fieldname)
 ele_day = document.getElementById(str_fieldname + "_d")
 ele_month = document.getElementById(str_fieldname + "_m")
 ele_year = document.getElementById(str_fieldname + "_y")
 str_day = ele_day.value
 str_month = ele_month.value
 str_year = ele_year.value
 
 //Clear List
 ele_day.length = 0
 //Build base 28
 ele_day.options[0] = new Option("-", "", false, false)
 ele_day.options[1] = new Option("01", 1, false, false)
 ele_day.options[2] = new Option("02", 2, false, false)
 ele_day.options[3] = new Option("03", 3, false, false)
 ele_day.options[4] = new Option("04", 4, false, false)
 ele_day.options[5] = new Option("05", 5, false, false)
 ele_day.options[6] = new Option("06", 6, false, false)
 ele_day.options[7] = new Option("07", 7, false, false)
 ele_day.options[8] = new Option("08", 8, false, false)
 ele_day.options[9] = new Option("09", 9, false, false)
 ele_day.options[10] = new Option("10", 10, false, false)
 ele_day.options[11] = new Option("11", 11, false, false)
 ele_day.options[12] = new Option("12", 12, false, false)
 ele_day.options[13] = new Option("13", 13, false, false)
 ele_day.options[14] = new Option("14", 14, false, false)
 ele_day.options[15] = new Option("15", 15, false, false)
 ele_day.options[16] = new Option("16", 16, false, false)
 ele_day.options[17] = new Option("17", 17, false, false)
 ele_day.options[18] = new Option("18", 18, false, false)
 ele_day.options[19] = new Option("19", 19, false, false)
 ele_day.options[20] = new Option("20", 20, false, false)
 ele_day.options[21] = new Option("21", 21, false, false)
 ele_day.options[22] = new Option("22", 22, false, false)
 ele_day.options[23] = new Option("23", 23, false, false)
 ele_day.options[24] = new Option("24", 24, false, false)
 ele_day.options[25] = new Option("25", 25, false, false)
 ele_day.options[26] = new Option("26", 26, false, false)
 ele_day.options[27] = new Option("27", 27, false, false)
 ele_day.options[28] = new Option("28", 28, false, false)
 //Which Selected Month?
 switch (str_month) {
   case "09" : case "04" : case "06" : case "11" :
	  ele_day.options[29] = new Option("29", 29, false, false)
	  ele_day.options[30] = new Option("30", 30, false, false)
    break; 
   case "02" : 
	 	if (str_year/4 == parseInt(str_year/4)) {
	  	ele_day.options[29] = new Option("29", 29, false, false)
		}
    break; 
   default : 
	  ele_day.options[29] = new Option("29", 29, false, false)
	  ele_day.options[30] = new Option("30", 30, false, false) 
	  ele_day.options[31] = new Option("31", 31, false, false) 
	} 
//Reset day
		if (ele_day.options.length<str_day) { 
	  ele_day.options.selectedIndex = ele_day.options.length-1
		} else {
	  ele_day.options.selectedIndex = str_day
		}

 str_day = ele_day.value
 str_month = ele_month.value
 str_year = ele_year.value
 
 str_new_date = str_day + "/" + str_month + "/" + str_year
 str_target_field.value = str_new_date
}

// Photo swapper

var gblPhotoShufflerDivId = "header";
  var gblPhotoShufflerImgId = "photoimg"; 
  var gblImg = new Array(
    "sitepix/header-swapper/1.jpg",
	"sitepix/header-swapper/2.jpg",
	"sitepix/header-swapper/3.jpg",
	"sitepix/header-swapper/4.jpg",
	"sitepix/header-swapper/2.jpg"
    );
  
  var gblPauseSeconds = 3.5;
  var gblFadeSeconds = 1.25;
  var gblRotations = 999;

  var jscript/*@cc_on=@_jscript_version@*/  
  if (self.jscript < 5.7)
  {gblFadeSeconds = 0}

  // End Customization section
  
  var gblDeckSize = gblImg.length;
  var gblOpacity = 100;
  var gblOnDeck = 0;
  var gblStartImg;
  var gblImageRotations = gblDeckSize * (gblRotations+1);

  window.onload = photoShufflerLaunch;
  
  function photoShufflerLaunch()
  {
  	var theimg = document.getElementById(gblPhotoShufflerImgId);
        gblStartImg = theimg.src; // save away to show as final image

	document.getElementById(gblPhotoShufflerDivId).style.backgroundImage='url(' + gblImg[gblOnDeck] + ')';
	setTimeout("photoShufflerFade()",gblPauseSeconds*1000);
  }

  function photoShufflerFade()
  {
  	var theimg = document.getElementById(gblPhotoShufflerImgId);
	
  	// determine delta based on number of fade seconds
	// the slower the fade the more increments needed
        var fadeDelta = 100 / (30 * gblFadeSeconds);

	// fade top out to reveal bottom image
	if (gblOpacity < 2*fadeDelta ) 
	{
	  gblOpacity = 100;
	  // stop the rotation if we're done
	  if (gblImageRotations < 1) return;
	  photoShufflerShuffle();
	  // pause before next fade
          setTimeout("photoShufflerFade()",gblPauseSeconds*1000);
	}
	else
	{
	  gblOpacity -= fadeDelta;
	  setOpacity(theimg,gblOpacity);
	  setTimeout("photoShufflerFade()",30);  // 1/30th of a second
	}
  }

  function photoShufflerShuffle()
  {
	var thediv = document.getElementById(gblPhotoShufflerDivId);
	var theimg = document.getElementById(gblPhotoShufflerImgId);
	
	// copy div background-image to img.src
	theimg.src = gblImg[gblOnDeck];
	// set img opacity to 100
	setOpacity(theimg,100);

        // shuffle the deck
	gblOnDeck = ++gblOnDeck % gblDeckSize;
	// decrement rotation counter
	if (--gblImageRotations < 1)
	{
	  // insert start/final image if we're done
	  gblImg[gblOnDeck] = gblStartImg;
	}

	// slide next image underneath
	thediv.style.backgroundImage='url(' + gblImg[gblOnDeck] + ')';
  }

function setOpacity(obj, opacity) {
  opacity = (opacity == 100)?99.999:opacity;
  
  // IE/Win
  obj.style.filter = "alpha(opacity:"+opacity+")";
  
  // Safari<1.2, Konqueror
  obj.style.KHTMLOpacity = opacity/100;

  // Older Mozilla and Firefox
  obj.style.MozOpacity = opacity/100;

  // Safari 1.2, newer Firefox and Mozilla, CSS3
  obj.style.opacity = opacity/100;
}
