function chShop(productid, vat, curr, variant)
{
	if (variant != '') {
		if (variant != 'defaultimg') {
			variant = document.forms["incart_"+productid].elements[variant].value;
			variant = variant.split("|");
			variant = variant[0];
		}
		imagevariants = document.forms["incart_"+productid].elements["imagevariants"].value;
		imagevariants = imagevariants.split("|");
		for(i=0; i < imagevariants.length; i++)
		{
			document.getElementById('chshop_variant_'+productid+'_'+imagevariants[i]).style.display = 'none';
		}
		document.getElementById('chshop_variant_'+productid+'_defaultimg').style.display = 'none';
		document.getElementById('chshop_variant_'+productid+'_'+variant).style.display = 'block';
		document.forms["incart_"+productid].elements["image"].value = document.forms["incart_"+productid].elements["image_"+variant].value;
	}
	if (variant != 'defaultimg') {
		foo = document.forms["incart_"+productid].variantkeys.value;
		price = document.forms["incart_"+productid].price.value;
		variantkeys = foo.split(",");
		for(i=0; i < variantkeys.length; i++)
		{
			foo = document.forms["incart_"+productid].elements[variantkeys[i]].value.split("|");
			priceopt = foo[2];
			if(priceopt) {
				operator = priceopt.slice(0, 1);
				if(operator == "+" || operator == "-") {
					price = eval(price)+eval(priceopt);
				} else {
					price = "" + priceopt;
				}
			}
		}
		price = ""+Math.round(price * vat * 100);
		price = price.substr(0,price.length-2)+"."+price.substr(price.length-2,2)+" "+curr;
		if(price.substr(0,1) == '.') {
			price = "0" + price;
		}
		document.getElementById("priceview_"+productid).firstChild.nodeValue=price;
	}
}

var chShopWiz =
{

	/**
	 * Variable wizard
	 * @param object
	 * @param string
	 * @param string
	 */
	wizard: function(el, command, id)
	{
		var table = $(id);
		var tbody = table.getFirst().getNext();
		var parent = $(el).getParent('tr');
		var rows = tbody.getChildren();

		Backend.getScrollOffset();

		switch (command)
		{
			case 'copy':
				var tr = new Element('tr');
				var childs = parent.getChildren();

				for (var i=0; i<childs.length; i++)
				{
					var next = childs[i].clone(true).injectInside(tr);
					next.getFirst().value = childs[i].getFirst().value;
				}

				tr.injectAfter(parent);
				break;

			case 'up':
				parent.getPrevious() ? parent.injectBefore(parent.getPrevious()) : parent.injectInside(tbody);
				break;

			case 'down':
				parent.getNext() ? parent.injectAfter(parent.getNext()) : parent.injectBefore(tbody.getFirst());
				break;

			case 'delete':
				(rows.length > 1) ? parent.destroy() : null;
				break;
		}

		rows = tbody.getChildren();

		for (var i=0; i<rows.length; i++)
		{
			var childs = rows[i].getChildren();

			for (var j=0; j<childs.length; j++)
			{
				var first = childs[j].getFirst();

				if (first.type == 'text' || first.type == 'select-one' || first.type == 'checkbox')
				{
					first.name = first.name.replace(/\[[0-9]+\]/ig, '[' + i + ']')
				}
			}
		}
	},

	/**
	 * Variable wizard
	 * @param object
	 * @param string
	 * @param string
	 */
	adrWizard: function(el, command, id)
	{
		var table = $(id);
		var tbody = table.getFirst().getNext();
		var parent = $(el).getParent('tr');
		var rows = tbody.getChildren();

		Backend.getScrollOffset();

		switch (command)
		{
			case 'copy':
				var tr = new Element('tr');
				var childs = parent.getChildren();

				for (var i=0; i<childs.length; i++)
				{
					var next = childs[i].clone(true).injectInside(tr);
					next.getFirst().value = childs[i].getFirst().value;
				}

				tr.injectAfter(parent);
				break;

			case 'up':
				parent.getPrevious() ? parent.injectBefore(parent.getPrevious()) : parent.injectInside(tbody);
				break;

			case 'down':
				parent.getNext() ? parent.injectAfter(parent.getNext()) : parent.injectBefore(tbody.getFirst());
				break;

			case 'delete':
				(rows.length > 1) ? parent.destroy() : null;
				break;
		}

		rows = tbody.getChildren();

		for (var i=0; i<rows.length; i++)
		{
			var childs = rows[i].getChildren();

			for (var j=0; j<childs.length; j++)
			{
				var first = childs[j].getFirst().getNext();

				if (first.type == 'text')
				{

					first.name = first.name.replace(/\[[0-9]+\]/ig, '[' + i + ']');

					field = first.getNext();
					field.name = field.name.replace(/\[[0-9]+\]/ig, '[' + i + ']');

					field = first.getNext().getNext();
					field.name = field.name.replace(/\[[0-9]+\]/ig, '[' + i + ']');

					field = first.getNext().getNext().getNext();
					field.name = field.name.replace(/\[[0-9]+\]/ig, '[' + i + ']');

					field = first.getNext().getNext().getNext().getNext();
					field.name = field.name.replace(/\[[0-9]+\]/ig, '[' + i + ']');
					
				}
			}
		}
	}

};
