// JavaScript Document



var activeSlide = 0;
var hasLoadedSlides = false;
var step = 35;
var speed = 35;
var counter = 1;
var autoAnimate = setTimeout("autoAnimateSlide()", 20000);
var animation = "";
var isRunning = false;
var direction = 1;
var slideWidth = "900";

function getElementsByName_iefix(tag, name) {
      
     var elem = document.getElementsByTagName(tag);
      var arr = new Array();
     for(i = 0,iarr = 0; i < elem.length; i++) {
          att = elem[i].getAttribute("name");
          if(att == name) {
              arr[iarr] = elem[i];
               iarr++;
          }
     }
      return arr;
}

var numberOfSlides = parseFloat(getElementsByName_iefix("div","slide").length) - 1;

var text = "";

for (var index = 0; index <= numberOfSlides; index++)
{
	text += "<div class=\"slider-button\" id=\"button" + index + "\" onclick=\"changeSlide(" + index + ", true);\"></div>\n";
}
text += "<div style=\"clear:both;\"></div>\n";
document.getElementById("slider-button-container").innerHTML = text;
var sliderbuttoncontainerwidth = (parseFloat(numberOfSlides) + 1) * 26;
document.getElementById("slider-button-container").style.width = sliderbuttoncontainerwidth + "px";
var slidecontainerwidth = (parseFloat(numberOfSlides) + 1) * parseFloat(slideWidth);
document.getElementById("slide-container").style.width = slidecontainerwidth + "px";


function changeSlide(slideNo, clear)
{

	if (isRunning)
	{
		return;
	}
	isRunning = true;
	clearTimeout(animation);
	//Check if current slide is selected again
	if (clear)
	{
		clearTimeout(autoAnimate);
	}
	
	step = Math.abs(activeSlide - slideNo) * parseFloat(speed);
	
	if (Math.abs(activeSlide - slideNo) == 0)
	{
		step = speed;
	}
	
	activeSlide = slideNo;
	
	
	for (var i = 0; i <= numberOfSlides; i++)
	{
		var buttonId = "button" + i;
		if (activeSlide == i)
		{
			document.getElementById(buttonId).style.backgroundImage = "url('http://www.safetyplans.com.au/wp-content/themes/thesis_17/custom/images/slider-button-selected.png')";
		}
		else
		{
			document.getElementById(buttonId).style.backgroundImage = "url('http://www.safetyplans.com.au/wp-content/themes/thesis_17/custom/images/slider-button.png')";
		}
	}

	animation = setTimeout("animateSlide('" + slideNo + "')", 33);
	return;
	
}

function nextSlide(side)
{
	if (isRunning)
	{
		return;
	}
	if (side == "left")
	{
		activeSlide--;
		if (activeSlide < 0)
		{
			activeSlide = 0;
			return;
		}
		setTimeout("changeSlide('" + activeSlide + "', true)", 1);
	}
	else if (side == "right")
	{
		activeSlide++;
		if (activeSlide > numberOfSlides)
		{
			activeSlide = numberOfSlides;
			return;
		}
		setTimeout("changeSlide('" + activeSlide + "', true)", 1);
	}
}

function autoAnimateSlide()
{
	activeSlide = parseFloat(activeSlide) + parseFloat(direction);
	if (activeSlide > numberOfSlides)
	{
		activeSlide = parseFloat(numberOfSlides) - 1;
		direction = -1;
	}
	else if (activeSlide < 0)
	{
		activeSlide = 1;
		direction = 1;
	}
	setTimeout("changeSlide('" + activeSlide + "', false)", 1);
	autoAnimate = setTimeout("autoAnimateSlide()", 20000);
}

