// JavaScript Document  

var ObjHttp,StrLoc;
var returnValue;
var isIE;
isIE = false;
function gb2utf8(data){   
	var glbEncode = [];   
	gb2utf8_data = data;   
	execScript("gb2utf8_data = MidB(gb2utf8_data, 1)", "VBScript");  
	var t=escape(gb2utf8_data).replace(/%u/g,"").replace(/(.{2})(.{2})/g,"%$2%$1").replace(/%([A-Z].)%(.{2})/g,"@$1$2");   
	t=t.split("@");   
	var i=0,j=t.length,k;  
 	while(++i<j) {   
    k=t[i].substring(0,4);   
   if(!glbEncode[k]) {   
       gb2utf8_char = eval("0x"+k);  
       execScript("gb2utf8_char = Chr(gb2utf8_char)", "VBScript"); 
       glbEncode[k]=escape(gb2utf8_char).substring(1,6);  
   }  
   t[i]=glbEncode[k]+t[i].substring(4);  
	}  
	gb2utf8_data = gb2utf8_char = null;  
 return unescape(t.join("%"));  
}

function getClassList()
{
	var key=document.getElementById("selProductClass").value;

	StrLoc = "/getClassList.asp?rnd="+new Date().getTime()+"&value="+key;
	    // branch for IE/Windows ActiveX version
    if (navigator.userAgent.indexOf("MSIE")>0) {
		isIE = true;
        ObjHttp = new ActiveXObject("Microsoft.XMLHTTP");
        if (ObjHttp) {
            ObjHttp.onreadystatechange = processReqChange;
            ObjHttp.open("GET", StrLoc, false);
            ObjHttp.send();
        }
    }
	else if (window.XMLHttpRequest) {
        ObjHttp = new XMLHttpRequest();
        ObjHttp.onreadystatechange = processReqChange;
		if (ObjHttp) {
        ObjHttp.open("GET", StrLoc, true);
        ObjHttp.send(null);
		}
    }
}
	
// handle onreadystatechange event of ObjHttp object
function processReqChange() {
    // only if req shows "loaded"
    if (ObjHttp.readyState == 4) {
        // only if "OK"
        if (ObjHttp.status == 200) {
			clearTopicList();
            buildClassList();
         } else {
            alert("There was a problem retrieving the XML data:\n" +
                ObjHttp.statusText);
         }
    }
}

function buildClassList()
{
	var elem = document.getElementById("ClassID");
	if (isIE) {
		returnValue = gb2utf8(ObjHttp.responseBody);
	}
	else
	{
		returnValue = ObjHttp.responseText;
		}
	if (returnValue=='')
	{
 	elem.add(new Option("N/A", "0"));  
	}
	else
	{
		if(isIE)
		{
		elem.add(new Option("--Brand--","0"));
		}
		else
		{
		elem.appendChild(new Option("--Brand--","0"));
		}
	if(returnValue.indexOf("|")!=-1)
	{
	 var arrTmp,arrTemp;
	arrTmp = returnValue.split("|");
	for(var i = 0; i < arrTmp.length; i++){
	arrTemp = arrTmp[i].split(",");
		if(isIE)
		{
				
		elem.add(new Option(arrTemp[1], arrTemp[0]));
		}
		else
		{
		elem.appendChild(new Option(arrTemp[1], arrTemp[0]));
		}
	}
	}
	else
	{
	var arrTemp;
	arrTemp = returnValue.split(",");
		if(isIE)
		{
		elem.add(new Option(arrTemp[1], arrTemp[0]));
		}
		else
		{
		elem.appendChild(new Option(arrTemp[1], arrTemp[0]));
		}
	}
	}
}


// empty selClassList select list content
function clearTopicList() {
    var select = document.getElementById("ClassID");
    while (select.length > 0) {
        select.remove(0);
    }
}

function check()
{
var keyword = document.frmSearch.Keyword.value;
var ProductClass = document.frmSearch.selProductClass.value
var ClassID = document.frmSearch.ClassID.value
	if(ProductClass == "")
	{
			document.frmSearch.selProductClass.focus();
			return false;
		}
	else
	{
				if(keyword=="")
				{
					document.frmSearch.Keyword.focus();
					alert("Please Enter Keyword!");
					return false;
				}
	}
	return true;
}

function getProductList()
{
	var ProductClass=document.getElementById("selProductClass").value;
	var ClassID = document.getElementById("ClassID").value;
	var FieldType = document.getElementById("Field").value;
	
	if(ProductClass == "")
	{
		document.getElementById("selProductClass").focus();
		return false;
	}
	if(ClassID == "")
	{
		document.getElementById("ClassID").focus;
		return false;
	}
	if(FieldType == "")
	{
		document.getElementById("Field").focus;
		return false;
	}
	StrLoc = "/getProductList.asp?rnd="+new Date().getTime()+"&ProductClass="+ProductClass+"&ClassID="+ClassID+"&FieldType="+FieldType;
	    // branch for IE/Windows ActiveX version
    if (navigator.userAgent.indexOf("MSIE")>0) {
		isIE = true;
        ObjHttp = new ActiveXObject("Microsoft.XMLHTTP");
        if (ObjHttp) {
            ObjHttp.onreadystatechange = processReqChangeProduct;
            ObjHttp.open("GET", StrLoc, false);
            ObjHttp.send();
        }
    }
	else if (window.XMLHttpRequest) {
        ObjHttp = new XMLHttpRequest();
        ObjHttp.onreadystatechange = processReqChangeProduct;
		if (ObjHttp) {
        ObjHttp.open("GET", StrLoc, true);
        ObjHttp.send(null);
		}
    }
}

	
// handle onreadystatechange event of ObjHttp object
function processReqChangeProduct() {
    // only if req shows "loaded"
    if (ObjHttp.readyState == 4) {
        // only if "OK"
        if (ObjHttp.status == 200) {
			clearProductList();
            buildProductList();
         } else {
            alert("There was a problem retrieving the XML data:\n" +
                ObjHttp.statusText);
         }
    }
}

// empty ProductList select list content
function clearProductList() {
    var select = document.getElementById("ProductList");
    while (select.length > 0) {
        select.remove(0);
    }
}


function buildProductList()
{
	var elem = document.getElementById("ProductList");
	if (isIE) {
		returnValue = gb2utf8(ObjHttp.responseBody);
	}
	else
	{
		returnValue = ObjHttp.responseText;
		}
	if (returnValue=='')
	{
 	elem.add(new Option("N/A", "0"));  
	}
	else
	{
		if(isIE)
		{
		elem.add(new Option("--Product List--","0"));
		}
		else
		{
		elem.appendChild(new Option("--Product List--","0"));
		}
	if(returnValue.indexOf("|")!=-1)
	{
	 var arrTmp,arrTemp;
	arrTmp = returnValue.split("|");
	for(var i = 0; i < arrTmp.length; i++){
	arrTemp = arrTmp[i].split(",");
	if(arrTemp[1] != "" && arrTemp[0] != "")
	{
		if(isIE)
		{		
		elem.add(new Option(arrTemp[1], arrTemp[0]));
		}
		else
		{
		elem.appendChild(new Option(arrTemp[1], arrTemp[0]));
		}
	}
	}
	}
	else
	{
	var arrTemp;
	arrTemp = returnValue.split(",");
	if(arrTemp[1] != "" && arrTemp[0] != "")
	{
		if(isIE)
		{
		elem.add(new Option(arrTemp[1], arrTemp[0]));
		}
		else
		{
		elem.appendChild(new Option(arrTemp[1], arrTemp[0]));
		}
	}
	}
	}
}