//dynamic = {};

function dynamic() {}

dynamic.load = function(sUri, sFormat) {
	var xmlHttp = XmlHttp.create();
	xmlHttp.open("GET", sUri, false);
	xmlHttp.send(null);

	try {
		switch (sFormat) {
			case 'xml':
				ret = xmlHttp.responseXML.xml;
				break;
			case 'text': case 'html': default:
				ret = xmlHttp.responseText;
				break;
		}

	} catch (e) {
		ret = _('Error while loading...');
	} finally {
		return ret;
	}
}
dynamic.loadText = function(sUri) {
	return dynamic.load(sUri,'text');
}
dynamic.loadHtml = function(sUri) {
	return dynamic.load(sUri,'html');
}
dynamic.loadXml = function(sUri) {
	return dynamic.load(sUri,'xml');
}


//Create a crossbrowser XMLHTTP Object
// used to find the Automation server name
function getDomDocumentPrefix() {
	if (getDomDocumentPrefix.prefix)
		return getDomDocumentPrefix.prefix;
	
	var prefixes = ["MSXML2", "Microsoft", "MSXML", "MSXML3"];
	var o;
	for (var i = 0; i < prefixes.length; i++) {
		try {
			// try to create the objects
			o = new ActiveXObject(prefixes[i] + ".DomDocument");
			return getDomDocumentPrefix.prefix = prefixes[i];
		}
		catch (ex) {};
	}
	
	throw new Error("Could not find an installed XML parser");
}

function getXmlHttpPrefix() {
	if (getXmlHttpPrefix.prefix)
		return getXmlHttpPrefix.prefix;
	
	var prefixes = ["MSXML2", "Microsoft", "MSXML", "MSXML3"];
	var o;
	for (var i = 0; i < prefixes.length; i++) {
		try {
			// try to create the objects
			o = new ActiveXObject(prefixes[i] + ".XmlHttp");
			return getXmlHttpPrefix.prefix = prefixes[i];
		}
		catch (ex) {};
	}
	
	throw new Error("Could not find an installed XML parser");
}

// XmlHttp factory
function XmlHttp() {}
XmlHttp.create = function () {
	try {
		if (window.XMLHttpRequest) {
			var req = new XMLHttpRequest();
			
			// some versions of Moz do not support the readyState property
			// and the onreadystate event so we patch it!
			if (req.readyState == null) {
				req.readyState = 1;
				req.addEventListener("load", function () {
					req.readyState = 4;
					if (typeof req.onreadystatechange == "function")
						req.onreadystatechange();
				}, false);
			}/**/
			return req;
		}
		if (window.ActiveXObject) {
			return new ActiveXObject(getXmlHttpPrefix() + ".XmlHttp");
		}
	}
	catch (ex) {}
	// fell through
	throw new Error("Your browser does not support XmlHttp objects");
};

// XmlDocument factory
function XmlDocument() {}

XmlDocument.create = function () {
	try {
		// DOM2
		if (document.implementation && document.implementation.createDocument) {
			var doc = document.implementation.createDocument("", "", null);
			
			// some versions of Moz do not support the readyState property
			// and the onreadystate event so we patch it!
			if (doc.readyState == null) {
				doc.readyState = 1;
				doc.addEventListener("load", function () {
					doc.readyState = 4;
					if (typeof doc.onreadystatechange == "function")
						doc.onreadystatechange();
				}, false);
			}
			
			return doc;
		}
		if (window.ActiveXObject)
			return new ActiveXObject(getDomDocumentPrefix() + ".DomDocument");
	}
	catch (ex) {}
	throw new Error("Your browser does not support XmlDocument objects");
};


function cm_get_byte(str) 
{
	//¹®ÀÚ¿­ÀÇ byte ±æÀÌ¸¦ ¾Ë¾Æ³¿(ÇÑ±Û 2byte·Î Ã³¸®) 
	var i,m=str.length, re_count=0,val = 0;; 
	for(i=0;i<m;i++) 
	{ 
		val = escape(str.charAt(i)).length; 
		if(val>3) re_count++; 
		re_count++; 
	}	
	return re_count; 
} 

