var manufacturerId = '';
var firstCategoryId = '';
var secondCategoryId = '';
var thirdCategoryId = '';
var pager = 1;

var loading_div = '<div class="loader" style="text-align: center; padding-top: 4px;"><img src="/theme/images/cbox/loading.gif" alt="Loading..." border="0" /></div>';

(function($)
{

	$('.toplogo').innerfade({
		speed: 'slow',
		timeout: 5000
	});
	refreshFilters();
	$('.filterblock select').change(function(){
		saveCurrentFilter();
		$('.filterblock select').attr("disabled", true);
		loadData();
		if ($("#manufacturer_id").val() == '' && $("#first_category_id").val() == '' && $("#second_category_id").val() == '' && $("#third_category_id").val() == '')
			refreshFilters();
	});
	
	$('table.checkout_table input.to_cart').change(function(){
		if ($(this).val() < 0)
			$(this).val(0);
	});
	
	addDelToCart();
	
	$('a#megrendel').click(function(event){
		event.preventDefault();
		$('#order_form').submit();
	});
	loadData();
	
	$('a.prev').click(function(event){
		event.preventDefault();
		pager--;
		if (pager < 1)
			pager = 1;
		loadData();
	});
	$('a.next').click(function(event){
		event.preventDefault();
		pager++;
		loadData();
	});
	
	showProduct();
  // Here is the entry point for your front javascript
  
})(jQuery);

function loadData()
{
	$('.tableRow').remove();
	$('.productinfoblock').remove();
	$('#productTable').append(loading_div);
	$.post(
		'/dev.php/productlist?manufacturer_id='+manufacturerId+'&first_category_id='+firstCategoryId+'&second_category_id='+secondCategoryId+'&third_category_id='+thirdCategoryId+'&page='+pager, 
		null, 
		function(data){
			var gotData = $.parseJSON(data);
			drawTable(gotData.aaData);
			if ($("#manufacturer_id").val() != '' || $("#first_category_id").val() != '' || $("#second_category_id").val() != '' || $("#third_category_id").val() != '')
				redrawFilters(gotData.filters);
		}
	);
}

var products = {};
function drawTable(data)
{
//console.dir(data.aaData);
	$('#productTable .loader').remove();
	for (i in data)
	{
		var newRow = '<div class="tableRow">';
		newRow += '<div class="tablecell" style="width: 140px; text-align: left;"><a href="#" rel="'+data[i][0]+'" class="expander"><img src="/theme/images/plussz.png" alt="Kibontás" border="0"></a> '+data[i][0]+'</div>';
		newRow += '<div class="tablecell" style="width: 430px; text-align: left;">'+data[i][1]+'</div>';
		newRow += '<div class="tablecell" style="width: 80px; text-align: right;">'+accounting.formatNumber(parseInt(data[i][2], 10), 0, " ", ",")+' Ft'+'</div>';
		newRow += '<div class="tablecell" style="width: 30px; text-align: right;"><a href="/show-product?prod_id='+data[i][0]+'"><img src="/theme/images/cart.png" border="0"></a></div>';
 		newRow += '</div><div class="productinfoblock contentbox" id="details_'+data[i][0]+'"></div>';
		newRow += '<div class="cb"></div>';
		$('#productTable').append(newRow);
	}
	$('a.expander').click(function(event){
		event.preventDefault();
		var prodId = $(this).attr('rel');
		if (!products[prodId])
			products[prodId] = {};
		if (products[prodId].showing)
		{
			$('#details_'+prodId).hide();
			products[prodId].showing = false;
			$(this).children('img').attr('src', '/theme/images/plussz.png');
		}
		else
		{
			$('#details_'+prodId).show();
			products[prodId].showing = true;
			$(this).children('img').attr('src', '/theme/images/minusz.png');
		}
		if (!products[prodId].loaded)
		{
			$('#details_'+prodId).html(loading_div);
			$.get('/productshow?prod_id='+prodId, null, function(data){
				$('#details_'+prodId).html(data);
			});
			products[prodId].loaded = true;
		}			
	});
}

