
function validateRequired(f) {// обязательность полей опций
	var a = $(f).find('select');
	for (var i = 0; i < a.length; i++) {
		vIdx = a[i].selectedIndex;
		if (vIdx == 0) {
			alert('Не указаны опции товара.');
			a[i].focus();
			return false;
		}
	}

	a = $(f).find('input[type=radio]');
	var n = '';
	for (var i = 0; i < a.length; i++) {
		n = $(a[i]).attr('name');
		if (! $("input:radio[name='"+n+"']:checked").val() ) {
			alert('Не указаны опции товара.');
			a[i].focus();
			return false;
		}
	}

	return true;
}

$(document).ready(function(){
	$("div.pAdd").find("form").submit( function () {
		if (! validateRequired(this)) return false;

		pAdd($(this).serialize(), 'buy_now');
		return false;
	});
});


function ajxAddOptionsSubmit(f) {
	if (! validateRequired(f)) return false;
	pAdd($(f).serialize(),'add_product');
	$.prettyPhoto.close();
	return false;
}

function updateCartBox(s) {
	if (document.getElementById('shCartPlace')) {
		$('#shCartPlace').replaceWith(s);
	}
}

function pAdd(sd,a) {
	$(document).ready(function(){
		$.ajax({
			type: "POST",
			data: sd,
			cashe: false,
			url: "/_ajax.php?a="+a,
			dataType: "json",
			beforeSend: function (){
				$("body,input,a").css({cursor:"wait"});
			},
			success: function(data, textStatus){
				pAddResult (data);
			},
			complete: function(data, textStatus){
				$("body,input,a").css({cursor:""});
			}
		});
	});

	return false;
}

function pAddResult(ResObj) {

	var formDiv = "pAdd"+ResObj.products_id;

	if (ResObj.prod_options_form) {
		var optId = 'pAddOptForm'+ResObj.products_id;
		if (! (document.getElementById(optId))) {
			$('#'+formDiv).append('<div style="display:none;"><div id="'+optId+'">'+ResObj.prod_options_form+'</div></div>');
		}

		$.prettyPhoto.open('#'+optId);
		if($.browser.msie&&$.browser.version==6)setTimeout(function(){$('#pp_full_res select').css('visibility','visible')}, 2000);
		return false;
	}

	if (! ResObj.error) {
		var offs = $('#'+formDiv+' input[type=image]').offset();
		var addedDiv = 'pAdded'+ResObj.products_id;
		$('body').append('<div class="pAdded" id="'+addedDiv+'" style="position:absolute;z-index:9999;display:none;">Добавлен в <a href="/shopping_cart.php" title="Перейти на страницу корзины">корзину<br />(<b>'+ResObj.cart_total+'</b>)</a></div>');
		
		$('#'+addedDiv).css('top', (offs.top - $('#'+addedDiv).height()+20)+'px');
		$('#'+addedDiv).css('left', (offs.left-10)+'px');
		if($.browser.msie&&$.browser.version==6) $('#'+formDiv+' select').css('visibility','hidden');
		$('#'+addedDiv).fadeIn("slow", function () {
			setTimeout(function() {
				$('#'+addedDiv).fadeOut("slow", function () {
					$('#'+addedDiv).remove();
					if($.browser.msie&&$.browser.version==6) $('#'+formDiv+' select').css('visibility','visible');
				});
			}, 3000);
		});
		
		updateCartBox(ResObj.shopping_cart_box);
	}
	else if (ResObj.error == 'cookie_usage') {
		document.location.replace("/cookie_usage.php");
	}
	else {
		alert(ResObj.error);
	}
}

function pDel(pid) {
	var params = 'pid='+pid;

	$(document).ready(function(){
		$.ajax({
			type: "POST",
			data: params,
			cashe: false,
			url: "/_ajax.php?a=del_product",
			dataType: "json",
			beforeSend: function (){
				$("body,input,a").css({cursor:"wait"});
			},
			success: function(data, textStatus){
				updateCartBox(data.shopping_cart_box);
			},
			complete: function(data, textStatus){
				$("body,input,a").css({cursor:""});
			}
		});
	});

	return false;
}
