function initQty() {
	$$('.qty input[type=text]').each(function(el) {
		el.onfocus = function(e) {
			this.blur();
		};
		createSpin().injectTop(el.getParent());
	});
	$$('.sizes').each(function(el) {
		var sel = el.getElement('select');
		if (sel) {
			sel.onchange = changePrice;
			sel.onchange();
		}
	});
	if ($E('.price_foot')) {
		$E('.price_foot').getElement('button').onclick = addToCartClick;
		checkIfUnique();
	}
}

function checkIfUnique() {
	var items = $$('tbody .qty');
	if (items.length == 1) {
		var inputs = items[0].getElements('input');
		if (inputs.length>0 ) {
			inputs[0].value = inputs[1].value;
		}
	}
}

function addToCartClick() {
	var items = $$('.qty');
	for (var i=0; i<items.length; ++i) {
		if (items[i].getElements('input').length > 0) {
			if (items[i].getElements('input')[0].value > 0) {
				return true;
			}
		}
	}
	displayErrorMessage(errorMessage1, $E('.prices'));
	window.location.href="#js_errors";
	return false;
}

function displayErrorMessage(errorMessage, form) {
	var div = $('js_errors');
	if (!div) {
		var div = new Element('div', {
	    'id': 'js_errors',
	    'class': 'errors'
		});
		if (form == undefined) {
			form = $('address_form');
		}
		div.injectTop(form);
	}
	div.setText(errorMessage);
}

function changePrice() {
	var price = this.getParent().getParent().getElement('.prices').getElements('li')[this.selectedIndex];
	var all = this.getParent().getParent().getElement('.prices').getElements('.no_stock').length == this.options.length;
	var newPrice = this.getParent().getParent().getElement('.price');
	newPrice.empty();
	var priceClone = price.clone();
	if (priceClone.getElement('.no_stock')) {
		priceClone.getElement('.no_stock').remove();
	}
	newPrice.adopt(priceClone.getChildren());

	var buy = this.getParent().getParent().getElement('.buy');
	var noStock1 = price.getElement('.no_stock');
	var input = buy.getElement('input');
	var qty = this.getParent().getParent().getElement('.qty');
	var noStock2 = buy.getElement('.no_stock');
	if (noStock1) {
		if (input) {
			input.setStyle('display', 'none');
			qty.setStyle('display', 'none');
		}
		if (all) {
			if (noStock2) {
				noStock2.setStyle('display', 'block');
			} else {
				buy.adopt(noStock1.clone());
			}
		}
	} else {
		if (input) {
			input.setStyle('display', 'inline');
			qty.setStyle('display', 'block');
		}
		if (noStock2) {
			noStock2.setStyle('display', 'none');
		}
	}
}

function createSpin() {
	var addLot = function(){
		var inputs = $ES('input', this.getParent().getParent());
		inputs[0].value = parseInt(inputs[0].value) + parseInt(inputs[1].value);
	}
	var subLot = function(){
		var inputs = $ES('input', this.getParent().getParent());
		if (parseInt(inputs[0].value) > 0) {
			inputs[0].value = parseInt(inputs[0].value) - parseInt(inputs[1].value);
		}
	}
	var spin = new Element('div', {
		'class': 'spin'
	});
	var plus = new Element('img', {
		'src': '/wcsstore/ConsumerDirectStorefrontAssetStore/media/plus_button_new.gif',
		'alt': '',
    'events': {
			'mousedown': function (e) {
				addLot.attempt(null, this);
  	  }
    }
	});
	var minus = new Element('img', {
		'src': '/wcsstore/ConsumerDirectStorefrontAssetStore/media/minus_button_new.gif',
		'alt': '',
    'events': {
			'mousedown': function(e) {
				subLot.attempt(null, this);
	    }
    }
	});
	spin.adopt(plus);
	spin.adopt(minus);
	return spin;
}

function initGlossary() {
	$$('.description a').each(function(el){
		el.addEvent('click', function(e){
			new Event(e).stop();
			var frags = /#([^\?]+)$/.exec(this.href);
			$('glossary_win').setStyle('display', 'block');
			$('glossary').contentWindow.scrollToFrag(frags[1]);
		});
	});
}

function initPlayList() {
	var musicPath = '/images/music/';
	var musicExt = 'mp3';
	var playerURL = musicPath + 'player/player_mp3.swf';
	var pl = $E('.playlist');
	if (pl) {
		var ref = pl.getElement('ol').getProperty('id').substr(3,13);
		var index = 0;
		pl.getElements('li').each(function(el){
			++index;
			var play = new Element('a', {
				'href': musicPath+ref+'/'+index+'.'+ musicExt,
		    	'events': {
					'click': function(e) {
						new Event(e).stop();
						if (this.hasClass('playing')) {
							$('mp3player').SetVariable('player:jsPause', '');
							this.removeClass('playing');
							this.addClass('pause');
						} else {
							if (this.hasClass('pause')) {
								this.removeClass('pause');
							} else {
								$('mp3player').SetVariable('player:jsUrl', this.href);
							}
							$('mp3player').SetVariable('player:jsPlay', '');
							$$('.playlist a').removeClass('playing');
							this.addClass('playing');
						}
			    }
		    }
			});
			play.injectTop(el);
		});
		var player = new Element('div');
		player.setHTML('<object id="mp3player" type="application/x-shockwave-flash" data="'+playerURL+'" width="200" height="20"><param name="movie" value="'+playerURL+'" /><param name="flashvars" value="showvolume=1&showstop=1" /></object>');

		player.injectInside(pl);
	}
}

function initSizesTable() {
	var link = $E('#measures a');
	if (link) {
		link.addEvent('click', function(e){
			new Event(e).stop();
			var frags = /#([^\?]+)$/.exec(this.href);
			$('measures_win').setStyle('display', 'block');
			$('measures_frame').contentWindow.scrollToFrag(frags[1]);
		});
	}
}

function initCares() {
	$$('.cares > a ').each(function(el){
		el.addEvent('click', function(e){
			new Event(e).stop();
			this.getParent().getElement('.float_win').setStyle('display', 'block');
		});	
	});
}

function initFloatWin() {
	$$('.float_win .close_link').each(function(el){
		el.addEvent('click', function(e){
			new Event(e).stop();
			this.getParent().getParent().setStyle('display','none');
		});
	});
}

function initGuaranty() {
	var link = $E('#content_spot_1 a');
	if (link) {
		link.addEvent('click', function(e){
			new Event(e).stop();
			window.open(this.href, '_blank', 'height=500,width=600,status=1,toolbar=0,menubar=0,location=0,resizable=0,scrollbars=1');
		});
	}
}

window.addEvent('domready', initQty);
window.addEvent('domready', initFloatWin);
window.addEvent('domready', initGlossary);
window.addEvent('domready', initSizesTable);
window.addEvent('domready', initCares);
window.addEvent('domready', initGuaranty);
window.addEvent('domready', initPlayList);