/*¹®ÀÚ¿­ ÀÚ¸£´Â script*/
function cm_get_byte_length(str,limit_byte)
{ 
	//ÁöÁ¤µÈ ¹ÙÀÌÆ® ±æÀÌ¸¸Å­ÀÇ length¸¦ ¹ÝÈ¯, È¦¼ö·Î Â©¸®¸é -1ÀÇ ±æÀÌ¹ÝÈ¯ 
	var i,m=str.length, re_count=0,val = 0;; 
	var len_count = 0;
	var big_leter = 0;
	for(i=0; re_count<limit_byte ;i++) 
	{
		val = escape(str.charAt(i)).length; 
		len_count++; 
		if(val>3){ re_count++; }
		if(str.charCodeAt(i)<90 && str.charCodeAt(i)>65 && big_leter==0)
		{
			//´ë¹®ÀÚ°¡ ÇÑ±ÛÀÚ¶óµµÀÖÀ»°æ¿ì
			re_count++;
			big_leter++;
		}
		re_count++; 
	} 
	if(re_count%2 == 1)
	{
		var return_str = str.slice(0,len_count-1);
	}
	else
	{
		var return_str = str.slice(0,len_count);
	}
	return return_str;
} 

/*071212 Á¶°Ç°Ë»ö ½ºÅ©¸³Æ® ¼öÁ¤*/

var Search_Box=["wrap"];
var file_dir = "";	//xml file path
var chk_opt_name = "";	//select spec id
var open_chk = "";	//click search condition area status
var spec_opt_area = ""; //create spec area
var paren_Node = "";
var chk_spec = Array();
var option = "";

/*start make spec list*/
function opton_view_ctr(chk_opt_name_tmp,open_chk_tmp)
{
	//º¯¼ö¼¼ÆÃ
	chk_opt_name = chk_opt_name_tmp;
	open_chk = open_chk_tmp;

	var form= document.forms['variable'];
	chg(form,"open_chk_"+chk_opt_name,open_chk);	//¸ðµÎº¸±â Å¬¸¯ º¯¼ö ¼¼ÆÃ
	var status = "_close";
	hide_status = "_open";
	var view_css = "select_type2";
	if(open_chk == "Y")
	{
		status = "_open";
		hide_status = "_close";
		view_css = "option_area";
	}


	spec_opt_area = getObject(chk_opt_name+status);	//get element from document
	if(spec_opt_area)	//element exist
	{
		if( open_chk == "Y")
		{
			if(spec_opt_area.getElementsByTagName("input").length > 24)
			{
			spec_opt_area.className = view_css;
			}
			else
			{
				spec_opt_area.className = "select_type1";
			}
		}
		else
		{
			spec_opt_area.className = view_css;
		}
		spec_area_ctr(getObject(chk_opt_name+hide_status));
	}
	else	//element not exist
	{
		chk_opt_name_tmp = chk_opt_name.split("ck");
		file_name = "/main/pd/get_xml.php?filename=/"+file_dir+"_"+chk_opt_name_tmp[1]; // get file_name
		Read_Xml_File();
	}
}


function Read_Xml_File()
{
	//¼­¹ö¿¡µ¥ÀÌÅÍ ¿äÃ»º¸³»±â
	if(window.XMLHttpRequest)
	{
		req = new XMLHttpRequest(); //¸ðÁú¶ó /»çÆÄ¸®
		try 
		{
			req.onreadystatechange = function(){ Make_spec_area();};
			req.open("GET", file_name, true);
			req.send(null);
		}
		catch (e) 
		{
			alert(e);
		}
	}
	else if( typeof ActiveXObject )
	{
		req=new ActiveXObject("Microsoft.XMLHTTP"); //ÀÎÅÍÅÝ ÀÍ½ºÇÃ·¯·¯
		if( req )	//ÆÄÀÏ¿­°í ÀÐ±â
		{
			req.onreadystatechange = function(){ Make_spec_area();};
			req.open("GET", file_name, true);
			req.send();
		}
	}
}

