function initPage()
{

}

function PositionX(elementid) {
    var iReturnValue = 0;
    while( elementid != $('content') )
    {
        iReturnValue += elementid.offsetLeft;
        if (isNaN(iReturnValue)) { iReturnValue = 0; }
        elementid = elementid.offsetParent;
    }
    return iReturnValue;
}
   
function PositionY (elementid) {
    var iReturnValue = 0;
    while( elementid != $('content') )
    {
        iReturnValue += elementid.offsetTop;
        if (isNaN(iReturnValue)) { iReturnValue = 0; }
        elementid = elementid.offsetParent;
    }
    return iReturnValue;
}

function getPositionX(element) {
	if (IsIE(navigator)) {
		return PositionX(element);
	} else {
		return element.getPosition().x;
	}
}
function getPositionY(element) {
	if (IsIE(navigator)) {
		return PositionY(element);
	} else {
		return element.getPosition().y;
	}
}

function IsIE (navigator) {
   if (navigator.appName == 'Microsoft Internet Explorer') { return true; } else { return false; }
}
  
function openPopup(button,elementIndex)
{

	if (elementIndex == null) {
		elementIndex = document.getElementById("popupElementIndex").value;
	}
	if (button == null) {
		hideAll();
		button = document.getElementsByName("element-name-link")[elementIndex];
	}
	
	var element = elements[elementIndex];
	var address = element.address;
	var popup =  document.getElementById('popup01');
	var fader = document.getElementById('fader');
	var image = element.image;

	document.getElementById("popupElementIndex").value = elementIndex;
	
	var popupText = document.getElementById("popupText");
	
	popupText.innerHTML = "";
	popupText.innerHTML += "<h3>" + element.estName + "</h3>";
	if (image != '') {
		popupText.innerHTML += "<img style='border:3px double #ccc;' align=right border='2px' width='90px' hspace=5 vspace=5 src='" + image + "'>";
	}
	popupText.innerHTML += "<p><span class=\"element-description\">" + element.desc + "</span></p>";
	if (element.elementAddressUsed == 'true') {
		popupText.innerHTML += "<address>" + element.address + "</address>";
	}
	if (element.elementPhoneUsed == 'true') {
		popupText.innerHTML += "<em class=\"contact\">" + element.estPhone + "&nbsp; <a target=\"_blank\" href=\"" + element.parsedUrl + "\">" + element.estUrl + "</a></em>";
	}
	fader.style.display = "block";
	popup.style.display = "block";
	fader.style.height = document.documentElement.scrollHeight+'px';
	if (element.elementButtonsUsed == 1) {
	var popupReserveButton = document.getElementById("popup-reserve-button");
	var buttonLabel = element.buttonLabel;
	if ((element.reserveButtonUsed == 1) && (element.reserveUrl != "")) {
		popupReserveButton.innerHTML = "<a target=\"_blank\" href=\"" + element.reserveUrl + "\" class=\"btn-reserve\">" + buttonLabel + "</a>";
	} else {
		popupReserveButton.innerHTML = "";
	}
	
	var popupSocialMediaButtons = document.getElementById("popup-social-media-buttons");
	var shareHTML = "";
	if (element.twitterUsed == 1) {
		shareHTML += "<li><a target=\"_blank\" mc_label=\"Share:Twitter:\" href='http://twitter.com/intent/tweet?status=" + 
						element.twitterText + 
						" (" + article.shortUrl + ").' ><img src=\"" + contextPath + "/images/ico-action-3.gif\" alt=\"Share: Tweet This\" /></a></li>\n";
	}
	if (element.facebookUsed == 1) {
		shareHTML += "<li><a target=\"_blank\" mc_label=\"Share:Facebook:\" href=\"http://www.facebook.com/share.php?u=" + article.shareUrl + "?elementId=" + 
						element.id + 
						"&t=" + article.shareMsg + "\"><img src=\"" + contextPath + "/images/ico-action-4.gif\" alt=\"Share: Facebook\" /></a></li>\n";
	}
	popupSocialMediaButtons.innerHTML = shareHTML;
	
	var popupButtons = document.getElementById("popup-buttons");
	var buttonHTML = "";
	buttonHTML += "<li><a href=\"javascript:void\" onclick=\"openElementInvitePopup(null," + elementIndex + ",null)\"><img src=\"" + contextPath + "/images/tt_invite1.png\" alt=\"\" /></a></li>";
	if (element.elementAddressUsed == 'true') {
		buttonHTML += "<li><a href=\"javascript:void\" onclick=\"openElementMapPopup(null," + elementIndex + ",null)\"><img src=\"" + contextPath + "/images/tt_map1.png\" alt=\"\" /></a></li>";
	}
	popupButtons.innerHTML = buttonHTML;
	}
	
	if (element.optionsUsed == 1) {
		var popupOptionsIcons = document.getElementById("popup-options-icons");
		var optionsHTML = "";
		if (element.option01 == 1) {
			var option01Icon = element.option01Icon; 
			optionsHTML += "<img src=\"" + contextPath + "/images/" + option01Icon + "\" vspace=\"5px\">";
		}
		if (element.option02 == 1) {
			var option02Icon = element.option02Icon; 
			optionsHTML += "<img src=\"" + contextPath + "/images/" + option02Icon + "\" vspace=\"5px\">";
		}
		popupOptionsIcons.innerHTML = optionsHTML;
	}

        var canvas = document.getElementById('map_canvas');
 
	if (element.elementAddressUsed == 'true') {
                if (canvas != null) {
                        canvas.style.display='block';
                }
		showAddress(element,"map_canvas",16,false);
	}
	if (element.elementAddressUsed != 'true') {
		if (canvas != null) {
			canvas.style.display='none';
		}
	}

	positionPopup(button,popup);
}

