var XPos = 0;
var YPos = 0;
		
var openRollovers = new Array();
var rolloverX = new Array();
var rolloverY = new Array();
var rolloverText = new Array();
	
var IE = document.all?true:false;
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;
		
var global_e = '';
var global_func = '';
var global_class = '';
var global_param = '';

var rollover_loading = 0;
var still_valid = 1;

function getMouseXY(e)
{
	var tempX = 0;
	var tempY = 0;
		
	if(document.documentElement && document.documentElement.scrollTop && IE)
	{ // grab the x-y pos.s if browser is IE
		tempX = (event.clientX + document.documentElement.scrollLeft);
		tempY = (event.clientY + document.documentElement.scrollTop);
	}
	else if(IE)
	{
		tempX = (event.clientX + document.body.scrollLeft);
		tempY = (event.clientY + document.body.scrollTop);
	}
	else
	{  // grab the x-y pos.s if browser is NS
		tempX = e.pageX;
		tempY = e.pageY;
	}  
	if(tempX < 0){tempX = 0;}
	if(tempY < 0){tempY = 0;}
			  
	XPos = tempX;
	YPos = tempY;
	updateRollovers();
}
		
function updateRollovers()
{
	for(var id in openRollovers)
	{
		if(openRollovers[id]!=null)
		{
			if(document.getElementById(id) != null)
			{
				constructRollover(document.getElementById(id), rolloverX[id], rolloverY[id], global_func, global_class, global_param);
			}
		}
	}
}
		
function constructRollover(e, x_off, y_off, func_name, class_name, param)
{
	var x = XPos; var y = YPos;
	still_valid = 1;
	if(openRollovers[e.getAttribute('id')]!=null)
	{
		var name = openRollovers[e.getAttribute('id')];
		document.getElementById(name).innerHTML = BLANK_MESSAGE;
		document.getElementById(name).className = class_name;
		document.getElementById(name).style.left = ((parseInt(x) + parseInt(20)) + parseInt(x_off)) + 'px';
		document.getElementById(name).style.top = (parseInt(y) + parseInt(y_off)) + 'px';
		document.getElementById(name).innerHTML =  rolloverText[e.getAttribute('id')];
	}
	else
	{
		var idNum = Math.floor(Math.random () * 10 + 1) + Math.floor(Math.random () * 10 + 1);
		var name = 'rollover_'+idNum;
		var newDiv = document.createElement('div');
		newDiv.setAttribute('id',name);
		newDiv.className = class_name;
		newDiv.style.visibility = 'visible';
		newDiv.style.display = 'block';
		newDiv.style.left = ((parseInt(x) + parseInt(20)) + parseInt(x_off)) + 'px';
		newDiv.style.top = (parseInt(y) + parseInt(y_off)) + 'px';
		if(rolloverText[e.getAttribute('id')] == undefined || rolloverText[e.getAttribute('id')] == BLANK_MESSAGE)
		{
			rollover_loading = 1;
			rolloverText[e.getAttribute('id')] = BLANK_MESSAGE; //Avoid undefined showing up in the popup
			global_e = e;
			global_func = func_name;
			global_class = class_name;
			global_param = param
			setTimeout(func_name+"()",1);
		}
		else
		{
			newDiv.innerHTML = rolloverText[e.getAttribute('id')];
		}
		document.body.appendChild(newDiv);
	}
	
	openRollovers[e.getAttribute('id')] = name;
	rolloverX[e.getAttribute('id')] = x_off;
	rolloverY[e.getAttribute('id')] = y_off;
}
		
function destructRollover(e)
{
	still_valid = 0;
	var e = (e != null && e != undefined) ? e : global_e;
	if(!rollover_loading)
	{
		var el = openRollovers[e.getAttribute('id')];
		if(el != null && el != undefined)
		{
			openRollovers[e.getAttribute('id')] = null;
			document.body.removeChild(document.getElementById(el));
			rollover_loading = 0;
		}
	}
	else
	{
		global_e = e;
		var el = openRollovers[e.getAttribute('id')];
		document.getElementById(el).style.visibility = 'hidden';
		document.getElementById(el).style.display = 'none';
		setTimeout("destructRollover()",250);
	}
}

