var req;
var g_id=0;
function add2cart(id)
{
	var q=document.getElementById('q'+id);
	if(q){q=q.value;}else{alert('!!!');q=1;}
	checkCart(id,q,'');
}

function loadXMLDoc(url) {
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange;
        req.open("GET", url, true);
        req.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqChange;
            req.open("GET", url, true);
            req.send();
        }
    }
}
function processReqChange() 
{
    // only if req shows "complete"
    if (req.readyState == 4) {
        // only if "OK"
        if (req.status == 200) {
            // ...processing statements go here...
//      response = req.responseXML.documentElement;
      response = req.responseText;
      checkCart('', '', response);
        } else {
            alert("There was a problem retrieving the XML data:\n" + req.statusText);
        }
    }
}
function checkCart(id, quant, response)
{
  if (response == 'exists'){
  	  alert('Данный товар уже присутствует в Вашей корзине.\r\nИзменить количество можно на странице заказа.');
  }
  else if (response == 'zero'){
  	  alert('Количество товара должно быть больше 0.');
  }
  else if (response != ''){ 
    // Response mode
    response = response.split('+-+');
    goods_no = response[0];
    total = response[1];
    span1 = document.getElementById('cart_goods_no');
    span2 = document.getElementById('cart_total');
	span1.innerHTML=goods_no;
	span2.innerHTML=total;
	alert('Товар помещен в корзину');
  }else{
    // Input mode
    url  = '/inc/cart_add.php?id='+id+'&quant='+quant;
    loadXMLDoc(url);
  }
}

function loadXMLDoc1(url,id) {
    // branch for native XMLHttpRequest object
	g_id=id;
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange1;
        req.open("GET", url, true);
        req.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqChange1;
            req.open("GET", url, true);
            req.send();
        }
    }
}
function processReqChange1() 
{
    if (req.readyState == 4)
    {
        if (req.status == 200)
        {
	      	response = req.responseText;
			renewCart('', '', response);
        }
        else
        {
            alert("There was a problem retrieving the XML data:\n" + req.statusText);
        }
    }
}
function renewCart(id, quant, response)
{
  if (response == 'exists'){
  	  alert('Данный товар уже присутствует в Вашей корзине.\r\nИзменить количество можно на странице заказа.');
  }
  else if (response == 'zero'){
  	  alert('Количество товара должно быть больше 0.');
  }
  else if (response != ''){ 
    // Response mode
    response = response.split('+-+');
    cost = response[0];
    goods_no = response[1];
    total = response[2];
    total_rur = response[3];
    total_usd = response[4];
    span1 = document.getElementById('cart_goods_no');
    span2_1 = document.getElementById('cart_total');
    span3 = document.getElementById('cost_'+g_id);
    span4 = document.getElementById('cost_total');
	span1.innerHTML=goods_no;
	span2_1.innerHTML=total_rur;
	span3.innerHTML=cost;
	span4.innerHTML=total;
  }else{
    // Input mode
    url  = '/inc/cart_modify.php?id='+id+'&quant='+quant;
    loadXMLDoc1(url,id);
  }
}

function loadXMLDoc2(url) {
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange2;
        req.open("GET", url, true);
        req.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqChange2;
            req.open("GET", url, true);
            req.send();
        }
    }
}
function processReqChange2() 
{
    // only if req shows "complete"
    if (req.readyState == 4) {
        // only if "OK"
        if (req.status == 200) {
            // ...processing statements go here...
//      response = req.responseXML.documentElement;
      response = req.responseText;
      orderDetails(0, response);
        } else {
            alert("There was a problem retrieving the XML data:\n" + req.statusText);
        }
    }
}
function orderDetails(id,response)
{
  if (response != ''){ 
    // Response mode
    span1 = document.getElementById('order_details');
	span1.innerHTML=response;
  }else{
    // Input mode
    url  = '/inc/order_details.php?id='+id;
    loadXMLDoc2(url);
  }
}

function loadXMLDoc3(url) {
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange3;
        req.open("GET", url, true);
        req.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqChange3;
            req.open("GET", url, true);
            req.send();
        }
    }
}
function processReqChange3() 
{
    // only if req shows "complete"
    if (req.readyState == 4) {
        // only if "OK"
        if (req.status == 200) {
            // ...processing statements go here...
//      response = req.responseXML.documentElement;
      response = req.responseText;
      filterMakes(0, response);
        } else {
            alert("There was a problem retrieving the XML data:\n" + req.statusText);
        }
    }
}
function filterMakes(id,response)
{
  if (response != ''){ 
    // Response mode
    var span1 = document.getElementById('search_makes');
    if(span1){span1.innerHTML=response;}
  }else{
    // Input mode
    url  = '/inc/filter_makes.php?id='+id;
    loadXMLDoc3(url);
  }
}
