var oldClass;

function highlightRow(row)
{
	oldClass= row.className;
	row.className = 'highlightedRow';
}

function restoreRow(row)
{
	row.className = oldClass;
}

function createHelpPopup(anchor, id)
{ 
	var header = document.getElementById(id + '_header').innerHTML;
	var content = document.getElementById(id + '_content').innerHTML;

	var oPanel = new YAHOO.widget.Panel("myPanel", 
	{ 	
		width:"250px", 
		visible:false, 
		draggable:true,
		height:"160px",
		close:true, 
		constraintoviewport:true, 
		context:[anchor,'bl','bl'],
		effect: {effect:YAHOO.widget.ContainerEffect.FADE, duration: 0.5}
	});
	
	oPanel.setHeader(header);
	oPanel.setBody(content);
	oPanel.render("popupContainer");
	oPanel.show();
}

function createPopup(anchor, id)
{ 
	var header = document.getElementById(id + '_header').innerHTML;
	var content = document.getElementById(id + '_content').innerHTML;

	var oPanel = new YAHOO.widget.Panel("myPanel", 
	{ 	
		width:"440px", 
		visible:false, 
		draggable:true,
		height:"230px",
		close:true, 
		constraintoviewport:true, 
		context:[anchor,'bl','bl'],
		effect: {effect:YAHOO.widget.ContainerEffect.FADE, duration: 0.5}
	});
	
	oPanel.setHeader(header);
	oPanel.setBody("<div class=\"homePageBox\">" + content + "<div>");
	oPanel.render("popupContainer");
	oPanel.show();
}

function loadMemberDetails(memberID)
{
	ajaxEngine.registerRequest('loadMemberDetails', 'secure/loadMemberDetails.do');
	ajaxEngine.registerAjaxObject('memberUpdater', new MemberUpdater());
	ajaxEngine.sendRequest('loadMemberDetails', 'memberID=' + memberID);
}

var MemberUpdater = Class.create();

MemberUpdater.prototype = 
{
   initialize: function() 
   {

   },

   ajaxUpdate: function(ajaxResponse) 
   {
   		/* IE RETURNS 1 FOR LENGTH AND EXPECTS NODE [0] FIREFOX RETURNS 3 AND EXPECTS NODE [1] */
   		
   		if(ajaxResponse.childNodes.length == 1)
   		{
      		this.setMember(ajaxResponse.childNodes[0]);
      	}
      	
      	else
      	{
      		this.setMember(ajaxResponse.childNodes[1]);
      	}
      	
   },

   setMember: function(member) 
   {
   		var relativeElement = "loadMemberDetailsLink" + member.getAttribute('memberID');
   		
	   	var oPanel = new YAHOO.widget.Panel("memberDetailsPanel", 
		{ 	
			width:"300px", 
			visible:false, 
			draggable:false,
			//height:"170px",
			close:true, 
			constraintoviewport:true, 
			context:[relativeElement,'bl','bl'],
			effect: {effect:YAHOO.widget.ContainerEffect.FADE, duration: 0.5}
		});
	
		oPanel.setHeader(this.buildHeaderString(member));
		oPanel.setBody(this.buildDetailsString(member));
		oPanel.render("popupContainer");
		oPanel.show();
   },
  
   buildHeaderString : function(member)
   {
   		return "<div class=\"popupHeader\" style=\"padding-left:4px;\">" 
   				/*+ "<img style=\"\" src=\"images/icons/personal_card_32_hot.png\" />"*/
   					+ member.getAttribute("forename") + " " + member.getAttribute("surname") + "</div>";
   },
    
   buildDetailsString : function(member)
   {
   		var details = "<table class=\"popupDetailsTable\">";
   		
   		// HOME PHONE
   		var homePhone;
   		if(member.getAttribute("homePhone") == '')
   		{
   			homePhone = "Unknown";
   		}
   		else
   		{
   			homePhone = member.getAttribute("homePhone");
   		}
   		
   		//WORK PHONE
   		var workPhone;
   		
   		if(member.getAttribute("workPhone") == '')
   		{
   			workPhone = "Unknown";
   		}
   		else
   		{
   			workPhone = member.getAttribute("workPhone");
   		}
   		
   		//MOBILE PHONE
   		var mobilePhone;
   		
   		if(member.getAttribute("mobilePhone") == '')
   		{
   			mobilePhone = "Unknown";
   		}
   		else
   		{
   			mobilePhone = member.getAttribute("mobilePhone");
   		}
   		
   		//EMAIL
   		var emailAddress;
   		
   		if(member.getAttribute("emailAddress") == '')
   		{
   			emailAddress = "Unknown";
   		}
   		else
   		{
   			emailAddress = member.getAttribute("emailAddress");
   		}
   		
   		details += "<tr><td>Home</td><td>: " + homePhone + "</td></tr>";
   		details += "<tr><td>Work</td><td>: " + workPhone + "</td></tr>";
   		details += "<tr><td>Mobile</td><td>: " + mobilePhone + "</td></tr>";
   		details += "<tr><td>Email</td><td>: " + emailAddress + "</td></tr>";
   		details += "</table>";
		
   		/*
   		details += "<tr><td style=\"width:35px;\"><img src=\"images/icons/commutator_24_hot.png\"></td><td>Home</td><td>: " + homePhone + "</td></tr>";
   		details += "<tr><td><img src=\"images/icons/fax_24_hot.png\"></td><td>Work</td><td>: " + workPhone + "</td></tr>";
   		details += "<tr><td><img src=\"images/icons/telephone_24_hot.png\"></td><td>Mobile</td><td>: " + mobilePhone + "</td></tr>";
   		details += "<tr><td><img src=\"images/icons/mail_24_hot.png\"></td><td>Email</td><td>: " + emailAddress + "</td></tr>";
   		details += "</table>";
   		*/
   		
   		return details;
   }
};


