// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults

//ticker vars
  var obj0,obj1,obj2,j,k,tickerRestart;
  var i=800;
  var ticker_start = i;
  var speed=15; 
	  
  function doOnload(){
	  
		if (ie_above_ver5()) {
			

			if (document.getElementById("ticker0")){
			   obj0=document.getElementById('ticker0');
			   //obj1=document.getElementById('ticker1');
			   obj2=document.getElementById('tickerHolder');

			   j=obj0.offsetWidth;
			   //k=obj1.offsetWidth;

			   tickerRestart=950;
			   

			   //obj1.className='';
			   obj2.className='setup'

			   obj0.style.width=j+'px';
			   //obj1.style.width=k+'px';

			   imgScroll();

			obj2.onmouseover=function(){
			   clearTimeout(scroller);
			 }
			obj2.onmouseout=function(){
			   imgScroll();
			}
		}
	}
}	  

function ie_above_ver5() {
	if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
		var ieversion=new Number(RegExp.$1) // capture x.x portion and store as a number
		if (ieversion<6)
			return false;
		else
			return true;
	} else {
		return true;
	}

}

function imgScroll() {

	   obj0.style.left=i+'px';
	   //obj1.style.left=j+'px';
	      
	   i--;
	   j--;

	if(i<-tickerRestart) {
	   i=ticker_start;
	 }
	//if(j<-k) {
	//   j=temp;
	 //} 
	  scroller=setTimeout('imgScroll()',speed);
}


if (ie_version() == 6) {
	var tree = document.getElementById("tree");
	tree.innerHTML = "<a href=\"/our_work/graphical_calculators_and_modellers\" title=\"Our work: Modellers\"><img alt=\"Our work\" src=\"/images/tree/tree.png?1268417544\" /></a>";
}

function ie_version() {
	if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)) { //test for MSIE x.x;
		var ieversion = new Number(RegExp.$1) // capture x.x portion and store as a number
		return ieversion
	}
	else {
		return 0;
	}	
}

/* JW Player events */
var player = null;
var playlist = null;

function playerReady(obj){

    player = document.getElementById(obj['id']);
    addListeners();
    /* alert("Player "+player.id+" is ready to be used."); 
	setInterval("stateMonitor("+obj+")",4000);*/
}



/* Show/hide content by Paul Brennan (paul.brennan@ahc.uk.com) */
function onload_function(onload_params){
    try {
        //main onload function
    }
    catch (e) {
        //not sure if we want to have an alert here?
    }
    try {
        //page specific onload.
        eval(onload_params)
    }
    catch (e) {
    }

    //Add autocomplete
    elements = document.getElementsByTagName("input")
    if (elements != null) {
        for (var i = 0; i < elements.length; i++) {
            element = elements[i];
            element.setAttribute("autocomplete", "off");
        }
    }
}

function showHideDiv(div_id, show){
	//hides or shows the div given
	if (show==true){
		document.getElementById(div_id).style.display='block';
	}else{
		document.getElementById(div_id).style.display = 'none'
	}
}

function hideDivs(exception_div_id){
	var show_hide_container = document.getElementById('showHideContainer')
	if (show_hide_container) {
		var div_tags_array = show_hide_container.getElementsByTagName('div')
		for (var k = 0; k < div_tags_array.length; k++) {
			div_tags_array[k].style.display = 'none';
		}
	}
}

function hideAllItemsWithClass(hide_class) {
    if (ie_above_ver5()) {
		var showHideItems = document.getElementsByClassName(hide_class);
        for(var i=0; i<showHideItems.length; i++) {
			showHideItems[i].style.display = 'none';
        }
    }
}

function showAllDivs(){	
	var aElm=document.body.getElementsByTagName('div');
		for(var i=0; i<aElm.length; i++) {
			if(aElm[i].style.display == 'none') {
				aElm[i].style.display = 'block'
			}
	}
}

function toggle_div(div_id, hide_class){
	if (hide_class!=undefined){
		hideAllItemsWithClass(hide_class);
	}
	Effect.toggle(document.getElementById(div_id),'appear');	
}


function showHideID(div_id,className,toggle){
	if (toggle == null){
  		 toggle = true;
 	}

	//this function hides all elements with the class name given
	//then toggles the display status of teh div_id given
	//className is optional can be run as just showHideID(div_id)
	//if toggle is set to true then it will not hide it when clicked for
	//the second time

	//first get the element that wants to change
	var element = document.getElementById(div_id);
	//If it is already shown will be only one open so only need to change to style to none
	if (element.style.display=='block' && toggle){
    	element.style.display='none'
  	}else{
		//show the element
    	element.style.display='block'
    	if (className) {
			//if given a class to hide
			var elements = document.getElementsByClassName(className);
			//go through all elements with selected class
			if (elements!=null){
				for (var i = 0; i < elements.length; i++) {
					if (elements[i].id != div_id) {
					//as long as isn't the selected element - hide
						elements[i].style.display = 'none'
					}
				}
			}
		}
  	}

}

function hideDiv(div_id){
	document.getElementById(div_id).style.display = 'none';
}



function ie_above_ver5() {
	if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
		var ieversion=new Number(RegExp.$1) // capture x.x portion and store as a number
		if (ieversion<6)
			return false;
		else
			return true;
	} else {
		return true;
	}

}

/* Show/hide content for document area by Paul Brennan (paul.brennan@ahc.uk.com) */

