

String.prototype.trim = function() {

	return this.replace(/^\s*(\b.*\b|)\s*$/, "$1");
}

// ÇÑ±ÛÀÚ¸£±â
String.prototype.cut = function(len) {
	var str = this;
	var l = 0;
	for (var i=0; i<str.length; i++) {
			l += (str.charCodeAt(i) > 128) ? 2 : 1;
			if (l > len) return str.substring(0,i) + "...";
	}
	return str;
}

function getCookie( cookieName ){
	var search = cookieName + "=";
	var cookie = document.cookie;

	// ÇöÀç ÄíÅ°°¡ Á¸ÀçÇÒ °æ¿ì
	if( cookie.length > 0 ){

		// ÇØ´ç ÄíÅ°¸íÀÌ Á¸ÀçÇÏ´ÂÁö °Ë»öÇÑ ÈÄ Á¸ÀçÇÏ¸é À§Ä¡¸¦ ¸®ÅÏ.
		startIndex = cookie.indexOf( cookieName );

		// ¸¸¾à Á¸ÀçÇÑ´Ù¸é
		if( startIndex != -1 ){

			// °ªÀ» ¾ò¾î³»±â À§ÇØ ½ÃÀÛ ÀÎµ¦½º Á¶Àý
			startIndex += cookieName.length;

			// °ªÀ» ¾ò¾î³»±â À§ÇØ Á¾·á ÀÎµ¦½º ÃßÃâ
			endIndex = cookie.indexOf( ";", startIndex );

			// ¸¸¾à Á¾·á ÀÎµ¦½º¸¦ ¸øÃ£°Ô µÇ¸é ÄíÅ° ÀüÃ¼±æÀÌ·Î ¼³Á¤
			if( endIndex == -1) endIndex = cookie.length;

			// ÄíÅ°°ªÀ» ÃßÃâÇÏ¿© ¸®ÅÏ
			return unescape( cookie.substring( startIndex + 1, endIndex ) );

		} else {
		  return '';
		}

	} else {
	  return '';
	}
}

function email_check(val) {

	if ( val.length == 0 ){
		return false
	}

	if( val ) {
		re = new RegExp( "^[A-Za-z0-9_-]+@[a-z0-9-]+\.[a-z0-9\.-]+" );
		result = val.match( re );
		if( result == null ) {
			return false;
		}
	}

	return true;
}


//·Î±×ÀÎ ÆË¾÷
function pop_login()
{
	open_win('/common/pop_login.php?' + item_no, 400, 300, 'no', 'login');
}

// ajax request Àü¼Û½Ã encode
function encode_string(str)
{
	return encodeURIComponent(str);
}

//ÆäÀÌÂ¡Ã³¸® ½ºÅ¸ÀÏ1
function getPageLink1(lnum,block,p,total)
{
	//alert("lnum:"+lnum+"block:"+block+"p:"+p+"total:"+total);
	var tpage = Math.ceil(total/lnum);


	var g_p1 = "<span class=\"arw\">¢¸</span>ÀÌÀü</a>&nbsp;";
	var g_p2 = "<span class=\"arw\">¢¸</span>ÀÌÀü</a>&nbsp;";
	var g_n1 = "&nbsp;´ÙÀ½ <span class=\"arw\">¢º</span>";
	var g_n2 = "&nbsp;´ÙÀ½ <span class=\"arw\">¢º</span>";

	var g_cn = "&nbsp;&nbsp;<img src=\"/images/nav_line.gif\" border=\"0\" width=\"1\" height=\"14\" align=\"absmiddle\">&nbsp;&nbsp;";
	var g_q  = "<table width=\"95%\" cellpadding=\"0\" cellspacing=\"16\" border=\"0\">"
			 + "<tr><td height=\"1\" bgcolor=\"F2F2F2\"></td></tr>"
			 + "<tr><td align=\"center\">";

	var cur_block = Math.floor((p-1)/block);
	var st1 = (cur_block)*block + 1;

	var st2 = st1 + (block-1);

	if (st2 >= tpage)
		st2 = tpage;

	if(p <= block)
		g_q += g_p1;	//ÀÌÀü ¸µÅ© ¾øÀ½
	else
		g_q += "<A HREF='javascript:getPageGo1("+ parseInt(st1-1)+");'>"+g_p2+"</A>";

	g_q += g_cn;

	for(var jn = st1; jn <= st2; jn++)
	{
		if ( jn <= tpage)
			(jn == p)? g_q += "<b class=orange>"+jn+"</b>"+g_cn : g_q += "<A HREF='javascript:getPageGo1("+jn+");'>"+jn+"</A>"+g_cn;
	}


	if (st2 == tpage)
		g_q += g_n1;
	else
		g_q += "<A HREF='javascript:getPageGo1("+parseInt(st2+1)+");'>"+g_n2+"</A>";

	g_q += "</td></tr></table>";

	return g_q;
}

