function $(s) {
	p = (arguments[1])? arguments[1] : document;
	t = 'id';
	n = false;
	if(s.match(/^((#|\.)[^\s]+)\s(.+?)$/gi)) {
		return $(RegExp.$3, $(RegExp.$1, p));
	}
	if(s.match(/^\.(\w+)(\[(\d)\])?/)) {
		t = 'class';
		s = RegExp.$1;
		if(RegExp.$2 != "") {
			n = parseInt(RegExp.$3);
		}
	} else if(s.match(/^-(\w+)(\[(\d)\])?/)) {
		t = 'tag';
		s = RegExp.$1;
		if(RegExp.$2 != "") {
			n = parseInt(RegExp.$3);
		}
	} else {
		s = s.replace(/(#)/gi, '');
	}
	if(t == 'id') {
		if(p == document) {
			if(p.getElementById(s))
				return p.getElementById(s);
		} else {
			_e = p.getElementsByTagName('*');
			for(i=0; i<_e.length; i++) {
				if(_e[i].id && _e[i].id == s) {
					return _e[i];
				}
			}
		}
	} else if(t == 'class') {
		_elem = Array();
		_e = p.getElementsByTagName('*');
		for(i=0; i<_e.length; i++) {
			if(_e[i].className && _e[i].className == s) {
				_elem.push(_e[i]);
			}
		}
		if(n !== false) {
			return _elem[n];
		}
		return _elem;
	} else if(t == 'tag') {
		_elem = p.getElementsByTagName(s);
		if(n !== false) {
			return _elem[n];
		}
		return _elem;
	}
	return false;
}

function prepare_drop_downs() {
	nav_holder = $('navigation');

	current_url = location.href.replace(/^(http:\/\/([^\/]+))?\//, '').replace(/^([^\/]+?)(\/).+?$/i, '$1');
	nav_a = nav_holder.getElementsByTagName('a');
	tab_count = 1;
	last_level1 = false;
	for(i=0; i<nav_a.length; i++) {
		if(nav_a[i].className == 'level1') {
			last_level1 = nav_a[i];
			if(nav_a[i].href) {
				nav_href = nav_a[i].href.replace(/^(http:\/\/([^\/]+))?\//, '');
				if(nav_href && nav_href == current_url) {
					nav_a[i].parentNode.className += ' selected';
				}
			}
			tab_count++;
		}
	}
}

function go_high_visibility() {
	var date = new Date();
		date.setTime(date.getTime()+(7*24*60*60*1000));
	document.cookie = 'hv=1;path=/;expires=' + date.toGMTString();
	window.location.reload(true);
	return false;
}

function _fire(element, funct, delay) {
	if($(element)) {
		eval(funct);
	} else {
		delay += 50;
		window.setTimeout("_fire('"+ element +"', '"+ funct +"')", delay);
	}
}
_fire('navigation', 'prepare_drop_downs()', 150);

document.onkeydown = function(e) {
    e = e || window.event;
    key_code = e.keyCode || e.which;
    if(key_code == 27) {
        if(!close_facebox()) {
            if(window != window.parent) {
                try {
                    window.parent.close_facebox();
                } catch(err) {}
            }
        }
        return prevent_default(e);
    }
}

function prevent_default(e) {
    if(e && e.preventDefault)
        e.preventDefault();
    return false;
}

function gallery_caption(img) {
	$('gallery_caption').innerHTML = ((img.title && img.title != '')? img.title : '&nbsp;');
}

function printpage() {
	window.print();
}

function flashGoSolid() {
	// $('header_image').style.display = 'none';
}
