// JavaScript Document

var slideshow = "stopped";
var brs = whichBrs();
var myimages=new Array();

function preloadimages(){
  for (i=0;i<preloadimages.arguments.length;i++){
    myimages[i]=new Image()
    myimages[i].src="http://growmoeller.com/images/slideshow" + preloadimages.arguments[i]
  }
}

function chgPic(){
  var url = document.getElementById('imgLeader').src
  getDataReturnText("chgpic.plx?" + url + "-time-" + getNow(), setPic);
}

function getFormData(formID){
  var objForm = document.getElementById(formID);
  var count = 0;
  var ev = "NOW=" + getNow() + "&";
  while(count < objForm.elements.length){
    var elem = objForm.elements[count];
    if ((elem.type == "select-one") || (elem.type == "select-multiple")){
      ev = ev + elem.name + "=" + elem.options[elem.selectedIndex].value + "&";
    }
    else if (elem.type == 'checkbox'){
      if (elem.checked == true){
        ev = ev + elem.name + "=" + elem.value + "&";
      }
    }
    else if (elem.type == 'radio' && elem.checked == true){
      var radioLength = elem.length;
      for(var i = 0; i < radioLength; i++){
        if(elem[i].checked){ev = ev + elem.name + "=" + elem[i].value + "&";}  
      }
    }
    else {
      if (elem.value != null || elem.value != "" || !(isblank(elem.value))){
        ev = ev + elem.name + "=" + elem.value + "&";
      }
    }
    count++;
  }
  return ev;
}

function getNow() {
  var currentTime = new Date();
  var yr = currentTime.getFullYear().toString();
  var mo = (currentTime.getMonth() + 1).toString();
  if(mo.length < 2){mo = "0" + mo}
  var dy = currentTime.getDate().toString();
  if (dy.length < 2){dy = "0" + dy}
  var hr = currentTime.getHours().toString();
  if (hr.length < 2){hr = "0" + hr}
  var mn = currentTime.getMinutes().toString();
  if (mn.length < 2){mn = "0" + mn}
  var sc = currentTime.getSeconds().toString();
  if (sc.length < 2){sc = "0" + sc}
  return (yr + mo + dy + "." + hr + mn + sc);
}

function getHTML(divid, script){
  /*document.getElementById(divid).innerHTML = "<br><br><center><img src='images/ajax-loader.gif'></center>";*/
  getDataReturnText(script + "?" + getNow(), setHTML);
}

function hidetabs(){
  document.getElementById("txtRefer").style.visibility="hidden" 
  document.getElementById("txtDonate").style.visibility="hidden"
  document.getElementById("txtClass").style.visibility="hidden" 
}

function leader(lname){
  if(slideshow=="stopped"){
    getHTML('cntLeader', 'img.plx?' + lname);
  }
  getHTML('txtClass', 'class.plx?' + lname);    
}

function loader() {
  var browser = whichBrs();
  getHTML('cntLeader', 'img.plx');
  getHTML('txtHdr', 'hdr.plx');
  getHTML('txtTab2', 'tab2.plx');
  getHTML('txtFtr', 'ftr.plx');
  getHTML('txtClass', 'class.plx');
  getHTML('txtClassInfo', 'ci.plx');
  if(browser == "Internet Explorer"){
    document.getElementById("txtTab1").style.top = "122";
    document.getElementById("txtTab1").style.left="560";  
    document.getElementById("txtTab2").style.top = "307";
    document.getElementById("txtTab2").style.left="560";
    document.getElementById("txtTab3").style.top = "492";
    document.getElementById("txtTab3").style.left="560";
    document.getElementById("txtClass").style.width="360";
    document.getElementById("txtClass").style.height="590";
    document.getElementById("txtDonate").style.width="360";
    document.getElementById("txtDonate").style.height="590";
    document.getElementById("txtRefer").style.width="360";
    document.getElementById("txtRefer").style.height="590";
  }
  showtab("txtClass","stop");
  preloadimages("001.jpg","002.jpg","003.jpg","004.jpg","004a.jpg","005.jpg","006.jpg","007.jpg","007a.jpg","008.jpg","009.jpg","010.jpg","011.jpg","012.jpg","013.jpg","014.jpg","015.jpg","016.jpg","017.jpg","018.jpg");
}