//ÆäÀÌÂ¡Ã³¸® ½ºÅ¸ÀÏ2
function getPageLink2(lnum,p,total)
{
	//alert("lnum:"+lnum+"block:"+block+"p:"+p+"total:"+total);
	var tpage = Math.ceil(total/lnum);

	var g_p1 = "<img src=\"/images/btn_pre.gif\" border=0>";
	var g_p2 = "<img src=\"/images/btn_pre.gif\" border=0>";
	var g_n1 = "<img src=\"/images/btn_next.gif\" border=0>";
	var g_n2 = "<img src=\"/images/btn_next.gif\" border=0>";

	var g_q  = "";

	//<a href=\"\"><img src=\"/images/btn_pre.gif\" border=0></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href=\"#\"><img src=\"/images/btn_next.gif\" border=0></a>


	if(p <= 1)
		g_q += g_p1;	//ÀÌÀü ¸µÅ© ¾øÀ½
	else
		g_q += "<A HREF='javascript:getPageGo1("+ (parseInt(p)-1)+");'>"+g_p2+"</A>";

	g_q += "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";

	if(p >= tpage)
		g_q += g_n1;	//´ÙÀ½ ¸µÅ© ¾øÀ½
	else
		g_q += "<A HREF='javascript:getPageGo1("+ (parseInt(p)+1)+");'>"+g_n2+"</A>";

	return g_q;
}

//ÆäÀÌÂ¡, ÆäÀÌÁö ¹øÈ£ Å¬¸¯½Ã È£Ãâ
function getPageGo2(n)
{
	var p   = getUriString1('p');
	var que = location.href.replace('&p='+p,'');
		que = que.indexOf('?') != -1 ? que : que + '?';

	location.href= que + '&p=' + n;
}

// ÇöÀçÆäÀÌÁö Parameter
function getUriString1(param)
{
	var QuerySplit = location.href.split('?');
	var ResultQuer = QuerySplit[1] ? QuerySplit[1].split('&') : '';

	for (var i = 0; i < ResultQuer.length; i++)
	{
		var keyval = ResultQuer[i].split('=');
		if (param == keyval[0]) return keyval[1];
	}
	return "";
}

// div ¼û±è
function div_hidden(div)
{
	div.style.display	   = 'none';
	div.style.visibility   = 'hidden';
}

// divº¸¿©ÁÜ
function div_visible(div)
{
	div.style.display	   = '';
	div.style.visibility   = 'visible';
}

//div¿¡ ¿¡·¯¸Þ½ÃÁö Ãâ·Â
function div_error(div)
{
	div.innerHTML = "µ¥ÀÌÅÍ Àü¼Û¿¡ ½ÇÆÐÇÏ¿´½À´Ï´Ù.";
}

//µ¥ÀÌÅÍ ·Îµù½Ã, div ·Îµù¸Þ¼¼Áö Ãâ·Â
function div_init(div)
{
	div.innerHTML = "::::::::::: µ¥ÀÌÅÍ¸¦ Àü¼Û¹Þ°í ÀÖ½À´Ï´Ù :::::::::::";
}

//null°ª °ø¹é¹®ÀÚ·Î Ä¡È¯
function null2space(obj)
{
	try
	{
		if (typeof(obj) == "undefined" || obj == null || obj == 'undefined')
		return '';
	}
	catch (e)
	{
		return '';
	}

	return obj;
}

//¾ÆÀÌÇÁ·¹ÀÓ »çÀÌÁî Á¶Á¤ (ÇÁ·¹ÀÓ¸í)
function iframeResize(na)
{
	eval("var PF = "+na+".document.body");
	var CF = document.all[na];
	CF.style.height = PF.scrollHeight + (PF.offsetHeight - PF.clientHeight);
	CF.style.width = PF.scrollWidth + (PF.offsetWidth - PF.clientWidth);
	//CF.style.width = '100%';
	//alert(CF.style.height);
}

//ÀÌ¹ÌÁö Å©°Ôº¸±â
function view_img(src)
{
	window.open(src, 'img', 'width=500, height=500, scrollbars=yes');
}

//¸®½ºÆ®ÆûÀÇ Ã¼Å©¹Ú½º checked °³Ã¼ ¼ö ¸®ÅÏ
function check_select(frm)
{
	var chk = 0;
	sum = 0;
	for (var i =0; i < frm.elements.length ; i++) {
		if (frm.elements[i].type == 'checkbox') {
			if (frm.elements[i].checked == true) {
				sum += parseInt(frm.elements[i].value);
				chk++;
			}
		}
	}
	return chk;
}

//¸®½ºÆ®ÆûÀÇ Ã¼Å©¹Ú½º checked ½ÃÅ´
function check_all(frm, flag)
{
	var chk = 0;
	sum = 0;
	for (var i =0; i < frm.elements.length ; i++) {
		if (frm.elements[i].type == 'checkbox') {
			frm.elements[i].checked = flag;
		}
	}
}

//¶óµð¿À ¹öÆ°, Ã¼Å©µÇ¾ú´ÂÁö °Ë»ç
function check_radio(obj)
{
	sum = 0;
	for (var i = 0; i < obj.length; i++) {
		if (obj[i].checked == true) {
			sum += parseInt( obj[i].value );
			return true;
		}
	}
	return false;
}

