/*******************************
 *
 *	Login Class
 *
 *  Version: 1.0
 *
 *	Author: 
 *	The Roundhouse
 *
 *  © The Roundhouse 2007 -
 * 	ALL RIGHTS RESERVED
 */
 
var SendToFriend = new Class({
	
	objSTFAnchor:	null,
	blMoveOnSend:	null,
	
	initialize: function(){},
	
	setupLink: function(objAnchor, blInFooter)
	{
		this.objSTFAnchor = objAnchor;
		if(this.objSTFAnchor)
		{
			this.objSTFAnchor.addEvent("click", function(){ 	
																if(this.id.indexOf("footer") > -1)
																{
																	prSendToFriend02.setVisibility($('divSTF02Thanks'), 0);
																	//prSendToFriend02.setVisibility($('bubble_footer_sendtofriend'), 1);
																}
																else
																{
																	prSendToFriend01.setVisibility($('divSTF01Thanks'), 0);
																	//prSendToFriend01.setVisibility($('bubble_top_sendtofriend'), 1);																
																}
															});
		}
		this.blMoveOnSend = blInFooter;
	},
	
	setVisibility: function(objDiv, iValue)
	{
		objDiv.setStyle("display", (iValue ? "block" : "none"));
	},
	
	sendMessage: function()
	{
		var iIdentifier = (this.blMoveOnSend ? "02" : "01");
		var fromName	= $('sendfriend'+iIdentifier+'_name').value;
		var toName		= $('sendfriend'+iIdentifier+'_friendsname').value;
		var friendEmail	= $('sendfriend'+iIdentifier+'_friendsemail').value;
		var message		= $('sendfriend'+iIdentifier+'_message').value;
		var url			= $('sendfriend'+iIdentifier+'_url').value;		
		
		if(fromName == "" || toName == "" || friendEmail == "")
		{
			alert("The following fields are required:\n" +
				  (fromName == "" ? "- Your Name\n" : "") +
				  (toName == "" ? "- Your Friend's Name\n" : "") +
				  (friendEmail == "" ? "- Your Friend's Email\n" : "")	);
		}	
		else
		{	
			var messagetemp = "Dear " + toName + ",***" + fromName + " thought you might be interested in this page.";

			if(message != "")
			   messagetemp += "***"+fromName+" wrote:***"+message;

			message = messagetemp;
			
			message += "***";

			// create our request
			this.objRequest 		= { sendemail: 			"1",
										toaddress: 			friendEmail,
										fromaddress: 		"sendtoafriend@gamehorizon.net",
										subject: 			fromName + " sent you a link",
										message:			message,
										url:				url };
			
			// execute it
			new Ajax("../z_ajax/ajax_handler_sendmail.php", {onComplete:this.ajax_handleSTF.bind(this), postBody:this.objRequest}).request();				
		}
	},
	
	ajax_handleSTF: function(objResponseText, objResponseXML)
	{
		if(objResponseXML)
		{
			// go through the response XML. We have to do it like
			// this because IE regards the XML header as a node
			// whereas other browsers don't.
			for(var i = 0; i < objResponseXML.childNodes.length; i++)
			{
				if(objResponseXML.childNodes[i].nodeName == "parsererror")
				{
					alert("ERROR: " + objResponseXML.childNodes[i].firstChild.nodeValue.toString());
				}
				
				// if we find a response node
				if(objResponseXML.childNodes[i].nodeName == "response")
				{
					var arrResponse = objResponseXML.childNodes[i].childNodes;
					if(arrResponse)
					{
						for(var j = 0; j < arrResponse.length; j++)
						{
							switch(arrResponse[j].nodeName)
							{
								case "ok":
								{
									var iIdentifier = "01";
									
									if(this.blMoveOnSend)
									{
										// place panel
										$('bubble_footer_sendtofriend').setStyle("top", (window.ie ? "-126px" : "-135px"));
										
										iIdentifier = "02";
									}
									
									// hide form
									this.setVisibility($('form_sendtoafriend'+iIdentifier), 0);
									// show thanks
									this.setVisibility($('divSTF'+iIdentifier+'Thanks'), 1);
									break;
								}
												
								case "error":
								{
									alert("An error occured sending your message. Please try again");
									break;
								}
							}
						}
					}
				}
			}
		}
	},
	
	resetForm:	function()
	{
		var iIdentifier  = (this.blMoveOnSend ? "02" : "01");
		var name		 = $('sendfriend'+iIdentifier+'_name');
		var friendsname	 = $('sendfriend'+iIdentifier+'_friendsname');
		var friendsemail = $('sendfriend'+iIdentifier+'_friendsemail');
		var message 	 = $('sendfriend'+iIdentifier+'_message');

		// reset fields
		name.value = "";
		friendsname.value = "";
		friendsemail.value = "";
		message.value = "";
		
		// reapply labels
		name.onblur();
		friendsname.onblur();
		friendsemail.onblur();
		message.onblur();		

		// place panel
		if(this.blMoveOnSend)
		{
			$('bubble_footer_sendtofriend').setStyle("top", (window.ie ? "-235px" : "-250px"));
		}
		// hide thanks
		this.setVisibility($('divSTF'+iIdentifier+'Thanks'), 0);
		// show form
		this.setVisibility($('form_sendtoafriend'+iIdentifier), 1);		
	}
	
});

var prSendToFriend01 = new SendToFriend();
var prSendToFriend02 = new SendToFriend();


window.addEvent('domready', function()
						    { 
								prSendToFriend02.setupLink($('stf'), true);
						    });