
function pgvUpdated() {
	var data = null;
	if($prodVarForm) {
		data = "rs=1&" + $prodVarForm.serialize();
	} else if($subProdSelect) {
		data = "rs=2&spid=" + $subProdSelect.val();
	}
	$pgvInfoPanel.show().addClass("pgv-updated");
	$pgvInfoPanel.css("opacity", ".3");

	$.ajax({
		url:		"/pgv_resolve",
		dataType:	"json",
		data:		data,
		success:	function(data) {
			$pgvInfoPanel.css("opacity", "");
			
			if(data.error) {
				alert(data.error);
				return false;
			}
			if(data.content) $pgvInfoPanel.html(data.content);
			else if(data.origContent) $pgvInfoPanel.html(pgvInfoOrig);
			
			if(data.valid !== undefined) {
				if(data.valid) $(".prodvarsubmit").removeAttr("disabled").removeClass("disabled");
				else $(".prodvarsubmit").attr("disabled", "disabled").addClass("disabled");
			}
			return true;
		}
	});
}

var pgvProdId = null;
var pgvInfoOrig = "";

var $pgvInfoPanel = null;
var $prodVarForm = null;
var $subProdSelect = null;

$(document).ready(function() {
	$pgvInfoPanel = $(".pgv_info_panel");
	$subProdSelect = $(".product_pane_subproducts");
	$prodVarForm = $(".prodvarform");
	
	$(".prodvarsel > select, .product_pane_subproducts").each(function () {
		this.selectedIndex = $(this).children("option:enabled").first().index();
	});
	
	if(!$pgvInfoPanel.length) $pgvInfoPanel = null;
	if(!$subProdSelect.length) $subProdSelect = null;
	if(!$prodVarForm.length) $prodVarForm = null;
	
	if($pgvInfoPanel && ($subProdSelect || $prodVarForm)) {
		pgvInfoOrig = $pgvInfoPanel.html();
		pgvProdId = 0 | $("input[name=pid]").val();
		if($subProdSelect != null) $subProdSelect.change(pgvUpdated);
		$(".prodvarsel select").change(pgvUpdated);
		setTimeout(function(){pgvUpdated();}, 500);
	}
});
