var xmlhttp
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
  try {
  xmlhttp=new ActiveXObject("Msxml2.XMLHTTP")
 } catch (e) {
  try {
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
  } catch (E) {
   xmlhttp=false
  }
 }
@else
 xmlhttp=false
@end @*/
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
 try {
  xmlhttp = new XMLHttpRequest();
 } catch (e) {
  xmlhttp=false
 }
}

// ============================================================================
// Add a product to the basket
//
function addToBasket(productId, brandSearchId) {
  if (!tlBasketUri)
    return;
  var blnSuccess=false;
  var inputElements;

  if (typeof brandSearchId == 'undefined' ) brandSearchId = '';

  inputElements=document.getElementsByTagName('input');
  csukDisableAllItems(inputElements);

  xmlhttp.open("GET", tlBasketUri+"?action=add&item_id="+productId+"&brand_search_id="+brandSearchId, true);

  try {
    xmlhttp.send(null);
    blnSuccess = true;
  }
  catch(e) {
    blnSuccess = false;
  }

  enableAllItems(inputElements);

  if (true==blnSuccess) {
    return true;
  }
  else {
    return false;
  }
}

// ============================================================================
// Remove a product from the basket
//
function removeFromBasket(productId) {
  if (!tlBasketUri)
    return;
  var blnSuccess=false;
  var inputElements;
  inputElements=document.getElementsByTagName('input');
  csukDisableAllItems(inputElements);

  xmlhttp.open("GET", tlBasketUri+"?action=remove&item_id="+productId, true);

  try {
    xmlhttp.send(null);
    blnSuccess=true;
  }
  catch(e) {
    blnSuccess=false;
  }
  enableAllItems(inputElements);
  if (blnSuccess) {
    return true;
  }
  else {
    return false;
  }
}


function csukIncrementBasket()
{
  var span = document.getElementById('cvnbasketnumberofitems');
  span.firstChild.nodeValue = 1 + parseInt(span.firstChild.nodeValue);
}
function csukDecrementBasket()
{
  var span = document.getElementById('cvnbasketnumberofitems');
  span.firstChild.nodeValue = parseInt(span.firstChild.nodeValue) - 1;
}

function csukDisableAllItems(inputElements)
{
  for (var i=0;i<inputElements.length;i++)
  {
    if (inputElements[i].type=='checkbox')
    {
      inputElements[i].setAttribute('disabled',true);
    }
  }
}

function enableAllItems(inputElements)
{
  for (var j=0;j<inputElements.length;j++)
  {
    if (inputElements[j].type=='checkbox')
    {
      inputElements[j].removeAttribute('disabled');
    }
  }
}

function csukUpdateBasketSummary()
{
  if (!tlBasketUri)
    return;
  var numItems = null;
  var today = new Date();
  xmlhttp.open("GET", tlBasketUri+"?action=numberofitems&time="+today.getTime(), true);

  xmlhttp.onreadystatechange=function() {
    var span = document.getElementById('cvnbasketnumberofitems');
    if (xmlhttp.readyState == 4) {
      numItems = parseInt(xmlhttp.responseText);
      if (isNaN(numItems)) numItems = 0;

      if (span.firstChild.nodeValue != numItems)
      {
        span.firstChild.nodeValue = numItems;
      }
    }
  }
  xmlhttp.send(null);
  return false;
}