//javascript compress
//http://closure-compiler.appspot.com/home


//function trime
	function _private_trim() {
		var strTemp = this;
		if ( strTemp.length > 0 ) {
			while ( strTemp.substring(0, 1) == " " )
					strTemp = strTemp.substring(1);
			while ( strTemp.substring(strTemp.length - 1, strTemp.length) == " " )
					strTemp = strTemp.substring(0, strTemp.length - 1);
		}
		return strTemp;
	}
	String.prototype.trim = _private_trim;

	//textarea maxlength stop
	function ismaxlength(obj) {
		var mlength=obj.getAttribute? parseInt(obj.getAttribute("maxlength")) : ""
		if (obj.getAttribute && obj.value.length>mlength)
			obj.value=obj.value.substring(0,mlength)
	}
	
	function checkDigitOnly( digitChar ) {  
		if ( digitChar == null ) return false ;
		for(var i=0;i<digitChar.length;i++){          
			var c=digitChar.charCodeAt(i);       
			if( !(  0x30 <= c && c <= 0x39 ) ) {       
				return false ;       
			}
		}      
		return true ;
	}

	//function only number
	function keyCheck(e) { 
		var n4=(document.layers)?true:false;
		var e4=(document.all)?true:false;
		var str = "";
		
		if(n4) var keyValue = e.which
		else var keyValue = e.keyCode
		
		if ( ((keyValue >= 48) && (keyValue <= 57)) || ((keyValue >= 96) && (keyValue <= 105)) 
			 || keyValue == 8 || keyValue == 9 || keyValue == 229 ) {
			e.returnValue=true;
			return true;
		}
		else {
			e.returnValue=false;
			return false;
		}
	}

	//set HTTP
	function setHttpUrlType(string) {	
		var strLength = string.length
		if (strLength == 0) { return ""; } ;//return "http://" + string;
		string = string.toLowerCase( );
		alert(string);

		var i = string.indexOf("http://");
		if (i == -1) {
			return "http://" + string;
		}
		return string.substring(0,i+7) + replace(string.substring(i+7), "http://", "");
	}

	function replace(string,text,by) {
	// Replaces text with by in string
		var strLength = string.length, txtLength = text.length;
		if ((strLength == 0) || (txtLength == 0)) return string;

		var i = string.indexOf(text);
		if ((!i) && (text != string.substring(0,txtLength))) return string;
		if (i == -1) return string;

		var newstr = string.substring(0,i) + by;

		if (i+txtLength < strLength)
			newstr += replace(string.substring(i+txtLength,strLength),text,by);

		return newstr;
	}

	//urlquery 에, 특정 text = val 을 삭제처리한다.
	function query_parse_null(nulltext,string) {
		var isQuery = string;
		var arrStr,reStr="",arrinStr;
		if ( string == null )	 isQuery = location.search;
		if ( isQuery.length > 1 ) {
			 isQuery = replace(isQuery,"?","");
			arrStr = isQuery.split('&');
			for(i =0; i < arrStr.length; i++) {
				inF = arrStr[i].indexOf('=');
				if ( inF  > 0 ) {
					if ( arrStr[i].substring(0,inF) != nulltext ) reStr += arrStr[i]+"&";
				}
			}
		}
		if ( reStr.length > 1 ) reStr= reStr.substring(0,reStr.length -1 );

		return reStr;
	}
	

	//Cookie 관련
	function Get_Cookie(name) { 
	   var start = document.cookie.indexOf(name+"="); 
	   var len = start+name.length+1; 
	   if ((!start) && (name != document.cookie.substring(0,name.length))) return null; 
	   if (start == -1) return null; 
	   var end = document.cookie.indexOf(";",len); 
	   if (end == -1) end = document.cookie.length; 
	   return unescape(document.cookie.substring(len,end)); 
	} 

	function Set_Cookie(name,value,expires,path,domain,secure) { 
		var cookieString = name + "=" +escape(value) + 
		   ( (expires) ? ";expires=" + expires.toGMTString() : "") + 
		   ( (path) ? ";path=" + path : "") + 
		   ( (domain) ? ";domain=" + domain : "") + 
		   ( (secure) ? ";secure" : ""); 
		document.cookie = cookieString; 
	} 

	function Delete_Cookie(name,path,domain) { 
	   if (Get_Cookie(name)) document.cookie = name + "=" + 
		  ( (path) ? ";path=" + path : "") + 
		  ( (domain) ? ";domain=" + domain : "") + 
		  ";expires=Thu, 01-Jan-70 00:00:01 GMT"; 
	} 


	function movenext(obj1,obj2,length){
		if (obj1.value.length == length) obj2.focus();
	}

	// 영문 판별
	function isAlphaCheck(str)	{
		var alpha_Str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ ";
		for(var i = 0; i < str.length; i++) {
			var substr = str.substring(i, i+1);
			if(alpha_Str.indexOf(substr) < 0) {alert('only english possible.'); return false; }
		}
		return true;
	}

