function remove_from_favourites_remove(a, productid) {
  var ja=$(a);

  $.ajax({
    type: "GET",
    url: '/cmsapps/ecommerce/ajax_removefromfavourites.asp?productid='+productid,
    dataType: "html",
    success: function(data, status) {
      var jtr=ja.parents('tr');
      jtr.remove();
    }
  });
}

function add_to_favourites(a, productid) {
  var ja=$(a);

  $.ajax({
    type: "GET",
    url: '/cmsapps/ecommerce/ajax_addtofavourites.asp?productid='+productid,
    dataType: "html",
    success: function(data, status) {
      var jtr=ja.parents('tr');
      jtr.attr('class', 'fav-on');
      ja.attr('class', 'remove-favourite');
      ja.removeAttr('onclick').unbind('click');
      ja.click(function() { remove_from_favourites(ja, productid); });
      ja.attr('title', 'Remove from favourites');
    }
  });
}

function remove_from_favourites(a, productid) {
  var ja=$(a);

  $.ajax({
    type: "GET",
    url: '/cmsapps/ecommerce/ajax_removefromfavourites.asp?productid='+productid,
    dataType: "html",
    success: function(data, status) {
      var jtr=ja.parents('tr');
      jtr.attr('class', 'fav-off');
      ja.attr('class', 'add-favourite');
      ja.removeAttr('onclick').unbind('click');
      ja.click(function() { add_to_favourites(ja, productid); });
      ja.attr('title', 'Add to favourites');
    }
  });
}

function fav_add_to_basket(a, productid) {
  var ja=$(a);
  var jtr=ja.parents("tr");
  var jqty=$('input[name=quantity]', jtr);
  
  ja.hide();
  var msg=$('<p class="add-msg">Adding...</p>');
  msg.insertAfter(ja);
  
  $.ajax({
      async: false,
      type: "POST",
      url: "/cmsapps/ecommerce/ajax_update_basket_line.asp?productid="+productid,
      data: {
        quantity: jqty.val()
      },
      dataType: "text",
      success: function(data, status) {
        if (/SUCCESS/.test(data)) {
          msg.text('Added to basket');
          
          window.setTimeout(function() { msg.remove(); ja.fadeIn(); }, 1000);
          
          //Quantity was updated, since basket totals, promos and other features may have changed, we need to refresh the basket
          basket_widget.refreshBasket();
          $('#basket-widget').trigger('basketwidgetupdated');
      } else {
          //Quantity update at server failed, so recover original value from XML
        }
      }
  });
}

function pb_add_to_favourites(a, productid) {
  var ja=$(a);

  $.ajax({
    type: "GET",
    url: '/cmsapps/ecommerce/ajax_addtofavourites.asp?productid='+productid,
    dataType: "html",
    success: function(data, status) {
      ja.attr('class', 'remove-favourite');
      ja.removeAttr('onclick').unbind('click');
      ja.click(function() { pb_remove_from_favourites(ja, productid); });
      ja.attr('title', 'Remove from favourites');
      ja.text('Remove from favourites');
    }
  });
}

function pb_remove_from_favourites(a, productid) {
  var ja=$(a);

  $.ajax({
    type: "GET",
    url: '/cmsapps/ecommerce/ajax_removefromfavourites.asp?productid='+productid,
    dataType: "html",
    success: function(data, status) {
      ja.attr('class', 'add-favourite');
      ja.removeAttr('onclick').unbind('click');
      ja.click(function() { pb_add_to_favourites(ja, productid); });
      ja.attr('title', 'Add to favourites');
      ja.text('Add to favourites');
    }
  });
}

