

// start: zxml.js

var zXml={useActiveX:(typeof ActiveXObject!="undefined"),useDom:document.implementation&&document.implementation.createDocument,useXmlHttp:(typeof XMLHttpRequest!="undefined")};zXml.ARR_XMLHTTP_VERS=["MSXML2.XmlHttp.5.0","MSXML2.XmlHttp.4.0","MSXML2.XmlHttp.3.0","MSXML2.XmlHttp","Microsoft.XmlHttp"];zXml.ARR_DOM_VERS=["MSXML2.DOMDocument.5.0","MSXML2.DOMDocument.4.0","MSXML2.DOMDocument.3.0","MSXML2.DOMDocument","Microsoft.XmlDom"];;function zXmlHttp(){}zXmlHttp.createRequest=function(){if(zXml.useXmlHttp){return new XMLHttpRequest();}else if(zXml.useActiveX){if(!zXml.XMLHTTP_VER){for(var i=0;i<zXml.ARR_XMLHTTP_VERS.length;i++){try{new ActiveXObject(zXml.ARR_XMLHTTP_VERS[i]);zXml.XMLHTTP_VER=zXml.ARR_XMLHTTP_VERS[i];break;}catch(oError){;}}}if(zXml.XMLHTTP_VER){return new ActiveXObject(zXml.XMLHTTP_VER);}else{throw new Error("Could not create XML HTTP Request.");}}else{throw new Error("Your browser doesn't support an XML HTTP Request.");}};zXmlHttp.isSupported=function(){return zXml.useXmlHttp||zXml.useActiveX;};function zXmlDom(){}zXmlDom.createDocument=function(){if(zXml.useDom){var oXmlDom=document.implementation.createDocument("","",null);oXmlDom.parseError={valueOf:function(){return this.errorCode;},toString:function(){return this.errorCode.toString()}};oXmlDom.__initError__();oXmlDom.addEventListener("load",function(){this.__checkForErrors__();this.__changeReadyState__(4);},false);return oXmlDom;;}else if(zXml.useActiveX){if(!zXml.DOM_VER){for(var i=0;i<zXml.ARR_DOM_VERS.length;i++){try{new ActiveXObject(zXml.ARR_DOM_VERS[i]);zXml.DOM_VER=zXml.ARR_DOM_VERS[i];break;}catch(oError){;}}}if(zXml.DOM_VER){return new ActiveXObject(zXml.DOM_VER);}else{throw new Error("Could not create XML DOM document.");}}else{throw new Error("Your browser doesn't support an XML DOM document.");}};zXmlDom.isSupported=function(){return zXml.useDom||zXml.useActiveX;};var oMozDocument=null;if(typeof XMLDocument!="undefined"){oMozDocument=XMLDocument;}else if(typeof Document!="undefined"){oMozDocument=Document;}if(oMozDocument&&!window.opera){oMozDocument.prototype.readyState=0;oMozDocument.prototype.onreadystatechange=null;oMozDocument.prototype.__changeReadyState__=function(iReadyState){this.readyState=iReadyState;if(typeof this.onreadystatechange=="function"){this.onreadystatechange();}};oMozDocument.prototype.__initError__=function(){this.parseError.errorCode=0;this.parseError.filepos=-1;this.parseError.line=-1;this.parseError.linepos=-1;this.parseError.reason=null;this.parseError.srcText=null;this.parseError.url=null;};oMozDocument.prototype.__checkForErrors__=function(){if(this.documentElement.tagName=="parsererror"){var reError=/>([\s\S]*?)Location:([\s\S]*?)Line Number(\d+),Column(\d+):<sourcetext>([\s\S]*?)(?:\-*\^)/;reError.test(this.xml);this.parseError.errorCode=-999999;this.parseError.reason=RegExp.$1;this.parseError.url=RegExp.$2;this.parseError.line=parseInt(RegExp.$3);this.parseError.linepos=parseInt(RegExp.$4);this.parseError.srcText=RegExp.$5;}};oMozDocument.prototype.loadXML=function(sXml){this.__initError__();this.__changeReadyState__(1);var oParser=new DOMParser();var oXmlDom=oParser.parseFromString(sXml,"text/xml");while(this.firstChild){this.removeChild(this.firstChild);}for(var i=0;i<oXmlDom.childNodes.length;i++){var oNewNode=this.importNode(oXmlDom.childNodes[i],true);this.appendChild(oNewNode);}this.__checkForErrors__();this.__changeReadyState__(4);};oMozDocument.prototype.__load__=oMozDocument.prototype.load;oMozDocument.prototype.load=function(sURL){this.__initError__();this.__changeReadyState__(1);this.__load__(sURL);};Node.prototype.__defineGetter__("xml",function(){var oSerializer=new XMLSerializer();return oSerializer.serializeToString(this,"text/xml");});Node.prototype.__defineGetter__("text",function(){var sText="";for(var i=0;i<this.childNodes.length;i++){if(this.childNodes[i].hasChildNodes()){sText+=this.childNodes[i].text;}else{sText+=this.childNodes[i].nodeValue;}}return sText;});}function zXslt(){}zXslt.transformToText=function(oXml,oXslt){if(typeof XSLTProcessor!="undefined"){var oProcessor=new XSLTProcessor();oProcessor.importStylesheet(oXslt);var oResultDom=oProcessor.transformToDocument(oXml);var sResult=oResultDom.xml;if(sResult.indexOf("<transformiix:result")>-1){sResult=sResult.substring(sResult.indexOf(">")+1,sResult.lastIndexOf("<"));}return sResult;;}else if(zXml.useActiveX){return oXml.transformNode(oXslt);}else{throw new Error("No XSLT engine found.");}};function zXPath(){}zXPath.selectNodes=function(oRefNode,sXPath,sXmlNs){if(typeof XPathEvaluator!="undefined"){oXmlNs=oXmlNs||{};var nsResolver=function(sPrefix){return oXmlNs[sPrefix];};var oEvaluator=new XPathEvaluator();var oResult=oEvaluator.evaluate(sXPath,oRefNode,nsResolver,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;}else if(zXml.useActiveX){if(oXmlNs){var sXmlNs="";for(var sProp in oXmlNs){sXmlNs+="xmlns:"+sProp+"="+oXmlNs[sProp]+" ";}oRefNode.ownerDocument.setProperty("SelectionNamespaces",sXmlNs);};return oRefNode.selectNodes(sXPath);}else{throw new Error("No XPath engine found.");}};zXPath.selectSingleNode=function(oRefNode,sXPath,oXmlNs){if(typeof XPathEvaluator!="undefined"){;oXmlNs=oXmlNs||{};var nsResolver=function(sPrefix){return oXmlNs[sPrefix];};var oEvaluator=new XPathEvaluator();var oResult=oEvaluator.evaluate(sXPath,oRefNode,nsResolver,XPathResult.FIRST_ORDERED_NODE_TYPE,null);if(oResult!=null){return oResult.singleNodeValue;}else{return null;};}else if(zXML.useActiveX){if(oXmlNs){var sXmlNs="";for(var sProp in oXmlNs){sXmlNs+="xmlns:"+sProp+"="+oXmlNs[sProp]+" ";}oRefNode.ownerDocument.setProperty("SelectionNamespaces",sXmlNs);};return oRefNode.selectSingleNode(sXPath);}else{throw new Error("No XPath engine found.");}};function zXMLSerializer(){}zXMLSerializer.prototype.serializeToString=function(oNode){var sXml="";switch(oNode.nodeType){case 1:sXml="<"+oNode.tagName;for(var i=0;i<oNode.attributes.length;i++){sXml+=" "+oNode.attributes[i].name+"=\""+oNode.attributes[i].value+"\"";}sXml+=">";for(var i=0;i<oNode.childNodes.length;i++){sXml+=this.serializeToString(oNode.childNodes[i]);}sXml+="</"+oNode.tagName+">";break;case 3:sXml=oNode.nodeValue;break;case 4:sXml="<![CDATA["+oNode.nodeValue+"]]>";break;case 7:sXml="<?"+oNode.nodevalue+"?>";break;case 8:sXml="<!--"+oNode.nodevalue+"-->";break;case 9:for(var i=0;i<oNode.childNodes.length;i++){sXml+=this.serializeToString(oNode.childNodes[i]);}break;};return sXml;};

// end: zxml.js

var timedate = new Date();
timestamp = timedate.getMonth()+ timedate.getDate() + timedate.getYear() + timedate.getHours() + timedate.getMinutes() + timedate.getSeconds();



function sendRequest(formname, iconname) 
{	/*
	var fnamecopy = formname;
	var divicon = fnamecopy.split("-");
	if (divicon[1] != '') 
		document.getElementById(divicon[1]).innerHTML = '<div style="text-align: center; padding: 20px;"><img src="images/icons/loading.gif" width="16" height="16" alt="" border="0"> &nbsp;&nbsp; </div>';     
	*/
	
	//document.getElementById('action_msg').innerHTML = '<div style="text-align: center; "><img src="images/lightbox-ico-loading.gif" width="16" height="16" alt="" border="0"> &nbsp;&nbsp; </div>';     
	document.getElementById(iconname).innerHTML = '<div style="text-align: center; "><img src="images/lightbox-ico-loading.gif" width="16" height="16" alt="" border="0"> &nbsp;&nbsp; </div>';     
	
	var oForm = document.forms[formname];
    var sBody = getRequestBody(oForm);
   	
    var oXmlHttp = zXmlHttp.createRequest();
    oXmlHttp.open("post", oForm.action, true);
    oXmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	
	//document.getElementById('action_msg').innerHTML = '<div style="text-align: center; padding: 20px;"><img src="images/icons/loading.gif" width="16" height="16" alt="" border="0"> &nbsp;&nbsp; </div>';  
	
    oXmlHttp.onreadystatechange = function () 
	{	
		if (oXmlHttp.readyState == 4) // 4 -> all data has been received and the connection has been closed.
		{	if (oXmlHttp.status == 200) // 200 -> request was completely successful
			{	var aData = oXmlHttp.responseText.split("||");
				showResult(aData[0], aData[1]);
				//document.getElementById("loginmsg").innerHTML = oXmlHttp.responseText;     
				//alert(oForm.action);
				
            } 
			else 
			{	//saveResult("An error occurred: " + oXmlHttp.statusText);
				alert("An error occurred: " + oForm.action);
            }
        }            
    };
	
	
	
	//oXmlHttp.onreadystatechange = function(e){dropdowncontent.show(thisid, subobj, e)}
	
    oXmlHttp.send(sBody);  
	
	//document.getElementById("msgstack").innerHTML = sBody;     
}



function getRequestBody(oForm) 
{	var aParams = new Array();
            
    for (var i=0 ; i < oForm.elements.length; i++) 
	{	
		if (oForm.elements[i].getAttribute('type') == 'radio')
		{	//if (oForm.radios[i].checked) 
			if (oForm.elements[i].checked) 
			{	var sParam = encodeURIComponent(oForm.elements[i].name);
        		sParam += "=";
				sParam += encodeURIComponent(oForm.elements[i].value);
			}
		}
		else
		{	var sParam = encodeURIComponent(oForm.elements[i].name);
       		sParam += "=";
			sParam += encodeURIComponent(oForm.elements[i].value);
		}
		
        aParams.push(sParam);
    } 
    
	/*
	if (oForm.radios.length > 0)
	{	for (var j=0 ; j < oForm.radios.length; j++) 
		{	var sParam = encodeURIComponent(oForm.elements[j].name);
	        sParam += "=";
			
			if (oForm.radios[j].checked) 
			{
				sParam += encodeURIComponent(oForm.elements[j].value);
	        	aParams.push(sParam);
			}
		}
	}
	*/
	
	
    return aParams.join("&");        
}


var oXmlHttp = null;
var iInterval = 1000;
var iLastCommentId = -1;
var divNotification = null;


function showResult(msgType, sMessage) 
{	
	if (msgType == "warn")
	{ 	
		var erMsg = sMessage.split("~");
		//alert(erMsg[1]);
		document.getElementById(erMsg[0]).innerHTML = erMsg[1];     
		
	}
	else if (msgType == "gotopage")
	{	var erMsg = sMessage.split("~");
		document.location.href = erMsg[0];
		//alert(erMsg[0]);
	}
	else if (msgType == "status")
	{	var erMsg = sMessage.split("~");
		document.getElementById(erMsg[0]).innerHTML = erMsg[1];  
	}
	else if (msgType == "shipping_total")
	{	var erMsg = sMessage.split("~");
		
		var checkout_subtotal = document.getElementById('checkout_total_cost_1').innerHTML;
		//var str = checkout_subtotal.replace(/[\NT$]/g, "");
		//checkout_subtotal = str;
		var str = checkout_subtotal.match(/\d+/g);
		checkout_subtotal = str[0];
		var checkout_shipping = erMsg[0];
		
		document.getElementById('checkout_total_cost_2').innerHTML = 'NT$ ' +( parseInt(checkout_shipping) );  
		document.getElementById('checkout_total_cost_4').innerHTML = 'NT$ ' +(parseInt(checkout_subtotal) + parseInt(checkout_shipping) );  
	}
	else if (msgType == "addcart")
	{	var erMsg = sMessage.split("~");
		document.getElementById(erMsg[0]).innerHTML = erMsg[1];  
		
		//alert(erMsg[0]);
	}
	else if (msgType == "vvc")
	{	var erMsg = sMessage.split("~");
		//document.getElementById(erMsg[0]).innerHTML = erMsg[1];  
		//document.getElementById('vvc_image').src = 'http://localhost/begonia/projects/04.fruit/vvc_display.php?vvc=ahfSnn';  
		document.getElementById('vvc_image_span').innerHTML = erMsg[1];  
		//document.getElementById('vvc_image_span').innerHTML = '<img  src="http://localhost/begonia/projects/04.fruit/vvc_display.php?vvc='+erMsg[1]+'" />';  
		//alert(erMsg[0]);
	}
	
}
//////////////////////////////////
function autoload_header_cart(thisid, subobj, functionname)
{	dropdowncontent.show(thisid, subobj, functionname);
}
////////////////////////////////////////



function get_ajax_result(pageName, actionName, divicon)
{	
	if (divicon != '')
		//document.getElementById(divicon).innerHTML = '<div style="text-align: center; padding: 0px;"><img src="images/lightbox-ico-loading.gif" width="20" height="20" alt="" border="0"> &nbsp;&nbsp; </div>';     
		document.getElementById(divicon).innerHTML = '<span style="text-align: center; "><img src="images/lightbox-ico-loading.gif" width="20" height="20" alt="" border="0" style="padding-top: 5px;"> &nbsp;&nbsp; </span>';     
	
	if (!oXmlHttp)
	{	var oXmlHttp = zXmlHttp.createRequest();
	}
	else if (oXmlHttp.readyState != 0)
	{	oXmlHttp.abort();
	}
	
	//oXmlHttp.open("get", pageName+'?action='+actionName, true);
	oXmlHttp.open("get", pageName, true);
	
	
	 oXmlHttp.onreadystatechange = function () 
	{	   
		if (oXmlHttp.readyState == 4) // 4 -> all data has been received and the connection has been closed.
		{	if (oXmlHttp.status == 200) // 200 -> request was completely successful
			{	var aData = oXmlHttp.responseText.split("||");
				showResult(aData[0], aData[1]);
				 
				//alert(aData[0]);
				
            } 
			else 
			{	//saveResult("An error occurred: " + oXmlHttp.statusText);
				alert("An error occurred: " + pageName);
            }
        }            
    };
   // oXmlHttp.send(sBody);   
   oXmlHttp.send(null);   
	
}



function ajax_link_submit(formname)
{	var oForm = document.forms[formname];
	if(oForm.onsubmit()) 
	{
	 	oForm.submit()
	}
}


function startAjaxUpload(idShow)
{
	document.getElementById('ajax_upload_process').style.visibility = 'visible';
	//document.getElementById('f1_upload_form').style.visibility = 'hidden';
	return true;
}

function stopAjaxUpload(success, idname)
{	/*
	var result = '';
	if (success == 1)
	{
		result = '<span class="msg">The file was uploaded successfully!<\/span><br/><br/>';
	}
	else 
	{
		result = '<span class="emsg">There was an error during file upload!<\/span><br/><br/>';
	}
	
	
	if (success = 'gotopage')
	{	document.location.href = 'index.php';
	}
	else */
	{	result = success;
		
		document.getElementById(idname).innerHTML = result;
		//document.getElementById(idHide).style.visibility = 'hidden';
		//document.getElementById('f1_upload_form').innerHTML = result + '<label>File: <input name="myfile" type="file" size="30" /><\/label><label><input type="submit" name="submitBtn" class="sbtn" value="Upload" /><\/label>';
		//document.getElementById('f1_upload_form').style.visibility = 'visible';      
		return true; 
	}

}



