var image_no;
var banner_image_no =0;
var inital_image=1;
var num_images=3;
var timeoutid;

function collapseAll(){
	var items = document.getElementById("collapsable").getElementsByTagName("div");
	for (var i=0; i< items.length; i++){
	if (items[i].parentNode.id == 'collapsable'){
		items[i].style.display="none";	
		YAHOO.util.Dom.setStyle( items[i].id , 'opacity', '0');
		}
	  }	
}



function intialise_collapse(initial){
	if (initial == undefined) initial = 0;
	var items = document.getElementById("collapsable").getElementsByTagName("div");
	items[initial].style.display="block";	
	YAHOO.util.Dom.setStyle( items[initial].id , 'opacity', '1');	
}

function showSingle(id){
var items = document.getElementById("collapsable").getElementsByTagName("div");

for (var i=0; i< items.length; i++){
	if (items[i].parentNode.id == 'collapsable'){
	if (items[i].style.display != "none"){
	var current_item = items[id].id;
	var old_item = items[i].id;
	var fadeOut = new YAHOO.util.Anim(items[i].id, { opacity: { to: 0 } }, 0.5, YAHOO.util.Easing.easeOut);
	var hideDiv  = function(type, args){
		document.getElementById(old_item).style.display="none";			
		fadeIn(current_item);
		}	
	fadeOut.onComplete.subscribe(hideDiv,i)
	fadeOut.animate();
	}	
	}
}
}

function fadeIn(id){
	document.getElementById(id).style.display="block";
	var fadeIn = new YAHOO.util.Anim(id, { opacity: { to: 1 } }, 0.5, YAHOO.util.Easing.easeIn);
	fadeIn.animate();
}

function boldToggle(elem){
var items = document.getElementById("togglelinks").getElementsByTagName("a");
for (var i=0; i< items.length; i++){
	items[i].style.fontWeight ="normal";
}
elem.style.fontWeight ='bold';
}

function productsToggle(elem){
var items = document.getElementById("showResults").getElementsByTagName("a");
for (var i=0; i< items.length; i++){
	items[i].style.fontWeight ="normal";
}
elem.style.fontWeight ='bold';
}

/* fading homepage scripts */

/*  rotating link */
function doRotate(image_no){

	var fadeOut = new YAHOO.util.Anim("item"+image_no, { opacity: { to: 0 } }, 0.8);
	if (image_no >= num_images) {image_no = 0;}
	document.getElementById("item"+(image_no+1)).style.display = "block";
	var fadeIn = new YAHOO.util.Anim("item"+(image_no+1), { opacity: { to: 1 } }, 0.8);
	//current_image = "item"+(image_no);
	var nextImage= function(type,args){
	//var current_image = image_no;
	if (image_no == 0) {current_image = 3;} else {current_image = image_no;}

	document.getElementById("item"+current_image).style.display = "none";
	window.setTimeout("doRotate("+(image_no+1) +");", 5000);
	}


	fadeOut.onComplete.subscribe(nextImage)
	fadeOut.animate();
	fadeIn.animate();

}


/* banners */

function bannerDoRotate(banner_image_no){

	var fadeOut = new YAHOO.util.Anim("banner_image"+banner_image_no, { opacity: { to: 0 } }, 0.8);
	if (banner_image_no >= banner_images.length) {banner_image_no = 0;}
	var fadeIn = new YAHOO.util.Anim("banner_image"+(banner_image_no+1), { opacity: { to: 1 } }, 0.8);
	var nextBannerImage= function(type,args){
	window.setTimeout("bannerDoRotate("+(banner_image_no+1) +");", 2500);
	}

	fadeOut.onComplete.subscribe(nextBannerImage)
	fadeOut.animate();
	fadeIn.animate();

}

function firstRun(initial_banner_image){
	bannerDoRotate(initial_banner_image);
	window.clearTimeout(timeoutid);
}

function initBanners(banner_images){
	document.getElementById("flash").removeChild(document.getElementById("banner_image1"));
	// Generate a random number for the initial image   
	var initial_banner_image = Math.floor(Math.random()*banner_images.length);
	bannerDoRotate(initial_banner_image);	
	imageObj = new Image();
	for (var t=0; t<banner_images.length; t++){
		 imageObj.src=banner_images[t];
	}
	var index=initial_banner_image;
	for (var t=1; t<banner_images.length+1; t++) {
	 	 new_image = document.createElement("img");
	 new_image.src = banner_images[index];
	 new_image.title = "Welcome to Ipreo";
	 new_image.id= "banner_image"+t;
	 new_image.setAttribute("class","banner_image");
	 new_image.setAttribute("className","banner_image");			
	 document.getElementById("flash").appendChild(new_image);
	 if (t>1){//show the first image
	 YAHOO.util.Dom.setStyle( new_image.id, 'opacity', '0');
	 }
	 if (index >= banner_images.length -1) {index=0;} else {index = index +1;};
	}
	
}



function getAbsoluteLeft(objectId) {
	// Get an object left position from the upper left viewport corner
	// Tested with relative and nested objects
	o = document.getElementById(objectId)
	oLeft = o.offsetLeft            // Get left position from the parent object
	while(o.offsetParent!=null) {   // Parse the parent hierarchy up to the document element
		oParent = o.offsetParent    // Get parent object reference
		oLeft += oParent.offsetLeft // Add parent left position
		o = oParent
	}
	// Return left postion
	return oLeft
}

function getAbsoluteTop(objectId) {
	// Get an object top position from the upper left viewport corner
	// Tested with relative and nested objects
	o = document.getElementById(objectId)
	oTop = o.offsetTop            // Get top position from the parent object
	while(o.offsetParent!=null) { // Parse the parent hierarchy up to the document element
		oParent = o.offsetParent  // Get parent object reference
		oTop += oParent.offsetTop // Add parent top position
		o = oParent
	}
	// Return top position
	return oTop
}

function highlightCurrentLink() {
  
    var currentLocation = document.location.href;
    var targetNode;
    
    targetNode = document.getElementById("right-nav");
    
    if (targetNode != null)
    {
        links = targetNode.getElementsByTagName("a");
        
        // Search thorugh all links
        for (i = 0; i < links.length; i++) {
            
            linkHref = links[i].href;
            if (linkHref == currentLocation) {                
                links[i].style.fontWeight = 'bold';
                
            }
        }
    }
}

/* product finder */

function fix_alignments(){
 var items= document.getElementById("product-finder").getElementsByTagName("a");
 for (var i=0; i < items.length; ++i){
   items[i].firstChild.style.display="block"; 
   items[i].firstChild.style.marginTop = ((items[i].offsetHeight / 2) - (items[i].firstChild.offsetHeight / 2)-2) +"px";	
 }
}