/**
 * fd
 * desciption:
 *
 * @author communicatie bureau fourdesign_ Menno Tempelaar
 *
 *
 */

var fd_calculator = function (fd) {

	var self			= this;

	var instances		= [];

	var _construct = function () {
		
	};

	_construct();
	return {
		addInstance: function (object) {
			instances.push(new fd_calculator_object(fd, object));
		}
	};
};

var fd_calculator_object = function (fd, object) {

	var self			= this;

	var select_e,
		amount_e,
		total_e,
		submit_e;

	var select,
		amount,
		total;

	var _construct = function () {
		_setup();

		_events();
	};

	var _setup = function () {
		select_e	= $(object).find('select.fd_calculator_package');
		amount_e	= $(object).find('input.fd_calculator_amount');
		total_e	= $(object).find('.fd_calculator_total');
		submit_e	= $(object).find('.fd_calculator_submit');
	};

	var _events = function () {
		select = $(select_e).find('option:selected').attr('rel').replace(',', '.');
		$(select_e).change(function () {
			var active = $(this).find('option:selected');
			select = $(active).attr('rel').replace(',', '.');

			_calculate();
		});

		amount = $(amount_e).val();
		$(amount_e).keyup(function () {
			var value = $(this).val();
			
			//$(this).val(parseInt('0' + value));
			
			amount = $(this).val();
			
			_calculate();
		});

		$(submit_e).click(function () {
			_send();
		})
		
	};

	var _calculate = function () {
		if (!isNaN(parseFloat(select * amount).toFixed(2)))
			$(total_e).html('&euro; ' + parseFloat(select * amount).toFixed(2).replace('.', ','));
	};

	var _send = function () {

		if ($(object).find('.fd_color').length !== 0) {
			var color = $(object).find('.fd_color');
			var element = $(color).find('span.ie7block');
			if (element.length == 0) {
				alert('U moet wel een kleuren keuze maken.');
				return false;
			}
		}
	
		if (!isNaN(parseFloat(select * amount).toFixed(2))) {
			var array = new Array();
			array['id'] = $(object).attr('rel');
			array['aantal'] = amount;
			array['verpakking'] = select;
			array['titel'] = $(select_e).find('option:selected').html();
			array['totaal'] = parseFloat(select * amount).toFixed(2).replace('.', ',');
			if ($(object).find('.fd_color').length !== 0)
			{
				var kleur = fd.color.get();
				array['kleur'] = kleur[1];
				array['rgb'] = kleur[2];
			}
			else
			{
				array['kleur'] = '';
				array['rgb'] = '';
			}
			
			winkelwagen.add_winkelwagen(array);
		}

		return true;
	};

	_construct();
	return {

	};
};