// 영문 판별
	function isRecommenderCheck(str)	{
		 for(var i=0;i<str.length;i++){                 
                        achar = str.charCodeAt(i);  
                        if( achar > 255 ){ 
                                alert("Korean is not support.");
		  			return false;
                        } 
                } 
                return true; 
	}
	// 숫자 판별
	function isNumberCheckAll(str)	{
		var num_Str = "0123456789.";
		var substr = "";
		for (var i = 0; i < str.length; i++) {
			substr = str.substring(i, i + 1);
			if(num_Str.indexOf(substr) < 0) { return false; }
		}
		return true;
	}

	function isCardCheckAll(str) {
		if (!isNumberCheckAll(str) ) {
			return false;
		} 
		else {
			if(str.trim() == "") { alert('To enter the card number, please'); return false; }
			else if (str.length != 16) { 
				//alert('카드번호 16자리를 정확히 입력하여 주세요'); return false;
			}
		}
		return true;
	}

	function settype(selectESType) {
		document.all[selectESType].className="red";
	}
	
	function checkNumber(sValue) {
		var oIDMatch = new RegExp(/[0-9-]$/i);
		return oIDMatch.test(sValue);
	}
	
	function openWin(url,name,width,height,scrollbars,resizable) {
	msgWindow=window.open(url,name,'scrollbars='+scrollbars+',resizable='+resizable+',width='+width+',height='+height);
	msgWindow.focus();
	}
	
	function vSetCookie() {
		var frm = document.loginFrm;
		var expired_date = new Date( 2011, 1, 1 );
		if( frm.SAVEID.checked == true ) {
			sSavedId = base64encode( frm.id.value ) + '|1';
		} else {
			sSavedId = "|0";
		}
		setCookie( "SAVED_OPENID", sSavedId, expired_date, "/", "opennonsul.com", false );
	}
	
	/**
	 * base64
	 */
	var base64list='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
	function base64encode(s)
	{
		var t='',p=-6,a=0,i=0,v=0,c;
		while(i<s.length||p>-6){
			if(p<0){
				if(i<s.length){c=s.charCodeAt(i++);v+=8;
				}else{c=0;}
				a=((a&255)<<8)|(c&255);	p+=8;
			}
			if(v>0){t+=base64list.charAt((a>>p)&63);
			}else{t+=base64list.charAt(64);}
			p-=6;v-=6;
		}
		return t;
	}
	
	function base64decode(s)
	{
		var t='',p=-8,a=0,q=0,c,m,n;
		for(i=0;i<s.length;i++){
			c=base64list.indexOf(s.charAt(i));
			if(c<0)continue;
			a=(a<<6)|(c&63);
			p+=6;
			if(p>=0){
				c=(a>>p)&255;
				if(c>0)t+=String.fromCharCode(c);
				a&=63;p-=8;
			}
		}
		return t;
	}
	
	/**
	 * setCookie
	 */
	function setCookie( name, value, expires, path, domain, secure )
	{
		if( name == undefined || value == undefined ) return false;
		var cookieValue = '';
		cookieValue += name + '=' + value;
		if( expires != undefined ) cookieValue += ( '; expires=' + expires.toGMTString() );
		var expires = new Date(2020, 1, 1);
		if( path != undefined ) cookieValue += ( '; path=' + path );
		if( domain != undefined ) cookieValue += ( '; domain=' + domain );
		if( secure != undefined && secure == true ) cookieValue += '; secure';
		document.cookie = cookieValue;
		delete cookieValue;
		return true;
	}
	
	function setSavedID() {
		if(base64decode(GetCookie('SAVED_OPENID')) != "") {
			document.loginFrm.id.style.backgroundImage='';
			document.loginFrm.id.value = base64decode(GetCookie('SAVED_OPENID'));
			document.loginFrm.SAVEID.checked = true;
		}
	}
	
	
	function replaceAll(originalString, findText, replaceText){

        var pos = 0
        var preStr = ""
        var postStr = ""

        pos = originalString.indexOf(findText)

        while (pos != -1) {
                preString = originalString.substr(0,pos)
                postString = originalString.substring(pos+findText.length)
                originalString = preString + replaceText + postString
                pos = originalString.indexOf(findText)
        }

        return originalString
	}
	
	
	
