﻿

String.prototype.trim = function() { return this.replace(/^\s+|\s+$/, ''); }; 

var gbgColor="";
function MouseON(obj,bgColor){
	gbgColor = obj.style.backgroundColor;
	obj.style.backgroundColor=bgColor;
	return;
}
function MouseOFF(obj){
	obj.style.backgroundColor=gbgColor;
	return;
}

function DivOnOff(obj){
	var o = document.getElementById(obj);
	if(o.style.display == "block")
		o.style.display = "none";
	else
		o.style.display = "block";
}

function showlayer(layername){ 
	document.getElementById(layername).style.visibility = "visible";
}
function hidelayer(layername){
	document.getElementById(layername).style.visibility = "hidden";
}

function new_win(){
	open('','preview','toolbar=no,status=no,scrollbars=yes,resizable=yes,height=500,width=610');
}

function ResponseAparts(io,id){
	open('ResponseApart.asp?io='+ io +'&pid=' + id,'rba','toolbar=no,status=yes,scrollbars=yes,resizable=yes,height=400,width=650');
	}
function ResponseAparts2(io,id,ty){
	open('ResponseApart.asp?io='+ io +'&pid=' + id +'&isParts='+ ty,'rba','toolbar=no,status=yes,scrollbars=yes,resizable=yes,height=400,width=650');
	}
function ResponseApartsWqty(io,id,qty){
	open('ResponseApart.asp?io='+ io +'&pid=' + id +'&qty=' + qty,'rba','toolbar=no,status=yes,scrollbars=yes,resizable=yes,height=400,width=650');
	}
function openwin(lnk,thename){
	open(lnk,thename,'toolbar=no,status=no,scrollbars=yes,resizable=yes,height=500,width=610');
	}
	
function gopdf(pn){
	pdfx = window.open("gopdf.asp?parts_no="+ pn,"pdfx","");
	pdfx.focus();
}
var pageCertObj;
function showhelp(_certType,_paramII,lang){
	var html_msg;
	if(document.readyState != "complete")
		return;
	if(_certType == 'RC'){
		if(lang == 'Chi')
			html_msg =  '已提供公司註冊証明';
		else if(lang == 'SimChi')
			html_msg = '已提供公司注册证明';
		else
			html_msg = '<center>Registered<br>Company</center>';
	}
	if(_certType == 'Orig'){
		if(_paramII == 1)
			html_msg = 'All parts is Original';
		else if(_paramII == 2)
			html_msg = 'Original parts must be declared in comments';
	}
	if(_certType == 'ISCC'){
		if(lang == 'Chi')
			html_msg = '現貨庫存';
		else if(lang == 'SimChi')
			html_msg = '现货库存';
		else
			html_msg = 'ISCC';
	}
	if(_certType == 'OISC'){
		if(lang == 'Chi')
			html_msg = '原裝現貨';
		else if(lang == 'SimChi')
			html_msg = '原装现货';
		else
			html_msg = 'OISC';
	}
	if(_certType == 'UsedYears'){
		if(lang == 'Chi')
			html_msg = '會員已使用ic-trade.com超過' + _paramII +'年';
		else if(lang == 'SimChi')
			html_msg = '会员已使用ic-trade.com超过' + _paramII +'年';
		else
			html_msg = 'The member join us ' + _paramII +' years!';
	}
	var evt = window.event || arguments.callee.caller.arguments[0]; // 获取event对象
	var pos = mousePosition(evt);
	if(!pageCertObj){
		pageCertObj=document.createElement("div");
		pageCertObj.style.whiteSpace='nowrap';
		pageCertObj.id="helpObj";
		pageCertObj.className="helpObj";
		pageCertObj.innerHTML=html_msg;
		document.body.appendChild(pageCertObj);
	}
	var myWidth = pageCertObj.clientWidth<1?pageCertObj.Width:pageCertObj.clientWidth;
	pageCertObj.innerHTML=html_msg;
	var scrollTop = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;
	var styleStr="left:"+(((pos.x-myWidth)>0)?(pos.x-myWidth):pos.x)+"px;top:"+(pos.y+scrollTop)+"px;";
	pageCertObj.style.cssText=styleStr;
	if(pageCertObj.style.visibility == "hidden")
				pageCertObj.style.visibility = "visible";
}