function sendForm(formID, script, sendval){
  var pdata = getFormData(formID);
  pdata = pdata + "send=" + sendval;
  document.getElementById(sendval).innerHTML = "<br><br><center><img src='images/ajax-loader.gif'></center>";
  postDataReturnText(script, pdata, setHTML);
}

function setHTML(txt){
  var myArray = txt.split("|||")
  document.getElementById(myArray[0]).innerHTML = myArray[1];
}

function setPic(txt){
  if(brs == "Internet Explorer"){blendimage('cntLeader', 'imgLeader', txt, 2000)}
  else {blendimage('cntLeader', 'imgLeader', txt, 4000)}
}

function showtab(tabid, sls){
  if(sls == "run"){
    if(slideshow == "stopped"){
      slideshow = "running";
      setInterval("chgPic()", 8000);
    }
  }
  hidetabs();
  if(tabid == "txtClass"){document.getElementById("emptyYellow").style.visibility="visible"}
  else {document.getElementById("emptyYellow").style.visibility="hidden"}
  document.getElementById(tabid).style.visibility="visible"
}

function whichBrs() {
  var agt=navigator.userAgent.toLowerCase();
  if (agt.indexOf("opera") != -1) return 'Opera';
  if (agt.indexOf("staroffice") != -1) return 'Star Office';
  if (agt.indexOf("webtv") != -1) return 'WebTV';
  if (agt.indexOf("beonex") != -1) return 'Beonex';
  if (agt.indexOf("chimera") != -1) return 'Chimera';
  if (agt.indexOf("netpositive") != -1) return 'NetPositive';
  if (agt.indexOf("phoenix") != -1) return 'Phoenix';
  if (agt.indexOf("firefox") != -1) return 'Firefox';
  if (agt.indexOf("safari") != -1) return 'Safari';
  if (agt.indexOf("skipstone") != -1) return 'SkipStone';
  if (agt.indexOf("msie") != -1) return 'Internet Explorer';
  if (agt.indexOf("netscape") != -1) return 'Netscape';
  if (agt.indexOf("mozilla/5.0") != -1) return 'Mozilla';
  if (agt.indexOf('\/') != -1) {
  if (agt.substr(0,agt.indexOf('\/')) != 'mozilla') {
  return navigator.userAgent.substr(0,agt.indexOf('\/'));}
  else return 'Netscape';} else if (agt.indexOf(' ') != -1)
  return navigator.userAgent.substr(0,agt.indexOf(' '));
  else return navigator.userAgent;
}

function opacity(id, opacStart, opacEnd, millisec) {
	//speed for each frame
	var speed = Math.round(millisec / 100);
	var timer = 0;

	//determine the direction for the blending, if start and end are the same nothing happens
	if(opacStart > opacEnd) {
		for(i = opacStart; i >= opacEnd; i--) {
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	} else if(opacStart < opacEnd) {
		for(i = opacStart; i <= opacEnd; i++)
			{
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	}
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
	var object = document.getElementById(id).style; 
	object.opacity = (opacity / 100);
	object.MozOpacity = (opacity / 100);
	object.KhtmlOpacity = (opacity / 100);
	object.filter = "alpha(opacity=" + opacity + ")";
}

function shiftOpacity(id, millisec) {
	//if an element is invisible, make it visible, else make it ivisible
	if(document.getElementById(id).style.opacity == 0) {
		opacity(id, 0, 100, millisec);
	} else {
		opacity(id, 100, 0, millisec);
	}
}

function blendimage(divid, imageid, imagefile, millisec) {
	var speed = Math.round(millisec / 100);
	var timer = 0;
	
	//set the current image as background
	document.getElementById(divid).style.backgroundImage = "url(" + document.getElementById(imageid).src + ")";
	
	//make image transparent
	changeOpac(0, imageid);
	
	//make new image
	document.getElementById(imageid).src = imagefile;

	//fade in image
	for(i = 0; i <= 100; i++) {
		setTimeout("changeOpac(" + i + ",'" + imageid + "')",(timer * speed));
		timer++;
	}
}

function currentOpac(id, opacEnd, millisec) {
	//standard opacity is 100
	var currentOpac = 100;
	
	//if the element has an opacity set, get it
	if(document.getElementById(id).style.opacity < 100) {
		currentOpac = document.getElementById(id).style.opacity * 100;
	}

	//call for the function that changes the opacity
	opacity(id, currentOpac, opacEnd, millisec)
}