//ÆË¾÷Ã¢ ¿­±â
function open_win(url, width, height, scroll, name)
{
	if ( !scroll )
		scroll = auto;

	if ( !width )
		width = "500";

	if ( !height )
		height="500";

	window.open(url, name, 'width='+width+', height=' + height +', scrollbars=' + scroll);
}

//ÇØ´ç div¿¡ request ·Î ¹ÞÀº html ÆäÀÌÁö¸¦ Ãâ·ÂÇÔ
//(requestURL, div¸í, Parameter, Method)
function ajaxCreateDiv(requestURL, elementID, Params, Method)
{
	new Ajax.Request(requestURL+"?"+Math.random(),{
		method:Method,
		parameters: Params,
		onSuccess: function(request){
		//	alert(request.responseText);
			document.getElementById(elementID).innerHTML = request.responseText;
		}
	});
}

//ÇØ´ç div¿¡ request ·Î ¹ÞÀº html ÆäÀÌÁö¸¦ Ãâ·ÂÇÔ, ÆäÀÌÂ¡ Ãß°¡
//(requestURL, div¸í, Parameter, Method)

function ajaxCreatePagingListDiv(requestURL, elementID, Params, Method)
{
	new Ajax.Request(requestURL+"?"+Math.random(),{
		method:Method,
		parameters: Params,
		onSuccess: function(request){

			var xml = request.responseXML;
			var parser = new xmlParser();
			var item = parser.getNode(xml, "item");
			var	total			 = parser.getNodeValue(parser.getNode(item, "total"));
			var	page			 = parser.getNodeValue(parser.getNode(item, "page"));
			var	page_list_count  = parser.getNodeValue(parser.getNode(item, "page_list_count"));
			var	page_block_count = parser.getNodeValue(parser.getNode(item, "page_block_count"));
			var	content		     = parser.getNodeValue(parser.getNode(item, "content"));
			var 	first_no  = parser.getNodeValue(parser.getNode(item, "first_get_no"));
			document.getElementById(elementID).innerHTML = content;

			// ÆäÀÌÂ¡ Ãâ·Â
			document.getElementById('divPaging').innerHTML = getPageLink1(page_list_count, page_block_count, page, total);

			if(first_no && first_no > 0){
				//alert(first_no);
				get_chart(first_no);

			}
			/**/
		}
	});
}

//È¸¿ø Áñ°ÜÃ£±â
function add_favor(user_no)
{
	if (user_no == '' || user_no=='0')
	{
		alert('¼±ÅÃµÈ È¸¿øÀÌ ¾ø½À´Ï´Ù');
		return;
	}

	var url = '/chart/add_favor.php';

	new Ajax.Request(url, {
		method: 'get',
		parameters : 'no=' + user_no,
		onSuccess: function(transport) {
			var result = transport.responseText;
			if (result == 'success')
			{
				alert('Áñ°ÜÃ£±â¿¡ Ãß°¡µÇ¾ú½À´Ï´Ù');
			}
			else if (result == 'exists')
			{
				alert('ÀÌ¹Ì Ãß°¡ÇÏ½Å È¸¿øÀÔ´Ï´Ù.');
			}
			else if (result == 'nologin')
			{
				alert('·Î±×ÀÎÀÌ ÇÊ¿äÇÑ ¸Þ´ºÀÔ´Ï´Ù.');
			}
			else if (result == 'failure')
			{
				alert('Áñ°ÜÃ£±â¿¡ ½ÇÆÐÇÏ¿´½À´Ï´Ù.');
			}
		}
	});
}

function pop_chart(chart_no)
{
	open_win('/chart/pop_chart.php?no=' + chart_no, 500, 400, 'yes', 'chart');
}

function pop_blog(chart_no)
{
	open_win('/chart/pop_chart.php?no=' + chart_no, 370, 500, 'yes', 'chart');
}

function pop_blog_tribe(tribe_no)
{
	open_win('/test/pop_tribe_info.php?tribe_no=' + tribe_no, 500, 400, 'yes', 'item');
}




function iframe_auto_resize( iframd_id, margin_height )
{
	var obj = parent.document.all[ iframd_id == null ? 'subframe' : iframd_id ];

	if( typeof(obj) == 'undefined' )
		return;
		
	obj.parentElement.width = document.body.scrollWidth;
	obj.parentElement.height = document.body.scrollHeight + (margin_height == null ? 20 : margin_height);

}

// »ç¿ëÀÚ Á¤º¸ º¸±â
function user_info_popup(uno)
{
	open_win('/chart/my_user_popup.php?uno=' + uno, 530, 600, 'yes', 'user_info');
}

function popup_auto_resize()
{

	var width = Math.min( document.body.scrollWidth + 10, screen.availWidth * 0.95 );
	var height = Math.min( document.body.scrollHeight + 70, screen.availHeight * 0.95 );

	if( height == screen.availHeight * 0.95 ){ //- ½ºÅ©·Ñ¹Ù°¡ »ý±â¸é
		document.body.scroll = 'auto';
	}

	window.moveTo( (screen.availWidth - width) / 2, (screen.availHeight - height) / 2 );
	window.resizeTo( width, height );
	document.body.style.textAlign = 'center';
}