function openMapPopup(button,caller)
{
	var popup =  document.getElementById('popup03');
	var fader = document.getElementById('fader');
	
	fader.style.display = "block";
	popup.style.display = "block";
	fader.style.height = document.documentElement.scrollHeight+'px';

	showAddresses(elements,"map_canvas03",12);

	positionPopup(button,popup);
	
}

function hide () {
	document.getElementById('popup01').style.display='none';
	document.getElementById('fader').style.display='none';
}
function hide02 () {
	document.getElementById('popup02').style.display='none';
	document.getElementById('fader').style.display='none';
}
function hide03 () {
	document.getElementById('popup03').style.display='none';
	document.getElementById('fader').style.display='none';
}
function hide04 () {
	document.getElementById('popup04').style.display='none';
	document.getElementById('fader').style.display='none';
}

function hideAll () {
	hide();hide02();hide03();hide04();
}


function openElementMapPopup(button,elementIndex,caller)
{
	if (elementIndex == null) {
		elementIndex = document.getElementById("popupElementIndex").value;
	}
	if (button == null) {
		hideAll();
		button = document.getElementsByName("element-name-link")[elementIndex];
	}
	var element = elements[elementIndex];
	var address = element.address;
	var popup =  document.getElementById('popup04');
	var fader = document.getElementById('fader');
	
	var popupText = document.getElementById("popupText04");
	popupText.innerHTML = "<h4><nobr><span class='multipart-heading' onclick='openPopup(null,null)'>" + element.estName + "</span></nobr></h4>";
	popupText.innerHTML += "<address>" + element.address + "</address>";

	fader.style.display = "block";
	popup.style.display = "block";
	fader.style.height = document.documentElement.scrollHeight+'px';

	var map = showAddress(element,"map_canvas04",15,true);
	map.setUIToDefault();
	map.checkResize();
	
	positionPopup(button,popup);

}