/*  Function Equivalent to java.net.URLEncoder.encode(String, "UTF-8")

    Copyright (C) 2002, Cresc Corp.

    Version: 1.0

*/

	function encodeURL(str)
	{	
	    var s0, i, s, u;
	
	    s0 = "";                // encoded str
	
	    for (i = 0; i < str.length; i++){   // scan the source
	
	        s = str.charAt(i);
	
	        u = str.charCodeAt(i);          // get unicode of the char
	
	        if (s == " "){s0 += "+";}       // SP should be converted to "+"
	
	        else {
	
	            if ( u == 0x2a || u == 0x2d || u == 0x2e || u == 0x5f || ((u >= 0x30) && (u <= 0x39)) || ((u >= 0x41) && (u <= 0x5a)) || ((u >= 0x61) && (u <= 0x7a))){       // check for escape
	
	                s0 = s0 + s;            // don't escape
	
	            }
	
	            else {                  // escape
	
	                if ((u >= 0x0) && (u <= 0x7f)){     // single byte format
	
	                    s = "0"+u.toString(16);
	
	                    s0 += "%"+ s.substr(s.length-2);
	
	                }
	
	                else if (u > 0x1fffff){     // quaternary byte format (extended)
	
	                    s0 += "%" + (oxf0 + ((u & 0x1c0000) >> 18)).toString(16);
	
	                    s0 += "%" + (0x80 + ((u & 0x3f000) >> 12)).toString(16);
	
	                    s0 += "%" + (0x80 + ((u & 0xfc0) >> 6)).toString(16);
	
	                    s0 += "%" + (0x80 + (u & 0x3f)).toString(16);
	
	                }
	
	                else if (u > 0x7ff){        // triple byte format
	
	                    s0 += "%" + (0xe0 + ((u & 0xf000) >> 12)).toString(16);
	
	                    s0 += "%" + (0x80 + ((u & 0xfc0) >> 6)).toString(16);
	
	                    s0 += "%" + (0x80 + (u & 0x3f)).toString(16);
	
	                }
	
	                else {                      // double byte format
	
	                    s0 += "%" + (0xc0 + ((u & 0x7c0) >> 6)).toString(16);
	
	                    s0 += "%" + (0x80 + (u & 0x3f)).toString(16);
	
	                }
	
	            }
	
	        }
	
	    }
	
	    return s0;
	
	}
	
	 
	
	/*  Function Equivalent to java.net.URLDecoder.decode(String, "UTF-8")
	
	    Copyright (C) 2002, Cresc Corp.
	
	    Version: 1.0
	
	*/
	
	function decodeURL(str)
	{
		  if(str == null) return null;
		  
	    var s0, i, j, s, ss, u, n, f;
	
	    s0 = "";                // decoded str
	
	    for (i = 0; i < str.length; i++){   // scan the source str
	
	        s = str.charAt(i);
	
	        if (s == "+"){s0 += " ";}       // "+" should be changed to SP
	
	        else {
	
	            if (s != "%"){s0 += s;}     // add an unescaped char
	
	            else{               // escape sequence decoding
	
	                u = 0;          // unicode of the character
	
	                f = 1;          // escape flag, zero means end of this sequence
	
	                while (true) {
	
	                    ss = "";        // local str to parse as int
	
	                        for (j = 0; j < 2; j++ ) {  // get two maximum hex characters for parse
	
	                            sss = str.charAt(++i);
	
	                            if (((sss >= "0") && (sss <= "9")) || ((sss >= "a") && (sss <= "f"))  || ((sss >= "A") && (sss <= "F"))) {
	
	                                ss += sss;      // if hex, add the hex character
	
	                            } else {--i; break;}    // not a hex char., exit the loop
	
	                        }
	
	                    n = parseInt(ss, 16);           // parse the hex str as byte
	
	                    if (n <= 0x7f){u = n; f = 1;}   // single byte format
	
	                    if ((n >= 0xc0) && (n <= 0xdf)){u = n & 0x1f; f = 2;}   // double byte format
	
	                    if ((n >= 0xe0) && (n <= 0xef)){u = n & 0x0f; f = 3;}   // triple byte format
	
	                    if ((n >= 0xf0) && (n <= 0xf7)){u = n & 0x07; f = 4;}   // quaternary byte format (extended)
	
	                    if ((n >= 0x80) && (n <= 0xbf)){u = (u << 6) + (n & 0x3f); --f;}         // not a first, shift and add 6 lower bits
	
	                    if (f <= 1){break;}         // end of the utf byte sequence
	
	                    if (str.charAt(i + 1) == "%"){ i++ ;}                   // test for the next shift byte
	
	                    else {break;}                   // abnormal, format error
	
	                }
	
	            s0 += String.fromCharCode(u);           // add the escaped character
	
	            }
	
	        }
	
	    }
	
	    return s0;
	
	}
	
	
	
	Paging = function(total, jsFunc) 
	{
		this.config = {
			cur_page : 1,
			//pageVariable: 'page',
			numberFormat: '[%n]',
			showFirstLast: true,	// 맨처음, 맨 마지막으로 가는 링크를 만들것인가.
			thisPageStyle: 'font-weight: bold;',
			itemPerPage: 10,	// 리스트 목록수
			pagePerView: 10,	// 페이지당 네비게이션 항목수
			prevIcon: null,	// 이전페이지 아이콘
			nextIcon: null,	// 다음페이지 아이콘
			firstIcon: null,	// 첫페이지로 아이콘
			lastIcon: null	// 마지막페이지 아이콘
		}
	
		this.totalItem = total;
		//this.qs = new QueryString;
	
		this.calculate = function() {
			this.totalPage = Math.ceil(this.totalItem / this.config.itemPerPage);
			//this.currentPage = this.qs.getVar(this.config.pageVariable);
			this.currentPage = this.config.cur_page;
			if (!this.currentPage) this.currentPage = 1;
			if (this.currentPage > this.totalPage) this.currentPage = this.totalPage;
			this.lastPageItems = this.totalPage % this.config.itemPerPage;
	
			this.prevPage = this.currentPage-1;
			this.nextPage = this.currentPage+1;
			this.seek = this.prevPage * this.config.itemPerPage;
			this.currentScale = parseInt(this.currentPage / this.config.pagePerView);
			if (this.currentPage % this.config.pagePerView < 1) this.currentScale--;
			this.totalScale = parseInt(this.totalPage / this.config.pagePerView);
			this.lastScalePages = this.totalPage % this.config.pagePerView;
			if (this.lastScalePages == 0) this.totalScale--;
			this.prevPage = this.currentScale * this.config.pagePerView;
			this.nextPage = this.prevPage + this.config.pagePerView + 1;
		}
	
		this.toString = function() {
			var ss, se;
			var firstBtn = '';
			var lastBtn = '';
			var prevBtn = '';
			var nextBtn = '';
	
			this.calculate();
	
			if (this.config.showFirstLast) {
				if (this.config.firstIcon) firstBtn = '<img src="'+this.config.firstIcon+'" border="0" style="vertical-align: middle">';
				else firstBtn = '[First]'; //'☜';
				firstBtn = "<a href=\"javascript:"+jsFunc+"(1);\">"+firstBtn+"</a>"; 
				if (this.config.lastIcon) lastBtn = '<img src="'+this.config.lastIcon+'" border="0" style="vertical-align: middle">';
				else lastBtn = '[Last]'; //'☞';
				lastBtn = "<a href=\"javascript:"+jsFunc+"("+this.totalPage+");\">"+lastBtn+"</a>";
			} else {
				firstBtn = lastBtn = '';
			}
	
			if (this.config.prevIcon) prevBtn ='<img src="'+this.config.prevIcon+'" border="0" style="vertical-align: middle">';
			else prevBtn = '<';
			if (this.currentPage > this.config.pagePerView) {
				prevBtn = "<a href=\"javascript:"+jsFunc+"("+this.prevPage+");\">"+prevBtn+"</a>";
			}
	
			ss = this.prevPage + 1;
			if ((this.currentScale >= this.totalScale) && (this.lastScalePages != 0)) se = ss + this.lastScalePages;
			else if (this.currentScale <= -1) se = ss;
			else se = ss + this.config.pagePerView;
	
			var navBtn = '';
			for(var i = ss; i<se; i++) {
				//var pageText = this.config.numberFormat.replace(/%n/g,i);
				var pageText = i;
				if (i == this.currentPage) {
					_btn = '<span style="'+this.config.thisPageStyle+'">'+pageText+'</span>&nbsp;';
				} else {
					_btn = "<a href=\"javascript:"+jsFunc+"("+i+");\">"+pageText+"</a>&nbsp;";
				}
				navBtn+=_btn;
			}
	
			if (this.config.prevIcon) nextBtn ='<img src="'+this.config.nextIcon+'" border="0" style="vertical-align: middle">';
			else nextBtn = '>';
			if (this.totalPage >= this.nextPage) {
				nextBtn = "<a href=\"javascript:"+jsFunc+"("+this.nextPage+");\">"+nextBtn+"</a>";
			}
			return firstBtn+'&nbsp;'+prevBtn+'&nbsp;'+navBtn+nextBtn+'&nbsp;'+lastBtn;
		}
	}
	
	
	function displayLayer(event, div_name)
	{
	
	  var obj = document.getElementById(div_name);
	  
	  var _tmpx, _marginx, _marginy;
	  
	  _tmpx = event.clientX + parseInt(obj.offsetWidth);
	  _tmpx = event.clientY + parseInt(obj.offsetHeight);
	  _marginx = document.body.clientWidth - _tmpx;
	  _marginy = document.body.clientHeight - _tmpx;
	  
	  /*if(_marginx < 0)
	    obj.style.left = event.clientX + document.body.scrollLeft + _marginx + "px";
	  else
	    obj.style.left = event.clientX + document.body.scrollLeft - 5 + "px";
	   */
	  obj.style.left = "412px";
	  
	   
	  if(_marginy < 0)
	    obj.style.top = event.clientY + document.body.scrollTop + _marginy - 5 + "px";
	  else
	    obj.style.top = event.clientY + document.body.scrollTop + 1 + "px"; 
	  
	  obj.style.display = 'block';
	  
	}	

	
