function o(id)
{
	return document.getElementById(id);
}

function newXMLHttp() {
/**/
	if(window.ActiveXObject) {
		// Win e4,e5,e6
		try{
			req=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e){
			try	{
				req=new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e2){
				req=null;
			}
		}
	}else if(window.XMLHttpRequest) {
		// Win Mac Linix m1,f1,o9 Mac s1 Linux K3
		req=new XMLHttpRequest();
	}else{
		req=null;
	}
	return req;
/*
	if(window.ActiveXObject) {
		try {
			req = new ActiveXObject("Microsoft.XMLHTTP");
		} catch(e) {
			alert("XMLHTTP Error1");
			return false;
		}
	}

	else if(window.XMLHttpRequest) {
		try {
			req = new XMLHttpRequest;
		} catch(e) {
			alert("XMLHTTP Error2");
			return false;
		}
	}

	else {
		alert("XMLHTTP Error3");
		return false;
	}
	return req;
//*/
}

function checkRequired(form){
	if(!form){
		alert("form이 전달되지 않았습니다");
	}
	var child = form.elements;
	for(i=0; i< child.length; i++){
		if(child[i].getAttributeNode("required")!=null && !child[i].value) {
			child[i].style.backgroundColor = "#FF9";
			child[i].focus();
			alert("해당 항목의 값이 없거나 잘못되었습니다.");
			return false;
		}
	}
	return true;
}

function makeQuery(form){
	var child = form.elements;
	var data = new Array();
	for(i = 0;i < child.length;i++) {
		if(child[i].tagName != "INPUT" && child[i].tagName != "TEXTAREA" && child[i].tagName != "SELECT") continue;
		if(child[i].type == "submit" || child[i].type == "button" || child[i].type == "reset") continue;
		if((child[i].type == "radio" || child[i].type == "checkbox") && !child[i].checked) continue;
		if(!child[i].name) continue;
//		if(!child[i].value) continue;
//		child[i].style.backgroundColor = "#FFF";

		data.push(child[i].name+"="+child[i].value);
//		data.push(child[i].name+"="+encodeURIComponent(child[i].value));
	}
	return data.join("&");
}
function postValue(action, value, callback){
	if(!callback) callback = JSON;
	var req = newXMLHttp();
	req.open("POST", action, true);
	req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	req.send(value);
	req.onreadystatechange = function() {
		if(req.readyState == 4) {
			if(req.status == 200) {
				return callback(req);
			}else{
				alert("postValue Error");
				return false;
			}
		}
	}
	return false;
}
function postForm(f){
	postValue(f.action, makeQuery(f), JSON);
}
function eraseHTML(obj){
	o(obj).innerHTML="";
}

/*
				xmlHttp.onreadystatechange = function() {
					if (xmlHttp.readyState == 4) {
						proc_funcname(xmlHttp.responseXML);
					}
				}
*/

function insertHTML(obj, file, waittime, loadingBar){
	var req = newXMLHttp();
	req.open("POST", file, true);
	req.send(null);

	if(req.readyState==4 && req.status==200){
		o(obj).innerHTML = req.responseText;
	}

	req.onreadystatechange = function(){
		if(req.readyState == 4){
//			if(req.status==200){
				if(waittime != undefined){
					if(loadingBar){
						o(obj).innerHTML = "<div align=center><img vspace=10 src=./icon/indicator.gif></div>";
					}
					setTimeout(function(){o(obj).innerHTML = req.responseText;}, waittime);
				}else
					o(obj).innerHTML = req.responseText;
//			}
		}else{
//			o(obj).innerHTML = "Loading..."+req.readyState;
		}
	}
}
function captureEnterKey(){
	if (event.keyCode == 13){
		if (event.shiftKey == false) {
			var sel = document.selection.createRange();
			sel.pasteHTML('<br>\n');
			event.cancelBubble = true;
			event.returnValue = false;
			sel.select();
			sel.moveEnd("character", 1);
			sel.moveStart("character", 1);
			sel.collapse(false);
			return false;
		}
		else
			return event.keyCode = 13;
	}
}



function echo(str){
	document.write(str);
}
function sleep(numberMillis) {
	var now = new Date();
	var exitTime = now.getTime() + numberMillis;
	while (true) {
		now = new Date();
		if (now.getTime() > exitTime)
			return;
	}
}

function paging(total_all, listmax, pagemax, page, func){
	if(total_all>0){
		total_page = parseInt(total_all/listmax);
		if(total_page * listmax != total_all) total_page++;
		skip = (page-1) * listmax;
	}else{
		total_page = 0;
		total_all = 0;
	}
//	buff = "<span><b>"+total_page+"</b> pages, <b>"+total_all+"</b> lists</span><br>";
	buff = "";
	i = page - pagemax;
	if(i>1){
		buff += "<a href=javascript:; onclick=\""+func+"(1);return false;\" class=pagec>1</a>";
	}
	if(page-pagemax>2){
		buff += "<span>...</span>";
	}
	for(; i<page+pagemax; i++){
		if(i>0 && i< total_page+1){
			if(i!=page) buff+="<a href=javascript:; class=pagec onclick=\""+func+"("+i+");return false;\">"+i+"</a>";
			else buff+="<span class=pageb>"+i+"</span>";
		}
	}
	if(i<=total_page){
		buff+="<span>...</span>";
		buff+="<a href=javascript:; class=pagec onclick=\""+func+"("+total_page+");return false;\">"+total_page+"</a>";
		buff+="";
	}
	return buff;
}
function insert_currentTime(obj){
	now = new Date();
	Y = now.getFullYear();
	M = now.getMonth()+1;
	D = now.getDate();
	H = now.getHours();
	i = now.getMinutes();
	s = now.getSeconds();
	str = Y+"."+M+"."+D+" "+H+":"+i+":"+s;
	o(obj).value = str;
}
function setCookie( name, value, expiredays ){
	var todayDate = new Date();
	todayDate.setDate( todayDate.getDate() + expiredays );
	document.cookie = name + "=" + escape( value ) + "; path=/; expires=" + todayDate.toGMTString() + ";";
	//setCookie( "cookiename", "cookievalue" , 1); -->하루
}
function getCookie( name ){
	var nameOfCookie = name + "=";
	var x = 0;
	while ( x <= document.cookie.length ){
		var y = (x+nameOfCookie.length);
		if ( document.cookie.substring( x, y ) == nameOfCookie ) {
			if ( (endOfCookie=document.cookie.indexOf( ";", y )) == -1 )
				endOfCookie = document.cookie.length;
			return unescape( document.cookie.substring( y, endOfCookie ) );
		}
		x = document.cookie.indexOf(" ", x) + 1;
		if ( x == 0 ) break;
	}
	return "";
}
