function HandleLink(parentID,link,displaylink) 
{
	// links are in one of the following formats:
	// 		cpe_60_0,CP___PAGEID=100
	// 		CPNEWWIN:WindowName^params@CP___
	// 			CPNEWWIN:child^top=110:left=130:ww=140:hh=150:tb=1:loc=1:dir=0:stat=1:mb=1:sb=1:rs=1@CP___PAGEID=3811,Adv-Search-2.cfm,1
	// displaylink is the server relative URL or fully qualified URL
	
	//added this var definition to fix bug identified on 11/13/06
	var   jsPageAuthorMode   =   0;
	
	if( jsPageAuthorMode == 0 )
	{
		windowname = "";
		windowparams = "";

		// "CPNEWWIN:" & NewWindowName & "^" & params & "@" & linkStruct.LinkURL; 
		pos = link.indexOf("CPNEWWIN:");
		if (pos != -1)
		{
			pos1 = link.indexOf ("^");
			windowname = link.substring (pos+9, pos1);
			pos2 = link.indexOf ("@");
			windowparams = link.substring (pos1 + 1, pos2);
			link = link.substring (pos2 + 1, link.length);
		}
		
		if( displaylink && displaylink != "" )
		{		
			if (windowname == "")
				window.location = displaylink;
			else
			{
				windowparams = FormatWindowParams(windowparams);
				window.open (displaylink, windowname, windowparams);
			}
		}
		else
		{
			targetLink = link;

			if (link.indexOf ("CP___") != -1)
			{

				httpPos = -1;
				commaPos = link.indexOf(",");
				if (commaPos != -1)
				{
					targetUrl = link.substr(commaPos + 1);
					if (targetUrl.indexOf("://") != -1 || targetUrl.indexOf("/") == 0)
					{
							httpPos = commaPos + 1;
					}		
				}
					
				if (httpPos != -1)
				{
					targetLink = link.substr(httpPos);

					commaPos = targetLink.indexOf(",");
					if (commaPos != -1)
						targetLink = targetLink.substr(0, commaPos);
				}
				else
					targetLink = jsDlgLoader + "?url=/commonspot/utilities/handle-link.cfm&thelink=" + link;
				
				if (windowname == "")
					window.location = targetLink;
				else
				{
					
					windowparams = FormatWindowParams(windowparams);
					window.open (targetLink + '?renderforprint=1', windowname, windowparams);
				}
			}
			else
			{
				//commaPos = link.indexOf(",");
				//if (commaPos != -1)
				//	link = link.substr(0, commaPos);

				if (windowname == "")
					window.location = link;
				else
				{
					windowparams = FormatWindowParams(windowparams);
					window.open (link, windowname, windowparams);
				}
			}
		}
	}
	else if( jsSessionPreviewON == 1 )
	{
		previewLink(link);
	}
	else
	{
		if( document.all[parentID] )
			document.all[parentID].click();
	}
}