function thisMovie(objectID)
{
	try
	{
		if (navigator.appName.indexOf("Microsoft") != -1) {
			//alert('1'+window[objectID]);
	        return window[objectID];
	    }
	    else {
	    	//alert('2'+document[objectID]);
	        return document[objectID];
	    }
	} catch(e)
	{
		alert(e);
	}
	
	
}

function copyClipboard(str)
{
	window.clipboardData.setData('Text',str);
	alert('copy to clipboard');
}

function selectText(element) 
{     
	var text = document.getElementById(element);
	var range = null;
	var selection = null;
	if(jQuery.browser.msie) 
	{         
		range = document.body.createTextRange();         
		range.moveToElementText(text);         
		range.select();     
	} else if (jQuery.browser.mozilla || jQuery.browser.opera) 
	{         
		selection = window.getSelection();         
		range = document.createRange();         
		range.selectNodeContents(text);        
		selection.removeAllRanges();         
		selection.addRange(range);     
	} else if (jQuery.browser.safari) 
	{         
		selection = window.getSelection();         
		selection.setBaseAndExtent(text, 0, text, 1);     
	} 
}



function flashCreate(url,w,h,id,bg,vars,win,target,allowFullScreen)
{
	var flashStr =	"<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' " +
	"	codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0' " +
	"	width='"+w+"' height='"+h+"' id='"+id+"' align='middle' z-index='-1'>"+
	"   <param name='allowScriptAccess' value='always' />"+
	"   <param name='allowFullScreen' value='"+allowFullScreen+"' />"+
	"   <param name='movie' value='"+url+"' />"+
	"   <param name='quality' value='high' />"+
	"   <param name='bgcolor' value='"+bg+"' />"+		
	"   <param name='FlashVars' value='"+vars+"' />"+
	"   <param name='wmode' value='"+win+"' />"+
	"   <param name='menu' value='false' />"+		
	"   <embed src='"+url+"' quality='high'" +
	"      bgcolor='#ffffff' width='"+w+"' height='"+h+"' id='"+id+"' name='"+id+"'"+ 
	"      movie='"+url+"' "+
	"      wmode='"+win+"' align='middle' allowScriptAccess='always'"+ 
	"      menu='false' type='application/x-shockwave-flash'"+
	"      pluginspage='http://www.macromedia.com/go/getflashplayer'" +
	"	   allowFullScreen='"+allowFullScreen+"'"+
	"	   FlashVars='"+vars+"'/>"+	
	"</object>";
	
	
	document.getElementById(target).innerHTML = flashStr;
}

