// menu closing delay
delay = 500;
calltime = 0; // internal variable

// an array of menu names
menus = new Array();
menus.push('production');
menus.push('studio');
menus.push('events');

// handle a mouseover on a menu link
function over(menu) {
	++calltime;
	show_menu(menu)
	hide_all_menus(menu)
}

// handle a mouseout on a menu link
function out(menu) {
	++calltime;
	code_string = "conditional_hide_submenus("+calltime+");";
	setTimeout(code_string, delay);
}

// hide all submenus, only if the current value of window.calltime is the same as the argument
function conditional_hide_submenus(old_calltime) {
	if (calltime == old_calltime) {
		hide_all_menus();
	}
}

// show a menu
function show_menu(menu) {
	document.getElementById('menu-'+menu+'_submenu').style.display = 'block';
}

// hide a menu
function hide_menu(menu) {
	document.getElementById('menu-'+menu+'_submenu').style.display = 'none';
}

// hide all menus, optionally except a specefied menu
function hide_all_menus(except) {
	var i;
	for (i=0; i<menus.length; i++) {
		if (menus[i] != except) {
			hide_menu(menus[i]);
		}
	}
}



userAgent = window.navigator.userAgent;
browserVers = parseInt(userAgent.charAt(userAgent.indexOf("/")+1),10);
function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function findElement(n,ly) {
	if (browserVers < 4)		return document[n];
	var curDoc = ly ? ly.document : document;
	var elem = curDoc[n];
	if (!elem) {
		for (var i=0;i<curDoc.layers.length;i++) {
			elem = findElement(n,curDoc.layers[i]);
			if (elem) return elem;
		}
	}
	return elem;
}

function changeImages() {
	if (document.images && (preloadFlag == true)) {
		var img;
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			img = null;
			if (document.layers) {
				img = findElement(changeImages.arguments[i],0);
			}
			else {
				img = document.images[changeImages.arguments[i]];
			}
			if (img) {
				img.src = changeImages.arguments[i+1];
			}
		}
	}
}

var preloadFlag = false;
function preloadImages() {
	if (document.images) {
		menu_home_over = newImage("images/menu-home-over.jpg");
		menu_contact_over = newImage("images/menu-contact-over.jpg");
		menu_forum_over = newImage("images/menu-forum-over.jpg");
		menu_production_over = newImage("images/menu-production-over.jpg");
		menu_studio_over = newImage("images/menu-studio-over.jpg");
		menu_events_over = newImage("images/menu-events-over.jpg");
		preloadFlag = true;
	}
}

// -->
function findElement(n,ly) {
	var d = document;
	if (browserVers < 4)		return d[n];
	if ((browserVers >= 6) && (d.getElementById)) {initImgID; return(d.getElementById(n))}; 
	var cd = ly ? ly.document : d;
	var elem = cd[n];
	if (!elem) {
		for (var i=0;i<cd.layers.length;i++) {
			elem = findElement(n,cd.layers[i]);
			if (elem) return elem;
		}
	}
	return elem;
}
Array.prototype.getRandom = function(start, stop) 
{ 
    start = start||0; stop = stop || this.length; 
    var M = Math; 
    return this[ start + M.floor( M.random()*(stop-start) ) ]; 
} 


Array.prototype.randomize = function() 
{ 
    var copy=this.splice(0,this.length); 
    while(copy.length){ 
        this.push( copy.splice( Math.floor( Math.random()*copy.length ),1)) 
    } 
} 

