function openWindow(clientId, calculatorType, serverURL, propertyList, winWidth, winHeight)
{
	if (clientId == null || clientId == "" ||
		calculatorType == null || calculatorType == "" ||
		serverURL == null || serverURL == "")
	{
		return;
	}
	
	if (winWidth == null)
	{
		winWidth = 500;
	}
	if (winHeight == null)
	{
		winHeight = 600;
	}
	var windowSize = "width=" + winWidth + ", height=" + winHeight;
	
	var w = window.open("", "", windowSize + ", left=400, top=100, location=no, resizable=yes, scrollbars=yes");
	
	if (!w)
	{
		return false;
	}
	
	var doc = w.document;
	
	var form = doc.createElement("form");
	form.setAttribute("method", "post");
	form.setAttribute("action", serverURL + "wsSaveChart.asmx/SaveCalculator");
	form.setAttribute("target", "_self");
	doc.body.appendChild(form);
	
	var field;
	field = createField(doc, "clientID", clientId);
	form.appendChild(field);
	
	field = createField(doc, "calculatorType", calculatorType);
	form.appendChild(field);
	
	field = createField(doc, "json", propertyList);
	form.appendChild(field);
	
	form.submit();
	
	return true;
}

function createField(doc, elementName, elementValue)
{
	var field;
	field = doc.createElement("input");
	field.setAttribute("type", "hidden");
	field.setAttribute("name", elementName);
	field.setAttribute("id", elementName);
	field.setAttribute("value", elementValue);
	
	return field;
}
