var IMAGE_SERVER_URL 						        = "http://image.gmarket.co.jp/"
var NEO_IMAGE_SERVER_URL 					    = "http://image.gmarket.co.jp/challenge_jp/"

var GOODS_IMAGE_SERVER_URL 				    = "http://goodsimg.gmarket.co.kr/"
var NEO_GOODS_IMAGE_SERVER_URL			    = "http://goodsimg.gmarket.co.kr/challenge/"

var IMAGE_SERVER_SSL_URL					        = "https://sslimage.gmarket.co.jp/"
var NEO_IMAGE_SERVER_SSL_URL				    = "https://sslimage.gmarket.co.jp/challenge_jp/"

var GOODSDAQ_URL							        = "http://www.gmarket.co.jp/"
var NEO_GOODSDAQ_URL						        = "http://www.gmarket.co.jp/challenge/"
var IMAGE_URL								            = "http://www.gmarket.co.jp/image/"
var GOODS_IMAGE_URL						        = "http://www.gmarket.co.jp/goods_image/"
var IMAGES_URL							            = "http://www.gmarket.co.jp/goods/image/"
var NEO_MEMBER_URL						            = "http://www.gmarket.co.jp/challenge/neo_member/"
var NEO_GEN_URL							            = "http://gen.gmarket.co.jp/challenge/"

var GOODSDAQ_SSL_URL						        = "https://www.gmarket.co.jp/"
var NEO_GOODSDAQ_SSL_URL					    = "https://www.gmarket.co.jp/challenge/"

var IMAGE_SSL_URL							        = "http://www.gmarket.co.jp/image/"
var NEO_MEMBER_SSL_URL					        = "http://www.gmarket.co.jp/challenge/neo_member/"

var url = 'http://www.gmarket.co.jp/'

function isSpace(inChar)
{
	return (inChar == ' ' || inChar == '\t' || inChar == '\n');
}

// trim 関数
function trim(tmpStr)
{
	var atChar;
	if (tmpStr.length > 0)
	atChar = tmpStr.charAt(0);
	while (isSpace(atChar))
	{
		tmpStr = tmpStr.substring(1, tmpStr.length);
		atChar = tmpStr.charAt(0);
	}
	if (tmpStr.length > 0)
		atChar = tmpStr.charAt(tmpStr.length-1);
	while (isSpace(atChar))
	{
		tmpStr = tmpStr.substring(0,( tmpStr.length-1));
		atChar = tmpStr.charAt(tmpStr.length-1);
	}
	return tmpStr;
}

function MM_findObj(n, d)
{ //v3.0
	var p,i,x;

	if(!d)
		d=document;

	if((p=n.indexOf("?"))>0&&parent.frames.length)
	{
		d=parent.frames[n.substring(p+1)].document;
		n=n.substring(0,p);
	}

	if(!(x=d[n])&&d.all)
		x=d.all[n];

	for (i=0;!x&&i<d.forms.length;i++)
	{
		x=d.forms[i][n];
	}

	for (i=0;!x&&d.layers&&i<d.layers.length;i++)
	{
		x=MM_findObj(n,d.layers[i].document);
		return x;
	}
}

function MM_swapImage()
{ //v3.0
	var i,j=0,x,a=MM_swapImage.arguments;
	document.MM_sr=new Array;

	for(i=0;i<(a.length-2);i+=3)
	{
		if ((x=MM_findObj(a[i]))!=null)
		{
			document.MM_sr[j++]=x;
			if(!x.oSrc)
			{
				x.oSrc=x.src;
				x.src=a[i+2];
			}
		}
	}
}

