
var ahorn = window.ahorn = window.ahorn ? window.ahorn : {};

ahorn.ProductDetailController = function(options)
{
	this.productsData = {};

	var langCode = $("html").attr("lang") || 'cs';

	var lang = {
		'cs': {
			'Cena': 'Cena',
			'Skladová dostupnost': 'Skladová dostupnost',
			'ks': 'ks',
			'Počet ks': 'Počet ks',
			'Přidat do košíku': 'Přidat do košíku',
			'přidat k porovnání': 'přidat k porovnání',
			'Rozmery': 'délka x šířka',
			'přidat do oblíbených': 'přidat do oblíbených'
		},
		'en': {
			'Cena': 'Price',
			'Skladová dostupnost': 'Availability',
			'ks': 'pcs',
			'Počet ks': 'Pieces',
			'Přidat do košíku': 'Add to cart',
			'přidat k porovnání': 'add to comparsion',
			'Rozmery': 'lenght x width',
			'přidat do oblíbených': 'add to favorites'
		},
		'de': {
			'Cena': 'Preis',
			'Skladová dostupnost': 'Vorrat am Lager',
			'ks': 'pc',
			'Počet ks': 'St.',
			'Přidat do košíku': 'In den Warenkorb',
			'přidat k porovnání': 'Zum Vergleich hinzufügen',
			'Rozmery': 'Länge x Breite',
			'přidat do oblíbených': 'zu Favoriten hinzufügen'
		}
	};

	var currentLang = lang[langCode];

	if($('#buy-box').hasClass('isFavorites')){
		this.template = '<div class="product"> 	<form action="" method="post"> 	<div class="inline-box"> ' + currentLang['Rozmery'] + ' <div class="inline-box dims-select-wrapper"></div> 	</div> 	<div class="inline-box" style="width: 200px;"> 	<div class="price-box"> ' + currentLang['Cena'] + ': <span class="price-value"></span></div> <span class="price-novat"></span> 	<div> ' + currentLang['Skladová dostupnost'] + ': <strong><span class="stock-amount">0</span> </strong></div> 	</div> 	<div class="inline-box" style="margin-right: 0;"> 	<input type="hidden" name="uri" value="" /> 	<input type="hidden" name="productId" value="" /> 	<label for="amount"><strong>' + currentLang['Počet ks'] + ':</strong></label> 	<input type="text" name="amount" class="inp-amount" value="1" /> 	<input type="submit" value="' + currentLang['Přidat do košíku'] + '" class="btn-submit" /> 	<div class="compare"><a href="#" class="ico-compare">' + currentLang['přidat k porovnání'] + '</a></div> <div class="favorites"><a href="#" class="ico-favorite">' + currentLang['přidat do oblíbených'] + '</a></div> 	</div> 	</form> 	</div>';
	} else {
		this.template = '<div class="product"> 	<form action="" method="post"> 	<div class="inline-box"> ' + currentLang['Rozmery'] + ' <div class="inline-box dims-select-wrapper"></div> 	</div> 	<div class="inline-box" style="width: 200px;"> 	<div class="price-box"> ' + currentLang['Cena'] + ': <span class="price-value"></span></div> <span class="price-novat"></span> 	<div> ' + currentLang['Skladová dostupnost'] + ': <strong><span class="stock-amount">0</span> </strong></div> 	</div> 	<div class="inline-box" style="margin-right: 0;"> 	<input type="hidden" name="uri" value="" /> 	<input type="hidden" name="productId" value="" /> 	<label for="amount"><strong>' + currentLang['Počet ks'] + ':</strong></label> 	<input type="text" name="amount" class="inp-amount" value="1" /> 	<input type="submit" value="' + currentLang['Přidat do košíku'] + '" class="btn-submit" /> 	<div class="compare"><a href="#" class="ico-compare">' + currentLang['přidat k porovnání'] + '</a></div> 	</div> 	</form> 	</div>';
	}
};

ahorn.ProductDetailController.prototype.init = function()
{
	this.$dimensionsSelect = $('<select name="variant" id="selectVariant"> </select>');
	this.varBoxes = $('.product-buy-box .product');

	var that = this;
	var firstId;

	this.varBoxes.each(function()
	{
		var data = {};
		var $this = $(this);
		data.id = $this.find('input[name=productId]').val();
		//firstId = firstId || data.id;
		data.uri = $this.find('input[name=uri]').val();
		data.dimensions = $this.find('span.dimensions').text();
		data.stockAmount = $this.find('span.stock-amount').text();
		data.price = $this.find('span.price-value').text();
		data.pricenovat = $this.find('span.price-novat').text();
		data.from = $this.find('a.ico-favorite').attr('data-from');
		data.b2burl = $this.find('a.ico-favorite').attr('data-b2burl');

		that.productsData[data.id] = data;
		that.$dimensionsSelect.append('<option value="' + data.id + '">' + data.dimensions + '</option>');
	});
	firstId = $('.product-buy-box').find('input[name=selectedItem]').val();
	this.$productBox = $(this.template);

	this.varBoxes.eq(0).before(this.$productBox);
	this.varBoxes.remove();

	this.$productBox.find('.dims-select-wrapper').append(this.$dimensionsSelect);
	this.$dimensionsSelect.bind('change', $.proxy(this.change, this)).val(firstId);
	this.$dimensionsSelect.triggerHandler('change');

};

ahorn.ProductDetailController.prototype.change = function(event)
{
	var data = this.productsData[$(event.currentTarget).val()];
	this.$productBox.find('input[name=productId]').val(data.id);
	this.$productBox.find('input[name=uri]').val(data.uri);
	this.$productBox.find('span.dimensions').text(data.dimensions);
	this.$productBox.find('span.stock-amount').text(data.stockAmount);
	this.$productBox.find('span.price-value').text(data.price);
	this.$productBox.find('span.price-novat').text(data.pricenovat);
	this.$productBox.find('a.ico-compare').attr('href', '?addToCompare=' + data.id);
	this.$productBox.find('a.ico-favorite').attr('href', data.b2burl + '?action=favourites&addToFavourites=' + data.id + '&from=' + data.from);

	if(parseInt(data.price) == 0)
	{
		this.$productBox.find('input.btn-submit').hide();
	}
	else
	{
		this.$productBox.find('input.btn-submit').show();
	}
}