function openElementInvitePopup(button,elementIndex,caller)
{
	var popup =  document.getElementById('popup02');
	var fader = document.getElementById('fader');
	var header = document.getElementById('invite-popup-heading');
	if (elementIndex == null) {
		elementIndex = document.getElementById("popupElementIndex").value;
	}
	if (button == null) {
		hideAll();
		button = document.getElementsByName("element-name-link")[elementIndex];
	}
	var element = elements[elementIndex];
	var elementName = element.estName;
	var elementIdInput = document.getElementById('elementId');
	elementIdInput.value = element.id;
		
	header.innerHTML = "<h3><nobr><span class='multipart-heading' onclick='openPopup(null," + elementIndex + ")'>" + elementName + "</span></nobr><br></h3><h4>Invite Your Friends to check this out.</h4>";
	
	document.Form1.emailForwardingNote.value = "<table border=0 width=100%>";
	document.Form1.emailForwardingNote.value += "<tr><td align=center style=\"font:16px Georgia, 'Times New Roman', Times, serif; color:#231f20;\"><b>" + elementName + "</b></td></tr>";
	document.Form1.emailForwardingNote.value += "<tr><td align=center style=\"font:12px Georgia, 'Times New Roman', Times, serif; color:#231f20;\">" + element.address + "</td></tr>";
	document.Form1.emailForwardingNote.value += "<tr><td align=center style=\"font:12px Georgia, 'Times New Roman', Times, serif; color:#231f20;\"><a target=\"_blank\" href=\"" + element.parsedUrl + "\">" + element.estUrl + "</a></td></tr>";
	document.Form1.emailForwardingNote.value += "<tr><td style=\"font:12px Georgia, 'Times New Roman', Times, serif; color:#231f20;\">" + element.desc + "</td></tr>";
	document.Form1.emailForwardingNote.value += "</table>";
	
	fader.style.display = "block";
	popup.style.display = "block";
	fader.style.height = document.documentElement.scrollHeight+'px';
	
	positionPopup(button,popup);

}

function positionPopupOld(button,popup) {
	// determine verticial positioning limits
	var positionY = getPositionY(button); //button.getPosition().y;
	var scrollY = window.getScroll().y;
	var clientHeight = popup.clientHeight;
	var top = positionY - clientHeight;
//	alert("positionY: " + positionY + ", scrollY: " + scrollY + ", clientHeight: " + popup.clientHeight + ", top: " + top)
	if ((positionY - scrollY) < clientHeight) { top = scrollY; }

	// determine horizontal positioning limits
	var positionX = getPositionX(button) //button.getPosition().x;
	var scrollX = window.getScroll().x;
	var popupWidth = popup.clientWidth;
	var windowWidth = window.getSize().x;
	var rightLimit = windowWidth - scrollX;

	// initialize positioning
	var left = (windowWidth / 2) - (popupWidth / 2);
	var right = (left + popupWidth);

	// adjust position for scrolling
	if (right > rightLimit)  { left = rightLimit - popupWidth; }
	if (left < 0) { left = 0; }
	if (left < scrollX) { left = scrollX; }
	
	//position popup
	popup.style.marginLeft = left + 'px';			
	popup.style.marginTop =  top + 'px';	
}


jQuery.fn.center = function ()
{
    this.css("position","absolute");
    this.css("top", ( jQuery(window).height() - this.height() ) / 2+jQuery(window).scrollTop() + "px");
    var windowWidth = jQuery(window).width();
    var container = document.getElementById('category');
    if (container != null) { windowWidth = jQuery(container).width(); }
    this.css("left", (windowWidth/2) - (this.width()/2)  + "px");
    return this;
}

function centerPopup (popup) {
    this.css("position","absolute");
    this.css("top", ( jQuery(window).height() - this.height() ) / 2+jQuery(window).scrollTop() + "px");
    var windowWidth = jQuery(window).width();
    var container = document.getElementById('category');
    if (container != null) { windowWidth = jQuery(container).width(); }
    this.css("left", (windowWidth/2) - (this.width()/2)  + "px");
    return this;
}



function positionPopup(button,popup) {
	centerPopup(popup);
}