/*
var productTable = null;
function loadData()
{
//	$('div.makefilter').hide();
//	$('div.productlist').show();
	if (productTable)
		productTable.fnDestroy();
	productTable = $('#productTable').dataTable({
        "bProcessing": true,
        "bRetrieve": true,
        "bDestroy": true,
        "sAjaxSource": '/dev.php/productlist?manufacturer_id='+manufacturerId+'&first_category_id='+firstCategoryId+'&second_category_id='+secondCategoryId+'&third_category_id='+thirdCategoryId,
        "bFilter": false,
        "bDeferRender": false,
        "bAutoWidth": false,
        "aaSorting": [[1,'asc']],
        "bSortClasses": false,
        "aLengthMenu": [[10, 25, 50, -1], [10, 25, 50, "Összes"]],
        "oLanguage": {
			"oPaginate": {
				"sFirst": "Első",
				"sLast": "Utolsó",
				"sNext": "Következő",
				"sPrevious": "Előző"
			},
			"sLengthMenu": "Oldalanként _MENU_",
			"sEmptyTable": "Nincs találat",
			"sInfo": "_START_ - _END_ (összesen: _TOTAL_)"
        },
		"aoColumnDefs": [
			{
				"aTargets": [3],
				"bSortable": false,
				"sClass": "cell_center",
				"fnRender": function(oObj) {
					return '<img src="/theme/images/cart.png" />';
				}
			},
			{
				"aTargets": [2],
				"sClass": "cell_right"
			}
		],
		"fnInitComplete": function(oSettings, oData)
		{
//console.dir(oData.filters);
			$( this.fnGetNodes() ).find("td.cell_right").html(function () {return accounting.formatNumber(parseInt($(this).html(), 10), 0, " ", ",")+' Ft';})
			
			if ($("#manufacturer_id").val() != '' || $("#first_category_id").val() != '' || $("#second_category_id").val() != '' || $("#third_category_id").val() != '')
				redrawFilters(oData.filters);
			$('.filterblock select').removeAttr("disabled");
			$( this.fnGetNodes() ).click(function() {
				var code = $(this).find("td:first-child").html();
				//$.colorbox({href:'/productshow?prod_id='+code});
				document.location.href = 'show-product?prod_id='+code;
			});
		}
    });
}*/

function refreshFilters()
{
	$.post('/refreshfilters', null, function(data) {
//console.dir(data);
		var oData = $.parseJSON(data);
//console.dir(oData.filters);
		redrawFilters(oData.filters);
//		$('.filterblock select').removeAttr("disabled");
	});
}

function redrawFilters(data)
{
	$('.filterblock select').find('option').remove().end();
//console.dir(data);
	
	var manufacturerSelect = $('#manufacturer_id');
	addOption(manufacturerSelect, dictionary.osszes, "", (manufacturerId == "" ? true : false));
	for (var i in data.ManufacturerID)
	{
		addOption(manufacturerSelect, data["ManufacturerID"][i], i, (manufacturerId == i ? true : false));
	}
	
	var firstcategorySelect = $('#first_category_id');
	addOption(firstcategorySelect, dictionary.osszes, "", (firstCategoryId == "" ? true : false));
	for (var i in data["FirstLevelCategoryID"])
	{
		addOption(firstcategorySelect, data["FirstLevelCategoryID"][i], i, (firstCategoryId == i ? true : false));
	}
	
	var secondcategorySelect = $('#second_category_id');
	addOption(secondcategorySelect, dictionary.osszes, "", (secondCategoryId == "" ? true : false));
	for (var i in data["SecondLevelCategoryID"])
	{
		addOption(secondcategorySelect, data["SecondLevelCategoryID"][i], i, (secondCategoryId == i ? true : false));
	}
	
	var thirdcategorySelect = $('#third_category_id');
	addOption(thirdcategorySelect, dictionary.osszes, "", (thirdCategoryId == "" ? true : false));
	for (var i in data["ThirdLevelCategoryID"])
	{
		addOption(thirdcategorySelect, data["ThirdLevelCategoryID"][i], i, (thirdCategoryId == i ? true : false));
	}
	$('.filterblock select').removeAttr("disabled");
}

function addOption(select, text, value, selected)
{
	var newOption = new Option(text, value, false, selected);
	if ($.browser.msie)
	{
		if (select.prop) 
		{
			var options = select.prop('options');
		}
		else 
		{
			var options = select.attr('options');
		}
		options[options.length] = newOption;
	}
	else
	{
		select.append(newOption);
	}
}

function saveCurrentFilter()
{
	manufacturerId = $("#manufacturer_id").val();
	firstCategoryId = $("#first_category_id").val();
	secondCategoryId = $("#second_category_id").val();
	thirdCategoryId = $("#third_category_id").val();
}

function showProduct()
{
	$('form#productInfoForm input#to_cart').change(function(){
		if ($(this).val() < 1)
			$(this).val(1);
	});
	
	$('form#productInfoForm').submit(function(event)
	{
		event.preventDefault();
		$('div.cart_yourcart div.dm_widget_inner').html(loading_div);
//console.dir($(this).attr('action'));
		$.post($(this).attr('action'), $(this).serialize(), function(data){
//alert(data);
			$('div.cart_yourcart div.dm_widget_inner').html(data);
			//$.colorbox.close();
			addDelToCart();
		});
	});
}

function addToCart(prodId)
{
	$('div.cart_yourcart div.dm_widget_inner').html(loading_div);
	var cuurent_form = $('#form_'+prodId);
	$.post(cuurent_form.attr('action'), cuurent_form.serialize(), function(data){
//alert(data);
			$('div.cart_yourcart div.dm_widget_inner').html(data);
			//$.colorbox.close();
			addDelToCart();
	});
}

function addDelToCart()
{
	$("a.cart_trash").click(function(event) {
		event.preventDefault();
		$('div.cart_yourcart div.dm_widget_inner').html(loading_div);
//alert("itt vagyok");
		$.post('/delfromcart?prod_id='+$(this).attr('rel'), null, function(data) {
			$('div.cart_yourcart div.dm_widget_inner').html(data);
		});
	});
}