function event_image_rollover()
{
	e = global_e;
	var params = global_param;
	var tmp = '<div style="height:20px; padding-top:3px; background-color:#CECEFF;">&nbsp;<strong>' + params[0] + '</strong></div>';
	tmp += '<div style="padding:5px;">';
	tmp += '<img src="../photos/events/'+params[1]+'" border="0" alt="Event Image" title="Event Image" />';
	tmp += '<br />File Uploaded On: <strong>'+params[2]+'</strong></div>';
	rolloverText[e.getAttribute('id')] = tmp;
	rollover_loading = 0;
}

function coolpeople()
{
	var e = global_e;
	var el = openRollovers[e.getAttribute('id')];
	rolloverText[e.getAttribute('id')] = BLANK_MESSAGE;
	var xmlhttp = createXMLHttp();
	xmlhttp.open('GET',"smartway/ajax_server.php?action=fetchprofile&ajax_param_profile_id="+global_param,true);
	xmlhttp.onreadystatechange = function() {
		if(xmlhttp.readyState == 4)
		{
			response = xmlhttp.responseXML;
			
			if(typeof response == "object")
			{
				var tmp = '<strong>'+response.getElementsByTagName('profile_name').item(0).firstChild.data+'</strong>';	
				tmp += '<br />'+COOL_PEOPLE_one+' '+response.getElementsByTagName('age').item(0).firstChild.data + ' -- '+response.getElementsByTagName('dob').item(0).firstChild.data;
				tmp += '<br />'+COOL_PEOPLE_two+' '+response.getElementsByTagName('gender').item(0).firstChild.data;
				tmp += '<br />'+COOL_PEOPLE_three+' '+response.getElementsByTagName('location').item(0).firstChild.data;
				tmp += '<br />'+COOL_PEOPLE_four+' '+response.getElementsByTagName('join').item(0).firstChild.data;
				rolloverText[e.getAttribute('id')] = tmp;
				
				if(el!=null)
				{
					document.getElementById(el).innerHTML = tmp;
					rollover_loading = 0;
				}
			}
		}
	}
	xmlhttp.send(null);
}

function recentpeople()
{
	var e = global_e;
	var el = openRollovers[e.getAttribute('id')];
	rolloverText[e.getAttribute('id')] = BLANK_MESSAGE;
	var xmlhttp = createXMLHttp();
	xmlhttp.open('GET',"smartway/ajax_server.php?action=fetchrecent&ajax_param_member_id="+global_param,true);
	xmlhttp.onreadystatechange = function() {
		if(xmlhttp.readyState == 4)
		{
			response = xmlhttp.responseXML;
			//alert(response);
			//exit;
			
			if(response!=null && response!=undefined)
			{
				var tmp = '<strong>'+response.getElementsByTagName('profile_name').item(0).firstChild.data+'</strong>';
				tmp += '<br />'+COOL_PEOPLE_one+' '+response.getElementsByTagName('age').item(0).firstChild.data;
				tmp += '<br />'+COOL_PEOPLE_two+' '+response.getElementsByTagName('gender').item(0).firstChild.data;
				tmp += '<br />'+COOL_PEOPLE_three+' '+response.getElementsByTagName('location').item(0).firstChild.data;
				rolloverText[e.getAttribute('id')] = tmp;
				
				if(el!=null)
				{
					document.getElementById(el).innerHTML = tmp;
					rollover_loading = 0;
				}
			}
		}
	}
	xmlhttp.send(null);
}


function create_stars(numbers)
{	
	star = '';
	for(i=1;i<6;i++)
	{
		star +=(Math.round(numbers)-i>=0?"<img src=\"images/full_star.gif\"/>":"\<img src=\"images/null_star.gif\"/>");				
	}
		
	return star;
}			