var monthArray = new Array();
monthArray[0]="Jan";	
monthArray[1]="Feb";
monthArray[2]="Mar";
monthArray[3]="Apr";
monthArray[4]="May";
monthArray[5]="Jun";
monthArray[6]="Jul";
monthArray[7]="Aug";
monthArray[8]="Sep";
monthArray[9]="Oct";
monthArray[10]="Nov";
monthArray[11]="Dec";

var dayArray = new Array();
dayArray[0]="Sun";
dayArray[1]="Mon";
dayArray[2]="Tue";
dayArray[3]="Wed";
dayArray[4]="Thu";
dayArray[5]="Fri";
dayArray[6]="Sat";

//var lastDayArray = {};


var today = null;

var date = null;
var intDay = null;
var day = null;
var intMonth = null;
var month = null; 
var year = null;

var _tmp = null;
var lastDay = null;
//alert(lastDay);

var hour= null;
var min= null;
var sec= null;


function setNowTime(p_year, p_month, p_date, p_hours, p_minutes, p_seconds)
{	
//alert('1');
  today = new Date();  
  
  //alert(p_date);
  
  today.setUTCFullYear(parseInt(p_year));
  
  if(p_month.indexOf('0') == 0)
  {
  	p_month = p_month.substring(1);
  }
  today.setUTCMonth(parseInt(p_month));    
  
  if(p_date.indexOf('0') == 0)
  {
  	p_date = p_date.substring(1);
  }
  today.setUTCDate(parseInt(p_date));
  
  if(p_hours.indexOf('0') == 0)
  {
  	p_hours = p_hours.substring(1);
  }
  
  today.setHours(parseInt(p_hours));
  
  if(p_minutes.indexOf('0') == 0)
  {
  	p_minutes = p_minutes.substring(1);
  }
  today.setMinutes(parseInt(p_minutes));
  
  if(p_seconds.indexOf('0') == 0)
  {
  	p_seconds = p_seconds.substring(1);
  }
  today.setSeconds(parseInt(p_seconds)); 
  
  date = today.getDate();  
  intDay = today.getDay();
  day = (dayArray[intDay]);
  intMonth = today.getMonth();
  month = (monthArray[intMonth]);  
  year = today.getFullYear();
  
  _tmp = new Date(year, today.getMonth()+1, 0);
  lastDay = _tmp.getDate();
  //alert(lastDay);
  
  hour = today.getHours();
  min = today.getMinutes();
  sec = today.getSeconds();   
  
}


function getServerTime() 
{
  //alert('getServerTime');
  sec = parseInt(sec) + 1;
  
  if(sec == 60)
  {
    sec = 0;
    min = parseInt(min) +1;
  }
  
  sec = parseInt(sec);
  min = parseInt(min);
  
  
  if(min == 60)
  {
    min = 0;
    hour = parseInt(hour) + 1;
  }
  
  hour = parseInt(hour);
  
  if(hour == 24)
  {
    hour = 0;
    date = parseInt(date) +1;
    intDay = parseInt(intDay) + 1;    
    day = (dayArray[parseInt(intDay)]);      
  }
  
  date = parseInt(date);
  
  
  if(date == parseInt(lastDay)+1)
  {
    date = 1;
    intMonth = parseInt(intMonth) + 1;
    month = (monthArray[intMonth]);
  }
  
  
  if(intMonth == 12)
  {
    intMonth = 1;
    month = (monthArray[intMonth]);
    year = parseInt(year) + 1;
  }
  

	var dateStr=" " + day + ", " + ((date<=9) ? "0"+date : date) + " "+ month + " " + year;
	var timeStr = " " + ((hour<=9) ? "0"+hour : hour) + ":" + ((min<=9) ? "0"+min : min) + ":" + ((sec<=9) ? "0"+sec : sec)+" EST";
	//alert(dateStr + timeStr);
	document.getElementById('server_time_div').innerHTML = dateStr + timeStr;
	//alert(document.getElementById('server_time_div').innerText);
		
	setTimeout("getServerTime()", 1000);
}

function msgSetBorder(flag)
{
	var div = document.getElementById('msg');
	
	if(flag == '1')	
	{
		div.style.borderTopWidth = '1';
		div.style.borderRightWidth = '1';
	} 		
	else
	{
		div.style.borderTopWidth = '0';
		div.style.borderRightWidth = '0';
	} 		
}

function fixLength(input, limit, postfix)
{	
	if (input == null || input == '')
		return "";	
	
	if(limit >= input.length)
	{
		return input;
	}
	
	var rtnStr = '';	
	//var charArray = input.toArray();
	
	var charArray = new Array();

	for (var i = 1; i<=input.length; i++)
	{
	    charArray[i] = input.substring((i - 1), i);
	}
	
	
	for (j = 1; j<parseInt(limit)+1; j++)
	{
		rtnStr = rtnStr + charArray[j];				
	}	
	
	rtnStr = rtnStr + postfix;	

	return rtnStr;

}

function roundXL(n, digits)
{
  if (digits >= 0) return parseFloat(n.toFixed(digits)); 

  digits = Math.pow(10, digits); 
  var t = Math.round(n * digits) / digits;

  return parseFloat(t.toFixed(0));
}