function animateSlide(slideNo)
{
	//var SlideID = "slide" + slideNo;
	var target = -1 * slideWidth * slideNo;
	
	var element = document.getElementById('slide-container');
	
	if (element.style.left == "")
	{
		element.style.left = "0px";
	}
	
	var distance = target - parseFloat(element.style.left);
	//alert("distance: " + distance);
	//return;
	var chosenStep = "";
	if (distance < 0)
	{
		chosenStep = step;
		if (Math.abs(distance) < step)
		{
			chosenStep = Math.abs(distance);
		}
		
		var newLeft = parseFloat(element.style.left) - parseFloat(chosenStep);
		element.style.left = newLeft + "px";
	}
	else if (distance > 0)
	{
		chosenStep = step;
		if (Math.abs(distance) < step)
		{
			chosenStep = Math.abs(distance);
		}
		var newLeft = parseFloat(element.style.left) + parseFloat(chosenStep);
		element.style.left = newLeft + "px";
	}
	else
	{
		isRunning = false;
		return;
	}
	animation = setTimeout("animateSlide('" + slideNo + "')", 33);
}


 /* var heightStep = eheight / maxTicks;
  var element = document.getElementById(eid);
  if(element == null)
    return;
	
	if (element.style.display == "none" || element.style.display == "")
	{
		element.style.display = "block";
	}
	else
	{
		element.style.display = "none";
	}
	
	//element.style.height = "100px";
	//var testheight = parseFloat(element.style.height);
	//alert(parseFloat(element.style.height));
	
	ticks = 0;
	
  if(element.FadeState == null)
  {
    if(element.style.opacity == null
        || element.style.opacity == ''
        || element.style.opacity == '1')
    {
      element.FadeState = 2;
    }
    else
    {
      element.FadeState = -2;
    }
  }
   
  if(element.FadeState == 1 || element.FadeState == -1)
  {
    element.FadeState = element.FadeState == 1 ? -1 : 1;
    element.FadeTimeLeft = TimeToFade - element.FadeTimeLeft;
  }
  else
  {
    element.FadeState = element.FadeState == 2 ? -1 : 1;
    element.FadeTimeLeft = TimeToFade;
    setTimeout("animateFade(" + new Date().getTime() + ",'" + eid + "'," + heightStep + ")", 33);
  }  
}*/

function animateFade(lastTick, eid, heightStep)
{  
  var curTick = new Date().getTime();
  var elapsedTicks = curTick - lastTick;
 
  var element = document.getElementById(eid);
 
 if (maxTicks <= ticks)
 {
	 return;
 }
  /*if(element.FadeTimeLeft <= elapsedTicks)
  {
    /*element.style.opacity = element.FadeState == 1 ? '1' : '0';
    element.style.filter = 'alpha(opacity = '
        + (element.FadeState == 1 ? '100' : '0') + ')';
    element.FadeState = element.FadeState == 1 ? 2 : -2;
    return;
  }*/
 
  element.FadeTimeLeft -= elapsedTicks;
  var newOpVal = element.FadeTimeLeft/TimeToFade;
  if(element.FadeState == 1)
    newOpVal = 1 - newOpVal;

  //element.style.opacity = newOpVal;
  //element.style.filter = 'alpha(opacity = ' + (newOpVal*100) + ')';
  if (element.style.height == "")
  {
  	element.style.height = "0px";
	//document.getElementById("right-side-bar").innerHTML += "Height is 0<br />";
  }
	
//document.getElementById("right-side-bar").innerHTML += element.style.height + "<br />";
	
  var curHeight = parseFloat(element.style.height);
  //document.getElementById("right-side-bar").innerHTML += "B: " + curHeight + "<br />";
  //document.getElementById("right-side-bar").innerHTML += "BH: " + heightStep + "<br />";
  curHeight = parseFloat(curHeight) + parseFloat(heightStep);
  //document.getElementById("right-side-bar").innerHTML += "A: " + curHeight + "<br />";
  //document.getElementById("right-side-bar").innerHTML += "AH: " + heightStep + "<br />";
 // alert(curHeight);
  //alert(element.style.height);
  //alert(heightStep);
  element.style.height = curHeight + "px";
  //alert(element.style.height);
  //alert(element.style.height);
  //document.getElementById("right-side-bar").innerHTML += "End: " + element.style.height + "<br />";
  ticks++;
  
  setTimeout("animateFade(" + new Date().getTime() + ",'" + eid + "'," + heightStep + ")", 33);
}
