var userAgent = navigator.userAgent.toLowerCase();
var is_opera = userAgent.indexOf('opera') != -1 && opera.version();
var is_moz = (navigator.product == 'Gecko') && userAgent.substr(userAgent.indexOf('firefox') + 8, 3);
var is_ie = (userAgent.indexOf('msie') != -1 && !is_opera) && userAgent.substr(userAgent.indexOf('msie') + 5, 3);
var is_mac = userAgent.indexOf('mac') != -1;

function $(id) {
	return document.getElementById(id);
}

function display(id) {
	$(id).style.display = $(id).style.display == '' ? 'none' : '';
}

function isUndefined(variable) {
	return typeof variable == 'undefined' ? true : false;
}

function in_array(needle, haystack) {
	if(typeof needle == 'string' || typeof needle == 'number') {
		for(var i in haystack) {
			if(haystack[i] == needle) {
					return true;
			}
		}
	}
	return false;
}
function doane(event) {
	e = event ? event : window.event;
	if(is_ie) {
		e.returnValue = false;
		e.cancelBubble = true;
	} else if(e) {
		e.stopPropagation();
		e.preventDefault();
	}
}
function trim(str) {
	return (str + '').replace(/(\s+)$/g, '').replace(/^\s+/g, '');
}

function checkall(form, prefix, checkall) {
	var checkall = checkall ? checkall : 'chkall';
	count = 0;
	for(var i = 0; i < form.elements.length; i++) {
		var e = form.elements[i];
		if(e.name && e.name != checkall && (!prefix || (prefix && e.name.match(prefix)))) {
			e.checked = form.elements[checkall].checked;
			if(e.checked) {
				count++;
			}
		}
	}
	return count;
}

function createajax() {
	var ajaxobj = false;
	var ajaxversion = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
	if(window.XMLHttpRequest) {
		ajaxobj = new XMLHttpRequest();
//		if(ajaxobj.overrideMimeType) {
//			ajaxobj.overrideMimeType('text/xml');
//		}
	} else {
		for(i = 0; i < ajaxversion.length; i++) {
			try {
				ajaxobj = new ActiveXObject(ajaxversion[i]);
				if(ajaxobj) break;
			} catch(e) {}
		}
	}
	return ajaxobj;
}

function ajaxget(u, o, c) {
	var x = createajax();
	var u = u + '&inajax=1&h=' + Math.random();
	if(window.XMLHttpRequest) {
		x.open('GET', u);
		x.send(null);
	} else {
		x.open("GET", u, true);
		x.send();
	}
	x.onreadystatechange = function () {
		if(x.readyState == 4 && x.status == 200) {
			var m = x.responseText;
			if(o != '') {
				$(o).innerHTML = m;
			} else {
				eval(c);
			}
		}
	}
}