function getNumberFormat(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

function yyyymmddFormat(str, delim)
{
	if(str == '' || str.length < 6) return str;
	var year = str.substring( 0, 4 );
    var month = str.substring( 4, 6 );
    var day = str.substring(6);
    return year+delim+month+delim+day;
}

function charReplace(Str,BeforeChar,AfterChar) {
    
    var AfterString='';
    
    for (cnt = 0; cnt < Str.length; cnt++) {
        switch(Str.charAt(cnt)) {
            case BeforeChar:
                AfterString+=AfterChar;
                break;
            default:
                AfterString+=Str.charAt(cnt);
                break;
        }
    }
    
    return AfterString;
}	

var dateFrmt =/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/; 
var yyyyMMFrmt = /^[0-9]{4}-[0-9]{2}$/;
var timeFrmt =/^[0-9]{2}:[0-9]{2}$/;
var numberFrmt =/^[0-9]+(.[0-9]+)?$/;
var emailFrmt = /^([0-9a-zA-Z_.-]+)@([0-9a-zA-Z_-]+)(\.[0-9a-zA-Z_-]+){1,2}$/;
var idFrmt = /^([0-9a-zA-Z_.-])+$/;
function checkFormField(f, as_type)
{	
	var result = true;
	jQuery(f).find('input, select, textarea').each(
			function(i){
	            var objtype = jQuery(this);
	            objtype.each(
	            	function(j){	  
	            		
		            	if(jQuery(this).attr('required') == 'true' /*&& jQuery(this).val() == ''*/)
		            	{		            		
		            		if(jQuery(this).val() == '')
		            		{		            	
		            			var addStr = '';
		            			if(jQuery(this).attr('alt') != null)
		            			{
		            				//alert(jQuery(this).attr('alt'));
		            				/*var alts = jQuery(this).attr('alt')[0];
			            			alert(alts);*/
		            				var alts = jQuery(this).attr('alt');
			            			if(alts != '') addStr = '[' +alts+ ']';
		            			}			            			
			            			
			            		jQuery(this).addClass('ui-state-error');
			            		jQuery(this).focus();
			            		jQuery(this).select();
			            		result = false;
			            		if(as_type){
			            			alert(msg_com_code_016+addStr)
			            		} else {
			            			msgStart(msg_com_code_016+addStr, null);
			            		}
			            		return false;			            		
		            		} else
		            		{
		            			jQuery(this).removeClass('ui-state-error');
		            		}
		            		
		            	}
		            	
		            	if(jQuery(this).attr('type') == 'textarea' && jQuery(this).attr('maxlength') != '-1')
		            	{
		            		var maxLength = parseInt(jQuery(this).attr('maxlength'));
		            		var textAreaLength = parseInt(jQuery(this).val().length);
		            		if(textAreaLength > maxLength)
		            		{
		            			jQuery(this).addClass('ui-state-error');
			            		jQuery(this).focus();
			            		jQuery(this).select();
			            		result = false;
			            		if(as_type)
			            		{
			            			alert(msg_com_code_015+'(actual:'+textAreaLength+' limit:'+maxLength+')');
			            		} else {
			            			msgStart(msg_com_code_015+'(actual:'+textAreaLength+' limit:'+maxLength+')', null);
			            		}
			            		
			            		
			            		return false;
		            		} else
		            		{
		            			jQuery(this).removeClass('ui-state-error');
		            		}
		            	}
		            	
		            	if(jQuery(this).attr('type') != 'select' && jQuery(this).attr('minlength') != '-1')
		            	{		            		
		            		var minLength = parseInt(jQuery(this).attr('minlength'));
		            		var currentLength = parseInt(jQuery(this).val().length);
		            		if(currentLength < minLength)
		            		{
		            			jQuery(this).addClass('ui-state-error');
			            		jQuery(this).focus();
			            		jQuery(this).select();
			            		result = false;
			            		if(as_type)
			            		{
			            			alert(msg_com_code_014+'(actual:'+currentLength+' minimum:'+minLength+')');
			            		} else {
			            			msgStart(msg_com_code_014+'(actual:'+currentLength+' minimum:'+minLength+')', null);
			            		}
			            		
			            		
			            		return false;
		            		} else
		            		{
		            			jQuery(this).removeClass('ui-state-error');
		            		}
		            	}
		            	
		            	
		            	if(jQuery(this).attr('comparedates') != null)
		            	{	
		            		var temp = jQuery(this).attr('compareDates');			            		
		            		var compareFields = temp.split(':')[0];			            		
		            		var nameOrId = temp.split(':')[1];	//id or name		            		
		            		
		            		
		            		var compareFiledArray = compareFields.split(',');
		            		var start_dt = 0;
		            		var end_dt = 0;			            		
		            		if(nameOrId.toLowerCase() == 'id')
		            		{
		            			start_dt = jQuery('#'+compareFiledArray[0]).val();
		            			end_dt = jQuery('#'+compareFiledArray[1]).val();
		            		} else if(nameOrId.toLowerCase() == 'name')
		            		{
		            			start_dt = jQuery('input[name='+compareFiledArray[0]+']').val();
		            			end_dt = jQuery('input[name='+compareFiledArray[1]+']').val();
		            		} else
		            		{
		            			start_dt = 0;
		            			end_dt = 0;
		            		}
		            		
		            		if(start_dt != 0 && end_dt != 0)
		            		{
		            			start_dt = charReplace(start_dt, "-", "");
		            			end_dt = charReplace(end_dt, "-", "");
		            			
		            			start_dt = charReplace(start_dt, ":", "");
		            			end_dt = charReplace(end_dt, ":", "");
		            			try
		            			{
			            			start_dt = parseInt(start_dt);
			            			end_dt = parseInt(end_dt);
			            			
			            			if(start_dt > end_dt)
			            			{
			            				result = false;
			            				if(as_type)
					            		{
					            			alert(msg_com_code_017);
					            		} else {
					            			msgStart(msg_com_code_017, null);
					            		}
			            				jQuery(this).addClass('ui-state-error');
					            		jQuery(this).focus();
					            		jQuery(this).select();
					            		return false;
			            			} else
			            			{
			            				jQuery(this).removeClass('ui-state-error');
			            			}
			            			
		            			} catch(e)
		            			{			            				
		            			}
		            		}
		            		
		            	}
		            	
		            	/*else
		            	{
		            		result = true;
		            		return true;
		            	}*/
	            		
		            	var format = jQuery(this).attr('format');
	            		if(format != 'undefined' && jQuery(this).val() != '')
	            		{	
	            			if(format == 'dateFrmt')
	            			{	
	            				if(!dateFrmt.test(jQuery(this).val()) || !validDate(jQuery(this).val()))
	            				{
	            					jQuery(this).addClass('ui-state-error');
				            		jQuery(this).focus();
				            		jQuery(this).select();
				            		result = false;
				            		if(as_type){
				            			alert(msg_com_code_018+' (required:yyyy-MM-dd)');
				            		} else {
				            			msgStart(msg_com_code_018+' (required:yyyy-MM-dd)', null);
				            		}
				            		
				            		
				            		return false;
				            
	            				} else
	            				{
	            					jQuery(this).removeClass('ui-state-error');
	            				}
	            			} else if(format=='yyyyMMFrmt')
	            			{
	            				if(!yyyyMMFrmt.test(jQuery(this).val()) || !validDate(jQuery(this).val()))
	            				{
	            					jQuery(this).addClass('ui-state-error');
				            		jQuery(this).focus();
				            		jQuery(this).select();
				            		result = false;
				            		if(as_type){
				            			alert(msg_com_code_018+' (required:yyyy-MM)');
				            		} else {
				            			msgStart(msg_com_code_018+' (required:yyyy-MM)', null);
				            		}					            		
				            		return false;
				            
	            				} else
	            				{
	            					jQuery(this).removeClass('ui-state-error');
	            				}
	            			} else if(format == 'timeFrmt')
	            			{
	            				if(!timeFrmt.test(jQuery(this).val()))
	            				{
	            					jQuery(this).addClass('ui-state-error');
				            		jQuery(this).focus();
				            		jQuery(this).select();
				            		result = false;	
				            		
				            		if(as_type){
				            			alert(msg_com_code_018+' (required:hh:mi)');
				            		} else {
				            			msgStart(msg_com_code_018+' (required:hh:mi)', null);
				            		}
				            		
				            		return false;
	            				} else
	            				{
	            					jQuery(this).removeClass('ui-state-error');
	            				}
	            			} else if(format == 'numberFrmt')
	            			{
	            				if(!numberFrmt.test(jQuery(this).val()))
	            				{
	            					jQuery(this).addClass('ui-state-error');
				            		jQuery(this).focus();
				            		jQuery(this).select();
				            		result = false;	
				            		if(as_type){
				            			alert(msg_com_code_018+' (required:number)');
				            		} else {
				            			msgStart(msg_com_code_018+' (required:number)', null);
				            		}
				            		
				            		
				            		return false;
	            				} else
	            				{
	            					jQuery(this).removeClass('ui-state-error');
	            				}
	            			} else if(format == 'emailFrmt')
	            			{
	            				if(!emailFrmt.test(jQuery(this).val()))
	            				{
	            					jQuery(this).addClass('ui-state-error');
				            		jQuery(this).focus();
				            		jQuery(this).select();
				            		if(as_type){
				            			alert(msg_com_code_018+' (required:email)');
				            		} else {
				            			msgStart(msg_com_code_018+' (required:email)', null);
				            		}
				            		result = false;	
				            		return false;
	            				} else
	            				{
	            					jQuery(this).removeClass('ui-state-error');
	            				}
	            			}  else if(format == 'idFrmt')
	            			{
	            				if(!idFrmt.test(jQuery(this).val()))
	            				{
	            					jQuery(this).addClass('ui-state-error');
				            		jQuery(this).focus();
				            		jQuery(this).select();
				            		if(as_type){
				            			alert(user_join_00003);
				            		} else {
				            			msgStart(user_join_00003, null);
				            		}
				            		result = false;	
				            		return false;
	            				} else
	            				{
	            					jQuery(this).removeClass('ui-state-error');
	            				}
	            				
	            			}
	            		}
	            	}
	            	
	            );
	       		return result;
            }
			
		);
		return result;
	
}

function msgStart(text, interval)
{
	
	if( interval == null || interval == 'undefined' )
		interval = parseInt(30)*parseInt(1000);
	
	jQuery('#msg_box_msg').empty();
	jQuery('#msg_box_msg').html(text);
	
	jQuery("#popWindow").css('top', posTop());	
	jQuery("#popWindow").css('left',posLeft());

	var options = {};
	jQuery("#popWindow").show('clip',options,100,msgStop(interval));
	
	//document.getElementById('popWindow').focus();
	
}
var msgStopObj = null;
function msgStop(interval)
{
	msgStopObj = setTimeout(function(){
		var options = {};	
		jQuery("#popWindow").hide('clip',options,100,"");					
		//jQuery("#effect:visible").removeAttr('style').hide().fadeOut();
	}, interval);	
}

function msgStopNow()
{
	jQuery("#popWindow").hide('clip',null,0,"");
	clearTimeout(msgStopObj);
}


function posLeft() {
	return typeof window.pageXOffset != 'undefined' ? window.pageXOffset :document.documentElement && document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ? document.body.scrollLeft : 0;
} 

function posTop() {
	return typeof window.pageYOffset != 'undefined' ?  window.pageYOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ? document.body.scrollTop : 0;
} 

function posRight() {return posLeft()+pageWidth();} 

function posBottom() {return posTop()+pageHeight();}

function removeOptionAll(objID)
{
	var elSel = document.getElementById(objID);
	/*for(var i=0;i<elSel.length;i++)
		elSel.remove(i);*/
	for (var i=elSel.length-1; i>=0; i--)
		elSel.remove(i);
}



Paging_kpop = function(curPage , rowperpage, total, jsFunc) 
{
	this.config = {
		cur_page : curPage,
		//pageVariable: 'page',
		numberFormat: '[%n]',
		showFirstLast: true,	// 맨처음, 맨 마지막으로 가는 링크를 만들것인가.
		thisPageStyle: 'font-weight: bold;',
		itemPerPage: rowperpage,	// 리스트 목록수
		pagePerView: rowperpage,	// 페이지당 네비게이션 항목수
		prevIcon: null,	// 이전페이지 아이콘
		nextIcon: null,	// 다음페이지 아이콘
		firstIcon: null,	// 첫페이지로 아이콘
		lastIcon: null	// 마지막페이지 아이콘
	}

	this.totalItem = total;
	//this.qs = new QueryString;

	this.calculate = function() {
		this.totalPage = Math.ceil(this.totalItem / this.config.itemPerPage);
		//this.currentPage = this.qs.getVar(this.config.pageVariable);
		this.currentPage = this.config.cur_page;
		if (!this.currentPage) this.currentPage = 1;
		if (this.currentPage > this.totalPage) this.currentPage = this.totalPage;
		this.lastPageItems = this.totalPage % this.config.itemPerPage;

		this.prevPage = this.currentPage-1;
		this.nextPage = this.currentPage+1;
		this.seek = this.prevPage * this.config.itemPerPage;
		this.currentScale = parseInt(this.currentPage / this.config.pagePerView);
		if (this.currentPage % this.config.pagePerView < 1) this.currentScale--;
		this.totalScale = parseInt(this.totalPage / this.config.pagePerView);
		this.lastScalePages = this.totalPage % this.config.pagePerView;
		if (this.lastScalePages == 0) this.totalScale--;
		this.prevPage = this.currentScale * this.config.pagePerView;
		this.nextPage = this.prevPage + this.config.pagePerView + 1;
	}

	this.toString = function() {
		var ss, se;
		var firstBtn = '';
		var lastBtn = '';
		var prevBtn = '';
		var nextBtn = '';

		this.calculate();

		if (this.config.showFirstLast) {
			if (this.config.firstIcon) firstBtn = '<img src="'+this.config.firstIcon+'" border="0" style="vertical-align: middle">';
			else firstBtn = '[First]'; //'☜';
			firstBtn = "<a href=\"javascript:"+jsFunc+"(1);\">"+firstBtn+"</a>"; 
			if (this.config.lastIcon) lastBtn = '<img src="'+this.config.lastIcon+'" border="0" style="vertical-align: middle">';
			else lastBtn = '[Last]'; //'☞';
			lastBtn = "<a href=\"javascript:"+jsFunc+"("+this.totalPage+");\">"+lastBtn+"</a>";
		} else {
			firstBtn = lastBtn = '';
		}

		if (this.config.prevIcon) prevBtn ='<img src="'+this.config.prevIcon+'" border="0" style="vertical-align: middle">';
		else prevBtn = '<';
		if (this.currentPage > this.config.pagePerView) {
			prevBtn = "<a href=\"javascript:"+jsFunc+"("+this.prevPage+");\">"+prevBtn+"</a>";
		}

		ss = this.prevPage + 1;
		if ((this.currentScale >= this.totalScale) && (this.lastScalePages != 0)) se = ss + this.lastScalePages;
		else if (this.currentScale <= -1) se = ss;
		else se = ss + this.config.pagePerView;

		var navBtn = '';
		for(var i = ss; i<se; i++) {
			//var pageText = this.config.numberFormat.replace(/%n/g,i);
			var pageText = i;
			if (i == this.currentPage) {
				_btn = '<span style="'+this.config.thisPageStyle+'">'+pageText+'</span>&nbsp;';
			} else {
				_btn = "<a href=\"javascript:"+jsFunc+"("+i+");\">"+pageText+"</a>&nbsp;";
			}
			navBtn+=_btn;
		}

		if (this.config.prevIcon) nextBtn ='<img src="'+this.config.nextIcon+'" border="0" style="vertical-align: middle">';
		else nextBtn = '>';
		if (this.totalPage >= this.nextPage) {
			nextBtn = "<a href=\"javascript:"+jsFunc+"("+this.nextPage+");\">"+nextBtn+"</a>";
		}
		return firstBtn+'&nbsp;'+prevBtn+'&nbsp;'+navBtn+nextBtn+'&nbsp;'+lastBtn;
	}
}