function Make_spec_area()
{
	if( req.readyState==4 )
	{
		//alert(req.responseText);

		var GetXml = req.responseXML;
		var condtion = GetXml.getElementsByTagName("options");

		//±âº»ÀÌÀÖ´ÂÁö ¾ø´Â Áö Ã¼Å©
		var is_basis = GetXml.getElementsByTagName("isbasis");
		if(is_basis.length)
		{
			var basis_is = is_basis[0].firstChild.nodeValue;
		}

		if( condtion.length>0 )
		{
			option = GetXml.getElementsByTagName("option");
			var total = option.length;
			
			var New_Node_tmp = document.createElement("ul");
			var status = "_open";
			if(open_chk == "Y")	//¸ðµÎº¸±âÀÏ°æ¿ì div »ý¼º
			{
				status = "_close";
				New_Node_tmp.className = "select_type1";
				if( total > 24 )
				{
					var New_Node = document.createElement("div");
					New_Node.className = "option_area";
					New_Node.id = chk_opt_name+"_open";
					New_Node.appendChild(New_Node_tmp);
				}
				else
				{
					New_Node_tmp.id = chk_opt_name+"_open";
				}
			}
			else
			{
				New_Node_tmp.className = "select_type2";
				New_Node_tmp.id = chk_opt_name+"_close";
			}
			parent_Node = getObject(chk_opt_name+status).parentNode;	//paren_Node add element


			if(open_chk != "Y" && total > 11)
			{
				total = 10;
			}

			for(var i=0; i<total; i++)
			{
				var opt_name = GetXml.getElementsByTagName("name");
				var opt_value = GetXml.getElementsByTagName("value");
				var opt_status = GetXml.getElementsByTagName("status");
				if( ( ( chk_opt_name == "ckcomp" || chk_opt_name == "ckbnd" ) && brand_use == 0 ) )
				{
					chk_value = opt_name[i].firstChild.nodeValue;
				}
				else
				{
					chk_value = opt_value[i].firstChild.nodeValue;
				}

				var Add_Node = document.createElement("li"); //create li
				if( opt_status[i].firstChild.nodeValue == "I" )	//ÁÖ¿ä Á¶°Ç 
				{
					Add_Node.className = "blue";
				}

				var Add_input = document.createElement("input");
				Add_input.type = "checkbox";
				Add_input.name = chk_opt_name;
				//ie¿¡¼­ check ÇØÁÙ ¶§ ±âÁ¸ÀÇ document id¶û ±¸ºÐÀ» ¸øÇÏ±â ‹š¹®¿¡ ÀÌ¸§À» ´Þ¸® ÇØÁØ´Ù
				Add_input.id = chk_opt_name+"_"+chk_value+"_scpt";	
				Add_input.value = chk_value;
				Add_input.onclick = function(){
				chk_key(this);
				}
				
	 			/*//Ã¼Å©µÈ Á¶°Ç ¹è¿­·Î ÀúÀå
				/*var chk_spec_tmp = getObject(chk_opt_name+hide_status).getElementsByTagName("input");
				for(var j=0; j<chk_spec_tmp.length; j++)
				{
					if(chk_spec_tmp[j].checked == true)
					{
						chk_spec[chk_spec_tmp[j].value] = 1;
					}
				} //¾Æ·¡²¨ ¾²·Á¸é À§¿¡ ÀÌ ·ÎÁ÷ÀÌ ÇÊ¿äÇÏ´Ù »ý¼ºµÉ¶§ for¹®µ¹·ÁÁØ´Ù

				if(chk_spec[chk_value]) //IE¿¡¼­ ½ÇÇà ¾ÈµÇ±â ¶§¹®¿¡ ÁÖ¼®Ã³¸® IE update µÇ¸é Ç®ÀÚ..-_-;;
				{
					Add_input.checked = "checked";
				}*/
				var Add_label = document.createElement("label");
				Add_label.htmlFor = chk_opt_name+"_"+chk_value+"_scpt";
				Add_label.style.cursor = "pointer";
				var opt_name_txt = opt_name[i].firstChild.nodeValue;	//±ÛÀÚ¼ö ÀÚ¸£±â
				Add_label.value = opt_name_txt;
				if(open_chk == "Y")
				{
					if(cm_get_byte(opt_name_txt) > 12)
					{
						var name_tmp = "";
						name_tmp = opt_name[i].firstChild.nodeValue;
						Add_label.onmouseover = function(){
						write_detail(this.value);
						}
						Add_label.onmouseout = function(){
						hide();
						}
						opt_name_txt = cm_get_byte_length(opt_name_txt,12)+"..";
					}
				}
				var Add_txt = document.createTextNode(opt_name_txt);
				Add_label.appendChild(Add_txt);

				if(basis_is == "Y" && open_chk == "N")
				{
					if(opt_status[i].firstChild.nodeValue== "B")
					{
						Add_Node.appendChild(Add_input);
						Add_Node.appendChild(Add_label);
						New_Node_tmp.appendChild(Add_Node);
					}
				}
				else
				{
					Add_Node.appendChild(Add_input);
					Add_Node.appendChild(Add_label);
					New_Node_tmp.appendChild(Add_Node);
				}
			}
			if(open_chk == "Y" && total > 24 )	//¸ðµÎº¸±âÀÏ°æ¿ì div »ý¼º
			{
				parent_Node.appendChild(New_Node);
			}
			else
			{
				parent_Node.appendChild(New_Node_tmp);
				if(open_chk == "N" )
				{
					New_Node_tmp.style.height = 20;
					New_Node_tmp.style.width = 660;
				}
			}
			spec_area_ctr(getObject(chk_opt_name+status));
			//find checkbox checked and same value checkbox checked
			var chk_spec_tmp = getObject(chk_opt_name+status).getElementsByTagName("input");
			for(var j=0; j<chk_spec_tmp.length; j++)
			{
				if(chk_spec_tmp[j].checked == true)
				{
					if(getObject(chk_opt_name+"_"+chk_spec_tmp[j].value+"_scpt"))
					{
						getObject(chk_opt_name+"_"+chk_spec_tmp[j].value+"_scpt").checked = true;
					}
				}
			}
		}
	}
}