function ratedv()
{
	var e = global_e;
	rolloverText[e.getAttribute('id')] = BLANK_MESSAGE;
	var xmlhttp = createXMLHttp();
	xmlhttp.open('GET',"smartway/ajax_server.php?action=fetchratedv&ajax_param_ratedv_id="+global_param,true);
	xmlhttp.onreadystatechange = function() {
		if(xmlhttp.readyState == 4)
		{
			response = xmlhttp.responseXML;
									
			if(response!=null && response!=undefined)
			{
				var el = openRollovers[global_e.getAttribute('id')];
				
				var tmp = '<strong>'+response.getElementsByTagName('title').item(0).firstChild.data+'</strong>';
				tmp += '<br />'+MEDIA_one+' '+response.getElementsByTagName('desc').item(0).firstChild.data;
				tmp += '<br />'+MEDIA_two+' '+response.getElementsByTagName('timestamp').item(0).firstChild.data;
				tmp += '<br />'+MEDIA_three+' '+response.getElementsByTagName('views').item(0).firstChild.data;
				tmp += '<br />'+MEDIA_four+' '+response.getElementsByTagName('numratings').item(0).firstChild.data;
				star = response.getElementsByTagName('rating').item(0).firstChild.data;
				rolloverText[e.getAttribute('id')] = tmp + '<br />'+MEDIA_five+' '+create_stars(star);
					
				if(el!=null)
				{
					document.getElementById(el).innerHTML = rolloverText[e.getAttribute('id')];
					rollover_loading = 0;
				}
			}
			
		}
	}
	xmlhttp.send(null);
}

function ratedp()
{
	var e = global_e;
	rolloverText[e.getAttribute('id')] = BLANK_MESSAGE;
	var xmlhttp = createXMLHttp();
	xmlhttp.open('GET',"smartway/ajax_server.php?action=fetchratedp&ajax_param_ratedp_id="+global_param,true);
	xmlhttp.onreadystatechange = function() {
		if(xmlhttp.readyState == 4)
		{
			response = xmlhttp.responseXML;
						
			if(response!=null && response!=undefined)
			{
				var el = openRollovers[global_e.getAttribute('id')];
				
				var tmp = '<strong>'+response.getElementsByTagName('title').item(0).firstChild.data+'</strong>';
				tmp += '<br />'+MEDIA_one+' '+response.getElementsByTagName('desc').item(0).firstChild.data;
				tmp += '<br />'+MEDIA_two+' '+response.getElementsByTagName('timestamp').item(0).firstChild.data;
				tmp += '<br />'+MEDIA_three+' '+response.getElementsByTagName('views').item(0).firstChild.data;
				tmp += '<br />'+MEDIA_four+' '+response.getElementsByTagName('numratings').item(0).firstChild.data;
				
				star = response.getElementsByTagName('rating').item(0).firstChild.data;
				rolloverText[e.getAttribute('id')] = tmp + '<br />'+MEDIA_five+' '+create_stars(star);
				
				if(el!=null)
				{	
					document.getElementById(el).innerHTML = rolloverText[e.getAttribute('id')];
					rollover_loading = 0;
				}
			}
			
		}
	}
	xmlhttp.send(null);
}
	

function createXMLHttp() {

    if (typeof XMLHttpRequest != "undefined") {
        return new XMLHttpRequest();
    } else if (window.ActiveXObject) {
      var aVersions = [ "MSXML2.XMLHttp.5.0",
        "MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0",
        "MSXML2.XMLHttp","Microsoft.XMLHttp"
      ];

      for (var i = 0; i < aVersions.length; i++) {
        try {
            var oXmlHttp = new ActiveXObject(aVersions[i]);
            return oXmlHttp;
        } catch (oError) {
            //Do nothing
        }
      }
    }
    throw new Error("XMLHttp object could be created.");
}
