    function createXMLHttpRequest() {
    
    var ua;
    
    if(window.XMLHttpRequest) {
        try {
        ua = new XMLHttpRequest();
        } catch(e) {
        ua = false;
        }
    } else if(window.ActiveXObject) {
        try {
        ua = new ActiveXObject("Microsoft.XMLHTTP");
        } catch(e) {
        ua = false;
        }
    }
    return ua;
    }
    
    var req = createXMLHttpRequest();
    
    function sendRequest(id, pid) {
      req.open('get', 'functions.php?do=' + id + 'pid=' + pid);
      req.onreadystatechange = handleResponse;
      req.send(null);
    }
    


    function addToCart(id, price) {
      qty = document.getElementById('pr_'+id).value;
      req.open('get', 'basket/functions.php?do=addToCart&id='+id+'&price='+price+'&qty='+qty);
      req.onreadystatechange = handleResponse;
      req.send(null);
    }

    function setToCart(id,price){
       qty = document.getElementById('pr_'+id).value;
      req.open('get', 'basket/functions.php?do=setToCart&id='+id+'&price='+price+'&qty='+qty);
      req.onreadystatechange = handleResponse;
      req.send(null);
    }

    //var show_cart=true;

    function showCart() {
      //if (show_cart){
      //request basket and show it
      req.open('get', 'basket/functions.php?do=showCart');
      req.onreadystatechange = handleResponse;
      req.send(null);
      //document.getElementById("basket").style.display="block";

      //}
      //else{
        //hide basket
      //document.getElementById("basket").style.display="none";
      //}
      //show_cart=!show_cart;
    }
    
    function removeFromCart(id) {
      req.open('get', 'basket/functions.php?do=removeFromCart&id='+id);
      req.onreadystatechange = handleResponse;
      req.send(null);
    }
    
    function addQty(id) {
      req.open('get', 'basket/functions.php?do=addQty&id='+id);
      req.onreadystatechange = handleResponse;
      req.send(null);
    }

    function minusQty(id) {
      req.open('get', 'basket/functions.php?do=minusQty&id='+id);
      req.onreadystatechange = handleResponse;
      req.send(null);
    }


     function addQtyZakaz(id) {
      req.open('get', 'basket/functions.php?do=addQtyZakaz&id='+id);
      req.onreadystatechange = function () {

    if(req.readyState == 4){
        var response = req.responseText;
        var update = new Array();

        if(response.indexOf('||' != -1)) {
        update = response.split('||');
        document.getElementById("basket_zakaz").innerHTML = update[0];
        }
    }
    };
      req.send(null);
    }

    function minusQtyZakaz(id) {
      req.open('get', 'basket/functions.php?do=minusQtyZakaz&id='+id);
      req.onreadystatechange = function () {

    if(req.readyState == 4){
        var response = req.responseText;
        var update = new Array();

        if(response.indexOf('||' != -1)) {
        update = response.split('||');
        document.getElementById("basket_zakaz").innerHTML = update[0];
        }
    }
    };
      req.send(null);
    }


    function showZakaz() {
      req.open('get', 'basket/functions.php?do=showZakaz');
      req.onreadystatechange =  function () {

    if(req.readyState == 4){
        var response = req.responseText;
        var update = new Array();

        if(response.indexOf('||' != -1)) {
        update = response.split('||');
        document.getElementById("basket_zakaz").innerHTML = update[0];
        }
    }
    };
      req.send(null);
    }

    var show_prod_num=-1;

    function showByProductId(id) {
      req.open('get', 'basket/functions.php?do=showByProductId&id='+id);
      req.onreadystatechange = function(){
                                            if(req.readyState == 4){
                                            var response = req.responseText;
                                            var update = new Array();
                                            if(response.indexOf('||' != -1)) {
                                            update = response.split('||');
                                            if (show_prod_num==id) {
                                            document.getElementById("basket_spisok_"+id).innerHTML = '';
                                            show_prod_num=-1;
                                            }
                                            else {

                                            document.getElementById("basket_spisok_"+id).innerHTML = update[0];
                                                if (show_prod_num!=-1) document.getElementById("basket_spisok_"+show_prod_num).innerHTML = '';
                                            show_prod_num=id;
                                            }

                                            }
                                            }
      };
      req.send(null);
    }

    function handleResponse() {

    if(req.readyState == 4){
        var response = req.responseText;
        var update = new Array();

        if(response.indexOf('||' != -1)) {
        update = response.split('||');
        document.getElementById("basket").innerHTML = update[0];
        }
    }
    //else
    //alert("loading" + req.readyState);
    }



    function handlespisokResponse() {

    if(req.readyState == 4){

        var response = req.responseText;
        var update = new Array();
        if(response.indexOf('||' != -1)) {
        update = response.split('||');

        document.getElementById("basket_spisok_"+37).innerHTML = update[0];
        }
    }

    }


    function submitForm(){
      document.getElementById("sendform").disabled=true;
      document.getElementById("uname").disabled=true;
      document.getElementById("email2").disabled=true;
      document.getElementById("phone").disabled=true;
      document.getElementById("desc").disabled=true;
      document.getElementById("sendform").value='Отправление заказа';
      var name,email,phone,desc;
      name=document.getElementById("uname").value;
      email=document.getElementById("email2").value;
      phone=document.getElementById("phone").value;
      desc=document.getElementById("desc").value;
      req.open('get', 'basket/functions.php?do=sendMail&name='+name+'&email='+email+'&phone='+phone+'&desc='+desc);
      req.onreadystatechange = function(){
                                            if(req.readyState == 4){
                                            var response = req.responseText;
                                            var update = new Array();
                                            if(response.indexOf('||' != -1)) {
                                            update = response.split('||');
                                            document.getElementById("userfeedback").innerHTML = update[0];
                                            }
                                            }
      };
      req.send(null);
    }

    function checkForm(){
      var errorList = [];
      var errorText = {
        1: "Не заполнено поле 'email'",
        2: "Не заполнено поле 'Телефон'",		
        3: "Не заполнено поле 'Email'"
      }
      if (document.getElementById("phone").value=="") errorList.push(2);
      if (document.getElementById("email2").value=="") errorList.push(3);	  
      if (errorList.length!=0){
          var errorMsg = "<font color='red'>Ошибка<br>";
            for (i=0;i<errorList.length;i++){
                errorMsg+=errorText[errorList[i]]+"<br>";
            }
          errorMsg+="</font>";
          document.getElementById("errorfield").innerHTML = errorMsg;
      }
      else{
        submitForm();
      }
    }



