var productName = '';
var productVsNum;
var listName;
var isSponsoring = false;
var inPopup;

function productPopup(vs_no, prodName, obj)
{
	productVsNum = vs_no;
	productName = prodName;
	hidePopup();
	var prodPopup = document.getElementById('productPopup');
	if(obj){
		prodPopup.style.top = findPosTop(obj) + 'px';
	}
	setNewListName("");
	AddProduct.getShoppingLists(writeTable);
}

function writeTable(shoppingLists)
{
	var table = document.getElementById('productPopupTable');
	
	while(table.rows.length > 0)
	{
		table.deleteRow(0);
	}
	
	var row = table.insertRow(-1);
	var cell = row.insertCell(-1);
	cell.id = 'prodName';
	cell.innerHTML = '<p>' + productName + '</p>'
	
	for (i=0;i<shoppingLists.length;i++)
	{ 
		row = table.insertRow(-1);
		cell = row.insertCell(-1);
		cell.innerHTML = '<p><input type="checkbox" />' + shoppingLists[i] + '</p>';
		inputs = cell.getElementsByTagName("input");
		inputs[0].name = shoppingLists[i]
	}
	showPopup();
}

function prodPopupSubmit()
{
	var newListName = getNewListName();
	
	if(newListName != null && newListName != "")
	{
		AddProduct.createList(newListName, addProdToListsAndNew);
	}
	else
	{
		addProdToLists();
	}
}

function getNewListName()
{
	return document.getElementById('newListNameText').value;
}

function setNewListName(name)
{
	document.getElementById('newListNameText').value = name;
}

function addProdToListsAndNew(message)
{
	var popup = document.getElementById("productPopup");
	var inputs = popup.getElementsByTagName("input");
	var lists = new Array();
	var j = 0;
	
	if(message != null && message != "")
	{
		alert(message);
	}
	else
	{
		lists[0] = getNewListName();
		j = 1;
	}
	
	for(i=0;i<inputs.length;i++)
	{
		if(inputs[i].type == "checkbox" && inputs[i].checked == true)
		{
			lists[j] = inputs[i].name;
			j++;
		}
	}
	AddProduct.add2ShoppingList(productVsNum, lists, doneAddToLists);
}

function addProdToLists()
{
	var popup = document.getElementById("productPopup");
	var inputs = popup.getElementsByTagName("input");
	var lists = new Array();
	var j = 0;
	
	for(i=0;i<inputs.length;i++)
	{
		if(inputs[i].type == "checkbox" && inputs[i].checked == true)
		{
			lists[j] = inputs[i].name;
			j++;
		}
	}
	AddProduct.add2ShoppingList(productVsNum, lists, doneAddToLists);
}

function confirmAdd2ShoppingList(vs_no)
{
	productVsNum = vs_no;
	if(listName == null)
	{
		AddProduct.getCurrentShoppingList(isSponsoring, confirmAdd2ShoppingListPart2);
		 
	}
	else
	{
		confirmAdd2ShoppingListPart2(listName);
	}
}

function confirmAddVariation4Sponsoring()
{
	isSponsoring = true;
    inPopup = true;
	var objVs = document.getElementById('fldVS');
	if (objVs != null){
    	productVsNum =  objVs.value;
    }
	if(listName == null)
	{
		AddProduct.getCurrentShoppingList(isSponsoring, confirmAdd2ShoppingListPart2);
		 
	}
	else
	{
		confirmAdd2ShoppingListPart2(listName, true);
	}
}

function confirmAdd2SponsoringShoppingList(vs_no)
{
	 isSponsoring = true;	
	 confirmAdd2ShoppingList(vs_no);
}
 

function confirmAdd2ShoppingListPart2(shoppingListName)
{
	if(shoppingListName == null)
	{
		alert("No Shopping List is currently open. Select a Shopping List from 'Manage Shopping Lists' first.");
		return;
	}
	listName = shoppingListName;
	var r=confirm("Do you wish to add '" + productVsNum + "' to shopping list '" + shoppingListName + "'");
	if (r==true)
	{
		add2CurrentShoppingList(productVsNum);
	}
}

function add2CurrentShoppingList(vs_no)
{
	
	if (inPopup == true){
	  AddProduct.add2ShoppingList(vs_no, new Array(), isSponsoring, doneAddToCurrentListInOpener);
	}else{
		AddProduct.add2ShoppingList(vs_no, new Array(), isSponsoring, doneAddToCurrentList);
	}
	 
	
}

function doneAddToCurrentListInOpener(message)
{
	if(message != null && message != "")
	{
		alert(message);
	}
	else
	{
		var r=confirm("Added item " + productVsNum + " to shopping list '" + listName + "' \nDo you wish to view your shopping list?");
		if (r==true)
		{
			if (isSponsoring == false){
				window.opener.location.assign("/a2kWeb/viewShoppingList.a2k")
			}else{
				window.opener.location.assign("/a2kWeb/regProcessProdPack.a2k?action=viewShoppingList")
			}			
		} 
		window.close();
	}
}

function doneAddToCurrentList(message)
{
	if(message != null && message != "")
	{
		alert(message);
	}
	else
	{
		var r=confirm("Added item " + productVsNum + " to shopping list '" + listName + "' \nDo you wish to view your shopping list?");
		if (r==true)
		{
			if (isSponsoring == false){
				window.location.assign("/a2kWeb/viewShoppingList.a2k")
			}else{
				window.location.assign("/a2kWeb/regProcessProdPack.a2k?action=viewShoppingList")
			}
		}
	}
}

 

function doneAddToLists(message)
{
	if(message != null && message != "")
	{
		alert(message);
	}
	hidePopup();
}

function createNewList() {
	document.getElementById('newListName').style.display='inline';
	document.getElementById('createNewList').style.display='none';
}

function hidePopup()
{
	var prodPopup = document.getElementById('productPopup');
	prodPopup.style.visibility = 'hidden';
	document.getElementById('newListName').style.display='none';
	document.getElementById('createNewList').style.display='inline';
}

function showPopup()
{
	var prodPopup = document.getElementById('productPopup');
	prodPopup.style.visibility = 'visible';
}

function findPosTop(obj)
{
	var top = obj.offsetTop;
	
	while(obj.offsetParent){
		obj = obj.offsetParent;
		top += obj.offsetTop;
	}
	
	return top;
}