function spec_area_ctr(Node)
{
	Node.className = "view_none";
	
	var btn_area = getObject("btn_"+chk_opt_name);
	/*btn parent delete*/
	pr_Node = btn_area.parentNode;
	pr_Node.removeChild(btn_area);

	/*btn parent make*/
	btn_area = document.createElement("div");
	btn_area.id = "btn_"+chk_opt_name;

	/*btn delete*/
	var a_link = btn_area.getElementsByTagName("a");
	for(var j=0; j<a_link.length; j++)
	{
		btn_area.removeChild(a_link[j]);
	}
	/*btn make*/
	var new_btn = document.createElement("a");
	if(open_chk == "Y")	//¸ðµÎº¸±âÀÏ°æ¿ì div »ý¼º
	{
		status = "_open";
		new_btn.className = "one_view";
		new_btn.href = "javascript:opton_view_ctr('"+chk_opt_name+"','N');";
		btn_txt = document.createTextNode("ÇÑÁÙº¸±â");
		css_name = "one_viewoption";

	}
	else
	{	
		status = "_close";
		new_btn.className = "all_view";
		new_btn.href = "javascript:opton_view_ctr('"+chk_opt_name+"','Y');";
		btn_txt = document.createTextNode("¸ðµÎº¸±â("+option.length+")");
		css_name = "all_viewoption";
	}

	btn_area.className = css_name;
	new_btn.appendChild(btn_txt);
	btn_area.appendChild(new_btn);
	pr_Node.appendChild(btn_area);
}
/*end make spec list*/