function MM_swapImgRestore()
{ //v3.0
	var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function cardInfo(master_card)
{
	window.open('/trading/write_card.asp?master_card='+master_card, '', 'width=500, height=220, nostatus, notoolbar');
	return false;
}

function show(name)
{
	var id = document.all[name]
	id.style.display = "none" == id.style.display ? "" : "none";
}

function fncDocShow(name)
{
	var id = document.all[name]
	id.style.display = "";
}

function fncDocHidden(name)
{
	var id = document.all[name]
	id.style.display = "none"
}

function js_next_focus(obj,sLength,sNext)
{
	if (obj.value.length == sLength)
	{
		document.getElementsByName(sNext)[0].focus()
	}
}

function fncNumWithComma(x)
{
	var i,ii,y
	y=""
	x=String(x)

	for (i=x.length-1;i >= 0 ;i--)
	{
		ii=x.length-1-i
		flag=(ii+1) % 3

		if ((flag == 0) && ( ii != x.length-1 ))
			y=","+x.charAt(i)+y
		else
			y=x.charAt(i)+y
	}
	return y
}

function choose_one(sSel,sValue)
{
	for(i=0;i < sSel.length;i++)
	{
		if (sSel.options[i].value == sValue)
		{
			sSel.selectedIndex=i
			return true
		}
		else
		{
			sSel.selectedIndex=0
		}
	}
}

function isempty(obj,isNumber,sMsg,obj_type)
{
	if (typeof(obj_type) == "undefined")
	{
		obj_type = "TEXT"
	}

	if (obj_type.toUpperCase() == "RADIO")
	{
		var isChecked = false;

		for (i = 0; i < obj.length; i++)
		{
			if (obj[i].checked)
			{
				isChecked = true;
				return false;
			}
		}

		if (!isChecked)
		{
			window.alert(sMsg+" 選択しなければならないです.")
			obj[0].focus();
			return true;
		}
	}
	else
	{
		if (obj.value == "")
		{
			window.alert(sMsg+" 入力してください.")
			obj.focus()
			obj.select()
			return true
		}
		if (isNumber)
		{
			if (isNaN(Number(obj.value)))
			{
				window.alert("数字だけ可能です.")
				obj.focus()
				obj.select()
				return true
			}
		}
		else
		{
			return false
		}
	}
}

function fncSetRadio(sElementName, sValue)
{
	var target = document.getElementsByName(sElementName)

	if (target == null)
		return
	else
	{
		for (i=0; i< target.length; i++)
		{
			if (target[i].value.toUpperCase() == sValue.toUpperCase())
			{
				target[i].checked = true;
			}
		}
	}
}

function fncMakeNumber(sInput)
{
	var i=0

	for (i=0;isNaN(sInput) && (i <= 10);i++)
	{
		sInput=sInput.replace(",","")
	}

	if (isNaN(sInput))
	{
		window.alert("コンマ(,) を除いた文字を入れないでください.")
		return false
	}
	else
	{
		return Number(sInput)
	}
}

function SetCookie(sName, sValue)
{
	document.cookie = sName + "=" + escape(sValue) + ";"
}

function GetCookie(sName)
{
	var aCookie = document.cookie.split("; ");

	for (var i=0; i < aCookie.length; i++)
	{
		var aCrumb = aCookie[i].split("=");
		if (sName == aCrumb[0])
		return unescape(aCrumb[1]);
	}

	return null;
}

function isValidEmail(sInput)
{
	if (sInput.indexOf(" ") >=0)
	{
		window.alert("空白を含むことはできないです.")
		return false;
	}

	var email = /\w@\w.\w/

	if (email.test(sInput))
		return true
	else
		return false
}

function showFreeInterestCardLayer(no)
{
	eval("FreeInterestCardLayer_" + no + ".style.display = 'inline';");
}

function hiddenFreeInterestCardLayer(no)
{
	eval("FreeInterestCardLayer_" + no + ".style.display= 'none';");
}

function hasTagSymbol(str) {
	var re = /<|>/g;
	return (re.test(str));
}

function hasInvalidShopName(str) {
	var re = /(Gマーケット|ジマケッ|ズィマケッ|G-mall|G_mall|知謀を|パワーディーラー|優秀ディーラー)/gi;
	return (re.test(str));
}

function getStringByteLength(pStr)
{
    var c;
    var nLength = 0;
    var sStr = new String(pStr);

    for(i=0; i < sStr.length; i++)
    {
        c = sStr.charAt(i);
        if(escape(c).length > 4 )
            nLength += 2;
        else
            nLength++;
    }
    return nLength;
}

//Filtering in firefox
function FilterFinal( Ev, pattern ){
	var evCode = (window.netscape) ? Ev.which : event.keyCode ;
	if(evCode != 8){
		var sKey = String.fromCharCode(evCode);

		if(pattern){
			var re = new RegExp(pattern);

			if(!re.test(sKey)) {
				if (window.netscape) {
					Ev.preventDefault();
				} else {
					event.returnValue=false;
				}
			}
		}
	}
}

function cutStringByteLength(pStr, iLength)
{
	if (iLength == 0) return ("");

	var c;
    var nLength = 0;
    var sStr = new String(pStr);
	var sResultStr = "";

    for(i=0; i < sStr.length; i++)
    {
        c = sStr.charAt(i);
        if(escape(c).length > 4 )
		{
			if (nLength + 2 > iLength)
				return sResultStr;
			else
				nLength += 2;
		}
        else
		{
			if (nLength + 1 > iLength)
				return sResultStr;
			else
	            nLength++;
		}
		sResultStr += c;
    }
    return sResultStr;
}

// 文字列チェック関数
// ハングル, アルファベット, 数字, 空白, 許容しようと思う特殊文字の組合で使用可能.
function hasInvalidSymbol(text, symbol, allowKorean, allowAlpha, allowNum, allowSpace) {
	if (text == "")
		return false;

	var expression = "/[^";
	expression += (allowKorean) ? "-" : "";
	expression += (allowAlpha) ? "a-zA-Z" : "";
	expression += (allowNum) ? "0-9" : "";
	expression += (allowSpace) ? " " : "";
	if (symbol != "") {
		symbol = symbol.replace(/(.)/g, "\\$1");
		expression += symbol;
	}
	expression += "]/";

	var re = eval(expression);
	return (re.test(text));
}

function goSimplePage(sGoodsCode)
{
    var clientHeight;
    var obj;

    if(navigator.appVersion.indexOf("Windows NT 5.1")!=-1) {
        clientHeight = 395;
    }else {
        clientHeight = 395;
    }

	obj=window.open("/challenge/neo_simple_goods/simple_goods_frame.asp?goodscode=" + sGoodsCode , "SimpleGoodsPage", "width=755, height="+clientHeight+", scrollbars=no, toolbar=no , status=no");
	obj.focus();
}

function goEtcSimplePage(sGoodsCode, sSid, sInterGrpNo)
{
    var clientHeight;
    var obj;

    if(navigator.appVersion.indexOf("Windows NT 5.1")!=-1) {
        clientHeight = 395;
    }else {
        clientHeight = 395;
    }

	obj=window.open(url+"challenge/neo_simple_goods/simple_goods_frame.asp?goodscode=" + sGoodsCode + "&sid=" + sSid + "&interest_group_no=" + sInterGrpNo, "SimpleGoodsPage", "width=755, height="+clientHeight+", scrollbars=no, toolbar=no , status=no");
	obj.focus();
}

onerror = errorHandler;

function errorHandler( pMsg, pURL, pLines )
{
	var request;

	if( window.XMLHttpRequest)
	{
		request = new XMLHttpRequest();
	}else if( window.ActiveXObject){
		request = new ActiveXObject("Microsotft.XMLHTTP");

		if( !request){
			request = new ActiveXObject("Msxml2.XMLHTTP");
		}
	}

	if( request )
	{
		request.open("get", "/challenge/script_error.asp?msg=" + pMsg + "&url=" + pURL + "&lines="+pLines, true);
		request.send( null );
	}
}

function fncImgSSLUrl(){
    var sUrl = window.location.href;
    if (sUrl.indexOf("https://") > -1){
        return NEO_IMAGE_SERVER_SSL_URL;
    }else{
        return NEO_IMAGE_SERVER_URL;
    }
}

function fncSSLUrl(){
    var sUrl = window.location.href;
    if (sUrl.indexOf("https://") > -1){
        return NEO_GOODSDAQ_SSL_URL;
    }else{
        return NEO_GOODSDAQ_URL;
    }
}

function fncChkMenuSearch()
{
	if (document.menusearchform.keyword.value == ""){
		window.alert("検索語を入力してください。");
		document.menusearchform.keyword.focus();
		return false;
	}
	document.menusearchform.action =  NEO_GOODSDAQ_URL + "neo_search/search_total.asp"

}

function fncChkMenuSearchBtn()
{
	if (document.menusearchform.keyword.value == ""){
		window.alert("検索語を入力してください。");
		document.menusearchform.keyword.focus();
		return;
	}else{
        document.menusearchform.action =  NEO_GOODSDAQ_URL + "neo_search/search_total.asp"
        document.menusearchform.submit();
    }
}