var Basket;

function Basket(){
	
	var _this = this;
	
	_this.init = function(){
		$('div#koszyk div.basket_position div.plusMinus div.plus').bind('click', function(){
			Basket.updateBasket(this);
		});
		$('div#koszyk div.basket_position div.plusMinus div.minus').bind('click', function(){
			Basket.updateBasket(this);
		});
		$('div#koszyk div.basket_position input').bind('blur', function(){
			Basket.filterBasketInput(this);
		});
		
	}
	
	_this.sendUpdate = function(){
		var action = 'UpdateBasket';
		var makeorder = 0;
		var ba_amount_i = new Array();
		var data = '';
		
		$('div.basket_position').each(function() {
			var id = this.id.match(/baid([0-9]+)/i);
			id = id[1];
			var input = $('div#baid'+id+' input');
			ba_amount_i[id] = input[0].value;
		});
		
		for(i in ba_amount_i)
		{
			if(data.length > 1)
			{
				data += '&'+i+'='+ba_amount_i[i];
			}
			else
			{
				data += i+'='+ba_amount_i[i];
			}
		}

		Basket.unregister();
		$.post('/basket_info.php', {'makeorder':makeorder, 'action':action, 'small': 'true', 'ba_amount_i':data}, function(incoming){
			$('div#basketContent').html(incoming);
			Basket.init();
		});
		return true;
	};
	
	_this.unregister = function(){
		$('div.plus').unbind();
		$('div.minus').unbind();
		$('input').unbind();
	}
	
	_this.updateBasket = function(elem){
		if(elem.className == 'minus')
		{
			var val = $(elem).parent().next();//.value++;
			val[0].value--;
		}
		else
		{
			var val = $(elem).parent().next();
            var val_all = $(elem).parent().next().next().html(); 
			if (val_all>val[0].value)
	               val[0].value++;
			else
			     alert('Brak wystarczajacej ilosci sztuk w magazynie');
	    }
		Basket.sendUpdate();
	}
	
	_this.filterBasketInput = function(elem){
	  
       var val_all = $(elem).next().html();  
       var val = $(elem).parent().find('input').val();
       
	   if (val > val_all)
	   {
	       alert('Brak wystarczajacej ilosci sztuk w magazynie');
           $(elem).parent().find('input').val(val_all);
	   }
	   else
		   Basket.sendUpdate();
	}
	
}

$(document).ready(function(){
	Basket = new Basket();
	Basket.init();
	
	$(window).unload(function(){
		Basket.unregister();
	});
});