String.prototype.trim = function () {
	return this.replace(/^\s*/, "").replace(/\s*$/, "");
}

 function $(something) {
	if (typeof(something) == "string") {
		var elm = document.getElementById(something);
	} else {
		var elm = something;
	}
	if (something instanceof Array) {
		var elm = [];
		for (var i=0;i<something.length;i++) { elm.push($(something[i])); }
	}
	if (!elm) return false;
	return elm;
}

function toggle(target, stop) {

	if (stop && document.all) return;

	if ($(target).style.display == 'none') {
		$(target).style.display = 'block';
		if (document.all) {
			return;
		}
		$(target).style.opacity = 0;
		var i = 0;
		var anim = function() {
			$(target).style.opacity = i/10;
			if (i<10)
				setTimeout(anim, 50);
			else
				$(target).style.display = 'block';
			i++;
		}
	} else {
		if (document.all) {
			$(target).style.display = 'none';
			return;
		}
		var i = 10;
		var anim = function() {
			$(target).style.opacity = i/10;
			if (i>0)
				setTimeout(anim, 50);
			else
				$(target).style.display = 'none';
			i--;
		}
	}
	anim();
}
