var cateListAdd = new Array();
var cateListCateCode = new Array(4);
var cateListTid ;
function CateList(stage, cateNum, eName, auto) 
{
	cateListAdd[0] = stage;
	cateListAdd[1] = cateNum;
	cateListAdd[2] = auto;
	try {this.eNameArry = eName.split(',');}catch(e){}
	cateListAdd[3]	= this.eNameArry;
	cateListAdd[5]	= true;
	CateListSend();
}

function CateList2(stage, cateNum, eName, auto, titleFlag) 
{
	cateListAdd[0] = stage;
	cateListAdd[1] = cateNum;
	cateListAdd[2] = auto;
	this.eNameArry = eName.split(',');	
	cateListAdd[3]	= this.eNameArry;
	cateListAdd[5]	= titleFlag;
	CateListSend();
}

function CateListSend()
{
	if(cateListAdd[0] == null || cateListAdd[0] == "" || cateListAdd[0] == "null") cateListAdd[0] = CateListGetStage(null);
	new ajax.xhr.Request("/common/inc/cate_list.php", "stage="+cateListAdd[0]+"&catenum="+cateListAdd[1], CateListSetXml, 'POST');		
}

function CateListGetXMLList() 
{	
	return cateListAdd[4];
}

function CateListSetXml(xmlDoc) 
{	
	cateListAdd[4] = xmlDoc;		
	
	if (cateListAdd[2] == true) 
	{			
		switch(cateListAdd[0])
		{
			case "L":	this.eNum = 0;	break;	
			case "M":	this.eNum = 1;	break;
			case "S":	this.eNum = 2;	break;	
			case "SS":	this.eNum = 3; 	break;	
		}					
		CateListSetList(this.eNum);
	}
}

function CateListGetStage(stage)
{
	switch(stage)
	{
		case "L":	return "M"; break;	
		case "M":	return "S"; break;
		case "S":	return "SS"; break;		
		default : return "L"; break;
	}
}

function CateListSetList(enameNum)
{
	if(enameNum == null || enameNum == "" || enameNum == "null") enameNum = 0;
	
	var code = getNodeValue( cateListAdd[4].getElementsByTagName( 'code' ) );
	
	if (code == 'success') 
	{	
		var loaddata = eval( "(" + getNodeValue( cateListAdd[4].getElementsByTagName ( 'data' ) ) + ")" );			
		
		for(var i = enameNum; i < cateListAdd[3].length; i++)
		{			
			if(cateListAdd[5] == false)
				SelectBoxChildNodesDel(cateListAdd[3][i]);
			else
				SelectBoxChildNodesDel2(cateListAdd[3][i]);
		}
		var obj = $('selectCate');
		try {
			obj.value="";
		}catch(e){}
		
		for(var i = 0; i < cateListCateCode.length; i++)
		{	
			try {
				if (cateListCateCode[i] != null && cateListCateCode[i] != "" && cateListCateCode[i] != "null" && cateListCateCode[i] != "undefined") 
				{
					if(obj.value != null && obj.value != "") obj.value += " > ";
					obj.value += cateListCateCode[i][3];
				}
			}catch (e){}					
		}
		
		
		CateListMakeSelectBox(cateListAdd[3][enameNum], loaddata);
	}
	else
	{
		alert(cateListAdd[0]+" 카테고리 리스트를 생성할수 없습니다.");
	}		
}

function CateListMakeSelectBox(elementId, loaddata)
{
	var obj = $(elementId);
	
	if (obj == null)	return;
	
	SelectBoxChildNodesDel(elementId);
	
	obj.setAttribute("onchange", "CateListChange(this.value)");
	obj.onchange = function() {
		CateListChange(this.value);
	};
	
	var startCnt = 0;
	if(cateListAdd[5] == false)	startCnt = 1;
	for(var i = startCnt; i < loaddata.length; i++)
	{		
		var option = document.createElement("option");
		var text = document.createTextNode(loaddata[i].catename);		
		
		option.appendChild(text);
		option.setAttribute("value",cateListAdd[0]+","+loaddata[i].num+","+loaddata[i].catecode+","+loaddata[i].catename);				
		obj.appendChild(option);				
	}	
}



function CateListChange(cateVar)
{		
	this.tempArr = cateVar.split(',');
	CateListSetCateCode(tempArr[0],tempArr);
	cateListAdd[0] = CateListGetStage(tempArr[0]);
	cateListAdd[1] = tempArr[1];
	CateListSend();
}

function CateSetValue(cateVar)
{		
	this.tempArr = cateVar.split(',');
	CateListSetCateCode(tempArr[0],tempArr);
	cateListAdd[0] = CateListGetStage(tempArr[0]);
	cateListAdd[1] = tempArr[1];	
}

function CateListSetCateCode(stage, code)
{
	switch(stage)
	{
		case "L":	cateListCateCode[0] = code; cateListCateCode[1] = "";	cateListCateCode[2] = "";	cateListCateCode[3] = "";	break;	
		case "M":	cateListCateCode[1] = code; cateListCateCode[2] = "";	cateListCateCode[3] = "";	break;
		case "S":	cateListCateCode[2] = code; cateListCateCode[3] = "";	break;	
		case "SS":	cateListCateCode[3] = code; break;	
	}
}

function CateListGetCateCode()
{
	var returnValue = "";
	for(var i = 0; i < cateListCateCode.length; i++)
	{
		if(cateListCateCode[i] != null && cateListCateCode[i] != "" && cateListCateCode[i] != "null" && cateListCateCode[i] != "undefined")
			returnValue += cateListCateCode[i][2].toString();
	}
	var returnValueLength = returnValue.length;

	if(returnValueLength < 12 && returnValueLength > 0 )
	{
		for(var i = 0; i < 12-returnValueLength; i++)
		{			
			returnValue += "0";
		}
	}
	
	return returnValue;
}

function CateListGetCateCode2()
{	
	var returnValue = "";
	for(var i = 0; i < cateListCateCode.length; i++)
	{
		if(cateListCateCode[i] != null && cateListCateCode[i] != "" && cateListCateCode[i] != "null" && cateListCateCode[i] != "undefined")
			returnValue += cateListCateCode[i][2].toString();
	}	
	
	return returnValue;
}

