function toggleAll(toggle_class, collaspe) 
{
	var tags = document.getElementsByTagName('*');
	for(tag in tags) {
		if(tags[tag].className == toggle_class)
			tags[tag].style.display = (collaspe) ? 'none' : '';
		else if(tags[tag].className == 'toggle-plus' || tags[tag].className == 'toggle-minus')
			tags[tag].className = (collaspe) ? 'toggle-plus' : 'toggle-minus';
	}
}

function toggleBoxBody(button)
{
	if(button.className == 'toggle-plus')
		toggleAll('boxBody', true);
	var element = (button.parentNode.parentNode.childNodes[3]) ? button.parentNode.parentNode.childNodes[3] : button.parentNode.parentNode.lastChild;

	if(element.style.display == 'none') {
		element.style.display = '';
		button.className = 'toggle-minus';
	} else {
		element.style.display = 'none';
		button.className = 'toggle-plus';
	}
}

function toggleLightbox(lb, bg, on) 
{
	var lb_el = document.getElementById(lb);
	var bg_el = document.getElementById(bg);
	
	if(on) {
		lb_el.style.display = 'block';
		bg_el.style.display = 'block';
	} else {
		lb_el.style.display = 'none';
		bg_el.style.display = 'none';	
	}
	
	if(lb_el.offsetWidth && !lb_el.style.width && !lb_el.style.height) {
		lb_el.style.width = lb_el.offsetWidth + 'px';
		lb_el.style.height = lb_el.offsetHeight + 'px';
		
		var margin_left = '-' + (lb_el.offsetWidth / 2) + 'px';
		var margin_top = '-' + (lb_el.offsetHeight / 2) + 'px';
		lb_el.style.marginLeft = margin_left;
		lb_el.style.marginTop = margin_top;
	}
}

function setOpacity(obj, opacity) 
{
	obj.currentOpacity = opacity;
	opacity = (opacity >= 100) ? 99.999 : opacity;
	
	obj.style.filter = 'alpha(opacity:' + opacity + ')';
	obj.style.KHTMLOpacity = opacity/100;
	obj.style.MozOpacity = opacity/100;
	obj.style.opacity = opacity/100;
}

function fade(obj, direction) 
{
	var increment = 9;
	var baseOpacity = 50;
	
	var amount = (direction == 'in') ? increment : -increment;
	
	if(obj && (((direction == 'in') && (obj.currentOpacity < 100)) || ((direction == 'out') && (obj.currentOpacity > baseOpacity)))) {
		setOpacity(obj, obj.currentOpacity + amount);
		obj.timerId = setTimeout(function() {fade(obj, direction)}, 50);
	}
}

function setFader(element) 
{
	setOpacity(element, 50);
	element.onmouseover = function() { 
		if(element.timerId) 
			clearTimeout(element.timerId); 
		fade(element, 'in'); 
	}
	element.onmouseout = function() { 
		if(element.timerId) 
			clearTimeout(element.timerId); 
		fade(element, 'out'); 
	}
}

function changeLanguage(element, language)
{
	if(!element)
		return;
	
	element.language.value = language;
	element.submit();
}

function filterCountry(country)
{
    
	var boxes = [];
	var count = 0;
	
	var element = document.body.getElementsByTagName('*');
	for(var i=0; i < element.length; i++) {
		if(element[i].className == 'box') {
			boxes.push(element[i]);
		}
	}
	for(i in boxes) {
		var image = boxes[i].getElementsByTagName('IMG')[0];
		if((country != 'All') && (image.alt != country)) {
			boxes[i].style.visibility = "hidden";
			boxes[i].style.display = 'none';	
		} else {
			count++;
			boxes[i].style.visibility = "visible";
			boxes[i].style.display = 'block';	
		}
	}
	toggleAll('boxBody', true);	        

        var noB2BEJobs = document.getElementById('noB2BEJobs');
        var noJobs = document.getElementById('noJobs');

        if(country=='All')
        {
            if(noJobs)
                noJobs.style.display = 'none';

            if(noB2BEJobs)
            {
                if(count)
                    noB2BEJobs.style.display = 'none';
                else
                    noB2BEJobs.style.display = 'block';
            }
        }
        else
        {
            if(noB2BEJobs)
                noB2BEJobs.style.display = 'none';

            if(noJobs) {
                    if(count) {
                            noJobs.style.display = 'none';
                    } else {
                            noJobs.style.display = 'block';
                    }
            }

        }
}

var nav_setup = false;
function setupNav()
{
	if(nav_setup) return; else nav_setup = true;
	var elements = document.getElementById('nav').getElementsByTagName('LI');
	
	for(var i = 0; i < elements.length; i++) {
		var li = elements[i];
		
		var image = li.getElementsByTagName('IMG')[0];
		if(image && image.alt != "Home") {
			image.normal = new Image();
			image.normal.src = image.src;
			
			image.rollover = new Image();
			image.rollover.src = image.src.replace(".png", "_rollover.png");
		}
		
		li.onmouseover = function() {
			if(window.attachEvent)
				this.className += ' b2behover'; 

			var img = this.getElementsByTagName('IMG')[0];
			if(img && (img.alt != "Home")) {
				img.src = img.rollover.src;
			}
		}
		
		li.onmouseout = function() {
			if(window.attachEvent)
				this.className = this.className.replace(new RegExp(' b2behover\\b'), '');
			
			var img = this.getElementsByTagName('IMG')[0];
			if(img && (img.alt != "Home")) {
				img.src = img.normal.src;
			}
		}
	}
}

function domReady(func)
{
	if(document.addEventListener) { 
		document.addEventListener('DOMContentLoaded', func, false);
	} else { // Internet Explorer
		var ie = !!(window.attachEvent && !window.opera);
		document.onreadystatechange = function() {
			if((document.readyState == 'interactive') || (document.readyState == 'complete')){
				func();
			}
		}
	}
}

function loaded()
{
	setupNav();
	
	var myclass = new RegExp('\\bfader\\b');
	var elem = document.getElementsByTagName('*');
	for(var i = 0; i < elem.length; i++) {
		var classes = elem[i].className;
		if(myclass.test(classes)) 
			setFader(elem[i]);
	}
}

window.onDomReady = domReady;
window.onDomReady(loaded);