function initializeEmbeddedPopupMap2(entry) {
 if (GBrowserIsCompatible()) {
	var address = entry.address;
	geocoder.getLatLng(address,
		function(point) {
		  if (!point) {
			alert(address + " not found");
		  } else {
			map.setCenter(point, 13);
			var marker = new GMarker(point);
			map.addOverlay(marker);
		  }
		}
	)
  }
}


function getElementLatitude(element) {
	var geocoding = element.geocoding;
	var geocode_array = geocoding.split(",");
	var latitude = geocode_array[2];
	return parseFloat(latitude);
}

function getElementLongitude(element) {
	var geocoding = element.geocoding;
	var geocode_array = geocoding.split(",");
	var longitude = geocode_array[3];
	return parseFloat(longitude);
}
	
function CenterPointForElements(elements) {
	var totalLat = 0;
	var totalLng = 0;
	var totalCnt = 0;
	for (var i in elements) {
		var element = elements[i];
		if (element.address) {
			var latitude = getElementLatitude(element);
			var longitude = getElementLongitude(element);
			totalLat = totalLat + latitude;
			totalLng = totalLng + longitude;
			totalCnt = totalCnt + 1;
		}
	}
	this.latitude = totalLat / totalCnt;
	this.longitude = totalLng / totalCnt;
}

function showAddress(element,divName,zoomLevel,showInfoPopup) {
	var map = new GMap2(document.getElementById(divName));
	var address = element.address;
	if (address) {
		var latitude = getElementLatitude(element);
		var longitude = getElementLongitude(element);
		var point = new GLatLng(latitude, longitude);	
		map.setCenter(point, zoomLevel);
		var marker = createEntryMarkerAtPoint(element, point, false);
		map.addOverlay(marker);
		if (showInfoPopup) {
			addEntryInfoToMarker(element, marker, false);
		}
		map.checkResize();
	}
	return map;
}

function showAddresses(elements,divName,zoomLevel) {
        var map = new GMap2(document.getElementById(divName));
        map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());
        var center = new CenterPointForElements(elements);
        var point = new GLatLng(center.latitude, center.longitude);
        map.setCenter(point, zoomLevel);
        var bounds = null;
        for (var i in elements) {
                var element = elements[i];
                var address = element.address;
                if (address) {
                        var latitude = getElementLatitude(element);
                        var longitude = getElementLongitude(element);
                        var point = new GLatLng(latitude, longitude);
                        var marker = createEntryMarkerAtPoint(element, point, false);
                        map.addOverlay(marker);
                        // Create/Expand a boundary that encompasses all marker points
                        if (! bounds) {
                                bounds = new GLatLngBounds(point, point);
                        } else {
                                bounds.extend(point);
                        }
                        addEntryInfoToMarker(element, marker, false);
                }
        }
        var center = bounds.getCenter();
        var zoomLevel = Math.min("12",map.getBoundsZoomLevel(bounds));
        map.setCenter(center, zoomLevel);
        map.checkResize();
        return map;
}

function updateMapForEditionVenues(dropdown) {
	var selectedIndex = dropdown.selectedIndex;
	var options = dropdown.options;
	var option = options[selectedIndex];
	var editionName = option.value;
	if (editionName == "show_all") {
		showAddresses(elements,"map_canvas",12);
		} else {
		showEditionAddresses(elements,editionName,"map_canvas",12);
		}
}

function updateMapForGenericFilter(dropdown) {
	var selectedIndex = dropdown.selectedIndex;
	var options = dropdown.options;
	var option = options[selectedIndex];
	var filterValue = option.value;
	if (filterValue == "show_all") {
		showAddresses(elements,"map_canvas",12);
		} else {
		showGenericFilterAddresses(elements,filterValue,"map_canvas",12);
		}
}

function openEditionBasedMapPopup(edition,button,caller)
{
	var selectedIndex = editionDropdown.selectedIndex;
	var options = editionDropdown.options;
	var option = options[selectedIndex];
	var editionName = option.value;

	var popup =  document.getElementById('popup03');
	var fader = document.getElementById('fader');
	
	fader.style.display = "block";
	popup.style.display = "block";
	fader.style.height = document.documentElement.scrollHeight+'px';

	showEditionAddresses(elements,editionName,"map_canvas03",12);

	positionPopup(button,popup);
	
}