function hidehelp(){
	if(pageCertObj){
		pageCertObj.style.visibility = 'hidden';
		pageCertObj.innerHTML = "";
	}
}

function mousePosition2(ev)
{
if(ev.pageX || ev.pageY)
{
  return {x:ev.pageX, y:ev.pageY};
}
return {
x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,y:ev.clientY + document.body.scrollTop - document.body.clientTop
};
}

function mousePosition(ev){
  if(ev.pageX || ev.pageY){
    return {x:ev.pageX, y:ev.pageY};
  }
  return {
    x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
    y:ev.clientY + document.body.scrollTop - document.body.clientTop
  };
 } 

function showhelpDiv(_content,e){
	if(document.readyState != "complete")
		return;
	var evt = window.event || arguments.callee.caller.arguments[0]; // 获取event对象
	//alert(evt.innerHTML);
	var pos = mousePosition(evt);
	
	if(!pageCertObj){
		pageCertObj=document.createElement("div");
		pageCertObj.style.whiteSpace='nowrap';
		pageCertObj.id="helpObj";
		pageCertObj.className="helpObj";
		pageCertObj.innerHTML=_content;
		document.body.appendChild(pageCertObj);
	}
	var myWidth = pageCertObj.clientWidth<1?pageCertObj.Width:pageCertObj.clientWidth;
	pageCertObj.innerHTML=_content;
    var scrollTop = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;
	//alert(scrollTop );
	var styleStr="left:"+(((pos.x-myWidth)>0)?(pos.x-myWidth):pos.x)+"px;top:"+(pos.y+scrollTop)+"px;";

	pageCertObj.style.cssText=styleStr;
	if(pageCertObj.style.visibility == "hidden")
				pageCertObj.style.visibility = "visible";
}

var overDynDivA=false;
var overDynDivB=false;
var currentObj;
function dynamicDiv(obj,html){
	if(document.readyState!="complete")
		return;
	var e=window.event;
	var dDiv = document.getElementById("dynDiv");
	if(dDiv == null){
		dDiv=document.createElement("div");
		dDiv.id="dynDiv";
		dDiv.style.filter="alpha(opacity=90)";
		dDiv.style.backgroundColor="#C2F0FA";
		dDiv.style.visibility="hidden";
		dDiv.style.position="absolute";
		dDiv.style.padding="3px";
		dDiv.style.border = "1px #689AFE solid";
		var htmlbody = document.getElementsByTagName("body").item(0);
		htmlbody.appendChild(dDiv);
	}
	if(dDiv.style.visibility == "hidden" ||currentObj!=obj){
		if(e.pageX || e.pageY){
			posX = e.pageX;
			posY = e.pageY;
		}else{
			posX = e.clientX;
			posY = e.clientY;
		}
		posY += document.body.scrollTop;
      	dDiv.style.visibility = "visible";
		dDiv.style.left = posX - 10;
		dDiv.style.top = posY - 5;
	//	dDiv.style.width= 220;
		dDiv.innerHTML =html;
		currentObj=obj;
	}
	overDynDivA = true;
	dDiv.onmouseover = function(){overDynDivB = true;}
	dDiv.onmouseout = function(){dynamicDivOutB();}
}
function dynamicDivOut(){
	overDynDivA=false;
	setTimeout('dynamicDivClose()',1300);
}

function dynamicDivOutB(){
	overDynDivB=false;
	setTimeout('dynamicDivClose()',1300);
}
function dynamicDivClose(){
	if(!overDynDivA && !overDynDivB){
		var dDiv=document.getElementById("dynDiv");
		if(dDiv){
			dDiv.style.visibility = 'hidden';
			dDiv.innerHTML = "";
		}
	}
}
function logowindow(){
	window.open('/logo_introduction.asp','logointro','toolbar=no,status=no,scrollbars=yes,resizable=yes,height=500,width=310');
}

function isReturnKey(e){
	var key;
	if(window.event)
		key = window.event.keyCode;
	else
		key = e.which;
	if(key == 13){
		return true;
	}else
		return false;
}
function isEmail(email_address){
	var regex = new RegExp("^([\\w\.\-])+\@(([\\w\-])+\.)+([a-zA-Z]{2,4})+$");
	 if(regex.test(email_address.trim()))
		return true;
	else
		return false;
}

