var request;

function createRequest() {
  try {
    request = new XMLHttpRequest();
  } catch (trymicrosoft) {
    try {
      request = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (othermicrosoft) {
      try {
        request = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (failed) {
        request = false;
      }
    }
  }

  if (!request)
    alert("Error initializing XMLHttpRequest!");
}

function mailOrder() {
    var order;
    var url;
    var str;
        
    order = document.getElementById('basket').innerHTML;
    
    custemail = prompt("Please enter your email address", "");
    
    str = "custemail=" + custemail + "&order=" + escape(order);
    
    createRequest();
    
    url = "http://www.techno-mage.co.uk/photos/take_order.php5";
    request.open("POST", url, true);
    request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");    request.onreadystatechange = confirmOrder;     request.send(str);
}

function confirmOrder() {
    if (request.readyState == 4) {
       if (request.status == 200) {        
            var response = request.responseText;
            if ( response > 0 ) {
                // Actually do more her eonce the first piece of the puzzle is done.
                alert( "Your Order has been received\n\nYou should receive confirmation and an invoice shortly." );
            } else {
                alert( "There has been a problem.\n\nPlease call on 07775862419 " );
            }
        } else if (request.status == 404) {            
            alert("Request URL does not exist");
        } else {
            alert("Error: status code is " + request.status);
        }
    }
}

function addToBasket( elementRef ) {
    var buttonID;
    var selectID;
    var quantityID;
    var checkID;
    var image;
    var prints;
    var album;
    
    var select;
    var selectValue;
    var check;
    var isChecked;
    var quantity;
    
    buttonID = elementRef.id;
    selectID = "s_" + buttonID.slice(2);
    quantityID = "q_" + buttonID.slice(2);
    checkID = "album_" + buttonID.slice(2);
    image = buttonID.slice(2);
    
    select = document.getElementById( selectID );
    selectValue = select.options[select.selectedIndex].value;
    
    check = document.getElementById( checkID );
    if (check.checked) {
        isChecked = true;
    } else {
        isChecked = false;
    }
    
    quantity = document.getElementById( quantityID ).value;
    
    prints = document.getElementById( 'prints');
    album = document.getElementById('album');
    
    printsContent = prints.innerHTML;
    albumContent = album.innerHTML;
    
    prints.innerHTML = printsContent + "<span id='" + image + "' class='lineitem'>" + image + " - " + selectValue + " x " + quantity + " <a href='#' onclick=\"javascript:removeLineItem('prints', '" + image + "');\"> remove</a></span><br id='" + image + "_br" + "' />";
    
    if (isChecked == true) {
        album.innerHTML = albumContent + "<span id='" + image + "_album'  class='lineitem'>" + image + "<a href='#' onclick=\"javascript:removeLineItem('album', '" + image + "_album');\"> remove</a></span><br id='" + image + "_album_br" + "' />";
    } else {}
}

function removeLineItem( parentID, elementID ) {
    parent = document.getElementById( parentID );
    element = document.getElementById( elementID );
    br = document.getElementById( elementID + "_br" );
    parent.removeChild( element );
    parent.removeChild( br );
}