function openInvitePopup(button)
{

	var popup =  document.getElementById('popup02');
	var fader = document.getElementById('fader');
	var header = document.getElementById('invite-popup-heading');
	
	header.innerHTML = "<h4>Invite Your Friends to visit this page</h4>";
	document.Form1.emailForwardingNote.value = "";
	
	fader.style.display = "block";
	popup.style.display = "block";
	fader.style.height = document.documentElement.scrollHeight+'px';
	
	positionPopup(button,popup);
}

function openGenericFilterBasedMapPopup(edition,button,caller)
{
	var selectedIndex = filterDropdown.selectedIndex;
	var options = filterDropdown.options;
	var option = options[selectedIndex];
	var editionName = option.value;

	var popup =  document.getElementById('popup03');
	var fader = document.getElementById('fader');
	
	fader.style.display = "block";
	popup.style.display = "block";
	fader.style.height = document.documentElement.scrollHeight+'px';

	showGenericFilterAddresses(elements,editionName,"map_canvas03",12);

	positionPopup(button,popup);
	
}

function showEditionAddresses(elements,editionName,divName,zoomLevel) {
        var map = new GMap2(document.getElementById(divName));
		map.setUIToDefault();
        //map.addControl(new GSmallMapControl());
		//map.addControl(new GSmallZoomControl());
		//GOverviewMapControl 
		//GHierarchicalMapTypeControl 
		//GSmallZoomControl3D 
		//map.addControl(new GScaleControl());
		//map.addControl(new GNavLabelControl());
        //map.addControl(new GMapTypeControl());
        var center = new CenterPointForElements(elements);
        var point = new GLatLng(center.latitude, center.longitude);
        map.setCenter(point, zoomLevel);
        var bounds = null;
        for (var i in elements) 
		{
			var element = elements[i];
			if (element.editionName == editionName) 
			{
				var address = element.address;
				if (address) 
				{
						var latitude = getElementLatitude(element);
						var longitude = getElementLongitude(element);
						var point = new GLatLng(latitude, longitude);
						var marker = createEntryMarkerAtPoint(element, point, false);
						map.addOverlay(marker);
						// Create/Expand a boundary that encompasses all marker points
						if (! bounds) {
								bounds = new GLatLngBounds(point, point);
						} else {
								bounds.extend(point);
						}
						addEntryInfoToMarker(element, marker, false);
				}
			}
        }
        var center = bounds.getCenter();
        var zoomLevel = Math.min("12",map.getBoundsZoomLevel(bounds));
        map.setCenter(center, zoomLevel);
        map.checkResize();
        return map;
}

function showGenericFilterAddresses(elements,filterValue,divName,zoomLevel) {
        var map = new GMap2(document.getElementById(divName));
		map.setUIToDefault();
        var center = new CenterPointForElements(elements);
        var point = new GLatLng(center.latitude, center.longitude);
        map.setCenter(point, zoomLevel);
        var bounds = null;
        for (var i in elements) {
                var element = elements[i];
				if (element.filterGenericValue == filterValue) {
                var address = element.address;
                if (address) {
                        var latitude = getElementLatitude(element);
                        var longitude = getElementLongitude(element);
                        var point = new GLatLng(latitude, longitude);
                        var marker = createEntryMarkerAtPoint(element, point, false);
                        map.addOverlay(marker);
                        // Create/Expand a boundary that encompasses all marker points
                        if (! bounds) {
                                bounds = new GLatLngBounds(point, point);
                        } else {
                                bounds.extend(point);
                        }
                        addEntryInfoToMarker(element, marker, false);
                }
				}
        }
        var center = bounds.getCenter();
        var zoomLevel = Math.min("12",map.getBoundsZoomLevel(bounds));
        map.setCenter(center, zoomLevel);
        map.checkResize();
        return map;
}

