var winePlanetFnc = function(){
	this.basket = {
		header : {
			open : function() {
				cyclone3.log('opening header cart');
				var elem = $('#head_cart');
				
				if($(elem).find('.head_cart_counter')){
					cyclone3.log('hiding cart counter');
					$(elem).find('.head_cart_counter').hide();
				}
				
				pageTracker._trackEvent('Basket', 'Open');
				
				$(elem).find('.items').fadeIn(
					'fast',
					function(){
						cyclone3.log('sliding down content');
						$(elem).find('.items_i').slideDown();
					}
				);
			},
			close : function() {
				var elem = $('#head_cart');
				
				$(elem).find('.items_i').slideUp(
					'fast',
					function(){
						$(elem).find('.items').fadeOut(
							'fast',
							function(){
								if($(elem).find('.head_cart_counter')){
									$(elem).find('.head_cart_counter').show();
								}
							}
						);
					}
				);
			}
		},
		
		amount : {
			plus : function(inputNode, amountPlus){
				if(inputNode){
					if (amountPlus == undefined){ amountPlus=1; }
					cyclone3.log(inputNode)
					var amount = parseInt($(inputNode).val());
					$(inputNode).val(amount+amountPlus);
				}
			},
			
			minus: function (inputNode,amountMinus){
				if(inputNode){
					if (amountMinus == undefined){ amountMinus=1; }
					var amount = parseInt($(inputNode).val());
					if(amount>amountMinus){
						$(inputNode).val(amount-amountMinus);
					}
				}
			}
		},
		
		add: function(ID_entity, amount, elem)
		{
			if(!ID_entity)
			{
				return false;
			}
			
			pageTracker._trackEvent('Basket', 'Add', ID_entity);
			
			$.ajax({
				type: "get",
				url: "/minibasket",
				data: {
					'action' : 'add',
					'ID' : ID_entity,
					'amount' : amount
				},
				dataType: 'html',
				success: function(data){
					try
					{
						var cartContent = $(data).find('.head_cart');
						
						if(cartContent){
							$('.head_cart').replaceWith(cartContent)
						}
						if(elem){
							$(elem).tipsy({
								'title': function(){
									return 'Produkt bol pridaný<br />do košíka.'
								},
								'html': true,
								'trigger': 'manual'
							});
							$(elem).tipsy('show')
							var basketAddTipsy=window.setTimeout(
								function(){
									$(elem).tipsy('hide')
									window.clearTimeout(basketAddTipsy);
								},
								1000
							);
							
						}
						/*
						if($(data).find("response").find("result").text()==0)
						{
							$("#poll_"+ID_poll).find('.description').hide();
							$("#poll_"+ID_poll).find('.already_voted').show();
						}
						$(data).find("response").find("answer").each(
							function()
							{
								$("#poll_answer_"+$(this).attr("id")).find('.votevalue').html($(this).attr("votes_percent")+"%");
								$("#poll_answer_"+$(this).attr("id")).addClass('poll_answer_voted');
							}
						);
						*/
					}catch(e){
						alert(e);
					}
				}
			});
			
			//frames['iframe'].location.href=';
			/*
			obj_basket.fnc_request('add', ID_entity, amount, elem);
			*/
			return true;
		},
		
		remove: function(ID_entity, elem, removeElem)
		{
			if(!ID_entity)
			{
				return false;
			}
			
			pageTracker._trackEvent('Basket', 'Remove', ID_entity);
			
			frames['iframe'].location.href='/minibasket?action=remove&ID=' + ID_entity + '&amount=' + amount;
			/*
			obj_basket.fnc_request('remove',ID_entity, elem, removeElem);
			*/
			return true;
		}
	}
	
	this.tabs = {
		generate : {
			cartStep1 : function(){
				$('h1').hide();
				
				var tabbox = $('<div id="cart_tabs" class="tabs"></div>').appendTo($('.tabs_placeholder'));
				
				var tmpTab1 =
					$('<span class="tab"></span>')
						.append(
							'1 Nákupný košík'
						)
						.addClass('current');
				tabbox.append(tmpTab1);
				
				var tmpTab2 =
					$('<span class="tab"></span>')
						.append(
							'2 Doručenie a platba'
						)
				tabbox.append(tmpTab2);
				
				var tmpTab3 =
					$('<span class="tab"></span>')
						.append(
							'3 Kontrola'
						)
				tabbox.append(tmpTab3);
				
				var tmpTab4 =
					$('<span class="tab"></span>')
						.append(
							'4 Potvrdenie objednávky'
						)
				tabbox.append(tmpTab4);
			},
			cartStep2 : function(){
				$('h1').hide();
				
				var tabbox = $('<div id="cart_tabs" class="tabs"></div>').appendTo($('.tabs_placeholder'));
				
				var tmpTab1 =
					$('<span class="tab"></span>')
						.append(
							'1 Nákupný košík'
						)
				tabbox.append(tmpTab1);
				
				var tmpTab2 =
					$('<span class="tab"></span>')
						.append(
							'2 Doručenie a platba'
						)
						.addClass('current');
				tabbox.append(tmpTab2);
				
				var tmpTab3 =
					$('<span class="tab"></span>')
						.append(
							'3 Kontrola'
						)
				tabbox.append(tmpTab3);
				
				var tmpTab4 =
					$('<span class="tab"></span>')
						.append(
							'4 Potvrdenie objednávky'
						)
				tabbox.append(tmpTab4);
			},
			cartStep3 : function(){
				$('h1').hide();
				
				var tabbox = $('<div id="cart_tabs" class="tabs"></div>').appendTo($('.tabs_placeholder'));
				
				var tmpTab1 =
					$('<span class="tab"></span>')
						.append(
							'1 Nákupný košík'
						)
				tabbox.append(tmpTab1);
				
				var tmpTab2 =
					$('<span class="tab"></span>')
						.append(
							'2 Doručenie a platba'
						);
				tabbox.append(tmpTab2);
				
				var tmpTab3 =
					$('<span class="tab"></span>')
						.append(
							'3 Kontrola'
						)
						.addClass('current')
						
				tabbox.append(tmpTab3);
				
				var tmpTab4 =
					$('<span class="tab"></span>')
						.append(
							'4 Potvrdenie objednávky'
						)
				tabbox.append(tmpTab4);
			},
			cartStep4 : function(){
				$('h1').hide();
				
				var tabbox = $('<div id="cart_tabs" class="tabs"></div>').appendTo($('.tabs_placeholder'));
				
				var tmpTab1 =
					$('<span class="tab"></span>')
						.append(
							'1 Nákupný košík'
						)
				tabbox.append(tmpTab1);
				
				var tmpTab2 =
					$('<span class="tab"></span>')
						.append(
							'2 Doručenie a platba'
						);
				tabbox.append(tmpTab2);
				
				var tmpTab3 =
					$('<span class="tab"></span>')
						.append(
							'3 Kontrola'
						);
						
				tabbox.append(tmpTab3);
				
				var tmpTab4 =
					$('<span class="tab"></span>')
						.append(
							'4 Potvrdenie objednávky'
						)
						.addClass('current')
						
				tabbox.append(tmpTab4);
			}
		}
	}
	
	this.tooltip = function(elem, msg) {
		if(elem){
			$(elem).tipsy({
				'title': function(){
					return msg;
				},
				'html': true,
				'trigger': 'manual'
			});
			$(elem).tipsy('show');
			var tmpTipsy=window.setTimeout(
				function(){
					$(elem).tipsy('hide')
					window.clearTimeout(tmpTipsy);
				},
				2000
			);
		}
	}
}

var winePlanet = new winePlanetFnc();