/*satart various view control 071205*/
function Search_tab_ctr(btn_obj)
{
	var tab_btn = getObject("category_tab").getElementsByTagName("a");

	document.cookie = "msearch"+"="+"N"+"; path=/; domain=.bb.co.kr";
	var multi_info = "view_none";
	for(var i=0; i<tab_btn.length; i++)
	{
		if(tab_btn[i].id)
		{
			tab_btn[i].className = "off";
			if(tab_btn[i].id == "btn_"+btn_obj)
			{
				tab_btn[i].className = "on";
				if(btn_obj == 2)
				{
					document.cookie = "msearch"+"="+"Y"+"; path=/; domain=.bb.co.kr";
					multi_info = "";
				}
				if(btn_obj == 3)
				{
					if(getObject("phone_info")){getObject("phone_info").style.display = "block";}
					getObject("condition_box").style.display = "none";
				}
				else
				{
					if(getObject("phone_info")){getObject("phone_info").style.display = "none";}
					getObject("condition_box").style.display = "block";
				}
			}
		}
	}
	getObject("multi_2").className = multi_info;
}
/*¸ðµÎº¸±â ¹öÆ° control*/
function open_btn_view()
{
	var tag_tmp = getObject(Search_Box[0]).getElementsByTagName("ul");
	for(var i=0; i<tag_tmp.length; i++)
	{
		if(tag_tmp[i].id == "ckpr_close")
		{
			continue;
		}
		var btn_name =  tag_tmp[i].id.split("_"); //¹öÆ° ÀÌ¸§‹š¹®¿¡ ÇÊ¿äÇÏ´Ù
		if(tag_tmp[i].className == "select_type2")
		{
			//±âÅ¸Á¶°ÇÀÏ °æ¿ì view_none À¸·Î ÇÏ¸é height ±æÀÌ°¡ 0À¸·Î ³ª¿Â´Ù class ¹Ù²å´Ù°¡ height Àç°í ´Ù½Ã view_none
			if( tag_tmp[i].parentNode.parentNode.id && tag_tmp[i].parentNode.parentNode.className == "view_none" )
			{
				tag_tmp[i].parentNode.parentNode.className = "";
				ElE_height = getHeight(tag_tmp[i]);
				tag_tmp[i].parentNode.parentNode.className = "view_none";
			}
			//ÀÏ¹Ý ³ª¸ÓÁö
			else
			{
				ElE_height = getHeight(tag_tmp[i]);
			}
			if(ElE_height>20 || getObject("btn_"+btn_name[0]).name)	//getObject("btn_"+btn_name[0]).name basic setting condition exist
			{
				if(getObject("btn_"+btn_name[0]))
				{
					tag_tmp[i].style.height = 20;
					tag_tmp[i].style.width = 660;
					getObject("btn_"+btn_name[0]).className = "all_viewoption";
				}
			}
		}
	}	
}

var class1 = "";
var class2 = "";
/*°¡°Ý´ë view control*/
function Ctr_price_search(mode)
{
	if(mode == 1) //Á÷Á¢ÀÔ·Âº¸±â
	{
		class1 = "";
		class2 = "view_none";
	}
	else //°¡°Ý´ë¼±ÅÃº¸±â
	{
		class1 = "view_none";
		class2 = "";
	}
	getObject("ckpr_pr_input").className = class1;
	getObject("ckpr_pr_sel").className = class2;
}


/*±âÅ¸Á¶°Ç view control*/
function etc_search_ctr(spec,mode)
{
	//±âÅ¸Á¶°Ç ÆíÃÄº¸±â ¿©ºÎ ÆÇ´ÜÅ¬¸¯ ¿©ºÎ º¯¼ö ¼¼ÆÃ ¹× update
	var form= document.forms['variable'];	
	var etc_open_status = getObject(spec+"_click");

	if(!etc_open_status)
	{
		chg(form,spec+"_click",mode);
	}
	etc_open_status.value = mode; 

	//element view control
	if(mode == 1) //Á÷Á¢ÀÔ·Âº¸±â
	{
		class1 = "";
		class2 = "view_none";
	}
	else //°¡°Ý´ë¼±ÅÃº¸±â
	{
		class1 = "view_none";
		class2 = "first";
	}
	getObject(spec+"_sel_open").className = class1;
	getObject(spec+"_sel_close").className = class2;

	var title = getObject('etc_search_area').getElementsByTagName("a"); //±âÅ¸Á¶°Ç area ¸ðµÎ Å¬¸¯µÇ¾úÀ» °æ¿ì display none ÇØÁØ´Ù
	for(var i=0; i<title.length; i++)
	{
		if(title[i].className == "view_none")
		{
			getObject('etc_search_area').className = "view_none";
		}
		else
		{
			getObject('etc_search_area').className = "";
			break;
		}
	}
}
/*end various view control 071212*/