function AlphaDigi(str){
	var regex = new RegExp("[a-zA-Z0-9]{6,16}");
	 if(regex.test(str.trim()))
		return true;
	else
		return false;
}


function createXMLObject(){
	var xObj;
	if(window.XMLHttpRequest) {
		try {
			xObj = new XMLHttpRequest();
		} catch(e) {
			xObj = false;
		}
	} else if(window.ActiveXObject) {
		try {
			xObj = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e) {
			try {
				xObj = new ActiveXObject("Microsoft.XMLHTTP");
			} catch(e) {
				xObj = false;
			}
		}
	}
	return xObj;
}
function PostHttpRequest(url,sendDoc,resultFunction){
	var HttpRequest = createXMLObject();
	if(HttpRequest){
		HttpRequest.onreadystatechange = function(){
			if(HttpRequest.readyState==4){if(HttpRequest.status==200){
					eval(resultFunction +'(HttpRequest)');
			}}
		}
		HttpRequest.open("POST",url,true);
		HttpRequest.setRequestHeader("Content-Type","text/xml; charset=utf-8");
		HttpRequest.send(sendDoc);
	}
}
function loadXML(xml){
	var xmldoc;
	try{
	     xmldoc = new ActiveXObject("Microsoft.XMLDOM");
	     xmldoc.async = false;
	     xmldoc.loadXML(xml);
    } catch (error) {
		try{
			var parser = new DOMParser();
			xmldoc = parser.parseFromString(xml, "text/xml");
			delete parser;
		} catch (error2) {
			if (debug)
				alert("XML parsing is not supported.");
        	}
    }
	return xmldoc;
}
function getPosXY(e){
	var XY = new Array(0,0);
	if(e==null) e=window.event;
	if(e.pageX || e.pageY){
		XY[0]=e.pageX;
		XY[1]=e.pageY;
	}else{
		XY[0]=e.clientX;
		XY[1]=e.clientY;
	}
	return XY;
}
function showPanel(e,id,height,width){
	var dyn = document.getElementById(id);
	if(!dyn){
		dyn =document.createElement("div");
		dyn.id=id;
		dyn.style.filter="alpha(opacity=90)";
		dyn.style.backgroundColor="#ffffff";
		dyn.style.position="absolute";
		dyn.style.padding="3px";
		dyn.style.border = "1px #689AFE solid";
		var htmlbody = document.getElementsByTagName("body").item(0);
		htmlbody.appendChild(dyn);
	}
	dyn.style.visibility = "visible";
	dyn.style.width = width;
	dyn.style.height = height;

	var poxy = getPosXY(e)
	dyn.style.left = poxy[0] + 5  ;	
	dyn.style.top = poxy[1] + 2 + document.body.scrollTop;
	return dyn;
}

function getSelectedText(obj){
	if(obj.options.length>0){
		var idx = obj.selectedIndex;
		return obj.options[idx].text;
	}else
		return "";
}
function getSelectedValue(obj){
	if(obj.options.length>0){
		var idx = obj.selectedIndex;
		return obj.options[idx].value;
	}else
		return "";
}

if (!window.ActiveXObject) {
	Element.prototype.selectNodes = function(sXPath) {
		var oEvaluator = new XPathEvaluator();
		var oResult = oEvaluator.evaluate(sXPath, this, null, XPathResult.ORDERED_NODE_ITERATOR_TYPE, null);
		var aNodes = new Array();
		if (oResult != null) {
			var oElement = oResult.iterateNext();
			while(oElement) {
				aNodes.push(oElement);
				oElement = oResult.iterateNext();
			}
		}
		return aNodes;
	}
				
	Element.prototype.selectSingleNode = function(sXPath) {
		var oEvaluator = new XPathEvaluator();
		// FIRST_ORDERED_NODE_TYPE returns the first match to the xpath.
		var oResult = oEvaluator.evaluate(sXPath, this, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
		if (oResult != null) {
			return oResult.singleNodeValue;
		} else {
			return null;
		}              
	}
}
				
if(typeof(HTMLElement) != "undefined" && !window.opera){
	HTMLElement.prototype.__defineGetter__("parentElement",function(){
	if(this.parentNode == this.ownerDocument) return null;
		return this.parentNode;
	})
}

