﻿// -----------------------------------------------------------------
//   Description:
//	 Class that handles events on behalf of the product grids
//   
//   Usage:
//   var g_productGridEventHandler = new ProductGridEventHandler();
//   subscribe(g_productGridEventHandler);
// -----------------------------------------------------------------

function ProductGridEventHandler()
{
}

ProductGridEventHandler.prototype.onProductSelected = function(productId, errorCode)
{
	var model = ProductModel.getInstance();
	var query = window.location.search.split("?").join("");
	var sessionId = "";
	var sessionIdQSVal = URLFactory.extractQueryStringValue(query, "mysid2");
	var partnerId = "";
	var partnerIdQSVal = URLFactory.extractQueryStringValue(query, "partner");
	var siteId = "";
	var siteIdQSVal = URLFactory.extractQueryStringValue(query, "siteid");
	var referrerURL = "";
	var referrerURLQSVal = URLFactory.extractQueryStringValue(query, "_UrlReferrer");
	var custLastVisit = "";
	var custLastVisitQSVal = URLFactory.extractQueryStringValue(query, "custlastvisit");

	if (sessionIdQSVal != "") {
		sessionId = "&mysid2=" + sessionIdQSVal;
	}

	if (partnerIdQSVal != "") {
		partnerId = "&partner=" + partnerIdQSVal;
	}

	if (siteIdQSVal != "") {
		siteId = "&siteid=" + siteIdQSVal;
	}

	if (referrerURLQSVal != "") {
		referrerURL = "&_UrlReferrer=" + referrerURLQSVal;
	}

	if (custLastVisitQSVal != "") {
		custLastVisit = "&_UrlReferrer=" + referrerURLQSVal;
	}

	var baseAction = "Item.aspx?GroupSKU=" + productId;
	if (errorCode) {
		baseAction += "&errorCode=" + errorCode;
	}
	window.location.href = baseAction + sessionId + partnerId + siteId + referrerURL + custLastVisit + "#p+" + (model.getPageNum() + 1);
};