function displayNamedDivs(name) {
 var divs = document.getElementsByName(name);
 for (var i in divs) {
  var div = divs[i];
  if (div.name == name) { div.style.display='block'; } else { div.style.display='none'; }
  }
 }
 
 function isEmpty(aTextField) {
   if ((aTextField.value.length==0) ||
   (aTextField.value==null)) {
      return true;
   }
   else { return false; }
}	

 
function clearMultipartInviteForm() {
 	document.Form1.reset();
}

function validateMultipartInviteForm(inForm)
{ 
	var valid = true;
		
	errorText = "";
	if (isEmpty(inForm.senderName))
	{
		errorText += 'Please enter your name.';
		return;
	}
	document.getElementById("senderEmail").value = trim(document.getElementById("senderEmail").value);
	if (!isValidEmail(inForm.senderEmail.value))
	{
		errorText += 'a valid email address is required.';
		return;
	}
	var sendToCnt = 0;
	
	if ((! isEmpty(inForm.recipientEmail1)) || (! isEmpty(inForm.recipientName1))) {
		if (!isValidEmail(inForm.recipientEmail1.value))
		{
			errorText += 'a valid email address is required for friend #1';
			return;
		}
		if (isEmpty(inForm.recipientName1))
		{
			errorText += 'Please enter a name for friend #1.';
			return;
		}
		sendToCnt = sendToCnt + 1;
	}
	
	if ((! isEmpty(inForm.recipientEmail2)) || (! isEmpty(inForm.recipientName2))) {
		if (!isValidEmail(inForm.recipientEmail2.value))
		{
			errorText += 'a valid email address is required for friend #2';
			return;
		}
		if (isEmpty(inForm.recipientName2))
		{
			errorText += 'Please enter a name for friend #2.';
			return;
		}
		sendToCnt = sendToCnt + 1;
	}
	
	if ((! isEmpty(inForm.recipientEmail3)) || (! isEmpty(inForm.recipientName3))) {
		if (!isValidEmail(inForm.recipientEmail3.value))
		{
			errorText += 'a valid email address is required for friend #3';
			return;
		}
		if (isEmpty(inForm.recipientName3))
		{
			errorText += 'Please enter a name for friend #3.';
			return;
		}
		sendToCnt = sendToCnt + 1;
	}
	
	if ((! isEmpty(inForm.recipientEmail4)) || (! isEmpty(inForm.recipientName4))) {
		if (!isValidEmail(inForm.recipientEmail4.value))
		{
			errorText += 'a valid email address is required for friend #4';
			return;
		}
		if (isEmpty(inForm.recipientName4))
		{
			errorText += 'Please enter a name for friend #4.';
			return;
		}
		sendToCnt = sendToCnt + 1;
	}
	
	if ((! isEmpty(inForm.recipientEmail5)) || (! isEmpty(inForm.recipientName5))) {
		if (!isValidEmail(inForm.recipientEmail5.value))
		{
			errorText += 'a valid email address is required for friend #5';
			return;
		}
		if (isEmpty(inForm.recipientName5))
		{
			errorText += 'Please enter a name for friend #5.';
			return;
		}
		sendToCnt = sendToCnt + 1;
	}
	
	if (sendToCnt == 0) 
	{
		errorText += 'Please enter the name and email address for at least one friend.';
		return;
	}
	
	if (errorText != '')
	{
		valid = false;
	}

	return valid;
}

function processVoteTalleyAjaxCall(elementId) {
	var articleId = document.Form1.id.value;
	//var elementId = document.Form1.elementId.value;
//	alert(elementId);
	
	var url = document.getElementById('multipart_invite_url').value;

	var jsonRequest = new Request.JSON(
						{
							url: 		url, 
							onComplete: ajaxParseVoteTalley
						}).post(
							{
								'id'					: articleId,
								'elementId'				: elementId,
								'ajaxBehavior'			: true,
								'actionType'			: 'talleyVote'
							})

	return jsonRequest;
}