/*
 *
 * LOAD EVENT DETAILS
 *
 */
 
function loadEventDetails(eventID)
{
	ajaxEngine.registerRequest('loadEventDetails', 'content/loadEventDetails.do');
	ajaxEngine.registerAjaxObject('eventUpdater', new EventUpdater());
	ajaxEngine.sendRequest('loadEventDetails', 'eventID=' + eventID);
}

var EventUpdater = Class.create();

EventUpdater.prototype = 
{
   initialize: function() 
   {

   },

   ajaxUpdate: function(ajaxResponse) 
   {
   		/* IE RETURNS 1 FOR LENGTH AND EXPECTS NODE [0] FIREFOX RETURNS 3 AND EXPECTS NODE [1] */
   		
   		if(ajaxResponse.childNodes.length == 1)
   		{
      		this.setEvent(ajaxResponse.childNodes[0]);
      	}
      	
      	else
      	{
      		this.setEvent(ajaxResponse.childNodes[1]);
      	}
      	
   },

   setEvent: function(event) 
   {
   		var relativeElement = "loadEventDetailsLink" + event.getAttribute('eventID');
   		
	   	var oPanel = new YAHOO.widget.Panel("eventDetailsPanel", 
		{ 	
			width:"400px", 
			visible:false, 
			draggable:true, 
			close:true, 
			constraintoviewport:true, 
			context:[relativeElement,'bl','bl'],
			effect: {effect:YAHOO.widget.ContainerEffect.FADE, duration: 0.5}
		});
	
		oPanel.setHeader(this.buildHeaderString(event));
		oPanel.setBody(this.buildDetailsString(event));
		oPanel.render("eventsContainer");
		oPanel.show();
   },
  
   buildHeaderString : function(event)
   {
   		return "<img style=\"margin-right:8px;\" src=\"images/img08.gif\">" + event.getAttribute("name");
   },
    
   buildDetailsString : function(event)
   {
   		var details = "<table class=\"layoutTable\">";
   		
   		var date = event.getAttribute("date");
   		var time = event.getAttribute("time");
   		var text = event.getAttribute("text");
   		
   		
   		details += "<tr><td style=\"width:20px;\"><img src=\"images/img08.gif\"></td><td>Date</td><td>: " + date + "</td></tr>";
   		details += "<tr><td><img src=\"images/img08.gif\"></td><td>Time</td><td>: " + time + "</td></tr>";
   		details += "</table>";
   		details += "<p>" + text + "</p>";
   		
   		return details;
   }
};