/*
    .toBuyLink - is a class selector of a link, that will add item to basket after click on it,
*/

(function($){
  //Define variables and elements
    $.fn.addToBasket = function(startOptions) {
      var startOptions = $.extend({
       iAttrArray: 'rel',
       closeBut: '.closeBut'
      }, startOptions);
      var objParams = new Array();
      var atbThumb = new Image();
      var lFrame = 1;
      var atbDark = $('<div id="atbDark"> </div>');
      var atbLoader = $('<div id="atbLoader"><img src="/images/site/loading_progress.png" alt="" title="" /></div>');

      var sumAmount;
      var sumPrice;

      var errorMess = '<div id="errorMess"><h2></h2></div>';


      //Preloader function
      function imageLoading ()
      {
        lFrame++;
        lFrame = lFrame % 12;
        $('#atbLoader img').css({'top': (-40 * lFrame)+'px'});
      }

      //Parsing XML, that contents basket
/*      $.ajax({
        type: "GET",
        url: "/udata/emarket/cart/",
        dataType: "xml",
        success: xmlParser
        });

      function xmlParser(xml)
      {
        sumAmount = $(xml).find('summary').find('amount').text();
        cartSummaryPrice = parseInt($(xml).find('summary').find('price').find('actual').text());
      }
*/
      //On errors
      function errorMessage()
      {
        $('#atbContainer').hide();
        $(errorMess).appendTo('body')
      }


      //Click event
      $(this).bind('click',function()
      {
//        atbLoader.appendTo('body');
//        setInterval(imageLoading,66);

        //Reading 'rel' attribute
        objParams = $(this).attr(startOptions.iAttrArray).split('==');

        //Adding 1 item to basket
        if (objParams[2] == 0)
        {
          $.ajax({ url: '/emarket/basket/put/element/'+objParams[0]+'/?amount=1' });
        }


        //Update small basket block on page without reload
//        sumAmount++;
//        cartSummaryPrice = cartSummaryPrice + parseInt($(this).text());
//        $('#cartSummaryAmount').html(sumAmount+' шт');
//        $('#cartSummaryPrice').html(cartSummaryPrice+' руб.')

        //Remove item from basket
        $('.gDel a').bind('click',function()
        {
//          $.ajax({ url: '/emarket/basket/remove/element/'+objParams[0] });
          $('#atbContainer').hide();
          atbDark.remove();
        })

        if (objParams[3]) { $('.adminLight').css({'color':'#'+objParams[3]}); }
        $('.adminLight').html(objParams[1]);
        $('.atbPrice').html($(this).text());
        atbThumb.src = objParams[4];
        atbThumb.width = 100;
        $('.atbImage').append(atbThumb);

        $('.atbNumber input').bind('change', function()
        {
          var iAmount = parseInt($(this).val())
          if (iAmount)
          {
            $.ajax({ url: '/emarket/basket/put/element/'+objParams[0]+'/?amount='+iAmount })
            console.log(sumAmount, cartSummaryPrice);
          }
          else
          { errorMessage(); }
        })




        atbDark.appendTo('body');
        $('#atbContainer').show();

      });





      $(startOptions.closeBut).bind('click', function(){
        $('#atbContainer').hide();
        atbDark.remove();
        $('.atbImage img').remove()
      });
      document.onkeyup = function(e)
      {
        if (e == null)
        { // ie
          keycode = event.keyCode;
        } else
        { // mozilla
          keycode = e.which;
        }
        if(keycode == 27)
        { // close
          $(startOptions.closeBut).click()
        }
      };
    }
})(jQuery);

