// JavaScript Document
// -----------------------------------------------------
function getXMLObject()  //XML OBJECT
{
   var xmlHttp = false;
   try {
     xmlHttp = new ActiveXObject("Msxml2.XMLHTTP")  // For Old Microsoft Browsers
   }
   catch (e) {
     try {
       xmlHttp = new ActiveXObject("Microsoft.XMLHTTP")  // For Microsoft IE 6.0+
     }
     catch (e2) {
       xmlHttp = false   // No Browser accepts the XMLHTTP Object then false
     }
   }
   if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
     xmlHttp = new XMLHttpRequest();        //For Mozilla, Opera Browsers
   }
   return xmlHttp;  // Mandatory Statement returning the ajax object created
}

function select_innerHTML(objeto,innerHTML){
/******
* select_innerHTML - corrige o bug do InnerHTML em selects no IE
* Veja o problema em: http://support.microsoft.com/default.aspx?scid=kb;en-us;276228
* Versão: 2.1 - 04/09/2007
* Autor: Micox - Náiron José C. Guimarães - micoxjcg@yahoo.com.br
* @objeto(tipo HTMLobject): o select a ser alterado
* @innerHTML(tipo string): o novo valor do innerHTML
*******/
    objeto.innerHTML = ""
    var selTemp = document.createElement("micoxselect")
    var opt;
    selTemp.id="micoxselect1"
    document.body.appendChild(selTemp)
    selTemp = document.getElementById("micoxselect1")
    selTemp.style.display="none"
    if(innerHTML.toLowerCase().indexOf("<option")<0){//se não é option eu converto
        innerHTML = "<option>" + innerHTML + "</option>"
    }
    innerHTML = innerHTML.replace(/<option/g,"<span").replace(/<\/option/g,"</span")
    selTemp.innerHTML = innerHTML
      
    
    for(var i=0;i<selTemp.childNodes.length;i++){
  var spantemp = selTemp.childNodes[i];
  
        if(spantemp.tagName){     
            opt = document.createElement("OPTION")
    
   if(document.all){ //IE
    objeto.add(opt)
   }else{
    objeto.appendChild(opt)
   }       
    
   //getting attributes
   for(var j=0; j<spantemp.attributes.length ; j++){
    var attrName = spantemp.attributes[j].nodeName;
    var attrVal = spantemp.attributes[j].nodeValue;
    if(attrVal){
     try{
      opt.setAttribute(attrName,attrVal);
      opt.setAttributeNode(spantemp.attributes[j].cloneNode(true));
     }catch(e){}
    }
   }
   //getting styles
   if(spantemp.style){
    for(var y in spantemp.style){
     try{opt.style[y] = spantemp.style[y];}catch(e){}
    }
   }
   //value and text
   opt.value = spantemp.getAttribute("value")
   opt.text = spantemp.innerHTML
   //IE
   opt.selected = spantemp.getAttribute('selected');
   opt.className = spantemp.className;
  } 
 }    
 document.body.removeChild(selTemp)
 selTemp = null
}


	//---------- TRIM FUNCTION ---------------------
	function trim(str, chars) {
		return ltrim(rtrim(str, chars), chars);
	}
	 
	function ltrim(str, chars) {
		chars = chars || "\\s";
		return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
	}
	 
	function rtrim(str, chars) {
		chars = chars || "\\s";
		return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
	}
	//------------------------------------------------^

// -----------------------------------------------------

function selectcolor(color)
{
	document.getElementById(color).selected = true;	
}

function selectfreeitem(s,fid)
{
	document.getElementById('freeitem_holder').src = s;
	document.getElementById('freeItem').value = fid;
	showSizeOpt();
}
function selectfreeitem2(s,fid)
{
	document.getElementById('freeitem_holder').src = s;
	document.getElementById('freeItem').value = fid;
	showSizeOpt();
}
function selectfreeitemsize()
{
	document.getElementById('freeItemSize').value = document.getElementById('sizeFreeItem').value;	
}



function showSizeOpt()
{ 
/////////////////////////////
//	DYNAMIC SIZE OPTION
/////////////////////////////
	xmlHttp=new getXMLObject();
	var sizeIN=document.getElementById("freeItem"); 
	var sizeOUT=document.getElementById("sizeFreeItem");
	var url='freesize_option_test.php?freeItem='+sizeIN.value;
		url=url+"&sid="+Math.random();
	if(xmlHttp) {
		xmlHttp.onreadystatechange = function(){
			if (xmlHttp.readyState == 1) {		
					//sizeOUT.innerHTML='<option value="">Loading...</option>';		
					select_innerHTML(sizeOUT,'Loading...');		
			}
			if (xmlHttp.readyState == 4) {		
					//sizeOUT.innerHTML=xmlHttp.responseText;	
					select_innerHTML(sizeOUT,xmlHttp.responseText);	
			}
		}	
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);	
  	}
	
}



/////////////CART FUNCTION

function addtocart(ii,ci,si,qi,fi,fsi)
{
	xmlHttp=new getXMLObject();
	
	var itemid = document.getElementById(ii).value;	
	var color = document.getElementById(ci).value;	
	var size = document.getElementById(si).value;	
	var qty = document.getElementById(qi).value;	
	var freeitem = document.getElementById(fi).value;	
	var freeitemsize = document.getElementById(fsi).value;	
	
	var data = "id=" + itemid;
		data = data + "&color="+color;
		data = data + "&size="+size;
		data = data + "&qty="+qty;
		data = data + "&freeItem="+freeitem;
		data = data + "&sizeFreeItem="+freeitemsize;
		
	var url = 'cart/addtocart.php?sid='+Math.random();	
	
	if(xmlHttp) {
		xmlHttp.onreadystatechange = function(){
			if (xmlHttp.readyState == 1) {	
				
			}				
			if (xmlHttp.readyState == 4) {	
				if (xmlHttp.status == 200) {
					//alert(xmlHttp.responseText);
					var x = xmlHttp.responseText;
					var res = x.search(new RegExp('Error','g'));
					if(res != -1)
					{
						alert(x);	
					}
					else
					{ //alert(x);
						document.getElementById("orderpreview").innerHTML = x;
						window.scroll(0,0);
						setTimeout('document.getElementById("orderpreview").innerHTML=""',15000);
					}
				}	
				
			}
		}	
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlHttp.send(data);
	}	
}

//////////////////////////

