var calc;

$(document).ready(function()
{
	if ($('div.controlBorder').length > 0)
	{
		$('html').addClass('backoffice');
	}
	
	$('div.products div.product').each(function(index)
	{
		if (index == 0)
		{
			$(this).addClass('first');
		}
		else if ((index + 1) % 3 == 0)
		{
			$(this).addClass('cap');
		}
	});
	
	$('ul').each(function()
	{
		$(this).find('> li:first').addClass('first');
		$(this).find('> li:last').addClass('last');
	});
	
	if ($('div.overlayPopup').length > 0)
	{
		$('div.overlayPopup').appendTo('body form');
	}
	
	$('div.NavBack').each(function()
	{
		if ($.trim($(this).text()) == '')
		{
			$(this).remove();
		}
		
	});
	
	// Menu list ------------------------------------------------------------------
	$('div#Menu ul li').each(function()
	{
		$(this).mouseenter(function()
		{
			$(this).addClass('hover');
		});
		$(this).mouseleave(function()
		{
			$(this).removeClass('hover');
		});
		
	});

	// Accordeon list ------------------------------------------------------------------
	$('div.accordeonList').each(function()
	{
		$(this).find('h4').each(function()
		{
			var content = $(this).prev();
			
			$(this).wrap('<div class="element" />');
			
			var element = $(this).parent('div.element');
			
			element.append('<div class="expand" />');
			
			var expand = element.find('div.expand');
			
			expand.append(content);
			
		});
		
		$(this).find('div.element h4').click(function()
		{
			var list = $(this).parents('div.accordeonList');
			var element = $(this).parent();
			var active = element.hasClass('activeElement');
			var autoClose = list.hasClass('autoCloseOff');
			
			if(autoClose == false)
			{				
				list.find('div.activeElement div.expand').slideUp(300);
				list.find('div.activeElement').removeClass('activeElement');
			}
			else if(autoClose == true && active == true)
			{				
				element.find('div.expand').slideUp(300);
				element.removeClass('activeElement');
			} 
			
			if (active == false)
			{
				element.find('div.expand').slideDown(300);
				element.addClass('activeElement');
			}
		});
		
		$(this).find('div.calculator').each(function()
		{
			var inputs = $(this).find('input');
			
			inputs.change(function()
			{
				calculator($(this).parents('div.row'));
			});
			inputs.filter('[type="text"]').keyup(function()
			{
				calculator($(this).parents('div.row'));
			});
			
		});
		
		function sumCalculator()
		{
			var totaal = 0;
			
			$('div.calculator').each(function(){				
							
				var total = $(this).find('div.total strong').text();
				
				totaal += parseFloat(total);
				
			});
						
			$('div.lastTable td.left strong:first').text(totaal.toFixed(2));
		}
		
		function calculator(row)
		{
			var total = row.parents('div.calculator').find('div.total strong');
			var parameter = row.parents('div.calculator').find('div.parameter').text();
			var parameterCash = row.parents('div.calculator').find('div.parameterCash').text();
			
			var base = $('div.contentFacts div.lastTable td.left:first strong').text();
			base = base.split('.').join('');
			
			row.find('input[type="radio"]').attr('checked', true);
			
			if (row.hasClass('manual'))
			{
				var inputs = row.find('input[type="text"]');
				var amount = parseFloat(inputs.eq(0).val()) * parseFloat(inputs.eq(1).val()) * parseFloat(parameter);
			}
			else if (row.hasClass('auto'))
			{
				var input = row.find('input[type="text"]');
				var amount = parseFloat(input.val()) * parseFloat(parameter);
			}
			else if (row.hasClass('cash'))
			{
				var input = row.find('input[type="text"]');
				var amount = parseFloat(input.val()) * parseFloat(parameterCash);
			}
			
			if (amount >= 0)
			{
				//total.text(amount + parseInt(base));
				total.text(amount.toFixed(2));
				sumCalculator();
			}
			else
			{
				total.text('0');
				sumCalculator();
			}
		}
				
	});
	
	
	// Quotes ------------------------------------------------------------------
	if ($('div.smallContent.quote').length > 0)
	{
		var quote = $('div.smallContent.quote');
		
		quote.find('img.leftQuote').prependTo(quote.find('span'));
		quote.find('img.rightQuote').appendTo(quote.find('span'));
	}
	
	
	// News pages ------------------------------------------------------------------
	if ($('div.newsItem div.customForm_Row').length > 0)
	{
		$('h1').hide();
		$('p').not('div.newsItem p').hide();
	}
	
	
	// Facts tables ------------------------------------------------------------------
	if ($('div.contentFacts').length > 0)
	{
		var block = $('div.contentFacts');
		
		block.find('div.firstTable table').append('<tr><td>&nbsp;</td><td>&nbsp;</td></tr>');
		
		block.find('tr:first').addClass('firstLine');
		block.find('td:nth-child(1)').addClass('left');
	}
	
	
	// Calculate tables ------------------------------------------------------------------
	if ($('div.contentCalculate').length > 0)
	{
		calc = $('div.contentCalculate');
		
		calculateGreensand();
		
		calc.find('input').keydown(function(event)
		{
			if (
				event.keyCode >= 48 && event.keyCode <= 57 || /* 0-9 */
				event.keyCode >= 96 && event.keyCode <= 105 || /* Numpad 0-9 */
				event.keyCode >= 37 && event.keyCode <= 40 || /* Up down left right */
				event.keyCode == 8 || /* Backspace */
				event.keyCode == 46 || /* Delete */
				event.keyCode == 116 || /* F5 */
				event.keyCode == 9 || /* Tab */
				event.keyCode == 190 || event.keyCode == 110 /* Dot (.) */
				)
			{
				/* Do nothing */
			}
			else
			{
				event.preventDefault();
			}
		});
		calc.find('input').keyup(function()
		{
			calculateGreensand();
		})
	}
	
	
	// Shadowbox ------------------------------------------------------------------
	/*Shadowbox.init(
	{
		displayNav: false,
		onFinish: function(){Cufon.refresh();},
		troubleElements: "",
		overlayColor: "#112c03",
		overlayOpacity: 0.75
	});*/
	
	$('div.products div.product div.functions ul li.first a').click(function()
	{
		//makeOverlay();
		//return false;
	});
	
	function makeOverlay()
	{
		var imageSrc = '../content/images/greensand/homeblock-1.png';
		var imageAlt = '';
		var productTitle = 'GreenSand voorbeeld lightbox';
		var productText = 	'<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer viverra tempor nunc, ut tristique enim aliquet vitae. Etiam id tortor nulla, pulvinar convallis lacus. Pellentesque neque turpis, tristique at consequat luctus, euismod porttitor nulla. Nunc vel nibh vel urna semper mattis vel a purus. Praesent ornare pellentesque pellentesque. Sed ipsum velit, faucibus nec accumsan at, auctor eget sem. Curabitur in volutpat massa. Duis suscipit suscipit cursus. Maecenas sed velit ornare ipsum pretium aliquet. Donec mi sapien, mattis ut dictum eget, blandit vitae ipsum. Suspendisse varius lectus vitae tellus lobortis sagittis. Sed convallis sem vel magna dignissim eget tristique sem convallis. Curabitur faucibus ultricies est at auctor. Fusce et mauris orci, in bibendum dui. Sed laoreet, turpis a ullamcorper placerat, quam odio suscipit nunc, non ullamcorper mauris ligula nec est.</p>';
		
		var product =	'<div id="Overlay">' +
							'<a href="#" class="close" onclick="Shadowbox.close();">Sluiten</a>' +
							
							'<div class="title">' +
								'<h4>' + productTitle + '</h4>' +
							'</div>' +
							'<div class="productInfo">' +
								'<div class="info">' +
									productText +
								'</div>' +
							'</div>' +
							'<div class="productImage">' +
								'<img src="' + imageSrc + '" alt="' + imageAlt + '" />' +
							'</div>' +
						'</div>';
		
		Shadowbox.open(
		{
			content: product,
			player: 'html',
			height: 400,
			width: 544
		});
	}
	
});
	
function calculateGreensand()
{
	var calcW = calc.find('tr.calcWidth input').val();
	var calcH = calc.find('tr.calcHeight input').val();
	
	var calcTotal = parseFloat(calcW * calcH).toFixed(2);
	var calcReduction = parseFloat(calcTotal * 0.75).toFixed(2);
	var calcGs = parseFloat(calcTotal * 0.6).toFixed(2);
	var calcCo2 = parseFloat(calcReduction * 0.157).toFixed(2);
	
	calc.find('tr.calcTotal span').text(calcTotal);
	calc.find('span.reduction').text(calcReduction);
	calc.find('span.greenSand').text(calcGs);
	calc.find('span.co2').text(calcCo2);
}
