var Display = new function()
{
	this.submitEmailList = function(input)
	{
		var action = input.value; // "Add" or "Remove"

		var form = input;
		while (form.parentNode && form.tagName.toLowerCase() != "form")
			form = form.parentNode;

		var section = form;
		while (section.parentNode && section.className.toLowerCase() != "section")
			section = section.parentNode;

		var sectionID = section.id;

		var emailInput = Page.getElementsByClass("emailListAddress", form)[0];
		var messageSpan = Page.getElementsByClass("emailListMessage", form)[0];
		var submitButtons = Page.getElementsByClass("emailListSubmit", form);

		var emailListAddresses = Page.getElementsByClass("emailListAddresses", section);
		if (!emailListAddresses || emailListAddresses.length != 2)
			emailListAddresses = null;

		emailInput.disabled = true;
		submitButtons[0].disabled = true;
		submitButtons[1].disabled = true;
		messageSpan.innerHTML = "Processing...";
		
		var xmlhttp =  new XMLHttpRequest();
		xmlhttp.open('POST', sectionID + '/updateList', true);
	
		xmlhttp.onreadystatechange = function()
		{
			if (xmlhttp.readyState == 4)
			{
				if (xmlhttp.status == 200 && Utility.toInteger(xmlhttp.responseXML.getElementsByTagName('result')[0].firstChild.data) != 0)
				{
					messageSpan.innerHTML = action + " successful!";

					// in editor mode only
					if (emailListAddresses)
					{
						// Remove
						for (var j = 0; j < 2; j++)
						{
							for (var i = emailListAddresses[j].options.length - 1; i >= 0; i--)
							{
								if (emailListAddresses[j].options[i].value == emailInput.value)
									emailListAddresses[j].remove(i);
							}
						}

						if (action == "Add")
						{
							for (var j = 0; j < 2; j++)
							{
								var optn = document.createElement("OPTION");
								optn.text = emailInput.value;
								optn.value = emailInput.value;
								emailListAddresses[j].options.add(optn);
							}
						}
					}
				}
				else
					messageSpan.innerHTML = "Error - could not " + action.toLowerCase() + "!";

				emailInput.value = "";
				emailInput.disabled = false;
				submitButtons[0].disabled = false;
				submitButtons[1].disabled = false;
			}
		}
	
		xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		xmlhttp.send('action=' + action.toLowerCase() + '&email=' + escape(emailInput.value));
	}
}