function ajaxParseVoteTalley(responseText)
{ 
	//alert(responseText);
}

function processElementVote(elementId,sweepstakesId) {
	processVoteTalleyAjaxCall(elementId);
	//var sweepstakesId = 100;
	var confirmation = confirm("Thank you for your vote\nWould you like to enter the Sweepstakes?");
	//alert('confirmation=' + confirmation);
	if (confirmation) {
		var url = "/nyc/sweepstakes.htm?sweepstakesID=" + sweepstakesId;
		window.open(url);
	}
}

function processMultipartInviteAjaxCall() {
	var articleId = document.Form1.id.value;
	var elementId = document.Form1.elementId.value;
	var senderName = document.Form1.senderName.value;
	var senderEmail = document.Form1.senderEmail.value;
	var emailForwardingNote = document.Form1.emailForwardingNote.value;
	var emailSubjectText = document.Form1.emailSubjectText.value;
	var recipientName1 = document.Form1.recipientName1.value;
	var recipientEmail1 = document.Form1.recipientEmail1.value;
	var recipientName2 = document.Form1.recipientName2.value;
	var recipientEmail2 = document.Form1.recipientEmail2.value;
	var recipientName3 = document.Form1.recipientName3.value;
	var recipientEmail3 = document.Form1.recipientEmail3.value;
	var recipientName4 = document.Form1.recipientName4.value;
	var recipientEmail4 = document.Form1.recipientEmail4.value;
	var recipientName5 = document.Form1.recipientName5.value;
	var recipientEmail5 = document.Form1.recipientEmail5.value;
	
	var url = document.getElementById('multipart_invite_url').value;

	var jsonRequest = new Request.JSON(
						{
							url: 		url, 
							onComplete: ajaxParseMultipartInvite
						}).post(
							{
								'id'					: articleId,
								'elementId'				: elementId,
								'ajaxBehavior'			: true,
								'actionType'			: 'sendInvite',
								'senderName'   			: senderName,
								'senderEmail'   		: senderEmail,	
								'emailForwardingNote'	: emailForwardingNote,
								'emailSubjectText'		: emailSubjectText,								
								'recipientName1'   		: recipientName1,
								'recipientEmail1'   	: recipientEmail1,							
								'recipientName2'   		: recipientName2,
								'recipientEmail2'   	: recipientEmail2,							
								'recipientName3'   		: recipientName3,
								'recipientEmail3'   	: recipientEmail3,							
								'recipientName4'   		: recipientName4,
								'recipientEmail4'   	: recipientEmail4,							
								'recipientName5'   		: recipientName5,
								'recipientEmail5'   	: recipientEmail5							
							})

	document.getElementById("invite-submit-button").style.display='none';
	document.getElementById("invite-status-text").style.display='block';
	clearMultipartInviteForm();
	
	return jsonRequest;
}


function submitMultipartInvite()
{
	if ( !validateMultipartInviteForm(document.Form1) )
	{
		// slap them around...
		alert(errorText+ '\n');
		return;
	}
	
	processMultipartInviteAjaxCall();

}

function ajaxParseMultipartInvite(responseText)
{ 
	hide02();
	document.getElementById("invite-submit-button").style.display='block';
	document.getElementById("invite-status-text").style.display='none';
	alert('Successfully sent email!');
}

function  autoEllipseText(element, text, width)
{
   element.innerHTML = '<span id="ellipsisSpan" style="white-space:nowrap;">' + text + '</span>';
   inSpan = document.getElementById('ellipsisSpan');
   if(inSpan.offsetWidth > width)
   {
      var i = 1;
      inSpan.innerHTML = '';
      while(inSpan.offsetWidth < (width) && i < text.length)
      {
         inSpan.innerHTML = text.substr(0,i) + '...';
         i++;
      }
               
      returnText = inSpan.innerHTML;
      element.innerHTML = '';
      return returnText;
   }
   return text;
} 

